.toast-container[data-v-d571f648]{position:fixed;top:20px;right:20px;z-index:9999;max-width:400px}.toast[data-v-d571f648]{display:flex;align-items:flex-start;flex-wrap:wrap;padding:16px;margin-bottom:12px;border-radius:8px;box-shadow:0 4px 12px #00000026;background:#fff;border-left:4px solid;min-width:320px;position:relative;overflow:hidden}.toast-success[data-v-d571f648]{border-left-color:#10b981;background-color:#ecfdf5}.toast-error[data-v-d571f648]{border-left-color:#ef4444;background-color:#fef2f2}.toast-warning[data-v-d571f648]{border-left-color:#f59e0b;background-color:#fffbeb}.toast-info[data-v-d571f648]{border-left-color:#3b82f6;background-color:#eff6ff}.toast-icon[data-v-d571f648]{flex-shrink:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;margin-right:12px;margin-top:2px}.toast-success .toast-icon[data-v-d571f648]{background-color:#10b981;color:#fff}.toast-error .toast-icon[data-v-d571f648]{background-color:#ef4444;color:#fff}.toast-warning .toast-icon[data-v-d571f648]{background-color:#f59e0b;color:#fff}.toast-info .toast-icon[data-v-d571f648]{background-color:#3b82f6;color:#fff}.toast-content[data-v-d571f648]{flex:1}.toast-title[data-v-d571f648]{font-weight:600;color:#111827;margin-bottom:4px;font-size:14px}.toast-message[data-v-d571f648]{color:#6b7280;font-size:14px;line-height:1.4}.toast-close[data-v-d571f648]{flex-shrink:0;background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-left:12px}.toast-close[data-v-d571f648]:hover{color:#6b7280}.toast-action[data-v-d571f648]{display:inline-block;margin-top:6px;padding:4px 12px;font-size:13px;font-weight:600;color:#fff;background:var(--primary-color, #7c3aed);border:none;border-radius:5px;cursor:pointer;transition:opacity .15s}.toast-action[data-v-d571f648]:hover{opacity:.85}.toast-progress[data-v-d571f648]{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0000000f}.toast-progress-bar[data-v-d571f648]{height:100%;width:100%;transform-origin:left;animation:toast-shrink-d571f648 linear forwards;border-radius:0 2px 2px 0}.toast-progress-success[data-v-d571f648]{background:#10b981}.toast-progress-error[data-v-d571f648]{background:#ef4444}.toast-progress-warning[data-v-d571f648]{background:#f59e0b}.toast-progress-info[data-v-d571f648]{background:#3b82f6}@keyframes toast-shrink-d571f648{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-enter-active[data-v-d571f648]{transition:all .3s ease-out}.toast-leave-active[data-v-d571f648]{transition:all .3s ease-in}.toast-enter-from[data-v-d571f648],.toast-leave-to[data-v-d571f648]{transform:translate(100%);opacity:0}.toast-move[data-v-d571f648]{transition:transform .3s ease}.arbot-logo[data-v-555259ba]{display:inline-flex;align-items:center;gap:6px}.arbot-logo-img[data-v-555259ba]{object-fit:contain;filter:drop-shadow(0 0 10px rgba(255,255,255,.25))}.arbot-logo.sm .arbot-logo-img[data-v-555259ba]{width:28px;height:28px}.arbot-logo.sm .arbot-logo-title[data-v-555259ba]{font-size:.95rem}.arbot-logo.md[data-v-555259ba]{flex-direction:column;gap:0}.arbot-logo.md .arbot-logo-img[data-v-555259ba]{width:80px;height:80px}.arbot-logo.md .arbot-logo-title[data-v-555259ba]{font-size:1.3rem;margin-top:2px}.arbot-logo.lg[data-v-555259ba]{flex-direction:column;gap:0}.arbot-logo.lg .arbot-logo-img[data-v-555259ba]{width:110px;height:110px}.arbot-logo.lg .arbot-logo-title[data-v-555259ba]{font-size:1.4rem;font-weight:800;margin-top:4px}.login-screen[data-v-ca3e3251]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px;position:relative;overflow:hidden}.login-screen[data-v-ca3e3251]:before{content:"";position:absolute;top:-200px;left:50%;transform:translate(-50%);width:800px;height:800px;background:radial-gradient(ellipse,rgba(91,33,182,.05) 0%,transparent 65%);pointer-events:none}.login-card[data-v-ca3e3251]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;padding:44px 36px 36px;width:100%;max-width:380px;box-shadow:var(--shadow-md);position:relative;z-index:1;text-align:center}.login-logo-wrap[data-v-ca3e3251]{margin-bottom:16px}.login-sub[data-v-ca3e3251]{font-size:13.5px;color:var(--text-secondary);margin-bottom:28px;line-height:1.6}.alert[data-v-ca3e3251]{text-align:left;margin-bottom:1rem}#google-signin-button[data-v-ca3e3251]{display:flex;justify-content:center;margin-top:.5rem}.loading-state[data-v-ca3e3251]{margin-top:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--text-secondary)}.login-footnote[data-v-ca3e3251]{margin-top:28px;font-size:12px;color:var(--text-secondary);line-height:1.6}.landing[data-v-5c84b120]{min-height:100vh;display:flex;flex-direction:column}.hero[data-v-5c84b120]{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:60px 24px;position:relative;overflow:hidden}.hero[data-v-5c84b120]:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:800px;height:600px;background:radial-gradient(ellipse at center top,rgba(167,139,250,.08) 0%,transparent 70%);pointer-events:none}.hero-inner[data-v-5c84b120]{position:relative;z-index:1;max-width:500px}.hero-logo[data-v-5c84b120]{margin-bottom:24px}.hero-title[data-v-5c84b120]{font-size:2.2rem;font-weight:800;color:var(--text-primary);margin-bottom:12px;letter-spacing:-.02em}.hero-sub[data-v-5c84b120]{font-size:1.05rem;color:var(--text-secondary);line-height:1.6;margin-bottom:32px}.hero-cta[data-v-5c84b120]{display:flex;flex-direction:column;align-items:center;gap:12px}.hero-loading[data-v-5c84b120]{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.9rem}.hero-error[data-v-5c84b120]{margin-top:16px}.features[data-v-5c84b120]{padding:48px 24px;background:var(--bg-secondary, #f5f5f5);border-top:1px solid var(--border, #e0e0e0)}.features-inner[data-v-5c84b120]{max-width:800px;margin:0 auto}.features-heading[data-v-5c84b120]{font-size:1.2rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:32px}.features-grid[data-v-5c84b120]{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card[data-v-5c84b120]{padding:20px;border:1px solid var(--border, #e0e0e0);background:var(--bg-primary, #fff)}.feature-num[data-v-5c84b120]{font-size:20px;font-weight:800;color:var(--status-success, #22c55e);margin-bottom:8px}.feature-card h3[data-v-5c84b120]{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.feature-card p[data-v-5c84b120]{font-size:13px;line-height:1.6;color:var(--text-secondary);margin:0}@media(max-width:600px){.features-grid[data-v-5c84b120]{grid-template-columns:1fr}}.landing-footer[data-v-5c84b120]{padding:20px 24px;text-align:center}.landing-footer p[data-v-5c84b120]{font-size:.8rem;color:var(--text-secondary);opacity:.5;margin:0 0 4px}.footer-link[data-v-5c84b120]{color:var(--text-secondary);text-decoration:none}.footer-link[data-v-5c84b120]:hover{text-decoration:underline}.footer-sep[data-v-5c84b120]{margin:0 6px}@media(max-width:480px){.hero-title[data-v-5c84b120]{font-size:1.6rem}}.onboarding[data-v-fd55c1f8]{max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.welcome-banner[data-v-fd55c1f8]{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem}.avatar-wrap[data-v-fd55c1f8]{flex-shrink:0}.avatar[data-v-fd55c1f8]{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color, #e5e7eb)}.avatar-fallback[data-v-fd55c1f8]{width:56px;height:56px;border-radius:50%;background:var(--primary, #6c63ff);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}.welcome-text h2[data-v-fd55c1f8]{margin:0 0 .2rem;font-size:1.2rem}.welcome-text p[data-v-fd55c1f8]{margin:0;font-size:.875rem;color:var(--text-secondary)}.steps[data-v-fd55c1f8]{display:flex;align-items:center;justify-content:center;gap:0;padding:0 .5rem}.step[data-v-fd55c1f8]{display:flex;flex-direction:column;align-items:center;gap:.35rem}.step-icon[data-v-fd55c1f8]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;border:2px solid var(--border-color, #e5e7eb);background:var(--card-bg, #fff);color:var(--text-secondary)}.step.done .step-icon[data-v-fd55c1f8]{background:#22c55e;border-color:#22c55e;color:#fff}.step.active .step-icon[data-v-fd55c1f8]{background:var(--primary, #6c63ff);border-color:var(--primary, #6c63ff);color:#fff}.step-label[data-v-fd55c1f8]{font-size:.75rem;color:var(--text-secondary);white-space:nowrap}.step.active .step-label[data-v-fd55c1f8]{color:var(--text-primary, #111);font-weight:600}.step.done .step-label[data-v-fd55c1f8]{color:#22c55e}.step-connector[data-v-fd55c1f8]{height:2px;width:48px;background:var(--border-color, #e5e7eb);margin-bottom:1.1rem;flex-shrink:0}.step-connector.done[data-v-fd55c1f8]{background:#22c55e}.setup-step-badge[data-v-fd55c1f8]{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--primary-color, #5b21b6);background:rgba(var(--primary-color-rgb, 91, 33, 182),.1);border-radius:20px;padding:.25rem .75rem;margin-bottom:.75rem}.setup-card h3[data-v-fd55c1f8]{margin:0 0 .5rem;font-size:1.1rem}.setup-desc[data-v-fd55c1f8]{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem;line-height:1.6}.tab-desc[data-v-fd55c1f8]{color:var(--text-secondary);font-size:.85rem;margin:0;line-height:1.6}.setup-links[data-v-fd55c1f8]{display:flex;flex-direction:column;align-items:center;gap:.5rem}.setup-external-link[data-v-fd55c1f8]{font-size:.78rem;color:var(--text-secondary);text-decoration:none;transition:color .15s}.setup-external-link[data-v-fd55c1f8]:hover{color:var(--primary-color, #5b21b6);text-decoration:underline}.mode-tabs[data-v-fd55c1f8]{display:flex;gap:0;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;margin-bottom:1rem}.mode-tab[data-v-fd55c1f8]{flex:1;padding:.55rem .5rem;font-size:.82rem;font-weight:600;text-align:center;border:none;background:var(--bg-secondary, #f9fafb);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.mode-tab+.mode-tab[data-v-fd55c1f8]{border-left:1px solid var(--border-color, #e5e7eb)}.mode-tab.active[data-v-fd55c1f8]{background:var(--primary, #6c63ff);color:#fff}.mode-tab[data-v-fd55c1f8]:hover:not(.active):not(:disabled){background:#6c63ff14}.mode-tab[data-v-fd55c1f8]:disabled{opacity:.5;cursor:not-allowed}.help-section[data-v-fd55c1f8]{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:.75rem 1rem;margin-bottom:1.25rem;font-size:.875rem}.help-section summary[data-v-fd55c1f8]{cursor:pointer;font-weight:600;color:var(--primary, #6c63ff);-webkit-user-select:none;user-select:none}.help-section ol[data-v-fd55c1f8]{margin:.75rem 0 0 1.2rem;padding:0;line-height:1.8;color:var(--text-secondary)}.help-section code[data-v-fd55c1f8]{background:var(--border-color, #e5e7eb);border-radius:3px;padding:1px 5px;font-family:monospace;font-size:.85em}.token-form[data-v-fd55c1f8]{display:flex;flex-direction:column;gap:.85rem}.form-group[data-v-fd55c1f8]{display:flex;flex-direction:column;gap:.35rem}.form-group label[data-v-fd55c1f8]{font-size:.875rem;font-weight:600;color:var(--text-primary, #111)}.form-group input[data-v-fd55c1f8]{width:100%;box-sizing:border-box}.optional[data-v-fd55c1f8]{font-weight:400;color:var(--text-secondary)}.label-row[data-v-fd55c1f8]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.35rem}.label-row label[data-v-fd55c1f8]{margin:0}.forgot-link[data-v-fd55c1f8]{font-size:.75rem;color:var(--primary-color, #6c63ff);text-decoration:none;background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.forgot-link[data-v-fd55c1f8]:hover{text-decoration:underline}.forgot-help-section[data-v-fd55c1f8]{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:.75rem 1rem;margin-top:.5rem;font-size:.82rem}.forgot-help-title[data-v-fd55c1f8]{margin:0 0 .4rem;font-weight:600;color:var(--text-primary, #111)}.forgot-help-steps[data-v-fd55c1f8]{margin:0 0 .5rem 1.2rem;padding:0;line-height:1.8;color:var(--text-secondary)}.forgot-help-note[data-v-fd55c1f8]{margin:0;color:var(--text-secondary);font-size:.78rem;font-style:italic}.field-note[data-v-fd55c1f8]{font-size:.72rem;color:var(--text-secondary);margin:.3rem 0 0;line-height:1.5}.btn-connect[data-v-fd55c1f8]{width:100%;margin-top:.25rem;min-height:44px}.toggle-link[data-v-fd55c1f8]{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.8rem;text-decoration:underline;padding:0;text-align:center}.toggle-link[data-v-fd55c1f8]:hover{color:var(--primary, #6c63ff)}.onboarding-footer[data-v-fd55c1f8]{text-align:center;padding-bottom:.5rem}.btn-link[data-v-fd55c1f8]{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.8rem;text-decoration:underline;padding:0}.btn-link[data-v-fd55c1f8]:hover{color:var(--text-primary, #111)}.resend-row[data-v-fd55c1f8]{text-align:center}.resend-btn[data-v-fd55c1f8]{font-size:.78rem}.resend-btn[data-v-fd55c1f8]:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.gym-picker-label[data-v-fd55c1f8]{font-size:.875rem;font-weight:600;color:var(--text-primary, #111);margin:0 0 .75rem}.gym-picker-list[data-v-fd55c1f8]{list-style:none;margin:0 0 .5rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.btn-gym-pick[data-v-fd55c1f8]{width:100%;text-align:left;padding:.75rem 1rem;border-radius:2px;border:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);font-size:.9rem;color:var(--text-primary, #111);cursor:pointer;transition:border-color .15s,background .15s;min-height:44px;display:flex;align-items:center;gap:.5rem}.btn-gym-pick[data-v-fd55c1f8]:hover:not(:disabled){border-color:var(--primary, #6c63ff);background:#6c63ff0f}.btn-gym-pick[data-v-fd55c1f8]:disabled{opacity:.6;cursor:not-allowed}.gym-pick-info[data-v-fd55c1f8]{display:flex;flex-direction:column;gap:2px;min-width:0}.gym-pick-name[data-v-fd55c1f8]{font-weight:600;font-size:.9rem}.gym-pick-detail[data-v-fd55c1f8]{font-size:.75rem;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-gym-back[data-v-fd55c1f8]{background:none;border:none;cursor:pointer;color:var(--text-secondary, #666);font-size:.8rem;text-decoration:underline;padding:0;text-align:center;min-height:44px;font-family:inherit}.btn-gym-back[data-v-fd55c1f8]:hover{color:var(--text-primary, #111)}.gym-url-step[data-v-fd55c1f8]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem 0 .75rem;gap:.35rem}.gym-url-step-icon[data-v-fd55c1f8]{font-size:2rem;line-height:1;margin-bottom:.25rem}.gym-url-step-title[data-v-fd55c1f8]{font-size:1rem;font-weight:700;color:var(--text-primary, #111);margin:0}.gym-url-step-desc[data-v-fd55c1f8]{font-size:.85rem;color:var(--text-secondary);margin:0;max-width:340px}.gym-search-group[data-v-fd55c1f8],.gym-search-wrap[data-v-fd55c1f8]{position:relative}.input-spinner[data-v-fd55c1f8]{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid var(--border-color, #e5e7eb);border-top-color:var(--primary, #6c63ff);border-radius:50%;animation:spin-fd55c1f8 .6s linear infinite;pointer-events:none}@keyframes spin-fd55c1f8{to{transform:translateY(-50%) rotate(360deg)}}.gym-results-count[data-v-fd55c1f8]{font-size:.72rem;color:var(--primary, #6c63ff);margin:.25rem 0 0;font-weight:600}.gym-no-results[data-v-fd55c1f8]{font-size:.78rem;color:var(--text-secondary);margin:.25rem 0 0;font-style:italic}.gym-search-hint[data-v-fd55c1f8]{font-size:.72rem;color:var(--text-secondary);margin:.4rem 0 0;line-height:1.5}.gym-search-hint strong[data-v-fd55c1f8]{color:var(--primary, #6c63ff)}.gym-suggestions[data-v-fd55c1f8]{position:absolute;top:100%;left:0;right:0;background:var(--card-bg, #1e2030);border:1px solid var(--border-color, #3a3f55);border-radius:8px;margin:4px 0 0;padding:4px 0;list-style:none;z-index:100;max-height:240px;overflow-y:auto}.gym-suggestions li[data-v-fd55c1f8]{display:flex;flex-direction:column;padding:10px 14px;cursor:pointer;transition:background .15s}.gym-suggestions li[data-v-fd55c1f8]:hover,.gym-suggestions li.active[data-v-fd55c1f8]{background:#6366f126}.gym-suggest-name[data-v-fd55c1f8]{font-size:.9rem;font-weight:500;color:var(--text-primary, #e2e8f0)}.gym-suggest-url[data-v-fd55c1f8]{font-size:.75rem;color:var(--text-secondary, #94a3b8);margin-top:1px}.gym-suggest-missing[data-v-fd55c1f8]{font-size:.8rem;color:var(--text-secondary, #94a3b8);border-top:1px solid var(--border-color, #3a3f55);margin-top:4px;padding-top:10px}.gym-suggest-missing strong[data-v-fd55c1f8]{color:var(--accent, #6366f1)}.gym-request-box[data-v-fd55c1f8]{background:#6366f114;border:1px solid rgba(99,102,241,.25);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:8px;font-size:.85rem;color:var(--text-secondary)}.gym-request-box p[data-v-fd55c1f8]{margin:0}.gym-request-input[data-v-fd55c1f8]{padding:8px 12px;border-radius:6px;border:1px solid var(--border-color, #3a3f55);background:var(--input-bg, #141624);color:var(--text-primary, #e2e8f0);font-size:1rem}.gym-request-sent[data-v-fd55c1f8]{color:#4ade80;font-size:.82rem}@media(max-width:600px){.onboarding[data-v-fd55c1f8]{max-width:calc(100vw - 32px)}.steps[data-v-fd55c1f8]{gap:0;padding:0}.step-connector[data-v-fd55c1f8]{width:24px}.step-label[data-v-fd55c1f8]{font-size:.65rem}.setup-card[data-v-fd55c1f8],.welcome-banner[data-v-fd55c1f8]{padding:1rem}.gym-suggestions[data-v-fd55c1f8]{max-height:180px;-webkit-overflow-scrolling:touch}.gym-search-wrap[data-v-fd55c1f8]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:24px;pointer-events:none;background:linear-gradient(transparent,var(--card-bg, #1e2030));border-radius:0 0 8px 8px;z-index:101;opacity:0;transition:opacity .15s}.gym-search-wrap[data-v-fd55c1f8]:has(.gym-suggestions):after{opacity:1}}.sub-page[data-v-5747359c]{max-width:720px;margin:0 auto;text-align:center}.sub-hero[data-v-5747359c]{margin-bottom:2rem}.sub-hero-icon[data-v-5747359c]{font-size:2.5rem;margin-bottom:.5rem}.sub-hero h2[data-v-5747359c]{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary)}.sub-hero-desc[data-v-5747359c]{color:var(--text-secondary);font-size:1rem;line-height:1.65;margin:0}.plans-grid[data-v-5747359c]{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}@media(max-width:560px){.plans-grid[data-v-5747359c]{grid-template-columns:1fr}.sub-hero h2[data-v-5747359c]{font-size:1.4rem}.sub-page[data-v-5747359c]{max-width:calc(100vw - 32px)}.plan-card[data-v-5747359c]{padding:1.25rem 1rem}}.plan-card[data-v-5747359c]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:1.75rem 1.5rem 1.5rem;display:flex;flex-direction:column;align-items:center;position:relative;transition:transform .15s ease,box-shadow .15s ease}.plan-card[data-v-5747359c]:hover{transform:translateY(-2px)}.plan-featured[data-v-5747359c]{border-color:var(--primary-color)}.plan-ribbon[data-v-5747359c]{position:absolute;top:-1px;right:1.25rem;background:var(--primary-color);color:#fff;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .65rem;border-radius:0 0 8px 8px}.plan-icon[data-v-5747359c]{font-size:1.75rem;margin-bottom:.5rem}.plan-name[data-v-5747359c]{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.plan-price-row[data-v-5747359c]{display:flex;align-items:baseline;gap:.15rem;margin-bottom:.4rem}.plan-price-num[data-v-5747359c]{font-size:3rem;font-weight:800;line-height:1;color:var(--primary-color)}.plan-price-currency[data-v-5747359c]{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.plan-price-per[data-v-5747359c]{font-size:.9rem;color:var(--text-secondary)}.plan-tagline[data-v-5747359c]{font-size:.8rem;color:var(--text-secondary);margin-bottom:1rem}.plan-perks[data-v-5747359c]{list-style:none;padding:0;margin:0 0 1.5rem;text-align:left;width:100%}.plan-perks li[data-v-5747359c]{padding:.22rem 0;font-size:.85rem;color:var(--text-secondary)}.plan-perks li[data-v-5747359c]:before{content:"✓ ";color:var(--primary-color);font-weight:700}.btn-cta[data-v-5747359c],.btn-outline[data-v-5747359c]{width:100%;padding:.8rem 1rem;font-size:.95rem;font-weight:600;border-radius:10px;cursor:pointer;border:none;transition:all .15s ease;min-height:44px;display:flex;align-items:center;justify-content:center;margin-top:auto}.btn-cta[data-v-5747359c]{background:var(--primary-color);color:#fff}.btn-cta[data-v-5747359c]:hover:not(:disabled){opacity:.88}.btn-outline[data-v-5747359c]{background:transparent;border:2px solid var(--border-color);color:var(--text-primary)}.btn-outline[data-v-5747359c]:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.btn-cta[data-v-5747359c]:disabled,.btn-outline[data-v-5747359c]:disabled{opacity:.5;cursor:not-allowed}.spinner-inline[data-v-5747359c]{width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-5747359c .7s linear infinite;display:inline-block}@keyframes spin-5747359c{to{transform:rotate(360deg)}}.sub-footer[data-v-5747359c]{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.sep[data-v-5747359c]{color:var(--text-secondary);opacity:.4}.link-btn[data-v-5747359c]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.85rem;padding:.5rem;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:2px}.link-btn[data-v-5747359c]:hover{color:var(--text-primary)}.alert[data-v-5747359c]{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;text-align:left}.alert-error[data-v-5747359c]{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.confirming-state[data-v-5747359c]{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--text-secondary);padding:2.5rem 0;font-size:1rem}.modal-overlay[data-v-5747359c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[data-v-5747359c]{background:var(--bg-primary, #fff);border-radius:16px;width:100%;max-width:640px;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-5747359c]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.modal-title[data-v-5747359c]{font-weight:700;font-size:1rem;color:var(--text-primary)}.modal-close[data-v-5747359c]{background:none;border:none;font-size:1.4rem;line-height:1;color:var(--text-secondary);cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%}.modal-close[data-v-5747359c]:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body[data-v-5747359c]{overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.how-steps[data-v-5747359c]{list-style:none;padding:0;margin:0;width:100%;display:flex;flex-direction:column;gap:1rem}.how-step[data-v-5747359c]{display:flex;align-items:flex-start;gap:.85rem;text-align:left}.how-step-num[data-v-5747359c]{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--primary-color);color:#fff;font-weight:700;font-size:.85rem}.how-step-content[data-v-5747359c]{flex:1;min-width:0}.how-step-title[data-v-5747359c]{font-weight:700;font-size:.95rem;color:var(--text-primary);margin-bottom:.2rem}.how-step-desc[data-v-5747359c]{font-size:.85rem;color:var(--text-secondary);line-height:1.55;margin:0}.fade-enter-active[data-v-5747359c],.fade-leave-active[data-v-5747359c]{transition:opacity .2s}.fade-enter-from[data-v-5747359c],.fade-leave-to[data-v-5747359c]{opacity:0}.gyms-loading[data-v-add46333]{display:flex;justify-content:center;padding:2rem}.spinner-lg[data-v-add46333]{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin-add46333 .9s linear infinite}@keyframes spin-add46333{to{transform:rotate(360deg)}}.spinner-sm[data-v-add46333]{width:13px;height:13px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin-add46333 .8s linear infinite;flex-shrink:0}.page-head[data-v-add46333]{margin-bottom:1.25rem}.page-title[data-v-add46333]{font-size:1rem;font-weight:800;color:var(--text-primary)}.page-sub[data-v-add46333]{font-size:.76rem;color:var(--text-secondary);margin-top:2px}.gyms-empty[data-v-add46333]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;text-align:center;color:var(--text-secondary);font-size:.85rem;border:1px dashed var(--border-color);border-radius:12px;margin-bottom:1rem}.gyms-empty-icon[data-v-add46333]{color:var(--text-secondary);opacity:.45;margin-bottom:.25rem}.gyms-empty-title[data-v-add46333]{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:0}.gyms-empty-hint[data-v-add46333]{font-size:.8rem;color:var(--text-secondary);margin:0 0 .25rem;max-width:300px;line-height:1.5}.btn-primary-sm[data-v-add46333]{padding:.5rem 1.25rem;background:var(--primary-color);color:#fff;border:none;border-radius:9px;font-size:.8rem;font-weight:700;cursor:pointer}.gym-list[data-v-add46333]{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.gym-card[data-v-add46333]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden}.gym-card.default-gym[data-v-add46333]{border-color:var(--primary-color);border-width:1.5px;box-shadow:0 2px 12px rgba(var(--primary-color-rgb),.12)}.gym-head[data-v-add46333]{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem}.gym-avatar[data-v-add46333]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:800;color:var(--primary-color);flex-shrink:0}.gym-avatar.purple[data-v-add46333]{background:rgba(var(--primary-color-rgb),.12)}.gym-avatar.green[data-v-add46333]{background:var(--green-bg);color:var(--green)}.gym-avatar.red[data-v-add46333]{background:#ef44441f;color:#ef4444}.gym-info[data-v-add46333]{flex:1;min-width:0}.gym-name[data-v-add46333]{font-size:.9rem;font-weight:800;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.gym-email[data-v-add46333]{font-size:.73rem;color:var(--text-secondary);margin-top:.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.default-badge[data-v-add46333]{background:rgba(var(--primary-color-rgb),.12);color:var(--primary-color);font-size:.6rem;font-weight:800;padding:2px 7px;border-radius:99px;text-transform:uppercase;letter-spacing:.05em}.unavailable-badge[data-v-add46333]{background:#ef44441f;color:#ef4444;font-size:.6rem;font-weight:800;padding:2px 7px;border-radius:99px;text-transform:uppercase;letter-spacing:.05em}.gym-card.unavailable-gym[data-v-add46333]{border-color:#ef444440}.token-capability[data-v-add46333]{margin-top:2px}.capability-badge[data-v-add46333]{font-size:.55rem;font-weight:700;padding:1px 6px;border-radius:99px;text-transform:uppercase;letter-spacing:.04em}.capability-badge.can-register[data-v-add46333]{background:#22c55e1f;color:#16a34a}.capability-badge.cannot-register[data-v-add46333]{background:#ef44441a;color:#ef4444;cursor:help}.capability-badge.unknown-register[data-v-add46333]{background:#eab3081f;color:#ca8a04}.capability-badge.branded-app[data-v-add46333]{background:#6366f11a;color:#6366f1;cursor:help}.branded-app-notice[data-v-add46333]{font-size:.72rem;color:#6366f1;background:#6366f10f;border-radius:6px;padding:6px 10px;margin-top:4px;line-height:1.35}.gym-actions[data-v-add46333]{display:flex;gap:.4rem;align-items:center;flex-shrink:0}.gym-btn[data-v-add46333]{padding:.35rem .6rem;border:1px solid var(--border-color);background:none;border-radius:7px;font-size:.72rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .12s;white-space:nowrap}.gym-btn[data-v-add46333]:hover:not(:disabled){background:var(--bg-secondary)}.gym-btn.reconnect[data-v-add46333]{color:#f59e0b}.gym-btn.reconnect[data-v-add46333]:hover{background:#f59e0b1a;border-color:#f59e0b}.gym-btn.update[data-v-add46333]{color:var(--text-secondary)}.gym-btn.update[data-v-add46333]:hover{color:var(--primary-color);border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.06)}.gym-btn.set-default[data-v-add46333]{color:var(--primary-color)}.gym-btn.set-default[data-v-add46333]:hover{background:rgba(var(--primary-color-rgb),.1);border-color:var(--primary-color)}.gym-btn.danger[data-v-add46333]:hover{background:var(--red-bg);color:var(--red-line);border-color:var(--red-line)}.gym-btn[data-v-add46333]:disabled{opacity:.4;cursor:not-allowed}.reconnect-form[data-v-add46333]{border-top:1px solid var(--border-subtle);padding:.75rem 1rem}.add-section[data-v-add46333]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden}.add-toggle[data-v-add46333]{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;cursor:pointer;font-size:.83rem;font-weight:700;color:var(--text-secondary);transition:background .12s;background:none;border:none;width:100%;text-align:left}.add-toggle[data-v-add46333]:hover{background:var(--bg-secondary)}.plus[data-v-add46333]{width:22px;height:22px;border-radius:6px;background:rgba(var(--primary-color-rgb),.12);color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:800;flex-shrink:0}.add-form[data-v-add46333]{border-top:1px solid var(--border-subtle);padding:1rem}.add-form-header[data-v-add46333]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.add-form-title[data-v-add46333]{font-size:.88rem;font-weight:800;color:var(--text-primary)}.btn-close[data-v-add46333]{background:none;border:none;cursor:pointer;font-size:1.25rem;line-height:1;color:var(--text-secondary);padding:0 4px;border-radius:4px;transition:color .15s,background .15s}.btn-close[data-v-add46333]:hover{color:var(--red-line);background:var(--red-bg)}.add-desc[data-v-add46333]{font-size:.76rem;color:var(--text-secondary);margin-bottom:.85rem;line-height:1.5}.add-error[data-v-add46333]{background:var(--red-bg);border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:.6rem .8rem;font-size:.8rem;color:var(--red-line);margin-bottom:.75rem}.field[data-v-add46333]{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.65rem}.field label[data-v-add46333]{font-size:.72rem;font-weight:700;color:var(--text-primary)}.field input[data-v-add46333]{font-size:.84rem;padding:.55rem .7rem}.field-note[data-v-add46333]{font-size:.67rem;color:var(--text-secondary);line-height:1.4}.optional[data-v-add46333]{font-weight:400;color:var(--text-secondary)}.label-row[data-v-add46333]{display:flex;justify-content:space-between;align-items:baseline}.forgot[data-v-add46333]{font-size:.68rem;color:var(--primary-color);text-decoration:none}.forgot[data-v-add46333]:hover{text-decoration:underline}.btn-row[data-v-add46333]{display:flex;gap:.5rem;margin-top:.75rem}.btn-primary[data-v-add46333]{flex:1;padding:.58rem;border:none;border-radius:9px;background:var(--primary-color);color:#fff;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.2);transition:background .13s;display:flex;align-items:center;justify-content:center;gap:.4rem}.btn-primary[data-v-add46333]:hover:not(:disabled){background:var(--primary-dark)}.btn-primary[data-v-add46333]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-add46333]{padding:.58rem 1rem;border:1px solid var(--border-color);border-radius:9px;background:none;color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .12s}.btn-secondary[data-v-add46333]:hover:not(:disabled){background:var(--bg-secondary)}.btn-secondary[data-v-add46333]:disabled{opacity:.5;cursor:not-allowed}.toggle-link[data-v-add46333]{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:.72rem;text-decoration:underline;padding:.35rem 0 0;display:block;width:100%;text-align:center}.toggle-link[data-v-add46333]:hover{color:var(--primary-color)}.gym-picker[data-v-add46333]{margin-top:.25rem}.gym-picker-label[data-v-add46333]{font-size:.8rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.gym-picker-list[data-v-add46333]{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.5rem}.btn-gym-pick[data-v-add46333]{width:100%;text-align:left;padding:.6rem .85rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);font-size:.84rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:border-color .15s,background .15s;display:flex;align-items:center;gap:.5rem}.btn-gym-pick[data-v-add46333]:hover:not(:disabled){border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.05)}.btn-gym-pick[data-v-add46333]:disabled{opacity:.6;cursor:not-allowed}.mode-tabs[data-v-add46333]{display:flex;gap:.3rem;margin-bottom:.85rem;background:var(--bg-secondary);border-radius:10px;padding:3px}.mode-tab[data-v-add46333]{flex:1;padding:.38rem;border:none;border-radius:8px;background:none;font-size:.75rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s}.mode-tab.active[data-v-add46333]{background:var(--bg-primary);color:var(--primary-color);box-shadow:var(--shadow-sm)}.help-section[data-v-add46333]{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.65rem .85rem;margin-bottom:.75rem;font-size:.8rem}.help-section summary[data-v-add46333]{cursor:pointer;font-weight:700;color:var(--primary-color);-webkit-user-select:none;user-select:none}.help-section ol[data-v-add46333]{margin:.5rem 0 0 1.1rem;padding:0;line-height:1.7;color:var(--text-secondary)}.help-section code[data-v-add46333]{background:var(--border-color);border-radius:3px;padding:1px 4px;font-family:monospace;font-size:.85em}.welcome-overlay[data-v-2e045542]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn-2e045542 .2s ease}@keyframes fadeIn-2e045542{0%{opacity:0}to{opacity:1}}.welcome-modal[data-v-2e045542]{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:20px;padding:2.5rem 2rem 2rem;max-width:440px;width:100%;box-shadow:0 20px 60px #00000040;animation:slideUp-2e045542 .25s ease}@keyframes slideUp-2e045542{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.welcome-header[data-v-2e045542]{text-align:center;margin-bottom:1.75rem}.welcome-header h2[data-v-2e045542]{font-size:1.5rem;font-weight:800;color:var(--text-primary, #111);margin:0 0 .4rem}.welcome-sub[data-v-2e045542]{font-size:.9rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.welcome-steps[data-v-2e045542]{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.welcome-step[data-v-2e045542]{display:flex;align-items:flex-start;gap:.85rem}.welcome-step-num[data-v-2e045542]{width:32px;height:32px;border-radius:50%;background:var(--primary-color, #5b21b6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0;margin-top:2px}.welcome-step-body h3[data-v-2e045542]{font-size:.95rem;font-weight:700;color:var(--text-primary, #111);margin:0 0 .15rem}.welcome-step-body p[data-v-2e045542]{font-size:.82rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.welcome-cta[data-v-2e045542]{display:block;width:100%;padding:.85rem;border-radius:12px;border:none;background:var(--primary-color, #5b21b6);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background .15s ease,transform .1s ease;box-shadow:0 2px 10px #5b21b640}.welcome-cta[data-v-2e045542]:hover{background:var(--primary-dark, #4c1d95)}.welcome-cta[data-v-2e045542]:active{transform:scale(.98)}@media(max-width:480px){.welcome-modal[data-v-2e045542]{padding:2rem 1.5rem 1.5rem}.welcome-header h2[data-v-2e045542]{font-size:1.3rem}}.onboarding-wrap{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:32px 16px}.onboarding-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;padding:32px 24px;max-width:min(440px,calc(100vw - 32px));width:100%;text-align:center}.onboarding-icon{font-size:3rem;margin-bottom:16px}.onboarding-title{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.onboarding-sub{font-size:13px;color:var(--text-secondary);margin-bottom:24px}.onboarding-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:24px}.onboarding-step{display:flex;flex-direction:column;align-items:center;gap:4px}.onboarding-step-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid var(--border);background:var(--bg-primary);color:var(--text-secondary)}.onboarding-step.done .onboarding-step-icon{background:var(--status-success);border-color:var(--status-success);color:#fff}.onboarding-step.active .onboarding-step-icon{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}.onboarding-step-label{font-size:10px;color:var(--text-secondary);white-space:nowrap}.onboarding-step.active .onboarding-step-label{color:var(--text-primary);font-weight:600}.onboarding-step.done .onboarding-step-label{color:var(--status-success)}.onboarding-step-connector{height:2px;width:40px;background:var(--border);margin-bottom:16px;flex-shrink:0}.onboarding-step-connector.done{background:var(--status-success)}.onboarding-card .gyms-section{text-align:left}.btn-logout-link{margin-top:24px;background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:12px;text-decoration:underline;font-family:inherit}.btn-logout-link:hover{color:var(--status-error)}.payment-success-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px}.payment-success-check{margin-bottom:8px}.payment-check-svg circle{animation:payment-circle-in .4s ease-out}.payment-check-path{stroke-dasharray:40;stroke-dashoffset:40;animation:payment-check-draw .4s ease-out .3s forwards}@keyframes payment-circle-in{0%{transform:scale(0);transform-origin:center;opacity:0}to{transform:scale(1);transform-origin:center;opacity:1}}@keyframes payment-check-draw{to{stroke-dashoffset:0}}.payment-success-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.payment-success-desc{font-size:13px;color:var(--text-secondary);margin:0}.gym-switch-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:40vh;color:var(--text-secondary)}.gym-switch-label{font-size:12px;font-weight:600}.gym-dropdown-label{font-size:10px;color:var(--text-tertiary);margin-left:auto;text-transform:uppercase;letter-spacing:.3px}.auth-expired-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--status-warning-bg);border-bottom:1px solid var(--status-warning);color:var(--status-warning);font-size:12px;font-weight:600;flex-wrap:wrap}.auth-expired-text{text-align:center}.auth-expired-btn{padding:4px 12px;border-radius:2px;font-size:11px;font-weight:700;cursor:pointer;border:1px solid var(--status-warning);background:transparent;color:inherit;white-space:nowrap;font-family:inherit}.auth-expired-btn:hover{background:var(--status-warning);color:#fff}.payment-failure-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--status-error-bg);border-bottom:1px solid var(--status-error);color:var(--status-error);font-size:12px;font-weight:600;flex-wrap:wrap}.payment-failure-text{text-align:center}.payment-failure-btn{padding:4px 12px;border-radius:2px;font-size:11px;font-weight:700;cursor:pointer;border:1px solid var(--status-error);background:var(--status-error);color:#fff;white-space:nowrap;font-family:inherit}.payment-failure-btn:hover{opacity:.9}.referral-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.referral-panel{background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;padding:24px;max-width:420px;width:100%;position:relative}.referral-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.referral-panel-header h3{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.referral-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-secondary);line-height:1}.referral-desc{font-size:13px;color:var(--text-secondary);margin-bottom:16px;line-height:1.4}.referral-link-wrap{display:flex;gap:8px;margin-bottom:16px}.referral-link-input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:2px;font-size:12px;background:var(--bg-secondary);color:var(--text-primary);min-width:0;font-family:inherit}.referral-copy-btn{padding:8px 16px;border:none;border-radius:2px;background:var(--text-primary);color:var(--bg-primary);cursor:pointer;font-weight:600;font-size:12px;white-space:nowrap;font-family:inherit}.referral-copy-btn:hover{opacity:.9}.referral-loading{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);margin-bottom:16px}.referral-stats{display:flex;gap:24px;padding-top:16px;border-top:1px solid var(--border)}.referral-stat{display:flex;flex-direction:column;align-items:center}.referral-stat-num{font-size:20px;font-weight:700;color:var(--text-primary)}.referral-stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.stats-row[data-v-83eea15b]{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.stat-card[data-v-83eea15b]{border:1px solid var(--border, #e0e0e0);padding:16px;background:var(--bg-primary, #fff)}.stat-card+.stat-card[data-v-83eea15b]{border-left:none}.stat-number[data-v-83eea15b]{font-size:28px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--text-primary, #111)}.stat-label[data-v-83eea15b]{font-size:10px;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-weight:600}.stat-sub[data-v-83eea15b]{font-size:10px;color:var(--text-tertiary, #999);margin-top:4px}.stat-card.accent-green .stat-number[data-v-83eea15b]{color:var(--status-success, #22c55e)}.stat-card.accent-amber .stat-number[data-v-83eea15b]{color:var(--status-warning, #f59e0b)}.stat-card.accent-green[data-v-83eea15b]{border-bottom:2px solid var(--status-success, #22c55e)}.stat-card.accent-amber[data-v-83eea15b]{border-bottom:2px solid var(--status-warning, #f59e0b)}@media(max-width:768px){.stats-row[data-v-83eea15b]{grid-template-columns:repeat(2,1fr)}.stat-card[data-v-83eea15b]:nth-child(2){border-left:none}.stat-card[data-v-83eea15b]:nth-child(3){border-top:none;border-left:1px solid var(--border, #e0e0e0)}.stat-card[data-v-83eea15b]:nth-child(4){border-top:none;border-left:none}}.overview-view[data-v-cf5f1c61]{width:100%}.section-title[data-v-cf5f1c61]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-primary, #111);margin:0}.not-confirmed-tag[data-v-cf5f1c61]{font-size:9px;font-weight:600;color:var(--status-pending, #8b5cf6);text-transform:none;letter-spacing:0}.info-icon[data-v-cf5f1c61]{font-size:13px;color:var(--text-tertiary, #999);cursor:help;margin-left:4px;vertical-align:middle}.info-icon[data-v-cf5f1c61]:hover{color:var(--text-secondary, #666)}.section-link[data-v-cf5f1c61]{font-size:11px;color:var(--status-info, #3b82f6);text-decoration:none;cursor:pointer;font-weight:600}.section-link[data-v-cf5f1c61]:hover{text-decoration:underline}.section-header[data-v-cf5f1c61]{display:flex;align-items:center;justify-content:space-between;width:100%}.upcoming-section[data-v-cf5f1c61]{margin-top:16px;border:1px solid var(--border, #e0e0e0);background:var(--bg-primary, #fff)}.upcoming-header[data-v-cf5f1c61]{padding:12px 16px;border-bottom:1px solid var(--border, #e0e0e0)}.upcoming-loading[data-v-cf5f1c61],.upcoming-empty[data-v-cf5f1c61]{padding:24px 16px;text-align:center;font-size:12px;color:var(--text-secondary, #666);display:flex;align-items:center;justify-content:center;gap:8px}.upcoming-list[data-v-cf5f1c61]{padding:0}.upcoming-item[data-v-cf5f1c61]{display:flex;align-items:center;gap:12px;padding:8px 16px;height:44px;border-bottom:1px solid var(--border-light, #eee);position:relative}.upcoming-item[data-v-cf5f1c61]:last-child{border-bottom:none}.upcoming-item[data-v-cf5f1c61]:hover{background:var(--hover, #fafafa)}.upcoming-bar[data-v-cf5f1c61]{width:3px;height:28px;flex-shrink:0;border-radius:1px}.upcoming-bar.registered[data-v-cf5f1c61]{background:var(--status-success, #22c55e)}.upcoming-bar.waitlisted[data-v-cf5f1c61]{background:var(--status-warning, #f59e0b)}.upcoming-date[data-v-cf5f1c61]{width:44px;min-width:44px;text-align:center;flex-shrink:0}.upcoming-date-day[data-v-cf5f1c61]{font-size:16px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-primary, #111)}.upcoming-date-label[data-v-cf5f1c61]{font-size:9px;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.3px;line-height:1;margin-top:2px}.upcoming-info[data-v-cf5f1c61]{flex:1;min-width:0}.upcoming-name[data-v-cf5f1c61]{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary, #111)}.upcoming-meta[data-v-cf5f1c61]{font-size:11px;color:var(--text-secondary, #666);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-right[data-v-cf5f1c61]{display:flex;align-items:center;gap:8px;flex-shrink:0}.upcoming-footer[data-v-cf5f1c61]{padding:8px 16px;border-top:1px solid var(--border-light, #eee);text-align:right}.pill[data-v-cf5f1c61]{font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap}.pill-info[data-v-cf5f1c61]{color:var(--status-info, #3b82f6);background:var(--status-info-bg, rgba(59, 130, 246, .1))}.pill-warning-pulse[data-v-cf5f1c61]{color:var(--status-warning, #f59e0b);background:var(--status-warning-bg, rgba(245, 158, 11, .1));animation:pulse-amber-cf5f1c61 2s ease-in-out infinite}@keyframes pulse-amber-cf5f1c61{0%,to{opacity:1}50%{opacity:.7}}.badge[data-v-cf5f1c61]{font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap}.badge-success[data-v-cf5f1c61]{color:var(--status-success, #22c55e);background:var(--status-success-bg, rgba(34, 197, 94, .1))}.badge-warning[data-v-cf5f1c61]{color:var(--status-warning, #f59e0b);background:var(--status-warning-bg, rgba(245, 158, 11, .1))}.badge-pending[data-v-cf5f1c61]{color:var(--status-pending, #8b5cf6);background:var(--status-pending-bg, rgba(139, 92, 246, .1))}.badge-error[data-v-cf5f1c61]{color:var(--status-error, #ef4444);background:var(--status-error-bg, rgba(239, 68, 68, .1))}.two-col[data-v-cf5f1c61]{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:16px}.col-panel[data-v-cf5f1c61]{border:1px solid var(--border, #e0e0e0);background:var(--bg-primary, #fff)}.col-panel+.col-panel[data-v-cf5f1c61]{border-left:none}.col-panel-header[data-v-cf5f1c61]{padding:12px 16px;border-bottom:1px solid var(--border, #e0e0e0)}.col-panel-body[data-v-cf5f1c61]{padding:0}.col-empty[data-v-cf5f1c61]{padding:24px 16px;text-align:center;font-size:12px;color:var(--text-secondary, #666)}.rule-item[data-v-cf5f1c61]{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--border-light, #eee)}.rule-item[data-v-cf5f1c61]:last-child{border-bottom:none}.rule-item[data-v-cf5f1c61]:hover{background:var(--hover, #fafafa)}.rule-accent[data-v-cf5f1c61]{width:3px;height:28px;background:var(--status-success, #22c55e);flex-shrink:0;border-radius:1px}.rule-info[data-v-cf5f1c61]{flex:1;min-width:0}.rule-name[data-v-cf5f1c61]{font-size:12px;font-weight:600;color:var(--text-primary, #111);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rule-meta[data-v-cf5f1c61]{font-size:11px;color:var(--text-secondary, #666);margin-top:1px}.autoreg-item[data-v-cf5f1c61]{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--border-light, #eee)}.autoreg-item[data-v-cf5f1c61]:last-child{border-bottom:none}.autoreg-item[data-v-cf5f1c61]:hover{background:var(--hover, #fafafa)}.autoreg-bar[data-v-cf5f1c61]{width:3px;height:28px;background:var(--status-pending, #8b5cf6);flex-shrink:0;border-radius:1px}.autoreg-info[data-v-cf5f1c61]{flex:1;min-width:0}.autoreg-name[data-v-cf5f1c61]{font-size:12px;font-weight:600;color:var(--text-primary, #111);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autoreg-meta[data-v-cf5f1c61]{font-size:11px;color:var(--text-secondary, #666);margin-top:1px}.autoreg-right[data-v-cf5f1c61]{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-cancel[data-v-cf5f1c61]{width:24px;height:24px;border:1px solid var(--border, #e0e0e0);background:none;color:var(--text-secondary, #666);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:2px}.btn-cancel[data-v-cf5f1c61]:hover{border-color:var(--status-error, #ef4444);color:var(--status-error, #ef4444)}.btn-cancel-confirm[data-v-cf5f1c61],.btn-cancel-deny[data-v-cf5f1c61]{height:24px;padding:0 8px;border-radius:2px;font-size:10px;font-weight:700;cursor:pointer;border:1px solid transparent}.btn-cancel-confirm[data-v-cf5f1c61]{background:var(--status-error-bg, rgba(239, 68, 68, .1));border-color:var(--status-error, #ef4444);color:var(--status-error, #ef4444)}.btn-cancel-confirm[data-v-cf5f1c61]:hover{background:#ef444433}.btn-cancel-deny[data-v-cf5f1c61]{background:var(--bg-secondary, #f5f5f5);border-color:var(--border, #e0e0e0);color:var(--text-secondary, #666)}.regs-section[data-v-cf5f1c61]{margin-top:16px;border:1px solid var(--border, #e0e0e0);background:var(--bg-primary, #fff)}.regs-header-bar[data-v-cf5f1c61]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border, #e0e0e0)}.month-nav[data-v-cf5f1c61]{display:flex;align-items:center;gap:4px}.month-btn[data-v-cf5f1c61]{background:none;border:1px solid var(--border, #e0e0e0);color:var(--text-primary, #111);cursor:pointer;padding:4px 8px;font-family:inherit;font-size:11px;display:flex;align-items:center;border-radius:2px}.month-btn[data-v-cf5f1c61]:hover:not(:disabled){background:var(--hover, #fafafa)}.month-btn[data-v-cf5f1c61]:disabled{opacity:.4;cursor:not-allowed}.month-btn-text[data-v-cf5f1c61]{font-size:10px;font-weight:600;padding:4px 8px}.month-name[data-v-cf5f1c61]{font-size:12px;font-weight:600;min-width:100px;text-align:center;color:var(--text-primary, #111)}.regs-loading[data-v-cf5f1c61]{padding:24px 16px;text-align:center;display:flex;align-items:center;justify-content:center}.regs-empty[data-v-cf5f1c61]{padding:24px 16px;text-align:center;font-size:12px;color:var(--text-secondary, #666)}.regs-list[data-v-cf5f1c61]{padding:0}.reg-item[data-v-cf5f1c61]{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--border-light, #eee)}.reg-item[data-v-cf5f1c61]:last-child{border-bottom:none}.reg-item[data-v-cf5f1c61]:hover{background:var(--hover, #fafafa)}.reg-bar[data-v-cf5f1c61]{width:3px;height:28px;flex-shrink:0;border-radius:1px}.reg-bar.confirmed[data-v-cf5f1c61]{background:var(--status-success, #22c55e)}.reg-bar.waitlist[data-v-cf5f1c61]{background:var(--status-warning, #f59e0b)}.reg-bar.cancelled[data-v-cf5f1c61]{background:var(--status-error, #ef4444)}.reg-date[data-v-cf5f1c61]{width:36px;text-align:center;flex-shrink:0}.reg-date-day[data-v-cf5f1c61]{font-size:16px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--text-primary, #111)}.reg-date-label[data-v-cf5f1c61]{font-size:9px;color:var(--text-secondary, #666);text-transform:uppercase;line-height:1;margin-top:2px}.reg-info[data-v-cf5f1c61]{flex:1;min-width:0}.reg-name[data-v-cf5f1c61]{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary, #111)}.reg-meta[data-v-cf5f1c61]{font-size:11px;color:var(--text-secondary, #666);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reg-time[data-v-cf5f1c61]{font-size:12px;color:var(--text-secondary, #666);flex-shrink:0;font-variant-numeric:tabular-nums;width:40px;text-align:right}.regs-pagination[data-v-cf5f1c61]{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-top:1px solid var(--border-light, #eee)}.page-info[data-v-cf5f1c61]{font-size:11px;color:var(--text-secondary, #666);font-weight:600}.spinner-sm[data-v-cf5f1c61]{width:16px;height:16px;border:2px solid var(--border, #e0e0e0);border-top-color:var(--text-primary, #111);border-radius:50%;animation:spin-cf5f1c61 .8s linear infinite}@keyframes spin-cf5f1c61{to{transform:rotate(360deg)}}@media(max-width:768px){.two-col[data-v-cf5f1c61]{grid-template-columns:1fr}.col-panel+.col-panel[data-v-cf5f1c61]{border-left:1px solid var(--border, #e0e0e0);border-top:none}.upcoming-item[data-v-cf5f1c61]{padding:8px 12px}.upcoming-meta[data-v-cf5f1c61]{display:none}.reg-item[data-v-cf5f1c61]{padding:8px 12px}.reg-time[data-v-cf5f1c61]{display:none}}.cal[data-v-6f6b9ce1]{--bg-primary: #ffffff;--bg-card: #f9fafb;--bg-card-hover: #f3f4f6;--bg-weekend: #f7f7f8;--text-primary: #1c1916;--text-secondary: #6b6259;--text-muted: #9ca3af;--accent: #7c3aed;--accent-dim: rgba(124, 58, 237, .08);--accent-glow: rgba(124, 58, 237, .18);--registered: #16a34a;--future-registered: #7c3aed;--waitlist: #d97706;--autoreg: #7c3aed;--full: #dc2626;--available: #2563eb;--past: #9ca3af;--border: rgba(0,0,0,.08);--border-hover: rgba(0,0,0,.15);--radius: 10px;--radius-sm: 6px;--transition: .18s ease;--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);padding:0 0 2rem;min-height:400px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased}[data-theme=dark] .cal[data-v-6f6b9ce1]{--bg-primary: #0f0f0f;--bg-card: #1a1a1a;--bg-card-hover: #242424;--bg-weekend: #141414;--text-primary: #e8e8e8;--text-secondary: #888;--text-muted: #555;--accent: #a78bfa;--accent-dim: rgba(167, 139, 250, .12);--accent-glow: rgba(167, 139, 250, .25);--registered: #4ade80;--future-registered: #a78bfa;--waitlist: #fbbf24;--autoreg: #a78bfa;--full: #f87171;--available: #60a5fa;--past: #444;--border: rgba(255,255,255,.07);--border-hover: rgba(255,255,255,.14)}.toast[data-v-6f6b9ce1]{position:fixed;top:72px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:var(--radius);font-size:.85rem;font-weight:600;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);max-width:90vw}.toast-success[data-v-6f6b9ce1]{background:#16a34a1a;border:1px solid rgba(22,163,74,.2);color:var(--registered)}.toast-error[data-v-6f6b9ce1]{background:#dc26261a;border:1px solid rgba(220,38,38,.2);color:var(--full)}[data-theme=dark] .toast-success[data-v-6f6b9ce1]{background:#10b98126;border-color:#10b9814d}[data-theme=dark] .toast-error[data-v-6f6b9ce1]{background:#ef444426;border-color:#ef44444d}.toast-icon[data-v-6f6b9ce1]{display:flex;align-items:center;flex-shrink:0}.toast-msg[data-v-6f6b9ce1]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast-fade-enter-active[data-v-6f6b9ce1],.toast-fade-leave-active[data-v-6f6b9ce1]{transition:all .3s ease}.toast-fade-enter-from[data-v-6f6b9ce1],.toast-fade-leave-to[data-v-6f6b9ce1]{opacity:0;transform:translate(-50%) translateY(-12px)}.schedule-header[data-v-6f6b9ce1]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--border);background:var(--bg-primary)}.schedule-title[data-v-6f6b9ce1]{font-size:15px;font-weight:700;color:var(--text-primary)}.schedule-nav[data-v-6f6b9ce1]{display:flex;align-items:center;gap:4px}.schedule-nav-btn[data-v-6f6b9ce1]{background:none;border:1px solid var(--border);color:var(--text-primary);cursor:pointer;padding:4px 8px;font-size:11px;font-weight:600;font-family:inherit;border-radius:0;transition:background .1s}.schedule-nav-btn[data-v-6f6b9ce1]:hover:not(:disabled){background:var(--bg-card-hover)}.schedule-nav-btn[data-v-6f6b9ce1]:disabled{opacity:.4;cursor:not-allowed}.schedule-nav-btn.today-btn[data-v-6f6b9ce1]{border-color:var(--text-primary)}.schedule-header-right[data-v-6f6b9ce1]{display:flex;align-items:center;gap:8px}.cal-header[data-v-6f6b9ce1],.cal-header-left[data-v-6f6b9ce1],.cal-header-right[data-v-6f6b9ce1],.cal-title[data-v-6f6b9ce1]{display:none}.sessions-pill[data-v-6f6b9ce1]{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap}.sessions-green[data-v-6f6b9ce1]{background:#16a34a14;border:1px solid rgba(22,163,74,.18);color:var(--registered)}.sessions-amber[data-v-6f6b9ce1]{background:#d977060f;border:1px solid rgba(217,119,6,.15);color:var(--waitlist)}.sessions-red[data-v-6f6b9ce1]{background:#dc26260f;border:1px solid rgba(220,38,38,.15);color:var(--full)}[data-theme=dark] .sessions-green[data-v-6f6b9ce1]{background:#4ade801a;border-color:#4ade8033}[data-theme=dark] .sessions-amber[data-v-6f6b9ce1]{background:#fbbf241a;border-color:#fbbf2433}[data-theme=dark] .sessions-red[data-v-6f6b9ce1]{background:#f871711a;border-color:#f8717133}.cal-legend[data-v-6f6b9ce1]{display:flex;align-items:center;gap:1rem;padding:0 0 .6rem;flex-wrap:wrap}.cal-legend-item[data-v-6f6b9ce1]{display:flex;align-items:center;gap:5px;font-size:.7rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.cal-legend-dot[data-v-6f6b9ce1]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cal-legend-dot-registered[data-v-6f6b9ce1]{background:var(--registered);box-shadow:0 0 4px #16a34a4d}[data-theme=dark] .cal-legend-dot-registered[data-v-6f6b9ce1]{box-shadow:0 0 4px #4ade8080}.cal-legend-dot-waitlist[data-v-6f6b9ce1]{background:var(--waitlist)}.cal-legend-dot-autoreg[data-v-6f6b9ce1]{background:var(--autoreg)}.cal-legend-dot-available[data-v-6f6b9ce1]{background:var(--available);opacity:.8}.cal-filter[data-v-6f6b9ce1]{position:relative}.cal-filter-select[data-v-6f6b9ce1]{-moz-appearance:none;appearance:none;-webkit-appearance:none;font-size:.78rem;font-weight:600;padding:0 28px 0 12px;height:36px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition);letter-spacing:.01em;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.cal-filter-select[data-v-6f6b9ce1]:hover{background-color:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-hover)}.cal-filter-select[data-v-6f6b9ce1]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.cal-filter-select option[data-v-6f6b9ce1]{background:var(--bg-card);color:var(--text-primary)}.cal-nav[data-v-6f6b9ce1]{display:flex;align-items:center;gap:4px}.cal-nav-btn[data-v-6f6b9ce1]{background:none;border:1px solid var(--border);color:var(--text-primary);cursor:pointer;padding:4px 8px;font-size:11px;font-weight:600;font-family:inherit;border-radius:0;display:flex;align-items:center;justify-content:center;transition:background .1s}.cal-nav-btn[data-v-6f6b9ce1]:hover:not(:disabled){background:var(--bg-card-hover)}.cal-nav-btn[data-v-6f6b9ce1]:disabled{opacity:.4;cursor:not-allowed}.cal-today-btn[data-v-6f6b9ce1]{font-size:11px;font-weight:600;padding:4px 8px;border:1px solid var(--text-primary);background:none;color:var(--text-primary);cursor:pointer;border-radius:0;transition:background .1s;font-family:inherit}.cal-today-btn[data-v-6f6b9ce1]:hover:not(:disabled){background:var(--bg-card-hover)}.cal-today-btn[data-v-6f6b9ce1]:disabled{opacity:.4;cursor:not-allowed}.branded-app-banner[data-v-6f6b9ce1]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;margin-bottom:.75rem;background:#6366f10f;border:1px solid rgba(99,102,241,.15);border-radius:8px;color:#6366f1;font-size:.8rem;font-weight:500}.branded-app-banner svg[data-v-6f6b9ce1]{flex-shrink:0;stroke:#6366f1}.cal-grid-wrap[data-v-6f6b9ce1]{width:100%;border:1px solid var(--border);border-top:none;background:var(--bg-primary)}.cal-weekday-row[data-v-6f6b9ce1]{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border);margin-bottom:0}.cal-weekday-cell[data-v-6f6b9ce1]{text-align:center;padding:8px 4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);border-right:1px solid var(--border)}.cal-weekday-cell[data-v-6f6b9ce1]:last-child{border-right:none}.cal-weekend-header[data-v-6f6b9ce1]{color:var(--text-muted);opacity:.7}.cal-week-row[data-v-6f6b9ce1]{display:grid;grid-template-columns:repeat(7,1fr)}.cal-day-cell[data-v-6f6b9ce1]{min-height:120px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:4px;cursor:pointer;transition:background .1s;position:relative;display:flex;flex-direction:column;gap:2px;overflow:hidden}.cal-day-cell[data-v-6f6b9ce1]:nth-child(7n){border-right:none}.cal-day-cell[data-v-6f6b9ce1]:hover{background:var(--bg-card-hover)}.cal-day-weekend[data-v-6f6b9ce1]{background:var(--bg-weekend)}.cal-day-weekend[data-v-6f6b9ce1]:hover{background:var(--bg-card-hover)}.cal-day-outside[data-v-6f6b9ce1]{opacity:.35}.cal-day-outside[data-v-6f6b9ce1]:hover{opacity:.5}.cal-day-past[data-v-6f6b9ce1]{opacity:.35;filter:saturate(.4);cursor:default}.cal-day-past[data-v-6f6b9ce1]:hover{background:inherit}.cal-day-today[data-v-6f6b9ce1]{background:var(--status-info-bg, rgba(59, 130, 246, .1))}.cal-day-today[data-v-6f6b9ce1]:hover{background:#3b82f626}[data-theme=dark] .cal-day-today[data-v-6f6b9ce1]{background:#60a5fa1f}[data-theme=dark] .cal-day-today[data-v-6f6b9ce1]:hover{background:#60a5fa2e}.cal-day-selected[data-v-6f6b9ce1]{outline:2px solid var(--text-primary);outline-offset:-2px;opacity:1!important}.cal-day-num[data-v-6f6b9ce1]{font-size:12px;font-weight:600;color:var(--text-primary);padding:2px 4px;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:0;flex-shrink:0}.cal-day-num-today[data-v-6f6b9ce1]{background:var(--day-active-bg, var(--text-primary, #111));color:var(--day-active-text, #fff);display:inline-block;width:22px;height:22px;line-height:22px;text-align:center;border-radius:2px;font-weight:700}.cell-status-dot[data-v-6f6b9ce1]{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%}.cell-status-dot.dot-registered[data-v-6f6b9ce1]{background:var(--status-success, var(--registered))}.cell-status-dot.dot-waitlisted[data-v-6f6b9ce1]{background:var(--status-warning, var(--waitlist))}.cell-status-dot.dot-future[data-v-6f6b9ce1]{background:var(--status-pending, var(--autoreg))}.cal-day-pills[data-v-6f6b9ce1]{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0;overflow:hidden}.cal-pill[data-v-6f6b9ce1]{border-radius:0;padding:2px 4px 2px 6px;margin-top:2px;font-size:10px;font-weight:500;line-height:1.4;border-left:2px solid var(--status-gray, #9ca3af);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--transition);display:flex;align-items:center;gap:4px}.cal-pill-dot[data-v-6f6b9ce1]{display:none}.cal-pill-text[data-v-6f6b9ce1]{opacity:1;overflow:hidden;text-overflow:ellipsis}.cal-pill[data-v-6f6b9ce1]:hover{background:var(--bg-card-hover)}.cal-pill-registered[data-v-6f6b9ce1],.cal-pill-future-registered[data-v-6f6b9ce1]{border-left-color:var(--status-success, var(--registered));color:var(--status-success, var(--registered));font-weight:600;background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-waitlist[data-v-6f6b9ce1]{border-left-color:var(--status-warning, var(--waitlist));color:var(--status-warning, var(--waitlist));font-weight:600;background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-autoreg[data-v-6f6b9ce1]{border-left-color:var(--status-pending, var(--autoreg));color:var(--status-pending, var(--autoreg));font-weight:600;background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-full[data-v-6f6b9ce1]{color:var(--text-secondary);background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-available[data-v-6f6b9ce1]{color:var(--text-primary);background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-past[data-v-6f6b9ce1]{color:var(--text-muted);background:none;border-top:none;border-right:none;border-bottom:none}.cal-pill-more[data-v-6f6b9ce1]{font-size:9px;font-weight:600;color:var(--text-muted);padding:2px 4px;margin-top:2px;cursor:pointer}.cal-pill-more[data-v-6f6b9ce1]:hover{text-decoration:underline}.cal-day-dots[data-v-6f6b9ce1]{display:flex;gap:3px;align-items:center;flex-wrap:wrap;padding-top:2px}.cal-dot[data-v-6f6b9ce1]{width:5px;height:5px;border-radius:50%;flex-shrink:0}.cal-dot-registered[data-v-6f6b9ce1],.cal-dot-future-registered[data-v-6f6b9ce1]{background:var(--registered);width:7px;height:7px;box-shadow:0 0 3px #16a34a4d}[data-theme=dark] .cal-dot-registered[data-v-6f6b9ce1],[data-theme=dark] .cal-dot-future-registered[data-v-6f6b9ce1]{box-shadow:0 0 4px #4ade8080}.cal-dot-waitlist[data-v-6f6b9ce1]{background:var(--waitlist);width:6px;height:6px}.cal-dot-autoreg[data-v-6f6b9ce1]{background:var(--autoreg);width:6px;height:6px}.cal-dot-available[data-v-6f6b9ce1]{background:var(--available);opacity:.7}.cal-dot-count[data-v-6f6b9ce1]{font-size:.55rem;font-weight:600;color:var(--text-muted)}.cal-day-empty-hint[data-v-6f6b9ce1]{font-size:.6rem;color:var(--text-muted);opacity:.3;padding-top:2px}.cal-drawer-overlay[data-v-6f6b9ce1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:299;background:#0000008c;display:flex;align-items:center;justify-content:center}.cal-drawer-card[data-v-6f6b9ce1]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:440px;max-height:70vh;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border);border-radius:0;box-shadow:0 8px 32px #0003;z-index:300;transition:transform var(--transition-slow),opacity var(--transition-slow)}[data-theme=dark] .cal-drawer-card[data-v-6f6b9ce1]{box-shadow:0 8px 32px #00000080}@media(max-width:768px){.cal-drawer-card[data-v-6f6b9ce1]{width:calc(100vw - 32px)}}.cal-drawer-inner[data-v-6f6b9ce1]{padding:0}.cal-drawer-header[data-v-6f6b9ce1]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-primary);z-index:1}.cal-drawer-date-info[data-v-6f6b9ce1]{display:flex;align-items:center;gap:12px}.cal-drawer-day-num[data-v-6f6b9ce1]{font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1}.cal-drawer-date-text[data-v-6f6b9ce1]{display:flex;flex-direction:column;gap:2px}.cal-drawer-dow[data-v-6f6b9ce1]{font-size:.88rem;font-weight:500;color:var(--text-primary)}.cal-drawer-count[data-v-6f6b9ce1]{font-size:.72rem;color:var(--text-secondary)}.cal-drawer-close[data-v-6f6b9ce1]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.cal-drawer-close[data-v-6f6b9ce1]:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-hover)}.cal-drawer-loading[data-v-6f6b9ce1]{display:flex;align-items:center;justify-content:center;gap:10px;padding:2rem 0;font-size:.82rem;color:var(--text-secondary)}.cal-drawer-empty[data-v-6f6b9ce1]{text-align:center;padding:2rem 0;font-size:.85rem;color:var(--text-muted)}.cal-drawer-day-error[data-v-6f6b9ce1]{text-align:center;padding:1.5rem 0;color:var(--full);font-size:.85rem}.cal-drawer-day-error p[data-v-6f6b9ce1]{margin-bottom:.75rem}.cal-drawer-workouts[data-v-6f6b9ce1]{display:flex;flex-direction:column;gap:0;background:var(--bg-primary)}.wk-row[data-v-6f6b9ce1]{border-radius:0;border:none;border-bottom:1px solid var(--border);background:var(--bg-primary);transition:background .1s;overflow:hidden;cursor:pointer;min-height:44px}.wk-row[data-v-6f6b9ce1]:last-child{border-bottom:none}.wk-row[data-v-6f6b9ce1]:hover{background:var(--bg-card-hover)}.wk-row-status-green[data-v-6f6b9ce1]{background:var(--status-success-bg, rgba(34, 197, 94, .1))}.wk-row-status-green[data-v-6f6b9ce1]:hover{background:#22c55e26}.wk-row-status-amber[data-v-6f6b9ce1]{background:var(--status-warning-bg, rgba(245, 158, 11, .1))}.wk-row-status-amber[data-v-6f6b9ce1]:hover{background:#f59e0b26}.wk-row-status-purple[data-v-6f6b9ce1]{background:var(--status-pending-bg, rgba(139, 92, 246, .1))}.wk-row-status-purple[data-v-6f6b9ce1]:hover{background:#8b5cf626}.wk-row-status-intent[data-v-6f6b9ce1]{background:var(--status-pending-bg, rgba(139, 92, 246, .1))}.wk-row-status-intent[data-v-6f6b9ce1]:hover{background:#8b5cf626}.wk-row-expanded[data-v-6f6b9ce1]{background:var(--bg-card-hover)}.wk-divider[data-v-6f6b9ce1]{display:flex;align-items:center;gap:10px;margin:8px 0}.wk-divider[data-v-6f6b9ce1]:before,.wk-divider[data-v-6f6b9ce1]:after{content:"";flex:1;height:1px;background:var(--border)}.wk-divider-label[data-v-6f6b9ce1]{font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.wk-row-main[data-v-6f6b9ce1]{display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:44px}.wk-status-icon[data-v-6f6b9ce1]{font-size:.7rem;flex-shrink:0;width:14px;text-align:center;line-height:1}.status-icon-registered[data-v-6f6b9ce1]{color:var(--registered)}.status-icon-future-registered[data-v-6f6b9ce1]{color:var(--future-registered)}.status-icon-waitlist[data-v-6f6b9ce1]{color:var(--waitlist)}.status-icon-autoreg[data-v-6f6b9ce1]{color:var(--autoreg)}.status-icon-past[data-v-6f6b9ce1]{color:var(--past)}.status-icon-full[data-v-6f6b9ce1]{color:var(--full)}.status-icon-available[data-v-6f6b9ce1]{color:var(--available)}.wk-time[data-v-6f6b9ce1]{font-size:.82rem;font-weight:700;color:var(--text-primary);white-space:nowrap;flex-shrink:0}.wk-name[data-v-6f6b9ce1]{font-size:.85rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.wk-coach[data-v-6f6b9ce1]{font-size:.73rem;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.wk-location[data-v-6f6b9ce1]{font-size:.73rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.wk-row-right[data-v-6f6b9ce1]{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.wk-spots[data-v-6f6b9ce1]{font-size:.7rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.wk-badge[data-v-6f6b9ce1]{font-size:.65rem;font-weight:700;padding:3px 8px;border-radius:var(--radius-sm);white-space:nowrap;letter-spacing:.02em}.badge-registered[data-v-6f6b9ce1]{background:#16a34a1a;color:#15803d;border:1px solid rgba(22,163,74,.2)}.badge-waitlist[data-v-6f6b9ce1]{background:#d9770614;color:#92400e}.badge-intent[data-v-6f6b9ce1]{background:#6d28d914;color:#5b21b6}.badge-viewonly[data-v-6f6b9ce1]{background:#6b728014;color:var(--text-muted)}[data-theme=dark] .badge-registered[data-v-6f6b9ce1]{background:#4ade8033;color:#4ade80;border-color:#4ade8059}[data-theme=dark] .badge-waitlist[data-v-6f6b9ce1]{background:#fbbf2426;color:#fbbf24}[data-theme=dark] .badge-intent[data-v-6f6b9ce1]{background:#818cf826;color:#a78bfa}[data-theme=dark] .badge-viewonly[data-v-6f6b9ce1]{background:#6b728026}.wk-cap-track[data-v-6f6b9ce1]{height:3px;background:var(--border)}.wk-cap-fill[data-v-6f6b9ce1]{height:100%;transition:width .4s ease;border-radius:0 2px 2px 0}.cap-default[data-v-6f6b9ce1]{background:linear-gradient(90deg,var(--accent),var(--available))}.cap-green[data-v-6f6b9ce1]{background:linear-gradient(90deg,#22c55e,var(--registered))}.cap-amber[data-v-6f6b9ce1]{background:linear-gradient(90deg,#f59e0b,var(--waitlist))}.cap-red[data-v-6f6b9ce1]{background:linear-gradient(90deg,#ef4444,var(--full))}.wk-detail-card[data-v-6f6b9ce1]{padding:14px 16px;position:relative;background:var(--bg-card-hover);border-radius:0;border-left:3px solid var(--border);border-top:1px solid var(--border)}.wk-detail-registered[data-v-6f6b9ce1]{border-left:3px solid #16a34a;background:#16a34a0d;box-shadow:0 0 10px #16a34a0a}.wk-detail-waitlisted[data-v-6f6b9ce1]{border-left:3px solid #d97706;background:#d977060a}[data-theme=dark] .wk-detail-registered[data-v-6f6b9ce1]{border-left-color:#4ade80;background:#4ade8012;box-shadow:0 0 16px #4ade800f}[data-theme=dark] .wk-detail-waitlisted[data-v-6f6b9ce1]{border-left-color:#fbbf24;background:#fbbf240d}.wk-expanded-loading[data-v-6f6b9ce1]{position:absolute;top:0;right:0;bottom:0;left:0;background:#a78bfa0d;display:flex;align-items:center;justify-content:center;z-index:5;border-radius:8px}.wk-detail-top[data-v-6f6b9ce1]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.wk-detail-name[data-v-6f6b9ce1]{font-size:.88rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wk-detail-time[data-v-6f6b9ce1]{font-size:.72rem;font-weight:700;color:var(--accent);background:#a78bfa1a;border-radius:6px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.wk-detail-meta[data-v-6f6b9ce1]{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary);margin-bottom:10px}.wk-detail-sep[data-v-6f6b9ce1]{opacity:.5}.wk-detail-capacity[data-v-6f6b9ce1]{margin-bottom:10px}.wk-detail-cap-text[data-v-6f6b9ce1]{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:4px}.wk-detail-cap-full[data-v-6f6b9ce1]{color:var(--full);font-weight:600}.wk-detail-cap-track[data-v-6f6b9ce1]{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.wk-detail-cap-fill[data-v-6f6b9ce1]{height:100%;border-radius:2px;transition:width .3s ease}.wk-detail-status[data-v-6f6b9ce1]{margin-bottom:10px}.wk-detail-badge[data-v-6f6b9ce1]{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;border-radius:99px}.wk-detail-badge-green[data-v-6f6b9ce1]{background:#16a34a1a;color:#15803d;border:1px solid rgba(22,163,74,.25);font-weight:800}.wk-detail-badge-amber[data-v-6f6b9ce1]{background:#d9770614;color:#92400e}.wk-detail-badge-purple[data-v-6f6b9ce1]{background:#6d28d914;color:#5b21b6}.wk-detail-badge-gray[data-v-6f6b9ce1]{background:#6b728014;color:var(--text-secondary)}[data-theme=dark] .wk-detail-badge-green[data-v-6f6b9ce1]{background:#4ade8038;color:#4ade80;border-color:#4ade8066}[data-theme=dark] .wk-detail-badge-amber[data-v-6f6b9ce1]{background:#fbbf241f;color:#fbbf24}[data-theme=dark] .wk-detail-badge-purple[data-v-6f6b9ce1]{background:#818cf81f;color:#a78bfa}[data-theme=dark] .wk-detail-badge-gray[data-v-6f6b9ce1]{background:#80808014}.wk-action-error[data-v-6f6b9ce1]{font-size:.8rem;color:var(--full);padding:8px 12px;background:#f8717114;border-radius:8px;margin-bottom:8px;border:1px solid rgba(248,113,113,.15)}.wk-detail-btn[data-v-6f6b9ce1]{width:100%;font-size:.82rem;font-weight:600;padding:10px 18px;border-radius:var(--radius);border:none;cursor:pointer;transition:all var(--transition);text-align:center;min-height:42px;display:flex;align-items:center;justify-content:center}.wk-detail-btn[data-v-6f6b9ce1]:disabled{opacity:.5;cursor:not-allowed}.wk-detail-btn-primary[data-v-6f6b9ce1]{background:var(--accent);color:#fff}.wk-detail-btn-primary[data-v-6f6b9ce1]:hover:not(:disabled){background:#9370f0;box-shadow:0 2px 12px #a78bfa4d}.wk-detail-btn-danger[data-v-6f6b9ce1]{background:transparent;color:var(--full);border:1px solid rgba(248,113,113,.3)}.wk-detail-btn-danger[data-v-6f6b9ce1]:hover:not(:disabled){background:#f8717114}.wk-detail-btn-amber[data-v-6f6b9ce1]{background:#fbbf2414;color:var(--waitlist);border:1px solid rgba(251,191,36,.18)}.wk-detail-btn-amber[data-v-6f6b9ce1]:hover:not(:disabled){background:#fbbf2426}.wk-detail-btn-amber-outline[data-v-6f6b9ce1]{background:transparent;color:var(--waitlist);border:1px solid rgba(251,191,36,.3)}.wk-detail-btn-amber-outline[data-v-6f6b9ce1]:hover:not(:disabled){background:#fbbf2414}.wk-detail-viewonly[data-v-6f6b9ce1]{font-size:.78rem;color:var(--text-secondary);text-align:center;padding:8px 0}.action-btn[data-v-6f6b9ce1]{font-size:.82rem;font-weight:600;padding:10px 18px;border-radius:var(--radius);border:none;cursor:pointer;transition:all var(--transition);text-align:center;min-height:48px;display:flex;align-items:center;justify-content:center}.action-btn[data-v-6f6b9ce1]:disabled{opacity:.5;cursor:not-allowed}.action-btn-primary[data-v-6f6b9ce1]{background:var(--accent);color:#fff}.action-btn-primary[data-v-6f6b9ce1]:hover:not(:disabled){background:#9370f0;box-shadow:0 2px 12px #a78bfa4d}.action-btn-full[data-v-6f6b9ce1]{width:100%}.action-btn-sm[data-v-6f6b9ce1]{min-height:36px;padding:8px 14px;font-size:.78rem}.action-btn-danger[data-v-6f6b9ce1]{background:#f8717114;color:var(--full);border:1px solid rgba(248,113,113,.18)}.action-btn-danger[data-v-6f6b9ce1]:hover:not(:disabled){background:#f8717126}.action-btn-amber[data-v-6f6b9ce1]{background:#fbbf2414;color:var(--waitlist);border:1px solid rgba(251,191,36,.18)}.action-btn-amber[data-v-6f6b9ce1]:hover:not(:disabled){background:#fbbf2426}.action-btn-ghost[data-v-6f6b9ce1]{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.action-btn-ghost[data-v-6f6b9ce1]:hover:not(:disabled){background:var(--bg-card-hover)}.drawer-overlay-enter-active[data-v-6f6b9ce1]{transition:all var(--transition-slow)}.drawer-overlay-leave-active[data-v-6f6b9ce1]{transition:all .2s ease}.drawer-overlay-enter-from[data-v-6f6b9ce1]{opacity:0}.drawer-overlay-enter-from .cal-drawer-card[data-v-6f6b9ce1]{transform:scale(.92);opacity:0}.drawer-overlay-enter-to[data-v-6f6b9ce1]{opacity:1}.drawer-overlay-enter-to .cal-drawer-card[data-v-6f6b9ce1]{transform:scale(1);opacity:1}.drawer-overlay-leave-from[data-v-6f6b9ce1]{opacity:1}.drawer-overlay-leave-to[data-v-6f6b9ce1]{opacity:0}.drawer-overlay-leave-to .cal-drawer-card[data-v-6f6b9ce1]{transform:scale(.92);opacity:0}.expand-enter-active[data-v-6f6b9ce1],.expand-leave-active[data-v-6f6b9ce1]{transition:all .2s ease;overflow:hidden}.expand-enter-from[data-v-6f6b9ce1],.expand-leave-to[data-v-6f6b9ce1]{opacity:0;max-height:0;padding-top:0;padding-bottom:0}.expand-enter-to[data-v-6f6b9ce1],.expand-leave-from[data-v-6f6b9ce1]{opacity:1;max-height:500px}.month-slide-left-enter-active[data-v-6f6b9ce1],.month-slide-left-leave-active[data-v-6f6b9ce1],.month-slide-right-enter-active[data-v-6f6b9ce1],.month-slide-right-leave-active[data-v-6f6b9ce1]{transition:all .25s cubic-bezier(.4,0,.2,1)}.month-slide-left-enter-from[data-v-6f6b9ce1]{opacity:0;transform:translate(24px)}.month-slide-left-leave-to[data-v-6f6b9ce1],.month-slide-right-enter-from[data-v-6f6b9ce1]{opacity:0;transform:translate(-24px)}.month-slide-right-leave-to[data-v-6f6b9ce1]{opacity:0;transform:translate(24px)}.month-fade-enter-active[data-v-6f6b9ce1],.month-fade-leave-active[data-v-6f6b9ce1]{transition:opacity .2s ease}.month-fade-enter-from[data-v-6f6b9ce1],.month-fade-leave-to[data-v-6f6b9ce1]{opacity:0}@keyframes skeleton-pulse-6f6b9ce1{0%,to{opacity:1}50%{opacity:.4}}.cal-day-loading-label[data-v-6f6b9ce1]{font-size:9px;color:var(--text-tertiary);text-align:center;margin-top:2px}.cal-pill-skel[data-v-6f6b9ce1]{height:16px;border-radius:4px;background:var(--border);animation:skeleton-pulse-6f6b9ce1 1.5s ease-in-out infinite;width:80%}.cal-pill-skel-short[data-v-6f6b9ce1]{width:55%;animation-delay:.2s}.cal-day-skel-dots[data-v-6f6b9ce1]{display:flex;gap:4px;align-items:center;padding-top:2px}.cal-skel-dot[data-v-6f6b9ce1]{width:20px;height:6px;border-radius:3px;background:var(--border);animation:skeleton-pulse-6f6b9ce1 1.5s ease-in-out infinite}.cal-skel-dot[data-v-6f6b9ce1]:nth-child(2){animation-delay:.3s;width:14px}.cal-error[data-v-6f6b9ce1]{text-align:center;padding:3rem 1rem}.error-icon[data-v-6f6b9ce1]{color:var(--full);margin-bottom:.75rem}.error-msg[data-v-6f6b9ce1]{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.selection-bar[data-v-6f6b9ce1]{position:sticky;bottom:1rem;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin-top:1rem;background:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius);box-shadow:0 -2px 16px #0003;z-index:50}.selection-label[data-v-6f6b9ce1]{flex:1;font-size:.85rem;font-weight:600;color:var(--text-primary)}.result-card[data-v-6f6b9ce1]{margin-top:1rem;padding:.75rem 1rem;border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border);font-size:.85rem}.result-ok[data-v-6f6b9ce1]{color:var(--registered);font-weight:600}.result-skip[data-v-6f6b9ce1]{color:var(--waitlist);margin-top:.25rem}.result-err[data-v-6f6b9ce1]{color:var(--full);margin-top:.25rem}.result-err-item[data-v-6f6b9ce1]{display:block;margin-left:1rem;font-size:.8rem}.spinner-sm[data-v-6f6b9ce1]{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin-6f6b9ce1 .6s linear infinite}@keyframes spin-6f6b9ce1{to{transform:rotate(360deg)}}.mobile-sheet-overlay[data-v-6f6b9ce1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000080;display:flex;align-items:flex-end;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-sheet[data-v-6f6b9ce1]{width:100%;max-height:85vh;background:var(--bg-card);border-radius:16px 16px 0 0;display:flex;flex-direction:column;overflow:hidden}.mobile-sheet-handle-bar[data-v-6f6b9ce1]{display:flex;justify-content:center;padding:10px 0 6px;flex-shrink:0}.mobile-sheet-handle[data-v-6f6b9ce1]{width:36px;height:4px;border-radius:2px;background:var(--text-muted);opacity:.5}.mobile-sheet-scroll[data-v-6f6b9ce1]{flex:1;overflow-y:auto;padding:0 16px 24px;-webkit-overflow-scrolling:touch}.mobile-sheet .cal-drawer-header[data-v-6f6b9ce1]{padding:8px 16px 14px;margin-bottom:0;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-sheet .cal-drawer-workouts[data-v-6f6b9ce1]{padding-top:8px}.wk-card[data-v-6f6b9ce1]{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-primary);transition:all var(--transition);overflow:hidden;display:flex;flex-direction:row;margin-bottom:6px}.wk-card[data-v-6f6b9ce1]:hover{border-color:var(--border-hover);transform:translateY(-1px);box-shadow:0 4px 16px #00000026}.wk-card-expanded[data-v-6f6b9ce1]{border-color:var(--accent)!important;box-shadow:0 4px 24px #0003!important;transform:none!important}.wk-card-border[data-v-6f6b9ce1]{width:3px;flex-shrink:0}.wk-card-border.dot-registered[data-v-6f6b9ce1]{background:var(--registered)}.wk-card-border.dot-future-registered[data-v-6f6b9ce1]{background:var(--future-registered)}.wk-card-border.dot-waitlist[data-v-6f6b9ce1]{background:var(--waitlist)}.wk-card-border.dot-intent[data-v-6f6b9ce1]{background:var(--autoreg)}.wk-card-border.dot-past[data-v-6f6b9ce1]{background:var(--past)}.wk-card-border.dot-full[data-v-6f6b9ce1]{background:var(--full)}.wk-card-border.dot-neutral[data-v-6f6b9ce1]{background:transparent}.wk-card-body[data-v-6f6b9ce1]{flex:1;cursor:pointer;min-width:0}.wk-card-top[data-v-6f6b9ce1]{display:flex;align-items:center;gap:12px;padding:12px 14px}.wk-card-info[data-v-6f6b9ce1]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.wk-card-row1[data-v-6f6b9ce1]{display:flex;align-items:center;gap:8px;min-width:0}.wk-status-dot[data-v-6f6b9ce1]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.wk-status-dot.dot-registered[data-v-6f6b9ce1]{background:var(--registered)}.wk-status-dot.dot-future-registered[data-v-6f6b9ce1]{background:var(--future-registered)}.wk-status-dot.dot-waitlist[data-v-6f6b9ce1]{background:var(--waitlist)}.wk-status-dot.dot-intent[data-v-6f6b9ce1]{background:var(--autoreg)}.wk-status-dot.dot-past[data-v-6f6b9ce1]{background:var(--past)}.wk-status-dot.dot-full[data-v-6f6b9ce1]{background:var(--full)}.wk-status-dot.dot-neutral[data-v-6f6b9ce1]{background:var(--text-muted)}.wk-card-row2[data-v-6f6b9ce1]{font-size:.73rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:16px}.wk-card-right[data-v-6f6b9ce1]{display:flex;align-items:center;gap:8px;flex-shrink:0}.mobile-sheet-enter-active[data-v-6f6b9ce1]{transition:all .3s cubic-bezier(.4,0,.2,1)}.mobile-sheet-leave-active[data-v-6f6b9ce1]{transition:all .2s ease}.mobile-sheet-enter-from .mobile-sheet[data-v-6f6b9ce1],.mobile-sheet-leave-to .mobile-sheet[data-v-6f6b9ce1]{transform:translateY(100%)}.mobile-sheet-enter-from[data-v-6f6b9ce1],.mobile-sheet-leave-to[data-v-6f6b9ce1]{opacity:0}@media(max-width:768px){.cal-header[data-v-6f6b9ce1],.cal-header-right[data-v-6f6b9ce1]{display:none}.schedule-header[data-v-6f6b9ce1]{flex-wrap:wrap;gap:8px;padding:8px 12px}.schedule-title[data-v-6f6b9ce1]{font-size:13px;order:-1;width:100%}.schedule-header-right[data-v-6f6b9ce1]{display:none}.cal-day-cell[data-v-6f6b9ce1]{min-height:56px;padding:4px}.cal-day-num[data-v-6f6b9ce1]{font-size:10px}.cal-day-num-today[data-v-6f6b9ce1]{width:18px;height:18px;line-height:18px;font-size:10px}.cal-day-pills[data-v-6f6b9ce1],.cal-day-empty-hint[data-v-6f6b9ce1],.cal-drawer-overlay[data-v-6f6b9ce1]{display:none}.cal-title[data-v-6f6b9ce1]{font-size:1.25rem}.cal-legend[data-v-6f6b9ce1]{gap:.6rem;padding:0 0 .4rem}.cal-legend-item[data-v-6f6b9ce1]{font-size:.6rem;gap:3px}.cal-legend-dot[data-v-6f6b9ce1]{width:6px;height:6px}.wk-card-top[data-v-6f6b9ce1]{padding:10px 12px}.wk-name[data-v-6f6b9ce1]{font-size:.82rem}.wk-card-row2[data-v-6f6b9ce1]{padding-left:16px;font-size:.7rem}}@media(min-width:1200px){.cal-day-cell[data-v-6f6b9ce1]{min-height:130px;padding:4px 6px}.cal-pill[data-v-6f6b9ce1]{font-size:10px;padding:2px 4px}}.cal-day-cell.day-registered[data-v-6f6b9ce1]{background:var(--status-success-bg, rgba(34, 197, 94, .1))}.cal-day-cell.day-registered[data-v-6f6b9ce1]:hover{background:#22c55e26}.cal-day-cell.day-waitlisted[data-v-6f6b9ce1]{background:var(--status-warning-bg, rgba(245, 158, 11, .1))}.cal-day-cell.day-waitlisted[data-v-6f6b9ce1]:hover{background:#f59e0b26}.cal-day-cell.day-future[data-v-6f6b9ce1]{background:var(--status-pending-bg, rgba(139, 92, 246, .1))}.cal-day-cell.day-future[data-v-6f6b9ce1]:hover{background:#8b5cf626}.cal-day-cell.cal-day-today.day-registered[data-v-6f6b9ce1]{background:#22c55e26}.calendar-legend[data-v-6f6b9ce1]{display:flex;gap:16px;padding:8px 16px;border:1px solid var(--border);border-top:none;background:var(--bg-primary);font-size:11px;color:var(--text-secondary)}.legend-item[data-v-6f6b9ce1]{display:flex;align-items:center;gap:6px}.legend-swatch[data-v-6f6b9ce1]{width:10px;height:10px;border-radius:2px;flex-shrink:0}.legend-swatch.swatch-registered[data-v-6f6b9ce1]{background:var(--status-success, var(--registered))}.legend-swatch.swatch-waitlisted[data-v-6f6b9ce1]{background:var(--status-warning, var(--waitlist))}.legend-swatch.swatch-future[data-v-6f6b9ce1]{background:var(--status-pending, var(--autoreg))}.gyms-page[data-v-d8470653]{padding:1.5rem 1rem;display:flex;justify-content:center}.gyms-page-card[data-v-d8470653]{width:100%;max-width:560px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;padding:1.75rem;box-shadow:var(--shadow-sm)}.gyms-page-header[data-v-d8470653]{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.gyms-page-title[data-v-d8470653]{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.gyms-page-sub[data-v-d8470653]{font-size:.8rem;color:var(--text-secondary);margin:0}.gyms-info-note[data-v-d8470653]{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:.65rem .9rem;font-size:.78rem;color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.4}.gyms-info-icon[data-v-d8470653]{flex-shrink:0}.stats-row[data-v-aa566157]{--c-blue: #60a5fa;--c-amber: #fbbf24;--c-green: #4ade80;--c-slate: #94a3b8}[data-theme=light] .stats-row[data-v-aa566157]{--c-blue: #2563eb;--c-amber: #d97706;--c-green: #16a34a;--c-slate: #475569}.stats-row[data-v-aa566157]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat-card[data-v-aa566157]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:24px;transition:all .2s ease;cursor:default;position:relative}.stat-card[data-v-aa566157]:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:8px 8px 0 0}.stat-card.sc-blue[data-v-aa566157]:after{background:var(--c-blue)}.stat-card.sc-amber[data-v-aa566157]:after{background:var(--c-amber)}.stat-card.sc-green[data-v-aa566157]:after{background:var(--c-green)}.stat-card.sc-slate[data-v-aa566157]:after{background:var(--c-slate)}.stat-card[data-v-aa566157]:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.stat-label[data-v-aa566157]{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:8px}.stat-value[data-v-aa566157]{font-size:42px;font-weight:700;line-height:1.1;letter-spacing:-1px}.stat-value.val-blue[data-v-aa566157]{color:var(--c-blue)}.stat-value.val-amber[data-v-aa566157]{color:var(--c-amber)}.stat-value.val-green[data-v-aa566157]{color:var(--c-green)}.stat-value.val-slate[data-v-aa566157]{color:var(--c-slate)}@media(max-width:1100px){.stats-row[data-v-aa566157]{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.stats-row[data-v-aa566157]{grid-template-columns:1fr}.stat-value[data-v-aa566157]{font-size:32px}}.filters-panel[data-v-70c634b4]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:20px;transition:background .2s ease,border-color .2s ease;align-self:start}.filters-heading[data-v-70c634b4]{font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-primary);margin-bottom:20px}.filter-section[data-v-70c634b4]{margin-bottom:20px}.filter-section-title[data-v-70c634b4]{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px}.filter-checkboxes[data-v-70c634b4]{display:grid;grid-template-columns:1fr 1fr;gap:6px}.filter-check[data-v-70c634b4]{display:flex;align-items:center;gap:6px;cursor:pointer}.filter-check input[type=checkbox][data-v-70c634b4]{width:14px;height:14px;accent-color:var(--primary-color);cursor:pointer}.filter-check span[data-v-70c634b4]{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-empty[data-v-70c634b4]{font-size:12px;color:var(--text-secondary);font-style:italic}.filter-dates[data-v-70c634b4]{display:flex;flex-direction:column;gap:8px}.filter-date-group label[data-v-70c634b4]{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);display:block;margin-bottom:4px}.filter-date-group input[type=date][data-v-70c634b4]{width:100%;padding:6px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-size:12px;font-family:inherit;transition:border-color .2s ease,background .2s ease}.filter-date-group input[type=date][data-v-70c634b4]:focus{outline:none;border-color:var(--primary-color)}.btn-reset[data-v-70c634b4]{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:all .2s ease;margin-top:4px}.btn-reset[data-v-70c634b4]:hover{color:var(--text-primary);border-color:var(--text-secondary)}.chart-card[data-v-c103c002]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:24px;transition:background .2s ease,border-color .2s ease}.chart-card[data-v-c103c002]:hover{box-shadow:var(--shadow-sm)}.chart-title[data-v-c103c002]{font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-primary);margin-bottom:20px}.chart-empty[data-v-c103c002]{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:13px;font-style:italic}.line-chart-area[data-v-c103c002]{width:100%;height:280px;position:relative}.line-chart-area svg[data-v-c103c002]{width:100%;height:100%}.chart-x-labels[data-v-c103c002]{display:flex;justify-content:space-between;margin-top:8px}.chart-x-labels span[data-v-c103c002]{font-size:10px;color:var(--text-secondary);letter-spacing:.5px}.chart-y-labels[data-v-c103c002]{position:absolute;top:0;left:0;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:4px 0}.chart-y-labels span[data-v-c103c002]{font-size:10px;color:var(--text-secondary);letter-spacing:.5px}.grid-line[data-v-c103c002]{stroke-width:.5;stroke-dasharray:4 4;stroke:var(--border-color)}.chart-curve-stroke[data-v-c103c002]{stroke:var(--green-line, #10b981);stroke-width:2;fill:none}.chart-curve-fill[data-v-c103c002]{fill:#10a34a1f}[data-theme=dark] .chart-curve-fill[data-v-c103c002]{fill:#4ade8014}.charts-row[data-v-c4e9e5fd]{--c-blue: #60a5fa;--c-teal: #2dd4bf;--c-green: #4ade80;--c-amber: #fbbf24;--c-orange: #fb923c;--c-rose: #fb7185;--c-violet: #a78bfa;--c-slate: #94a3b8}[data-theme=light] .charts-row[data-v-c4e9e5fd]{--c-blue: #2563eb;--c-teal: #0d9488;--c-green: #16a34a;--c-amber: #d97706;--c-orange: #ea580c;--c-rose: #e11d48;--c-violet: #7c3aed;--c-slate: #475569}.charts-row[data-v-c4e9e5fd]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.chart-card[data-v-c4e9e5fd]{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:24px;transition:background .2s ease,border-color .2s ease}.chart-card[data-v-c4e9e5fd]:hover{box-shadow:var(--shadow-sm)}.chart-title[data-v-c4e9e5fd]{font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-primary);margin-bottom:20px}.chart-empty[data-v-c4e9e5fd]{text-align:center;padding:30px 20px;color:var(--text-secondary);font-size:12px;font-style:italic}.bar-chart[data-v-c4e9e5fd]{display:flex;flex-direction:column;gap:10px}.bar-item[data-v-c4e9e5fd]{display:flex;flex-direction:column;gap:4px}.bar-item-header[data-v-c4e9e5fd]{display:flex;justify-content:space-between;align-items:baseline}.bar-label[data-v-c4e9e5fd]{font-size:11px;color:var(--text-secondary);font-weight:500}.bar-value[data-v-c4e9e5fd]{font-size:11px;color:var(--text-secondary);font-weight:600}.bar-track[data-v-c4e9e5fd]{width:100%;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.bar-fill[data-v-c4e9e5fd]{height:100%;border-radius:4px;transition:width .5s ease}.bar-fill.fill-blue[data-v-c4e9e5fd]{background:var(--c-blue)}.bar-fill.fill-teal[data-v-c4e9e5fd]{background:var(--c-teal)}.bar-fill.fill-green[data-v-c4e9e5fd]{background:var(--c-green)}.bar-fill.fill-amber[data-v-c4e9e5fd]{background:var(--c-amber)}.bar-fill.fill-orange[data-v-c4e9e5fd]{background:var(--c-orange)}.bar-fill.fill-rose[data-v-c4e9e5fd]{background:var(--c-rose)}.bar-fill.fill-violet[data-v-c4e9e5fd]{background:var(--c-violet)}.bar-fill.fill-slate[data-v-c4e9e5fd]{background:var(--c-slate)}@media(max-width:1100px){.charts-row[data-v-c4e9e5fd]{grid-template-columns:1fr}}.data-info-bar[data-v-5eb52fcd]{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px 20px;margin-bottom:24px;transition:background .2s ease,border-color .2s ease}.data-info-bar-title[data-v-5eb52fcd]{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px;display:flex;align-items:center;gap:6px}.data-info-bar-title svg[data-v-5eb52fcd]{width:14px;height:14px;opacity:.6}.data-info-bar ul[data-v-5eb52fcd]{list-style:none;display:flex;flex-direction:column;gap:5px;padding:0;margin:0}.data-info-bar li[data-v-5eb52fcd]{font-size:12px;color:var(--text-secondary);line-height:1.5;padding-left:14px;position:relative}.data-info-bar li[data-v-5eb52fcd]:before{content:"•";position:absolute;left:0;color:var(--text-secondary)}.data-main-grid[data-v-5eb52fcd]{display:grid;grid-template-columns:280px 1fr;gap:24px;margin-bottom:28px}.data-content[data-v-5eb52fcd]{display:flex;flex-direction:column;gap:20px}@media(max-width:1100px){.data-main-grid[data-v-5eb52fcd]{grid-template-columns:1fr}}.legal-page[data-v-5a84c94e]{min-height:100vh;background:var(--bg-page);padding:40px 24px 60px}.legal-container[data-v-5a84c94e]{max-width:640px;margin:0 auto}.legal-nav[data-v-5a84c94e]{margin-bottom:24px}.legal-back[data-v-5a84c94e]{color:var(--text-secondary);text-decoration:none;font-size:13px}.legal-back[data-v-5a84c94e]:hover{text-decoration:underline}h1[data-v-5a84c94e]{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.legal-updated[data-v-5a84c94e]{font-size:12px;color:var(--text-tertiary);margin-bottom:24px}p[data-v-5a84c94e]{font-size:14px;line-height:1.7;color:var(--text-secondary);margin-bottom:12px}ul[data-v-5a84c94e]{padding-left:20px;margin-bottom:16px}li[data-v-5a84c94e]{font-size:14px;line-height:1.7;color:var(--text-secondary);margin-bottom:8px}a[data-v-5a84c94e]{color:var(--text-primary)}a[data-v-5a84c94e]:hover{text-decoration:underline}.legal-footer[data-v-5a84c94e]{margin-top:32px;padding-top:16px;border-top:1px solid var(--border);font-size:12px;color:var(--text-tertiary)}.legal-footer a[data-v-5a84c94e]{color:var(--text-tertiary)}.legal-footer a[data-v-5a84c94e]:hover{color:var(--text-primary)}.legal-footer-sep[data-v-5a84c94e]{margin:0 6px}.legal-page[data-v-09e01820]{min-height:100vh;background:var(--bg-page);padding:40px 24px 60px}.legal-container[data-v-09e01820]{max-width:640px;margin:0 auto}.legal-nav[data-v-09e01820]{margin-bottom:24px}.legal-back[data-v-09e01820]{color:var(--text-secondary);text-decoration:none;font-size:13px}.legal-back[data-v-09e01820]:hover{text-decoration:underline}h1[data-v-09e01820]{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.legal-updated[data-v-09e01820]{font-size:12px;color:var(--text-tertiary);margin-bottom:24px}p[data-v-09e01820]{font-size:14px;line-height:1.7;color:var(--text-secondary);margin-bottom:16px}a[data-v-09e01820]{color:var(--text-primary)}a[data-v-09e01820]:hover{text-decoration:underline}.legal-footer[data-v-09e01820]{margin-top:32px;padding-top:16px;border-top:1px solid var(--border);font-size:12px;color:var(--text-tertiary)}.legal-footer a[data-v-09e01820]{color:var(--text-tertiary)}.legal-footer a[data-v-09e01820]:hover{color:var(--text-primary)}.legal-footer-sep[data-v-09e01820]{margin:0 6px}:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-elevated: #ffffff;--bg-nav: #1a1a1a;--bg-page: #f5f5f5;--text-primary: #111111;--text-secondary: #666666;--text-tertiary: #999999;--border: #e0e0e0;--border-light: #eeeeee;--border-strong: #cccccc;--border-color: #e0e0e0;--border-subtle: #eeeeee;--status-success: #22c55e;--status-success-bg: rgba(34, 197, 94, .1);--status-warning: #f59e0b;--status-warning-bg: rgba(245, 158, 11, .1);--status-error: #ef4444;--status-error-bg: rgba(239, 68, 68, .1);--status-info: #3b82f6;--status-info-bg: rgba(59, 130, 246, .1);--status-pending: #8b5cf6;--status-pending-bg: rgba(139, 92, 246, .1);--status-gray: #9ca3af;--status-gray-bg: rgba(156, 163, 175, .1);--tab-active: #111111;--day-active-bg: #111111;--day-active-text: #ffffff;--hover: #fafafa;--toggle-bg: #555555;--toggle-knob: #ffffff;--avatar-bg: #e0e0e0;--avatar-text: #666666;--primary-color: #111111;--primary-dark: #000000;--primary-color-rgb: 17, 17, 17;--green: #22c55e;--green-bg: rgba(34, 197, 94, .1);--green-line: #22c55e;--amber: #f59e0b;--amber-bg: rgba(245, 158, 11, .1);--amber-line: #f59e0b;--red-line: #ef4444;--red-bg: rgba(239, 68, 68, .1);--gray-line: #e0e0e0;--shadow-sm: none;--shadow-md: none;--danger-color: #ef4444}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #222222;--bg-elevated: #2a2a2a;--bg-nav: #111111;--bg-page: #1a1a1a;--text-primary: #e0e0e0;--text-secondary: #888888;--text-tertiary: #555555;--border: #2a2a2a;--border-light: #252525;--border-strong: #444444;--border-color: #2a2a2a;--border-subtle: #252525;--status-success: #34d399;--status-success-bg: rgba(52, 211, 153, .12);--status-warning: #fbbf24;--status-warning-bg: rgba(251, 191, 36, .12);--status-error: #f87171;--status-error-bg: rgba(248, 113, 113, .12);--status-info: #60a5fa;--status-info-bg: rgba(96, 165, 250, .12);--status-pending: #a78bfa;--status-pending-bg: rgba(167, 139, 250, .12);--status-gray: #6b7280;--status-gray-bg: rgba(107, 114, 128, .12);--tab-active: #e0e0e0;--day-active-bg: #e0e0e0;--day-active-text: #1a1a1a;--hover: #252525;--toggle-bg: #555555;--toggle-knob: #1a1a1a;--avatar-bg: #333333;--avatar-text: #888888;--primary-color: #a78bfa;--primary-dark: #7c3aed;--primary-color-rgb: 167, 139, 250;--green: #34d399;--green-bg: rgba(52, 211, 153, .12);--green-line: #34d399;--amber: #fbbf24;--amber-bg: rgba(251, 191, 36, .12);--amber-line: #fbbf24;--red-line: #f87171;--red-bg: rgba(248, 113, 113, .12);--gray-line: #2a2a2a;--shadow-sm: none;--shadow-md: none;--danger-color: #f87171}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-page);color:var(--text-primary);font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1400px;margin:0 auto;padding:0}.dashboard-layout{display:block;max-width:1200px;margin:0 auto;padding:16px}.dashboard-main{min-width:0}.app-init-screen{min-height:100vh;display:flex;align-items:center;justify-content:center}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-navbar{background:var(--bg-nav);display:flex;align-items:center;padding:0 16px;height:48px;position:sticky;top:0;z-index:200;gap:0}.navbar-logo{display:flex;align-items:center;gap:6px;text-decoration:none;flex-shrink:0}.navbar-logo-text{font-weight:800;font-size:15px;color:#fff;letter-spacing:1.5px}.navbar-sep{width:1px;height:20px;background:#444;margin:0 16px;flex-shrink:0}.navbar-gym-wrap{position:relative;flex-shrink:0}.navbar-gym{display:flex;align-items:center;gap:8px;background:none;border:1px solid #444;color:#ccc;font-size:12px;padding:4px 12px;cursor:pointer;font-family:inherit;border-radius:2px;height:28px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.navbar-gym:hover{color:#fff;border-color:#666}.navbar-gym-dot{width:6px;height:6px;border-radius:50%;background:var(--status-success);flex-shrink:0}.navbar-gym-chevron{font-size:10px;opacity:.6;margin-left:4px}.gym-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-elevated);border:1px solid var(--border);min-width:220px;z-index:300}.gym-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 12px;cursor:pointer;font-size:12px;color:var(--text-primary);border-bottom:1px solid var(--border-light);background:none;border-top:none;border-left:none;border-right:none;font-family:inherit}.gym-dropdown-item:last-child{border-bottom:none}.gym-dropdown-item:hover{background:var(--hover)}.gym-dropdown-item.active{font-weight:700}.gym-dropdown-check{width:14px;font-size:11px;color:var(--status-success);flex-shrink:0}.gym-dropdown-item.unavailable{opacity:.45;cursor:not-allowed}.gym-dropdown-item.unavailable:hover{background:transparent}.gym-dropdown-reconnect{margin-left:auto;font-size:10px;color:var(--status-error);font-weight:600;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.navbar-spacer{flex:1}.navbar-sessions{display:flex;align-items:center;gap:4px;font-size:11px;color:#999;margin-right:12px;flex-shrink:0;border:1px solid #444;padding:2px 10px;border-radius:2px;height:28px}.navbar-sessions b{color:var(--status-success);font-weight:700;font-variant-numeric:tabular-nums}.navbar-sessions.sessions-green b{color:var(--status-success)}.navbar-sessions.sessions-amber{color:#d97706;border-color:#664d00}.navbar-sessions.sessions-amber b{color:var(--status-warning)}.navbar-sessions.sessions-red{color:#dc2626;border-color:#662020}.navbar-sessions.sessions-red b{color:var(--status-error)}.navbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.theme-toggle-group{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.theme-toggle{display:inline-block;width:34px;height:18px;background:var(--toggle-bg);border:none;border-radius:9px;position:relative;transition:background .15s;flex-shrink:0}.theme-toggle:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--toggle-knob);border-radius:50%;transition:transform .15s}[data-theme=dark] .theme-toggle:after{transform:translate(16px)}.theme-icon{color:#888;display:flex;align-items:center;flex-shrink:0}.avatar-wrapper{position:relative;flex-shrink:0}.avatar-btn{width:28px;height:28px;border-radius:50%;background:#444;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#ccc;font-family:inherit}.avatar-btn:hover{background:#555}.avatar-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-elevated);border:1px solid var(--border);min-width:200px;z-index:300}.avatar-menu-header{padding:12px;border-bottom:1px solid var(--border)}.avatar-menu-name{font-size:13px;font-weight:700;color:var(--text-primary)}.avatar-menu-email{font-size:11px;color:var(--text-secondary);margin-top:2px}.avatar-menu-item{padding:8px 12px;font-size:12px;color:var(--text-primary);cursor:pointer;border-bottom:1px solid var(--border-light)}.avatar-menu-item:last-child{border-bottom:none}.avatar-menu-item:hover{background:var(--hover)}.avatar-menu-item.danger{color:var(--status-error)}.tabs{border-bottom:1px solid var(--border);background:var(--bg-primary);padding:0 16px;position:sticky;top:48px;z-index:100;margin-bottom:0}.tab-list{list-style:none;display:flex;gap:0;padding:0;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-list::-webkit-scrollbar{display:none}.tab-button{display:inline-block;padding:10px 16px;font-size:12px;font-weight:600;color:var(--text-secondary);text-decoration:none;border-bottom:2px solid transparent;cursor:pointer;background:none;border-top:none;border-left:none;border-right:none;font-family:inherit;transition:color .1s;letter-spacing:.2px;white-space:nowrap;min-height:auto}.tab-button:hover{color:var(--text-primary)}.tab-button.active{color:var(--text-primary);border-bottom-color:var(--tab-active);background:none}.bottom-tabs{display:none}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:none;color:var(--text-secondary);font-size:9px;font-weight:600;cursor:pointer;font-family:inherit;text-transform:uppercase;letter-spacing:.3px;padding:4px;text-decoration:none}.bottom-tab.active{color:var(--text-primary)}.bottom-tab svg{opacity:.6}.bottom-tab.active svg{opacity:1}.status-registered{color:var(--status-success);background:var(--status-success-bg)}.status-waitlisted{color:var(--status-warning);background:var(--status-warning-bg)}.status-future{color:var(--status-pending);background:var(--status-pending-bg)}.status-info{color:var(--status-info);background:var(--status-info-bg)}.status-cancelled{color:var(--status-error);background:var(--status-error-bg)}.badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap}.badge-success{color:var(--status-success);background:var(--status-success-bg)}.badge-warning{color:var(--status-warning);background:var(--status-warning-bg)}.badge-pending{color:var(--status-pending);background:var(--status-pending-bg)}.badge-error{color:var(--status-error);background:var(--status-error-bg)}.badge-gray{color:var(--status-gray);background:var(--status-gray-bg)}.badge-info{color:var(--status-info);background:var(--status-info-bg)}.pill{font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap}.pill-info{color:var(--status-info);background:var(--status-info-bg)}.pill-warning{color:var(--status-warning);background:var(--status-warning-bg)}.pill-warning-pulse{color:var(--status-warning);background:var(--status-warning-bg);animation:pulse-amber 2s ease-in-out infinite}@keyframes pulse-amber{0%,to{opacity:1}50%{opacity:.7}}.row-registered{background:var(--status-success-bg)}.row-registered:hover{background:#22c55e26}.row-waitlisted{background:var(--status-warning-bg)}.row-waitlisted:hover{background:#f59e0b26}.row-future{background:var(--status-pending-bg)}.row-future:hover{background:#8b5cf626}.row-cancelled{background:var(--status-error-bg)}.row-cancelled:hover{background:#ef444426}.row-past{background:var(--status-gray-bg)}.row-past:hover{background:#9ca3af26}.badge-confirmed{color:var(--status-success);background:var(--status-success-bg)}.badge-waitlist{color:var(--status-warning);background:var(--status-warning-bg)}label{display:block;margin-bottom:4px;font-weight:500;color:var(--text-primary)}input[type=email],input[type=password],input[type=text],input[type=search],input[type=url],input[type=tel],input[type=number],textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:2px;font-size:16px;background:var(--bg-primary);color:var(--text-primary);font-family:inherit}@media(min-width:601px){input[type=email],input[type=password],input[type=text],input[type=search],input[type=url],input[type=tel],input[type=number],textarea{font-size:13px}}input:focus{outline:none;border-color:var(--border-strong)}.form-group{margin-bottom:12px}.btn{background:var(--text-primary);color:var(--bg-primary);border:none;padding:8px 16px;border-radius:2px;cursor:pointer;font-size:12px;font-weight:600;font-family:inherit;width:100%;min-height:44px;text-transform:uppercase;letter-spacing:.3px}.btn:hover{opacity:.9}.btn:disabled{background:var(--status-gray);cursor:not-allowed}.btn-sm{padding:4px 12px;font-size:11px;width:auto;min-height:28px}.btn-danger{background:var(--status-error);color:#fff}.btn-danger:hover{opacity:.9}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--hover)}.alert{padding:8px 12px;border-radius:2px;margin-bottom:12px;font-size:12px}.alert-error{background:var(--status-error-bg);color:var(--status-error);border:1px solid var(--status-error)}.alert-success{background:var(--status-success-bg);color:var(--status-success);border:1px solid var(--status-success)}.card{background:var(--bg-primary);border-radius:2px;padding:16px;margin-bottom:16px;border:1px solid var(--border)}.section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px;color:var(--text-primary)}.section-link{font-size:11px;color:var(--status-info);text-decoration:none;cursor:pointer;font-weight:600}.section-link:hover{text-decoration:underline}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-bottom:16px}.stat-card{border:1px solid var(--border);padding:16px;background:var(--bg-primary);text-align:left;border-radius:0}.stat-card+.stat-card{border-left:none}.stat-number{font-size:28px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--text-primary)}.stat-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-weight:600}.stat-sub{font-size:10px;color:var(--text-tertiary);margin-top:4px}.stat-card.accent-green .stat-number{color:var(--status-success)}.stat-card.accent-amber .stat-number{color:var(--status-warning)}.stat-card.accent-green{border-bottom:2px solid var(--status-success)}.stat-card.accent-amber{border-bottom:2px solid var(--status-warning)}.workouts-grid{display:grid;gap:0}.location-section{margin-bottom:16px}.location-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}.location-tab{padding:4px 12px;background:none;border:1px solid var(--border);border-radius:2px;cursor:pointer;font-size:11px;font-weight:600;color:var(--text-secondary);font-family:inherit;min-height:auto}.location-tab:hover{color:var(--text-primary);background:var(--hover)}.location-tab.active{background:var(--day-active-bg);color:var(--day-active-text);border-color:var(--day-active-bg)}.workout-count{font-size:10px;opacity:.8}.workouts-section{background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;padding:16px;margin-bottom:16px}.workouts-container{background:var(--bg-primary);border-radius:2px;padding:16px;margin-bottom:16px}.workouts-container .workouts-section{background:transparent;border:none;padding:0;margin-bottom:0}.workout-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0;margin-top:8px;align-items:stretch}.workout-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;padding:12px;height:auto;min-height:200px;display:flex;flex-direction:column;align-items:stretch}.workout-card:hover{background:var(--hover)}.workout-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.workout-name{font-weight:600;color:var(--text-primary);font-size:13px}.workout-time{color:var(--text-secondary);font-size:12px;font-weight:600}.workout-details{color:var(--text-secondary);font-size:12px;line-height:1.4;flex:1;margin-bottom:8px}.workout-details>div{margin:2px 0;color:var(--text-secondary);font-size:12px}.workout-capacity{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding-top:8px;border-top:1px solid var(--border-light)}.capacity-info{font-size:11px;color:var(--text-secondary)}.workout-actions{margin-top:auto;padding-top:8px}.action-btn{width:100%;padding:6px 12px;border:1px solid var(--border);border-radius:2px;font-weight:600;cursor:pointer;font-size:11px;font-family:inherit;background:none;color:var(--text-primary);text-transform:uppercase;letter-spacing:.3px;min-height:32px}.action-btn:hover{background:var(--text-primary);color:var(--bg-primary)}.booking-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:9999px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;min-height:auto}.status-book{color:var(--status-success);background:var(--status-success-bg)}.status-full{color:var(--status-warning);background:var(--status-warning-bg)}.status-past{color:var(--status-gray);background:var(--status-gray-bg)}.status-booked{color:var(--status-info);background:var(--status-info-bg)}.status-success{color:var(--status-success);background:var(--status-success-bg)}.registration-item{padding:8px 16px;border-left:3px solid var(--border);background:var(--bg-primary);margin-bottom:0;border-bottom:1px solid var(--border-light);border-radius:0}.registration-item:hover{background:var(--hover)}.confirmed{border-left-color:var(--status-success)}.waitlist{border-left-color:var(--status-warning)}.location-item{padding:8px 16px;border:1px solid var(--border);border-radius:2px;margin-bottom:0}.location-item:hover{background:var(--hover)}.location-content{margin-bottom:16px}.location-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border)}.location-header h3,.location-header h4{color:var(--text-primary);font-size:13px;font-weight:700;margin:0}.location-stats{color:var(--text-secondary);font-size:11px}.location-title{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid var(--border)}.location-details p{margin:4px 0;color:var(--text-secondary);font-size:12px}.locations-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0;margin-top:8px}.location-card:hover{background:var(--hover)}.week-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:8px 16px;background:var(--bg-primary);border:1px solid var(--border);border-radius:2px}.week-info{font-weight:600;font-size:13px;color:var(--text-primary)}.week-controls{display:flex;gap:4px}.week-btn{padding:4px 12px;background:none;border:1px solid var(--border);color:var(--text-primary);border-radius:2px;cursor:pointer;font-size:11px;font-weight:600;font-family:inherit;min-height:auto}.week-btn:hover{background:var(--hover)}.week-btn:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.6}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top:2px solid var(--text-primary);border-radius:50%;animation:spin 1s linear infinite}.spinner-large{width:36px;height:36px;border-width:3px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--text-secondary);font-size:12px}.loading-inline{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.flex{display:flex;justify-content:space-between;align-items:center}.gym-toggle-bar{display:flex;gap:4px;padding:4px 16px;background:var(--bg-primary);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.gym-toggle-bar::-webkit-scrollbar{display:none}.gym-toggle-btn{padding:4px 12px;border-radius:2px;border:1px solid var(--border);background:none;color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit;min-height:auto}.gym-toggle-btn:hover{background:var(--hover);color:var(--text-primary)}.gym-toggle-btn.active{background:var(--day-active-bg);border-color:var(--day-active-bg);color:var(--day-active-text)}.logout-x{color:var(--text-secondary)}.logout-x:hover{color:var(--status-error);background:var(--status-error-bg)}.navbar-settings-wrap{position:relative}.settings-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--bg-elevated);border:1px solid var(--border);z-index:300}.settings-item{padding:8px 12px;cursor:pointer;font-size:12px;color:var(--text-primary)}.settings-item:hover{background:var(--hover)}.settings-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;width:100%}.settings-toggle input[type=checkbox]{accent-color:var(--status-info);width:16px;height:16px}.settings-divider{height:1px;background:var(--border);margin:0}.settings-logout{color:var(--status-error)}.settings-logout:hover{background:var(--status-error-bg)}@media(max-width:768px){.app-navbar{padding:0 12px}.navbar-sep,.navbar-sessions{display:none}.navbar-gym{font-size:11px;padding:4px 8px}.tabs{display:none}.bottom-tabs{display:flex!important;position:fixed;bottom:0;left:0;right:0;background:var(--bg-primary);border-top:1px solid var(--border);z-index:200;height:56px}.dashboard-layout{padding:12px 12px 68px}.container{padding:0}.locations-cards,.workout-cards{grid-template-columns:1fr}.workout-header{flex-direction:column;align-items:flex-start;gap:4px}}
