@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");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}:root{--font-display:"Fredoka Variable", "Fredoka", "Nunito Variable", system-ui, sans-serif;--font-ui:"Nunito Variable", "Nunito", system-ui, sans-serif;--board:#222329;--spring:cubic-bezier(.34, 1.56, .64, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;margin:0;transition:background-color .25s,color .25s}body{min-height:100dvh}button,a,input{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}a{text-decoration:none}h1,h2,p{margin:0}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ic{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.screen{max-width:480px;min-height:100dvh;padding:calc(14px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;margin:0 auto;display:flex}.topbar{align-items:center;gap:10px;min-height:44px;display:flex}.topbar-title{min-width:0;font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:21px;font-weight:600;overflow:hidden}.topbar-title.brand{font-size:22px;font-weight:700}.logo{flex:none}.icon-btn{background:var(--surface);width:44px;height:44px;color:var(--ink);box-shadow:0 3px 0 var(--lip);cursor:pointer;border:0;border-radius:14px;flex:none;place-items:center;padding:0;transition:transform 70ms,box-shadow 70ms;display:grid}.icon-btn:active{box-shadow:0 0 0 var(--lip);transform:translateY(3px)}.btn{--btn-lip:var(--lip);height:58px;font-family:var(--font-display);white-space:nowrap;cursor:pointer;border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:17px;font-weight:600;transition:transform 70ms,box-shadow 70ms,opacity .15s;display:flex}.btn:not(:disabled):active{box-shadow:0 1px 0 var(--btn-lip);transform:translateY(3px)}.btn:disabled{opacity:.45;cursor:default}.btn-secondary{background:var(--surface);color:var(--ink);box-shadow:0 4px 0 var(--lip), 0 10px 18px var(--shadow);flex:1 1 0}.btn-primary{--btn-lip:var(--primary-lip);background:var(--primary);color:var(--primary-ink);box-shadow:0 4px 0 var(--primary-lip), 0 10px 18px var(--primary-glow)}.btn-wide{flex:1.6 1 0}.btn-square{flex:none;width:58px;padding:0}.btn-text{text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:6px 0;font-size:13.5px;font-weight:800;text-decoration:underline}.seg{background:var(--track);border-radius:18px;gap:4px;padding:4px;display:grid;box-shadow:inset 0 2px #0000000d}.seg button{height:48px;color:var(--ink2);cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;transition:background-color .15s,box-shadow .15s,transform 70ms;display:flex}.seg button[aria-pressed=true]{background:var(--pill);color:var(--ink);box-shadow:0 3px 0 var(--lip)}.seg button:active{transform:translateY(2px)}.seg-label{font-family:var(--font-display);font-size:16px;font-weight:600;line-height:1.1}.seg-sub{color:var(--ink2);font-size:11px;font-weight:700;line-height:1.1}.chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 12px 6px 10px;font-size:12.5px;font-weight:800;display:inline-flex}.chip .ic{stroke-width:2.6px}.chip-info{background:var(--chip-bg);color:var(--chip-fg);box-shadow:0 2px 0 var(--chip-lip)}.chip-ok{background:var(--ok-bg);color:var(--ok-fg);box-shadow:0 2px 0 var(--ok-lip)}.step{align-items:center;gap:10px;margin-top:4px;display:flex}.step-num{background:var(--ink);width:24px;height:24px;color:var(--bg);font-family:var(--font-display);border-radius:999px;place-items:center;font-size:13px;font-weight:600;display:grid}.step-title{font-size:15px;font-weight:800}.step-aside{color:var(--ink2);margin-left:auto;font-size:13px;font-weight:700}.kicker{letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.kicker-done{color:var(--ok-fg);align-items:center;gap:3px;display:inline-flex}.kicker-done .ic{stroke-width:3px}.card{background:var(--surface);box-shadow:0 3px 0 var(--lip);border-radius:20px;flex-direction:column;gap:10px;padding:14px;display:flex}.section-label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);margin:0 0 8px;font-size:12px;font-weight:800}.card>.section-label{margin:0}.note{color:var(--ink2);font-size:12.5px;font-weight:700;line-height:1.4}section>.note{margin-top:8px}.progress{background:var(--track);border-radius:999px;height:10px;margin-top:6px;display:block;overflow:hidden;box-shadow:inset 0 2px #0000000f}.progress>span{border-radius:inherit;background:var(--primary);height:100%;box-shadow:inset 0 -2px 0 var(--primary-lip);transition:width .4s var(--spring);display:block}.meta{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.meta-main{flex-direction:column;gap:2px;min-width:0;display:flex}.meta-title{font-family:var(--font-display);font-size:27px;font-weight:600;line-height:1.08}.meta-side{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.timer{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink2);align-items:center;gap:5px;font-size:15px;font-weight:600;display:inline-flex}.board{background:repeating-linear-gradient(135deg, #ffffff08 0 1px, transparent 1px 4px), var(--board);box-shadow:inset 0 1px 0 #ffffff14, 0 4px 0 #101114, 0 14px 26px var(--shadow);border-radius:20px;padding:4px}.board svg{width:100%;height:auto;display:block;overflow:visible}.cell{transform-box:fill-box;transform-origin:50%;transition:transform .34s var(--spring), opacity .2s ease;animation:cell-in .42s var(--spring) backwards}.cell use{transition:fill .25s}.cell.is-hidden{opacity:0;transform:scale(.5)}.layer{transition:opacity .2s}.layer.is-dim{opacity:.3}.cell-letter{font-family:var(--font-ui);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:7px;font-weight:900}.link{transition:opacity .12s;animation:.2s backwards fade-in}.link.is-hidden{opacity:0}.tray{background:var(--lid);box-shadow:inset 0 1px 0 #ffffff12, 0 4px 0 var(--lid-lip), 0 12px 22px var(--shadow);border-radius:20px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:12px;list-style:none;display:grid}.tray-item{background:var(--lid-chip);height:66px;animation:chip-in .36s var(--spring) backwards;border-radius:14px;place-items:center;padding-left:10px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff0f}.tray-item:nth-child(2){animation-delay:30ms}.tray-item:nth-child(3){animation-delay:60ms}.tray-item:nth-child(4){animation-delay:90ms}.tray-item:nth-child(5){animation-delay:.12s}.tray-item:nth-child(6){animation-delay:.15s}.tray-item:nth-child(7){animation-delay:.18s}.tray-item:nth-child(n+8){animation-delay:.21s}.tray-item .piece{transition:opacity .2s ease, transform .25s var(--spring);overflow:visible}.tray-item.is-hinted .piece{opacity:.35;transform:scale(.9)}.tray-item.is-placeholder{background:#ffffff0a;animation:none}.letter-badge{color:#f1f2f6;background:#ffffff24;border-radius:999px;place-items:center;width:17px;height:17px;font-size:10px;font-weight:900;display:grid;position:absolute;top:5px;left:5px}.hint-badge{color:#1c1e29;background:#ffffffeb;border-radius:999px;padding:2px 6px;font-size:9.5px;font-weight:900;position:absolute;top:5px;right:5px}.actions{z-index:2;margin:auto -16px calc(-16px - env(safe-area-inset-bottom));padding:14px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 78%, transparent);gap:12px;display:flex;position:sticky;bottom:0}.sheet-backdrop{z-index:20;background:#0a0c1473;justify-content:center;align-items:flex-end;animation:.2s fade-in;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:480px;max-height:90dvh;padding:22px 18px calc(18px + env(safe-area-inset-bottom));background:var(--surface);color:var(--ink);animation:sheet-up .42s var(--spring);border-radius:28px 28px 0 0;overflow-y:auto;box-shadow:0 -10px 30px #0003}.sheet-actions{gap:12px;width:100%;margin-top:18px;display:flex}.solved{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.solved-badge{background:var(--ok-bg);width:68px;height:68px;color:var(--ok-fg);box-shadow:0 4px 0 var(--ok-lip);animation:badge-pop .5s var(--spring) .1s backwards;border-radius:999px;place-items:center;display:grid}.solved-badge .ic{stroke-width:3px}.solved-title{font-family:var(--font-display);margin-top:6px;font-size:30px;font-weight:700}.solved-line{color:var(--ink2);font-weight:700}.solved-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px;display:flex}.mode-card{background:var(--surface);min-height:124px;color:var(--ink);box-shadow:0 4px 0 var(--lip), 0 12px 22px var(--shadow);border-radius:22px;flex-direction:column;gap:4px;padding:18px 118px 18px 18px;transition:transform 70ms,box-shadow 70ms;display:flex;position:relative;overflow:hidden}.mode-card:active{box-shadow:0 1px 0 var(--lip);transform:translateY(3px)}.mode-card.is-daily{background:var(--primary);color:var(--primary-ink);box-shadow:0 4px 0 var(--primary-lip), 0 12px 22px var(--primary-glow)}.mode-card.is-daily:active{box-shadow:0 1px 0 var(--primary-lip)}.mode-card.is-daily .kicker,.mode-card.is-daily .mode-sub{color:var(--primary-ink)}.mode-title{font-family:var(--font-display);font-size:22px;font-weight:600;line-height:1.15}.mode-sub{color:var(--ink2);font-size:13px;font-weight:700;line-height:1.35}.mode-foot{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.cta{background:var(--primary-ink);color:var(--primary);font-family:var(--font-display);border-radius:999px;align-items:center;gap:6px;padding:7px 12px 7px 14px;font-size:15px;font-weight:600;display:inline-flex}.mode-art{pointer-events:none;width:88px;height:auto;position:absolute;top:50%;right:14px;overflow:visible;transform:translateY(-50%)rotate(-8deg)}.stats-strip{background:var(--surface);color:var(--ink);box-shadow:0 3px 0 var(--lip);border-radius:20px;align-items:center;gap:8px;padding:12px 14px;transition:transform 70ms,box-shadow 70ms;display:flex}.stats-strip:active{box-shadow:0 1px 0 var(--lip);transform:translateY(2px)}.mini-tile{flex-direction:column;flex:1;display:flex}.mini-tile strong{font-family:var(--font-display);font-size:20px;font-weight:600}.mini-tile span{color:var(--ink2);font-size:11.5px;font-weight:700}.pack-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pack-name{font-family:var(--font-display);font-size:22px;font-weight:600}.pack-sub{color:var(--ink2);margin-top:2px;font-size:12.5px;font-weight:700}.pack-count{font-family:var(--font-display);color:var(--ink2);font-size:17px;font-weight:600}.honeycomb{flex-direction:column;align-items:center;margin-top:6px;padding-bottom:4px;display:flex}.hc-row{gap:6px;display:flex;transform:translate(-14px)}.hc-row.is-offset{transform:translate(14px)}.hc-row+.hc-row{margin-top:-9px}.hexbtn{--hex-fill:var(--track);width:50px;height:57.7px;color:var(--ink);font-family:var(--font-display);place-items:center;font-size:17px;font-weight:600;transition:transform 70ms;display:grid;position:relative}.hexbtn svg{width:100%;height:100%;filter:drop-shadow(0 3px 0 var(--lip));position:absolute;inset:0;overflow:visible}.hexbtn use{fill:var(--hex-fill)}.hexbtn span{position:relative}.hexbtn.is-next{--hex-fill:var(--primary);color:var(--primary-ink)}.hexbtn:active{transform:translateY(2px)}.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.theme-card{text-align:left;cursor:pointer;height:84px;box-shadow:0 0 0 1px #00000014, 0 3px 0 var(--card-lip);border:0;border-radius:16px;flex-direction:column;justify-content:space-between;padding:10px;transition:transform 70ms,box-shadow .15s;display:flex;position:relative}.theme-card.is-on{box-shadow:0 0 0 3px var(--ink), 0 3px 0 var(--card-lip)}.theme-card:active{transform:translateY(2px)}.theme-board{background:var(--board);border-radius:7px;place-items:center;height:24px;display:grid;box-shadow:0 2px #101114}.theme-foot{justify-content:space-between;align-items:center;gap:6px;display:flex}.theme-name{font-size:12.5px;font-weight:800}.theme-accent{border-radius:999px;width:26px;height:10px}.theme-check{background:var(--ink);width:22px;height:22px;color:var(--bg);animation:badge-pop .3s var(--spring);border-radius:999px;place-items:center;display:grid;position:absolute;top:-6px;right:-6px;box-shadow:0 2px #0003}.theme-check .ic{stroke-width:3.4px}.swatch-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px 6px;display:grid}.piece-swatch{background:var(--lid);color:#f1f2f6;height:52px;box-shadow:0 2px 0 var(--lid-lip);cursor:pointer;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;font-size:10.5px;font-weight:900;transition:transform 70ms;display:flex}.piece-swatch:active{transform:translateY(2px)}.piece-swatch svg{filter:drop-shadow(0 1.5px #00000073);width:22px;height:25px}.toggles{gap:0;padding:4px 14px}.toggle-row{align-items:center;gap:12px;min-height:58px;display:flex}.toggle-row+.toggle-row{border-top:1px solid var(--track)}.toggle-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.toggle-label{font-size:14.5px;font-weight:800}.toggle-sub{color:var(--ink2);font-size:12px;font-weight:700}.switch{background:var(--lip);cursor:pointer;border:0;border-radius:999px;flex:none;width:52px;height:32px;padding:0;transition:background-color .15s;position:relative;box-shadow:inset 0 2px #0000001a}.switch[aria-checked=true]{background:var(--primary)}.switch-knob{color:#1c1e29;width:26px;height:26px;transition:transform .22s var(--spring);background:#fff;border-radius:999px;place-items:center;display:grid;position:absolute;top:3px;left:3px;box-shadow:0 2px #0000002e,0 3px 6px #0000001f}.switch[aria-checked=true] .switch-knob{transform:translate(20px)}.switch-knob .ic{stroke-width:3.4px}.about{text-align:center;color:var(--ink2);margin-top:4px;font-size:12.5px;font-weight:700}.about a{color:var(--ink);text-underline-offset:3px;align-items:center;gap:4px;font-weight:800;text-decoration:underline;display:inline-flex}.color-head{align-items:center;gap:14px;display:flex}.color-preview{background:var(--lid);border-radius:16px;place-items:center;min-width:100px;min-height:80px;padding:8px;display:grid}.color-title{font-family:var(--font-display);font-size:22px;font-weight:600}.filament-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.filament{aspect-ratio:1;box-shadow:inset 0 0 0 1px #0000001f, 0 3px 0 var(--lip);cursor:pointer;border:0;border-radius:12px;place-items:center;padding:0;transition:transform 70ms,box-shadow .15s;display:grid}.filament:active{transform:translateY(2px)}.filament.is-on{box-shadow:0 0 0 3px var(--ink), 0 3px 0 var(--lip)}.filament .ic{stroke-width:3px}.custom-color{background:var(--track);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:10px 12px;font-weight:800;display:flex}.custom-color input{cursor:pointer;background:0 0;border:0;width:56px;height:36px;padding:0}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tile{background:var(--surface);box-shadow:0 3px 0 var(--lip);border-radius:18px;flex-direction:column;gap:2px;padding:14px;display:flex}.tile-label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink2);font-size:11px;font-weight:800}.tile-value{font-family:var(--font-display);font-size:28px;font-weight:600;line-height:1.1}.tile-sub{color:var(--ink2);font-size:12px;font-weight:700}.best-list{margin:0;padding:0;list-style:none}.best-list li{border-top:1px solid var(--track);justify-content:space-between;padding:10px 0;font-weight:700;display:flex}.best-list li:first-child{border-top:0}.best-list strong{font-family:var(--font-display);font-size:17px;font-weight:600}@media (height<=720px){.screen{gap:10px}.seg button{height:42px}.meta-title{font-size:23px}.step{margin-top:0}.tray{gap:6px;padding:10px}.tray-item{height:56px}.btn{height:52px}.btn-square{width:52px}.actions{padding-top:10px}}@keyframes cell-in{0%{transform:scale(.35)}}@keyframes chip-in{0%{opacity:0;transform:scale(.85)}}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes badge-pop{0%{transform:scale(.3)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-delay:0s!important}}
