*{box-sizing:border-box}html,body,#app{width:100%;height:100%}.home[data-v-60f45fb9]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;gap:1.5rem}.logo[data-v-60f45fb9]{display:inline-flex;align-items:center;gap:.55rem;font-size:clamp(3rem,10vw,6rem);font-weight:900;letter-spacing:-.02em;line-height:1}.logo-icon[data-v-60f45fb9]{width:1.5em;height:1.5em;flex:0 0 auto}.logo-b[data-v-60f45fb9]{color:#4f8ef7}.logo-l[data-v-60f45fb9]{color:#7fb5ff}.logo-o[data-v-60f45fb9]{color:#f7c94f}.logo-o2[data-v-60f45fb9]{color:#f7a84f}.logo-p[data-v-60f45fb9]{color:#f75f5f}.tagline[data-v-60f45fb9]{color:#888;font-size:.95rem;text-align:center}.card[data-v-60f45fb9],.browse-card[data-v-60f45fb9]{width:100%;max-width:420px}.form[data-v-60f45fb9]{display:flex;flex-direction:column;gap:.75rem;padding-top:.5rem}.browse-header[data-v-60f45fb9]{display:flex;align-items:center;justify-content:space-between;margin-top:.25rem}.browse-label[data-v-60f45fb9]{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.08em}.rooms-empty[data-v-60f45fb9]{color:#555;font-size:.9rem;text-align:center;padding:1rem 0}.room-list[data-v-60f45fb9]{display:flex;flex-direction:column;gap:.5rem}.room-row[data-v-60f45fb9]{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#1a1a22;border-radius:8px;border:1px solid #2a2a35;gap:.5rem}.room-row-info[data-v-60f45fb9]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;flex-wrap:wrap}.room-row-code[data-v-60f45fb9]{font-weight:800;letter-spacing:.1em;color:#e8e8f0;font-size:.9rem}.room-row-phase[data-v-60f45fb9]{font-size:.7rem;font-weight:700;padding:1px 6px;border-radius:4px}.room-row-phase.lobby[data-v-60f45fb9]{background:#4f8ef720;color:#4f8ef7}.room-row-phase.playing[data-v-60f45fb9]{background:#4fca7f20;color:#4fca7f}.room-row-phase.result[data-v-60f45fb9]{background:#88888820;color:#888}.room-row-counts[data-v-60f45fb9]{font-size:.75rem;color:#666}.room-row-actions[data-v-60f45fb9]{display:flex;gap:.4rem;flex-shrink:0}.tournament-list[data-v-60f45fb9]{display:flex;flex-direction:column;gap:.5rem}.tournament-row[data-v-60f45fb9]{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#1a1a22;border-radius:8px;border:1px solid #2a2a35;gap:.5rem}.tournament-row-info[data-v-60f45fb9]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;flex-wrap:wrap}.tournament-row-code[data-v-60f45fb9]{font-weight:800;letter-spacing:.1em;color:#e8e8f0;font-size:.9rem}.tournament-row-status[data-v-60f45fb9]{font-size:.7rem;font-weight:700;padding:1px 6px;border-radius:4px}.tournament-row-status.lobby[data-v-60f45fb9]{background:#4f8ef720;color:#4f8ef7}.tournament-row-status.active[data-v-60f45fb9]{background:#4fca7f20;color:#4fca7f}.tournament-row-status.stopped[data-v-60f45fb9]{background:#f7c94f20;color:#f7c94f}.tournament-row-status.finished[data-v-60f45fb9]{background:#88888820;color:#888}.tournament-row-status.archived[data-v-60f45fb9]{background:#88888820;color:#777}.tournament-row-name[data-v-60f45fb9]{color:#cfcfe0;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tournament-row-counts[data-v-60f45fb9]{font-size:.75rem;color:#666}.tournament-row-actions[data-v-60f45fb9]{display:flex;gap:.4rem;flex-shrink:0}.slot[data-v-5b913366]{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#1e1e26;border-radius:8px}.slot.spectator[data-v-5b913366]{border:1px solid #8b90a055}.blob-dot[data-v-5b913366]{width:32px;height:18px;border-radius:50% 50% 0 0/100% 100% 0 0;flex-shrink:0}.info[data-v-5b913366]{flex:1;display:flex;align-items:center;gap:.5rem}.name[data-v-5b913366]{font-weight:600;color:#e8e8f0}.badge[data-v-5b913366]{font-size:.7rem;padding:1px 6px;border-radius:4px;background:#2a2a35;color:#888}.badge.host[data-v-5b913366]{background:#4f8ef720;color:#4f8ef7}.badge.spectator[data-v-5b913366]{background:#8b90a025;color:#aeb3c2}.team-badge[data-v-5b913366]{font-size:.75rem;font-weight:700;padding:2px 10px;border-radius:6px;color:#fff;opacity:.9}.team-badge.spectator[data-v-5b913366]{background:#8b90a025;color:#aeb3c2}.room-chat[data-v-1cba6675]{display:flex;flex-direction:column;gap:.5rem;background:#14141ceb;border:1px solid #2a2a35;border-radius:10px;padding:.6rem}.chat-header[data-v-1cba6675]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.75rem;color:#a0a0b0;letter-spacing:.08em;text-transform:uppercase}.chat-title[data-v-1cba6675]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-hide-btn[data-v-1cba6675]{letter-spacing:0;text-transform:none}.chat-list[data-v-1cba6675]{min-height:100px;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:.3rem;padding-right:.25rem}.chat-empty[data-v-1cba6675]{color:#666;font-size:.8rem}.chat-row[data-v-1cba6675]{font-size:.82rem;line-height:1.25;word-break:break-word;padding:.15rem .2rem;border-radius:5px}.chat-row.spectator[data-v-1cba6675]{background:#8b90a018}.chat-name[data-v-1cba6675]{color:#d9d9e6;font-weight:700;margin-right:.25rem}.chat-role[data-v-1cba6675]{font-size:.62rem;font-weight:700;text-transform:uppercase;border-radius:4px;padding:1px 4px;margin-right:.35rem;background:#4f8ef720;color:#4f8ef7}.chat-role.spectator[data-v-1cba6675]{background:#8b90a025;color:#aeb3c2}.chat-text[data-v-1cba6675]{color:#c8c8d4}.chat-input-row[data-v-1cba6675]{display:grid;grid-template-columns:auto 1fr auto;gap:.4rem}.emoji-trigger[data-v-1cba6675]{min-width:2.1rem;font-size:1rem}.emoji-grid[data-v-1cba6675]{display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;width:180px}.emoji-btn[data-v-1cba6675]{border:1px solid #2a2a35;background:#1a1a22;border-radius:6px;font-size:1rem;padding:.25rem 0;cursor:pointer}.emoji-btn[data-v-1cba6675]:hover{background:#242430}.compact .chat-list[data-v-1cba6675]{max-height:140px;min-height:70px}.settings-block[data-v-65c9626e]{margin-top:1.25rem;border:1px solid #2a2a35;border-radius:10px;overflow:hidden}.settings-header[data-v-65c9626e]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;cursor:pointer;background:#1a1a22;-webkit-user-select:none;user-select:none;transition:background .15s}.settings-header[data-v-65c9626e]:hover{background:#1e1e28}.settings-title[data-v-65c9626e]{flex:1;font-size:.85rem;font-weight:700;color:#c8c8d8;text-transform:uppercase;letter-spacing:.06em}.changed-badge[data-v-65c9626e]{font-size:.7rem;background:#4f8ef720;color:#4f8ef7;border-radius:4px;padding:1px 6px;font-weight:700}.chevron[data-v-65c9626e]{font-size:1rem;color:#666;transition:transform .2s}.chevron.open[data-v-65c9626e]{transform:rotate(180deg)}.settings-body[data-v-65c9626e]{padding:1rem;background:#141418;display:flex;flex-direction:column;gap:.75rem}.tab-bar[data-v-65c9626e]{display:flex;gap:.25rem;border-bottom:1px solid #2a2a35;padding-bottom:.5rem}.tab-btn[data-v-65c9626e]{position:relative;background:transparent;border:none;color:#666;font-size:.78rem;font-weight:700;padding:.3rem .6rem;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.tab-btn[data-v-65c9626e]:hover{background:#1e1e28;color:#aaa}.tab-btn.active[data-v-65c9626e]{background:#1e1e34;color:#4f8ef7}.tab-dot[data-v-65c9626e]{position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background:#4f8ef7}.sliders[data-v-65c9626e]{display:flex;flex-direction:column;gap:.85rem}.slider-row[data-v-65c9626e]{display:flex;flex-direction:column;gap:.2rem}.slider-label[data-v-65c9626e]{display:flex;justify-content:space-between;font-size:.78rem;color:#aaa}.slider-right[data-v-65c9626e]{display:flex;align-items:center;gap:.35rem}.slider-val[data-v-65c9626e]{color:#e8e8f0;font-variant-numeric:tabular-nums;font-weight:600}.slider-val-block[data-v-65c9626e]{display:flex;flex-direction:column;align-items:flex-end;gap:.08rem;line-height:1.2}.slider-default[data-v-65c9626e]{font-size:.65rem;color:#666;font-variant-numeric:tabular-nums;font-weight:500}.reset-key-btn[data-v-65c9626e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.35rem;padding:0 .35rem;background:#4f8ef718;border:1px solid #4f8ef740;border-radius:6px;color:#4f8ef7;font-size:.75rem;font-weight:700;line-height:1;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.reset-key-btn[data-v-65c9626e]:hover{background:#4f8ef728;border-color:#4f8ef7a0;color:#6aa3ff}.slider[data-v-65c9626e]{width:100%;accent-color:#4f8ef7;cursor:pointer}.sliders.is-read-only .slider[data-v-65c9626e]{cursor:not-allowed;opacity:.72}.slider-bounds[data-v-65c9626e]{display:flex;justify-content:space-between;font-size:.65rem;color:#444}.reset-btn[data-v-65c9626e]{align-self:flex-end;background:transparent;border:1px solid #2a2a35;color:#888;font-size:.75rem;padding:.3rem .7rem;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.reset-btn[data-v-65c9626e]:hover{background:#1e1e28;color:#ccc}.expand-enter-active[data-v-65c9626e],.expand-leave-active[data-v-65c9626e]{transition:max-height .25s ease,opacity .2s;overflow:hidden;max-height:600px}.expand-enter-from[data-v-65c9626e],.expand-leave-to[data-v-65c9626e]{max-height:0;opacity:0}.lobby[data-v-dc6deba9]{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;position:relative}.lobby-content[data-v-dc6deba9]{display:grid;grid-template-columns:minmax(360px,420px) minmax(300px,360px);gap:1rem;width:min(100%,840px)}.card[data-v-dc6deba9]{width:100%;max-width:420px}.side-panel[data-v-dc6deba9]{display:flex;flex-direction:column;gap:0;align-self:start;min-width:0}.side-chat[data-v-dc6deba9]{min-height:300px}.lobby-header[data-v-dc6deba9]{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.1rem}.mode-tag[data-v-dc6deba9]{font-size:.75rem;padding:2px 8px;border-radius:6px;font-weight:700}.mode-tag.\31v1[data-v-dc6deba9]{background:#4f8ef720;color:#4f8ef7}.mode-tag.practice[data-v-dc6deba9]{background:#f7c94f20;color:#f7c94f}.room-code-block[data-v-dc6deba9]{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem;background:#1e1e26;border-radius:10px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.room-code-block[data-v-dc6deba9]:hover{background:#22222e}.room-code-label[data-v-dc6deba9]{font-size:.75rem;color:#888;letter-spacing:.1em;text-transform:uppercase}.room-code[data-v-dc6deba9]{font-size:2.5rem;font-weight:900;letter-spacing:.25em;color:#e8e8f0;font-variant-numeric:tabular-nums}.room-code-hint[data-v-dc6deba9]{font-size:.7rem;color:#555}.section-label[data-v-dc6deba9]{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.player-list[data-v-dc6deba9]{display:flex;flex-direction:column;gap:.5rem}.empty-slot[data-v-dc6deba9]{padding:.6rem .75rem;background:#1a1a22;border-radius:8px;color:#555;font-style:italic;font-size:.9rem;border:1px dashed #2a2a35}.difficulty-row[data-v-dc6deba9]{margin-top:1.25rem;display:flex;flex-direction:column;gap:.5rem}.waiting-msg[data-v-dc6deba9]{margin-top:1.25rem;text-align:center;color:#666;font-size:.9rem}.waiting-msg.spectating[data-v-dc6deba9]{color:#aeb3c2}.spectator-section[data-v-dc6deba9]{margin-top:.9rem}.spectator-title[data-v-dc6deba9]{color:#aeb3c2}.practice-overlay[data-v-dc6deba9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#121218;z-index:100;display:flex;align-items:center;justify-content:center}.practice-canvas[data-v-dc6deba9]{display:block;width:100%;height:100%;object-fit:contain}.practice-back-btn[data-v-dc6deba9]{position:absolute;top:1rem;left:1rem}.practice-chat[data-v-dc6deba9]{position:absolute;right:1rem;bottom:1rem;width:min(30vw,360px);min-width:280px;z-index:101}.practice-fade-enter-active[data-v-dc6deba9],.practice-fade-leave-active[data-v-dc6deba9]{transition:opacity .2s}.practice-fade-enter-from[data-v-dc6deba9],.practice-fade-leave-to[data-v-dc6deba9]{opacity:0}@media(max-width:900px){.lobby-content[data-v-dc6deba9]{grid-template-columns:1fr;width:min(100%,420px)}.practice-chat[data-v-dc6deba9]{right:.6rem;bottom:.6rem;width:min(92vw,360px);min-width:0}}.game-canvas[data-v-5b0922ac]{display:block;box-sizing:border-box;min-width:0;width:100%;height:100%;max-width:100%}.hud[data-v-89153d1b]{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none}.score-block[data-v-89153d1b]{display:flex;align-items:center;gap:1rem;flex:1;justify-content:center}.team-score[data-v-89153d1b]{display:flex;align-items:center;gap:.5rem;opacity:.7;transition:opacity .2s}.team-score.my-team[data-v-89153d1b]{opacity:1}.team-score.right[data-v-89153d1b]{flex-direction:row-reverse}.team-label[data-v-89153d1b]{font-size:.7rem;font-weight:800;letter-spacing:.05em;padding:1px 6px;border-radius:4px}.team-label.a[data-v-89153d1b]{background:#4f8ef730;color:#4f8ef7}.team-label.b[data-v-89153d1b]{background:#f75f5f30;color:#f75f5f}.points[data-v-89153d1b]{font-size:1.6rem;font-weight:900;color:#e8e8f0;min-width:2ch;text-align:center;font-variant-numeric:tabular-nums}.sets[data-v-89153d1b]{display:flex;gap:3px;flex-direction:column}.set-dot[data-v-89153d1b]{width:6px;height:6px;border-radius:50%;background:#333;transition:background .2s}.set-dot.filled[data-v-89153d1b]{background:#e8e8f0}.divider[data-v-89153d1b]{font-size:1.5rem;color:#555;font-weight:300}.hud-right[data-v-89153d1b]{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.spectating-badge[data-v-89153d1b]{font-size:.6rem;font-weight:800;letter-spacing:.1em;color:#f7c94f;background:#f7c94f18;border:1px solid #f7c94f40;border-radius:4px;padding:1px 5px}.ping[data-v-89153d1b]{font-size:.7rem;color:#888;font-variant-numeric:tabular-nums;min-width:40px;text-align:right}.ping.good[data-v-89153d1b]{color:#4fca7f}.ping.ok[data-v-89153d1b]{color:#f7c94f}.overlay[data-v-89153d1b]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay-box[data-v-89153d1b]{background:#16161a;border-radius:12px;padding:2rem 2.5rem;text-align:center;display:flex;flex-direction:column;gap:.75rem;border:1px solid #2a2a35}.overlay-title[data-v-89153d1b]{font-size:1.2rem;font-weight:700;color:#e8e8f0}.overlay-sub[data-v-89153d1b]{color:#888;font-size:.9rem}.home-link[data-v-89153d1b]{color:#4f8ef7;text-decoration:none;font-weight:600;pointer-events:all}.fade-enter-active[data-v-89153d1b],.fade-leave-active[data-v-89153d1b]{transition:opacity .25s}.fade-enter-from[data-v-89153d1b],.fade-leave-to[data-v-89153d1b]{opacity:0}.sidebar-root[data-v-65825b54]{display:flex;flex-direction:row;flex-shrink:0;align-items:stretch;min-height:0;position:relative}.sidebar-root.is-mobile[data-v-65825b54]{flex:0 0 0;width:0;min-width:0;overflow:visible}.mobile-sidebar-backdrop[data-v-65825b54]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:34;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sidebar-root.is-mobile .sidebar-shell[data-v-65825b54]{position:fixed;top:0;right:0;bottom:0;z-index:35;width:min(304px,92vw);max-width:100vw;transition:transform .22s ease;box-shadow:-8px 0 28px #00000073}.sidebar-root.is-mobile.is-collapsed .sidebar-shell[data-v-65825b54]{transform:translate(100%);pointer-events:none}.sidebar-root.is-mobile:not(.is-collapsed) .sidebar-shell[data-v-65825b54]{transform:translate(0);pointer-events:auto}.sidebar-root.is-mobile .sidebar[data-v-65825b54]{width:100%;border-left:none}.sidebar-root.is-mobile .expand-handle[data-v-65825b54]{position:fixed;right:0;top:max(.5rem,env(safe-area-inset-top,0px));z-index:36;margin:0;margin-right:max(0px,env(safe-area-inset-right,0px));border-radius:8px 0 0 8px}.sidebar-shell[data-v-65825b54]{position:relative;flex-shrink:0;display:flex;flex-direction:row;align-items:stretch;min-height:0}.sidebar[data-v-65825b54]{position:relative;width:304px;flex-shrink:0;display:flex;flex-direction:column;background:#111116;border-left:1px solid #1e1e28;overflow:hidden;transition:width .22s ease,border-color .22s ease}.sidebar-root.is-collapsed .sidebar[data-v-65825b54]{width:0;border-left-color:transparent;pointer-events:none}.sidebar-root.is-mobile.is-collapsed .sidebar[data-v-65825b54]{width:100%;border-left-color:transparent}.collapse-handle[data-v-65825b54]{position:absolute;z-index:4;left:0;top:.5rem;transform:translate(-100%);box-sizing:border-box;width:30px;height:36px;padding:0;border:1px solid #4f8ef7;border-radius:8px 0 0 8px;background:#4f8ef759;color:#e8f4ff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000059,0 0 0 1px #4f8ef726 inset;transition:background .15s,color .15s,border-color .15s}.collapse-handle[data-v-65825b54]:hover{background:#4f8ef78c;color:#fff;border-color:#7eb3ff}.expand-handle[data-v-65825b54]{flex-shrink:0;align-self:flex-start;margin-top:.5rem;margin-right:6px;box-sizing:border-box;width:30px;height:36px;padding:0;border:1px solid #4f8ef7;border-radius:0 8px 8px 0;background:#4f8ef759;color:#e8f4ff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000059,0 0 0 1px #4f8ef726 inset;transition:background .15s,color .15s,border-color .15s}.expand-handle[data-v-65825b54]:hover{background:#4f8ef78c;color:#fff;border-color:#7eb3ff}.handle-icon[data-v-65825b54]{width:20px;height:20px;display:block;flex-shrink:0}.tab-bar[data-v-65825b54]{display:flex;border-bottom:1px solid #1e1e28;flex-shrink:0}.tab-btn[data-v-65825b54]{position:relative;flex:1;background:transparent;border:none;color:#555;font-size:.75rem;font-weight:700;padding:.55rem .25rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background .12s,color .12s}.tab-btn[data-v-65825b54]:hover{background:#1a1a22;color:#999}.tab-btn.active[data-v-65825b54]{color:#4f8ef7;background:#141420;border-bottom:2px solid #4f8ef7}.tab-dot[data-v-65825b54]{position:absolute;top:6px;right:6px;width:5px;height:5px;border-radius:50%;background:#4f8ef7}.tab-content[data-v-65825b54]{flex:1;overflow:hidden;display:flex;flex-direction:column}.settings-content[data-v-65825b54]{padding:.75rem;gap:.75rem;overflow-y:auto}.helpers-panel[data-v-65825b54]{padding-top:.15rem}.settings-helper-row[data-v-65825b54]{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0 .5rem}.settings-helper-label[data-v-65825b54]{font-size:.72rem;color:#888}.settings-host-only-hint[data-v-65825b54]{margin:0;font-size:.68rem;line-height:1.35;color:#555}.settings-tabs-wrap[data-v-65825b54]{display:flex;align-items:stretch;gap:2px;min-width:0}.settings-tabs-scroll-btn[data-v-65825b54]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;padding:0;border:1px solid #2a2a35;border-radius:5px;background:#14141a;color:#888;cursor:pointer;transition:background .12s,color .12s,border-color .12s,opacity .12s}.settings-tabs-scroll-btn[data-v-65825b54]:hover:not(:disabled){background:#1a1a25;color:#ccc;border-color:#3a3a48}.settings-tabs-scroll-btn[data-v-65825b54]:disabled{opacity:.28;cursor:not-allowed}.settings-tabs-scroll-icon[data-v-65825b54]{width:16px;height:16px;display:block}.settings-tabs[data-v-65825b54]{flex:1;min-width:0;display:flex;gap:.2rem;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.settings-tabs[data-v-65825b54]::-webkit-scrollbar{display:none}.stab-btn[data-v-65825b54]{position:relative;flex-shrink:0;background:transparent;border:1px solid #2a2a35;color:#555;font-size:.7rem;font-weight:700;padding:.2rem .45rem;border-radius:5px;cursor:pointer;transition:background .1s,color .1s}.stab-btn[data-v-65825b54]:hover{background:#1a1a25;color:#999}.stab-btn.active[data-v-65825b54]{background:#1e1e34;color:#4f8ef7;border-color:#4f8ef740}.stab-dot[data-v-65825b54]{position:absolute;top:3px;right:3px;width:4px;height:4px;border-radius:50%;background:#4f8ef7}.sliders[data-v-65825b54]{display:flex;flex-direction:column;gap:.75rem}.slider-row[data-v-65825b54]{display:flex;flex-direction:column;gap:.15rem}.slider-label[data-v-65825b54]{display:flex;justify-content:space-between;font-size:.72rem;color:#888}.slider-val[data-v-65825b54]{color:#e8e8f0;font-variant-numeric:tabular-nums;font-weight:600}.slider-val-block[data-v-65825b54]{display:flex;flex-direction:column;align-items:flex-end;gap:.08rem;line-height:1.2}.slider-default[data-v-65825b54]{font-size:.62rem;color:#5c5c6e;font-variant-numeric:tabular-nums;font-weight:500}.slider-right[data-v-65825b54]{display:flex;align-items:center;gap:.35rem}.reset-key-btn[data-v-65825b54]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.35rem;padding:0 .35rem;background:#4f8ef718;border:1px solid #4f8ef740;border-radius:5px;color:#4f8ef7;font-size:.75rem;font-weight:700;line-height:1;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.reset-key-btn[data-v-65825b54]:hover{background:#4f8ef728;border-color:#4f8ef7a0;color:#6aa3ff}.slider[data-v-65825b54]{width:100%;accent-color:#4f8ef7;cursor:pointer}.sliders.is-read-only .slider[data-v-65825b54]{cursor:not-allowed;opacity:.72}.slider-bounds[data-v-65825b54]{display:flex;justify-content:space-between;font-size:.6rem;color:#3a3a4a}.settings-footer[data-v-65825b54]{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;border-top:1px solid #1e1e28;margin-top:auto}.changed-hint[data-v-65825b54]{font-size:.68rem;color:#4f8ef7}.reset-btn[data-v-65825b54]{background:transparent;border:1px solid #2a2a35;color:#777;font-size:.7rem;padding:.2rem .55rem;border-radius:5px;cursor:pointer;transition:background .1s,color .1s}.reset-btn[data-v-65825b54]:hover{background:#1e1e28;color:#ccc}.chat-content[data-v-65825b54]{overflow:hidden}.stats-content[data-v-65825b54]{padding:.75rem;overflow-y:auto;gap:0}.stat-section-title[data-v-65825b54]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#444;margin:.75rem 0 .3rem}.stat-row[data-v-65825b54]{display:flex;justify-content:space-between;align-items:baseline;padding:.15rem 0;border-bottom:1px solid #18181e}.stat-label[data-v-65825b54]{font-size:.72rem;color:#666}.stat-val[data-v-65825b54]{font-size:.72rem;font-variant-numeric:tabular-nums;color:#aaa;font-weight:600}.stat-val.warn[data-v-65825b54]{color:#f7c94f}.stat-val.danger[data-v-65825b54]{color:#f75f5f}.mobile-controls[data-v-8bcebd3f]{flex-shrink:0;width:100%;box-sizing:border-box;display:flex;flex-direction:row;justify-content:space-between;align-items:center;min-height:5.75rem;padding-top:.4rem;padding-left:max(.65rem,env(safe-area-inset-left,0px));padding-right:max(.65rem,env(safe-area-inset-right,0px));padding-bottom:max(.5rem,env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,#0d0d0f33,#0d0d0fd9);border-top:1px solid rgba(255,255,255,.07)}.stick-wrap[data-v-8bcebd3f],.jump-btn[data-v-8bcebd3f]{touch-action:none;user-select:none;-webkit-user-select:none}.stick-wrap[data-v-8bcebd3f]{position:relative;width:7rem;height:7rem;flex-shrink:0}.stick-base[data-v-8bcebd3f]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#ffffff12;border:2px solid rgba(255,255,255,.18);box-shadow:inset 0 1px #ffffff0f}.stick-knob[data-v-8bcebd3f]{position:absolute;left:50%;top:50%;width:2.65rem;height:2.65rem;margin-left:-1.325rem;margin-top:-1.325rem;border-radius:50%;background:#ffffff61;border:1px solid rgba(255,255,255,.25);pointer-events:none;box-shadow:0 2px 8px #00000059}.jump-btn[data-v-8bcebd3f]{width:4.5rem;height:4.5rem;border-radius:50%;border:2px solid rgba(255,255,255,.22);background:#4f8ef759;color:#e8f0ff;font-size:.7rem;font-weight:800;letter-spacing:.04em;cursor:pointer;box-shadow:0 2px 10px #00000059}.jump-btn[data-v-8bcebd3f]:active{background:#4f8ef78c;transform:scale(.96)}.game-view[data-v-d3d8fb80]{width:100vw;height:100vh;display:flex;flex-direction:row;background:#0d0d0f;overflow:hidden}.court-area[data-v-d3d8fb80]{flex:1;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;container-type:size;container-name:court}.court-column[data-v-d3d8fb80]{margin-inline:auto;align-self:center;flex-shrink:1;min-width:0;max-width:100%}.canvas-wrapper[data-v-d3d8fb80]{position:relative;flex-shrink:0;min-width:0}.ball-hud-marker-track[data-v-d3d8fb80]{position:absolute;top:3.25rem;left:0;right:0;height:1.25rem;pointer-events:none;z-index:8}.ball-hud-marker-chevron[data-v-d3d8fb80]{position:absolute;bottom:0;width:0;height:0;border-left:.55rem solid transparent;border-right:.55rem solid transparent;border-top:.75rem solid #f7c94f;transform:translate(-50%);filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}.match-over[data-v-d3d8fb80]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.match-box[data-v-d3d8fb80]{background:#16161a;border-radius:14px;padding:2.5rem 3rem;text-align:center;display:flex;flex-direction:column;gap:1rem;border:1px solid #2a2a35}.match-title[data-v-d3d8fb80]{font-size:1.5rem;font-weight:900;color:#e8e8f0}.match-sets[data-v-d3d8fb80]{color:#888}.match-actions[data-v-d3d8fb80]{display:flex;gap:.75rem;justify-content:center}.waiting-label[data-v-d3d8fb80]{color:#888;font-size:.9rem}.vote-status[data-v-d3d8fb80]{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.vote-entry[data-v-d3d8fb80]{color:#666}.fade-enter-active[data-v-d3d8fb80],.fade-leave-active[data-v-d3d8fb80]{transition:opacity .3s}.fade-enter-from[data-v-d3d8fb80],.fade-leave-to[data-v-d3d8fb80]{opacity:0}.game-exit[data-v-d3d8fb80]{position:absolute;top:.5rem;left:.75rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#ffffff8c;border-radius:6px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;cursor:pointer;pointer-events:all;transition:background .15s,color .15s;z-index:10}.game-exit[data-v-d3d8fb80]:hover{background:#ffffff26;color:#ffffffe6}.tournament[data-v-340365b3]{display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:2rem}.card[data-v-340365b3]{width:100%;max-width:420px;margin-top:4rem}.header[data-v-340365b3]{font-weight:700;font-size:1.1rem}.room-code-block[data-v-340365b3]{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem;background:#1e1e26;border-radius:10px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.room-code-block[data-v-340365b3]:hover{background:#22222e}.room-code-label[data-v-340365b3]{font-size:.75rem;color:#888;letter-spacing:.1em;text-transform:uppercase}.room-code[data-v-340365b3]{font-size:2.5rem;font-weight:900;letter-spacing:.25em;color:#e8e8f0;font-variant-numeric:tabular-nums}.room-code-hint[data-v-340365b3]{font-size:.7rem;color:#555}.section-label[data-v-340365b3]{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.player-list[data-v-340365b3]{display:flex;flex-direction:column;gap:.4rem}.player-row[data-v-340365b3]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#1a1a22;border-radius:8px;border:1px solid #2a2a35}.player-row.me[data-v-340365b3]{border-color:#4f8ef750}.player-name[data-v-340365b3]{flex:1;font-weight:600;color:#e0e0e8}.host-badge[data-v-340365b3]{font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:4px;background:#f7c94f20;color:#f7c94f;text-transform:uppercase}.me-badge[data-v-340365b3]{font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:4px;background:#4f8ef720;color:#4f8ef7;text-transform:uppercase}.waiting-msg[data-v-340365b3]{text-align:center;color:#666;font-size:.9rem;margin-top:1rem}.bracket-page[data-v-340365b3]{display:flex;flex-direction:column;align-items:center;width:100%;max-width:1200px}.bracket-chat[data-v-340365b3]{width:100%;max-width:420px;margin-top:1rem}.bracket-header[data-v-340365b3]{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.bracket-title[data-v-340365b3]{font-size:1.5rem;font-weight:900;color:#e8e8f0;margin:0}.status-badge[data-v-340365b3]{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase}.status-badge.active[data-v-340365b3]{background:#4fca7f20;color:#4fca7f}.status-badge.stopped[data-v-340365b3],.status-badge.finished[data-v-340365b3]{background:#f7c94f20;color:#f7c94f}.winner-banner[data-v-340365b3]{font-size:1.25rem;font-weight:800;color:#f7c94f;text-align:center;padding:1rem 2rem;background:#f7c94f10;border-radius:10px;margin-bottom:1.5rem}.action-bar[data-v-340365b3]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem;min-height:48px}.countdown[data-v-340365b3]{font-size:1.25rem;font-weight:800;color:#4fca7f}.bracket-container[data-v-340365b3]{width:100%;overflow-x:auto}.bracket-scroll[data-v-340365b3]{display:flex;gap:1.5rem;min-width:min-content;padding:.5rem}.round-col[data-v-340365b3]{display:flex;flex-direction:column;gap:.75rem;min-width:180px}.round-label[data-v-340365b3]{font-size:.75rem;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.08em;text-align:center}.round-matches[data-v-340365b3]{display:flex;flex-direction:column;gap:.75rem;justify-content:space-around;flex:1}.match-card[data-v-340365b3]{display:flex;flex-direction:column;padding:.6rem .75rem;background:#1a1a22;border-radius:8px;border:1px solid #2a2a35;gap:.15rem;transition:border-color .2s}.match-card.mine[data-v-340365b3]{border-color:#4f8ef7;box-shadow:0 0 8px #4f8ef720}.match-card.bye[data-v-340365b3]{opacity:.5}.match-card.playing[data-v-340365b3]{border-color:#4fca7f}.match-card.ready[data-v-340365b3]{border-color:#f7c94f60}.match-player[data-v-340365b3]{font-size:.85rem;color:#aaa;font-weight:500}.match-player.winner[data-v-340365b3]{color:#4fca7f;font-weight:700}.match-vs[data-v-340365b3]{font-size:.65rem;color:#555;text-align:center}.match-status[data-v-340365b3]{font-size:.65rem;color:#666;margin-top:.15rem}.match-row[data-v-340365b3]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.3rem 0}
