:root{--bg-0:#0c0620;--bg-1:#1a0d3d;--bg-2:#2b1463;--ink:#fdf7ff;--ink-dim:#b9a8e6;--ink-faint:#7d6bb3;--gold:#ffd23f;--pink:#ff4f8b;--teal:#2de2c6;--red:#ff5a5a;--green:#4be37a;--tile:#fff4dc;--tile-edge:#d6b27a;--tile-ink:#2a1650;--panel:#ffffff0f;--panel-edge:#ffffff1f;--display:"Lilita One", "Arial Rounded MT Bold", "Trebuchet MS", sans-serif;--body:"Fredoka", "Trebuchet MS", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{background:var(--bg-0);height:100%;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0}body{background:radial-gradient(ellipse 60% 50% at 20% 0%, #ff4f8b2e, transparent 70%), radial-gradient(ellipse 60% 60% at 90% 100%, #2de2c61f, transparent 70%), radial-gradient(ellipse 90% 80% at 50% 40%, var(--bg-2), var(--bg-1) 55%, var(--bg-0));background-attachment:fixed}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.display{font-family:var(--display);letter-spacing:.02em;font-weight:400}.btn{font-family:var(--display);letter-spacing:.03em;color:var(--tile-ink);background:var(--gold);border:none;border-radius:999px;justify-content:center;align-items:center;gap:.5em;padding:.85em 1.4em;font-size:1.15rem;transition:transform 80ms,box-shadow 80ms;display:inline-flex;box-shadow:0 5px #c99a12,0 10px 24px #00000059}.btn:active{transform:translateY(4px);box-shadow:0 1px #c99a12,0 4px 10px #00000059}.btn.pink{background:var(--pink);color:#fff;box-shadow:0 5px #b8285a,0 10px 24px #00000059}.btn.teal{background:var(--teal);box-shadow:0 5px #169c86,0 10px 24px #00000059}.btn.ghost{background:var(--panel);color:var(--ink);box-shadow:inset 0 0 0 2px var(--panel-edge)}.btn:disabled{opacity:.45}.panel{background:var(--panel);border:1px solid var(--panel-edge);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:24px}.avatar{aspect-ratio:1;border-radius:50%;place-items:center;line-height:1;display:inline-grid;box-shadow:inset 0 -4px #0000002e}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes float-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes pulse{50%{transform:scale(1.06)}}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.grid.svelte-1vfcwbf{--hl:var(--gold);grid-template-columns:repeat(var(--n), var(--cell));grid-auto-rows:var(--cell);gap:var(--gap);width:var(--px);height:var(--px);-webkit-user-select:none;-moz-user-select:none;user-select:none;display:grid;position:relative}.tone-valid.svelte-1vfcwbf{--hl:var(--green)}.tone-dup.svelte-1vfcwbf{--hl:var(--gold)}.tone-bad.svelte-1vfcwbf{--hl:var(--red)}.tone-hint.svelte-1vfcwbf{--hl:var(--teal)}.tone-trace.svelte-1vfcwbf{--hl:#fff}.tile.svelte-1vfcwbf{border-radius:calc(var(--cell) * .2);background:radial-gradient(circle at 35% 25%, #ffffffe6, transparent 55%), linear-gradient(160deg, #fffaf0, var(--tile) 60%, #f3dfb8);box-shadow:inset 0 calc(var(--cell) * -.06) 0 var(--tile-edge), 0 calc(var(--cell) * .05) 0 #9c7a4a, 0 calc(var(--cell) * .12) calc(var(--cell) * .18) #00000073;transform:rotate(var(--tilt));place-items:center;transition:transform .12s,background .12s,box-shadow .12s;display:grid;position:relative}.tile.svelte-1vfcwbf span:where(.svelte-1vfcwbf){font-family:var(--display);font-size:calc(var(--cell) * .56);color:var(--tile-ink);margin-top:calc(var(--cell) * -.04);line-height:1}.tile.svelte-1vfcwbf span.multi:where(.svelte-1vfcwbf){font-size:calc(var(--cell) * .42)}.tile.on.svelte-1vfcwbf{background:var(--hl);box-shadow:inset 0 calc(var(--cell) * -.06) 0 #0000002e, 0 0 0 calc(var(--cell) * .04) #ffffffd9, 0 0 calc(var(--cell) * .4) var(--hl);z-index:1;transform:rotate(0)scale(1.06)}.tile.head.svelte-1vfcwbf{transform:rotate(0)scale(1.12)}.tile.deal.svelte-1vfcwbf{animation:.55s cubic-bezier(.2,1.4,.4,1) backwards svelte-1vfcwbf-drop;animation-delay:var(--delay)}@keyframes svelte-1vfcwbf-drop{0%{transform:translateY(calc(var(--cell) * -1.2)) rotate(calc(var(--tilt) * -8)) scale(.6);opacity:0}}.lines.svelte-1vfcwbf{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.lines.svelte-1vfcwbf polyline:where(.svelte-1vfcwbf){fill:none;stroke:var(--hl);stroke-width:calc(var(--cell) * .1);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.55;filter:drop-shadow(0 0 4px #0006)}
