:root{--ground:#ececea;--paper:#fff;--ink:#111;--muted:#6a6a67;--line:#d2d2cf;--cobalt:#111;--cobalt-ink:#fff;--cobalt-soft:#e3e3e0;--amber:#a86f06;--amber-fill:#e3a52b;--amber-soft:#f6eacb;--bad:#b3261e;--hint-starts:#a83d08;--hint-uses:#1a52ad;--shadow:0 1px 0 #0000000f, 0 6px 14px -9px #0000004d;--display:"Rubik", "Segoe UI", "Arial Hebrew", Arial, sans-serif;--body:"Assistant", "Segoe UI", "Arial Hebrew", Arial, sans-serif;--ease-out:cubic-bezier(.2, .9, .25, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0b0b0b;--paper:#1a1a1a;--ink:#f2f2f0;--muted:#9a9a96;--line:#2e2e2e;--cobalt:#f2f2f0;--cobalt-ink:#0b0b0b;--cobalt-soft:#333;--amber:#f0b94d;--amber-fill:#f0b94d;--amber-soft:#382b12;--bad:#ff8a80;--hint-starts:#ff9357;--hint-uses:#7eabf5;--shadow:0 1px 0 #0006, 0 8px 18px -10px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ground:#0b0b0b;--paper:#1a1a1a;--ink:#f2f2f0;--muted:#9a9a96;--line:#2e2e2e;--cobalt:#f2f2f0;--cobalt-ink:#0b0b0b;--cobalt-soft:#333;--amber:#f0b94d;--amber-fill:#f0b94d;--amber-soft:#382b12;--bad:#ff8a80;--hint-starts:#ff9357;--hint-uses:#7eabf5;--shadow:0 1px 0 #0006, 0 8px 18px -10px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,#root{height:100%}body{background:var(--ground);height:100%;color:var(--ink);font-family:var(--body);margin:0;padding-block:10px 12px;padding-inline:16px;font-size:16px;line-height:1.5;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){*,:before{transition:none!important;animation:none!important}}.btn{border:1.5px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;white-space:nowrap;text-align:center;border-radius:10px;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-block}.btn.primary{background:var(--cobalt);border-color:var(--cobalt);color:var(--cobalt-ink)}.btn:disabled{opacity:.45;cursor:default}.btn .ext-icon{vertical-align:-2px;margin-inline-start:6px}.chip{background:var(--cobalt);color:var(--cobalt-ink);vertical-align:1px;border-radius:99px;margin-inline-start:6px;padding:1px 9px;font-size:.78rem;font-weight:600;display:inline-block}.sheet{background:var(--paper);border:1.5px solid var(--ink);border-radius:4px;flex-direction:column;display:flex;position:relative;overflow:hidden}.sheethead{border-bottom:1.5px solid var(--ink);justify-content:space-between;align-items:center;padding:18px 22px 12px;display:flex}.sheethead h2{font-family:var(--display);margin:0;font-size:2rem;font-weight:800;line-height:1}.sheetbody{overscroll-behavior:contain;flex:1;min-height:0;padding:6px 22px 26px;overflow-y:auto}.modal{visibility:hidden;pointer-events:none;place-items:center;padding:16px;transition:visibility 0s linear .4s;display:grid;position:fixed;inset:0}.modal.open{visibility:visible;pointer-events:auto;transition:visibility}.backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;background:#08080880;transition:opacity .3s;position:absolute;inset:0}.modal.open .backdrop{opacity:1}.modal .sheet{opacity:0;width:100%;max-width:520px;height:min(86%,760px);transition:transform .4s var(--ease-out), opacity .25s ease;transform:translateY(24px)scale(.96);box-shadow:0 24px 60px -20px #00000080}.modal.open .sheet{opacity:1;transform:none}.closebtn{cursor:pointer;width:40px;height:40px;color:var(--ink);background:0 0;border:0;font-size:1.6rem;line-height:1}.pill{border:1.5px solid var(--line);background:var(--paper);white-space:nowrap;cursor:pointer;border-radius:99px;flex:none;align-items:center;gap:6px;padding:7px 12px;font-size:.9rem;font-weight:600;display:inline-flex}.pill.strong,.pill:hover{border-color:var(--ink)}.pill.round{width:40px;height:40px;font-family:var(--display);justify-content:center;padding:0;font-size:1.15rem;font-weight:800;position:relative}.pill.round:after{content:"";position:absolute;inset:-2px}.pbar{background:var(--paper);height:14px;box-shadow:inset 0 0 0 1.5px var(--line);border-radius:99px;position:relative;overflow:hidden}.pbar i{background:repeating-linear-gradient(-45deg, #ffffff24 0 8px, transparent 8px 16px), var(--cobalt);background-size:22.6px 100%,auto;border-radius:99px;transition:width .6s cubic-bezier(.2,.8,.2,1);animation:1.2s linear infinite crawl;position:absolute;inset-block:0;inset-inline-start:0}@keyframes crawl{to{background-position:-22.6px 0,0 0}}.pbarwrap{position:relative}.pbarwrap .mark{cursor:help;-webkit-tap-highlight-color:transparent;border-radius:50%;outline:none;place-items:center;width:24px;height:24px;margin-inline-start:-12px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pbarwrap .mark:before{content:"";background:var(--paper);width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--mark);transition:background .3s ease, transform .3s var(--ease-out);border-radius:50%}.pbarwrap .mark.reached:before{background:var(--mark);box-shadow:0 0 0 2px var(--paper);transform:scale(1.15)}.pbarwrap .mark:focus-visible:before{outline:2px solid var(--mark);outline-offset:2px}.pbarwrap .mark .tip{transform:translateX(calc(var(--at) * 1%));text-wrap:balance;z-index:2;background:var(--ink);width:max-content;max-width:min(360px,100vw - 32px);color:var(--paper);border-bottom:3px solid var(--mark);font-family:var(--body);opacity:0;pointer-events:none;transition:opacity .14s var(--ease-out);border-radius:7px;padding:4px 9px;font-size:.8rem;font-weight:600;line-height:1.3;position:absolute;bottom:calc(100% + 2px);right:50%}@media (hover:hover){.pbarwrap .mark:hover .tip{opacity:1}}.pbarwrap .mark:focus .tip{opacity:1}@media (prefers-reduced-motion:reduce){.pbarwrap .mark:before,.pbarwrap .mark .tip{transition:none}}.pbar.slim{background:var(--cobalt-soft);width:88px;height:6px;box-shadow:none;border-radius:6px;display:block}.pbar.slim i{background:var(--cobalt);border-radius:6px;animation:none}.tile{background:var(--paper);box-shadow:var(--shadow), inset 0 0 0 1.5px var(--line);cursor:pointer;font-family:var(--display);font-weight:600;font-size:calc(var(--cell) * .46);color:var(--cobalt);border-radius:10%;place-items:center;line-height:1;transition:transform .12s,background .12s,color .4s,opacity .4s;display:grid;position:relative}.tile.dead{color:var(--muted);opacity:.38;box-shadow:inset 0 0 0 1.5px var(--line)}.tile.on{background:var(--cobalt);color:var(--cobalt-ink);opacity:1;transform:scale(.94)}.tile.show{background:var(--cobalt-soft)}.tile.show.bonus{background:var(--amber-soft)}.tile .hint{font-family:var(--display);font-weight:700;font-size:max(11px, calc(var(--cell) * .16));font-variant-numeric:tabular-nums;pointer-events:none;animation:tick .4s var(--ease-out) both;line-height:1;position:absolute}.tile .hint.starts{color:var(--hint-starts);top:8%;right:10%}.tile .hint.uses{color:var(--hint-uses);bottom:8%;left:10%}.tile.on .hint{color:inherit;opacity:.75}@keyframes tick{0%{opacity:0;transform:translateY(-40%)}}@media (prefers-reduced-motion:reduce){.tile .hint{animation:none}}.days{padding-top:6px;display:grid}.day{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:start;cursor:pointer;background:0 0;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;padding:14px 4px;display:grid}.day:hover .dname{text-underline-offset:4px;text-decoration:underline}.day .dname{font-family:var(--display);font-size:1.2rem;font-weight:700;line-height:1.2}.day .dsub{color:var(--muted);grid-column:1;font-size:.85rem}.day .dstat{grid-area:1/2/span 2;justify-items:end;gap:6px;display:grid}.day .dcount{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem}.day .dcount b{color:var(--ink)}.day.current{background:var(--cobalt-soft);border-bottom-color:#0000;border-radius:8px;margin-block:2px;padding-inline:12px}.day.done .dcount{color:var(--ink);font-weight:600}.day.current .pbar.slim{background:var(--paper)}.modal.open .day{animation:rise .36s var(--ease-out) both;animation-delay:calc(90ms + var(--i,0) * 28ms)}.boardwrap{--cell:min(calc(100cqw / var(--cols,4)), calc((100cqh - 3.2rem) / var(--rows,4)), calc(480px / var(--maxd,4)));flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:0;display:flex;container-type:size}.board{width:calc(var(--cell) * var(--cols,4));height:calc(var(--cell) * var(--rows,4));touch-action:none;-webkit-user-select:none;user-select:none;flex:none;position:relative}.tiles{grid-template-columns:repeat(var(--cols,4), 1fr);grid-template-rows:repeat(var(--rows,4), 1fr);gap:calc(var(--cell) * .16);display:grid;position:absolute;inset:0}.trace{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.trace polyline{fill:none;stroke:var(--cobalt);stroke-opacity:.35;stroke-linecap:round;stroke-linejoin:round}.tiles.spin{transition:transform .46s cubic-bezier(.45,.05,.2,1);transform:rotate(-90deg)scale(.94)}.tiles.settle .tile{animation:.32s ease-out both settle}@keyframes settle{0%{opacity:.6;transform:scale(.9)}}.modal .sheet.defcard{max-width:460px;height:auto;max-height:min(80%,560px)}.defbody{gap:10px;padding:14px 22px 22px;display:grid;overflow-y:auto}.defmeta{color:var(--muted);min-height:1.4em;margin:0;font-size:.95rem}.defmeta b{color:var(--ink);font-weight:600}.deftext{margin:0;font-size:1.2rem;line-height:1.55}.deftext.loading{color:var(--muted)}.deftext.loading:after{content:"";text-align:start;width:1.2em;animation:1.2s steps(4,end) infinite dots;display:inline-block}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.defex{color:var(--muted);border-inline-start:3px solid var(--line);margin:0;padding-inline-start:10px;font-size:1.02rem}.defmore{color:var(--ink);gap:4px;margin:0;padding-inline-start:1.4em;font-size:1rem;display:grid}.defnote{color:var(--muted);margin:2px 0 0;font-size:.78rem}.defactions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.modal .sheet.helpcard{height:auto;max-height:min(88%,740px)}.helpbody{padding-bottom:22px}.helplead{color:var(--muted);margin:12px 0 0;font-size:1.15rem}.helpsec{padding-block:16px 0}.helpsec h3{font-family:var(--display);margin:0 0 6px;font-size:1.35rem;font-weight:800;line-height:1.1}.helpsec ul{gap:7px;margin:0;padding-inline-start:1.15em;display:grid}.helpsec li{font-size:1.02rem;line-height:1.5}.helpsec li b{font-weight:700}.helpsec li b.bonusword{color:var(--amber)}.helpsec li b.hintstarts{color:var(--hint-starts)}.helpsec li b.hintuses{color:var(--hint-uses)}.helpactions{margin-top:22px}.helpactions .btn{width:100%;padding-block:11px;font-size:1.05rem}.helpdemo{width:156px;height:156px;margin-inline:auto;display:block}.helpdemo rect{fill:var(--paper);stroke:var(--line);stroke-width:1.5px}.helpdemo text{font-family:var(--display);fill:var(--cobalt);font-size:20px;font-weight:600}.helpdemo .on rect{fill:var(--cobalt);stroke:var(--cobalt)}.helpdemo .on text{fill:var(--cobalt-ink)}.helpdemo polyline{fill:none;stroke:var(--cobalt);stroke-width:9px;stroke-linecap:round;stroke-linejoin:round}.helpcap{text-align:center;color:var(--muted);margin:8px 0 0;font-size:.98rem}.helpcap b{color:var(--ink);font-weight:600}.modal.open .helplead,.modal.open .helpsec,.modal.open .helpactions{animation:rise .4s var(--ease-out) both;animation-delay:calc(.11s + var(--i,0) * 60ms)}.modal.open .helpdemo polyline{stroke-dasharray:100;animation:draw .8s var(--ease-out) .35s both}@keyframes draw{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}.masthead{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:8px;display:flex}.masthead h1{font-family:var(--display);letter-spacing:-.01em;white-space:nowrap;margin:0;font-size:clamp(1.45rem,5.5vw,2.1rem);font-weight:800;line-height:1}.brand{flex:auto;gap:2px;min-width:0;display:grid}.when{color:var(--muted);font-size:.82rem;line-height:1.2}.when b,.when .shape{color:var(--ink);font-weight:600}.headbtns{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}@media (width<=420px){.pill.cal{justify-content:center;width:40px;height:40px;padding:0}.pill.cal .pilllabel{display:none}}.readout{place-items:center;width:100%;height:2.6rem;display:grid;position:relative}.current{font-family:var(--display);letter-spacing:.02em;font-size:1.9rem;font-weight:600;line-height:1}.toast{place-items:center;font-size:1.05rem;font-weight:600;display:grid;position:absolute;inset:0}.toast.main{color:var(--cobalt)}.toast.bonus{color:var(--amber)}.toast.bad{color:var(--bad)}.toast.info{color:var(--muted)}.toastbtn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 8px}.toastbtn .tw{text-underline-offset:5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1.5px}.toast .note{text-wrap:balance;animation:notein .4s var(--ease-out) .25s both;font-size:min(.85rem,3.5vw);line-height:1.15}.toast .note.hint-starts{color:var(--hint-starts)}.toast .note.hint-uses{color:var(--hint-uses)}.toast:has(.note){align-content:center;gap:1px}.toast:has(.note) .toastbtn{padding-block:0}@keyframes notein{0%{opacity:0;transform:translateY(4px)}}.score{gap:8px;display:grid}.count{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.count .num{font-family:var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:clamp(2.6rem,11vw,3.4rem);font-weight:800;line-height:.95}.count .num small{color:var(--muted);letter-spacing:0;font-size:.5em;font-weight:600}.count .label{font-family:var(--display);white-space:nowrap;font-size:1.15rem;font-weight:600}.count .tally{justify-items:end;gap:2px;margin-inline-start:auto;padding-inline-start:12px;display:grid}.count .points{font-family:var(--display);white-space:nowrap;font-size:1.15rem;font-weight:600}.count .points b{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.6rem;font-weight:800;display:inline-block}.count .points abbr{text-decoration:none}.count .points b.bump{animation:.35s ease-out bump}@keyframes bump{40%{transform:scale(1.25)}}.count .rank{color:var(--muted);font-size:.95rem;font-weight:600}.wgroup{padding-block:16px 4px}.wgroup h3{font-family:var(--display);margin:0 0 6px;font-size:1.55rem;font-weight:800;line-height:1.1}.wgroup.bonus h3{color:var(--amber)}.wgroup.theme h3{color:var(--cobalt)}.wgroup.theme h3:before{content:"★ "}.wlist{flex-wrap:wrap;gap:6px 26px;display:flex}.w{cursor:pointer;color:var(--ink);text-underline-offset:7px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1.5px;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);background:0 0;border:0;padding:2px 0;font-size:1.25rem}.w.fresh{text-decoration-style:solid;-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.wleft{color:var(--muted);margin:10px 0 0;font-size:1.05rem;font-style:italic}.wleft.done{color:var(--ink);font-style:normal;font-weight:600}.modal.open .wgroup{animation:rise .4s var(--ease-out) both;animation-delay:calc(.11s + var(--i,0) * 45ms)}.wordspanel{height:100%}.wordspanel .sheethead h2{align-items:baseline;gap:10px;display:flex}.wcount{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.55em;font-weight:600}.app{grid-template-rows:100%;max-width:520px;height:100%;margin-inline:auto;display:grid}.play{flex-direction:column;gap:10px;min-height:0;display:flex}.tools{align-items:center;gap:8px;display:flex}.tools .btn{flex:1}.tools .btn b{font-variant-numeric:tabular-nums}.tools .spinbtn .spinicon{transition:transform .46s cubic-bezier(.45,.05,.2,1);display:flex}.tools .spinbtn .tip{background:var(--ink);color:var(--paper);font-family:var(--body);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s var(--ease-out);border-radius:7px;padding:4px 9px;font-size:.8rem;font-weight:600;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@media (hover:hover){.tools .spinbtn:hover .tip{opacity:1}}.tools .spinbtn:focus-visible .tip{opacity:1}@media (prefers-reduced-motion:reduce){.tools .spinbtn .spinicon,.tools .spinbtn .tip{transition:none}}.status{color:var(--muted);grid-column:1/-1;place-self:center;font-size:1.1rem}.side{display:none}@media (width>=1100px){.app{grid-template-columns:minmax(260px,1fr) minmax(0,520px) minmax(260px,1fr);grid-template-areas:"side play.";column-gap:32px;max-width:none}.play{grid-area:play}.side{grid-area:side;justify-self:end;width:100%;max-width:380px;min-height:0;padding-block:4px;display:block}.tools .wordsbtn{display:none}}
