@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Montserrat:wght@400;500;600;700;800;900&display=swap";:root{--bg-primary:#050505;--bg-secondary:#0018484d;--bg-card:#ffffff08;--bg-card-hover:#ffffff14;--text-primary:#fff;--text-secondary:#ffffffb3;--text-tertiary:#ffffff80;--border-color:#ffffff14;--border-highlight:#0068c04d;--bg-nav:#0a0a0acc;--accent-color:#0068c0;--accent-glow:#0068c04d;--success:#1db954;--danger:#e53935;--warning:#f5b700;--info:#2196f3;--font-family:"Inter", system-ui, -apple-system, sans-serif;--font-heading:"Montserrat", system-ui, -apple-system, sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:8px;--radius-md:16px;--radius-lg:20px;--radius-button:12px;--radius-full:9999px;--shadow-sm:0 4px 6px #0000004d;--shadow-md:0 8px 15px #0006;--shadow-lg:0 20px 25px -5px #00000080;--glass-blur:blur(12px);--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#0068c008;--bg-card:#fffc;--bg-card-hover:#fff;--text-primary:#0f172a;--text-secondary:#0f172ab3;--text-tertiary:#0f172a80;--border-color:#0f172a14;--border-highlight:#0068c026;--bg-nav:#fffc;--accent-color:#0068c0;--accent-glow:#0068c026;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 10% 20%,#0068c026 0%,#0000 40%),radial-gradient(circle at 90% 80%,#1db95414 0%,#0000 40%);background-attachment:fixed;min-height:100vh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.container{max-width:1200px;padding:0 var(--space-md);margin:0 auto}.text-accent{color:var(--accent-color)}.text-secondary{color:var(--text-secondary)}.card{background:var(--bg-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);transition:all var(--transition-normal)}.card:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-md);border-color:#ffffff26;transform:translateY(-2px)}.btn-primary{background:var(--accent-color);color:#fff;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-button);justify-content:center;align-items:center;gap:var(--space-sm);transition:all var(--transition-fast);box-shadow:0 4px 14px var(--accent-glow);font-weight:700;display:inline-flex}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 20px var(--accent-glow);transform:translateY(-1px)scale(1.02)}.btn-primary:active{transform:translateY(1px)scale(.98)}.btn-secondary{border:1px solid var(--accent-color);color:var(--accent-color);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-button);justify-content:center;align-items:center;gap:var(--space-sm);transition:all var(--transition-fast);background:0 0;font-weight:600;display:inline-flex}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--text-secondary)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.heading-1{font-size:2.25rem;line-height:1.2}.heading-2{font-size:1.5rem;line-height:1.2}.heading-3{font-size:1.25rem;line-height:1.3}.text-body{color:var(--text-secondary);font-size:1rem}.text-small{color:var(--text-tertiary);font-size:.8125rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s ease-out forwards fadeIn}.header-nav{z-index:50;background:var(--bg-nav);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);padding:var(--space-md) 0;position:sticky;top:0}.bottom-nav{background:var(--bg-nav);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-color);padding:var(--space-sm) var(--space-sm) calc(env(safe-area-inset-bottom) + var(--space-sm));z-index:50;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--text-tertiary);transition:color var(--transition-fast);flex-direction:column;align-items:center;gap:4px;min-width:60px;font-size:.75rem;font-weight:500;display:flex}.nav-item.active{color:var(--accent-color)}.nav-item svg{transition:transform var(--transition-fast)}.nav-item.active svg{transform:translateY(-2px)}.coach-nav-item{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);font-weight:500;text-decoration:none;display:flex}.coach-nav-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.coach-nav-item.active{background:var(--accent-glow);color:var(--accent-color);border-right:3px solid var(--accent-color);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.coach-sidebar{background:var(--bg-secondary);width:260px;-webkit-backdrop-filter:var(--glass-blur);border-right:1px solid var(--border-color);padding:var(--space-md) 0;flex-direction:column;display:none}.hide-mobile{display:none}.hide-desktop{display:flex}.app-layout{background:0 0;flex-direction:column;min-height:100vh;display:flex}.app-layout .main-content{padding:var(--space-md);flex:1;overflow-y:auto}@media (width>=768px){.app-layout{flex-direction:row}.coach-sidebar{display:flex}.hide-mobile{display:inline-block}.hide-desktop{display:none!important}.app-layout .main-content{padding:var(--space-xl)!important}}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
