@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cc6c75d91fb27f62-s.3vy-_l9ztcxef.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ed5f1f9bced69653-s.p.2v4ibmotuyxuz.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:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(../media/574e5b2a8fe8e45b-s.1zpm-mgw3w1fq.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(../media/89ea96820aa96980-s.p.3pskbmi5y11f5.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:Atkinson Hyperlegible Fallback;src:local(Arial);ascent-override:95.6%;descent-override:29.18%;line-gap-override:0.0%;size-adjust:99.37%}.atkinson_hyperlegible_ef8f1774-module__ldZeVW__className{font-family:Atkinson Hyperlegible,Atkinson Hyperlegible Fallback;font-style:normal}.atkinson_hyperlegible_ef8f1774-module__ldZeVW__variable{--font-body:"Atkinson Hyperlegible", "Atkinson Hyperlegible Fallback"}
@font-face{unicode-range:U+30-39;font-family:digits;src:url(../media/inter_digits-s.p.2d_wshly0_-sb.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:digits Fallback;src:local(Arial);ascent-override:96.88%;descent-override:24.12%;line-gap-override:0.0%;size-adjust:100.0%}.digits_a338f61-module__p6-9Jq__className{font-family:digits,digits Fallback}.digits_a338f61-module__p6-9Jq__variable{--font-digits:"digits", "digits Fallback"}
@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f9d625bba3a10f71-s.2mytwttzefip6.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0cdb645d767d445c-s.3ydepyf7yqv2y.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0fcab32fcfb2da9d-s.p.1xuyavnr-8o1k.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:Kalam;font-style:normal;font-weight:700;font-display:swap;src:url(../media/55369777ae4e606f-s.1h4a9p5hay8br.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Kalam;font-style:normal;font-weight:700;font-display:swap;src:url(../media/786278188bba99f8-s.1mw-h72q7wm9m.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-weight:700;font-display:swap;src:url(../media/970c428219233a3d-s.p.3p08-1dmxavj4.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:Kalam Fallback;src:local(Arial);ascent-override:108.94%;descent-override:54.42%;line-gap-override:0.0%;size-adjust:97.58%}.kalam_e542e16a-module__7oYohW__className{font-family:Kalam,Kalam Fallback;font-style:normal}.kalam_e542e16a-module__7oYohW__variable{--font-hand:"Kalam", "Kalam Fallback"}
:root{--bg:#fff;--rule:#e2ebf8;--surface:#fff;--text:#1f2733;--muted:#5a6472;--border:#c9d3e2;--accent:#1c3d8f;--accent-text:#fff;--accent-soft:#eef3fb;--margin:#d93f45;--hl:#fff06b;--hl-text:#6b5d00;--found:#c3c9d1;--found-text:#8b939e;--found-x:#e3e6ea;--found-hl:#f0c419;--found-hl-text:#4a3800;--wrong:#d93f45;--radius:6px;--body:var(--font-digits,system-ui), var(--font-body,system-ui), -apple-system, "Segoe UI", Roboto, "PingFang SC", "PingFang TC", "Microsoft YaHei", "Microsoft JhengHei", "Noto Sans CJK SC", sans-serif;--num:var(--body);--hand:var(--font-hand,cursive), "Comic Sans MS", cursive;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0f1a2e;--rule:#18284a;--surface:#13213a;--text:#e8edf6;--muted:#9fb0c9;--border:#2c4066;--accent:#8fb0ff;--accent-text:#0b1426;--accent-soft:#1a2b4d;--margin:#ff7a7f;--hl:#5c5320;--hl-text:#ffe97a;--found:#2e3f5e;--found-text:#6b7c99;--found-x:#22314c;--found-hl:#8a6a10;--found-hl-text:#ffe39a;--wrong:#e5484d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{color:var(--text);font-family:var(--body);background-color:var(--bg);background-image:linear-gradient(var(--rule) 1px, transparent 1px), linear-gradient(90deg, var(--rule) 1px, transparent 1px);background-size:22px 22px;margin:0;line-height:1.55}a{color:var(--accent);text-underline-offset:3px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.site-header{border-bottom:2px solid var(--accent);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;padding:12px 16px;display:flex}.feedback-bar{background:var(--hl);color:var(--hl-text);justify-content:center;align-items:center;gap:8px;padding:6px 12px;font-size:.9rem;display:flex}.feedback-bar p{text-align:center;margin:0}.feedback-bar a{color:inherit;font-weight:700}.feedback-close{color:inherit;cursor:pointer;border-radius:var(--radius);background:0 0;border:0;flex:none;padding:2px 6px;font-size:1.3rem;line-height:1}:root[data-feedback=off] .feedback-bar{display:none}.brand{color:var(--accent);align-items:center;gap:10px;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{font-family:var(--num);border:2px solid;padding:4px 5px;font-size:.8rem;font-weight:700;line-height:1}.site-header>nav{flex-wrap:wrap;gap:4px 20px;display:flex}.site-header>nav a{color:var(--text);text-decoration:none}.site-header>nav a:hover{color:var(--accent);text-decoration:underline}main{max-width:1040px;margin:0 auto;padding:28px 16px 56px;position:relative}@media (min-width:1140px){main:before{content:"";background:var(--margin);opacity:.6;width:2px;position:absolute;top:0;bottom:0;left:-24px}}h1{color:var(--accent);text-wrap:balance;margin:8px 0 16px;font-size:clamp(1.7rem,4.4vw,2.9rem);line-height:1.12}h2{color:var(--accent);margin:36px 0 12px;font-size:1.3rem}.lede{color:var(--text);max-width:58ch;font-size:1.12rem}.muted{color:var(--muted);font-size:.92rem}.site-footer{text-align:center;color:var(--muted);border-top:2px solid var(--accent);background:var(--surface);padding:24px 16px;font-size:.85rem}button,.button{font:inherit;border-radius:var(--radius);border:2px solid var(--accent);cursor:pointer;padding:8px 16px;text-decoration:none;display:inline-block}.primary{background:var(--accent);color:var(--accent-text);font-weight:700}.primary:hover{filter:brightness(1.12)}.secondary{background:var(--surface);color:var(--accent);font-weight:700}.secondary:hover{background:var(--accent-soft)}.big{padding:12px 22px;font-size:1.05rem}button.link{color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}.hero{grid-template-columns:minmax(0,1fr);align-items:center;gap:32px;padding:12px 0 8px;display:grid}@media (min-width:820px){.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}.hero-copy{min-width:0}.cta-row{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.worksheet{background:var(--surface);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:6px 8px 0 -2px var(--accent-soft), 6px 8px 0 -1px var(--border);justify-self:center;padding:18px;transform:rotate(-1.2deg)}.worksheet-lines{font-family:var(--hand);color:var(--muted);gap:14px;margin-bottom:14px;display:flex}.worksheet-lines span{border-bottom:1px solid var(--muted);flex:1;padding-bottom:2px}.worksheet-grid{background:var(--text);grid-template-columns:repeat(5,1fr);gap:1.5px;padding:1.5px;display:grid}.worksheet-grid span{aspect-ratio:1;background:var(--surface);font-family:var(--num);place-items:center;font-size:clamp(.95rem,2.4vw,1.25rem);font-weight:700;display:grid}.worksheet-foot{color:var(--muted);margin-top:8px;font-size:.8rem}@media (prefers-reduced-motion:reduce){.worksheet{transform:none}}@media (max-width:560px){.worksheet{display:none}}.size-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.size-card{background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;display:flex}a.size-card:hover{background:var(--accent-soft)}.size-number{font-family:var(--num);color:var(--accent);font-variant-numeric:tabular-nums;font-size:2.1rem;font-weight:700;line-height:1.15}.two-col{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 32px;display:grid}.controls{flex-wrap:wrap;gap:12px 24px;margin-bottom:16px;display:flex}fieldset{border:none;min-width:0;margin:0;padding:0}legend{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px;font-size:.8rem;font-weight:700}fieldset:disabled{opacity:.5}.segmented{border:2px solid var(--accent);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;display:inline-flex;overflow:hidden}.segmented>button,.segmented>label{color:var(--accent);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:0;padding:8px 14px;font-weight:700}.segmented>*+*{border-left:1px solid var(--border)}.segmented>.on{background:var(--accent);color:var(--accent-text)}.segmented input{opacity:0;pointer-events:none;position:absolute}.hud{background:var(--surface);border:2px solid var(--accent);flex-wrap:wrap;align-items:center;gap:12px 28px;margin-bottom:12px;padding:10px 16px;display:flex}.hud>div{flex-direction:column;min-width:72px;display:flex}.hud>button{margin-left:auto}.hud-label{color:var(--muted);font-size:.78rem}.hud-value{font-family:var(--num);color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:700;line-height:1.2}.hud>div:first-child .hud-value{color:var(--margin)}.play-area{flex-direction:column;height:calc(100dvh - 16px);min-height:200px;scroll-margin-top:8px;display:flex}@supports not (height:100dvh){.play-area{height:calc(100vh - 16px)}}@media (max-width:760px),(pointer:coarse){.play-area.popped{z-index:50;overscroll-behavior:contain;background-color:var(--bg);background-image:linear-gradient(var(--rule) 1px, transparent 1px), linear-gradient(90deg, var(--rule) 1px, transparent 1px);background-size:22px 22px;height:auto;min-height:0;padding:0;display:block;position:fixed;inset:0;overflow-y:auto}html.grid-popped,html.grid-popped body{overflow:hidden}.popped .hud{border-width:1.5px;flex-wrap:nowrap;gap:4px 18px;margin:0;padding:2px 4px 2px 10px}.popped .hud>div{white-space:nowrap;flex-direction:row;align-items:baseline;gap:6px;min-width:0}.popped .hud-label{font-size:.72rem}.popped .hud-value{font-size:1.05rem;line-height:1.3}.popped .hud>button{padding:3px 12px;font-size:.85rem}.popped .board-wrap{height:100dvh}@supports not (height:100dvh){.popped .board-wrap{height:100vh}}}@media (max-width:380px){.popped .hud{gap:4px 10px}.popped .hud>button{padding:3px 8px}}.board-wrap{flex:1;min-height:0;position:relative}.board{--cols:10;--rows:10;background:var(--text);border:1.5px solid var(--text);-webkit-user-select:none;user-select:none;touch-action:manipulation;gap:1.5px;width:100%;height:100%;margin:0 auto;padding:0;display:grid;container-type:size}.board.blurred .cell{filter:blur(6px)}.cell{background:var(--surface);color:var(--text);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:700;font-size:min(100cqw / var(--cols) * .45, 100cqh / var(--rows) * .6);border:none;border-radius:0;min-width:0;min-height:0;padding:0;line-height:1;transition:background .12s;overflow:hidden}.cell:hover{background:var(--accent-soft)}.found-faded .cell.found,.found-faded .cell.found:hover{background:var(--found);color:var(--found-text)}.found-highlight .cell.found,.found-highlight .cell.found:hover{background:linear-gradient(170deg, var(--surface) 18%, var(--found-hl) 20%, var(--found-hl) 80%, var(--surface) 82%);color:var(--found-hl-text)}.found-crossed .cell.found,.found-crossed .cell.found:hover{background:linear-gradient(to top right, transparent calc(50% - 3px), var(--wrong) calc(50% - 3px), var(--wrong) calc(50% + 3px), transparent calc(50% + 3px)), linear-gradient(to bottom right, transparent calc(50% - 3px), var(--wrong) calc(50% - 3px), var(--wrong) calc(50% + 3px), transparent calc(50% + 3px)), var(--found-x);color:var(--found-text)}.cell.wrong{background:var(--wrong);color:#fff}.back-to-grid{left:50%;bottom:max(16px, env(safe-area-inset-bottom));z-index:60;white-space:nowrap;border-radius:999px;padding:12px 22px;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.overlay{text-align:center;background:color-mix(in srgb, var(--surface) 78%, transparent);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;display:flex;position:absolute;inset:0}.overlay p{max-width:34ch;margin:0;font-size:1.15rem}.result p:first-child{font-size:1.4rem}.card{background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);max-width:520px;padding:20px}.download{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.download p{margin:0}.print-section{margin-top:56px;scroll-margin-top:16px}.print-jump{border:2px solid var(--accent);border-radius:var(--radius);background:var(--surface);padding:8px 14px;font-weight:700;text-decoration:none;display:inline-block}.print-jump:hover{background:var(--accent-soft)}.field{flex-direction:column;gap:6px;font-weight:700;display:flex}.field input{font:inherit;font-family:var(--num);border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);width:120px;color:var(--text);padding:8px 10px}.field input:focus{border-color:var(--accent)}.feedback-form{flex-direction:column;align-items:flex-start;gap:18px;max-width:560px;display:flex}.feedback-form fieldset{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.feedback-form legend{margin-bottom:6px;font-weight:700}.feedback-form .choice{align-items:center;gap:8px;display:flex}.feedback-form .field{width:100%}.feedback-form .field input,.feedback-form textarea{font:inherit;box-sizing:border-box;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:8px 10px}.feedback-form textarea{resize:vertical}.feedback-form textarea:focus,.feedback-form .field input:focus{border-color:var(--accent);outline:none}.feedback-form .muted{font-weight:400}.feedback-form .hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-error{color:var(--text);border-left:4px solid var(--accent);margin:0;padding-left:10px}.form-status{font-weight:700}.table-wrap{overflow-x:auto}table{border-collapse:collapse;background:var(--surface);border:2px solid var(--accent);width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 12px}th{color:var(--accent);border-bottom:2px solid var(--accent);font-weight:700}td{font-variant-numeric:tabular-nums}.prose{max-width:65ch}.header-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.classic-link{border-radius:var(--radius);color:#fff;white-space:nowrap;background:#2196f3;padding:5px 12px;font-size:.85rem;font-weight:700;line-height:1.3;text-decoration:none}.classic-link:hover{background:#1976d2}@media (max-width:420px){.classic-link{order:1}}.theme-toggle{border:2px solid var(--accent);border-radius:var(--radius);background:var(--surface);width:34px;height:34px;color:var(--accent);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{background:var(--accent-soft)}.lang-switch{border:2px solid var(--accent);border-radius:var(--radius);font-size:.85rem;display:flex;overflow:hidden}.lang-switch>*{white-space:nowrap;padding:5px 10px;line-height:1.3}.lang-switch>*+*{border-left:1px solid var(--border)}.lang-switch a{color:var(--accent);background:var(--surface);text-decoration:none}.lang-switch a:hover{background:var(--accent-soft)}.lang-switch [aria-current]{background:var(--accent);color:var(--accent-text);font-weight:700}.beta-banner{background:var(--surface);color:var(--text);border:2px dashed var(--accent);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:24px;padding:10px 14px;text-decoration:none;display:flex}.beta-banner:hover{background:var(--accent-soft);border-style:solid}.beta-tag{font-family:var(--hand);color:var(--margin);background:linear-gradient(170deg, transparent 15%, var(--hl) 17%, var(--hl) 83%, transparent 85%);padding:0 6px;font-size:1.1rem;font-weight:700;line-height:1.1}.article-list{gap:12px;max-width:760px;margin:24px 0 0;padding:0;list-style:none;display:grid}.article-card{background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:4px;padding:14px 18px;text-decoration:none;display:flex}.article-card:hover{background:var(--accent-soft)}.article-card-title{color:var(--accent);font-size:1.12rem;font-weight:700}.article-card-text{color:var(--muted)}.article-back{margin:0;font-size:.92rem}.article li{margin-bottom:6px}.article-tip{background:var(--surface);border-left:4px solid var(--margin);margin:20px 0;padding:10px 14px}.article-cta{background:var(--surface);border:2px dashed var(--accent);border-radius:var(--radius);margin-top:36px;padding:16px 18px}.article-cta .cta-row{margin-top:8px}.article-cta-label{font-family:var(--hand);color:var(--margin);font-size:1.2rem;font-weight:700}.footer-links{margin:0 0 6px}.article-section h2 a{color:inherit;text-decoration:none}.article-section h2 a:hover{text-decoration:underline}.article-section .article-list{margin-top:12px}.nav-menu{position:relative}.nav-menu-button{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.nav-menu-button:hover,.nav-menu-button[aria-expanded=true]{color:var(--accent);text-decoration:underline}.nav-menu-caret{font-size:.8em}.nav-menu-list{z-index:20;background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);min-width:190px;box-shadow:4px 6px 0 -1px var(--accent-soft);margin:0;padding:6px 0;list-style:none;position:absolute;top:calc(100% + 8px);left:-12px}.nav-menu-list a{color:var(--text);white-space:nowrap;padding:8px 14px;text-decoration:none;display:block}.nav-menu-list a:hover{background:var(--accent-soft);color:var(--accent)}.nav-menu-all{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}
