.jp-layout.svelte-1acyv9d{--jp-board-w:min(28rem, 100%, max(12rem, calc(100dvh - 24rem)))}.jp-board.svelte-1acyv9d{width:var(--jp-board-w)}.jp-piece.svelte-1acyv9d{width:clamp(3.5rem, calc(var(--jp-board-w) / var(--jp-cols)), 6rem);height:clamp(3.5rem, calc(var(--jp-board-w) / var(--jp-cols)), 6rem);cursor:pointer;touch-action:manipulation;flex:none;transition:transform .2s}.jp-piece.svelte-1acyv9d:hover{transform:scale(1.05)}.jp-thumb.svelte-1acyv9d{border:3px solid var(--learn-line);background-color:var(--learn-sunken,#f1f5f9);border-radius:.75rem;flex:none;width:3.5rem;height:3.5rem}.jp-dot.svelte-1acyv9d{background:var(--learn-line);border-radius:9999px;width:.7rem;height:.7rem;transition:background .3s,transform .3s;display:inline-block}.jp-dot-on.svelte-1acyv9d{background:var(--learn-correct,#22c55e);transform:scale(1.2)}.jp-slot.svelte-1acyv9d{position:relative}.jp-slot-btn.svelte-1acyv9d{background:color-mix(in srgb, var(--learn-line) 12%, transparent);padding:0;position:relative}.jp-slot-btn.svelte-1acyv9d:disabled{cursor:default}.jp-face.svelte-1acyv9d{border-radius:.25rem;display:block;position:absolute;inset:0}.jp-ghost.svelte-1acyv9d{opacity:.28}.jp-pop.svelte-1acyv9d{animation:.4s ease-out both svelte-1acyv9d-jp-pop}@keyframes svelte-1acyv9d-jp-pop{0%{transform:scale(1.18)}60%{transform:scale(.95)}to{transform:scale(1)}}.jp-return.svelte-1acyv9d{z-index:10;pointer-events:none;border-radius:.375rem;animation:.65s ease-in-out both svelte-1acyv9d-jp-return;position:absolute;inset:0}@keyframes svelte-1acyv9d-jp-return{0%{opacity:1;transform:translate(0)}80%{opacity:.9}to{transform:translate(var(--jp-dx), var(--jp-dy)) scale(.9);opacity:0}}.jp-arrive.svelte-1acyv9d{animation:.65s ease-out both svelte-1acyv9d-jp-arrive}@keyframes svelte-1acyv9d-jp-arrive{0%,70%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.jp-hint.svelte-1acyv9d{box-shadow:0 0 0 3px var(--learn-warn,#e59f1b);animation:1s ease-in-out infinite svelte-1acyv9d-jp-hint-pulse}@keyframes svelte-1acyv9d-jp-hint-pulse{0%,to{transform:scale(.96)}50%{transform:scale(1.05)}}.jp-solved.svelte-1acyv9d{animation:.8s ease-out both svelte-1acyv9d-jp-bounce}@keyframes svelte-1acyv9d-jp-bounce{0%{transform:scale(1)}35%{transform:scale(1.08)}60%{transform:scale(.98)}to{transform:scale(1)}}@media (orientation:landscape) and (height<=500px){.jp-layout.svelte-1acyv9d{--jp-board-w:max(11rem, calc(100dvh - 9rem));grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:1rem;display:grid}.jp-board.svelte-1acyv9d{grid-area:1/1/5;max-width:none}.jp-dots.svelte-1acyv9d,.jp-tray.svelte-1acyv9d{grid-column:2;margin-top:0;margin-bottom:.5rem}}@media (prefers-reduced-motion:reduce){.jp-piece.svelte-1acyv9d,.jp-dot.svelte-1acyv9d,.jp-pop.svelte-1acyv9d,.jp-return.svelte-1acyv9d,.jp-arrive.svelte-1acyv9d,.jp-hint.svelte-1acyv9d,.jp-solved.svelte-1acyv9d{transition:none;animation:none}.jp-return.svelte-1acyv9d{display:none}}:root[data-reduced-motion] .jp-piece.svelte-1acyv9d,:root[data-reduced-motion] .jp-dot.svelte-1acyv9d,:root[data-reduced-motion] .jp-pop.svelte-1acyv9d,:root[data-reduced-motion] .jp-return.svelte-1acyv9d,:root[data-reduced-motion] .jp-arrive.svelte-1acyv9d,:root[data-reduced-motion] .jp-hint.svelte-1acyv9d,:root[data-reduced-motion] .jp-solved.svelte-1acyv9d{transition:none;animation:none}:root[data-reduced-motion] .jp-return.svelte-1acyv9d{display:none}
