.kolam-root.svelte-14pkc9h{--kp-floor:#8a4a3a;--kp-floor-edge:#6f3a2d;--kp-white:#fff8ee;--kp-cand:#fff8ee38;--kp-axis:#fff8ee29;--kp-dot:#ffe9c9}.kp-head.svelte-14pkc9h{min-height:3.5rem}.kp-stage.svelte-14pkc9h{aspect-ratio:1;width:min(100%,max(15rem,100dvh - 21rem));margin:0 auto}.kp-board.svelte-14pkc9h,.kp-figure.svelte-14pkc9h{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.kp-floor.svelte-14pkc9h{fill:var(--kp-floor);stroke:var(--kp-floor-edge);stroke-width:6px}.kp-axis.svelte-14pkc9h{stroke:var(--kp-axis);stroke-width:4px;stroke-dasharray:10 14;stroke-linecap:round;pointer-events:none}.kp-cand.svelte-14pkc9h{stroke:var(--kp-cand);stroke-width:8px;stroke-linecap:round;pointer-events:none}.kp-line.svelte-14pkc9h{stroke:var(--kp-white);stroke-width:14px;stroke-linecap:round;pointer-events:none}.kp-drawn.svelte-14pkc9h{animation:.22s ease-out svelte-14pkc9h-kp-draw}.kp-fading.svelte-14pkc9h{animation:.5s ease-out forwards svelte-14pkc9h-kp-fade}.kp-hint.svelte-14pkc9h{stroke-dasharray:18 14;opacity:.55;animation:.9s ease-in-out infinite svelte-14pkc9h-kp-pulse}.kp-hit.svelte-14pkc9h{stroke:#0000;stroke-width:64px;stroke-linecap:round;pointer-events:stroke;cursor:pointer;outline:none}.kp-hit.svelte-14pkc9h:focus-visible{stroke:#fff8ee40}.kp-dot.svelte-14pkc9h{fill:var(--kp-dot);pointer-events:none}.kp-held.svelte-14pkc9h .kp-line:where(.svelte-14pkc9h){animation:.6s ease-out svelte-14pkc9h-kp-glow}@keyframes svelte-14pkc9h-kp-draw{0%{opacity:.3;stroke-width:6px}to{opacity:1;stroke-width:14px}}@keyframes svelte-14pkc9h-kp-fade{0%{opacity:.9}to{opacity:0}}@keyframes svelte-14pkc9h-kp-pulse{0%,to{opacity:.35}50%{opacity:.85}}@keyframes svelte-14pkc9h-kp-glow{0%{stroke-width:14px}40%{stroke-width:22px}to{stroke-width:14px}}.kp-tiles.svelte-14pkc9h{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:min(100%,max(15rem,100dvh - 21rem));margin:0 auto;display:grid}.kp-tile.svelte-14pkc9h{aspect-ratio:1;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:4px solid #0000;border-radius:1.25rem;width:100%;min-width:3.5rem;min-height:3.5rem;padding:0;transition:opacity .3s,transform .15s,border-color .15s;display:block;position:relative}.kp-tile.svelte-14pkc9h:active{transform:scale(.97)}.kp-tile-wrong.svelte-14pkc9h{opacity:.3;pointer-events:none}.kp-tile-right.svelte-14pkc9h{border-color:var(--learn-accent-2,#7fa87f);box-shadow:0 0 0 4px var(--learn-correct-soft,#dcfce7)}.kp-tile-hint.svelte-14pkc9h{animation:.9s ease-in-out infinite svelte-14pkc9h-kp-tile-pulse}.kp-tick.svelte-14pkc9h{background:var(--learn-accent-2,#7fa87f);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex;position:absolute;bottom:.5rem;right:.5rem}.kp-tick.svelte-14pkc9h svg:where(.svelte-14pkc9h){width:1.5rem;height:1.5rem}@keyframes svelte-14pkc9h-kp-tile-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.kp-recap.svelte-14pkc9h{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.kp-recap-card.svelte-14pkc9h{aspect-ratio:1;border-radius:1rem;overflow:hidden}@media (orientation:landscape) and (height<=520px){.kolam-root.svelte-14pkc9h{flex-direction:row;align-items:center;gap:1rem;max-width:none;display:flex}.kp-head.svelte-14pkc9h{flex-direction:column;flex-shrink:0;width:9rem;margin-bottom:0}.kp-head.svelte-14pkc9h>div:last-child{margin-left:0}.kp-stage.svelte-14pkc9h,.kp-tiles.svelte-14pkc9h{width:auto;height:calc(100dvh - 6.5rem);max-height:100%;margin:0}.kp-tiles.svelte-14pkc9h{aspect-ratio:1}.kp-recap.svelte-14pkc9h{flex:1}}@media (prefers-reduced-motion:reduce){.kp-drawn.svelte-14pkc9h,.kp-fading.svelte-14pkc9h,.kp-hint.svelte-14pkc9h,.kp-held.svelte-14pkc9h .kp-line:where(.svelte-14pkc9h),.kp-tile-hint.svelte-14pkc9h{animation:none}.kp-fading.svelte-14pkc9h{opacity:.5}.kp-tile.svelte-14pkc9h{transition:none}}:root[data-reduced-motion] .kp-drawn.svelte-14pkc9h,:root[data-reduced-motion] .kp-fading.svelte-14pkc9h,:root[data-reduced-motion] .kp-hint.svelte-14pkc9h,:root[data-reduced-motion] .kp-held.svelte-14pkc9h .kp-line:where(.svelte-14pkc9h),:root[data-reduced-motion] .kp-tile-hint.svelte-14pkc9h{animation:none}:root[data-reduced-motion] .kp-fading.svelte-14pkc9h{opacity:.5}
