.board-container.svelte-jpc25w{position:relative;width:fit-content;max-width:100%;margin-inline:auto;border-radius:var(--board-radius);border:var(--board-border);box-shadow:var(--board-shadow);background:var(--bg-board);padding:3px;transition:background .3s;touch-action:manipulation}.board-container.zoom-active.svelte-jpc25w{overflow:hidden}.board.svelte-jpc25w{display:grid;gap:var(--cell-gap);border-radius:calc(var(--board-radius, 16px) - 3px);overflow:hidden;transition:transform .3s ease;position:relative}.zones-overlay.svelte-jpc25w{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}.reserved-overlay.svelte-jpc25w{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}.focus-arrow.svelte-jpc25w{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible}.cell.dimmed.svelte-jpc25w{opacity:.22;filter:saturate(.45);transition:opacity .25s ease,filter .25s ease}.focus-arrow.svelte-jpc25w path:where(.svelte-jpc25w){animation:svelte-jpc25w-focus-nudge 1.6s ease-in-out infinite}@keyframes svelte-jpc25w-focus-nudge{0%,to{transform:translate(0)}50%{transform:translate(var(--focus-nudge-x, 0),var(--focus-nudge-y, 3px))}}@media(prefers-reduced-motion:reduce){.focus-arrow.svelte-jpc25w path:where(.svelte-jpc25w){animation:none}}[data-minimal=true] .focus-arrow.svelte-jpc25w path:where(.svelte-jpc25w){animation:none}.zone-chalk.svelte-jpc25w{--zone-glow: transparent;filter:drop-shadow(0 0 var(--zone-bloom-near, 3px) color-mix(in srgb,var(--zone-glow) var(--zone-bloom-alpha, 55%),transparent)) drop-shadow(0 0 var(--zone-bloom-far, 9px) color-mix(in srgb,var(--zone-glow) var(--zone-bloom-alpha, 55%),transparent))}.board.zoomed.svelte-jpc25w{transform:scale(var(--zoom-scale, 2))}.cell.svelte-jpc25w{width:var(--cell-size, 20px);height:var(--cell-size, 20px);border:none;border-radius:var(--cell-radius);cursor:default;position:relative;display:flex;align-items:center;justify-content:center;font-size:0;font-weight:700;color:transparent;transition:transform .1s,filter .1s;padding:0;background-color:var(--bg-cell-empty)}.cell.clickable.svelte-jpc25w{cursor:pointer}.cell.svelte-jpc25w:focus-visible{outline:3px solid var(--focus);outline-offset:-2px;z-index:4}.cell.clickable.svelte-jpc25w:hover{box-shadow:inset 0 0 0 100px var(--cell-hover-overlay, rgba(0,0,0,.1));transform:scale(1.1);z-index:2}.cell.empty.svelte-jpc25w{background:var(--bg-cell-empty)}.cell.p1-owned.svelte-jpc25w{background:var(--p1-owned);color:var(--p1-owned-text);box-shadow:var(--anim-glow-p1)}.cell.p2-owned.svelte-jpc25w{background:var(--p2-owned);color:var(--p2-owned-text);box-shadow:var(--anim-glow-p2)}.cell.p3-owned.svelte-jpc25w{background:var(--p3-owned);color:var(--p3-owned-text);box-shadow:var(--anim-glow-p3)}.cell.p4-owned.svelte-jpc25w{background:var(--p4-owned);color:var(--p4-owned-text);box-shadow:var(--anim-glow-p4)}.cell.p1-owned.shimmer.svelte-jpc25w{animation:var(--cell-anim-p1, none)}.cell.p2-owned.shimmer.svelte-jpc25w{animation:var(--cell-anim-p2, none)}.cell.p3-owned.shimmer.svelte-jpc25w{animation:var(--cell-anim-p3, none)}.cell.p4-owned.shimmer.svelte-jpc25w{animation:var(--cell-anim-p4, none)}.board-container.game-over.svelte-jpc25w:not([data-winner]) .board:where(.svelte-jpc25w){filter:grayscale(.55) brightness(.72);transition:filter .45s ease}.board-container.game-over[data-winner].svelte-jpc25w .cell:where(.svelte-jpc25w){filter:var(--endgame-ash, grayscale(.85) brightness(.58));transition:filter 2s ease}.board-container.game-over[data-winner].svelte-jpc25w .cell.shimmer:where(.svelte-jpc25w){animation:none}.board-container.game-over[data-winner=p1].svelte-jpc25w .cell.p1-owned:where(.svelte-jpc25w),.board-container.game-over[data-winner=p2].svelte-jpc25w .cell.p2-owned:where(.svelte-jpc25w),.board-container.game-over[data-winner=p3].svelte-jpc25w .cell.p3-owned:where(.svelte-jpc25w),.board-container.game-over[data-winner=p4].svelte-jpc25w .cell.p4-owned:where(.svelte-jpc25w){filter:var(--endgame-held, brightness(.95))}.board-container.game-over[data-winner=p1].svelte-jpc25w .cell.p1-owned.shimmer:where(.svelte-jpc25w){animation:var(--cell-anim-p1, none)}.board-container.game-over[data-winner=p2].svelte-jpc25w .cell.p2-owned.shimmer:where(.svelte-jpc25w){animation:var(--cell-anim-p2, none)}.board-container.game-over[data-winner=p3].svelte-jpc25w .cell.p3-owned.shimmer:where(.svelte-jpc25w){animation:var(--cell-anim-p3, none)}.board-container.game-over[data-winner=p4].svelte-jpc25w .cell.p4-owned.shimmer:where(.svelte-jpc25w){animation:var(--cell-anim-p4, none)}@media(prefers-reduced-motion:reduce){.board-container.game-over.svelte-jpc25w:not([data-winner]) .board:where(.svelte-jpc25w),.board-container.game-over[data-winner].svelte-jpc25w .cell:where(.svelte-jpc25w){transition:none}}.cell.p1-pr3.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr3),var(--p1-pr3));border:2px dashed var(--p1-owned)}.cell.p1-pr2.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr2),var(--p1-pr2));border:1.5px dashed var(--p1-owned)}.cell.p1-pr1.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr1),var(--p1-pr1));border:1px dashed var(--p1-owned)}.cell.p2-pr3.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr3),var(--p2-pr3));border:2px dashed var(--p2-owned)}.cell.p2-pr2.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr2),var(--p2-pr2));border:1.5px dashed var(--p2-owned)}.cell.p2-pr1.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr1),var(--p2-pr1));border:1px dashed var(--p2-owned)}.cell.p3-pr3.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr3),var(--p3-pr3));border:2px dashed var(--p3-owned)}.cell.p3-pr2.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr2),var(--p3-pr2));border:1.5px dashed var(--p3-owned)}.cell.p3-pr1.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr1),var(--p3-pr1));border:1px dashed var(--p3-owned)}.cell.p4-pr3.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr3),var(--p4-pr3));border:2px dashed var(--p4-owned)}.cell.p4-pr2.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr2),var(--p4-pr2));border:1.5px dashed var(--p4-owned)}.cell.p4-pr1.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr1),var(--p4-pr1));border:1px dashed var(--p4-owned)}.cell.numa-pr3.svelte-jpc25w{background-image:linear-gradient(var(--numa-pr3),var(--numa-pr3));border:2px dashed var(--numa-border)}.cell.numa-pr2.svelte-jpc25w{background-image:linear-gradient(var(--numa-pr2),var(--numa-pr2));border:1.5px dashed var(--numa-border)}.cell.numa-pr1.svelte-jpc25w{background-image:linear-gradient(var(--numa-pr1),var(--numa-pr1));border:1px dashed var(--numa-border)}.cell.numa.svelte-jpc25w{background:var(--numa-bg);border:1px solid var(--numa-border);color:var(--numa-text)}.cell.wall.svelte-jpc25w{background-color:transparent;border:none}.cell.wall.svelte-jpc25w:before{content:"";position:absolute;inset:0;border-radius:0;background:var(--wall-bg);box-shadow:inset 0 var(--rim-t, var(--slab-rim, 1.5px)) 0 0 var(--wall-border),inset 0 calc(-1 * var(--rim-b, var(--slab-rim, 1.5px))) 0 0 var(--wall-border),inset var(--rim-l, var(--slab-rim, 1.5px)) 0 0 0 var(--wall-border),inset calc(-1 * var(--rim-r, var(--slab-rim, 1.5px))) 0 0 0 var(--wall-border);pointer-events:none}.cell.wall.join-t.svelte-jpc25w:before{top:calc(-1 * var(--cell-gap));--rim-t: 0px}.cell.wall.join-b.svelte-jpc25w:before{bottom:calc(-1 * var(--cell-gap));--rim-b: 0px}.cell.wall.join-l.svelte-jpc25w:before{left:calc(-1 * var(--cell-gap));--rim-l: 0px}.cell.wall.join-r.svelte-jpc25w:before{right:calc(-1 * var(--cell-gap));--rim-r: 0px}.cell.placed.svelte-jpc25w:before{content:"";position:absolute;top:50%;left:50%;width:34%;height:34%;transform:translate(-50%,-50%);border-radius:50%;background:currentColor;opacity:.9;pointer-events:none;z-index:3}[data-a11y-dormant=true] .cell.dormant.svelte-jpc25w{filter:saturate(.78) brightness(.94)}[data-a11y-dormant=true] .cell.dormant.svelte-jpc25w:after{content:"";position:absolute;top:50%;left:50%;width:46%;height:46%;transform:translate(-50%,-50%);border-radius:50%;box-shadow:inset calc(var(--cell-size, 20px) * -.13) calc(var(--cell-size, 20px) * .08) 0 0 currentColor;opacity:.85;pointer-events:none;z-index:3}.cell.last-move.svelte-jpc25w{outline:2.5px solid var(--last-move-ring);outline-offset:1px;filter:brightness(var(--last-move-brightness, 1.3));z-index:2}.cell.last-move.svelte-jpc25w:after{content:"";position:absolute;inset:-3px;border:2.5px solid var(--last-move-ring);border-radius:calc(var(--cell-radius) + 2px);animation:pulse-ring 2s ease-out infinite}.cell.outline-pending.svelte-jpc25w{z-index:2;outline:3px solid var(--accent, #d4c84a);outline-offset:-1px;animation:svelte-jpc25w-stamp .45s cubic-bezier(.33,1,.68,1),svelte-jpc25w-pulse 2.4s ease-in-out .45s infinite}.cell.outline-pending.p1-pending.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr3),var(--p1-pr3))}.cell.outline-pending.p2-pending.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr3),var(--p2-pr3))}.cell.outline-pending.p3-pending.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr3),var(--p3-pr3))}.cell.outline-pending.p4-pending.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr3),var(--p4-pr3))}@media(prefers-reduced-motion:reduce){.cell.outline-pending.svelte-jpc25w{animation:none}}.cell.hint-target.svelte-jpc25w{z-index:4;outline:3px solid var(--hint-ring, #FFF6E8);outline-offset:1px;box-shadow:0 0 0 6px var(--hint-halo, rgba(16, 6, 13, .65));animation:svelte-jpc25w-hint-pulse 1.3s ease-in-out infinite}@keyframes svelte-jpc25w-hint-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}@media(prefers-reduced-motion:reduce){.cell.hint-target.svelte-jpc25w{animation:none}}.cell.focus-spot.svelte-jpc25w{z-index:4;outline:3px dashed var(--hint-ring, #FFF6E8);outline-offset:1px;box-shadow:0 0 0 6px var(--hint-halo, rgba(16, 6, 13, .65))}.cell.preview.svelte-jpc25w{z-index:2}.cell.preview.svelte-jpc25w:after{content:"";position:absolute;inset:1px;border:3px solid var(--accent, #d4c84a);border-radius:calc(var(--cell-radius) - 1px);pointer-events:none;animation:svelte-jpc25w-pulse-preview 1.2s ease-in-out infinite}.cell.preview.p1-preview.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr3),var(--p1-pr3))}.cell.preview.p2-preview.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr3),var(--p2-pr3))}.cell.preview.p3-preview.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr3),var(--p3-pr3))}.cell.preview.p4-preview.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr3),var(--p4-pr3))}.cell.puzzle-selected.svelte-jpc25w{z-index:3;outline:3px solid var(--focus);outline-offset:-3px}.cell.puzzle-selected.p1-selected.svelte-jpc25w{background-image:linear-gradient(var(--p1-pr3),var(--p1-pr3))}.cell.puzzle-selected.p2-selected.svelte-jpc25w{background-image:linear-gradient(var(--p2-pr3),var(--p2-pr3))}.cell.puzzle-selected.p3-selected.svelte-jpc25w{background-image:linear-gradient(var(--p3-pr3),var(--p3-pr3))}.cell.puzzle-selected.p4-selected.svelte-jpc25w{background-image:linear-gradient(var(--p4-pr3),var(--p4-pr3))}.cell.pressure-numbers.p1-pr3.svelte-jpc25w,.cell.pressure-numbers.p1-pr2.svelte-jpc25w,.cell.pressure-numbers.p1-pr1.svelte-jpc25w,.cell.pressure-numbers.p2-pr3.svelte-jpc25w,.cell.pressure-numbers.p2-pr2.svelte-jpc25w,.cell.pressure-numbers.p2-pr1.svelte-jpc25w,.cell.pressure-numbers.p3-pr3.svelte-jpc25w,.cell.pressure-numbers.p3-pr2.svelte-jpc25w,.cell.pressure-numbers.p3-pr1.svelte-jpc25w,.cell.pressure-numbers.p4-pr3.svelte-jpc25w,.cell.pressure-numbers.p4-pr2.svelte-jpc25w,.cell.pressure-numbers.p4-pr1.svelte-jpc25w,.cell.pressure-numbers.numa-pr3.svelte-jpc25w,.cell.pressure-numbers.numa-pr2.svelte-jpc25w,.cell.pressure-numbers.numa-pr1.svelte-jpc25w{font-size:min(.7rem,calc(var(--cell-size, 20px) * .62));color:var(--text-primary)}@keyframes svelte-jpc25w-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes svelte-jpc25w-stamp{0%{transform:scale(.82)}55%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes svelte-jpc25w-pulse-preview{0%,to{opacity:1}50%{opacity:0}}@media(max-width:520px){.board.svelte-jpc25w{gap:1px}.board-container.svelte-jpc25w{padding:2px}.cell.svelte-jpc25w{width:var(--cell-size, 18px);height:var(--cell-size, 18px)}}.vh-probe.svelte-jpc25w{position:fixed;top:0;left:0;width:0;height:100vh;height:calc(100svh - var(--safe-bottom, 0px));visibility:hidden;pointer-events:none}.status-overlay.svelte-jpc25w{position:absolute;top:8px;left:0;right:0;margin-inline:auto;z-index:5;width:max-content;max-width:calc(100% - 16px);pointer-events:none;transition:opacity .15s ease}.status-overlay.suppressed.svelte-jpc25w{opacity:0}.board-hint.svelte-jpc25w{position:absolute;bottom:8px;left:0;right:0;margin-inline:auto;width:fit-content;z-index:5;max-width:calc(100% - 16px);padding:.4rem 1rem;border-radius:100px;color:var(--ink, var(--text-primary));background:var(--slate-bg, var(--bg-surface));border:1px solid var(--slate-line, var(--border));box-shadow:var(--slate-shadow, none);-webkit-backdrop-filter:var(--slate-blur, blur(6px));backdrop-filter:var(--slate-blur, blur(6px));text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem;font-weight:600;pointer-events:none;animation:svelte-jpc25w-fade-in .2s ease;transition:opacity .15s ease}.board-hint.suppressed.svelte-jpc25w{animation:none;opacity:0}.confirm-bar.svelte-jpc25w{position:absolute;bottom:8px;left:0;right:0;margin-inline:auto;width:fit-content;z-index:5;display:flex;justify-content:center;gap:1rem;animation:svelte-jpc25w-fade-in .2s ease}.confirm-bar.svelte-jpc25w button:where(.svelte-jpc25w){padding:.6rem 1.2rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;min-height:44px;font-family:var(--font-body);transition:background .15s,border-color .15s}.confirm-cancel.svelte-jpc25w{background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border)}.confirm-cancel.svelte-jpc25w:hover{border-color:var(--border-strong)}.confirm-move.svelte-jpc25w{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none}.confirm-move.svelte-jpc25w:hover{filter:brightness(1.1)}.zoom-locator.svelte-jpc25w{position:absolute;bottom:8px;left:8px;z-index:5;width:72px;padding:4px;border-radius:8px;background:var(--bg-board);border:1px solid var(--border-strong, var(--border));box-shadow:var(--slate-shadow, none);pointer-events:none;animation:svelte-jpc25w-fade-in .2s ease}.locator-board.svelte-jpc25w{position:relative;display:block}.locator-view.svelte-jpc25w{position:absolute;border:1.5px solid var(--pin-gold, var(--goldring));border-radius:3px;background:color-mix(in srgb,var(--pin-gold, var(--goldring)) 16%,transparent);box-shadow:0 0 0 1px var(--zone-casing),inset 0 0 0 1px var(--zone-casing);pointer-events:none}.zoom-out-btn.svelte-jpc25w{position:absolute;bottom:8px;left:0;right:0;margin-inline:auto;width:fit-content;z-index:5;display:block;padding:.6rem 1.2rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;min-height:44px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);font-family:var(--font-body);animation:svelte-jpc25w-fade-in .2s ease;transition:border-color .15s}.zoom-out-btn.svelte-jpc25w:hover{border-color:var(--border-strong)}.board-hint.at-top.svelte-jpc25w,.confirm-bar.at-top.svelte-jpc25w,.zoom-out-btn.at-top.svelte-jpc25w,.zoom-locator.at-top.svelte-jpc25w{top:8px;bottom:auto}@keyframes svelte-jpc25w-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}[data-a11y-pressure-trend=true] .cell.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.losing.svelte-jpc25w:before{content:"";position:absolute;width:40%;height:2px;left:30%;border-radius:1px;pointer-events:none;z-index:5;opacity:.55}[data-a11y-pressure-trend=true] .cell.gaining.svelte-jpc25w:before{top:2px}[data-a11y-pressure-trend=true] .cell.losing.svelte-jpc25w:before{bottom:2px}[data-a11y-pressure-trend=true] .cell.p1-pr1.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p1-pr2.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p1-pr3.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p1-pr1.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p1-pr2.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p1-pr3.losing.svelte-jpc25w:before{background:var(--p1-owned)}[data-a11y-pressure-trend=true] .cell.p2-pr1.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p2-pr2.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p2-pr3.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p2-pr1.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p2-pr2.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p2-pr3.losing.svelte-jpc25w:before{background:var(--p2-owned)}[data-a11y-pressure-trend=true] .cell.p3-pr1.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p3-pr2.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p3-pr3.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p3-pr1.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p3-pr2.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p3-pr3.losing.svelte-jpc25w:before{background:var(--p3-owned)}[data-a11y-pressure-trend=true] .cell.p4-pr1.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p4-pr2.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p4-pr3.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p4-pr1.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p4-pr2.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.p4-pr3.losing.svelte-jpc25w:before{background:var(--p4-owned)}[data-a11y-pressure-trend=true] .cell.numa-pr1.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.numa-pr2.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.numa-pr3.gaining.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.numa-pr1.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.numa-pr2.losing.svelte-jpc25w:before,[data-a11y-pressure-trend=true] .cell.numa-pr3.losing.svelte-jpc25w:before{background:var(--numa-border, var(--text-secondary))}
