@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#fff;--muted:#ffffff9e;--line:#ffffff6b;--glass:#07162647;--warn:#ffd7ae;--gold:#ffe3b5;--bg:radial-gradient(ellipse 95% 62% at 50% 40%, #20709e8c, transparent 62%), linear-gradient(180deg, #061423 0%, #0a314c 34%, #0e4a6e 56%, #0a3856 100%);font-synthesis:none;-webkit-font-smoothing:antialiased;font-family:Nunito,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html,body{background:#061423;background-image:var(--bg);color:var(--ink);background-attachment:fixed;margin:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:focus-visible{outline-offset:3px;outline:2px solid #fff}.screen{width:min(100%,440px);height:100dvh;padding:max(16px, env(safe-area-inset-top)) 20px max(14px, env(safe-area-inset-bottom));scrollbar-width:none;-webkit-user-select:none;user-select:none;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:auto}.screen::-webkit-scrollbar{display:none}.top{flex:none}.mode-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}h1{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:700;line-height:1.2}.mode-tag{letter-spacing:.16em;text-transform:uppercase;color:#ffffffb8;margin:0;font-size:13px;font-weight:700}.tools{justify-content:space-between;margin-top:16px;display:flex}.icon-btn{color:#fff;background:var(--glass);border:1.5px solid var(--line);border-radius:18px;place-items:center;width:62px;height:62px;display:grid;box-shadow:inset 0 1px #ffffff29}.icon-btn:active{transform:scale(.96)}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.icon-fill{fill:currentColor;stroke:none}.hero{text-align:center;flex:none;margin-top:22px}.kicker{letter-spacing:.28em;text-indent:.28em;text-transform:uppercase;color:#ffffffe0;margin:0;font-size:13px;font-weight:700}.target{letter-spacing:-.045em;font-variant-numeric:tabular-nums;text-shadow:0 10px 24px #00000038;margin:4px 0 0;font-size:clamp(84px,23vw,108px);font-weight:800;line-height:.86}.screen[data-status=won] .kicker{color:var(--gold)}.solved{color:var(--gold);margin:8px 0 0;font-size:15px;font-weight:700}.trail{min-height:0;margin-top:6px}.trail p{color:var(--muted);margin:0;font-size:15px;font-weight:600;line-height:1.35}.trail .warn{color:var(--warn);font-weight:700}.board-wrap{flex:1;justify-content:center;align-items:center;min-height:0;padding:10px 0;display:flex}.board{grid-template-columns:1fr 1fr;gap:16px;width:min(100%,352px,46dvh);display:grid}.board[data-count="1"]{grid-template-columns:1fr;width:min(62%,210px,30dvh)}.tile{aspect-ratio:1;touch-action:none;color:#fff;background-image:linear-gradient(180deg, #ffffff73 0%, #ffffff14 20%, #fff0 42%), linear-gradient(180deg, var(--top) 0%, var(--face) 48%, var(--bottom) 100%);border-radius:28px;justify-self:center;place-items:center;width:100%;animation:.18s ease-out pop;display:grid;position:relative;box-shadow:inset 0 2px #ffffff9e,inset 0 -10px 14px #0000001a,0 12px 18px #03102057;container-type:inline-size}.board[data-count="3"] .tile:last-child{grid-column:1/-1;width:calc(50% - 8px)}.coral{--top:#f3a297;--face:#e86b5c;--bottom:#d25548}.amber{--top:#ffd56e;--face:#f0b133;--bottom:#df9818}.mint{--top:#7ae8d0;--face:#35d0ad;--bottom:#1cba98}.sky{--top:#8ecbff;--face:#3aa3ea;--bottom:#1f86d2}.tile:active{transform:translateY(2px)scale(.985)}.tile.is-dragging,.tile.is-dragging:active,.tile.is-holding,.tile.is-holding:active{z-index:3;filter:brightness(1.05);transition:none;animation:none;box-shadow:inset 0 2px #ffffffb3,0 18px 28px #0310206b}.tile.is-settling{z-index:3}.tile.is-docked{opacity:0}.preview{z-index:1;justify-content:center;align-items:center;gap:.04em;width:100%;display:flex;position:relative}.preview-num{letter-spacing:-.04em;font-size:34cqw;font-weight:800;line-height:1}.preview-op{text-align:center;width:.85em;min-height:1em;font-size:22cqw;font-weight:800;line-height:1}.preview-op.is-in{animation-name:pair-in;animation-duration:.13s;animation-timing-function:cubic-bezier(.16,.84,.28,1.2);animation-fill-mode:both}.tile.is-target{z-index:1;box-shadow:inset 0 2px #fff9,0 0 0 3px #ffffffe6,0 12px 18px #03102057}.op-ring{z-index:4;pointer-events:none;transform-origin:0 0;width:0;height:0;position:fixed}.op-ring.is-in{animation-name:ring-in;animation-timing-function:cubic-bezier(.16,.84,.28,1.2);animation-fill-mode:both}.ring-guide{width:calc(var(--reach,128px));height:calc(var(--reach,128px));border:1.5px solid #ffffff52;border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.ring-op{color:#fff;background:#081828e0;border:1.5px solid #ffffff8c;border-radius:50%;place-items:center;width:50px;height:50px;font-size:26px;font-weight:700;line-height:1;display:grid;position:absolute;top:0;left:0;box-shadow:inset 0 1px #fff3,0 8px 16px #03102059}.ring-op.is-hot{color:#0c3550;background:#fff;border-color:#fff}@keyframes ring-in{0%{opacity:0;transform:scale(.7)}65%{opacity:1;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes pair-in{0%{opacity:0;transform:scale(.7)}65%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.tile.is-selected{box-shadow:inset 0 2px #fff9,inset 0 -8px 12px #00000014,0 0 0 3px #fff,0 12px 18px #03102057}.tile.is-breakable{box-shadow:inset 0 2px #fff9,0 0 0 3px #fffffff2,0 0 0 7px #ffffff38,0 12px 18px #03102057}.screen[data-status=won] .tile.is-solved{box-shadow:inset 0 2px #ffffffb3,0 0 0 4px #ffffffeb,0 0 28px #ffd68c73,0 12px 20px #03102057}.num{z-index:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums;text-shadow:0 2px #0000001a,0 8px 14px #00000024;font-size:54cqw;font-weight:800;line-height:1;position:relative}.digits-3{font-size:40cqw}.digits-4{font-size:30cqw}.controls{flex:none;padding-top:4px}.ops{justify-content:center;gap:18px;display:flex}.op-btn{background:var(--glass);border:1.5px solid var(--line);border-radius:50%;place-items:center;width:62px;height:62px;font-size:30px;font-weight:600;line-height:1;display:grid;box-shadow:inset 0 1px #ffffff29}.op-btn[aria-pressed=true]{background:#fff3;border-color:#fff}.op-btn:disabled{opacity:.34;cursor:default}.op-btn:active:not(:disabled){transform:scale(.96)}.actions{gap:14px;margin-top:16px;display:flex}.pill{background:#0512202e;border:1.5px solid #ffffff8c;border-radius:999px;flex:1;height:52px;font-size:17px;font-weight:700;box-shadow:inset 0 1px #ffffff24}.pill[aria-pressed=true]{background:#ffffff29;border-color:#fff}.pill:active{transform:scale(.98)}.new-puzzle{color:#ffffffe0;letter-spacing:.01em;border:1px solid #ffffff47;border-radius:999px;width:100%;height:44px;margin-top:12px;font-size:15px;font-weight:700}.screen[data-status=won] .new-puzzle{color:#0c3550;background:#fff;border-color:#fff}.new-puzzle:active{transform:scale(.985)}@keyframes pop{0%{transform:scale(.9)}to{transform:scale(1)}}@media (height<=760px){.hero{margin-top:12px}.target{font-size:76px}.icon-btn{border-radius:16px;width:52px;height:52px}.op-btn{width:54px;height:54px;font-size:26px}.board{width:min(100%,280px,38dvh)}.pill{height:46px}}@media (prefers-reduced-motion:reduce){.tile,.op-ring.is-in,.preview-op.is-in{animation:none}.tile.is-settling{transition:none!important}.tile:active,.op-btn:active,.pill:active,.icon-btn:active,.new-puzzle:active,.start:active,.step:active{transform:none}}@media (width>=800px){.target{font-size:104px}}button.icon-btn{cursor:pointer}.menu-tiles{justify-content:center;gap:12px;margin-top:28px;display:flex}.swatch{background-image:linear-gradient(180deg, #ffffff73 0%, #ffffff14 20%, #fff0 42%), linear-gradient(180deg, var(--top) 0%, var(--face) 48%, var(--bottom) 100%);border-radius:18px;width:62px;height:62px;box-shadow:inset 0 2px #ffffff9e,inset 0 -8px 12px #0000001a,0 10px 16px #03102057}.menu-lead{text-align:center;letter-spacing:-.03em;margin:22px 0 0;font-size:26px;font-weight:800}.menu-copy{text-align:center;color:var(--muted);margin:8px 0 0;font-size:15px;font-weight:600;line-height:1.4}.setting{margin-top:22px}.setting-row,.setting label{justify-content:space-between;align-items:baseline;gap:12px;font-size:15px;font-weight:700;display:flex}.setting-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800}.stepper{align-items:center;gap:12px;margin-top:10px;display:flex}.step{border:1.5px solid var(--line);background:var(--glass);border-radius:50%;flex:none;width:48px;height:48px;font-size:26px;font-weight:700;box-shadow:inset 0 1px #ffffff29}.step:disabled{opacity:.35;cursor:default}.stepper input[type=range]{accent-color:#7ad7c4;flex:1;width:100%}.custom-input{border:1.5px solid var(--line);background:var(--glass);color:#fff;width:100%;height:52px;font:inherit;text-align:center;-webkit-user-select:text;user-select:text;border-radius:16px;margin-top:10px;font-size:20px;font-weight:800;display:block}.custom-input::placeholder{color:#fff6;font-weight:700}.combo{text-align:center;min-height:2.6em;color:var(--muted);margin:8px 0 0;font-size:14px;font-weight:700;line-height:1.35}.start{color:#0c3550;background:#fff;border-radius:999px;width:100%;height:54px;margin-top:auto;font-size:18px;font-weight:800}.start:disabled{opacity:.38;cursor:default}.menu .start{margin-top:auto}.start:active:not(:disabled){transform:scale(.985)}.pause-layer{z-index:5;padding:18px 18px max(18px, env(safe-area-inset-bottom));background:#04101cb8;align-items:flex-end;display:flex;position:absolute;inset:0}.pause-card{text-align:center;background:#0e4464;border:1.5px solid #ffffff61;border-radius:28px;width:100%;padding:22px 16px 16px;box-shadow:0 18px 40px #00000059}.pause-card .kicker{margin-bottom:16px}.pause-card .start{margin-top:0}.menu-back{background:#0a3048;border-color:#ffffff8c;width:100%;margin-top:12px}.hint{color:var(--muted);margin:8px 0 0;font-size:13px;font-weight:700}
