.progress-ring{position:relative;display:grid;place-items:center}.progress-ring__track{stroke:color-mix(in srgb,var(--color-text-muted) 25%,transparent)}.progress-ring__fill{stroke:var(--color-primary);stroke-linecap:round;transition:stroke-dashoffset var(--duration-normal) var(--ease-out),stroke var(--duration-normal) var(--ease-out)}.progress-ring__fill--low{stroke:var(--color-danger)}.progress-ring__fill--mid{stroke:var(--color-warning)}.progress-ring__fill--high{stroke:var(--color-success)}.progress-ring__fill--live{transition:none}.progress-ring__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);text-align:center}.progress-ring__value{font-size:var(--text-2xl);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.progress-ring__value--low{color:var(--color-danger)}.progress-ring__value--mid{color:var(--color-warning)}.progress-ring__value--high{color:var(--color-success)}.progress-ring__sublabel{font-size:var(--text-xs);color:var(--color-text-muted)}.athlete-week-progress{padding:var(--space-4) 0}.athlete-week-progress__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--space-4);align-items:center}.athlete-week-progress__chart{display:flex;justify-content:center}.athlete-week-progress__metrics{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4)}.athlete-week-progress__metric{display:flex;align-items:center;gap:var(--space-3)}.athlete-week-progress__metric-icon{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;color:var(--color-primary)}.athlete-week-progress__metric-icon svg{width:22px;height:22px}.athlete-week-progress__metric-body{display:grid;gap:2px;min-width:0}.athlete-week-progress__metric-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.athlete-week-progress__metric-value{font-size:var(--text-base);font-variant-numeric:tabular-nums}.athlete-week-progress__metric-unit{font-size:var(--text-xs);color:var(--color-text-secondary)}.athlete-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.athlete-quick-actions__tile{display:flex;flex-direction:column;align-items:center;border:none;cursor:pointer;text-align:center;color:inherit;font:inherit;transition:transform var(--duration-fast) var(--ease-out)}.athlete-quick-actions__tile:active{transform:scale(.97)}.athlete-quick-actions__icon{display:grid;place-items:center;width:40px;height:40px;color:var(--color-primary)}.athlete-quick-actions__icon svg{width:28px;height:28px}.athlete-quick-actions__label{font-size:var(--text-sm)}.athlete-quick-actions__hint{font-size:var(--text-xs)}.athlete-overlay-screen{display:grid;gap:var(--space-4)}.athlete-overlay-screen__header{display:grid;gap:var(--space-2)}.athlete-overlay-screen__back{justify-self:start;padding:0;border:none;background:none;color:var(--color-primary);font:inherit;cursor:pointer}.athlete-overlay-screen__title{margin:0;font-size:var(--text-xl)}.athlete-workouts__subtitle{margin:0;font-size:var(--text-sm)}.athlete-my-plan{display:grid;gap:var(--space-4)}.athlete-my-plan__section{padding:var(--space-4);display:grid;gap:var(--space-3)}.athlete-my-plan__section-title{margin:0;font-size:var(--text-lg)}.athlete-my-plan__lead{margin:0;font-size:var(--text-sm);line-height:var(--leading-relaxed)}.athlete-my-plan__hint{margin:0;font-size:var(--text-sm)}.athlete-my-plan__field{display:grid;gap:var(--space-2)}.athlete-my-plan__label{font-size:var(--text-sm)}.athlete-my-plan__input{width:100%;padding:var(--space-3);border-radius:var(--radius-md);font:inherit}.athlete-my-plan__section--plain{padding:0}.athlete-my-plan__footer{display:grid;gap:var(--space-2);position:sticky;z-index:10;bottom:var(--bottom-nav-float-offset);padding:var(--space-4) 0 var(--space-2);background:linear-gradient(to top,var(--app-bg-solid, var(--color-bg)) 65%,color-mix(in srgb,var(--app-bg-solid, var(--color-bg)) 0%,transparent))}.athlete-my-plan__footer-hint{margin:0;font-size:var(--text-xs);text-align:center}.athlete-my-plan__save{width:100%}.athlete-my-plan__save--idle:disabled{opacity:.42;cursor:not-allowed}.athlete-my-plan__save--success:disabled{opacity:1;cursor:default;color:var(--color-bg);background:var(--color-success, #34d399)}.athlete-plan-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.athlete-plan-chips__item{min-width:52px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--color-border);background:color-mix(in srgb,var(--glass-bg) 70%,transparent);color:inherit;font:inherit;font-size:var(--text-base);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.athlete-plan-chips__item--selected{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border));background:var(--color-primary-muted);color:var(--color-primary)}.athlete-plan-chips__item:disabled{opacity:.6;cursor:not-allowed}.athlete-plan-tier-list{display:grid;gap:var(--space-2)}.athlete-plan-tier{display:grid;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:color-mix(in srgb,var(--glass-bg) 70%,transparent);text-align:left;color:inherit;font:inherit;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.athlete-plan-tier--selected{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border));background:var(--color-primary-muted)}.athlete-plan-tier__label{font-size:var(--text-base)}.athlete-plan-tier__meta{font-size:var(--text-xs)}.athlete-my-plan__targets{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.athlete-my-plan__targets li{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.athlete-my-plan__science .athlete-my-plan__lead p{margin:0 0 var(--space-3)}.athlete-my-plan__science .athlete-my-plan__lead p:last-child{margin-bottom:0}.athlete-my-plan__science a{color:var(--color-primary)}.athlete-stub{padding:var(--space-6);text-align:center}.athlete-workouts__list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.athlete-workouts__empty{padding:var(--space-5)}.athlete-workouts__item{display:grid;gap:var(--space-3);padding:var(--space-4)}.athlete-workouts__item-header{display:grid;gap:var(--space-1)}.athlete-workouts__item-title{font-size:var(--text-base);font-weight:var(--font-semibold);line-height:var(--leading-tight)}.athlete-workouts__item-date{font-size:var(--text-sm)}.athlete-workouts__item-summary{margin:0;font-size:var(--text-sm);line-height:var(--leading-normal)}.athlete-workouts__item-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.athlete-workouts__stat{display:grid;gap:2px}.athlete-workouts__stat dt{font-size:var(--text-xs)}.athlete-workouts__stat dd{margin:0;font-size:var(--text-sm)}.athlete-stub__message{margin:0;line-height:var(--leading-relaxed)}@media(max-width:358px){.athlete-week-progress__grid,.athlete-quick-actions{grid-template-columns:1fr}}@keyframes athlete-home-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.athlete-home-enter{animation:athlete-home-fade-up .55s var(--ease-out) both;animation-delay:var(--enter-delay, 0ms)}@media(prefers-reduced-motion:reduce){.athlete-home-enter{animation:none}}@font-face{font-family:Recama;src:local("Recama"),local("Racama-U"),url(/assets/Racama-U-CBu_oxbp.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Oswald;src:url(/assets/Oswald-Variable-Btv4ouYq.ttf) format("truetype");font-weight:200 700;font-style:normal;font-display:swap}@font-face{font-family:PT Sans Narrow;src:url(/assets/PTSansNarrow-Regular-CnKFEbKi.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:PT Sans Narrow;src:url(/assets/PTSansNarrow-Bold-CCDbu2ZY.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root,[data-theme=midnight-vitality]{--color-bg: #0c0f14;--color-bg-elevated: #151a22;--color-surface: #1c2430;--color-surface-hover: #243040;--color-overlay: #2a3544;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .14);--color-text: #f1f5f9;--color-text-secondary: #b0bac8;--color-text-muted: #64748b;--color-text-inverse: #0c0f14;--color-primary: #2dd4bf;--color-primary-hover: #14b8a6;--color-primary-muted: rgba(45, 212, 191, .14);--color-primary-subtle: rgba(45, 212, 191, .08);--color-accent: #fb923c;--color-accent-hover: #f97316;--color-accent-muted: rgba(251, 146, 60, .14);--color-success: #34d399;--color-success-muted: rgba(52, 211, 153, .14);--color-warning: #fbbf24;--color-danger: #f87171;--color-danger-muted: rgba(248, 113, 113, .14);--color-info: #60a5fa;--gradient-card-shine: linear-gradient(135deg, rgba(255, 255, 255, .04) 0%, transparent 50%);--gradient-primary: linear-gradient(135deg, #2dd4bf 0%, #34d399 100%);--gradient-progress: linear-gradient(90deg, #2dd4bf 0%, #34d399 100%);--gradient-achievement: linear-gradient(135deg, #fb923c 0%, #f472b6 100%);--shadow-glow-primary: 0 0 24px rgba(45, 212, 191, .25);--shadow-glow-accent: 0 0 20px rgba(251, 146, 60, .2);--shadow-card: 0 4px 24px rgba(0, 0, 0, .35);--glass-tint: rgba(45, 212, 191, .055)}[data-theme=electric-pulse]{--color-bg: #0a0e17;--color-bg-elevated: #121826;--color-surface: #1a2235;--color-surface-hover: #222d45;--color-overlay: #2a3654;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .14);--color-text: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-text-inverse: #0a0e17;--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-muted: rgba(59, 130, 246, .16);--color-primary-subtle: rgba(59, 130, 246, .09);--color-accent: #f43f5e;--color-accent-hover: #e11d48;--color-accent-muted: rgba(244, 63, 94, .14);--color-success: #34d399;--color-success-muted: rgba(52, 211, 153, .14);--color-warning: #fbbf24;--color-danger: #f87171;--color-danger-muted: rgba(248, 113, 113, .14);--color-info: #60a5fa;--gradient-card-shine: linear-gradient(135deg, rgba(255, 255, 255, .05) 0%, transparent 50%);--gradient-primary: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--gradient-progress: linear-gradient(90deg, #3b82f6 0%, #6366f1 100%);--gradient-achievement: linear-gradient(135deg, #f43f5e 0%, #fb923c 100%);--shadow-glow-primary: 0 0 28px rgba(59, 130, 246, .35);--shadow-glow-accent: 0 0 22px rgba(244, 63, 94, .25);--shadow-card: 0 4px 28px rgba(0, 0, 0, .4);--glass-tint: rgba(59, 130, 246, .08)}[data-theme=forest-recovery]{--color-bg: #0a100e;--color-bg-elevated: #111916;--color-surface: #182420;--color-surface-hover: #1f2e28;--color-overlay: #263832;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .14);--color-text: #ecfdf5;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-text-inverse: #0a100e;--color-primary: #10b981;--color-primary-hover: #059669;--color-primary-muted: rgba(16, 185, 129, .16);--color-primary-subtle: rgba(16, 185, 129, .09);--color-accent: #8b5cf6;--color-accent-hover: #7c3aed;--color-accent-muted: rgba(139, 92, 246, .14);--color-success: #34d399;--color-success-muted: rgba(52, 211, 153, .14);--color-warning: #fbbf24;--color-danger: #f87171;--color-danger-muted: rgba(248, 113, 113, .14);--color-info: #60a5fa;--gradient-card-shine: linear-gradient(135deg, rgba(255, 255, 255, .04) 0%, transparent 50%);--gradient-primary: linear-gradient(135deg, #10b981 0%, #34d399 100%);--gradient-progress: linear-gradient(90deg, #10b981 0%, #6ee7b7 100%);--gradient-achievement: linear-gradient(135deg, #8b5cf6 0%, #a78bfa 100%);--shadow-glow-primary: 0 0 24px rgba(16, 185, 129, .3);--shadow-glow-accent: 0 0 20px rgba(139, 92, 246, .25);--shadow-card: 0 4px 24px rgba(0, 0, 0, .35);--glass-tint: rgba(16, 185, 129, .07)}[data-theme=neon-pulse]{--color-bg: #050508;--color-bg-elevated: #0c0c14;--color-surface: #12121c;--color-surface-hover: #1a1a28;--color-overlay: #222233;--color-border: rgba(255, 255, 255, .06);--color-border-strong: rgba(0, 255, 170, .22);--color-text: #ffffff;--color-text-secondary: #a8b0c8;--color-text-muted: #6b7280;--color-text-inverse: #050508;--color-primary: #00ffaa;--color-primary-hover: #00e696;--color-primary-muted: rgba(0, 255, 170, .18);--color-primary-subtle: rgba(0, 255, 170, .1);--color-accent: #ff2d95;--color-accent-hover: #e6007a;--color-accent-muted: rgba(255, 45, 149, .18);--color-accent-warm: #ff8800;--color-success: #00ff88;--color-success-muted: rgba(0, 255, 136, .15);--color-warning: #ffaa00;--color-danger: #ff4466;--color-danger-muted: rgba(255, 68, 102, .15);--color-info: #00e5ff;--gradient-card-shine: linear-gradient( 160deg, rgba(0, 255, 170, .08) 0%, transparent 35%, rgba(255, 45, 149, .04) 100% );--gradient-primary: linear-gradient(135deg, #00ffaa 0%, #00e5ff 50%, #00ffaa 100%);--gradient-progress: linear-gradient(90deg, #00ffaa 0%, #00e5ff 100%);--gradient-achievement: linear-gradient(135deg, #ff8800 0%, #ff2d95 100%);--shadow-glow-primary: 0 0 20px rgba(0, 255, 170, .5), 0 0 50px rgba(0, 255, 170, .2);--shadow-glow-accent: 0 0 20px rgba(255, 45, 149, .45), 0 0 40px rgba(255, 45, 149, .15);--shadow-card: 0 8px 40px rgba(0, 0, 0, .6), 0 0 1px rgba(0, 255, 170, .3);--logo-glow: drop-shadow(0 0 16px rgba(0, 255, 170, .9)) drop-shadow(0 0 32px rgba(0, 229, 255, .45));--rim-light: inset 0 1px 0 rgba(255, 255, 255, .12);--neon-card-rim: linear-gradient( 90deg, transparent, rgba(0, 255, 170, .6) 30%, rgba(0, 229, 255, .8) 50%, rgba(255, 45, 149, .5) 70%, transparent );--gradient-stats-primary: linear-gradient(135deg, #00ffaa, #00e5ff);--gradient-stats-accent: linear-gradient(135deg, #ff8800, #ff2d95);--glass-tint: rgba(0, 255, 170, .08);--glass-bg: rgba(255, 255, 255, .062);--glass-border: rgba(0, 255, 170, .12)}[data-theme=neon-crimson]{--color-bg: #080506;--color-bg-elevated: #12080c;--color-surface: #1a0e14;--color-surface-hover: #241018;--color-overlay: #2e1420;--color-border: rgba(255, 255, 255, .06);--color-border-strong: rgba(255, 51, 85, .25);--color-text: #ffffff;--color-text-secondary: #c8a8b0;--color-text-muted: #8a6470;--color-text-inverse: #080506;--color-primary: #ff3355;--color-primary-hover: #ff1a44;--color-primary-muted: rgba(255, 51, 85, .2);--color-primary-subtle: rgba(255, 51, 85, .1);--color-accent: #ff8800;--color-accent-hover: #ff7700;--color-accent-muted: rgba(255, 136, 0, .18);--color-accent-warm: #ffaa00;--color-success: #00ff88;--color-success-muted: rgba(0, 255, 136, .15);--color-warning: #ffaa00;--color-danger: #ff1144;--color-danger-muted: rgba(255, 17, 68, .15);--color-info: #ff6688;--gradient-card-shine: linear-gradient( 160deg, rgba(255, 51, 85, .1) 0%, transparent 35%, rgba(255, 136, 0, .05) 100% );--gradient-primary: linear-gradient(135deg, #ff3355 0%, #ff6600 50%, #ff3355 100%);--gradient-progress: linear-gradient(90deg, #ff3355 0%, #ff8800 100%);--gradient-achievement: linear-gradient(135deg, #ff8800 0%, #ff2d95 100%);--shadow-glow-primary: 0 0 20px rgba(255, 51, 85, .55), 0 0 50px rgba(255, 51, 85, .22);--shadow-glow-accent: 0 0 20px rgba(255, 136, 0, .45), 0 0 40px rgba(255, 136, 0, .15);--shadow-card: 0 8px 40px rgba(0, 0, 0, .6), 0 0 1px rgba(255, 51, 85, .35);--logo-glow: drop-shadow(0 0 16px rgba(255, 51, 85, .9)) drop-shadow(0 0 32px rgba(255, 136, 0, .45));--rim-light: inset 0 1px 0 rgba(255, 255, 255, .12);--neon-card-rim: linear-gradient( 90deg, transparent, rgba(255, 51, 85, .65) 30%, rgba(255, 136, 0, .85) 50%, rgba(255, 45, 149, .5) 70%, transparent );--gradient-stats-primary: linear-gradient(135deg, #ff3355, #ff8800);--gradient-stats-accent: linear-gradient(135deg, #ff8800, #ff2d95);--glass-tint: rgba(255, 51, 85, .08);--glass-bg: rgba(255, 255, 255, .062);--glass-border: rgba(255, 51, 85, .14)}[data-theme=soviet-sport]{--color-bg: #14100e;--color-bg-elevated: #1e1814;--color-surface: #221c18;--color-surface-hover: #2c261c;--color-overlay: #3a3228;--color-border: rgba(242, 232, 212, .14);--color-border-strong: rgba(212, 82, 40, .5);--color-text: #f2e8d4;--color-text-secondary: #d4c4a8;--color-text-muted: #9a8a72;--color-text-inverse: #1a1410;--color-primary: #d45228;--color-primary-hover: #b8431c;--color-primary-muted: rgba(212, 82, 40, .24);--color-primary-subtle: rgba(212, 82, 40, .1);--color-accent: #4a6d82;--color-accent-hover: #3d5a68;--color-accent-muted: rgba(74, 109, 130, .24);--color-success: #3d6b4f;--color-success-muted: rgba(61, 107, 79, .22);--color-warning: #c9922a;--color-danger: #a83818;--color-danger-muted: rgba(168, 56, 24, .22);--color-info: #4a6d82;--gradient-card-shine: linear-gradient(145deg, rgba(255, 248, 235, .35) 0%, transparent 55%);--gradient-primary: linear-gradient(160deg, #e86a38 0%, #d45228 55%, #b8431c 100%);--gradient-progress: linear-gradient(90deg, #d45228 0%, #e86a38 100%);--gradient-achievement: linear-gradient(135deg, #d45228 0%, #c9922a 100%);--shadow-glow-primary: 3px 3px 0 rgba(0, 0, 0, .35);--shadow-glow-accent: 2px 2px 0 rgba(0, 0, 0, .28);--shadow-card: 4px 4px 0 rgba(0, 0, 0, .38), inset 0 0 0 1px rgba(0, 0, 0, .12);--glass-tint: rgba(212, 82, 40, .06);--glass-bg: rgba(34, 28, 24, .92);--glass-bg-panel: #d8c49c;--glass-border: rgba(44, 36, 24, .35);--glass-border-panel: rgba(44, 36, 24, .45);--app-bg-gradient: repeating-conic-gradient( from -4deg at 50% -8%, rgba(212, 82, 40, .28) 0deg 7deg, transparent 7deg 14deg ), radial-gradient(ellipse 130% 55% at 50% -12%, rgba(212, 82, 40, .32) 0%, transparent 62%), radial-gradient(ellipse 90% 40% at 50% 0%, rgba(242, 232, 212, .06) 0%, transparent 55%), linear-gradient(180deg, #1e1814 0%, #14100e 38%, #14100e 100%);--app-bg-solid: #1e1814;--soviet-paper-light: #e8d8b4;--soviet-paper: #d8c49c;--soviet-paper-dark: #c0a878;--soviet-paper-ink: #302418;--soviet-paper-muted: #645038;--soviet-ring-track: #3d5a68;--soviet-progress-low: #d45228;--soviet-progress-mid: #c9922a;--soviet-progress-high: #4a8a62;--soviet-paper-bg: radial-gradient(ellipse 78% 48% at 12% 88%, rgba(100, 72, 40, .16) 0%, transparent 58%), radial-gradient(ellipse 55% 38% at 92% 15%, rgba(82, 58, 34, .12) 0%, transparent 52%), radial-gradient(ellipse 90% 28% at 50% 102%, rgba(88, 64, 36, .1) 0%, transparent 48%), linear-gradient(168deg, var(--soviet-paper-light) 0%, var(--soviet-paper) 38%, var(--soviet-paper-dark) 100%);--soviet-paper-stains: radial-gradient(ellipse 42% 32% at 82% 94%, rgba(68, 48, 28, .28) 0%, transparent 72%), radial-gradient(ellipse 38% 30% at 8% 12%, rgba(78, 56, 32, .2) 0%, transparent 68%), radial-gradient(ellipse 55% 22% at 50% 0%, rgba(92, 68, 40, .14) 0%, transparent 62%);--font-sans: "PT Sans Narrow", "Arial Narrow", sans-serif;--font-display: "Oswald", "PT Sans Narrow", "Arial Narrow", sans-serif}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--font-sans: "Recama", system-ui, -apple-system, sans-serif;--font-display: "Oswald", "Arial Narrow", "Franklin Gothic Medium", sans-serif;--font-mono: ui-monospace, "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-normal: normal;--font-display-weight: 500;--font-medium: normal;--font-semibold: normal;--font-bold: normal;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--tracking-tight: 0;--tracking-normal: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--touch-target: 48px;--content-padding: var(--space-3);--content-header-gap: var(--space-3);--shell-bar-margin: var(--content-padding);--shell-bar-padding-y: 20px;--shell-header-bar-height: calc(var(--shell-bar-padding-y) * 2 + 2.125rem + 2px);--shell-header-float-offset: calc( var(--shell-header-bar-height) + max(var(--shell-bar-margin), var(--safe-top)) );--bottom-nav-slot-size: 52px;--bottom-nav-slot-gap: var(--space-2);--bottom-nav-icon-size: 30px;--bottom-nav-bar-padding-y: var(--space-2);--bottom-nav-margin: var(--shell-bar-margin);--bottom-nav-inner-height: var(--bottom-nav-slot-size);--bottom-nav-height: calc(var(--bottom-nav-bar-padding-y) * 2 + var(--bottom-nav-inner-height));--bottom-nav-float-offset: calc(var(--bottom-nav-height) + var(--bottom-nav-margin));--content-max-width: 480px;--content-max-width-desktop: 1280px;--color-workout-chart: #ff3355;--color-activity-chart: #38bdf8;--border-width: 1px;--icon-stroke-width: 1.5;--app-bg-gradient: radial-gradient( circle at center, rgba(0, 191, 192, .12) 0%, rgba(0, 191, 192, .06) 25%, rgba(11, 15, 20, 1) 55%, rgba(15, 20, 27, 1) 100% );--app-bg-solid: #0f141b;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--radius: var(--radius-md);--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .15s;--duration-normal: .25s;--glass-blur: 30px;--glass-saturate: 148%;--glass-bg: rgba(255, 255, 255, .058);--glass-bg-panel: color-mix(in srgb, #ffffff 14%, transparent);--glass-white: rgba(255, 255, 255, .075);--glass-bg-input: rgba(255, 255, 255, .055);--glass-border: rgba(255, 255, 255, .13);--glass-border-panel: rgba(255, 255, 255, .18);--glass-shadow-panel: 0 4px 20px rgba(0, 0, 0, .2), 0 10px 28px rgba(0, 0, 0, .12);--glass-shadow: 0 8px 40px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .16), inset 0 -1px 0 rgba(0, 0, 0, .1);--glass-highlight: linear-gradient( 165deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, .05) 40%, transparent 62% );--glass-highlight-panel: linear-gradient( 165deg, rgba(255, 255, 255, .2) 0%, rgba(255, 255, 255, .06) 42%, transparent 65% );--glass-edge: linear-gradient( 90deg, transparent 0%, rgba(255, 255, 255, .38) 48%, rgba(255, 255, 255, .1) 52%, transparent 100% );--glass-tint: rgba(255, 255, 255, .045);--glass-frost: color-mix(in srgb, var(--color-bg) 20%, transparent)}*,*:before,*:after{font-synthesis:none}html{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);letter-spacing:var(--tracking-normal);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:var(--color-text);background:transparent}:where(button,input,select,textarea,optgroup){font:inherit;letter-spacing:inherit}:where(h1,h2,h3,h4,h5,h6,p,label,span,a,li,td,th){font-family:inherit;letter-spacing:inherit}:where(h1,h2,h3,h4,.app-shell__title,.athlete-home-section__title,.auth-card__title,.auth-brand__name,.onboarding__title,.settings-section__title,.schedule-sheet__title,.athlete-overlay-screen__title,.whoop-panel__title,.meal-panel__title,.workout-modal__title,.weight-dynamics__title,.workout-dynamics__title,.avatar-crop__title,.pwa-install__title,.coach-athlete-history__title,.theme-preview__name){font-family:var(--font-display);font-weight:var(--font-display-weight);text-transform:uppercase;letter-spacing:.04em}html :is(h1,.onboarding__title){font-size:var(--text-lg)}html :is(h2,.auth-brand__name,.athlete-overlay-screen__title,.avatar-crop__title){font-size:var(--text-base)}html :is(h3,.app-shell__title,.athlete-home-section__title,.auth-card__title,.settings-section__title,.whoop-panel__title,.meal-panel__title,.workout-modal__title,.weight-dynamics__title,.workout-dynamics__title){font-size:var(--text-sm)}html :is(h4,.schedule-sheet__title,.theme-preview__name,.coach-athlete-history__title){font-size:var(--text-xs)}html .app-shell--with-back .app-shell__title{font-size:var(--text-xs)}#root{position:relative;min-height:100%;isolation:isolate}#root:before{content:"";position:fixed;z-index:-1;top:0;right:0;bottom:0;left:0;background:var(--app-bg-gradient);pointer-events:none}#root:after{content:"";position:fixed;z-index:-1;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 22%,black 92%,transparent);mask-image:linear-gradient(to bottom,transparent 0%,black 22%,black 92%,transparent);opacity:.4;pointer-events:none}@media(prefers-reduced-transparency:reduce){#root:before{background:var(--app-bg-solid)}#root:after{display:none}}.glass{background:linear-gradient(145deg,color-mix(in srgb,var(--glass-tint) 78%,transparent) 0%,transparent 54%),color-mix(in srgb,var(--glass-white) 70%,transparent),color-mix(in srgb,var(--glass-frost) 48%,transparent),color-mix(in srgb,var(--glass-bg) 94%,transparent);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);position:relative;overflow:hidden}.glass--panel{border-radius:var(--radius-xl);border-color:var(--glass-border-panel);background:linear-gradient(165deg,color-mix(in srgb,#ffffff 7%,transparent) 0%,transparent 48%),var(--glass-bg-panel);box-shadow:var(--glass-shadow-panel),inset 0 1px #ffffff38}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glass-highlight);opacity:.88;pointer-events:none}.glass--panel:before{background:var(--glass-highlight-panel);opacity:.65}.glass:after{content:"";position:absolute;top:0;left:8%;right:8%;height:1px;background:var(--glass-edge);pointer-events:none}.glass>*{position:relative;z-index:1}.glass--bar{border-radius:0;border-left:none;border-right:none;border-top:none}.glass--pill{border-radius:var(--radius-full)}.glass--pill:after{left:15%;right:15%}.glass--floating-bar{padding:var(--shell-bar-padding-y) var(--space-3);border-radius:var(--radius-xl);box-shadow:0 10px 36px #0003,inset 0 1px #ffffff12}.glass-input{font-family:var(--font-sans);font-size:var(--text-base);background:linear-gradient(180deg,rgba(255,255,255,.09) 0%,transparent 48%),color-mix(in srgb,var(--glass-white) 55%,transparent),color-mix(in srgb,var(--glass-bg-input) 96%,transparent);backdrop-filter:blur(18px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(18px) saturate(var(--glass-saturate));border:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0000001f}.glass-input:focus,.glass-input:focus-visible{outline:none;border-color:color-mix(in srgb,var(--color-primary) 55%,var(--glass-border));box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #0000001f}@media(prefers-reduced-transparency:reduce){.glass,.glass-input,.card,.auth-card,.auth-field__input,.auth-pin__cell{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--color-surface)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark;background-color:var(--app-bg-solid)}body{margin:0;padding:0}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{outline:none}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus-visible,textarea:focus-visible,select:focus-visible{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border))}input[type=range]:focus-visible{outline:none}input[type=range]{touch-action:pan-x}::selection{background:var(--color-primary-muted);color:var(--color-text)}.card{padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--glass-border-panel);background:linear-gradient(165deg,color-mix(in srgb,#ffffff 7%,transparent) 0%,transparent 48%),var(--glass-bg-panel);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow-panel),inset 0 1px #ffffff38;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glass-highlight-panel);opacity:.65;pointer-events:none}.card:after{content:"";position:absolute;top:0;left:8%;right:8%;height:1px;background:var(--glass-edge);pointer-events:none}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-gradient-primary{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}.btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-target);padding:var(--space-3) var(--space-6);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-inverse);background:var(--gradient-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.btn-primary:hover{box-shadow:var(--shadow-glow-primary);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full)}.badge-success{background:var(--color-success-muted);color:var(--color-success)}.badge-danger{background:var(--color-danger-muted);color:var(--color-danger)}.badge-primary{background:var(--color-primary-muted);color:var(--color-primary)}.badge-accent{background:var(--color-accent-muted);color:var(--color-accent)}textarea,select,input:is([type=text],[type=tel],[type=email],[type=password],[type=search],[type=url],[type=number],[type=date],[type=datetime-local],[type=month],[type=time],[type=week]):not(.auth-pin__cell){font-size:var(--text-base)}input[type=date]:not(.native-temporal__input),input[type=datetime-local]:not(.native-temporal__input),input[type=time]:not(.native-temporal__input),input[type=month]:not(.native-temporal__input),input[type=week]:not(.native-temporal__input){min-width:0;max-width:100%}input[type=date]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{min-width:0;min-height:1lh}input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit{display:inline-flex;overflow:hidden;min-width:0;flex:1 1 auto}input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit-fields-wrapper,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-fields-wrapper{padding:0;min-width:0}input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit,input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit-year-field,input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit-month-field,input[type=date]:not(.native-temporal__input)::-webkit-datetime-edit-day-field,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-year-field,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-month-field,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-day-field,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-hour-field,input[type=datetime-local]:not(.native-temporal__input)::-webkit-datetime-edit-minute-field{padding-block:0}input[type=date]:not(.native-temporal__input)::-webkit-calendar-picker-indicator,input[type=datetime-local]:not(.native-temporal__input)::-webkit-calendar-picker-indicator{margin:0;padding:0;flex-shrink:0;line-height:1}input::-webkit-inner-spin-button{height:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);padding:var(--space-3) var(--space-5);border:var(--border-width) solid transparent;border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-semibold);line-height:1.2;text-align:center;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn--block{width:100%}.btn--sm{min-height:44px;padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn-solid--accent{color:#fff;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));border-color:transparent;box-shadow:0 10px 24px color-mix(in srgb,var(--color-accent) 24%,transparent)}.btn-solid--accent:hover:not(:disabled){box-shadow:0 12px 28px color-mix(in srgb,var(--color-accent) 36%,transparent);transform:translateY(-1px)}.btn-solid--accent:active:not(:disabled){transform:translateY(0)}.btn-solid--primary{color:var(--color-text-inverse);background:var(--gradient-primary, var(--color-primary));border-color:transparent}.btn-solid--primary:hover:not(:disabled){box-shadow:var(--shadow-glow-primary);transform:translateY(-1px)}.btn-solid--primary:active:not(:disabled){transform:translateY(0)}.btn-solid--warning{color:var(--color-bg, #050508);background:var(--color-warning);border-color:transparent}.btn-outline--accent{color:var(--color-accent);background:transparent;border-color:var(--color-accent)}.btn-outline--accent:hover:not(:disabled){background:var(--color-accent-muted)}.btn-outline--primary{color:var(--color-primary);background:transparent;border-color:var(--color-primary)}.btn-outline--primary:hover:not(:disabled){background:var(--color-primary-muted)}.btn-outline--warning{color:var(--color-warning);background:transparent;border-color:var(--color-warning)}.btn-outline--warning:hover:not(:disabled){background:color-mix(in srgb,var(--color-warning) 14%,transparent)}.btn-outline--muted{color:var(--color-text-secondary);background:transparent;border-color:var(--color-border)}.btn-outline--muted:hover:not(:disabled){background:color-mix(in srgb,var(--glass-bg) 80%,transparent);color:var(--color-text)}.btn-outline--danger{color:var(--color-danger);background:transparent;border-color:color-mix(in srgb,var(--color-danger) 42%,var(--color-border))}.btn-outline--danger:hover:not(:disabled){background:var(--color-danger-muted)}@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn-solid--accent:hover:not(:disabled),.btn-solid--primary:hover:not(:disabled){transform:none}}.app-shell{min-height:100%;display:flex;flex-direction:column;background:transparent}.app-shell__header{position:fixed;z-index:80;top:max(var(--shell-bar-margin),var(--safe-top));left:max(var(--shell-bar-margin),var(--safe-left));right:max(var(--shell-bar-margin),var(--safe-right));pointer-events:none}.app-shell--scroll-header-autohide .app-shell__header{transition:transform var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out)}.app-shell--scroll-header-autohide.app-shell--header-hidden .app-shell__header{transform:translate3d(0,calc(-100% - max(var(--shell-bar-margin),var(--safe-top))),0);opacity:0}.app-shell--scroll-header-autohide.app-shell--header-hidden .app-shell__header-bar{pointer-events:none}.app-shell__header-bar{pointer-events:auto;display:flex;align-items:center;width:100%;box-sizing:border-box;min-height:var(--shell-header-bar-height)}.app-shell__header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex:1;min-width:0}.app-shell__header-text{min-width:0;flex:1}.app-shell__back{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--touch-target);height:var(--touch-target);margin:calc(-1 * (var(--touch-target) - 1.3125rem) / 2) 0;padding:0;border:none;background:none;color:var(--color-primary);font:inherit;font-size:var(--text-xl);line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-shell__back:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.app-shell--with-back .app-shell__title{font-size:var(--text-base)}.app-shell__title{margin:0;font-size:var(--text-lg);font-weight:var(--font-normal);letter-spacing:var(--tracking-normal);line-height:var(--leading-normal)}.app-shell__subtitle{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-sm)}.app-shell--with-back .app-shell__subtitle{font-size:var(--text-xs)}.app-shell--athlete{--shell-bar-padding-y: var(--space-3);--shell-header-bar-height: calc(var(--shell-bar-padding-y) * 2 + 2.125rem + 2px);--shell-header-float-offset: calc( var(--shell-header-bar-height) + max(var(--shell-bar-margin), var(--safe-top)) )}.app-shell--athlete.app-shell--with-subtitle{--shell-header-bar-height: calc( var(--shell-bar-padding-y) * 2 + 1.40625rem + var(--space-1) + 1.3125rem + 2px );--shell-header-float-offset: calc( var(--shell-header-bar-height) + max(var(--shell-bar-margin), var(--safe-top)) )}.app-shell__main{flex:1;min-width:0;background:transparent;padding:calc(var(--content-header-gap) + var(--shell-header-float-offset)) max(var(--content-padding),var(--safe-right)) max(var(--content-padding),var(--safe-bottom)) max(var(--content-padding),var(--safe-left));max-width:var(--content-max-width);width:100%;margin:0 auto}.app-shell--with-bottom-nav .app-shell__main{padding-bottom:calc(var(--content-padding) + var(--bottom-nav-float-offset))}.app-shell--with-subtitle{--shell-header-bar-height: calc( var(--shell-bar-padding-y) * 2 + 1.40625rem + var(--space-1) + 1.3125rem + 2px );--shell-header-float-offset: calc( var(--shell-header-bar-height) + max(var(--shell-bar-margin), var(--safe-top)) )}.app-shell__header-bar.glass{background:linear-gradient(145deg,color-mix(in srgb,var(--glass-tint) 72%,transparent) 0%,transparent 55%),color-mix(in srgb,var(--glass-white) 58%,transparent),color-mix(in srgb,var(--glass-frost) 42%,transparent),color-mix(in srgb,var(--glass-bg) 68%,transparent);border-color:color-mix(in srgb,var(--glass-border) 62%,transparent);box-shadow:0 10px 36px #0000003d,inset 0 1px #ffffff1f}.app-shell__header-bar.glass:before{opacity:.72}@media(prefers-reduced-transparency:reduce){.app-shell__header-bar{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--color-surface)}}.bottom-nav{position:fixed;z-index:80;left:max(var(--bottom-nav-margin),var(--safe-left));right:max(var(--bottom-nav-margin),var(--safe-right));bottom:var(--bottom-nav-margin);pointer-events:none}.bottom-nav__cluster{pointer-events:auto;width:100%}.bottom-nav--split .bottom-nav__cluster{display:flex;align-items:stretch;gap:var(--space-2)}.bottom-nav__bar{pointer-events:auto;width:100%;padding:var(--bottom-nav-bar-padding-y) var(--space-2)}.bottom-nav--split .bottom-nav__bar{flex:1 1 auto;min-width:0}.bottom-nav__action-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:var(--bottom-nav-bar-padding-y) var(--space-3)}.bottom-nav__action-bar.glass{border-radius:var(--radius-xl);overflow:hidden;isolation:isolate;background:linear-gradient(145deg,color-mix(in srgb,var(--glass-tint) 75%,transparent) 0%,transparent 55%),color-mix(in srgb,var(--glass-white) 62%,transparent),color-mix(in srgb,var(--glass-frost) 44%,transparent),color-mix(in srgb,var(--glass-bg) 72%,transparent);border:1px solid color-mix(in srgb,var(--glass-border) 65%,transparent);box-shadow:0 10px 36px #00000042,inset 0 1px #ffffff21}.bottom-nav__action{display:flex;align-items:center;justify-content:center;width:var(--bottom-nav-action-size, 52px);height:var(--bottom-nav-action-size, 52px);padding:0;border:1px solid color-mix(in srgb,var(--color-primary) 45%,transparent);border-radius:var(--radius-full);background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--color-primary) 28%,transparent) 0%,color-mix(in srgb,var(--color-primary) 8%,transparent) 55%,transparent 100%),color-mix(in srgb,var(--color-surface) 88%,transparent);color:var(--color-primary);cursor:pointer;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary) 12%,transparent),0 8px 24px color-mix(in srgb,var(--color-primary) 18%,transparent);-webkit-tap-highlight-color:transparent}.bottom-nav__action:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.bottom-nav__action--active{color:var(--color-text);border-color:color-mix(in srgb,var(--color-primary) 70%,transparent);background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--color-primary) 42%,transparent) 0%,color-mix(in srgb,var(--color-primary) 16%,transparent) 55%,transparent 100%),color-mix(in srgb,var(--color-surface) 92%,transparent)}.bottom-nav__action-icon-wrap{display:flex;align-items:center;justify-content:center;width:calc(var(--bottom-nav-icon-size) + 2px);height:calc(var(--bottom-nav-icon-size) + 2px)}.bottom-nav__bar.glass{border-radius:var(--radius-xl);overflow:hidden;isolation:isolate;background:linear-gradient(145deg,color-mix(in srgb,var(--glass-tint) 75%,transparent) 0%,transparent 55%),color-mix(in srgb,var(--glass-white) 62%,transparent),color-mix(in srgb,var(--glass-frost) 44%,transparent),color-mix(in srgb,var(--glass-bg) 72%,transparent);border-color:color-mix(in srgb,var(--glass-border) 65%,transparent);box-shadow:0 10px 36px #00000042,inset 0 1px #ffffff21}.bottom-nav__bar.glass:before{opacity:.68}.bottom-nav__items{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:var(--bottom-nav-slot-gap)}.bottom-nav__items--compact{display:grid;grid-template-columns:repeat(var(--bottom-nav-item-count, 4),minmax(0,1fr));gap:0}.bottom-nav__items--compact .bottom-nav__spotlight-track{width:calc(100% / var(--bottom-nav-item-count, 4));transform:translate(calc(var(--bottom-nav-active-index, 0) * 100%))}.bottom-nav__items--compact .bottom-nav__item{flex:unset;width:var(--bottom-nav-slot-size);justify-self:center}.bottom-nav__items--labeled{display:grid;grid-template-columns:repeat(var(--bottom-nav-item-count, 3),minmax(0,1fr));gap:0}.bottom-nav__items--labeled .bottom-nav__spotlight-track{width:calc(100% / var(--bottom-nav-item-count, 3));transform:translate(calc(var(--bottom-nav-active-index, 0) * 100%))}.bottom-nav__items--labeled .bottom-nav__item{flex:unset;width:auto;justify-self:center}.bottom-nav__item--labeled{flex-direction:column;gap:2px;width:auto;min-width:0;height:auto;min-height:var(--bottom-nav-slot-size);padding:2px 0 0}.bottom-nav__label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;font-weight:var(--font-medium);line-height:1.1;letter-spacing:.01em;color:inherit;opacity:.82}.bottom-nav__item--active .bottom-nav__label{opacity:1}.bottom-nav--labeled{--bottom-nav-inner-height: calc(var(--bottom-nav-slot-size) + 14px)}.bottom-nav__spotlight-track{position:absolute;bottom:0;left:0;z-index:0;width:var(--bottom-nav-slot-size);height:3px;transform:translate(calc(var(--bottom-nav-active-index, 0) * (var(--bottom-nav-slot-size) + var(--bottom-nav-slot-gap))));transition:transform var(--duration-normal) var(--ease-out);pointer-events:none}.bottom-nav__spotlight{width:68%;height:100%;margin:0 auto;border-radius:var(--radius-full);background:var(--color-primary);box-shadow:0 0 6px color-mix(in srgb,var(--color-primary) 55%,transparent),0 0 14px color-mix(in srgb,var(--color-primary) 22%,transparent)}.bottom-nav__item{position:relative;z-index:1;flex:0 0 var(--bottom-nav-slot-size);display:flex;align-items:center;justify-content:center;width:var(--bottom-nav-slot-size);height:var(--bottom-nav-slot-size);padding:0;border:none;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent}.bottom-nav__item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.bottom-nav__icon-wrap{display:flex;align-items:center;justify-content:center;width:var(--bottom-nav-icon-size);height:var(--bottom-nav-icon-size);transform:scale(.9);transform-origin:center;transition:transform var(--duration-normal) var(--ease-out),color var(--duration-fast) var(--ease-out)}.bottom-nav__item--active{color:var(--color-primary)}.bottom-nav__item--active .bottom-nav__icon-wrap{transform:scale(1.08)}.bottom-nav__icon{width:100%;height:100%;display:block;transform-origin:center}.bottom-nav__icon--home{transform:scale(1.16)}.bottom-nav__icon--add{transform:scale(1.05)}@media(prefers-reduced-motion:reduce){.bottom-nav__spotlight-track,.bottom-nav__icon-wrap{transition:none}.bottom-nav__item--active .bottom-nav__icon-wrap,.bottom-nav__item:not(.bottom-nav__item--active) .bottom-nav__icon-wrap{transform:none}}@media(prefers-reduced-transparency:reduce){.bottom-nav__bar.glass,.bottom-nav__action-bar.glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--color-surface);border-color:var(--color-border)}.bottom-nav__action,.bottom-nav__spotlight{box-shadow:none}}.auth-screen{position:relative;min-height:100%;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;background:transparent}.auth-screen__bg{position:fixed;z-index:0;pointer-events:none;top:0;right:0;bottom:0;left:0;background:transparent}.auth-screen__orb{display:none}.auth-screen__orb--primary{width:min(420px,90vw);height:min(420px,90vw);top:-12%;right:-20%;background:radial-gradient(circle,rgba(0,191,192,.12) 0%,transparent 70%)}.auth-screen__orb--accent{width:min(320px,70vw);height:min(320px,70vw);bottom:5%;left:-15%;background:radial-gradient(circle,rgba(0,191,192,.06) 0%,transparent 70%);animation-delay:-4s}.auth-screen__grid{display:none}@keyframes auth-float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-12px,16px) scale(1.05)}}.auth-screen__content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;padding:max(var(--space-5),var(--safe-top)) max(var(--space-4),var(--safe-right)) max(var(--space-5),var(--safe-bottom)) max(var(--space-4),var(--safe-left));max-width:var(--content-max-width);width:100%;margin:0 auto}.auth-screen__role{position:absolute;top:max(var(--space-4),var(--safe-top));right:max(var(--space-4),var(--safe-right));z-index:2;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 60%),var(--color-primary-muted);backdrop-filter:blur(12px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturate));border:1px solid color-mix(in srgb,var(--color-primary) 28%,var(--glass-border));border-radius:var(--radius-full);box-shadow:inset 0 1px #ffffff1f}.auth-brand{margin-bottom:var(--space-5);padding-right:4.75rem}.auth-brand__row{display:flex;align-items:center;gap:var(--space-3)}.auth-brand__text{min-width:0;text-align:left}.auth-brand__logo{display:inline-flex;flex-shrink:0;filter:var(--logo-glow, drop-shadow(0 0 24px rgba(45, 212, 191, .35)))}.auth-brand__name{margin:0;font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-brand__tagline{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--color-text-secondary);line-height:var(--leading-normal);white-space:pre-line}.auth-brand__role{display:inline-block;margin-top:var(--space-3);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 60%),var(--color-primary-muted);backdrop-filter:blur(12px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturate));border:1px solid color-mix(in srgb,var(--color-primary) 28%,var(--glass-border));border-radius:var(--radius-full);box-shadow:inset 0 1px #ffffff1f}.auth-card{background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 48%),var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--glass-shadow);position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glass-highlight);pointer-events:none}.auth-card:after{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--glass-edge);pointer-events:none}.auth-card>*{position:relative;z-index:1}.auth-card__title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);letter-spacing:var(--tracking-tight)}.auth-card__subtitle{margin:var(--space-1) 0 var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}.auth-field{margin-bottom:var(--space-4)}.auth-field--pin{margin-bottom:var(--space-3)}.auth-field__label{display:block;margin-bottom:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary)}.auth-field__input{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-medium);letter-spacing:.02em;color:var(--color-text);background:linear-gradient(180deg,rgba(255,255,255,.07) 0%,transparent 45%),var(--glass-bg-input);backdrop-filter:blur(14px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(14px) saturate(var(--glass-saturate));border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0000001f;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.auth-field__input:focus,.auth-field__input:focus-visible{outline:none;border-color:color-mix(in srgb,var(--color-primary) 55%,var(--glass-border));box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0000001f}.auth-field__input::placeholder{color:var(--color-text-muted);font-weight:var(--font-normal)}.auth-field__input--phone{caret-color:transparent}.auth-pin{display:flex;gap:var(--space-2);justify-content:center}.auth-pin__cell{width:40px;height:46px;text-align:center;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text);background:linear-gradient(180deg,rgba(255,255,255,.07) 0%,transparent 45%),var(--glass-bg-input);backdrop-filter:blur(14px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(14px) saturate(var(--glass-saturate));border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0000001f;transition:border-color var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast);caret-color:transparent;-webkit-text-security:disc;text-security:disc}.auth-pin__cell--inactive{pointer-events:none}.auth-pin__cell--active{pointer-events:auto}.auth-pin__cell:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted);transform:translateY(-2px)}.auth-pin__cell--filled{border-color:#2dd4bf59;background:var(--color-primary-subtle)}.auth-error{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--color-danger);background:var(--color-danger-muted);border-radius:var(--radius-md);border:1px solid rgba(248,113,113,.25)}.auth-submit{width:100%;min-height:var(--touch-target);margin-top:0;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-inverse);background:var(--gradient-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),opacity var(--duration-fast)}.auth-submit:hover:not(:disabled){box-shadow:var(--shadow-glow-primary);transform:translateY(-1px)}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-switch{margin-top:var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--color-text-muted)}.auth-switch__link{background:none;border:none;padding:0;margin-left:var(--space-1);font-family:inherit;font-size:inherit;font-weight:var(--font-semibold);color:var(--color-primary);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.auth-switch__link:hover{color:var(--color-primary-hover)}.auth-hint{margin-top:var(--space-4);text-align:center;font-size:var(--text-xs);color:var(--color-text-muted)}.auth-hint--invite{margin-top:0;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 22%,transparent)}.auth-stats{display:flex;justify-content:center;gap:var(--space-6);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--glass-border)}.auth-stats--inline{align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--glass-border);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:nowrap;overflow:hidden}.auth-stats__chip{display:inline-flex;align-items:baseline;gap:.35em;min-width:0;white-space:nowrap}.auth-stats__sep{flex-shrink:0;opacity:.45}.auth-stats__item{text-align:center}.auth-stats__value{font-size:var(--text-sm);font-weight:var(--font-bold);background:var(--gradient-achievement);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-stats--inline .auth-stats__value{display:inline;font-size:inherit}.auth-stats__label{font-size:inherit;color:inherit;margin-top:0}.auth-stats:not(.auth-stats--inline) .auth-stats__value{display:block;font-size:var(--text-lg)}.auth-stats:not(.auth-stats--inline) .auth-stats__label{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-1)}[data-theme^=neon-] .auth-screen__orb{filter:blur(100px);opacity:.75}[data-theme^=neon-] .auth-screen__orb--primary{width:min(500px,110vw);height:min(500px,110vw)}[data-theme^=neon-] .auth-screen__orb--accent{width:min(380px,85vw);height:min(380px,85vw)}[data-theme^=neon-] .auth-screen__bg:after{display:none}[data-theme^=neon-] .auth-screen__grid{background-image:linear-gradient(color-mix(in srgb,var(--color-primary) 4%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 4%,transparent) 1px,transparent 1px);opacity:.7}[data-theme^=neon-] .auth-brand__logo{filter:var(--logo-glow)}[data-theme^=neon-] .auth-brand__name{text-shadow:0 0 30px color-mix(in srgb,var(--color-primary) 35%,transparent)}[data-theme^=neon-] .auth-screen__role{color:var(--color-accent);background:var(--color-accent-muted);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent);box-shadow:0 0 16px color-mix(in srgb,var(--color-accent) 25%,transparent)}[data-theme^=neon-] .auth-card{background:linear-gradient(165deg,#12121cf2,#08080efa);border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);box-shadow:var(--shadow-card),var(--shadow-glow-primary),var(--rim-light)}[data-theme=neon-crimson] .auth-card{background:linear-gradient(165deg,#1a0e14f2,#080506fa)}[data-theme^=neon-] .auth-card:after{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--neon-card-rim);pointer-events:none}[data-theme^=neon-] .auth-card__title{text-shadow:0 0 20px rgba(255,255,255,.15)}[data-theme^=neon-] .auth-field__input{background:linear-gradient(180deg,#08080ee6,#12121cf2);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 2px 8px #00000080,0 0 0 1px #0000004d}[data-theme^=neon-] .auth-field__input:focus,[data-theme^=neon-] .auth-field__input:focus-visible{border-color:var(--color-primary);box-shadow:inset 0 2px 8px #0006,0 0 24px color-mix(in srgb,var(--color-primary) 25%,transparent)}[data-theme^=neon-] .auth-pin__cell{background:linear-gradient(180deg,#08080ef2,#10101afa);box-shadow:inset 0 2px 6px #00000073}[data-theme^=neon-] .auth-pin__cell:focus{box-shadow:inset 0 2px 6px #00000059,0 0 0 2px var(--color-primary-muted),0 0 20px color-mix(in srgb,var(--color-primary) 35%,transparent);transform:translateY(-3px) scale(1.02)}[data-theme^=neon-] .auth-pin__cell--filled{border-color:var(--color-primary);background:var(--color-primary-muted);box-shadow:inset 0 0 12px color-mix(in srgb,var(--color-primary) 15%,transparent),0 0 16px color-mix(in srgb,var(--color-primary) 30%,transparent);color:var(--color-primary)}[data-theme^=neon-] .auth-submit{background:var(--gradient-primary);background-size:200% 200%;animation:neon-btn-shimmer 4s ease infinite;box-shadow:var(--shadow-glow-primary),var(--rim-light);text-shadow:0 1px 2px rgba(0,0,0,.3);border:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent)}[data-theme^=neon-] .auth-submit:hover:not(:disabled){box-shadow:0 0 30px color-mix(in srgb,var(--color-primary) 60%,transparent),0 0 60px color-mix(in srgb,var(--color-primary) 25%,transparent),var(--rim-light);transform:translateY(-2px) scale(1.01)}@keyframes neon-btn-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}[data-theme^=neon-] .auth-stats{border-top-color:color-mix(in srgb,var(--color-primary) 12%,transparent)}[data-theme^=neon-] .auth-stats__value{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-accent) 40%,transparent))}[data-theme^=neon-] .auth-stats__chip:first-child .auth-stats__value{background:var(--gradient-stats-primary);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--color-primary) 50%,transparent))}[data-theme^=neon-] .auth-stats__chip:last-child .auth-stats__value{background:var(--gradient-stats-accent);-webkit-background-clip:text;background-clip:text}[data-theme^=neon-] .auth-error{border-color:color-mix(in srgb,var(--color-danger) 40%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--color-danger) 15%,transparent)}[data-theme^=neon-] .theme-preview__item--selected{box-shadow:var(--shadow-glow-primary),var(--shadow-glow-accent)}[data-theme^=neon-] .theme-preview__header{background:#050508eb}[data-theme=neon-crimson] .theme-preview__header{background:#080506eb}[data-theme^=neon-] .theme-preview__select{box-shadow:var(--shadow-glow-primary),var(--rim-light);border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent)}[data-theme^=neon-] .theme-preview__select:hover{box-shadow:0 0 28px color-mix(in srgb,var(--color-primary) 55%,transparent),var(--rim-light)}[data-theme=soviet-sport]{--font-sans: "PT Sans Narrow", "Arial Narrow", sans-serif;--font-display: "Oswald", "PT Sans Narrow", "Arial Narrow", sans-serif;--font-medium: 700;--font-semibold: 700;--font-bold: 700;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 5px;--radius-xl: 6px;--tracking-normal: .04em;--soviet-field-paper-bg: color-mix(in srgb, var(--soviet-paper) 72%, var(--soviet-paper-dark));--soviet-field-paper-text: var(--soviet-paper-ink);--soviet-field-paper-placeholder: var(--soviet-paper-muted);--soviet-field-paper-border: color-mix(in srgb, var(--soviet-paper-ink) 28%, transparent);--soviet-field-dark-bg: #2a241c;--soviet-field-dark-text: #f0e6d2;--soviet-field-dark-placeholder: #c9b896;--soviet-field-dark-border: color-mix(in srgb, var(--soviet-field-dark-placeholder) 38%, transparent)}[data-theme=soviet-sport] html{min-height:100%;min-height:100dvh;background:var(--app-bg-gradient);background-attachment:fixed}[data-theme=soviet-sport] body{background:transparent}[data-theme=soviet-sport] #root:after{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");background-size:180px 180px;-webkit-mask-image:none;mask-image:none;opacity:.14;mix-blend-mode:overlay}[data-theme=soviet-sport] .athlete-quick-actions__label,[data-theme=soviet-sport] .progress-ring__value,[data-theme=soviet-sport] .athlete-home-sessions__time,[data-theme=soviet-sport] .athlete-home-last-session__activity,[data-theme=soviet-sport] .bottom-nav__label{font-family:var(--font-display);font-weight:600}[data-theme=soviet-sport] .app-shell__title,[data-theme=soviet-sport] .athlete-home-section__title,[data-theme=soviet-sport] .auth-brand__name,[data-theme=soviet-sport] .auth-card__title,[data-theme=soviet-sport] .theme-preview__name{font-weight:600}[data-theme=soviet-sport] .app-shell__title{letter-spacing:.06em;font-size:var(--text-base);line-height:var(--leading-tight)}[data-theme=soviet-sport] .workouts-completed-badge__lightning{display:none}[data-theme=soviet-sport] .workouts-completed-badge__fire{font-size:0;line-height:1;animation:none}[data-theme=soviet-sport] .workouts-completed-badge__fire:before{content:"★";font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;line-height:1;color:var(--color-primary)}[data-theme=soviet-sport] .athlete-home-section__title{letter-spacing:.08em;font-size:var(--text-xs);border-left:4px solid var(--color-primary);padding-left:var(--space-2)}[data-theme=soviet-sport] .athlete-home-section__when{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary)}[data-theme=soviet-sport] .app-shell__header-bar.glass,[data-theme=soviet-sport] .bottom-nav__bar.glass,[data-theme=soviet-sport] .bottom-nav__action-bar.glass{backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--color-text);background:linear-gradient(180deg,#2a2218f2,#12100efa);border:2px solid color-mix(in srgb,var(--color-primary) 45%,rgba(0,0,0,.5));box-shadow:3px 3px #00000073;border-radius:var(--radius-md)}[data-theme=soviet-sport] .app-shell__header-bar.glass:before,[data-theme=soviet-sport] .app-shell__header-bar.glass:after,[data-theme=soviet-sport] .bottom-nav__bar.glass:before,[data-theme=soviet-sport] .bottom-nav__bar.glass:after,[data-theme=soviet-sport] .bottom-nav__action-bar.glass:before,[data-theme=soviet-sport] .bottom-nav__action-bar.glass:after{display:none}[data-theme=soviet-sport] .bottom-nav__item--active .bottom-nav__label{color:var(--color-primary)}[data-theme=soviet-sport] .bottom-nav__spotlight{border-radius:0;box-shadow:none;background:var(--color-primary)}[data-theme=soviet-sport] .bottom-nav__action{background:linear-gradient(180deg,#e86a38,#d45228 55%,#b8431c);color:var(--soviet-paper-light);border:2px solid rgba(0,0,0,.45);box-shadow:3px 3px #0006}[data-theme=soviet-sport] .bottom-nav__action--active{background:linear-gradient(145deg,#f07840,#d45228);color:var(--soviet-paper-light)}[data-theme=soviet-sport] .bottom-nav__bar .bottom-nav__item:not(.bottom-nav__item--active){color:var(--soviet-paper-light)}[data-theme=soviet-sport] .bottom-nav__bar .bottom-nav__item--active{color:var(--color-primary)}[data-theme=soviet-sport] .app-shell__header-bar .glass:not(.app-shell__header-bar){backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--color-text);--color-text: #f0e6d2;--color-text-secondary: #c9b896;--color-text-muted: #8a7d68;background:linear-gradient(180deg,#32281ef2,#181410fa);border:2px solid color-mix(in srgb,var(--color-primary) 40%,rgba(0,0,0,.45));box-shadow:2px 2px #00000059;border-radius:var(--radius-md)}[data-theme=soviet-sport] .app-shell__header-bar .glass:not(.app-shell__header-bar):before,[data-theme=soviet-sport] .app-shell__header-bar .glass:not(.app-shell__header-bar):after{display:none}[data-theme=soviet-sport] .glass:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile),[data-theme=soviet-sport] .glass--panel:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile),[data-theme=soviet-sport] .card,[data-theme=soviet-sport] .auth-card{--color-text: var(--soviet-paper-ink);--color-text-secondary: #4a3f32;--color-text-muted: var(--soviet-paper-muted);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--soviet-paper-ink);background:var(--soviet-paper-bg);border:2px solid color-mix(in srgb,var(--soviet-paper-ink) 32%,transparent);box-shadow:3px 3px #00000052,inset 0 1px #ffffff29,inset 0 -4px 16px #4834201f;border-radius:var(--radius-md)}[data-theme=soviet-sport] .glass:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile):before,[data-theme=soviet-sport] .glass--panel:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile):before,[data-theme=soviet-sport] .card:before,[data-theme=soviet-sport] .auth-card:before{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='0.62'/%3E%3C/svg%3E");background-size:120px 120px;opacity:.34;mix-blend-mode:multiply}[data-theme=soviet-sport] .glass:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile):not(.athlete-home-last-session):after,[data-theme=soviet-sport] .glass--panel:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile):not(.athlete-home-last-session):after,[data-theme=soviet-sport] .card:not(.athlete-home-last-session):after,[data-theme=soviet-sport] .auth-card:after{display:block;top:0;left:0;right:0;height:auto;border-radius:inherit;opacity:1;mix-blend-mode:multiply;background:var(--soviet-paper-stains)}[data-theme=soviet-sport] .glass:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile) .text-muted,[data-theme=soviet-sport] .glass--panel:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile) .text-muted,[data-theme=soviet-sport] .card .text-muted,[data-theme=soviet-sport] .auth-card .text-muted{color:var(--soviet-paper-muted)}[data-theme=soviet-sport] .glass:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile) .text-secondary,[data-theme=soviet-sport] .glass--panel:not(.app-shell__header-bar):not(.bottom-nav__bar):not(.bottom-nav__action-bar):not(.athlete-quick-actions__tile) .text-secondary,[data-theme=soviet-sport] .card .text-secondary,[data-theme=soviet-sport] .auth-card .text-secondary{color:var(--color-text-secondary)}[data-theme=soviet-sport] .athlete-quick-actions__tile.glass.glass--panel{min-height:108px;padding:var(--space-4) var(--space-2);border-width:2px;border-radius:var(--radius-sm)}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(1){color:var(--soviet-paper-light);background:linear-gradient(180deg,#e86a38,#d45228 55%,#b8431c);border-color:#0006}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(2){color:var(--soviet-paper-light);background:linear-gradient(180deg,#5a7d8c,#4a6d82 55%,#3d5a68);border-color:#00000061}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(3){color:var(--soviet-paper-ink);background:radial-gradient(ellipse 70% 45% at 18% 92%,rgba(100,72,40,.14) 0%,transparent 55%),linear-gradient(180deg,var(--soviet-paper-light) 0%,var(--soviet-paper) 45%,var(--soviet-paper-dark) 100%);border-color:#30241861}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(3):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='0.62'/%3E%3C/svg%3E");background-size:120px 120px;opacity:.3;mix-blend-mode:multiply;pointer-events:none;border-radius:inherit}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(1) .athlete-quick-actions__icon,[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(2) .athlete-quick-actions__icon{color:var(--soviet-paper-light)}[data-theme=soviet-sport] .athlete-quick-actions__tile:nth-child(3) .athlete-quick-actions__icon{color:var(--color-primary)}[data-theme=soviet-sport] .athlete-quick-actions__label{text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-xs);font-weight:500}[data-theme=soviet-sport] .athlete-quick-actions__hint{text-transform:uppercase;letter-spacing:.05em;opacity:.82}[data-theme=soviet-sport] .app-shell__back,[data-theme=soviet-sport] .athlete-week-progress__metric-icon,[data-theme=soviet-sport] .settings-section__chevron,[data-theme=soviet-sport] .settings-nav-row__chevron,[data-theme=soviet-sport] .whoop-refresh-icon{color:var(--color-primary)}[data-theme=soviet-sport] .settings-section__chevron,[data-theme=soviet-sport] .settings-nav-row__chevron{border-right-color:var(--color-primary);border-bottom-color:var(--color-primary)}[data-theme=soviet-sport] .progress-ring__track{stroke:var(--soviet-ring-track);opacity:.85}[data-theme=soviet-sport] .progress-ring__fill--low{stroke:var(--soviet-progress-low)}[data-theme=soviet-sport] .progress-ring__fill--mid{stroke:var(--soviet-progress-mid)}[data-theme=soviet-sport] .progress-ring__fill--high{stroke:var(--soviet-progress-high)}[data-theme=soviet-sport] .progress-ring__value--low{color:var(--soviet-progress-low)}[data-theme=soviet-sport] .progress-ring__value--mid{color:var(--soviet-progress-mid)}[data-theme=soviet-sport] .progress-ring__value--high{color:var(--soviet-progress-high)}[data-theme=soviet-sport] .progress-ring__sublabel{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}[data-theme=soviet-sport] .athlete-week-progress__metric-icon{color:var(--color-primary)}[data-theme=soviet-sport] .athlete-week-progress__metric-label{text-transform:uppercase;letter-spacing:.05em;font-size:var(--text-xs)}[data-theme=soviet-sport] .athlete-home-sessions__time{color:var(--soviet-paper-ink);letter-spacing:.04em}[data-theme=soviet-sport] .athlete-home-sessions__coach-name{letter-spacing:.03em;font-size:var(--text-xs)}[data-theme=soviet-sport] .athlete-home-last-session.glass--panel{position:relative;overflow:hidden}[data-theme=soviet-sport] .athlete-home-last-session.glass--panel>*{position:relative;z-index:1}[data-theme=soviet-sport] .athlete-home-last-session.glass--panel:after{display:block;content:"";position:absolute;bottom:0;top:0;left:0;right:0;height:auto;z-index:0;border-radius:inherit;opacity:1;mix-blend-mode:multiply;pointer-events:none;background:repeating-conic-gradient(from -8deg at 50% 120%,color-mix(in srgb,var(--color-accent) 22%,transparent) 0deg 10deg,transparent 10deg 20deg),var(--soviet-paper-stains)}[data-theme=soviet-sport] .athlete-home-last-session__activity{letter-spacing:.05em}[data-theme=soviet-sport] .auth-screen__bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-conic-gradient(from -4deg at 50% -8%,rgba(212,82,40,.28) 0deg 7deg,transparent 7deg 14deg),radial-gradient(ellipse 130% 55% at 50% -12%,rgba(212,82,40,.32) 0%,transparent 62%);pointer-events:none}[data-theme=soviet-sport] .auth-brand__name{letter-spacing:.08em}[data-theme=soviet-sport] .auth-card{backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--soviet-paper-ink);background:var(--soviet-paper-bg);border:2px solid color-mix(in srgb,var(--soviet-paper-ink) 32%,transparent);box-shadow:4px 4px #00000061;border-radius:var(--radius-md)}[data-theme=soviet-sport] .auth-card__title{letter-spacing:.06em}[data-theme=soviet-sport] .auth-card .auth-field__label{color:var(--soviet-paper-muted)}[data-theme=soviet-sport] .auth-field__input,[data-theme=soviet-sport] .auth-pin__cell{backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--soviet-field-paper-text);background:var(--soviet-field-paper-bg);border:2px solid var(--soviet-field-paper-border);box-shadow:inset 0 2px 6px #00000014;border-radius:var(--radius-sm)}[data-theme=soviet-sport] .auth-field__input::placeholder{color:var(--soviet-field-paper-placeholder);opacity:1}[data-theme=soviet-sport] .auth-pin__cell--filled{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 55%,var(--soviet-field-paper-border));background:color-mix(in srgb,var(--color-primary) 10%,var(--soviet-field-paper-bg))}[data-theme=soviet-sport] .auth-field__input:focus,[data-theme=soviet-sport] .auth-field__input:focus-visible{border-color:var(--color-primary);box-shadow:inset 0 2px 6px #0000000f}[data-theme=soviet-sport] .auth-submit{font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;background:var(--gradient-primary);border:2px solid rgba(0,0,0,.35);box-shadow:3px 3px #00000059;border-radius:var(--radius-sm)}[data-theme=soviet-sport] .auth-submit:hover:not(:disabled){box-shadow:4px 4px #0006;transform:translateY(-1px)}[data-theme=soviet-sport] .auth-screen__role{color:var(--color-primary);background:var(--color-primary-muted);border-color:color-mix(in srgb,var(--color-primary) 40%,transparent);text-transform:uppercase;letter-spacing:.06em}[data-theme=soviet-sport] .theme-preview__header{background:#12100ef0}[data-theme=soviet-sport] .theme-preview__item--selected{box-shadow:var(--shadow-card),0 0 0 2px var(--color-primary)}[data-theme=soviet-sport] .theme-preview__select{font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:var(--gradient-primary);border:2px solid rgba(0,0,0,.35);box-shadow:3px 3px #00000059}[data-theme=soviet-sport] .theme-preview__select:hover{box-shadow:4px 4px #0006}[data-theme=soviet-sport] .btn-primary{font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:2px solid rgba(0,0,0,.35);box-shadow:3px 3px #00000059;border-radius:var(--radius-sm)}[data-theme=soviet-sport] .btn-primary:hover{box-shadow:4px 4px #0006}[data-theme=soviet-sport] .badge{border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em}[data-theme=soviet-sport] .sessions-balance,[data-theme=soviet-sport] .sessions-balance--low,[data-theme=soviet-sport] .sessions-balance--mid,[data-theme=soviet-sport] .sessions-balance--high,[data-theme=soviet-sport] .sessions-balance--circle{border-radius:var(--radius-sm);color:var(--soviet-paper-light);background:var(--color-primary);border:2px solid rgba(0,0,0,.35)}[data-theme=soviet-sport] .glass-input,[data-theme=soviet-sport] .settings-field__input,[data-theme=soviet-sport] .select-picker__trigger,[data-theme=soviet-sport] .athlete-my-plan__input,[data-theme=soviet-sport] .schedule-sheet__select,[data-theme=soviet-sport] .invite-target__select{backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--soviet-field-paper-text);background:var(--soviet-field-paper-bg);border:2px solid var(--soviet-field-paper-border);border-radius:var(--radius-sm);box-shadow:inset 0 2px 6px #0000000f}[data-theme=soviet-sport] .glass-input::placeholder,[data-theme=soviet-sport] .settings-field__input::placeholder,[data-theme=soviet-sport] .athlete-my-plan__input::placeholder{color:var(--soviet-field-paper-placeholder);opacity:1}[data-theme=soviet-sport] .glass-input:focus,[data-theme=soviet-sport] .glass-input:focus-visible,[data-theme=soviet-sport] .settings-field__input:focus,[data-theme=soviet-sport] .settings-field__input:focus-visible,[data-theme=soviet-sport] .select-picker__trigger:focus-visible,[data-theme=soviet-sport] .select-picker--open .select-picker__trigger,[data-theme=soviet-sport] .athlete-my-plan__input:focus,[data-theme=soviet-sport] .athlete-my-plan__input:focus-visible{border-color:var(--color-primary);outline:none}[data-theme=soviet-sport] .native-temporal--glass{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--soviet-field-paper-bg);border:2px solid var(--soviet-field-paper-border);box-shadow:inset 0 2px 6px #0000000f}[data-theme=soviet-sport] .native-temporal--glass .native-temporal__input,[data-theme=soviet-sport] .native-temporal--glass .native-temporal__input[type=date]::-webkit-datetime-edit,[data-theme=soviet-sport] .native-temporal--glass .native-temporal__input[type=time]::-webkit-datetime-edit{color:var(--soviet-field-paper-text)}[data-theme=soviet-sport] .select-picker__list{backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--soviet-field-paper-text);background:var(--soviet-paper-bg);border:2px solid var(--soviet-field-paper-border);border-radius:var(--radius-sm);box-shadow:3px 3px #00000052}[data-theme=soviet-sport] .select-picker__group-label{color:var(--soviet-field-paper-placeholder)}[data-theme=soviet-sport] .select-picker__option{color:var(--soviet-field-paper-text)}[data-theme=soviet-sport] .select-picker__option:hover:not(:disabled),[data-theme=soviet-sport] .select-picker__option:focus-visible{background:color-mix(in srgb,var(--color-primary) 10%,var(--soviet-paper))}[data-theme=soviet-sport] .select-picker__option--selected{background:color-mix(in srgb,var(--color-primary) 16%,var(--soviet-paper))}[data-theme=soviet-sport] .select-picker__check{color:var(--color-primary)}[data-theme=soviet-sport] .meal-dish-search__results{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--soviet-field-paper-text);background:var(--soviet-paper-bg);border:2px solid var(--soviet-field-paper-border);box-shadow:3px 3px #00000052}[data-theme=soviet-sport] .meal-dish-search__option{color:var(--soviet-field-paper-text)}[data-theme=soviet-sport] .meal-dish-search__option:hover:not(:disabled),[data-theme=soviet-sport] .meal-dish-search__option:focus-visible{background:color-mix(in srgb,var(--color-primary) 10%,var(--soviet-paper))}[data-theme=soviet-sport] .onboarding__input,[data-theme=soviet-sport] .onboarding__textarea,[data-theme=soviet-sport] .meal-manual__input,[data-theme=soviet-sport] .meal-manual .meal-manual__input,[data-theme=soviet-sport] .weight-dynamics__input,[data-theme=soviet-sport] .athlete-add-workout__input,[data-theme=soviet-sport] .athlete-add-workout__select,[data-theme=soviet-sport] .coach-athlete-card__session-input{color:var(--soviet-field-dark-text);background:var(--soviet-field-dark-bg);border:2px solid var(--soviet-field-dark-border);border-radius:var(--radius-sm);box-shadow:inset 0 2px 6px #0000002e}[data-theme=soviet-sport] .onboarding__input::placeholder,[data-theme=soviet-sport] .onboarding__textarea::placeholder,[data-theme=soviet-sport] .meal-manual__input::placeholder,[data-theme=soviet-sport] .meal-manual .meal-manual__input::placeholder,[data-theme=soviet-sport] .weight-dynamics__input::placeholder,[data-theme=soviet-sport] .athlete-add-workout__input::placeholder,[data-theme=soviet-sport] .coach-athlete-card__session-input::placeholder{color:var(--soviet-field-dark-placeholder);opacity:1}[data-theme=soviet-sport] .onboarding__input:focus,[data-theme=soviet-sport] .onboarding__input:focus-visible,[data-theme=soviet-sport] .onboarding__textarea:focus,[data-theme=soviet-sport] .onboarding__textarea:focus-visible,[data-theme=soviet-sport] .meal-manual__input:focus,[data-theme=soviet-sport] .meal-manual__input:focus-visible,[data-theme=soviet-sport] .weight-dynamics__input:focus,[data-theme=soviet-sport] .weight-dynamics__input:focus-visible,[data-theme=soviet-sport] .athlete-add-workout__input:focus,[data-theme=soviet-sport] .athlete-add-workout__input:focus-visible,[data-theme=soviet-sport] .athlete-add-workout .select-picker--open .select-picker__trigger,[data-theme=soviet-sport] .athlete-add-workout__select:focus-visible{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--soviet-field-dark-border));outline:none}[data-theme=soviet-sport] .onboarding__temporal,[data-theme=soviet-sport] .native-temporal--schedule{background:var(--soviet-field-dark-bg);border:2px solid var(--soviet-field-dark-border);border-radius:var(--radius-sm)}[data-theme=soviet-sport] .onboarding__temporal .native-temporal__input,[data-theme=soviet-sport] .native-temporal--schedule .native-temporal__input,[data-theme=soviet-sport] .onboarding__temporal .native-temporal__input[type=date]::-webkit-datetime-edit,[data-theme=soviet-sport] .native-temporal--schedule .native-temporal__input[type=date]::-webkit-datetime-edit,[data-theme=soviet-sport] .native-temporal--schedule .native-temporal__input[type=time]::-webkit-datetime-edit{color:var(--soviet-field-dark-text)}[data-theme=soviet-sport] .onboarding__temporal:focus-within,[data-theme=soviet-sport] .native-temporal--schedule:focus-within{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--soviet-field-dark-border))}[data-theme=soviet-sport] select.settings-field__input option{color:var(--soviet-field-paper-text);background:var(--soviet-paper)}@media(prefers-reduced-transparency:reduce){[data-theme=soviet-sport] .glass,[data-theme=soviet-sport] .glass--panel,[data-theme=soviet-sport] .card,[data-theme=soviet-sport] .auth-card{background:var(--soviet-paper)}[data-theme=soviet-sport] #root:after{display:none}}.theme-preview{min-height:100dvh;background:var(--color-bg);color:var(--color-text)}.theme-preview__header{position:sticky;top:0;z-index:10;padding:max(var(--space-4),var(--safe-top)) max(var(--space-5),var(--safe-right)) var(--space-4) max(var(--space-5),var(--safe-left));text-align:center;background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 50%),color-mix(in srgb,var(--glass-bg) 90%,var(--color-bg));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-bottom:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffff14}.theme-preview__header h1{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold)}.theme-preview__header p{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-muted)}.theme-preview__list{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-6) max(var(--space-4),var(--safe-right)) max(var(--space-8),var(--safe-bottom)) max(var(--space-4),var(--safe-left));max-width:420px;margin:0 auto}.theme-preview__item{border-radius:var(--radius-xl);overflow:hidden;border:2px solid var(--color-border);transition:border-color var(--duration-normal)}.theme-preview__item--selected{border-color:var(--color-primary);box-shadow:var(--shadow-glow-primary)}.theme-preview__meta{padding:var(--space-4) var(--space-5);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 55%),var(--glass-bg);backdrop-filter:blur(16px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(16px) saturate(var(--glass-saturate));border-bottom:1px solid var(--glass-border)}.theme-preview__name{margin:0;font-size:var(--text-base);font-weight:var(--font-bold)}.theme-preview__tagline{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-secondary)}.theme-preview__vibe{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.theme-preview__swatches{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.theme-preview__swatch{width:28px;height:28px;border-radius:var(--radius-full);border:2px solid rgba(255,255,255,.15)}.theme-preview__frame{position:relative;min-height:420px;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.theme-preview__frame .auth-screen{min-height:420px;transform:scale(.92);transform-origin:top center}.theme-preview__actions{padding:var(--space-4) var(--space-5);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 55%),var(--glass-bg);backdrop-filter:blur(16px) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(16px) saturate(var(--glass-saturate));border-top:1px solid var(--glass-border)}.theme-preview__select{width:100%;min-height:44px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-inverse);background:var(--gradient-primary);border:none;border-radius:var(--radius-md);cursor:pointer}.theme-preview__select:hover{box-shadow:var(--shadow-glow-primary)}.theme-preview__back{display:block;width:100%;margin-top:var(--space-6);padding:var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.theme-preview__current{display:inline-block;margin-top:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-primary);background:var(--color-primary-muted);border-radius:var(--radius-full)}.onboarding__content{justify-content:flex-start;padding-top:max(var(--space-6),var(--safe-top))}.onboarding__header{margin-bottom:var(--space-5)}.onboarding__greeting{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary);letter-spacing:.02em}.onboarding__welcome{margin:var(--space-2) 0 0;font-size:var(--text-sm);line-height:1.5}.onboarding__title{margin:var(--space-3) 0 0;font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:1.2}.onboarding__hook{margin:var(--space-3) 0 0;font-size:var(--text-base);line-height:1.45;color:var(--color-text-secondary)}.onboarding__meta{margin:var(--space-2) 0 0;font-size:var(--text-xs);line-height:1.4}.onboarding__meta-label{font-weight:var(--font-semibold);color:var(--color-text-muted)}.onboarding__subtitle{margin:var(--space-2) 0 0;font-size:var(--text-sm);line-height:1.45}.onboarding__progress{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.onboarding__dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-border);transition:background .2s ease,transform .2s ease}.onboarding__dot--active{background:var(--color-primary)}.onboarding__dot--current{transform:scale(1.25)}.onboarding__card{width:100%;max-width:420px}.onboarding__lead{margin:0 0 var(--space-4);font-size:var(--text-sm);line-height:1.55}.onboarding__examples{margin:0 0 var(--space-4);font-size:var(--text-xs);line-height:1.5}.onboarding__field-hint{font-size:var(--text-xs);line-height:1.4}.onboarding__options{display:grid;gap:var(--space-3)}.onboarding__option{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);font-weight:var(--font-semibold);text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.onboarding__option:hover{border-color:var(--color-primary-muted);transform:translateY(-1px)}.onboarding__option--selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.onboarding__field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;font-size:var(--text-sm);color:var(--color-text-secondary)}.onboarding__input,.onboarding__textarea{width:100%;min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--text-base);font-family:inherit}.onboarding__temporal{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated)}.onboarding__temporal:focus-within{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border))}.onboarding__temporal .onboarding__input,.onboarding__temporal .native-temporal__input{width:100%;border:none;background:transparent}.onboarding__textarea{resize:vertical;min-height:120px}.onboarding__char-count{font-size:var(--text-xs)}.onboarding__weight-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.onboarding__importance-list{display:flex;flex-direction:column;gap:var(--space-5)}.focus-importance__header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2)}.focus-importance__label{font-size:var(--text-sm);font-weight:var(--font-medium)}.focus-importance__value{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-primary)}.focus-importance__input{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--color-border) 0%,var(--color-primary) 100%);cursor:pointer}.focus-importance__input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-primary);box-shadow:0 2px 8px #0003}.focus-importance__input::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-primary)}.onboarding__focus,.onboarding__personal-goal{display:flex;flex-direction:column;gap:var(--space-4)}.onboarding__actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5)}.onboarding__actions .auth-submit{min-width:140px}.coach-athletes{display:grid;gap:var(--space-4)}.coach-athletes__notice{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-success) 14%,transparent);color:var(--color-success);font-size:var(--text-sm)}.coach-athlete-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.coach-athlete-card__name{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold)}.coach-athlete-card__meta{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-sm)}.coach-athlete-card__traits{display:grid;gap:var(--space-2);margin-bottom:var(--space-3)}.coach-athlete-card__trait-row{display:flex;justify-content:space-between;font-size:var(--text-sm)}.coach-athlete-card__goal{margin:0;font-size:var(--text-sm);line-height:1.45;color:var(--color-text-secondary)}.coach-athlete-card__pending{font-size:var(--text-sm);color:var(--color-text-muted)}.coach-athlete-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-2)}.coach-athlete-card__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.coach-athlete-card__profile-link{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;margin:0;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.coach-athlete-card__profile-link .coach-athlete-card__completed{margin:var(--space-1) 0 0;font-size:var(--text-xs)}.coach-athlete-card__identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.coach-athlete-card__avatar{width:44px;height:44px;border-radius:var(--radius-full);object-fit:cover;background:#0000002e;flex-shrink:0}.coach-athlete-card__avatar--placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-weight:var(--font-semibold)}.coach-athlete-card__sessions-badge{white-space:nowrap}.coach-athlete-card__session-controls{display:grid;grid-template-columns:1fr auto;gap:var(--space-2);margin-top:var(--space-3)}.coach-athlete-card__session-input{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);color:var(--color-text);-webkit-text-fill-color:var(--color-text)}.coach-athlete-card__session-input::placeholder{color:var(--color-text-muted);opacity:1}.coach-athlete-card__session-btn{margin-top:0!important;width:auto!important;padding:var(--space-2) var(--space-3)!important;min-height:44px;white-space:nowrap}.coach-athlete-card--accordion{padding:0;overflow:hidden}.coach-athlete-card__summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4);border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.coach-athlete-card__summary .coach-athlete-card__name{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-athlete-card__expanded{padding:0 var(--space-4) var(--space-4);border-top:1px solid var(--color-border)}.coach-athlete-card__expanded .coach-athlete-card__meta{margin-top:var(--space-3)}.coach-athletes-sessions-backdrop{background:#0009;touch-action:none;overscroll-behavior:none}.coach-athletes-sessions-sheet{max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 16px 48px #0006;backdrop-filter:none;-webkit-backdrop-filter:none;touch-action:none;overscroll-behavior:none}.coach-athletes-sessions-sheet__body{overflow:hidden;overscroll-behavior:contain}.coach-athletes-sessions-sheet .schedule-sheet__body,.coach-athletes-sessions-sheet .schedule-sheet__header{padding-inline:var(--space-4);background:var(--color-surface)}.coach-athletes-sessions-sheet__balance{margin:0 0 var(--space-3);font-size:var(--text-sm)}.coach-athletes-sessions-sheet__picker-row{display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:wrap;margin:var(--space-4) 0 var(--space-6);padding-bottom:var(--space-2)}.coach-athletes-sessions-sheet__picker-label,.coach-athletes-sessions-sheet__picker-unit{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.2}.coach-athletes-sessions-sheet__submit{margin-top:var(--space-2)}.coach-athletes-sessions-sheet__hint{margin:var(--space-3) 0 0;font-size:var(--text-xs);text-align:center}.coach-athletes-sessions-sheet__error{margin:var(--space-3) 0 0}.coach-athlete-card__completed{margin:var(--space-3) 0 0;font-size:var(--text-sm)}.coach-btn{min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);border:2px solid transparent;background:transparent;font:inherit;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent}.coach-btn:disabled{opacity:.5;cursor:not-allowed}.coach-btn--primary{color:var(--color-primary);border-color:var(--color-primary)}.coach-btn--primary.coach-athlete-card__session-btn{border-color:transparent}.coach-btn--warning{color:var(--color-warning);border-color:var(--color-warning)}.coach-btn--muted{color:var(--color-text-secondary);border-color:var(--color-border)}.coach-athlete-profile__back{width:auto!important;margin:0 0 var(--space-4)!important;padding-left:var(--space-3)!important}.coach-athlete-history{display:grid;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4)}.coach-athlete-history__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.coach-athlete-history__title{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold)}.coach-athlete-history__balance{flex-shrink:0;font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap}.coach-athlete-history__balance strong{color:var(--color-text);font-weight:var(--font-semibold)}.coach-athlete-history__month-nav{margin:0}.coach-athlete-history__month-label{text-transform:capitalize}.coach-athlete-history__batches{display:grid;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface-muted) 72%,transparent)}.coach-athlete-history__batches-heading{display:grid;gap:var(--space-1)}.coach-athlete-history__batches-title{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold)}.coach-athlete-history__batches-hint{margin:0;font-size:var(--text-xs);line-height:1.4}.coach-athlete-history__batches-table{min-width:0}.coach-athlete-history__table--batches{table-layout:fixed;width:100%}.coach-athlete-history__table--batches th,.coach-athlete-history__table--batches td{padding:var(--space-2) var(--space-1)}.coach-athlete-history__table--batches th{font-size:var(--text-xs);white-space:normal;line-height:1.2}.coach-athlete-history__table--batches th:nth-child(1),.coach-athlete-history__table--batches td:nth-child(1){width:34%;text-align:left}.coach-athlete-history__table--batches th:nth-child(2),.coach-athlete-history__table--batches th:nth-child(3),.coach-athlete-history__table--batches th:nth-child(4),.coach-athlete-history__table--batches td:nth-child(2),.coach-athlete-history__table--batches td:nth-child(3),.coach-athlete-history__table--batches td:nth-child(4){width:22%;text-align:center;font-variant-numeric:tabular-nums}.coach-athlete-history__batch-date{white-space:nowrap;font-variant-numeric:tabular-nums}.coach-athlete-history__remaining{font-weight:var(--font-semibold)}.coach-athlete-history__hint{margin:0;font-size:var(--text-sm)}.coach-athlete-history__table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.coach-athlete-history__table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.coach-athlete-history__table th,.coach-athlete-history__table td{padding:var(--space-2) var(--space-2);text-align:left;border-bottom:1px solid var(--color-border-subtle, var(--color-border))}.coach-athlete-history__table th{font-weight:var(--font-semibold);color:var(--color-text-secondary);white-space:nowrap}.coach-athlete-history__date{white-space:nowrap}.coach-athlete-history__table td:nth-child(2),.coach-athlete-history__table td:nth-child(3),.coach-athlete-history__table th:nth-child(2),.coach-athlete-history__table th:nth-child(3){width:2.75rem;text-align:center}.coach-athlete-history__table tbody tr:last-child td{border-bottom:none}.coach-athlete-history__credit{color:var(--color-success, #34d399);font-weight:var(--font-semibold)}.coach-athlete-history__debit{color:var(--color-warning, #fbbf24);font-weight:var(--font-semibold)}.coach-athlete-history__actions-col,.coach-athlete-history__actions{width:2.75rem;text-align:center;white-space:nowrap}.coach-athlete-history__delete-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-target, 44px);height:var(--touch-target, 44px);margin:0;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-danger);cursor:pointer;-webkit-tap-highlight-color:transparent}.coach-athlete-history__delete-icon{width:18px;height:18px}.coach-athlete-history__delete-btn:disabled{opacity:.45;cursor:not-allowed}.coach-athletes__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.coach-athletes__hint{margin:0;flex:1}.coach-athletes__add-btn{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-full);border:2px solid var(--color-primary);background:#2dd4bf1f;color:var(--color-primary);font-size:1.5rem;line-height:1;font-weight:var(--font-semibold);cursor:pointer}.coach-athletes__add-form{display:grid;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-4)}.coach-athletes__add-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.coach-athletes__add-input{width:100%;min-height:44px}.coach-athletes__add-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.coach-athlete-card__title-block{min-width:0}.coach-athlete-card__app-status{display:inline-block;margin-top:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium)}.coach-athlete-card__app-status--with-app{color:var(--color-primary)}.coach-athlete-card__app-status--without-app{color:var(--color-text-muted)}.sessions-balance{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border:1px solid currentColor;border-radius:var(--radius-full);background:transparent;font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;flex-shrink:0;line-height:1.2}.sessions-balance--low{color:var(--color-danger);border-color:var(--color-danger)}.sessions-balance--mid{color:var(--color-warning);border-color:var(--color-warning)}.sessions-balance--high{color:var(--color-success);border-color:var(--color-success)}.sessions-balance--circle{justify-content:center;width:40px;height:40px;padding:0;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-bold);line-height:1}.sessions-balance-btn{margin:0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s ease,opacity .15s ease}.sessions-balance-btn:active:not(:disabled){transform:scale(.94)}.sessions-balance-btn:disabled{opacity:.55;cursor:wait}.workouts-completed-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);flex-shrink:0;background:color-mix(in srgb,var(--glass-white) 62%,transparent);border-color:color-mix(in srgb,var(--color-accent) 28%,transparent);animation:workouts-badge-enter .55s cubic-bezier(.22,1,.36,1) both}.workouts-completed-badge__lightning{position:absolute;top:-20%;right:-40%;bottom:-20%;left:-40%;z-index:2;background:linear-gradient(105deg,transparent 38%,color-mix(in srgb,var(--color-accent) 35%,transparent) 46%,rgba(255,255,255,.72) 50%,color-mix(in srgb,var(--color-accent) 30%,transparent) 54%,transparent 62%);opacity:0;transform:translate(-120%) skew(-18deg);animation:workouts-badge-lightning .9s ease-out .2s 1 both;pointer-events:none}.workouts-completed-badge__fire{font-size:1.35em;line-height:1;display:inline-block;transform-origin:center bottom;animation:workouts-badge-fire-pulse 1.15s ease-in-out .1s 1 both,workouts-badge-fire-glow 1.15s ease-out .1s 1 both}.workouts-completed-badge__count{font-size:var(--text-sm);font-weight:var(--font-bold);line-height:1;color:var(--color-text);font-variant-numeric:tabular-nums;animation:workouts-badge-count-pop .7s cubic-bezier(.22,1,.36,1) .35s 1 both}@keyframes workouts-badge-enter{0%{opacity:0;transform:scale(.88) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes workouts-badge-lightning{0%{opacity:0;transform:translate(-120%) skew(-18deg)}18%{opacity:0}42%{opacity:.95}58%{opacity:0;transform:translate(120%) skew(-18deg)}to{opacity:0;transform:translate(120%) skew(-18deg)}}@keyframes workouts-badge-fire-pulse{0%{transform:scale(.75) rotate(-6deg)}28%{transform:scale(1.28) rotate(2deg)}48%{transform:scale(1.05) rotate(-1deg)}68%{transform:scale(1.18) rotate(1deg)}to{transform:scale(1) rotate(0)}}@keyframes workouts-badge-fire-glow{0%,to{filter:drop-shadow(0 0 0 transparent)}28%{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--color-accent) 80%,transparent)) drop-shadow(0 0 14px rgba(255,210,80,.55))}48%{filter:drop-shadow(0 0 2px color-mix(in srgb,var(--color-accent) 35%,transparent))}68%{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--color-accent) 70%,transparent)) drop-shadow(0 0 12px rgba(255,180,50,.45))}}@keyframes workouts-badge-count-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.workouts-completed-badge,.workouts-completed-badge__lightning,.workouts-completed-badge__fire,.workouts-completed-badge__count{animation:none}}.settings-page{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.settings-avatar{display:flex;justify-content:center;margin-bottom:var(--space-2)}.settings-avatar__button{position:relative;width:112px;height:112px;padding:0;border:none;border-radius:var(--radius-full);background:transparent;cursor:pointer}.settings-avatar__image,.settings-avatar__placeholder{width:100%;height:100%;border-radius:var(--radius-full);object-fit:cover;display:flex;align-items:center;justify-content:center;border:2px solid color-mix(in srgb,var(--color-primary) 35%,var(--glass-border));box-shadow:var(--shadow-glow-primary)}.settings-avatar__placeholder{font-size:var(--text-3xl);font-weight:var(--font-normal);color:var(--color-primary);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 55%),var(--glass-bg)}.settings-avatar__badge{position:absolute;left:50%;bottom:-4px;transform:translate(-50%);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-bg);background:var(--gradient-primary, var(--color-primary));white-space:nowrap}.settings-avatar__input{display:none}.settings-message{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm)}.settings-message--error{color:var(--color-danger);background:var(--color-danger-muted)}.settings-message--success{color:var(--color-success);background:var(--color-success-muted)}.settings-section{padding:var(--space-3);min-width:0}.settings-section__toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.settings-section__toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius-sm)}.settings-section__title{margin:0;font-size:var(--text-lg);font-weight:var(--font-normal)}.settings-section__chevron{flex-shrink:0;width:.55rem;height:.55rem;border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);transform:rotate(45deg);transition:transform var(--duration-normal) var(--ease-out)}.settings-section--open .settings-section__chevron{transform:rotate(-135deg) translateY(2px)}.settings-section__body{margin-top:var(--space-4);min-width:0}.settings-section__lead{margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.5}.settings-row{display:grid;gap:var(--space-1);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.settings-row:last-child{border-bottom:none}.settings-row__label{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--color-text-muted);text-transform:uppercase}.settings-row__value{font-size:var(--text-base);color:var(--color-text)}.settings-row__hint{font-size:var(--text-xs);color:var(--color-text-muted)}.settings-field{display:grid;gap:var(--space-2);margin-top:var(--space-3);min-width:0}.settings-field-grid{display:grid;gap:var(--space-3)}.settings-field-grid>.settings-field{min-width:0}.settings-field__label{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-text-secondary)}.settings-field__input{width:100%;min-width:0;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-base)}.settings-placeholder{margin:0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.settings-btn{min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);border:1px solid transparent;font-size:var(--text-sm);font-weight:var(--font-normal);cursor:pointer}.settings-btn--primary{margin-top:var(--space-4);width:100%;color:var(--color-bg);background:var(--gradient-primary, var(--color-primary))}.settings-btn--ghost{color:var(--color-text-secondary);background:transparent;border-color:var(--color-border)}.settings-link{display:block;width:100%;margin-top:var(--space-2);padding:var(--space-3) 0;border:none;background:transparent;text-align:left;color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--font-normal);cursor:pointer}.settings-link--danger{color:var(--color-danger)}.settings-nav-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:var(--touch-target);padding:var(--space-1) var(--space-1);border:none;background:transparent;color:var(--color-text);font-family:inherit;font-size:var(--text-base);font-weight:var(--font-normal);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.settings-nav-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.settings-nav-row__label{min-width:0}.settings-nav-row__chevron{flex-shrink:0;width:.55rem;height:.55rem;border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);transform:rotate(-45deg)}.settings-coach-list{list-style:none;margin:0 0 var(--space-4);padding:0;display:grid;gap:var(--space-2)}.settings-coach-list__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:color-mix(in srgb,var(--glass-bg) 70%,transparent)}.settings-coach-list__identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.settings-coach-list__avatar{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover;background:#0000002e;flex-shrink:0}.settings-coach-list__avatar--placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-weight:var(--font-normal)}.settings-coach-list__name{font-weight:var(--font-normal)}.settings-coach-list__meta{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.settings-coach-add{display:grid;gap:var(--space-3)}.avatar-crop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-end;justify-content:center;padding:max(var(--space-4),var(--safe-top)) max(var(--space-4),var(--safe-right)) max(var(--space-4),var(--safe-bottom)) max(var(--space-4),var(--safe-left))}.avatar-crop__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000009e}.avatar-crop__sheet{position:relative;z-index:1;width:min(100%,420px);padding:var(--space-5)}.avatar-crop__title{margin:0;font-size:var(--text-xl)}.avatar-crop__hint{margin:var(--space-2) 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.45}.avatar-crop__viewport{position:relative;width:280px;height:280px;margin:0 auto;overflow:hidden;border-radius:var(--radius-lg);background:#00000059;touch-action:none;cursor:grab}.avatar-crop__viewport:active{cursor:grabbing}.avatar-crop__image{position:absolute;top:0;left:0;transform-origin:top left;-webkit-user-select:none;user-select:none}.avatar-crop__frame{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(255,255,255,.85);border-radius:var(--radius-lg);box-shadow:inset 0 0 0 999px #00000047;pointer-events:none}.avatar-crop__zoom{display:grid;gap:var(--space-2);margin-top:var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm)}.avatar-crop__error{margin:var(--space-3) 0 0;color:var(--color-danger);font-size:var(--text-sm)}.avatar-crop__actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.avatar-crop__actions .settings-btn{flex:1}@media(min-width:480px){.settings-field-grid{grid-template-columns:1fr 1fr}.settings-coach-add{grid-template-columns:1fr auto;align-items:center}.settings-coach-add .settings-btn--primary{margin-top:0;width:auto}}.native-temporal{display:block;flex:1 1 0;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}.native-temporal--inline{flex:none;display:inline-block;width:auto;max-width:100%}.native-temporal--schedule{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface)}.native-temporal--schedule:focus-within{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border-subtle))}.native-temporal--glass{border-radius:var(--radius-lg)}.native-temporal--glass:focus-within{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 55%,var(--glass-border))}.native-temporal__input{display:block;width:100%;min-width:0;max-width:100%;min-height:var(--touch-target);padding:0 var(--space-3);margin:0;border:none;background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-base);box-sizing:border-box;text-align:center;overflow:hidden;position:relative}.native-temporal__input.glass-input{width:100%;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:none;background:transparent}.native-temporal--glass{border:1px solid var(--glass-border, var(--color-border));background:var(--glass-bg, var(--color-bg-elevated));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.native-temporal__input[type=date]::-webkit-datetime-edit,.native-temporal__input[type=time]::-webkit-datetime-edit,.native-temporal__input[type=datetime-local]::-webkit-datetime-edit{display:inline-flex;flex:1 1 auto;justify-content:center;min-width:0;overflow:hidden;padding:0}.native-temporal__input[type=date]::-webkit-datetime-edit-fields-wrapper,.native-temporal__input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{padding:0}.native-temporal__input[type=time]::-webkit-date-and-time-value,.native-temporal__input[type=date]::-webkit-date-and-time-value,.native-temporal__input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-align:center}.native-temporal__input[type=time]::-webkit-calendar-picker-indicator,.native-temporal__input[type=date]::-webkit-calendar-picker-indicator,.native-temporal__input[type=datetime-local]::-webkit-calendar-picker-indicator{position:absolute;width:0;height:0;margin:0;padding:0;opacity:0;pointer-events:none}.invite-page{display:flex;flex-direction:column;gap:var(--space-5)}.invite-page__lead{margin:0;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.invite-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-4);text-align:center}.invite-card__qr{width:min(220px,70vw);height:min(220px,70vw);padding:var(--space-3);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-glow-primary)}.invite-card__qr img{display:block;width:100%;height:100%}.invite-card__hint{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.invite-link{width:100%;margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-xs);line-height:var(--leading-normal);word-break:break-all;color:var(--color-text-secondary);background:var(--glass-bg-input);border:1px solid var(--glass-border)}.invite-actions{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.invite-banner{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);text-align:center}.invite-banner--info{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent)}.invite-banner--success{color:var(--color-success);background:var(--color-success-muted)}.invite-banner--error{color:var(--color-danger);background:var(--color-danger-muted)}.invite-target{display:grid;gap:var(--space-2);min-width:0;max-width:100%;padding:var(--space-4)}.invite-target__label{font-size:var(--text-sm);color:var(--color-text-secondary)}.invite-target__select{width:100%;min-height:44px}.schedule-panel{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;max-width:100%;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.schedule-toolbar{display:flex;flex-direction:column;gap:var(--space-3)}.schedule-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);padding:var(--space-1);border-radius:var(--radius-lg);background:var(--color-surface-muted)}.schedule-mode-toggle__btn{min-height:var(--touch-target);border:none;border-radius:calc(var(--radius-lg) - var(--space-1));background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer}.schedule-mode-toggle__btn--active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 4px #00000014}.schedule-week-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.schedule-week-nav__label{flex:1;text-align:center;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.schedule-week-nav__btn{min-width:var(--touch-target);min-height:var(--touch-target);border:none;border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-text);font:inherit;cursor:pointer}.schedule-settings-btn{min-width:calc(var(--touch-target) * 2);min-height:calc(var(--touch-target) * 2);border:none;border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-text);font-size:1.75rem;line-height:1;cursor:pointer}.schedule-hint{margin:0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.schedule-grid-wrap{overflow:hidden;border-radius:var(--radius-lg);min-width:0;max-width:100%}.schedule-grid-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;min-width:0;max-width:100%}.schedule-grid{display:grid;grid-template-columns:52px repeat(var(--schedule-day-count),minmax(88px,1fr));min-width:max(100%,calc(52px + var(--schedule-day-count) * 88px))}.schedule-grid__corner,.schedule-grid__time,.schedule-grid__day{display:flex;align-items:center;justify-content:center;min-height:52px;padding:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border-subtle)}.schedule-grid__day{position:sticky;top:0;z-index:2;flex-direction:column;gap:2px;line-height:1.1}.schedule-grid__time{position:sticky;left:0;z-index:1;justify-content:flex-end;padding-right:var(--space-3);background:var(--color-surface);border-right:1px solid var(--color-border-subtle)}.schedule-grid__corner{position:sticky;left:0;top:0;z-index:3;background:var(--color-surface);border-right:1px solid var(--color-border-subtle)}.schedule-cell{min-height:52px;min-width:88px;padding:var(--space-1);border:1px solid var(--color-border-subtle);border-top:none;border-left:none;background:var(--color-surface);touch-action:manipulation}.schedule-cell__btn{width:100%;height:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-1);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-xs);font-weight:var(--font-medium);text-align:center;cursor:pointer;padding:var(--space-1);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.schedule-cell--empty .schedule-cell__btn{color:var(--color-text-muted)}.schedule-cell--occupied .schedule-cell__btn{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-text)}.schedule-cell--exception .schedule-cell__btn{outline:1px dashed color-mix(in srgb,var(--color-accent) 45%,transparent)}.schedule-cell--move-target .schedule-cell__btn{background:color-mix(in srgb,var(--color-accent) 20%,transparent)}.schedule-cell--move-source .schedule-cell__btn{opacity:.45}.schedule-cell--dragging .schedule-cell__btn{opacity:.3}.schedule-cell__plus{font-size:var(--text-lg);line-height:1}.schedule-cell__name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.schedule-message{margin:0;font-size:var(--text-sm)}.schedule-message--error{color:var(--color-danger)}.schedule-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000059;display:flex;align-items:flex-end;justify-content:center;padding:var(--space-4) max(var(--space-4),var(--safe-right)) max(var(--space-4),var(--safe-bottom)) max(var(--space-4),var(--safe-left));overscroll-behavior:none;touch-action:none}.schedule-sheet{width:min(100%,var(--content-max-width));max-height:min(85vh,560px);display:flex;flex-direction:column;min-width:0;border-radius:var(--radius-xl);overflow:hidden;touch-action:pan-y}.schedule-sheet__body{flex:1 1 auto;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding:var(--space-4)}.schedule-sheet__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.schedule-sheet__heading{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.schedule-sheet__title{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold)}.schedule-sheet__subtitle{margin:0;font-size:var(--text-sm);color:var(--color-text-secondary)}.schedule-sheet__close{min-width:var(--touch-target);min-height:var(--touch-target);border:none;border-radius:var(--radius-full);background:var(--color-surface-muted);font:inherit;cursor:pointer}.schedule-sheet__list{overflow-y:auto;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.schedule-sheet__athlete{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--touch-target);padding:var(--space-3);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.schedule-sheet__avatar{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0}.schedule-sheet__avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:#fff;font-weight:var(--font-semibold)}.schedule-sheet__actions{display:grid;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--color-border-subtle)}.schedule-sheet__action{min-height:var(--touch-target);border:none;border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-text);font:inherit;font-weight:var(--font-medium);cursor:pointer}.schedule-sheet__action--danger{color:var(--color-danger)}.schedule-sheet__body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.schedule-sheet__back{align-self:flex-start;padding:0;border:none;background:transparent;color:var(--color-primary);font:inherit;font-size:var(--text-sm);cursor:pointer}.schedule-sheet__field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.schedule-sheet__field-label{font-size:var(--text-sm)}.schedule-sheet__select{width:100%;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-base)}.schedule-sheet__current-activity{margin:0;font-size:var(--text-sm)}.schedule-sheet__submit{min-height:var(--touch-target);border:none;border-radius:var(--radius-lg);background:var(--gradient-primary, var(--color-primary));color:var(--color-text-inverse);font:inherit;font-size:var(--text-sm);cursor:pointer}.schedule-settings-form{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.schedule-settings-form__row{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.schedule-settings-form__label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.schedule-settings-form__chips{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.schedule-settings-form__chip{min-height:40px;min-width:0;padding:0 var(--space-1);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--text-xs);cursor:pointer}.schedule-settings-form__chip--active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-text)}.schedule-settings-form__inputs{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.schedule-settings-form__time-row{display:flex;flex-direction:row;align-items:stretch;gap:var(--space-3);min-width:0}.schedule-settings-form__time-chip{display:flex;flex:1 1 0;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0;min-height:var(--touch-target);padding:0 var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}.schedule-settings-form__time-chip--active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}.schedule-settings-form__time-chip--empty .schedule-settings-form__time-chip-value{color:var(--color-text-secondary)}.schedule-settings-form__time-chip-label{flex-shrink:0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.schedule-settings-form__time-chip-value{font-size:var(--text-base);font-variant-numeric:tabular-nums;font-weight:var(--font-semibold)}.schedule-settings-form__label-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.schedule-settings-form__clear{padding:0;border:none;background:transparent;color:var(--color-primary);font:inherit;font-size:var(--text-sm);cursor:pointer}.schedule-settings-form__duration-chip{align-self:flex-start;min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-base);font-variant-numeric:tabular-nums;font-weight:var(--font-semibold);cursor:pointer}.schedule-settings-form__duration-chip--active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}.schedule-settings-form__duration-picker{display:flex;justify-content:center;padding:var(--space-2) 0}.schedule-settings-form__time-pair{display:flex;flex:1 1 0;align-items:center;gap:var(--space-2);min-width:0}.schedule-settings-form__time-label{flex-shrink:0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary)}.schedule-settings-form__field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.schedule-settings-form__input{width:100%;min-width:0;max-width:100%;min-height:var(--touch-target);padding:0 var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-base);box-sizing:border-box}.schedule-settings-form__save{min-height:var(--touch-target);border:none;border-radius:var(--radius-lg);background:var(--color-accent);color:#fff;font:inherit;font-weight:var(--font-semibold);cursor:pointer}.app-shell--schedule-landscape .app-shell__main{max-width:none;width:100%;padding-left:max(var(--space-2),var(--safe-left));padding-right:max(var(--space-2),var(--safe-right));overflow-x:clip}@media(orientation:landscape){.schedule-grid{grid-template-columns:56px repeat(var(--schedule-day-count),minmax(0,1fr));min-width:100%}.schedule-cell{min-width:0}}.coach-home{display:flex;flex-direction:column;gap:var(--space-4)}.coach-home__day-nav{padding:var(--space-1) 0;background:transparent;border:none;box-shadow:none}.coach-home__day-label{text-transform:capitalize}.coach-home__show-hidden{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.coach-home__show-hidden input{width:18px;height:18px;accent-color:var(--color-accent)}.coach-home__notice{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-success) 14%,transparent);color:var(--color-success);font-size:var(--text-sm)}.coach-home__empty{padding:var(--space-6) var(--space-4);text-align:center}.coach-home__list{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;list-style:none}.coach-home-session{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.coach-home-session__main{display:flex;align-items:center;gap:var(--space-3);min-width:0}.coach-home-session__identity{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;padding:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.coach-home-session__identity:disabled{opacity:.55;cursor:not-allowed}.coach-home-session__identity:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-lg)}.coach-home-session__avatar{width:44px;height:44px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0}.coach-home-session__avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-muted);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.coach-home-session__info{flex:1;min-width:0}.coach-home-session__title-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.coach-home-session__name{font-size:var(--text-base);font-weight:var(--font-semibold);line-height:1.3}.coach-home-session__completed-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-success) 16%,transparent);color:var(--color-success);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1.2}.coach-home-session--completed{opacity:.82}.coach-home-session__meta{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1);font-size:var(--text-sm)}.coach-home-session__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.coach-home-session .sessions-balance{border:none;padding-left:0;padding-right:0}.coach-home-session__action{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-target);height:var(--touch-target);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-text-secondary);cursor:pointer}.coach-home-session__action svg{width:20px;height:20px}.coach-home-session__action:disabled{opacity:.55;cursor:not-allowed}.coach-home-session__action--complete{color:var(--color-success);border-color:color-mix(in srgb,var(--color-success) 35%,transparent)}.coach-home-weight-backdrop{background:#0009}.coach-home-weight-sheet{max-width:420px;max-height:min(85dvh,560px);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 16px 48px #0006;backdrop-filter:none;-webkit-backdrop-filter:none}.coach-home-weight-sheet .schedule-sheet__body,.coach-home-weight-sheet .schedule-sheet__header,.coach-home-weight-sheet .coach-home-weight-sheet__footer{background:var(--color-surface)}.coach-home-weight-sheet__footer{flex-shrink:0}.coach-home-weight-sheet .schedule-sheet__select{background:var(--color-surface-muted);backdrop-filter:none;-webkit-backdrop-filter:none}.coach-home-weight-sheet__summary{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-muted)}.coach-home-weight-sheet__loading{margin:0 0 var(--space-4)}.coach-home-weight-sheet__bounds{margin:var(--space-3) 0 var(--space-4);font-size:var(--text-sm)}.coach-home-weight-sheet__bounds strong{color:var(--color-text);font-weight:var(--font-semibold)}.coach-home-weight-sheet__error{margin:0}.coach-home-weight-sheet__current{margin:0;font-size:var(--text-base)}.coach-home-weight-sheet__date{margin:0;font-size:var(--text-sm)}.coach-home-complete-sheet__field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.coach-home-complete-sheet__label{font-size:var(--text-sm)}.coach-home-complete-sheet__activity{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold)}.coach-home-complete-sheet__effort-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.coach-home-complete-sheet__effort-value{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text)}.coach-home-complete-sheet__effort-input{width:100%;accent-color:var(--color-accent)}.coach-home-complete-sheet__effort-scale{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-xs);color:var(--color-text-secondary)}.coach-home-complete-sheet__preview{margin:0 0 var(--space-4);font-size:var(--text-sm)}.coach-home-complete-sheet__preview strong{color:var(--color-text)}.coach-home-complete-sheet__weight-hint{margin:0 0 var(--space-4);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.coach-home-complete-sheet__weight-link{padding:0;border:none;background:none;color:var(--color-primary);font:inherit;font-size:inherit;text-decoration:underline;cursor:pointer}.coach-home-complete-sheet__weight-link:disabled{opacity:.6;cursor:not-allowed}.coach-home-complete-sheet__deduct{margin:0 0 var(--space-4);font-size:var(--text-sm);line-height:1.45}.pwa-install{position:fixed;z-index:90;left:max(var(--space-4),var(--safe-left));right:max(var(--space-4),var(--safe-right));bottom:var(--bottom-nav-float-offset, max(var(--space-4), var(--safe-bottom)));animation:pwa-install-in .45s cubic-bezier(.22,1,.36,1)}.pwa-install__card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 40px #00000059}.pwa-install__head{display:flex;align-items:flex-start;gap:var(--space-3)}.pwa-install__icon{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-bg)}.pwa-install__title{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);line-height:1.35}.pwa-install__text{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.45}.pwa-install__actions{display:flex;gap:var(--space-2)}.pwa-install__btn{flex:1;min-height:40px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;border:1px solid transparent}.pwa-install__btn--primary{color:var(--color-bg);background:linear-gradient(135deg,var(--color-primary),var(--color-accent, var(--color-primary)));border-color:color-mix(in srgb,var(--color-primary) 40%,transparent)}.pwa-install__btn--ghost{color:var(--color-text-muted);background:transparent;border-color:var(--color-border)}@keyframes pwa-install-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.pull-to-refresh{position:relative}.pull-to-refresh__indicator{position:fixed;left:50%;z-index:75;width:40px;height:40px;margin-left:-20px;top:calc(var(--shell-header-float-offset) + var(--space-1));display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:linear-gradient(145deg,var(--glass-tint) 0%,transparent 52%),var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);pointer-events:none;opacity:0;transform:translateY(-12px) scale(.82);transition:opacity .2s ease,transform .35s cubic-bezier(.25,.8,.25,1)}.pull-to-refresh__indicator--visible{opacity:1}.pull-to-refresh__indicator--refreshing{opacity:1;transform:translateY(10px) scale(1)}.pull-to-refresh__arrow{width:18px;height:18px;color:var(--color-text-secondary);transition:transform .2s ease,color .2s ease}.pull-to-refresh__indicator--ready .pull-to-refresh__arrow{transform:rotate(180deg);color:var(--color-accent)}.pull-to-refresh__spinner{width:20px;height:20px;border:2px solid color-mix(in srgb,var(--color-accent) 22%,transparent);border-top-color:var(--color-accent);border-radius:var(--radius-full);animation:pull-to-refresh-spin .7s linear infinite}.pull-to-refresh__surface{will-change:transform;transition:transform .38s cubic-bezier(.25,.8,.25,1)}.pull-to-refresh__surface--dragging,.pull-to-refresh__surface--refreshing{transition:none}@keyframes pull-to-refresh-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pull-to-refresh__indicator,.pull-to-refresh__surface{transition:none}.pull-to-refresh__spinner{animation-duration:1.2s}}.wheel-number-picker{--wheel-item-height: 28px;display:inline-flex;flex-direction:row;align-items:center;align-self:flex-start;width:max-content;max-width:100%;gap:.55rem;-webkit-user-select:none;user-select:none}.wheel-number-picker--disabled{opacity:.55;pointer-events:none}.wheel-number-picker__unit{flex-shrink:0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);line-height:1}.wheel-number-picker__viewport{position:relative;width:5rem;height:calc(var(--wheel-item-height) * 2.75);overflow:hidden;border-radius:calc(var(--radius-md) - 2px);border:1px solid color-mix(in srgb,var(--color-primary) 24%,var(--color-border));background:color-mix(in srgb,var(--color-surface) 88%,transparent);box-shadow:0 2px 10px color-mix(in srgb,black 12%,transparent);cursor:grab;outline:none;touch-action:none}.wheel-number-picker__viewport--dragging{cursor:grabbing}.wheel-number-picker__viewport:focus-visible{box-shadow:inset 0 1px color-mix(in srgb,white 8%,transparent),0 0 0 2px color-mix(in srgb,var(--color-primary) 45%,transparent)}.wheel-number-picker__fade{position:absolute;left:0;right:0;height:calc(var(--wheel-item-height) * .55);pointer-events:none;z-index:2}.wheel-number-picker__fade--top{top:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-surface) 98%,transparent),transparent)}.wheel-number-picker__fade--bottom{bottom:0;background:linear-gradient(to top,color-mix(in srgb,var(--color-surface) 98%,transparent),transparent)}.wheel-number-picker__highlight{position:absolute;left:4px;right:4px;top:50%;height:var(--wheel-item-height);transform:translateY(-50%);border-radius:calc(var(--radius-md) - 4px);background:color-mix(in srgb,var(--color-primary) 7%,transparent);pointer-events:none;z-index:0}.wheel-number-picker__track{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.wheel-number-picker__item{position:absolute;left:0;right:0;height:var(--wheel-item-height);display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;line-height:1;transform-origin:center center;will-change:transform,opacity,font-size;pointer-events:none;letter-spacing:-.02em}.wheel-time-picker{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) 0}.wheel-time-picker__colon{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-secondary);line-height:1;padding-bottom:2px}.wheel-time-picker .wheel-number-picker__viewport{width:4.25rem}.select-picker{position:relative;min-width:0;max-width:100%}.select-picker__trigger{width:100%;max-width:100%;min-width:0;min-height:var(--touch-target);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 80%,transparent);color:var(--color-text);font:inherit;font-size:var(--text-base);text-align:left;cursor:pointer;outline:none}.select-picker__trigger:focus-visible,.select-picker--open .select-picker__trigger{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border))}.select-picker__trigger:disabled{opacity:.6;cursor:not-allowed}.select-picker__value{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-picker__chevron{flex-shrink:0;width:.75rem;height:.75rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.65}.select-picker--open .select-picker__chevron{transform:rotate(-135deg) translateY(-2px)}.select-picker__panel{display:flex;flex-direction:column;min-height:0;overflow:hidden;box-sizing:border-box;border:1px solid var(--glass-border, var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--glass-bg-panel, var(--color-surface)) 96%,#0c0f14);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:0 12px 40px #00000059,inset 0 1px #ffffff1a}.select-picker__panel--floating{width:auto;max-width:min(420px,calc(100vw - 24px))}.select-picker__panel--sheet{width:auto;max-width:none;border-radius:18px 18px 14px 14px;box-shadow:0 -8px 32px #00000073,inset 0 1px #ffffff1f}.select-picker__sheet-handle{flex-shrink:0;display:flex;justify-content:center;padding:.65rem 0 .35rem;touch-action:none;cursor:ns-resize;user-select:none;-webkit-user-select:none}.select-picker__sheet-handle span{width:2.4rem;height:.28rem;border-radius:999px;background:color-mix(in srgb,var(--color-text-secondary, #9aa3b2) 55%,transparent);pointer-events:none}.select-picker__search{flex-shrink:0;padding:var(--space-2);border-bottom:1px solid var(--color-border-subtle, var(--color-border));background:transparent}.select-picker__search-input{width:100%;min-height:44px;padding:.65rem .85rem;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--color-primary, #6aa1ff) 35%,var(--color-border));background:color-mix(in srgb,var(--color-bg, #0c0f14) 35%,var(--color-surface, #151a22));color:var(--color-text);font:inherit;font-size:16px;outline:none}.select-picker__search-input:focus{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border))}.select-picker__search-input::-webkit-search-cancel-button{-webkit-appearance:none}.select-picker__list{list-style:none;margin:0;padding:var(--space-1);overflow:auto;flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.select-picker__hint{margin:0;padding:var(--space-3);font-size:var(--text-sm);line-height:1.4}.select-picker__group{display:grid;gap:var(--space-1)}.select-picker__group+.select-picker__group{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle, var(--color-border))}.select-picker__group-label{position:sticky;top:0;z-index:1;margin:0;padding:.35rem var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);background:color-mix(in srgb,var(--glass-bg-panel, var(--color-surface)) 92%,transparent)}.select-picker__group-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-1)}.select-picker__option{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:0;border-radius:calc(var(--radius-lg) - var(--space-1));background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);line-height:var(--leading-relaxed, 1.4);text-align:left;cursor:pointer}.select-picker__option:hover:not(:disabled),.select-picker__option:focus-visible{background:color-mix(in srgb,var(--glass-white, white) 10%,transparent);outline:none}.select-picker__option--selected{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.select-picker__option-label{min-width:0;overflow-wrap:anywhere}.select-picker__check{flex-shrink:0;color:var(--color-accent);font-weight:var(--font-bold)}.weight-dynamics__chart-wrap{position:relative;overflow-x:clip;max-width:100%}.weight-dynamics__chart{display:block;width:100%;height:auto;max-width:100%}.weight-dynamics__tooltip{position:absolute;z-index:2;transform:translate(-50%,calc(-100% - 8px));padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 94%,transparent);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-tight);white-space:nowrap;pointer-events:none;box-shadow:0 8px 20px #0000002e}.weight-dynamics__tooltip--anchored{transform:translateY(calc(-100% - 8px))}.weight-dynamics__chart-empty{display:flex;align-items:center;justify-content:center;min-height:180px;padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-lg)}.weight-dynamics__chart-empty p{margin:0;text-align:center;font-size:var(--text-sm)}.weight-dynamics__target-zone{fill:color-mix(in srgb,var(--color-primary) 7%,transparent)}.weight-dynamics__grid-line{stroke:color-mix(in srgb,var(--color-border) 80%,transparent);stroke-width:1}.weight-dynamics__line{fill:none;stroke:var(--color-primary);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.weight-dynamics__point-hit{fill:transparent;stroke:transparent;cursor:pointer}.weight-dynamics__point{fill:color-mix(in srgb,var(--color-text-muted) 88%,transparent);stroke:color-mix(in srgb,var(--color-surface) 92%,transparent);stroke-width:1.5;pointer-events:none;transition:fill var(--duration-fast) var(--ease-out),r var(--duration-fast) var(--ease-out)}.weight-dynamics__point--active{fill:var(--color-text-secondary);stroke:var(--color-surface)}.weight-dynamics__axis-label{fill:var(--color-text-secondary);font-size:10px}.weight-dynamics__axis-label--y{font-variant-numeric:tabular-nums}.weight-dynamics__target-hint{margin:0;font-size:var(--text-xs)}.workout-weekly-chart__bar-segment{transition:opacity var(--duration-fast) var(--ease-out)}.workout-weekly-chart__bar-segment--workouts{fill:var(--color-workout-chart, #ff3355)}.workout-weekly-chart__bar-segment--activity{fill:var(--color-activity-chart, #38bdf8)}.workout-weekly-chart__bar-segment--active{filter:brightness(1.1)}.workout-weekly-chart__week-hit{fill:transparent;cursor:pointer}.workout-weekly-chart__legend{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-2)}.workout-weekly-chart__legend-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary)}.workout-weekly-chart__legend-item:before{content:"";width:.625rem;height:.625rem;border-radius:2px}.workout-weekly-chart__legend-item--workouts:before{background:var(--color-workout-chart, #ff3355)}.workout-weekly-chart__legend-item--activity:before{background:var(--color-activity-chart, #38bdf8)}.coach-workouts{display:flex;flex-direction:column;gap:1rem;padding-bottom:1.5rem}.coach-workouts__list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.coach-workouts__hint{margin:0;flex:1;font-size:var(--text-sm);line-height:1.4}.coach-workouts__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.coach-workouts__card{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1.1rem;text-align:left;border:1px solid rgba(255,255,255,.08);cursor:pointer;color:inherit;background:transparent}.coach-workouts__card-name{font-weight:600;font-size:var(--text-base)}.coach-workouts__card-meta{font-size:var(--text-sm)}.coach-workouts__back{align-self:flex-start;border:none;background:transparent;padding:0;cursor:pointer;font-size:var(--text-sm)}.coach-workouts__summary{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.2rem;border:1px solid rgba(255,255,255,.08)}.coach-workouts__summary-met{display:flex;align-items:baseline;gap:.5rem}.coach-workouts__summary-value{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.02em;color:var(--color-primary, #2dd4bf);line-height:1}.coach-workouts__summary-unit{font-size:var(--text-sm)}.coach-workouts__summary-meta{display:flex;flex-wrap:wrap;gap:.4rem;font-size:var(--text-sm)}.coach-workouts__field{display:flex;flex-direction:column;align-items:stretch;gap:.4rem}.coach-workouts__field-label{font-size:var(--text-sm);font-weight:600;letter-spacing:.01em;color:var(--color-text, #f3f5f7)}.coach-workouts__field-tip{margin:.15rem 0 0;font-size:var(--text-sm);line-height:1.45;color:var(--color-text-secondary, #9aa3b2)}.coach-workouts__field-tip-mark{margin-right:.3rem;font-weight:700;color:var(--color-primary, #2dd4bf)}.coach-workouts__duration{display:flex;justify-content:center;align-items:center;padding:.15rem 0}.coach-workouts__duration .wheel-number-picker{align-self:center}.coach-workouts__intervals{display:flex;flex-direction:column;gap:.85rem}.coach-workouts__interval{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid rgba(255,255,255,.08)}.coach-workouts__interval-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.coach-workouts__interval-index{font-size:var(--text-sm);font-weight:600}.coach-workouts__interval-actions{display:flex;flex-wrap:wrap;gap:.35rem}.coach-workouts__interval-actions .coach-btn{padding:.35rem .55rem;font-size:var(--text-xs);min-height:36px}.coach-workouts__interval-load{margin:0;font-size:var(--text-sm)}.coach-workouts__add-interval{align-self:stretch}.coach-workouts__footer{display:flex;flex-direction:column;gap:.6rem;margin-top:.25rem}.coach-workouts__list-actions{display:flex;flex-shrink:0;gap:.5rem}.coach-workouts__ai-text{min-height:7rem;resize:vertical;line-height:1.45}.coach-workouts__ai-draft{display:flex;flex-direction:column;gap:.85rem}.coach-workouts__ai-intervals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.coach-workouts__ai-intervals li{display:flex;flex-direction:column;gap:.25rem;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.08)}.coach-workouts__ai-intervals strong{font-weight:600}.coach-workouts__ai-warnings{margin:0;padding-left:1.1rem;font-size:var(--text-sm);line-height:1.4;display:flex;flex-direction:column;gap:.25rem}
