@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./pixelify-sans-latin-500-normal-DC052d-m.woff2)format("woff2"),url(./pixelify-sans-latin-500-normal-Bq6pAlou.woff)format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pixelify-sans-latin-700-normal-D3Xxx3QE.woff2)format("woff2"),url(./pixelify-sans-latin-700-normal-BctWAS0u.woff)format("woff")}:root{--ink-950:#0b0716;--ink-900:#130d24;--ink-850:#1b1431;--ink-800:#251b42;--ink-700:#3a2d63;--ink-300:#b9add9;--ink-50:#f4f0ff;--pink-400:#ff4fd8;--pink-300:#ff86e5;--cyan-400:#3cf2ff;--green-400:#5dff9b;--amber-400:#ffcf4a;--red-400:#ff7a7a;--color-bg:var(--ink-950);--color-surface:var(--ink-900);--color-surface-hover:var(--ink-850);--color-surface-pressed:var(--ink-800);--color-border:var(--ink-700);--color-text:var(--ink-50);--color-text-muted:var(--ink-300);--color-accent:var(--pink-400);--color-accent-hover:var(--pink-300);--color-on-accent:var(--ink-950);--color-accent-2:var(--cyan-400);--color-focus:var(--cyan-400);--color-success:var(--green-400);--color-warning:var(--amber-400);--color-danger:var(--red-400);--color-dots:#7c5cff38;--font-display:"Pixelify Sans", ui-monospace, monospace;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-sm:14px;--fs-body:16px;--fs-lead:18px;--fs-h3:20px;--fs-h2:26px;--fs-h1:32px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius:10px;--radius-lg:16px;--page:1120px;--ease:cubic-bezier(.2, 0, 0, 1);--glow:0 0 0 1px #ff4fd880, 0 0 18px #ff4fd859}@media (width>=760px){:root{--fs-h1:44px}}*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);background-image:radial-gradient(circle at center, var(--color-dots) 1px, transparent 1.6px);min-height:100vh;color:var(--color-text);font:400 var(--fs-body) / 1.55 var(--font-body);-webkit-font-smoothing:antialiased;background-size:14px 14px;margin:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;margin:0;font-weight:700;line-height:1.15}h1{font-size:var(--fs-h1);text-shadow:0 0 22px #ff4fd873}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);font-weight:500}p{text-wrap:pretty;margin:0}a{color:var(--color-accent-2)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{inset-inline-start:var(--space-4);z-index:50;padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius-sm);position:absolute;top:-60px}.skip:focus{top:var(--space-2)}.muted{color:var(--color-text-muted)}.small{font-size:var(--fs-sm)}.lead{font-size:var(--fs-lead);color:var(--color-text-muted);max-width:60ch}.shell{flex-direction:column;min-height:100vh;display:flex}main{outline:none;flex:1}.top{z-index:10;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) max(var(--space-4), env(safe-area-inset-right)) var(--space-2) max(var(--space-4), env(safe-area-inset-left));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);background:#0b0716eb;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand connect""nav nav";display:grid;position:sticky;top:0}.brand{align-items:center;gap:var(--space-2);min-height:44px;color:var(--color-text);font:700 var(--fs-lead) / 1.2 var(--font-display);grid-area:brand;text-decoration:none;display:inline-flex}.logo-mark{color:var(--color-accent);flex:none}.top-connect{grid-area:connect}.nav{gap:var(--space-1);grid-area:nav;display:flex}.nav a{min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--fs-sm);white-space:nowrap;transition:background-color .15s var(--ease), color .15s var(--ease);flex:1;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.nav a:hover{background:var(--color-surface-hover);color:var(--color-text)}.nav a[aria-current=page]{color:var(--color-text);background:var(--color-surface-pressed);box-shadow:inset 0 -2px 0 var(--color-accent)}@media (width>=760px){.top{padding-block:var(--space-3);grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav connect"}.nav{justify-content:center}.nav a{font-size:var(--fs-body);flex:none}}.foot{padding:var(--space-6) var(--space-4);color:var(--color-text-muted);font-size:var(--fs-sm);text-align:center}.page{width:100%;max-width:var(--page);padding:var(--space-5) var(--space-4) var(--space-7);gap:var(--space-7);flex-direction:column;margin:0 auto;display:flex}.page>h1+.lead{margin-top:calc(var(--space-2) - var(--space-7))}.block{gap:var(--space-3);flex-direction:column;display:flex}.block>h2+p{margin-top:calc(-1 * var(--space-2))}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--radius);font:500 var(--fs-body) / 1.2 var(--font-display);cursor:pointer;touch-action:manipulation;transition:background-color .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease), transform .1s var(--ease);border:0;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--glow)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-ghost{background:var(--color-surface);color:var(--color-text);outline:1px solid var(--color-border);outline-offset:-1px}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover)}.btn-ghost:active:not(:disabled){background:var(--color-surface-pressed)}.btn-ghost:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.btn-wide{width:100%}@media (width>=760px){.btn-wide{align-self:flex-start;width:auto}}.connect{padding:0 var(--space-4);font-size:var(--fs-sm)}.dot-on{background:var(--color-success);border-radius:50%;width:8px;height:8px}.hero{gap:var(--space-5);align-items:center;display:grid}.hero-copy{gap:var(--space-3);flex-direction:column;display:flex}.hero-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.hero-art{border-radius:var(--radius-lg);display:none}@media (width>=760px){.hero{padding-block:var(--space-6);grid-template-columns:1.4fr 1fr}.hero-art{justify-self:center;width:min(100%,300px);display:block}}.mini{grid-template-columns:repeat(var(--n), 1fr);gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius);background:var(--color-surface);aspect-ratio:1;display:grid}.mini span{border-radius:var(--radius-sm);font:700 var(--fs-h3) / 1 var(--font-display);place-items:center;display:grid}.mini-tile{background:var(--color-surface-pressed);color:var(--color-accent-2);outline:2px solid var(--color-accent-2);outline-offset:-2px}.mini-empty{background:0 0}.hero-art .mini{padding:var(--space-3);gap:var(--space-2);box-shadow:var(--glow)}.hero-art .mini span{font-size:var(--fs-h1)}.games{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}@media (width>=760px){.games{grid-template-columns:2fr 1fr}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.game-card{gap:var(--space-4);grid-template-columns:96px 1fr;align-items:start;display:grid}.game-card .mini{padding:var(--space-1);background:var(--color-bg);gap:2px}.game-card .mini span{font-size:var(--fs-sm)}.card-body{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.card-body .btn{margin-top:var(--space-2)}.soon{gap:var(--space-2);border-style:dashed;flex-direction:column;display:flex}.soon h3{color:var(--color-text-muted)}.rules{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}@media (width>=760px){.rules{grid-template-columns:repeat(3,1fr)}}.rules li{gap:var(--space-2);border-inline-start:2px solid var(--color-accent-2);flex-direction:column;padding-inline-start:var(--space-4);display:flex}.rules p{color:var(--color-text-muted)}.game-page{gap:var(--space-6)}.game-intro{gap:var(--space-3);flex-direction:column;display:flex}.levels{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.levels{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.levels{grid-template-columns:repeat(3,1fr)}}.level{align-items:center;gap:var(--space-3);width:100%;min-height:64px;padding:var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:start;cursor:pointer;transition:background-color .15s var(--ease), border-color .15s var(--ease);grid-template-columns:40px 1fr auto;display:grid}.level:hover:not(:disabled){background:var(--color-surface-hover)}.level[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-surface-pressed)}.level:disabled{cursor:not-allowed;color:var(--color-text-muted)}.level-num{border-radius:var(--radius-sm);background:var(--color-bg);width:40px;height:40px;font:700 var(--fs-h3) / 1 var(--font-display);color:var(--color-accent-2);place-items:center;display:grid}.level:disabled .level-num{color:var(--color-text-muted)}.level-body{flex-direction:column;min-width:0;display:flex}.level-name{font:500 var(--fs-body) / 1.3 var(--font-display)}.level-meta,.level-best{font-size:var(--fs-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.level[aria-pressed=true] .level-best{color:var(--color-text)}.how ul{gap:var(--space-2);max-width:70ch;color:var(--color-text-muted);flex-direction:column;margin:0;padding-inline-start:var(--space-5);display:flex}.play{align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.play-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;width:100%;max-width:520px;display:flex}.play-head h1{font-size:var(--fs-h2)}.play-actions{gap:var(--space-2);display:flex}.play-actions .btn{padding:0 var(--space-3);font-size:var(--fs-sm)}.hud,.stats{gap:var(--space-3);grid-template-columns:repeat(2,1fr);width:100%;max-width:520px;margin:0;display:grid}.stats{grid-template-columns:repeat(3,1fr)}.hud>div,.stats>div{padding:var(--space-3);border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border)}.hud dt,.stats dt{font-size:var(--fs-sm);color:var(--color-text-muted)}.hud dd,.stats dd{font:700 var(--fs-h2) / 1.2 var(--font-display);font-variant-numeric:tabular-nums;margin:0}.stats dd.big{color:var(--color-accent)}.of{font:400 var(--fs-sm) var(--font-body);color:var(--color-text-muted)}.hud .warn{border-color:var(--color-warning)}.hud .warn dd{color:var(--color-warning)}.board{--gap:6px;aspect-ratio:1;grid-template-columns:repeat(var(--n), 1fr);gap:var(--gap);width:min(100%,520px);padding:var(--gap);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--glow);touch-action:none;-webkit-user-select:none;user-select:none;display:grid}.cell{border-radius:var(--radius);min-width:0}.tile{border:2px solid var(--color-accent-2);background:var(--color-surface-pressed);color:var(--color-text);font:700 var(--fs-h2) / 1 var(--font-display);cursor:pointer;touch-action:none;transition:background-color .12s var(--ease), transform .1s var(--ease);place-items:center;display:grid}.board[style*="--n: 5"] .tile{font-size:var(--fs-h3)}.tile:hover{background:var(--color-border)}.tile:active{transform:scale(.96)}.tile.home{border-color:var(--color-success);color:var(--color-success)}.tile:not([data-movable]){cursor:default}.empty{background:repeating-linear-gradient(45deg,#0000 0 6px,#7c5cff1f 6px 8px)}.hint{font-size:var(--fs-sm);text-align:center}.results{gap:var(--space-4);flex-direction:column;max-width:640px;display:flex}.results h1{outline:none}.stats dd.big{font-size:var(--fs-h1)}.result-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.save{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);border:1px dashed var(--color-border);flex-direction:column;align-items:flex-start;display:flex}.save h2{font-size:var(--fs-h3)}.save form{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.save label{font-size:var(--fs-sm);color:var(--color-text-muted)}.save-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.save input{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:400 var(--fs-body) var(--font-body);flex:180px}.save input:focus-visible{border-color:var(--color-focus)}.ok{color:var(--color-success)}.err{color:var(--color-danger)}.board-head{gap:var(--space-3);flex-direction:column;display:flex}.claim{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.tabs{gap:var(--space-2);margin-top:calc(var(--space-4) - var(--space-7));flex-wrap:wrap;display:flex}.chip{min-height:40px;padding:0 var(--space-4);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font:500 var(--fs-sm) / 1 var(--font-display);cursor:pointer;transition:background-color .15s var(--ease), color .15s var(--ease);border-radius:999px}.chip:hover{background:var(--color-surface-hover);color:var(--color-text)}.chip[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.notice{margin-top:calc(var(--space-4) - var(--space-7));padding:var(--space-3) var(--space-4);border-radius:var(--radius);border-inline-start:3px solid var(--color-warning);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--fs-sm)}.table-wrap{margin-top:calc(var(--space-4) - var(--space-7));border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);overflow:hidden}.pad{padding:var(--space-5) var(--space-4);align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.scores{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.scores th,.scores td{padding:var(--space-3) var(--space-2);text-align:start;vertical-align:middle}.scores th:first-child,.scores td:first-child{padding-inline-start:var(--space-4)}.scores th:last-child,.scores td:last-child{padding-inline-end:var(--space-4)}.scores th{font-size:var(--fs-sm);color:var(--color-text-muted);border-bottom:1px solid var(--color-border);font-weight:400}.scores tbody tr+tr td{border-top:1px solid var(--color-surface-pressed)}.scores .num{text-align:end}.rank{font:700 var(--fs-body) var(--font-display);color:var(--color-accent-2);width:3.5em}.who{overflow-wrap:anywhere;display:block}.addr{font-size:var(--fs-sm);color:var(--color-text-muted);display:block}.you td{background:var(--color-surface-pressed)}.you-tag{margin-top:var(--space-1);padding:0 var(--space-2);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--fs-sm);border-radius:999px;display:inline-block}@media (width<=479px){.wide-only{display:none}}.sheet-bg{z-index:40;overscroll-behavior:contain;background:#05030cb8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.sheet-bg{align-items:center}}.sheet{gap:var(--space-2);width:100%;max-width:420px;max-height:90vh;padding:var(--space-4) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom));background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--glow);overscroll-behavior:contain;flex-direction:column;display:flex;overflow-y:auto}@media (width>=640px){.sheet{border-radius:var(--radius-lg)}}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.sheet-head h2{font-size:var(--fs-h3)}.sheet-note{font-size:var(--fs-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}.x{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text);font-size:var(--fs-h3);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.x:hover{background:var(--color-surface-hover)}.x:active{background:var(--color-surface-pressed)}.row{align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:0 var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:500 var(--fs-body) var(--font-display);text-align:start;cursor:pointer;transition:background-color .15s var(--ease), border-color .15s var(--ease);text-decoration:none;display:flex}.row:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-text-muted)}.row:active:not(:disabled){background:var(--color-surface-pressed)}.row:disabled{opacity:.6;cursor:progress}.ic{border-radius:var(--radius-sm);flex:none;width:28px;height:28px;overflow:hidden}.ic-blank{background:var(--color-border);width:28px;height:28px;display:block}.sheet-error{font-size:var(--fs-sm);color:var(--color-danger)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.connect{white-space:nowrap}.connect-icon{flex:none;display:none}@media (width<=479px){.connect{padding:0 var(--space-3)}.connect-off{display:none}.connect-icon{display:block}}
