:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f5f9;--surface:#fff;--surface-2:#f8fafc;--text:#0f172a;--text-muted:#64748b;--accent:#4f46e5;--accent-contrast:#fff;--accent-soft:#e0e7ff;--same:#c7d2fe;--peer:#eef2ff;--error:#dc2626;--error-soft:#fee2e2;--conflict-underlay:#fef3c7;--success:#16a34a;--given:var(--text);--entered:var(--accent);--note:#64748b;--grid-line:#cbd5e1;--grid-line-strong:#64748b;--shadow:0 8px 24px #0f172a14;--shadow-sm:0 2px 8px #0f172a0f;--radius:16px;--radius-sm:10px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--surface:#16203a;--surface-2:#1e2a4a;--text:#e2e8f0;--text-muted:#94a3b8;--accent:#818cf8;--accent-contrast:#0b1220;--accent-soft:#31386e;--same:#3b4285;--peer:#222f58;--error:#f87171;--error-soft:#4c1d24;--conflict-underlay:#3d3320;--success:#4ade80;--given:var(--text);--entered:var(--accent);--note:#94a3b8;--grid-line:#334155;--grid-line-strong:#7c8aa5;--shadow:0 8px 24px #0006;--shadow-sm:0 2px 8px #0000004d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:100dvh;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#app{flex-direction:column;min-height:100dvh;display:flex}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none}button:disabled{cursor:default}h1,h2,h3{font-weight:700;line-height:1.2}.tabular{font-variant-numeric:tabular-nums}.play-layout{width:100%;max-width:34rem;height:100dvh;max-height:100dvh;padding:max(6px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right));flex:1;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(6px,1.4vh,10px);margin:0 auto;display:grid;overflow:hidden}.play-layout .board-area{place-items:center;min-height:0;display:grid;container-type:size}.play-layout .board-wrap{width:min(100cqw,100cqh,30rem);position:relative}.play-layout .controls{flex-direction:column;justify-content:center;gap:clamp(6px,1.4vh,10px);display:flex}@media (orientation:landscape) and (height<=32rem){.play-layout{grid-template:"header header""board controls"minmax(0,1fr)/minmax(0,1fr) minmax(0,1fr);column-gap:14px;max-width:none}.play-layout>header{grid-area:header}.play-layout .board-area{grid-area:board}.play-layout .controls{grid-area:controls}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.control-bar[data-v-0ed266c8]{justify-content:space-between;gap:4px;width:100%;display:flex}.control[data-v-0ed266c8]{border-radius:var(--radius-sm);min-height:clamp(44px,7vh,60px);color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:3px;padding:clamp(4px,1vh,8px) 2px;font-size:.68rem;transition:background-color .12s,color .12s,transform 80ms;display:flex}.control[data-v-0ed266c8]:active:not(:disabled){transform:scale(.94)}.control[data-v-0ed266c8]:disabled{opacity:.35}.control.active[data-v-0ed266c8]{background:var(--accent-soft);color:var(--accent)}.game-header[data-v-dac224de]{justify-content:space-between;align-items:center;gap:8px;width:100%;padding:4px 0;display:flex}.icon-btn[data-v-dac224de]{width:44px;height:44px;color:var(--text-muted);border-radius:50%;place-items:center;transition:background-color .12s;display:grid}.icon-btn[data-v-dac224de]:active{background:var(--accent-soft)}.info[data-v-dac224de]{flex-direction:column;align-items:center;gap:2px;display:flex}.difficulty[data-v-dac224de]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.75rem;font-weight:600}.score-wrap[data-v-dac224de]{position:relative}.score[data-v-dac224de]{font-size:1.05rem;font-weight:700}.chip[data-v-dac224de]{color:var(--success);white-space:nowrap;pointer-events:none;margin-left:8px;font-weight:700;animation:1.1s ease-out forwards rise-dac224de;position:absolute;top:0;left:100%}@keyframes rise-dac224de{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-22px)}}.right[data-v-dac224de]{align-items:center;gap:4px;display:flex}.timer[data-v-dac224de]{color:var(--text-muted);text-align:right;min-width:3.2em;font-size:.95rem;font-weight:600}.number-pad[data-v-8e8da98a]{gap:6px;width:100%;display:flex}.digit[data-v-8e8da98a]{border-radius:var(--radius-sm);background:var(--surface);min-height:clamp(44px,8.5vh,72px);box-shadow:var(--shadow-sm);color:var(--accent);flex:1;font-size:clamp(1.2rem,4vh,1.7rem);font-weight:600;transition:background-color .12s,color .12s,opacity .12s,transform 80ms}.digit[data-v-8e8da98a]:active{transform:scale(.94)}.digit.active[data-v-8e8da98a]{background:var(--accent);color:var(--accent-contrast)}.digit.depleted[data-v-8e8da98a]{opacity:.35;color:var(--text-muted)}@media (orientation:landscape) and (height<=32rem){.number-pad[data-v-8e8da98a]{grid-template-columns:repeat(3,1fr);display:grid}}.pause-overlay[data-v-8bb76b7c]{background:var(--surface);border-radius:var(--radius);border:2px solid var(--grid-line-strong);box-shadow:var(--shadow);z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.title[data-v-8bb76b7c]{color:var(--text-muted);font-size:1.2rem;font-weight:700}.time[data-v-8bb76b7c]{font-size:2rem;font-weight:700}.resume[data-v-8bb76b7c]{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:10px;padding:14px 28px;font-size:1.1rem;font-weight:600;transition:transform 80ms;display:flex}.resume[data-v-8bb76b7c]:active{transform:scale(.96)}.board[data-v-97b3ea7f]{aspect-ratio:1;background:var(--surface);border:2px solid var(--grid-line-strong);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;grid-template-rows:repeat(9,1fr);grid-template-columns:repeat(9,1fr);display:grid;position:relative;overflow:hidden}.board .cell-slot[data-v-97b3ea7f-s]{min-width:0;min-height:0;display:grid}.grid-lines[data-v-97b3ea7f]{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.grid-lines .thin line[data-v-97b3ea7f]{stroke:var(--grid-line);stroke-width:1px}.grid-lines .strong line[data-v-97b3ea7f]{stroke:var(--grid-line-strong);stroke-width:2px}.cell[data-v-f8d425ea]{background:var(--surface);-webkit-user-select:none;user-select:none;place-items:center;transition:background-color .12s,color .12s;display:grid;position:relative;container-type:inline-size}.cell.peer[data-v-f8d425ea]{background:var(--peer)}.cell.same-digit[data-v-f8d425ea]{background:var(--same)}.cell.conflict[data-v-f8d425ea]{background:var(--conflict-underlay)}.cell.selected[data-v-f8d425ea]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent);z-index:1}.cell.mistake[data-v-f8d425ea]{background:var(--error-soft)}.value[data-v-f8d425ea]{color:var(--entered);font-size:58cqi;line-height:1}.value.given[data-v-f8d425ea]{color:var(--given);font-weight:600}.cell.mistake .value[data-v-f8d425ea]{color:var(--error)}.value.entered[data-v-f8d425ea]{animation:.18s cubic-bezier(.34,1.56,.64,1) pop-f8d425ea}@keyframes pop-f8d425ea{0%{transform:scale(1.3)}to{transform:scale(1)}}.cell.flash[data-v-f8d425ea]:after{content:"";background:var(--accent);opacity:0;animation:.48s ease-out flash-f8d425ea;animation-delay:var(--flash-delay,0s);pointer-events:none;position:absolute;inset:0}@keyframes flash-f8d425ea{0%{opacity:0}30%{opacity:.45}to{opacity:0}}.notes[data-v-f8d425ea]{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:100%;height:100%;padding:4cqi;display:grid}.note[data-v-f8d425ea]{color:var(--note);place-items:center;font-size:24cqi;line-height:1;display:grid}.note.hl[data-v-f8d425ea]{color:var(--accent);font-weight:700}.app-dialog[data-v-c44e426b]{border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow);border:none;width:min(90vw,22rem);max-height:90dvh;margin:auto;padding:24px;overflow-y:auto}.app-dialog[data-v-c44e426b]::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073}.win[data-v-dec4be6e]{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.trophy[data-v-dec4be6e]{background:var(--accent-soft);width:72px;height:72px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.record[data-v-dec4be6e]{color:var(--success);font-weight:700}.solved-in[data-v-dec4be6e]{margin:2px 0;font-size:1.3rem;font-weight:700}.origin[data-v-dec4be6e]{color:var(--text-muted);margin-bottom:6px;font-size:.8rem}.compare[data-v-dec4be6e]{border-collapse:collapse;width:100%;margin:6px 0 10px}.compare th[data-v-dec4be6e],.compare td[data-v-dec4be6e]{text-align:right;padding:6px 4px}.compare thead th[data-v-dec4be6e]{color:var(--text-muted);font-size:.75rem;font-weight:600}.compare tbody th[data-v-dec4be6e]{text-align:left;color:var(--text-muted);font-size:.8rem;font-weight:600}.compare tr.current td[data-v-dec4be6e]{font-size:1.3rem;font-weight:700}.compare tr.best[data-v-dec4be6e]{border-top:1px solid var(--grid-line)}.compare tr.best td[data-v-dec4be6e]{color:var(--text-muted);font-size:1rem;font-weight:600}.compare tr.best td.is-record[data-v-dec4be6e]{color:var(--success)}.compare s[data-v-dec4be6e]{color:var(--text-muted);font-size:.72rem;font-weight:500;display:block}.primary[data-v-dec4be6e]{background:var(--accent);width:100%;color:var(--accent-contrast);border-radius:999px;padding:13px;font-size:1rem;font-weight:600}.secondary[data-v-dec4be6e]{width:100%;color:var(--text-muted);border-radius:999px;padding:11px;font-weight:600}.board-wrap.hidden[data-v-c0dd8d54]>:first-child{visibility:hidden}.home[data-v-c30a30d5]{width:100%;max-width:34rem;padding:max(16px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-left)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-right));flex-direction:column;flex:1;gap:24px;margin:0 auto;display:flex}.top[data-v-c30a30d5]{justify-content:space-between;align-items:center;display:flex}h1[data-v-c30a30d5]{letter-spacing:-.02em;font-size:1.9rem}.nav[data-v-c30a30d5]{gap:4px;display:flex}.icon-btn[data-v-c30a30d5]{width:44px;height:44px;color:var(--text-muted);border-radius:50%;place-items:center;transition:background-color .12s;display:grid}.icon-btn[data-v-c30a30d5]:active{background:var(--accent-soft)}.content[data-v-c30a30d5]{flex-direction:column;flex:1;justify-content:center;gap:24px;display:flex}.resume-card[data-v-c30a30d5]{border-radius:var(--radius);background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow);text-align:left;justify-content:space-between;align-items:center;padding:18px 20px;transition:transform 80ms;display:flex}.resume-card[data-v-c30a30d5]:active{transform:scale(.98)}.resume-info[data-v-c30a30d5]{flex-direction:column;gap:4px;display:flex}.resume-label[data-v-c30a30d5]{font-size:1.15rem;font-weight:700}.resume-meta[data-v-c30a30d5]{opacity:.85;font-size:.85rem}.new-game[data-v-c30a30d5],.own-puzzle[data-v-c30a30d5]{flex-direction:column;gap:10px;display:flex}.own-puzzle .difficulty-btn[data-v-c30a30d5]{color:var(--accent)}.confirm[data-v-c30a30d5]{text-align:center;flex-direction:column;gap:10px;display:flex}.confirm p[data-v-c30a30d5]{color:var(--text-muted);margin-bottom:6px;font-size:.9rem}.confirm-primary[data-v-c30a30d5]{background:var(--accent);width:100%;color:var(--accent-contrast);border-radius:999px;padding:13px;font-weight:600}.confirm-secondary[data-v-c30a30d5]{width:100%;color:var(--text-muted);border-radius:999px;padding:11px;font-weight:600}h2[data-v-c30a30d5]{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:2px;font-size:.85rem;font-weight:600}.difficulty-btn[data-v-c30a30d5]{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:16px 20px;font-size:1.05rem;font-weight:600;transition:transform 80ms;display:flex}.difficulty-btn[data-v-c30a30d5]:active:not(:disabled){transform:scale(.98)}.difficulty-btn[data-v-c30a30d5]:disabled{opacity:.6}.generating[data-v-c30a30d5]{color:var(--text-muted);font-size:.8rem;font-weight:400}
