@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--cell-size: 40px;--cell-gap: 6px;--color-bg: #f3f4f6;--color-panel-bg: #f9fafb;--color-panel-text: #111827;--color-board-bg: #e5e7eb;--color-border-soft: #d1d5db;--shadow-soft: 0 18px 45px rgba(15, 23, 42, .12);--control-panel-toolbar-bg: #e5e7eb;--control-panel-toolbar-bg-hover: #d1d5db;--score-text: #111827;--overlay-backdrop: rgba(15, 23, 42, .45);--overlay-backdrop-blur: 10px;--overlay-card-bg: #ffffff;--overlay-card-text: #0f172a;--overlay-card-border: rgba(15, 23, 42, .08);--overlay-muted: #4b5563;--overlay-divider: rgba(15, 23, 42, .1);--overlay-button-primary-bg: #4f46e5;--overlay-button-primary-hover: #4338ca;--overlay-button-secondary-bg: #e5e7eb;--overlay-button-secondary-hover: #d1d5db;--overlay-button-ghost-hover: rgba(79, 70, 229, .08);--overlay-button-danger-bg: #dc2626;--overlay-button-danger-hover: #b91c1c;--overlay-switch-track: #dbeafe;--overlay-switch-track-active: #4f46e5;--overlay-switch-thumb: #ffffff}:root[data-theme=dark]{--color-bg: #020617;--color-panel-bg: #111827;--color-panel-text: #f9fafb;--color-board-bg: #020617;--color-border-soft: #1f2937;--shadow-soft: 0 18px 45px rgba(15, 23, 42, .6);--control-panel-toolbar-bg: #1f2937;--control-panel-toolbar-bg-hover: #374151;--score-text: #f9fafb;--overlay-backdrop: rgba(2, 6, 23, .75);--overlay-card-bg: #0f172a;--overlay-card-text: #f8fafc;--overlay-card-border: rgba(148, 163, 184, .15);--overlay-muted: #cbd5f5;--overlay-divider: rgba(248, 250, 252, .08);--overlay-button-primary-bg: #818cf8;--overlay-button-primary-hover: #6366f1;--overlay-button-secondary-bg: #1f2937;--overlay-button-secondary-hover: #334155;--overlay-button-ghost-hover: rgba(129, 140, 248, .16);--overlay-button-danger-bg: #f87171;--overlay-button-danger-hover: #ef4444;--overlay-switch-track: #1e293b;--overlay-switch-track-active: #818cf8;--overlay-switch-thumb: #f8fafc}body{font-family:Poppins,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg);color:var(--color-panel-text)}.app-overlay{position:fixed;inset:0;background:var(--overlay-backdrop);-webkit-backdrop-filter:blur(var(--overlay-backdrop-blur));backdrop-filter:blur(var(--overlay-backdrop-blur));display:flex;justify-content:center;align-items:center;z-index:200;padding:24px}.app-overlay-card{border-radius:20px;background:var(--overlay-card-bg);color:var(--overlay-card-text);border:1px solid var(--overlay-card-border);box-shadow:var(--shadow-soft);padding:32px;display:flex;flex-direction:column;gap:20px}html,body{overflow:hidden;height:100%;touch-action:none;-webkit-user-select:none;user-select:none}.app-overlay-title{font-size:1.5rem;font-weight:600;margin-bottom:4px}.app-overlay-body{color:var(--overlay-muted);font-size:.95rem;line-height:1.5}.app-overlay-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.app-overlay-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.app-overlay-fade-enter-active,.app-overlay-fade-leave-active{animation-duration:.22s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.33,1,.68,1)}.app-overlay-fade-enter-active{animation-name:overlayFadeIn}.app-overlay-fade-leave-active{animation-name:overlayFadeOut}.app-overlay-card-enter-active,.app-overlay-card-leave-active{animation-duration:.24s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.33,1,.68,1)}.app-overlay-card-enter-active{animation-name:overlayCardIn}.app-overlay-card-leave-active{animation-name:overlayCardOut}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes overlayCardIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes overlayCardOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(16px) scale(.94)}}.score-card[data-v-a86e59ac]{min-width:140px;padding:16px 20px;border-radius:14px;background:var(--color-panel-bg);border:1px solid var(--color-border-soft);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:16px;align-items:center}.score-title[data-v-a86e59ac]{font-size:1rem;font-weight:600}.score-value[data-v-a86e59ac]{font-size:2.4rem;font-weight:700}.target-row[data-v-a86e59ac]{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:500}.target-swatch[data-v-a86e59ac]{width:22px;height:22px;border-radius:999px;border:2px solid var(--color-border-soft);box-shadow:0 2px 4px #0f172a40}@media(max-width:768px)and (orientation:portrait){.score-card[data-v-a86e59ac]{flex-direction:row;justify-content:space-between;align-items:center;width:80%;padding:.3rem .8rem}.score-value[data-v-a86e59ac]{font-size:1.3rem}.target-row[data-v-a86e59ac]{margin-left:auto}}.ball-wrapper[data-v-8fd65500]{position:relative;width:var(--cell-size);height:var(--cell-size);overflow:visible}.ball[data-v-8fd65500]{width:100%;height:100%;border-radius:50%;border:2px solid #00000022;box-sizing:border-box;position:relative}.ball--blob[data-v-8fd65500]{box-shadow:0 0 8px #ffffff3d}.connector[data-v-8fd65500]{position:absolute;background-color:currentColor;opacity:.55;pointer-events:none}.connector--right[data-v-8fd65500]{top:50%;left:100%;transform:translateY(-50%);width:20px;height:16px}.connector--bottom[data-v-8fd65500]{left:50%;top:100%;transform:translate(-50%);width:16px;height:20px}.center-icon[data-v-8fd65500]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(var(--cell-size) * .5);height:calc(var(--cell-size) * .5);color:#fffe}.controls-card[data-v-5605e167]{padding:16px 18px;border-radius:14px;background:var(--color-panel-bg);border:1px solid var(--color-border-soft);box-shadow:var(--shadow-soft)}.panel-title[data-v-5605e167]{font-size:1rem;font-weight:600;margin-bottom:12px}.panel-content[data-v-5605e167]{display:flex;flex-direction:column;align-items:center;gap:14px}.moves-label[data-v-5605e167]{font-size:.9rem;font-weight:500}.palette[data-v-5605e167]{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(2,40px);gap:10px}.color-button[data-v-5605e167]{border:none;padding:0;background:transparent;cursor:pointer}.test-pass-button[data-v-5605e167]{margin-top:6px;padding:8px 10px;border-radius:10px;border:1px dashed var(--color-border-soft);background:transparent;color:var(--color-text);cursor:pointer;font-size:.85rem}.test-pass-button[data-v-5605e167]:hover{background:var(--color-panel-bg-hover)}@media(max-width:768px){.controls-card[data-v-5605e167]{padding:10px 12px;border-radius:12px}.panel-title[data-v-5605e167]{font-size:.9rem;margin-bottom:6px}.panel-content[data-v-5605e167]{gap:8px}.moves-label[data-v-5605e167]{font-size:.8rem}.palette[data-v-5605e167]{display:flex;justify-content:center;gap:6px;flex-wrap:nowrap}.color-button[data-v-5605e167]{transform:scale(.85)}.test-pass-button[data-v-5605e167]{display:none}}.ui-button[data-v-cfcaa8d0]{border:none;border-radius:999px;font-weight:600;font-family:inherit;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:background .15s ease,color .15s ease,transform .15s ease;color:#fff;background:var(--overlay-button-primary-bg);padding:.65rem 1.4rem;min-height:42px}.ui-button[data-v-cfcaa8d0]:focus-visible{outline:2px solid rgba(99,102,241,.6);outline-offset:2px}.ui-button--block[data-v-cfcaa8d0]{width:100%}.ui-button--sm[data-v-cfcaa8d0]{font-size:.85rem;padding:.45rem 1rem;min-height:34px}.ui-button--lg[data-v-cfcaa8d0]{font-size:1rem;padding:.85rem 1.6rem;min-height:48px}.ui-button--primary[data-v-cfcaa8d0]{background:var(--overlay-button-primary-bg)}.ui-button--primary[data-v-cfcaa8d0]:hover:not(:disabled){background:var(--overlay-button-primary-hover)}.ui-button--secondary[data-v-cfcaa8d0]{background:var(--overlay-button-secondary-bg);color:var(--overlay-card-text)}.ui-button--secondary[data-v-cfcaa8d0]:hover:not(:disabled){background:var(--overlay-button-secondary-hover)}.ui-button--ghost[data-v-cfcaa8d0]{background:transparent;color:var(--overlay-card-text)}.ui-button--ghost[data-v-cfcaa8d0]:hover:not(:disabled){background:var(--overlay-button-ghost-hover)}.ui-button--danger[data-v-cfcaa8d0]{background:var(--overlay-button-danger-bg)}.ui-button--danger[data-v-cfcaa8d0]:hover:not(:disabled){background:var(--overlay-button-danger-hover)}.ui-button[data-v-cfcaa8d0]:disabled{opacity:.5;cursor:not-allowed}.win-card[data-v-f0f2e98f]{text-align:center;gap:12px}.win-actions[data-v-f0f2e98f]{justify-content:center}.lose-card[data-v-f35a4ce2]{text-align:center;gap:12px}.lose-actions[data-v-f35a4ce2]{justify-content:center}.instructions-card[data-v-6a498ec4]{max-width:520px}.instructions[data-v-6a498ec4]{list-style:disc;padding-left:20px;font-size:.95rem;line-height:1.5;color:var(--overlay-card-text);margin-bottom:12px}.instructions strong[data-v-6a498ec4]{color:var(--overlay-card-text)}.instructions-actions[data-v-6a498ec4]{justify-content:flex-end}@media(max-width:520px){.instructions[data-v-6a498ec4]{font-size:.9rem}}.icon-btn[data-v-5430403c]{background:var(--control-panel-toolbar-bg);border:none;color:var(--color-panel-text);padding:8px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s ease}.icon-btn[data-v-5430403c]:hover{background:var(--control-panel-toolbar-bg-hover);transform:scale(1.05)}.icon-btn[data-v-5430403c]:active{transform:scale(.96)}.ui-dropdown[data-v-ef48f30c]{font-family:inherit;position:relative}.ui-dropdown-control[data-v-ef48f30c]{width:100%;display:flex;justify-content:space-between;align-items:center;border-radius:12px;border:1px solid var(--overlay-divider);background:transparent;color:var(--overlay-card-text);padding:10px 14px;font-size:.95rem;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:border-color .2s ease,background .2s ease}.ui-dropdown-control[data-v-ef48f30c]:focus-visible{outline:2px solid rgba(99,102,241,.45);outline-offset:2px}.ui-dropdown-control[data-v-ef48f30c]:disabled{opacity:.5;cursor:not-allowed}.ui-dropdown-control-meta[data-v-ef48f30c]{display:inline-flex;align-items:center;gap:8px;color:var(--overlay-muted)}.ui-dropdown-control-label[data-v-ef48f30c]{flex:1;text-align:left}.ui-dropdown-chevron[data-v-ef48f30c]{font-size:.8rem}.ui-dropdown-list[data-v-ef48f30c]{position:absolute;top:calc(100% + 6px);left:0;width:100%;background:var(--overlay-card-bg);border-radius:12px;border:1px solid var(--overlay-divider);box-shadow:var(--shadow-soft);padding:6px;display:flex;flex-direction:column;gap:4px;z-index:10;max-height:min(260px,50vh);overflow-y:auto;-webkit-overflow-scrolling:touch}.ui-dropdown-option[data-v-ef48f30c]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;cursor:pointer;color:var(--overlay-card-text);font-size:.95rem;font-weight:500;letter-spacing:.01em;transition:background .15s ease,color .15s ease}.ui-dropdown-option[data-v-ef48f30c]:hover{background:#6366f10f}.ui-dropdown-option.is-selected[data-v-ef48f30c]{background:#6366f11f}.ui-dropdown-option-meta[data-v-ef48f30c]{display:flex;align-items:center;gap:6px}.ui-dropdown-dot[data-v-ef48f30c]{width:8px;height:8px;border-radius:50%;background:var(--overlay-button-primary-bg)}.ui-dropdown-check[data-v-ef48f30c]{color:var(--overlay-button-primary-bg);font-size:.85rem}.ui-dropdown-fade-enter-active[data-v-ef48f30c],.ui-dropdown-fade-leave-active[data-v-ef48f30c]{transition:opacity .15s ease,transform .15s ease}.ui-dropdown-fade-enter-from[data-v-ef48f30c],.ui-dropdown-fade-leave-to[data-v-ef48f30c]{opacity:0;transform:translateY(-4px)}.pause-card[data-v-60b1d026]{gap:24px}.pause-eyebrow[data-v-60b1d026]{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--overlay-muted)}.pause-actions[data-v-60b1d026]{justify-content:flex-start}.level-picker[data-v-60b1d026]{display:flex;flex-direction:column;gap:10px}.level-picker__label[data-v-60b1d026]{font-size:.85rem;color:var(--overlay-muted)}.ui-switch[data-v-08e27f64]{position:relative;display:inline-flex;width:52px;height:28px;cursor:pointer}.ui-switch input[data-v-08e27f64]{opacity:0;width:0;height:0}.ui-switch-track[data-v-08e27f64]{position:absolute;inset:0;border-radius:999px;background:var(--overlay-switch-track);transition:background .2s ease}.ui-switch-thumb[data-v-08e27f64]{position:absolute;width:22px;height:22px;border-radius:50%;background:var(--overlay-switch-thumb);top:3px;left:3px;transition:transform .2s ease;box-shadow:0 4px 10px #0f172a33}.ui-switch input:checked+.ui-switch-track[data-v-08e27f64]{background:var(--overlay-switch-track-active)}.ui-switch input:checked+.ui-switch-track .ui-switch-thumb[data-v-08e27f64]{transform:translate(24px)}.ui-switch input:disabled+.ui-switch-track[data-v-08e27f64]{opacity:.4;cursor:not-allowed}.settings-eyebrow[data-v-f45e19fc]{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--overlay-muted)}.settings-list[data-v-f45e19fc]{display:flex;flex-direction:column;gap:18px}.setting-row[data-v-f45e19fc]{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--overlay-divider)}.setting-row[data-v-f45e19fc]:last-of-type{border-bottom:none;padding-bottom:0}.setting-text[data-v-f45e19fc]{display:flex;flex-direction:column;gap:4px}.label[data-v-f45e19fc]{font-size:1rem;color:var(--overlay-card-text);font-weight:600}.value[data-v-f45e19fc]{color:var(--overlay-muted);font-size:.9rem}.settings-actions[data-v-f45e19fc]{justify-content:flex-end}.version-row[data-v-f45e19fc]{border-bottom:none;padding-bottom:0}.version-footer[data-v-f45e19fc]{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;font-size:.8rem;color:var(--overlay-muted);position:relative}.version-label[data-v-f45e19fc]{font-size:.75rem}.author[data-v-f45e19fc]{font-weight:600;position:relative;cursor:pointer;text-decoration:none}.author-tooltip[data-v-f45e19fc]{position:absolute;bottom:100%;left:50%;transform:translate(-50%,-6px);padding:4px 8px;border-radius:6px;background:var(--overlay-card-bg, rgba(0, 0, 0, .85));color:#000;font-size:.7rem;white-space:nowrap;box-shadow:0 2px 6px #00000059;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease}.author-tooltip[data-v-f45e19fc]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--overlay-card-bg, rgba(0, 0, 0, .85))}.author:hover .author-tooltip[data-v-f45e19fc]{opacity:1;transform:translate(-50%,-10px)}.author[data-v-f45e19fc]:hover{text-decoration:underline}.grid[data-v-e3abef9b]{display:flex;flex-direction:column;gap:var(--cell-gap)}.row[data-v-e3abef9b]{display:flex;gap:var(--cell-gap)}.cell-placeholder[data-v-e3abef9b]{width:var(--cell-size);height:var(--cell-size)}.cell-with-hint[data-v-e3abef9b]{position:relative;width:var(--cell-size);height:var(--cell-size)}.start-hint[data-v-e3abef9b]{position:absolute;left:50%;top:-10px;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:hint-bounce-e3abef9b 1.2s ease-in-out infinite}.start-hint-label[data-v-e3abef9b]{background:#ff4b81;color:#fff;font-size:14px;font-weight:600;padding:6px 10px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px #00000059}.start-hint-arrow[data-v-e3abef9b]{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #ff4b81}@keyframes hint-bounce-e3abef9b{0%,to{transform:translate(-50%,-100%)}50%{transform:translate(-50%,-115%)}}.layout[data-v-a1bfd0c1]{display:grid;grid-template-columns:minmax(140px,220px) minmax(520px,1fr) minmax(140px,220px);gap:24px;height:100vh;padding:24px;box-sizing:border-box;max-width:1280px;margin:0 auto}.mobile-topbar[data-v-a1bfd0c1]{display:none}.side-column[data-v-a1bfd0c1],.board-column[data-v-a1bfd0c1]{display:flex;align-items:center;justify-content:center}.grid-wrapper[data-v-a1bfd0c1]{position:relative;display:flex;justify-content:center;align-items:center}.board-toolbar[data-v-a1bfd0c1]{position:absolute;bottom:110%;left:50%;transform:translate(-50%);margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:12px;background:var(--color-panel-bg);border:1px solid var(--color-border-soft);box-shadow:var(--shadow-soft)}.toolbar-buttons[data-v-a1bfd0c1]{display:flex;gap:8px}.controls-with-hint[data-v-a1bfd0c1]{position:relative}.controls-hint[data-v-a1bfd0c1]{position:absolute;left:50%;top:-12px;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:hint-bounce-a1bfd0c1 1.2s ease-in-out infinite}.controls-hint-label[data-v-a1bfd0c1]{background:#ff4b81;color:#fff;font-size:14px;font-weight:600;padding:6px 10px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px #00000059}.controls-hint-arrow[data-v-a1bfd0c1]{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #ff4b81}@keyframes hint-bounce-a1bfd0c1{0%,to{transform:translate(-50%,-100%)}50%{transform:translate(-50%,-115%)}}@media(max-width:768px){.layout[data-v-a1bfd0c1]{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:16px;padding:0;height:auto;width:100%;align-items:center}.side-column[data-v-a1bfd0c1]{justify-content:center;margin-bottom:8px}.board-toolbar[data-v-a1bfd0c1]{display:none}.mobile-topbar[data-v-a1bfd0c1]{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--color-panel-bg);border-bottom:1px solid var(--color-border-soft)}.mobile-topbar-left[data-v-a1bfd0c1]{display:flex;align-items:center}.mobile-topbar-title[data-v-a1bfd0c1]{font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.9rem}.mobile-topbar-actions[data-v-a1bfd0c1]{display:flex;align-items:center;gap:8px}.side-column--controls[data-v-a1bfd0c1]{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:8px 16px calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:center}}
