/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/:root{--bg-color:#f8fafc;--text-color:#000;--surface-color:#f4f4f5;--surface-header:#e4e4e7;--border-color:#d4d4d8;--accent-color:#4251de;--accent-text:#fff;--inverse-bg:#000;--inverse-text:#fff;--scroll-track:#fff;--scroll-thumb:#d4d4d8;--scroll-hover:#a1a1aa;--app-font-family:"Inter","Helvetica Neue",Arial,sans-serif;--status-bar-text-color:var(--text-color);--status-bar-bg:var(--bg-color);--status-bar-border-color:var(--border-color);--status-bar-button-hover-color:var(--surface-header);--status-bar-button-text-color:var(--text-color);--menu-disabled-text-color:#777;--spinner-color:var(--text-color);--input-multi-text-color:var(--text-color);--input-multi-bg-color:var(--surface-color);--input-multi-selected-text-color:var(--accent-text);--input-multi-selected-bg-color:var(--accent-color);--hint-hot-spot-bg-color:var(--surface-header);--hint-hot-spot-hover-bg-color:var(--surface-color);--hint-footer-bg-color:var(--surface-header);--difficulty-indicator-bg-color:var(--surface-color);--difficulty-indicator-border-color:var(--border-color);--difficulty-indicator-label-color:var(--text-color);--difficulty-indicator-text-color:var(--text-color);--grid-line-color:#000;--grid-line-color-bold:#000;--grid-line-width:1;--grid-line-width-bold:5;--mini-grid-line-color:#aaa;--mini-grid-bar-color:#fff1a3;--mini-grid-bar-text-color:#333;--given-digit-color:#333;--visited-digit-color:#aaa;--paused-digit-color:#0003;--digit-color:#44d;--pencil-mark-color:#44d;--error-fill-color:#f113;--error-text-color:#a00;--selection-outline-color:#7b9ee1;--selected-fill-color:#ffeb7f;--matched-fill-color:#659bff44;--selected-matched-fill-color:#8bb3ff;--solved-digit-color:#44d;--solved-given-digit-color:#333;--solved-fill-color:#b9ffb9;--error-selected-fill-color:#ff8c8c;--vkbd-bg-fill-color:var(--surface-color);--vkbd-button-fill-color:var(--bg-color);--vkbd-button-text-color:var(--text-color);--vkbd-completed-button-text-color:#0a0;--vkbd-mode-panel-fill-color:var(--surface-header);--button-bg-color:var(--inverse-bg);--button-text-color:var(--inverse-text);--cell-bg-1-fill-color:#0000;--cell-bg-2-fill-color:#ffb8bc;--cell-bg-3-fill-color:#ffd085;--cell-bg-4-fill-color:#ffffb6;--cell-bg-5-fill-color:#caf9ca;--cell-bg-6-fill-color:#f1dbff;--cell-bg-7-fill-color:#c8f7ff;--cell-bg-8-fill-color:#ffa8d8;--cell-bg-9-fill-color:#d7d7d7}.dark{--bg-color:#000;--text-color:#dadada;--surface-color:#1b1b1b;--surface-header:#3d3d3d;--border-color:#363636;--accent-color:#4f86ff;--accent-text:#fff;--inverse-bg:#d6d6d6;--inverse-text:#000;--scroll-track:#000;--scroll-thumb:#333;--scroll-hover:#555;--grid-line-color:#505050;--grid-line-color-bold:#a8a8a8;--grid-line-width:2;--grid-line-width-bold:5;--mini-grid-line-color:#5a5a5a;--mini-grid-bar-color:#dbcf90;--mini-grid-bar-text-color:#444;--given-digit-color:#bbb;--visited-digit-color:#666;--paused-digit-color:#7b7272;--digit-color:#5382e0;--pencil-mark-color:#5d86d8;--error-fill-color:#60020278;--error-text-color:#b33d3d;--selection-outline-color:#194699;--selected-fill-color:#1d48998a;--matched-fill-color:#1d4ea89c;--selected-matched-fill-color:#5e96ff8c;--solved-digit-color:#5b77ae;--solved-given-digit-color:#595959;--solved-fill-color:#77e877;--error-selected-fill-color:#ff8c8c;--vkbd-bg-fill-color:var(--surface-color);--vkbd-button-fill-color:var(--surface-header);--vkbd-button-text-color:var(--text-color);--vkbd-completed-button-text-color:#60ac60;--vkbd-mode-panel-fill-color:#1a1a1a;--button-bg-color:var(--inverse-bg);--button-text-color:var(--inverse-text);--status-bar-text-color:var(--text-color);--status-bar-bg:var(--bg-color);--status-bar-border-color:var(--border-color);--status-bar-button-hover-color:var(--surface-header);--status-bar-button-text-color:var(--text-color);--menu-disabled-text-color:#aaa;--spinner-color:var(--text-color);--input-multi-text-color:var(--text-color);--input-multi-bg-color:var(--surface-color);--input-multi-selected-text-color:var(--accent-text);--input-multi-selected-bg-color:var(--accent-color);--hint-hot-spot-bg-color:var(--surface-header);--hint-hot-spot-hover-bg-color:var(--surface-color);--hint-footer-bg-color:var(--surface-header);--difficulty-indicator-bg-color:var(--surface-color);--difficulty-indicator-border-color:var(--border-color);--difficulty-indicator-label-color:var(--text-color);--difficulty-indicator-text-color:var(--text-color);--cell-bg-1-fill-color:#0000;--cell-bg-2-fill-color:#973838;--cell-bg-3-fill-color:#793900;--cell-bg-4-fill-color:#777036;--cell-bg-5-fill-color:#2f6a2f;--cell-bg-6-fill-color:#25267d;--cell-bg-7-fill-color:#8c6447;--cell-bg-8-fill-color:#7e3158;--cell-bg-9-fill-color:#515151}html{font-size:12px;height:100%;margin:0;width:100%}@media (min-width:768px){html{font-size:17px}}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--app-font-family);font-size:1.2rem;padding:0;touch-action:none;transition:background-color .3s,color .3s}#root,body{height:100%;width:100%}#root{box-sizing:border-box}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:1px solid var(--bg-color)}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}h1,h2,h3,h4,h5,h6{font-weight:400;letter-spacing:.025em;text-transform:uppercase}.retro-link{cursor:pointer;-webkit-text-decoration-line:underline;text-decoration-line:underline;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.retro-link:hover{background:var(--text-color);color:var(--bg-color);text-decoration:none}.ui-btn-primary{align-items:center;background-color:var(--inverse-bg);border-color:var(--inverse-bg);border-width:1px;color:var(--inverse-text);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:700;justify-content:center;letter-spacing:.1em;line-height:1.25rem;padding:.5rem 1.5rem;text-transform:uppercase;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.ui-btn-primary:hover{background-color:initial;border-color:var(--text-color);color:var(--text-color)}}.sudoku-app{background-color:var(--bg-color);color:var(--text-color);display:flex;flex-direction:column;height:100%;-webkit-user-select:none;user-select:none;width:100%}.sudoku-grid,.sudoku-grid *{transition:none!important}.ui-elements{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:center;margin-top:3.5rem;width:100%}.landscape .ui-elements{gap:1rem;justify-content:center}@media (min-width:1024px){.landscape .ui-elements{gap:3rem}}.portrait .ui-elements{align-items:center;flex-direction:column;justify-content:center;margin-top:5rem;padding:.5rem 1rem}@media (min-width:640px){.portrait .ui-elements{padding-left:2rem;padding-right:2rem}}.tab-item{cursor:pointer;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;opacity:.5;padding:.5rem 1rem;text-transform:uppercase}.tab-item.active{font-weight:700}.app-nav{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background-color:var(--bg-color);border-bottom-width:1px;border-color:var(--border-color);padding-bottom:.25rem;padding-top:.25rem;position:-webkit-sticky;position:sticky;top:0;z-index:50}.app-nav-inner{align-items:center;display:flex;gap:1rem;margin-left:auto;margin-right:auto;max-width:1400px;padding:0 1.25rem}.app-nav-left{gap:1.5rem}.app-nav-center,.app-nav-left{align-items:center;display:flex;flex:1 1}.app-nav-center{justify-content:center}.app-nav-right{align-items:center;display:flex;flex:1 1;gap:.75rem;justify-content:flex-end}.icon-button{align-items:center;background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;color:var(--text-color);display:inline-flex;height:2rem;justify-content:center;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1);width:2rem}@media (hover:hover) and (pointer:fine){.icon-button:hover{background-color:var(--surface-header)}}.button-icon{fill:currentColor;height:1.75rem;width:1.75rem}.tag-pill{gap:.5rem;letter-spacing:.2em;padding:.25rem .75rem;white-space:nowrap}.tag-compact,.tag-pill{align-items:center;background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;display:inline-flex;font-size:.875rem;line-height:1.25rem;text-transform:uppercase}.tag-compact{letter-spacing:.05em;padding:.125rem .5rem}.menu-panel{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);max-height:80vh;max-width:92vw;overflow-y:auto;padding-bottom:.5rem;padding-top:.5rem;position:absolute;right:0;top:3rem;width:16rem}.menu-item{display:block;font-size:11px;letter-spacing:.1em;opacity:.8;padding:.5rem 1rem;text-transform:uppercase;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.menu-item:hover{background-color:var(--surface-header);opacity:1}}.menu-divider{border-color:var(--border-color);border-top-width:1px;margin-bottom:.5rem;margin-top:.5rem}#svg-sprites{display:none}#svg-sprites .fill{fill:inherit}.timer-elapsed{letter-spacing:.1em;text-transform:uppercase}.timer-elapsed,.timer-hints{font-size:.875rem;line-height:1.25rem}.timer-hints{align-items:center;background-color:var(--surface-header);border-color:var(--border-color);border-width:1px;display:inline-flex;font-weight:700;height:1.25rem;justify-content:center;min-width:1.5rem;padding-left:.25rem;padding-right:.25rem}.menu .overlay{background-color:initial;bottom:0;left:0;position:fixed;right:0;top:0}li.disabled a{cursor:not-allowed;opacity:.5;pointer-events:none}.menu .disabled-link a{color:var(--menu-disabled-text-color);cursor:not-allowed;font-style:italic}.sudoku-grid{text-align:center}.sudoku-grid.mini{display:inline-block}.sudoku-grid .line{stroke:var(--grid-line-color);stroke-width:var(--grid-line-width);shape-rendering:crispEdges;vector-effect:non-scaling-stroke}.sudoku-grid.mini .line{stroke:var(--mini-grid-line-color);stroke-width:var(--grid-line-width);shape-rendering:crispEdges}.sudoku-grid .line-bold{stroke:var(--grid-line-color-bold);stroke-width:var(--grid-line-width-bold);stroke-linejoin:round;shape-rendering:crispEdges}.grid-bg{fill:var(--bg-color)}path.selection-outline{fill:none;stroke:var(--selection-outline-color);stroke-width:10;shape-rendering:crispEdges;vector-effect:non-scaling-stroke}.cell-select-match-overlay{fill:#0000}.cell-bg .color-code-1{fill:var(--cell-bg-1-fill-color)}.cell-bg .color-code-2{fill:var(--cell-bg-2-fill-color)}.cell-bg .color-code-3{fill:var(--cell-bg-3-fill-color)}.cell-bg .color-code-4{fill:var(--cell-bg-4-fill-color)}.cell-bg .color-code-5{fill:var(--cell-bg-5-fill-color)}.cell-bg .color-code-6{fill:var(--cell-bg-6-fill-color)}.cell-bg .color-code-7{fill:var(--cell-bg-7-fill-color)}.cell-bg .color-code-8{fill:var(--cell-bg-8-fill-color)}.cell-bg .color-code-9{fill:var(--cell-bg-9-fill-color)}.selection-style-solid .selected .cell-select-match-overlay{fill:var(--selected-fill-color)}.matched .cell-select-match-overlay{fill:var(--matched-fill-color)}.selected.matched .cell-select-match-overlay{fill:var(--selected-matched-fill-color)}.selection-style-solid .error.selected .cell-select-match-overlay{fill:var(--error-selected-fill-color)}.error .cell-select-match-overlay{fill:var(--error-fill-color)}text.digit.error{fill:var(--error-text-color)}.solved .cell-select-match-overlay{fill:var(--solved-fill-color)}text.digit{fill:var(--digit-color);font-family:Arial,Helvetica,sans-serif}.solved text.digit{fill:var(--solved-digit-color)}.mini text.digit,text.digit.given{fill:var(--given-digit-color)}a:visited .mini text.digit{fill:var(--visited-digit-color)}.saved-puzzle a .mini text.digit,a:visited:hover .mini text.digit{fill:var(--given-digit-color)}.saved-puzzle .mini text.user-digit,.saved-puzzle a .mini text.user-digit{fill:var(--digit-color)}.difficulty-bar{fill:var(--mini-grid-bar-color)}.difficulty-rating{fill:var(--mini-grid-bar-text-color)}.solved text.digit.given{fill:var(--solved-given-digit-color)}.paused text.digit{fill:var(--paused-digit-color)}.outer-pencil text,.simple-pencil text,text.inner-pencil{fill:var(--pencil-mark-color);font-family:Arial,Helvetica,sans-serif}.sudoku-grid.hint .cell-bg{fill:#0000}.sudoku-grid.hint .cell-bg.hint-target{fill:var(--hint-target-fill-color)}.sudoku-grid.hint .cell-bg.hint-highlight{fill:var(--hint-highlight-fill-color)}.sudoku-grid.hint .cell-bg.hint-eliminations{fill:var(--hint-eliminations-fill-color)}.sudoku-grid.hint .hot-spot-highlight{fill:#0000;stroke:var(--hint-hot-spot-highlight-color);stroke-width:var(--hint-hot-spot-highlight-line-width)}.sudoku-grid.hint text{fill:var(--given-digit-color)}.sudoku-grid.hint text.new-digit-bg{fill:var(--hint-new-digit-bg-color)}.sudoku-grid.hint text.new-digit{fill:var(--hint-new-digit-fill-color)}.sudoku-grid.hint text.elimination-bg{fill:var(--hint-elimination-bg-color)}.sudoku-grid.hint text.elimination{fill:var(--hint-elimination-fill-color)}.animate .solved .cell-bg[data-ring="5"] .cell-select-match-overlay{animation:rainbow 1.6s linear 0ms 1 running}.animate .solved .cell-bg[data-ring="4"] .cell-select-match-overlay{animation:rainbow 1.6s linear .1s 1 running}.animate .solved .cell-bg[data-ring="3"] .cell-select-match-overlay{animation:rainbow 1.6s linear .2s 1 running}.animate .solved .cell-bg[data-ring="2"] .cell-select-match-overlay{animation:rainbow 1.6s linear .3s 1 running}.animate .solved .cell-bg[data-ring="1"] .cell-select-match-overlay{animation:rainbow 1.6s linear .4s 1 running}@keyframes rainbow{0%{fill:#8bb3ff}20%{fill:#f1dbff}40%{fill:#ffb5da}60%{fill:#ff9b5b}70%{fill:#ffff9a}to{fill:var(--solved-fill-color)}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.btn{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--tw-bg-opacity:1;--tw-text-opacity:1;--tw-shadow:inset 0 0 0 1px #d1d5db;--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color);align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-style:none;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-sizing:border-box;color:rgb(0 0 0/var(--tw-text-opacity,1));cursor:pointer;display:inline-flex;justify-content:center;padding:.3rem .7rem;transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:none;-webkit-user-select:none;user-select:none}@media (hover:hover) and (pointer:fine){.btn:hover{--tw-bg-opacity:1;--tw-shadow:inset 0 0 0 1px #d1d5db;--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color);background-color:rgb(243 244 246/var(--tw-bg-opacity,1));box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.btn-primary{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--tw-bg-opacity:1;--tw-text-opacity:1;--tw-shadow:inset 0 0 0 1px #374151;--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color);align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));border-style:none;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-sizing:border-box;color:rgb(255 255 255/var(--tw-text-opacity,1));cursor:pointer;display:inline-flex;justify-content:center;padding:.3rem .7rem;transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:none;-webkit-user-select:none;user-select:none}@media (hover:hover) and (pointer:fine){.btn-primary:hover{--tw-bg-opacity:1;--tw-shadow:inset 0 0 0 1px #4b5563;--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color);background-color:rgb(31 41 55/var(--tw-bg-opacity,1));box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.col-span-3{grid-column:span 3/span 3}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-1\.5{margin-left:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.flex{display:flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-1{height:.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-4{height:1rem}.h-7{height:1.75rem}.w-12{width:3rem}.w-4{width:1rem}.w-full{width:100%}.min-w-0{min-width:0}.max-w-\[400px\]{max-width:400px}.max-w-\[500px\]{max-width:500px}.shrink{flex-shrink:1}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:slideDown .15s ease-out}.cursor-default{cursor:default}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-orange-500\/50{border-color:#f9731680}.border-theme-border{border-color:var(--border-color)}.bg-orange-900\/20{background-color:#7c2d1233}.bg-theme-surface{background-color:var(--surface-color)}.bg-transparent{background-color:initial}.bg-opacity-80{--tw-bg-opacity:0.8}.p-3{padding:.75rem}.p-4{padding:1rem}.\!px-0{padding-left:0!important;padding-right:0!important}.\!px-0\.5{padding-left:.125rem!important;padding-right:.125rem!important}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-\[0\.61rem\]{font-size:.61rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-widest{letter-spacing:.1em}.text-orange-200{--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.text-theme-accent{color:var(--accent-color)}.text-theme-error{--tw-text-opacity:1;color:rgb(255 0 0/var(--tw-text-opacity,1))}.text-theme-success{--tw-text-opacity:1;color:rgb(0 255 0/var(--tw-text-opacity,1))}.text-theme-text{color:var(--text-color)}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:border-theme-accent:focus{border-color:var(--accent-color)}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:hidden{display:none}.sm\:h-14{height:3.5rem}.sm\:h-16{height:4rem}.sm\:w-16{width:4rem}.sm\:w-24{width:6rem}.sm\:gap-3{gap:.75rem}.sm\:px-1{padding-left:.25rem;padding-right:.25rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:font-normal{font-weight:400}.sm\:normal-case{text-transform:none}}@media (min-width:1024px){.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}.solved-puzzle-options{background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;padding:1rem}.landscape .solved-puzzle-options{font-size:min(3.2vw,3.2vh)}.portrait .solved-puzzle-options{font-size:max(2.4vw,2.6vh)}.solved-puzzle-options>*+*{margin:.65em 0 0}.solved-puzzle-options p{margin:0}.solved-puzzle-options a.btn,.solved-puzzle-options button,.solved-puzzle-options p{font-size:.75rem;letter-spacing:.1em;line-height:1rem;text-align:center;text-transform:uppercase}.solved-puzzle-options a.btn,.solved-puzzle-options button{background-color:var(--inverse-bg);border-color:var(--border-color);border-width:1px;box-sizing:border-box;color:var(--inverse-text);display:block;width:12rem}@media (hover:hover) and (pointer:fine){.solved-puzzle-options a.btn:hover,.solved-puzzle-options button:hover{background-color:initial;color:var(--text-color)}}.solved-puzzle-options a.btn,.solved-puzzle-options button{font-family:inherit;padding:.4em 0;text-decoration:none}.puzzle-item{background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;overflow:hidden;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.puzzle-item:hover{border-color:var(--text-color)}.puzzle-item a{align-items:center;color:inherit;display:flex;flex-direction:row;gap:1rem;padding:.75rem;-webkit-text-decoration-line:none;text-decoration-line:none}.puzzle-item.nyt a{flex-direction:column;padding:.5rem;text-align:center}.puzzle-info{display:flex;flex:1 1;flex-direction:column;gap:.125rem;min-width:0}.puzzle-item.nyt .puzzle-info{align-items:center}.puzzle-date{display:block;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.puzzle-tags{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-bottom:.125rem}.difficulty-badge{align-self:flex-start;background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;padding:.125rem .375rem;text-transform:uppercase}.difficulty-badge.easy,.difficulty-badge.expert,.difficulty-badge.hard,.difficulty-badge.medium{color:var(--text-color)}.puzzle-time{letter-spacing:.1em;text-transform:uppercase}.puzzle-description,.puzzle-time{font-size:.75rem;line-height:1rem}.puzzle-description{font-style:italic;margin-top:.25rem;max-width:100%;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.puzzle-item.nyt .puzzle-time{display:none}.nyt-tag{align-items:center;background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;display:flex;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;padding:.125rem .375rem;text-transform:uppercase}.status-badge{align-self:flex-start;letter-spacing:.05em;margin-bottom:.25rem;padding:.125rem .5rem}.status-badge.abandoned{color:var(--text-color);opacity:.6}.status-badge.draft{color:var(--text-color)}.puzzle-actions{display:flex;gap:.5rem;padding:0 .75rem .75rem}.puzzle-item .btn-small{border-color:var(--border-color);border-width:1px;flex:1 1;font-size:.75rem;letter-spacing:.1em;line-height:1rem;padding:.5rem .75rem;text-align:center;text-transform:uppercase;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.puzzle-item .btn-small.btn-primary{background-color:var(--inverse-bg);color:var(--inverse-text)}@media (hover:hover) and (pointer:fine){.puzzle-item .btn-small.btn-primary:hover{background-color:initial;color:var(--text-color)}}.puzzle-item .btn-small.btn-secondary{background-color:var(--bg-color);color:var(--text-color)}@media (hover:hover) and (pointer:fine){.puzzle-item .btn-small.btn-secondary:hover{background-color:var(--surface-header)}}.spinner{height:52px;margin:40px auto 60px;width:52px}.spinner div{animation:spinner-gridScaleDelay 1.3s ease-in-out infinite;background-color:var(--spinner-color);border:1px solid var(--bg-color);float:left;height:15px;width:15px}.spinner div:first-child{animation-delay:.2s}.spinner div:nth-child(2){animation-delay:.3s}.spinner div:nth-child(3){animation-delay:.4s}.spinner div:nth-child(4){animation-delay:.1s}.spinner div:nth-child(5){animation-delay:.2s}.spinner div:nth-child(6){animation-delay:.3s}.spinner div:nth-child(7){animation-delay:0s}.spinner div:nth-child(8){animation-delay:.1s}.spinner div:nth-child(9){animation-delay:.2s}@keyframes spinner-gridScaleDelay{0%,70%,to{transform:scaleX(1)}35%{transform:scale3D(0,0,1)}}.help-page{background-color:var(--bg-color);inset:0;overflow-y:auto;padding:1.5rem}.help-page,.help-page .close-button{color:var(--text-color);position:fixed}.help-page .close-button{background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;font-size:1.125rem;height:2.5rem;line-height:1.75rem;right:1rem;top:1rem;width:2.5rem}.help-page .close-button:hover{background-color:var(--surface-header)}.help-page .content{line-height:1.625;margin-left:auto;margin-right:auto;max-width:48rem;padding-bottom:4rem}.help-page h1{font-size:1.125rem;letter-spacing:.1em;line-height:1.75rem;margin-bottom:1rem;margin-top:2.5rem;text-transform:uppercase}.help-page ul{list-style-type:disc;padding-left:1.25rem}.help-page li{margin-bottom:.5rem;opacity:.8}.help-page dt,.help-page li{font-size:.75rem;line-height:1rem}.help-page dt{letter-spacing:.1em;margin-top:1rem;text-transform:uppercase}.help-page dd{font-size:.75rem;line-height:1rem;margin-bottom:.75rem;margin-left:1.5rem;opacity:.7}@media screen and (max-width:500px){.help-page{padding:1rem}.help-page .close-button{right:.75rem;top:.75rem}}.modal-backdrop{inset:0;position:fixed;z-index:60}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-backdrop{--tw-backdrop-blur:blur(12px);animation:fadeIn .1s ease-out;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background-color:#00000080}.modal-container{align-items:center;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:70}.modal{max-height:90vh;max-width:32rem;position:relative;width:100%}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal{--tw-pan-y:pan-y;--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);animation:scaleIn .1s ease-out;background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-sizing:border-box;color:var(--text-color);overflow-y:auto;padding:1.5rem;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.modal h1{font-size:1.125rem;letter-spacing:.1em;line-height:1.75rem;line-height:1.4;margin-bottom:1rem;margin-top:0;text-transform:uppercase}.modal p{font-size:.75rem;line-height:1rem;margin-bottom:1.5rem;opacity:.7}.modal .button-group,.modal .buttons{display:flex;gap:.75rem;justify-content:flex-end;margin-top:2rem}.modal .primary{background-color:var(--inverse-bg);color:var(--inverse-text)}@media (hover:hover) and (pointer:fine){.modal .primary:hover{background-color:initial;color:var(--text-color)}}.modal .cancel,.modal .secondary{background-color:var(--bg-color);color:var(--text-color)}@media (hover:hover) and (pointer:fine){.modal .cancel:hover,.modal .secondary:hover{background-color:var(--surface-header)}}.modal .danger{--tw-border-opacity:1;--tw-text-opacity:1;background-color:var(--bg-color);border-color:rgb(255 0 0/var(--tw-border-opacity,1));color:rgb(255 0 0/var(--tw-text-opacity,1))}.modal .cancel,.modal .danger,.modal .primary,.modal .secondary{border-color:var(--border-color);border-width:1px;display:inline-block;font-size:.75rem;letter-spacing:.1em;line-height:1rem;padding:.5rem 1.25rem;text-align:center;-webkit-text-decoration-line:none;text-decoration-line:none;text-transform:uppercase;transition-duration:.1s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.modal .cancel:active,.modal .danger:active,.modal .primary:active,.modal .secondary:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.modal .cancel,.modal .danger,.modal .primary,.modal .secondary{min-width:6rem}.modal button:disabled{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);cursor:not-allowed;opacity:.4}.modal button:disabled:active{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.modal.invalid-initial-digits textarea,.modal.paste textarea{background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.75rem;height:8rem;line-height:1rem;margin-bottom:1rem;outline:2px solid #0000;outline-offset:2px;padding:1rem;resize:none;transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%}.modal.invalid-initial-digits textarea:focus,.modal.paste textarea:focus{background-color:var(--bg-color);border-color:var(--text-color)}.settings-list{list-style-type:none;margin:0}.settings-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.settings-list{padding:0}.settings-list li label{align-items:center;cursor:pointer;display:flex;gap:1rem;justify-content:space-between;padding-bottom:.25rem;padding-top:.25rem}.settings-list li .text{font-size:.75rem;letter-spacing:.1em;line-height:1rem;text-transform:uppercase}input.toggle{display:none}input.toggle+.indicator{background-color:var(--surface-color);border-color:var(--border-color);border-radius:9999px;border-width:1px;height:1.5rem;position:relative;transition-duration:.2s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1);width:3rem}input.toggle:checked+.indicator{background-color:var(--inverse-bg)}input.toggle+.indicator:before{--tw-bg-opacity:1;--tw-content:"";background-color:rgb(156 163 175/var(--tw-bg-opacity,1));border-radius:9999px;content:var(--tw-content);height:1rem;left:.125rem;position:absolute;top:.125rem;transition-duration:.2s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);width:1rem}input.toggle:checked+.indicator:before{--tw-translate-x:1.5rem;--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}input.toggle:checked+.indicator:is(.dark *):before{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.modal.resume-restart,.modal.welcome{max-width:28rem}.modal.saved-puzzles{max-width:32rem}.modal.about,.modal.share{max-width:24rem}.modal.check-result{max-width:26rem}.modal.check-result .icon-message{align-items:center;display:flex;flex-direction:column}.modal.check-result .icon-message>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.modal.check-result .icon-message{text-align:center}.modal.check-result .icon{align-items:center;border-radius:9999px;display:flex;height:4rem;justify-content:center;margin-bottom:.5rem;width:4rem}.modal.check-result .check-result-warning{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1));color:rgb(217 119 6/var(--tw-text-opacity,1))}.modal.check-result .check-result-warning:is(.dark *){background-color:initial}.modal.check-result .check-result-error{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1));color:rgb(220 38 38/var(--tw-text-opacity,1))}.modal.check-result .check-result-success{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1));color:rgb(22 163 74/var(--tw-text-opacity,1))}.modal.check-result .icon svg{height:2.5rem;width:2.5rem}.modal.check-result p{font-size:1rem;font-weight:500;line-height:1.5rem}.saved-puzzle{align-items:center;border-color:var(--border-color);border-width:1px;display:flex;gap:1.5rem;margin-bottom:1rem;padding:1rem;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.saved-puzzle:last-child{margin-bottom:0}@media (hover:hover) and (pointer:fine){.saved-puzzle:hover{border-color:var(--text-color)}}.puzzle-metadata{flex:1 1}.puzzle-metadata>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.puzzle-metadata{font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;opacity:.7;text-transform:uppercase}.puzzle-metadata th{font-weight:700;padding-right:.5rem;text-align:left}.puzzle-buttons{display:flex;flex-direction:column;gap:.5rem}.puzzle-buttons .btn,.puzzle-buttons button{font-size:.75rem;line-height:1rem;min-width:5rem;padding:.375rem .75rem}.feature-list{border-collapse:collapse;width:100%}.feature-list,.feature-list th{font-size:.875rem;line-height:1.25rem}.feature-list th{letter-spacing:.1em;opacity:.6;padding-bottom:.5rem;padding-top:.5rem;text-align:left;text-transform:uppercase}.feature-list td,.feature-list th{border-bottom-width:1px;border-color:var(--border-color)}.feature-list td{padding-bottom:.75rem;padding-top:.75rem}.status-badge{align-items:center;border-color:var(--border-color);border-width:1px;display:inline-flex;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;padding:.125rem .375rem;text-transform:uppercase}.status-badge.solved{color:var(--text-color)}@media (max-width:640px){.modal{border-radius:1rem;padding:1.5rem}.saved-puzzle{align-items:stretch;flex-direction:column;text-align:center}.saved-puzzle .sudoku-grid.mini{margin-bottom:.5rem;margin-left:auto;margin-right:auto}.puzzle-metadata{text-align:center}.puzzle-metadata th{padding-right:0;text-align:center}.puzzle-buttons{flex-direction:row;justify-content:center;margin-top:1rem}}.feature-list td{vertical-align:top}.feature-list .checkbox-wrapper{display:block;margin-top:.25em;padding:0;position:relative;width:2em}.feature-list .description{padding:.2em .4em}.feature-list .issue{padding-right:.6em;text-align:right}.modal.about p{max-width:23em}.modal.share p{max-width:18em}.modal.qr svg{display:block;margin-left:auto;margin-right:auto;max-height:80vh;max-width:80vw}.difficulty-selector p{margin-bottom:.1em}.difficulty-options input{display:none}.difficulty-options{display:flex;font-size:1.1rem;margin:.2em 0 .8em;width:100%}.difficulty-options label{flex:1 0 auto;margin-right:.5em}.difficulty-options label:last-child{margin-right:0}.difficulty-options span{background-color:var(--input-multi-bg-color);border:1px solid var(--input-multi-text-color);border-radius:.3em;color:var(--input-multi-text-color);display:block;padding:.2em 0;text-align:center;width:100%}.difficulty-options input:checked+span{background-color:var(--input-multi-selected-bg-color);border:1px solid var(--input-multi-selected-text-color);border-color:var(--input-multi-selected-text-color);color:var(--input-multi-selected-text-color)}.share-time{position:relative}.share-time.no-share{text-decoration:line-through;-webkit-text-decoration-color:#999;text-decoration-color:#999}.share-buttons{text-align:center}.share-buttons ul{display:inline-block;margin:.5em 0 0;padding:0}.share-buttons li{list-style:none;margin-bottom:.6em}.share-buttons a,.share-buttons button{background-color:#777;border-radius:.3em;color:#fff;display:block;font-family:var(--app-font-family);font-weight:700;padding:.4em 1em .5em .5em;text-align:left;white-space:nowrap}.share-buttons a,.share-buttons a:hover{border:none}.share-buttons a:before,.share-buttons button:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAABkCAMAAACrSQBwAAACslBMVEUAAAAyVKUzVaY1V6Y7WZg3Wac4Wag8Wps5Wqg8W588XKI8XKY7XKk8XKk8XaY8XapAXp1GY6RVcbV3d3dfebhhe7lhe7pifLpmf7x/f39ogbyDg4N1jMJ3jsN5j8V6kMR9k8Z+lMaCl8mDmMmEmcmFmcmInMuKnctRreuMn8xVrO6Mn81Nr+lNsOmgoKBGt+ORo86Ro89Ht+Ojo6NIuONIuORLueRMueSVptBNuuSmpqZOuuVQu+WXqdFSvOWaqtJWveVWveZYvuaerdRcv+ddwOdfwOdfweevr69gweewsLCxsbFkw+hlw+hmw+iysrJnxOloxOm0tLRrxemntti2trZvxumpt9pvx+q3t7e4uLi5ubmrutqsutt1yeqtu9t3yut5y+u8vLx7zOt9zOt9zOy+vr6Dzuy1wt+2wt+Gz+3CwsKG0O3Dw8OK0e3ExMTFxcW7xuGO0+6P0+68x+HHx8eR1O/IyMiV1e+/yuOV1u+V1vDBy+TDzOSc2PCd2PDDzuXOzs7Fz+ah2vHQ0NDR0dGj3PGn3PKp3fLU1NTV1dWr3/Ot3/PW1tbX19ex4fO24/Tb29u54/Tc3Ny55PXW3e3d3d275fW85fXe3t7Y3+7f39/A5vbc4vDG6fbH6ffj4+PH6vfI6vfJ6vfk5OTK6vfg5fLl5eXL6/fh5vLm5ubO7Pji5/Li5/Pn5+fj6PPk6PPo6Ojk6fPl6fTT7vnV7vnq6urW7/nX7/nX8PnY8Pnb8frt7e3c8vrd8vrv7+/g8/rh8/vt8Pfw8PDh9Pvi9Pvj9Pvz8/Pn9vzo9vzq9/z19fXs9/zt+Pz29vb39/fw+f34+Pjy+v3z+v33+fz5+vz6+vz6+v36+/33/P33/P74/P75/f76/f76/f/7/f77/f/9/f7+/v7+/v/+//////8BHGzBAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfkCQ0JLzMcZitsAAAAHWlUWHRDb21tZW50AAAAAABDcmVhdGVkIHdpdGggR0lNUGQuZQcAAALBSURBVEjHzZTld1MxGMaLjg2GBS/uFBk6bMhwKKw4rMVW3N1luDOGFcqAIcOG2xguo8iwbrgMGX3/D5J7k9yb3PZw6PjAs3OWm+cXeSWnpoIBZNI+6+15+/MjzDOAZqBopQzKn1XBagmEVyfuxcmLm0qgcC0CGoQYLi9Uk4DKBUIlUKXrcgJmdxpcWwQjgWmZCEZwMKmEAEZzMKyIADqcfojN3AsHzzUME0DJUm0w+FC1dDk53Pw1MHhXJp8hj7A6GLyvEG4Axf9LULQuqUelYgYQUu3yiSv7y4b6eyXS8wkoSwDlGcQs2bA0xmKp35GAQd25P+cNTubFgmkb+2EQkXyrC/XHscYnD8WgfTo8GqP4Eceo77s2HoPGBwC+JA7AIOoZBV9XKJfH/cDf3lPx/eMyKfC0VUDPneD7hafZ3u8U3G1OQOu9L3PYpT51OKPmsYYbTFtVEHlUIp9H0cyj92ULG9JZSSK3f9JcvHcKr9UWYcNxXRFn3PzG1z/toa9utyNsfeZwXdl7zz3kpf7Vvlo/1t9hCeY8WNRI36ixiTfuex57ru+e2MrQwZado6Py/BgCCgVQcMDqtDv0ctpUsAkM2kyAFX+kJCRxJaRgw4qBA4+3W2iHt7uHDQcGsZD1BF71Yr4tCzJegx0DO6Q2eQ4wQfWnAmRUPE/BJTNKA1hF/LUAh5E5jQHsuAF2IeQC2IYneoDWAZxMBViIZIDmk98+JzICNCTJ1Qf5A5r+DMx+wUDIdblFAdhIdd3G6u5Q++GYOV3QrNigW/uX4J8+OJoU0v3HIwHKCuB/6kwBykptgTLTAzL4A/xADbAjECDhDhYVW8+i4lIv0eeheIgGRqPglyungxaCiRlsB72CAcQiAhadtkOXJBKjAl1xhDzUiJFwFI8SOBOqy325iCwfAAPgkUvV5blLPUcsAARBPLjfcFQbFlmSreMAAAAASUVORK5CYII=);border:1px solid #0000;content:"";display:inline-block;height:24px;margin-right:.4em;vertical-align:bottom;width:24px}.share-buttons a.btn-facebook{background-color:#3b5998}.share-buttons a.btn-twitter{background-color:#55acee}.share-buttons a.btn-twitter:before{background-position:0 -25px}.share-buttons a.btn-email:before{background-position:0 -50px}.share-buttons button.btn-qr:before{background-position:0 -75px}.share-buttons button.btn-qr{margin-left:0;width:100%}.solver input[type=checkbox]{margin-right:.6em;vertical-align:text-bottom}.modal.hint{height:100%;max-height:90vh;max-width:85vw;overflow-y:hidden;padding:0}.modal.hint.loading,.modal.hint.loading-failed{max-height:20rem}.hint-layout{display:grid;grid-template-columns:1fr;grid-template-rows:1fr 1.8rem;height:100%;width:100%}.hint-body{overflow-y:auto;padding:0 1rem}.modal.hint .rc-hot-spot{background-color:var(--hint-hot-spot-bg-color);border-radius:.15em;padding:0 .15em}.modal.hint .rc-hot-spot:hover{background-color:var(--hint-hot-spot-hover-bg-color)}.modal .hint-footer{background-color:var(--hint-footer-bg-color);text-align:center;width:100%}.hint-footer span{display:inline-block;font-size:1rem;padding:.2em}.portrait .modal.hint{max-height:90%;max-width:96%}.landscape .hint-body-layout{display:flex}.landscape .sudoku-grid.hint svg{margin-right:1.2em;max-width:40vw;width:60vh}.portrait .sudoku-grid.hint svg{height:50vh;margin-bottom:1.2em;max-height:88vw}.hint-text-wrapper{max-width:40em}.hint-text p{margin:0 0 1.2em}.difficulty-indicator{background-color:var(--difficulty-indicator-bg-color);border:1px solid var(--difficulty-indicator-border-color);border-radius:.25em;display:grid;float:right;grid-template-areas:"title title" "value1 value2" "label1 label2";margin:0 0 .3em .8em}.difficulty-indicator>*{color:var(--difficulty-indicator-label-color);line-height:1;text-align:center}.difficulty-indicator .title{font-size:75%;grid-area:title;padding:.25em}.difficulty-indicator .rating-value{color:var(--difficulty-indicator-text-color);font-size:95%;font-weight:600}.difficulty-indicator .rating-value.for-step{grid-area:value1;padding:.06em .25em 0 .4em}.difficulty-indicator .rating-value.for-puzzle{grid-area:value2;padding:.06em .3em 0 .25em}.difficulty-indicator .rating-label{font-size:62%}.difficulty-indicator .rating-label.for-step{grid-area:label1;padding:.15em .25em .3em .5em}.difficulty-indicator .rating-label.for-puzzle{grid-area:label2;padding:.15em .5em .3em .25em}.modal.features .no-features{font-style:italic}@media screen and (max-width:500px){.modal{max-width:94vw}.difficulty-options{font-size:4.5vw}}@media screen and (max-width:600px){.modal.resume-restart .saved-puzzle,.modal.saved-puzzles .saved-puzzle{flex-wrap:wrap;margin-bottom:.8em}.modal.saved-puzzles a.btn,.modal.saved-puzzles button{font-size:1rem;margin-right:1.8em}.modal.saved-puzzles saved-puzzle:not(.last) .puzzle-metadata{border-bottom:1px solid var(--hint-footer-bg-color);order:3;padding-bottom:.8em}}.home-page{background-color:var(--bg-color);color:var(--text-color);display:flex;flex-direction:column;height:100%;overflow:hidden}.home-page-content{display:flex;flex:1 1;flex-direction:column;margin-left:auto;margin-right:auto;max-width:72rem;overflow:hidden;padding:1.25rem;width:100%}.home-hero{border-bottom-width:1px;border-color:var(--border-color);text-align:center}.home-hero-eyebrow{color:var(--accent-color);font-size:.875rem;font-weight:700;letter-spacing:.2em;line-height:1.25rem;margin-bottom:.75rem}.home-hero h1{font-size:1.5rem;letter-spacing:.025em;line-height:2rem;margin-bottom:1rem;text-transform:uppercase}@media (min-width:768px){.home-hero h1{font-size:1.875rem;line-height:2.25rem}}.home-hero p{font-size:.875rem;line-height:1.25rem;opacity:.7}.action-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:640px){.action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.action-btn{align-items:center;background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;display:flex;gap:1rem;padding:1rem;text-align:left;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.action-btn:hover{background-color:var(--surface-header)}}.action-btn.primary{border-color:var(--text-color)}.action-btn .icon,.action-btn.secondary{border-color:var(--border-color)}.action-btn .icon{align-items:center;background-color:var(--bg-color);border-width:1px;display:flex;height:2.5rem;justify-content:center;width:2.5rem}.action-btn .icon svg{height:1.25rem;width:1.25rem}.action-btn h3,p{font-size:1rem;letter-spacing:.1em;line-height:1.5rem;margin:0;text-transform:uppercase}.action-btn p{font-size:.75rem;line-height:1rem;margin:0;opacity:.6}.puzzles-explorer{display:flex;flex:1 1;flex-direction:column;margin-top:1.5rem;min-height:0}.tabs{border-bottom-width:1px;border-color:var(--border-color);column-gap:1rem;display:flex;flex-wrap:wrap;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;text-transform:uppercase}.tab-item{border-bottom-width:2px;border-color:#0000;opacity:.6;padding:.75rem .25rem;transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.tab-item:hover{opacity:1}}.tab-item{background:#0000}.tab-item.active{border-color:var(--text-color);opacity:1}.tab-item .count{border-color:var(--border-color);border-width:1px;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;margin-left:.5rem;padding:.125rem .375rem;text-transform:uppercase}.tab-panels{--tw-pan-y:pan-y;flex:1 1;min-height:0;overflow-y:auto;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.history-puzzles-list,.saved-puzzles-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(1,minmax(0,1fr));padding:1rem}@media (min-width:768px){.history-puzzles-list,.saved-puzzles-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.history-puzzles-list,.saved-puzzles-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.nyt-puzzles-list{display:flex;flex-direction:column}.nyt-month-section{background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;overflow:hidden}.nyt-month-section h2{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;letter-spacing:.1em;line-height:1.25rem;margin:0;padding:.75rem 1rem;text-transform:uppercase;transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}@media (hover:hover) and (pointer:fine){.nyt-month-section h2:hover{background-color:var(--surface-header)}}.nyt-month-section h2 .month-name{flex:1 1}.nyt-month-section h2 .puzzle-count{border-color:var(--border-color);border-width:1px;font-size:.875rem;line-height:1.25rem;opacity:.6;padding:.125rem .5rem}.nyt-month-section h2 .chevron{opacity:.6;text-align:center;width:1rem}.nyt-month-section ul{grid-gap:1rem;border-color:var(--border-color);border-top-width:1px;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));list-style-type:none;margin:0;padding:1rem}@media (min-width:640px){.nyt-month-section ul{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.nyt-month-section ul{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.nyt-month-section ul{grid-template-columns:repeat(5,minmax(0,1fr))}}.nyt-puzzles-empty,.puzzles-empty{font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;opacity:.5;padding-bottom:4rem;padding-top:4rem;text-align:center;text-transform:uppercase}@media (max-width:640px){.nyt-month-section ul{gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}}.replay-controls{background-color:var(--bg-color);border-bottom-width:1px;border-color:var(--border-color);color:var(--text-color);left:0;padding:.75rem 1.25rem;position:fixed;right:0;top:0;z-index:50}.replay-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.replay-header h2{margin:0}.replay-header h2,.replay-status{font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;text-transform:uppercase}.replay-status{border-color:var(--border-color);border-width:1px;padding:.125rem .5rem}.replay-status.status-solved{color:var(--text-color)}.replay-status.status-abandoned{color:var(--text-color);opacity:.6}.replay-time{min-width:8rem;opacity:.7}.replay-step-info,.replay-time{font-feature-settings:"tnum";display:inline-block;font-size:.875rem;font-variant-numeric:tabular-nums;letter-spacing:.1em;line-height:1.25rem;text-transform:uppercase}.replay-step-info{min-width:10.5rem}.replay-main-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}@media (min-width:768px){.replay-main-controls{flex-wrap:nowrap}}.replay-buttons{align-items:center;display:flex;gap:.375rem}.replay-slider-container{flex-grow:1;min-width:150px;position:relative}.replay-slider{-webkit-appearance:none;appearance:none;background-color:var(--surface-header);border-radius:0;cursor:pointer;height:.5rem;margin-bottom:.75rem;margin-top:.25rem;width:100%}.replay-indicators{bottom:.125rem;display:flex;height:.25rem;left:0;padding:0 8px;pointer-events:none;position:absolute;right:0}.replay-indicator{border-radius:.125rem;height:.25rem;opacity:.5;position:absolute;transform:translateX(-50%);width:.25rem}.indicator-setDigit{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1));height:.5rem;opacity:.9}.indicator-pencilMarksToInner,.indicator-toggleInnerPencilMark,.indicator-toggleOuterPencilMark{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.indicator-setCellColor{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.indicator-clearCell,.indicator-clearCellColor,.indicator-clearPencilMarks{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.indicator-hint,.indicator-showCandidates{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.replay-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:var(--text-color);cursor:pointer;height:1rem;transition-duration:.15s;-webkit-transition-property:transform;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);width:1rem}.replay-slider::-moz-range-thumb{background-color:var(--text-color);border-width:0;cursor:pointer;height:1rem;transition-duration:.15s;-moz-transition-property:transform;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);width:1rem}.replay-btn{background-color:var(--surface-color);border-color:var(--border-color);border-width:1px;cursor:pointer;font-size:.75rem;letter-spacing:.1em;line-height:1rem;padding:.25rem .625rem;text-transform:uppercase;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.replay-btn:hover{background-color:var(--surface-header)}}.replay-btn:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.replay-btn:disabled{cursor:not-allowed;opacity:.3}.replay-btn{min-width:36px}.replay-btn-play{background-color:var(--inverse-bg);color:var(--inverse-text);padding-left:1rem;padding-right:1rem}@media (hover:hover) and (pointer:fine){.replay-btn-play:hover{background-color:initial;color:var(--text-color)}}.replay-speed-control{align-items:center;display:flex}.replay-speed-select{cursor:pointer;padding:.125rem .375rem}.replay-btn-home,.replay-speed-select{background-color:var(--bg-color);border-color:var(--border-color);border-width:1px;font-size:.875rem;letter-spacing:.1em;line-height:1.25rem;text-transform:uppercase}.replay-btn-home{padding:.25rem .75rem;-webkit-text-decoration-line:none;text-decoration-line:none;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.replay-btn-home:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (max-width:768px){.replay-controls{padding:.75rem 3rem}.replay-header{margin-bottom:.375rem}.replay-main-controls{gap:.5rem}.replay-buttons,.replay-slider-container{width:100%}.replay-btn{font-size:.875rem;line-height:1.25rem;min-width:32px;padding:.25rem .5rem}}
/*# sourceMappingURL=main.8db7278a.css.map*/