@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2430ef2f-module__uFcjGW__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2430ef2f-module__uFcjGW__variable{--font-body:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/051742360c26797e-s.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_fc4d1f4d-module__rnQn6W__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_fc4d1f4d-module__rnQn6W__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--background:#f8fafc;--foreground:#1e293b;--card-background:#fff;--border-color:#e2e8f0;--primary-color:#3b82f6;--success-color:#10b981;--error-color:#ef4444;--warning-color:#f59e0b;--font-display:"Futura", "Century Gothic", "Avenir Next", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;--font-mono:"SF Mono", "Monaco", "Cascadia Code", "Consolas", "Courier New", monospace;--font-family-sans:var(--font-body);--font-size-base:16px;--line-height-base:1.6;--spacing-base:1rem;--border-radius:.5rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--viewport-height:100vh;--viewport-width:100vw;--viewport-height-dynamic:100dvh;--viewport-height-small:100svh;--viewport-height-large:100lvh;--safe-area-top:env(safe-area-inset-top,0);--safe-area-bottom:env(safe-area-inset-bottom,0);--safe-area-left:env(safe-area-inset-left,0);--safe-area-right:env(safe-area-inset-right,0);--container-query-support:false;--mobile-padding:.5rem;--tablet-padding:1rem;--desktop-padding:2rem;--mobile-font-size:.875rem;--tablet-font-size:1rem;--desktop-font-size:1.125rem}@supports (height:100dvh){:root{--viewport-height:100dvh;--viewport-height-dynamic:100dvh}}@supports (height:100svh){:root{--viewport-height-small:100svh}}@supports (height:100lvh){:root{--viewport-height-large:100lvh}}@supports (container-type:inline-size){:root{--container-query-support:true}}@media (prefers-color-scheme:dark){:root{--background:#0f172a;--foreground:#f1f5f9;--card-background:#1e293b;--border-color:#334155}}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;font-size:var(--font-size-base);line-height:var(--line-height-base);scroll-behavior:smooth;overflow-x:hidden}body{color:var(--foreground);background:var(--background);font-family:var(--font-family-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:var(--viewport-height-dynamic,var(--viewport-height));margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}a{color:inherit;text-decoration:none}button,input{font-family:inherit}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}:focus:not(:focus-visible){outline:none}.skip-to-content{z-index:9999;color:#fff;border-radius:var(--border-radius);white-space:nowrap;background:#1e3a8a;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.75rem 1rem;font-weight:600;text-decoration:none;display:inline-flex;position:absolute;top:-100%;left:50%;transform:translate(-50%)}.skip-to-content:focus{top:.5rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (hover:none) and (pointer:coarse){button,input,select{min-height:44px}}@media (prefers-contrast:high){:root{--border-color:#000}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
body{cursor:default}button,[role=button],.clickable,a:not([disabled]){cursor:pointer;position:relative}button:not(:disabled),[role=button]:not([aria-disabled=true]){cursor:pointer}button:disabled,[aria-disabled=true],.disabled{cursor:not-allowed;opacity:.6}.sudoku-cell,[data-cell],[role=gridcell]:not([aria-readonly=true]){cursor:pointer}.sudoku-cell[data-prefilled=true],[role=gridcell][aria-readonly=true],.sudoku-cell[data-selected=true],[role=gridcell][aria-selected=true]{cursor:default}.sudoku-cell:not([data-prefilled=true]):hover,[role=gridcell]:not([aria-readonly=true]):hover{cursor:pointer}[draggable=true]{cursor:grab}[draggable=true]:active{cursor:grabbing}.drop-zone{cursor:copy}.drop-zone-active{cursor:move}input[type=text],input[type=number],textarea,[contenteditable=true]{cursor:text}input[type=number].sudoku-input{cursor:pointer}input[type=range]{cursor:ew-resize}input[type=checkbox],input[type=radio],select{cursor:pointer}.hint-button,.help-button,[aria-label*=hint],[aria-label*=help],.info-icon,[role=tooltip],[data-tooltip]{cursor:help}.resizable{cursor:nwse-resize}.resizable-horizontal{cursor:ew-resize}.resizable-vertical{cursor:ns-resize}.loading,[aria-busy=true],.progress,[role=progressbar]{cursor:wait}.custom-cursor-primary{cursor:pointer;position:relative}.custom-cursor-primary:hover:after{content:"";background:var(--color-coral);pointer-events:none;opacity:.5;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite cursor-pulse;position:absolute}@keyframes cursor-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.2;transform:scale(1.5)}}.custom-cursor-secondary{cursor:pointer}.custom-cursor-secondary:hover:after{content:"";background:var(--color-teal);pointer-events:none;opacity:.4;border-radius:50%;width:6px;height:6px;position:absolute}@media (hover:none) and (pointer:coarse){.custom-cursor-primary:hover:after,.custom-cursor-secondary:hover:after{display:none}*{cursor:default!important}button,[role=button],a{cursor:pointer!important}}@media (prefers-contrast:high){.custom-cursor-primary:hover:after,.custom-cursor-secondary:hover:after{opacity:1;border:2px solid}}@media (prefers-reduced-motion:reduce){.custom-cursor-primary:hover:after{animation:none}}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}:focus:not(:focus-visible){outline:none}@media print{*{cursor:default!important}.custom-cursor-primary:hover:after,.custom-cursor-secondary:hover:after{display:none}}.cursor-default{cursor:default!important}.cursor-pointer{cursor:pointer!important}.cursor-help{cursor:help!important}.cursor-wait{cursor:wait!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-grab{cursor:grab!important}.cursor-grabbing{cursor:grabbing!important}.cursor-text{cursor:text!important}.cursor-move{cursor:move!important}.cursor-none{cursor:none!important}.child-friendly-cursor{cursor:pointer;position:relative}.child-friendly-cursor:hover:before{content:"";border:2px dashed var(--color-coral);border-radius:var(--radius-child);pointer-events:none;opacity:.3;animation:2s ease-in-out infinite child-cursor-hint;position:absolute;inset:-8px}@keyframes child-cursor-hint{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.05)}}@media (hover:none) and (pointer:coarse){.child-friendly-cursor:hover:before{display:none}}@media (prefers-reduced-motion:reduce){.child-friendly-cursor:hover:before{opacity:.3;animation:none}}
