.brand-x.svelte-8k30lk{background:linear-gradient(135deg,#22d3ee,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.15em;font-weight:900;letter-spacing:-.03em}.login-bg.svelte-8k30lk{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(ellipse 60% 60% at 30% 40%,rgba(6,182,212,.08) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 80% 80%,rgba(30,63,122,.3) 0%,transparent 70%),#050d1a}.login-card.svelte-8k30lk{background:#0d1e38;border:1px solid #1a3260;border-radius:16px;padding:2.5rem;width:100%;max-width:420px;text-align:center}.logo-mark.svelte-8k30lk{margin-bottom:1rem;display:flex;justify-content:center}h1.svelte-8k30lk{font-family:var(--font-display);font-size:1.75rem;font-weight:800;color:#e2e8f0;margin:0 0 .25rem;letter-spacing:-.02em}p.svelte-8k30lk{color:#94a3b8;font-size:.875rem;margin:0 0 1.5rem}.tagline.svelte-8k30lk{font-size:1.05rem;font-weight:600;color:#c5d9f5;line-height:1.45;margin:0 0 1.5rem}.role-tabs.svelte-8k30lk{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.25rem;background:#070f1e;border:1px solid #1a3260;border-radius:12px;padding:.375rem}.role-tab.svelte-8k30lk{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.625rem .5rem;border:1px solid transparent;border-radius:9px;background:transparent;color:#64748b;font-family:var(--font-display);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .18s}.role-tab.svelte-8k30lk:hover:not(.active){color:#94a3b8;background:#ffffff08}.role-tab.active.svelte-8k30lk{background:#0d1e38;border-color:#22d3ee;color:#e2e8f0;box-shadow:0 0 12px #22d3ee26}.role-icon.svelte-8k30lk{font-size:1.25rem;line-height:1}.role-label.svelte-8k30lk{font-size:.78rem;font-weight:700}.panel.svelte-8k30lk{text-align:center}.panel-hint.svelte-8k30lk{font-size:.78rem;color:#475569;margin:0 0 1rem;line-height:1.5}.club-hint.svelte-8k30lk{display:block;margin-top:.3rem;color:#22d3ee;font-size:.72rem;opacity:.75}.providers.svelte-8k30lk{display:flex;flex-direction:column;gap:.75rem}.provider-btn.svelte-8k30lk{display:flex;align-items:center;justify-content:center;gap:.625rem;padding:.625rem 1rem;background:#0a1628;border:1px solid #1a3260;border-radius:8px;color:#e2e8f0;text-decoration:none;font-family:var(--font-display);font-size:.875rem;font-weight:500;transition:all .2s}.provider-btn--primary.svelte-8k30lk:hover{border-color:#06b6d4;background:#06b6d40d;color:#22d3ee}.provider-btn--athlete.svelte-8k30lk:hover{border-color:#8b5cf6;background:#8b5cf60d;color:#a78bfa}.divider.svelte-8k30lk{display:flex;align-items:center;gap:.75rem;color:#475569;font-size:.75rem}.divider.svelte-8k30lk:before,.divider.svelte-8k30lk:after{content:"";flex:1;height:1px;background:#1a3260}.input.svelte-8k30lk{width:100%;padding:.65rem .875rem;background:#0a1628;border:1px solid #1a3260;border-radius:8px;color:#e2e8f0;font-size:.875rem;outline:none;transition:border-color .18s;box-sizing:border-box}.input.svelte-8k30lk:focus{border-color:#06b6d4}.btn-primary.svelte-8k30lk{display:block;padding:.65rem 1rem;background:#0891b2;border:none;border-radius:8px;color:#fff;font-family:var(--font-display);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.btn-primary.svelte-8k30lk:hover{background:#0e7490;box-shadow:0 0 18px #06b6d44d}.join-note.svelte-8k30lk{font-size:.75rem;color:#475569;margin:.25rem 0 0}.join-link.svelte-8k30lk{color:#a78bfa;text-decoration:none}.join-link.svelte-8k30lk:hover{text-decoration:underline}.dual-role-note.svelte-8k30lk{display:flex;align-items:flex-start;gap:.5rem;background:#ffffff08;border:1px solid #1a3260;border-radius:8px;padding:.625rem .875rem;margin-top:1.25rem;text-align:left;font-size:.75rem;color:#64748b;line-height:1.5}.dual-role-note.svelte-8k30lk em:where(.svelte-8k30lk){color:#94a3b8;font-style:normal;font-weight:600}.dual-role-icon.svelte-8k30lk{font-size:.9rem;flex-shrink:0;margin-top:1px}.footer-note.svelte-8k30lk{font-size:.7rem;color:#475569;margin-top:1rem;margin-bottom:0}@keyframes svelte-8k30lk-fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up.svelte-8k30lk{animation:svelte-8k30lk-fadeUp .35s ease-out both}
