:root{--font-family-ui: Inter, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;--font-size-caption: 12px;--font-size-body-sm: 13px;--font-size-body: 15px;--font-size-title-sm: 20px;--font-size-title: 28px;--line-height-compact: 1.25;--line-height-body: 1.5;--brand-500: #347fb3;--brand-600: #255f85;--brand-300: #8fc4dd;--success-500: #2f7a66;--warning-500: #d85643;--danger-500: #d84b4b;--info-500: #347fb3;--sport-swim: #2473a6;--sport-bike: #3d86b6;--sport-run: #2b759b;--sport-strength: #d85643;--sport-neutral: #7d8a88;--bg-light: #edf2f6;--surface-light: #f8fafc;--surface-light-2: #edf3f7;--text-light: #101820;--muted-light: #647481;--border-light: #d2dce5;--bg-dark: #081012;--surface-dark: #10191b;--surface-dark-2: #172225;--text-dark: #f4f7f6;--muted-dark: #9aa9a7;--border-dark: #2a393b;--primary: var(--brand-500);--primary-2: #255f85;--blue: var(--info-500);--green: var(--success-500);--orange: var(--warning-500);--red: var(--danger-500);--shadow-light: 0 18px 50px rgba(15, 23, 42, .08);--shadow-dark: 0 18px 50px rgba(0, 0, 0, .24);font-family:var(--font-family-ui);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--text-light);background:var(--bg-light)}html{min-width:0}@media(min-width:1024px){html{scrollbar-gutter:stable}}*{box-sizing:border-box}body{margin:0;min-width:0;overflow-x:clip;background:var(--bg-light);font-family:var(--font-family-ui);font-size:var(--font-size-body);line-height:var(--line-height-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,textarea,input,select{font:inherit}button{cursor:pointer}.app-shell{width:100%;min-width:0;min-height:100vh;min-height:100dvh;max-width:430px;margin:0 auto;padding:max(22px,env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom));transition:background .16s ease,color .16s ease}.app-dark{--text: var(--text-dark);--text-muted: var(--muted-dark);--surface: var(--surface-dark);--surface-raised: var(--surface-dark-2);--border: var(--border-dark);--primary: #9a86f4;--primary-2: #b093ff;--accent: var(--primary);color:var(--text-dark);background:radial-gradient(circle at 80% 0%,rgba(109,92,231,.14),transparent 32%),linear-gradient(180deg,var(--bg-dark) 0%,#121923 100%)}.app-light{--text: var(--text-light);--text-muted: var(--muted-light);--surface: var(--surface-light);--surface-raised: var(--surface-light-2);--border: var(--border-light);--primary: var(--brand-500);--primary-2: #856ff0;--accent: var(--primary);color:var(--text-light);background:radial-gradient(circle at 72% 4%,rgba(109,92,231,.09),transparent 30%),var(--bg-light)}.stack{display:grid;gap:14px}.stack>*{min-width:0;max-width:100%}.row,.between,.metric-row,.button-row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.button-row{display:grid;grid-template-columns:1fr 1fr}.today-planned-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.today-planned-actions>.btn{width:100%;min-width:0;min-height:58px;padding:0 12px;text-align:center}.workout-library-button{transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.workout-library-button.is-saved{color:#087a57;border-color:#10b98157;background:#10b9811c;box-shadow:inset 0 0 0 1px #10b9810d}.app-dark .workout-library-button.is-saved{color:#6ee7b7;border-color:#34d39952;background:#10b98121}.spin{animation:ui-spin .8s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}.screen-header,.today-hero,.detail-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.screen-header h1,.today-hero h1,.detail-hero-title-row h1{margin:0;font-size:var(--font-size-title);line-height:var(--line-height-compact);letter-spacing:0}.screen-header p,.today-hero p,.detail-hero p,.muted{margin:0;color:var(--muted-dark);font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.light-header p,.app-light .muted{color:var(--muted-light)}.screen-title{margin:0;font-size:var(--font-size-title);line-height:var(--line-height-compact);letter-spacing:0}.section-title{margin:0;font-size:var(--font-size-title-sm);line-height:var(--line-height-compact)}.card{background:var(--surface-light);border:1px solid var(--border-light);border-radius:18px;padding:16px;box-shadow:var(--shadow-light)}.app-dark .card,.dark-card{background:linear-gradient(180deg,#1d2734fa,#161e29fa);border-color:var(--border-dark);box-shadow:var(--shadow-dark)}.app-light .dark-card{color:var(--text-light);background:var(--surface-light);border-color:var(--border-light);box-shadow:var(--shadow-light)}.app-light .dark-card .segment,.app-light .dark-card .segment-repeat,.app-light .dark-card .segment-repeat-step{color:var(--text-light);background:#f8fafc;border-color:var(--border-light);box-shadow:none}.card h2,.card h3{margin:0 0 8px}.btn{min-height:50px;border:0;border-radius:18px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:750;letter-spacing:0}.btn:disabled{opacity:.55}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 32%,transparent)}.btn-secondary{background:color-mix(in srgb,var(--primary) 13%,transparent);color:var(--primary)}.app-dark .btn-secondary{background:color-mix(in srgb,var(--primary) 18%,transparent);color:#ded7ff}.btn-outline{background:transparent;color:inherit;border:1px solid currentColor;opacity:.86}.btn-danger{background:#fb3f4624;color:var(--red)}.btn-ghost{background:transparent;color:var(--primary);min-height:42px;padding:0 10px}.round-action{width:44px;height:44px;border:0;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-dark);background:#ffffff12}.round-action.light{color:var(--text-light);background:#fff;box-shadow:var(--shadow-light)}.ai-action-button{width:58px;height:58px;border:0;border-radius:22px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:radial-gradient(circle at 72% 22%,rgba(52,127,179,.22),transparent 42%),linear-gradient(145deg,#383252f5,#212236fa);box-shadow:0 14px 32px #0c0a1c52}.ai-action-button:active{transform:scale(.97)}.ai-action-button-sm{width:40px;height:40px;border-radius:15px;flex:0 0 40px;box-shadow:0 10px 22px #0c0a1c3d}.auth-screen{min-height:calc(100vh - 130px);display:grid;place-items:center}.auth-panel{width:min(100%,390px);border:1px solid var(--border-dark);border-radius:24px;padding:20px;display:grid;gap:14px;background:radial-gradient(circle at 82% 0%,rgba(52,127,179,.18),transparent 34%),linear-gradient(180deg,#202833f5,#121821f5);box-shadow:var(--shadow-dark)}.auth-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px}.auth-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;color:#b9d9ea;background:#347fb329;border:1px solid rgba(52,127,179,.22)}.auth-heading h1,.auth-heading p{margin:0}.auth-heading h1{font-size:28px;line-height:1.05}.auth-heading p{margin-top:5px;color:var(--muted-dark);font-size:13px;line-height:1.35}.auth-field{display:grid;gap:8px;color:var(--muted-dark);font-size:12px;font-weight:800}.auth-field input{min-height:50px;width:100%;border:1px solid var(--border-dark);border-radius:16px;padding:0 14px;outline:none;color:var(--text-dark);background:#ffffff0e;font-size:15px;font-weight:750;color-scheme:dark}.auth-field input:focus{border-color:#347fb39e;box-shadow:0 0 0 3px #347fb324}.auth-error{margin:0;border:1px solid rgba(251,63,70,.28);border-radius:14px;padding:10px 12px;color:#ff9aa0;background:#fb3f4614;font-size:13px;font-weight:750;line-height:1.35}.auth-telegram-button{min-height:50px;border:1px solid rgba(56,189,248,.34);border-radius:16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;color:#e0f2fe;background:linear-gradient(135deg,#229ed9,#168acd);box-shadow:0 10px 24px #0ea5e92e;font-size:14px;font-weight:850}.auth-telegram-button:disabled{cursor:wait;opacity:.68}.auth-divider{display:flex;align-items:center;gap:10px;color:var(--muted-dark);font-size:12px;font-weight:750}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--border-dark)}.auth-telegram-pending{border:1px solid rgba(56,189,248,.26);border-radius:16px;padding:13px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 10px;background:#0ea5e914}.auth-telegram-pending strong,.auth-telegram-pending p{margin:0}.auth-telegram-pending p{margin-top:3px;color:var(--muted-dark);font-size:12px;line-height:1.35}.auth-telegram-pending a,.auth-telegram-pending button{border:0;display:inline-flex;align-items:center;gap:5px;color:#7dd3fc;background:transparent;font-size:12px;font-weight:800}.auth-telegram-pending a{grid-column:2;text-decoration:none}.auth-telegram-pending button{grid-column:2;justify-self:start;padding:0;color:var(--muted-dark)}.auth-telegram-spinner{width:20px;height:20px;border:2px solid rgba(125,211,252,.28);border-top-color:#38bdf8;border-radius:50%;animation:auth-telegram-spin .8s linear infinite}@keyframes auth-telegram-spin{to{transform:rotate(360deg)}}.auth-switch{min-height:42px;border:0;color:#b9d9ea;background:transparent;font-weight:800}.auth-panel-modern{width:min(100%,480px);gap:22px;padding:clamp(24px,5vw,38px);border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:28px;box-shadow:0 24px 70px #14201c21}.brand-mark{display:block;width:100%;height:100%;object-fit:contain}.auth-brand-lockup{display:flex;align-items:center;gap:11px;margin-bottom:14px}.auth-brand-lockup .brand-mark{width:48px;height:48px;border-radius:13px;box-shadow:0 10px 24px #050a1033}.auth-brand-lockup>span{display:inline-block;color:var(--accent, #347fb3);font-size:12px;font-weight:850;letter-spacing:.13em}.auth-brand h1{margin:0;font-size:clamp(28px,6vw,38px);line-height:1.08;letter-spacing:-.035em}.auth-brand p{margin:11px 0 0;color:var(--text-muted);font-size:15px;line-height:1.5}.auth-provider-list{display:grid;gap:11px}.auth-provider{display:flex;align-items:center;gap:14px;min-height:68px;width:100%;padding:13px 16px;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface, #fff) 96%,var(--text) 4%);color:var(--text);text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.auth-provider:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent, #347fb3) 50%,transparent);box-shadow:0 8px 24px #347fb31a}.auth-provider:disabled{opacity:.55;cursor:not-allowed}.auth-provider>span:not(.auth-google-mark){display:grid;gap:3px}.auth-provider strong{font-size:15px}.auth-provider small{color:var(--text-muted);font-size:12px}.auth-provider-telegram{background:linear-gradient(135deg,#2aabee1f,#2aabee09)}.auth-google-mark{display:grid;place-items:center;width:21px;height:21px;color:#4285f4;font:800 19px/1 Arial,sans-serif}.auth-form{display:grid;gap:15px}.auth-password{position:relative}.auth-password input{width:100%;padding-right:48px}.auth-password button{position:absolute;top:50%;right:12px;display:grid;place-items:center;padding:5px;border:0;background:transparent;color:var(--text-muted);transform:translateY(-50%);cursor:pointer}.auth-hint{display:flex;align-items:flex-start;gap:7px;margin:-4px 0 0;color:var(--text-muted);font-size:12px;line-height:1.45}.auth-hint svg{flex:0 0 auto;margin-top:2px}.auth-text-action,.auth-back{border:0;background:transparent;color:var(--accent, #347fb3);font-weight:700;cursor:pointer}.auth-text-action:disabled{opacity:.45;cursor:not-allowed}.auth-back{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:0}.auth-unavailable,.auth-security-note{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45;text-align:center}.auth-modal-backdrop{position:fixed;z-index:2200;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#080d189e;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.auth-modal-position{width:min(100%,480px);max-height:calc(100vh - 40px);overflow:auto;border-radius:28px}.auth-panel-modal{position:relative;width:100%;min-height:0}.auth-modal-position .auth-panel-modal{width:100%;max-width:none}.auth-modal-close{position:absolute;z-index:2;top:16px;right:16px;display:grid;width:38px;height:38px;place-items:center;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);border-radius:50%;color:var(--text);background:color-mix(in srgb,var(--surface) 94%,var(--text) 6%)}.auth-panel-modal .auth-brand{padding-right:42px}.auth-gate-reason{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:14px;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.auth-gate-reason>span{display:grid;gap:2px;color:var(--text-muted);font-size:12px;line-height:1.4}.auth-gate-reason strong{color:var(--text);font-size:12px}.auth-status{display:grid;justify-items:center;gap:12px;padding:16px 0;text-align:center}.auth-status>svg{color:var(--accent, #347fb3)}.auth-status h1,.auth-status h2,.auth-status p{margin:0}.auth-status p{color:var(--text-muted);line-height:1.5}.desktop-login-trigger{min-height:34px;border:0;border-radius:10px;padding:0 12px;color:#fff;background:#5b4bda;font:inherit;font-size:12px;font-weight:900}.desktop-web-session-actions{display:inline-flex;align-items:center;justify-content:center;gap:8px}.desktop-login-trigger{min-height:46px;display:inline-flex;align-items:center;gap:7px;padding-inline:14px;white-space:nowrap}.guest-locked-controls{position:relative;cursor:pointer}.guest-locked-controls:after{content:"Войдите, чтобы сохранить показатели";position:absolute;right:12px;top:12px;z-index:2;max-width:190px;padding:6px 9px;border-radius:9px;color:#4338ca;background:#eef2ff;box-shadow:0 5px 14px #4338ca1f;font-size:12px;font-weight:850;line-height:1.15;text-align:center;pointer-events:none}.guest-locked-controls-hitbox{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;border:0;border-radius:inherit;background:transparent;cursor:pointer}.account-security{gap:14px}.account-security-intro,.account-link-pending,.account-password-card,.account-sessions{display:flex;align-items:center;gap:14px}.account-security-intro>svg{flex:0 0 auto;color:var(--accent, #347fb3)}.account-security h2,.account-security h3,.account-security p{margin:0}.account-security-intro p,.account-password-card p,.account-sessions p,.account-link-pending p{margin-top:4px;color:var(--text-muted);font-size:13px;line-height:1.45}.identity-list{display:grid;gap:10px}.identity-card{display:flex;align-items:center;gap:12px;min-height:76px}.identity-card.is-linked{border-color:color-mix(in srgb,var(--accent, #347fb3) 24%,transparent)}.identity-icon{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--accent, #347fb3) 10%,transparent);color:var(--accent, #347fb3)}.identity-copy{display:grid;gap:4px;min-width:0;margin-right:auto}.identity-copy span{overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.identity-ok{display:inline-flex;align-items:center;gap:4px;color:var(--accent, #347fb3);font-size:12px;font-weight:750}.identity-unlink{display:grid;place-items:center;padding:7px;border:0;background:transparent;color:var(--text-muted);cursor:pointer}.account-message{display:flex;align-items:center;gap:7px;padding:11px 13px;border-radius:12px;background:#347fb31a;color:var(--accent, #347fb3);font-size:13px;font-weight:700}.account-link-pending a{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--accent, #347fb3);font-weight:700;text-decoration:none}.account-inline-form{display:grid;gap:10px;padding:18px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:18px;background:var(--surface, #fff)}.account-inline-form input,.account-password-card input{min-height:46px;padding:0 13px;border:1px solid color-mix(in srgb,var(--text) 13%,transparent);border-radius:11px;background:transparent;color:var(--text)}.account-inline-form>div{display:flex;gap:8px}.account-password-card,.account-sessions{flex-wrap:wrap}.account-password-card>div:first-child,.account-sessions>div:first-child{margin-right:auto}.account-password-card form{display:grid;flex:1 0 100%;gap:9px}@media(max-width:520px){.auth-screen{align-items:flex-start;padding:18px 14px}.auth-panel-modern{padding:24px 20px;border-radius:22px}.identity-ok{display:none}.identity-card .btn{padding-inline:10px}.auth-modal-backdrop{align-items:end;padding:0}.auth-modal-position{width:100%;max-height:calc(100vh - 10px);border-radius:24px 24px 0 0}.auth-panel-modal{border-radius:24px 24px 0 0;padding:24px 20px calc(22px + env(safe-area-inset-bottom))}.guest-locked-controls:after{content:"Нужен вход";padding:5px 7px;font-size:12px}}.quick-onboarding{display:grid;min-height:calc(100vh - 44px - env(safe-area-inset-top));place-items:center}.quick-onboarding-card{width:min(100%,680px);overflow:hidden;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:30px;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 40%),var(--surface);box-shadow:0 28px 90px #050a1433}.quick-onboarding-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 26px 17px}.quick-onboarding-brand{display:inline-flex;align-items:center;gap:9px;color:color-mix(in srgb,var(--primary) 82%,var(--text));font-size:13px;font-weight:850;letter-spacing:.02em}.quick-onboarding-count{color:var(--text-muted);font-size:13px;font-weight:750}.quick-onboarding-progress{height:4px;margin:0 26px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--text) 9%,transparent)}.quick-onboarding-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#5f8cff);transition:width .25s ease}.quick-onboarding-question{padding:clamp(28px,5vw,42px) clamp(22px,6vw,48px) 28px;animation:quick-onboarding-in .22s ease both}@keyframes quick-onboarding-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.quick-onboarding-icon{display:grid;width:48px;height:48px;margin-bottom:20px;place-items:center;border-radius:15px;color:var(--primary);background:color-mix(in srgb,var(--primary) 13%,transparent)}.quick-onboarding-eyebrow{color:color-mix(in srgb,var(--primary) 82%,var(--text));font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.quick-onboarding-question h1{max-width:560px;margin:9px 0 10px;color:var(--text);font-size:clamp(27px,5vw,38px);line-height:1.08;letter-spacing:-.035em}.quick-onboarding-question>p:not(.auth-error){max-width:540px;margin:0;color:var(--text-muted);font-size:15px;line-height:1.5}.quick-onboarding-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:28px}.quick-onboarding-options>button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:14px 15px 14px 17px;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);border-radius:16px;color:var(--text);background:color-mix(in srgb,var(--surface) 94%,var(--text) 6%);text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.quick-onboarding-options>button:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 55%,transparent);background:color-mix(in srgb,var(--primary) 10%,var(--surface));transform:translateY(-1px)}.quick-onboarding-options>button.is-selected{border-color:color-mix(in srgb,var(--primary) 70%,transparent);background:color-mix(in srgb,var(--primary) 16%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 22%,transparent)}.quick-onboarding-option-copy{display:flex;align-items:center;gap:11px;min-width:0}.quick-onboarding-option-copy>i{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:11px;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);font-style:normal}.quick-onboarding-option-copy>span{display:grid;gap:4px;min-width:0}.quick-onboarding-options strong{font-size:15px;line-height:1.25}.quick-onboarding-options small{color:var(--text-muted);font-size:12px;line-height:1.35}.quick-onboarding-option-check{display:grid;flex:0 0 auto;width:29px;height:29px;place-items:center;border-radius:10px;color:transparent;background:color-mix(in srgb,var(--text) 6%,transparent)}.quick-onboarding-options:not(.is-multiple) .quick-onboarding-option-check{color:color-mix(in srgb,var(--primary) 65%,var(--text));background:color-mix(in srgb,var(--primary) 11%,transparent)}.quick-onboarding-options>button.is-selected .quick-onboarding-option-check{color:color-mix(in srgb,var(--primary) 72%,var(--text));background:color-mix(in srgb,var(--primary) 17%,transparent)}.quick-onboarding-options>button.is-included:disabled{opacity:.82;cursor:default}.quick-onboarding-health{display:grid;gap:11px;margin-top:28px}.quick-onboarding-health>label{color:var(--text);font-size:13px;font-weight:800}.quick-onboarding-health textarea{width:100%;min-height:116px;resize:vertical;padding:14px 15px;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);border-radius:15px;outline:none;color:var(--text);background:color-mix(in srgb,var(--surface) 94%,var(--text) 6%);font:inherit;font-size:15px;line-height:1.45;transition:border-color .16s ease,box-shadow .16s ease}.quick-onboarding-health textarea:focus{border-color:color-mix(in srgb,var(--primary) 70%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.quick-onboarding-health textarea::placeholder{color:var(--text-muted)}.quick-onboarding-health-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quick-onboarding-health-actions button{min-height:46px;padding:9px 13px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:12px;color:var(--text);background:transparent;font-size:13px;font-weight:800}.quick-onboarding-health-actions button:last-child{border-color:var(--primary);color:#fff;background:var(--primary)}.quick-onboarding-health-actions button:disabled{opacity:.45;cursor:not-allowed}.quick-onboarding-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:14px 26px;border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted);font-size:12px}.quick-onboarding-footer button{display:inline-flex;align-items:center;gap:6px;padding:7px 0;border:0;color:var(--text);background:transparent;font-weight:750}.quick-onboarding-footer-end{display:flex;align-items:center;justify-content:flex-end;gap:14px}.quick-onboarding-footer .quick-onboarding-next{min-height:38px;padding:0 16px;border-radius:11px;color:#fff;background:var(--primary)}.quick-onboarding-footer .quick-onboarding-next:disabled{opacity:.45;cursor:not-allowed}@media(min-width:1024px){.quick-onboarding{min-height:calc(100vh - 64px)}}@media(max-width:620px){.quick-onboarding{min-height:calc(100vh - 34px - env(safe-area-inset-top));align-items:start}.quick-onboarding-card{border-radius:24px}.quick-onboarding-header{padding:18px 19px 15px}.quick-onboarding-progress{margin:0 19px}.quick-onboarding-question{padding:25px 19px 22px}.quick-onboarding-icon{width:44px;height:44px;margin-bottom:17px}.quick-onboarding-options{grid-template-columns:1fr;gap:9px;margin-top:23px}.quick-onboarding-options.is-multiple{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-onboarding-options>button{min-height:62px}.quick-onboarding-options.is-multiple>button{min-height:64px;padding:10px;gap:7px}.quick-onboarding-options.is-multiple .quick-onboarding-option-copy{gap:8px}.quick-onboarding-options.is-multiple .quick-onboarding-option-copy>i{width:30px;height:30px}.quick-onboarding-options.is-multiple strong{font-size:13px}.quick-onboarding-options.is-multiple small{display:none}.quick-onboarding-options.is-multiple .quick-onboarding-option-check{width:24px;height:24px}.quick-onboarding-health{margin-top:22px}.quick-onboarding-health-actions{grid-template-columns:1fr}.quick-onboarding-footer{align-items:center;padding:13px 19px}.quick-onboarding-footer-end{gap:9px}.quick-onboarding-footer-end>span{display:none}}.app-light .auth-card,.app-light .auth-panel{color:var(--text-light);background:#fffffff0;border-color:var(--border-light);box-shadow:var(--shadow-light)}.app-light .auth-heading p,.app-light .auth-field{color:var(--muted-light)}.app-light .auth-field input{color:var(--text-light);background:#fff;border-color:var(--border-light);color-scheme:light}.app-light .auth-error{color:#dc2626;background:#fff1f2;border-color:#fecdd3}.app-light .auth-switch{color:var(--primary)}.app-light .auth-divider,.app-light .auth-telegram-pending p,.app-light .auth-telegram-pending button{color:var(--muted-light)}.app-light .auth-divider:before,.app-light .auth-divider:after{background:var(--border-light)}.app-light .auth-telegram-pending{background:#f0f9ff;border-color:#bae6fd}.app-light .auth-telegram-pending a{color:#0369a1}.text-action{border:0;background:transparent;color:#c084fc;font-weight:750}.bottom-nav{position:fixed;left:50%;bottom:0;z-index:30;width:min(430px,100vw);max-width:100%;transform:translate(-50%);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:#fffffff0;border-top:1px solid var(--border-light);box-shadow:0 -12px 32px #0f172a14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.app-dark .bottom-nav{background:#0f151ef0;border-top-color:var(--border-dark);box-shadow:0 -14px 34px #0000003d}.bottom-nav button{min-width:0;min-height:58px;padding:0 2px;border:0;border-radius:14px;background:transparent;color:var(--text-muted);display:grid;place-items:center;align-content:center;gap:4px;font-size:12px;font-weight:750;line-height:1;transition:color .15s ease,background .15s ease,transform .15s ease}.bottom-nav button.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent)}.bottom-nav button:active{transform:scale(.96)}.bottom-nav button svg{width:20px;height:20px;stroke-width:2.1}.bottom-nav .bottom-nav-coach{color:var(--primary)}.bottom-nav-coach-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 7px 16px color-mix(in srgb,var(--primary) 28%,transparent)}.bottom-nav .bottom-nav-coach.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent)}@media(max-width:360px){.bottom-nav{padding-left:4px;padding-right:4px}.bottom-nav button{border-radius:12px;font-size:11px;letter-spacing:-.015em}.bottom-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.desktop-web-shell,.desktop-web-main,.desktop-web-content{display:contents}.desktop-sidebar,.desktop-web-topbar,.desktop-top-tabs,.desktop-side-tabs{display:none}.sport-icon{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#fff}.sport-icon-sm{width:34px;height:34px}.sport-icon-lg{width:58px;height:58px}.sport-swim{background:color-mix(in srgb,var(--sport-swim) 16%,transparent);color:var(--sport-swim)}.sport-bike{background:color-mix(in srgb,var(--sport-bike) 17%,transparent);color:var(--sport-bike)}.sport-run{background:color-mix(in srgb,var(--sport-run) 16%,transparent);color:var(--sport-run)}.sport-strength{background:color-mix(in srgb,var(--sport-strength) 16%,transparent);color:var(--sport-strength)}.sport-rest,.sport-mobility,.sport-other{background:color-mix(in srgb,var(--sport-neutral) 17%,transparent);color:var(--sport-neutral)}.metric-row{flex-wrap:wrap}.metric-pill{display:inline-flex;align-items:center;gap:5px;color:var(--muted-dark);font-size:13px;font-weight:650}.app-light .metric-pill{color:var(--muted-light)}.next-workout{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 0 20px;border-bottom:1px solid var(--border-dark)}.next-workout p{margin:0 0 4px;color:var(--muted-dark)}.next-workout h2{margin:0 0 10px;font-size:22px;line-height:1.12}.today-multi-summary{min-height:54px;border:1px solid var(--border-dark);border-radius:18px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-dark);background:#ffffff0a}.today-multi-summary strong{font-size:16px}.today-multi-summary span{color:var(--muted-dark);font-size:13px;font-weight:700}.race-start-card{width:100%;border:1px solid rgba(52,127,179,.24);border-radius:22px;padding:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-align:left;color:var(--text-dark);background:radial-gradient(circle at 90% 0%,rgba(52,127,179,.2),transparent 42%),linear-gradient(180deg,#202833f5,#181e27f5);box-shadow:var(--shadow-dark)}.race-start-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#347fb32e;font-size:22px}.race-start-main{display:grid;gap:3px;min-width:0}.race-start-main strong{font-size:18px;line-height:1.18}.race-start-main span,.race-start-main small{color:var(--muted-dark);font-size:13px}.race-start-arrow{color:var(--muted-dark);font-size:26px}.workout-chart{position:relative;height:108px;padding:12px 8px 16px;overflow:visible}.workout-card-heading{margin-bottom:10px}.workout-card-heading h3,.workout-card-heading p{margin:0}.workout-chart-compact{height:92px}.chart-baseline{position:absolute;left:8px;right:8px;bottom:24px;border-top:1px solid rgba(255,255,255,.18)}.chart-baseline:before{content:"";position:absolute;left:0;right:0;top:-24px;border-top:1px dashed rgba(255,255,255,.22)}.chart-bars{position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px;min-width:0;width:100%}.chart-bar{position:relative;flex-basis:0;min-width:4px;border-radius:4px 4px 0 0;filter:saturate(1.1)}.chart-tooltip{position:fixed;z-index:1200;display:grid;gap:4px;padding:10px 12px;border:1px solid #dbe3ef;border-radius:10px;color:#0f172a;background:#fffffffa;box-shadow:0 18px 42px #0f172a33;font-size:12px;line-height:1.25;text-align:left;white-space:normal;pointer-events:none;animation:chart-tooltip-in .12s ease-out}.chart-tooltip:after{content:"";position:absolute;left:var(--chart-tooltip-arrow-left, 50%);width:10px;height:10px;background:#fffffffa;transform:translate(-50%) rotate(45deg)}.chart-tooltip-top:after{bottom:-6px;border-right:1px solid #dbe3ef;border-bottom:1px solid #dbe3ef}.chart-tooltip-bottom:after{top:-6px;border-left:1px solid #dbe3ef;border-top:1px solid #dbe3ef}.chart-tooltip strong{color:#0f172a;font-size:12px;font-weight:900}.chart-tooltip span{color:#475569}@keyframes chart-tooltip-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.chart-bar-recovery{min-width:3px}.chart-blue{background:#2f8f6b}.chart-violet{background:var(--primary)}.chart-orange{background:var(--orange)}.chart-red{background:var(--red)}.chart-zone-1{background:#8fc6af}.chart-zone-2{background:#2f8f6b}.chart-zone-3{background:#e2aa00}.chart-zone-4{background:#ff6b1a}.chart-zone-5{background:#f43f4b}.rest-visual{height:72px;border-radius:16px;display:grid;place-items:center;color:var(--muted-dark);background:#94a3b81f}.segment-list{display:grid;gap:7px;margin-top:8px}.segment{min-height:48px;border:1px solid var(--border-light);border-radius:12px;padding:9px 10px;background:#fbfcff;display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.segment-repeat{border-color:#347fb357;background:linear-gradient(180deg,#347fb314,#ffffff08),#fbfcff;align-items:flex-start}.dark-card .segment{background:#ffffff0a;border-color:var(--border-dark)}.dark-card .segment-repeat{border-color:#347fb36b;background:linear-gradient(180deg,#347fb324,#ffffff0a),#ffffff0a}.segment-content{min-width:0;display:grid;gap:7px}.segment-title{font-weight:800;margin-bottom:2px;font-size:14px;line-height:1.18}.segment-repeat-header{display:flex;align-items:center;gap:9px}.segment-repeat-header small{color:var(--muted-dark);font-size:12px;font-weight:750;line-height:1.15}.app-light .segment-repeat-header small{color:var(--muted-light)}.segment-repeat-badge{width:34px;height:28px;border-radius:999px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:linear-gradient(135deg,#347fb3,#2473a6);font-size:13px;font-weight:950;box-shadow:0 8px 18px #4f46e538}.segment-detail-lines{display:grid;gap:2px;color:var(--muted-dark);font-size:13px;line-height:1.18}.app-light .segment-detail-lines{color:var(--muted-light)}.segment-detail-lines span{min-width:0}.segment-repeat-steps{display:grid;gap:6px;padding-left:43px}.segment-repeat-step{display:grid;gap:4px;padding:8px 9px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:#ffffff8f}.dark-card .segment-repeat-step{border-color:#94a3b82e;background:#0f172a2e}.segment-repeat-step-work{border-left:3px solid var(--primary)}.segment-repeat-step-rest{border-left:3px solid var(--blue)}.segment-repeat-label{font-weight:800;color:var(--text-dark);line-height:1.18;font-size:12px}.app-light .segment-repeat-label{color:var(--text-light)}.segment-repeat-lines{padding-left:0}.segment-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.segment-dot-easy{background:var(--blue)}.segment-dot-moderate{background:var(--primary)}.segment-dot-hard{background:var(--red)}.segment-dot-mixed{background:var(--orange)}.workout-segment-list{display:grid}.workout-segment-row{display:grid;grid-template-columns:9px minmax(0,1fr);align-items:start;gap:12px;padding:11px 2px;border-bottom:1px solid rgba(148,163,184,.18)}.workout-segment-list>:first-child{padding-top:2px}.workout-segment-list>:last-child{padding-bottom:2px;border-bottom:0}.workout-segment-marker{width:9px;height:9px;margin-top:4px;border-radius:3px;background:var(--segment-color, #94a3b8);box-shadow:0 0 0 3px color-mix(in srgb,var(--segment-color, #94a3b8) 12%,transparent)}.workout-segment-main{min-width:0;display:flex;align-items:baseline;gap:12px 18px;flex-wrap:wrap}.workout-segment-main>strong{flex:0 1 180px;min-width:110px;font-size:14px;line-height:1.25}.workout-segment-details{min-width:0;flex:1 1 230px;display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 0;color:var(--muted-dark);font-size:13px;line-height:1.3}.workout-segment-details span:not(:last-child):after{content:" · ";white-space:pre;color:#94a3b8c7}.app-light .workout-segment-details{color:#64748b}.workout-repeat-group{padding:11px 2px 10px;border-bottom:1px solid rgba(148,163,184,.18)}.workout-repeat-header{display:flex;align-items:center;gap:6px;margin-bottom:5px;color:var(--muted-dark);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.workout-repeat-header strong{color:inherit;font-size:inherit}.app-light .workout-repeat-header{color:#7b8495}.workout-repeat-steps{display:grid;margin-left:4px;padding-left:13px;border-left:2px solid rgba(148,163,184,.28)}.workout-repeat-step{padding:7px 0 7px 10px;border-bottom:0}.calendar-range{display:flex;align-items:center;justify-content:space-between;font-size:18px;margin-top:2px}.calendar-range-main{min-width:0;display:grid;justify-items:center;gap:6px}.calendar-range button{border:0;background:transparent;font-size:28px;color:#7b8494}.calendar-range button:disabled{cursor:default;color:#94a3b847}.calendar-range .calendar-today-pill{min-height:30px;border:1px solid rgba(37,99,235,.18);border-radius:999px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#2563eb;background:#2563eb14;font-size:12px;font-weight:850}.app-dark .calendar-range .calendar-today-pill{color:#bfdbfe;background:#60a5fa21;border-color:#93c5fd3d}.calendar-compact-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.calendar-action-group{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.future-week-card{border:1px solid var(--border-dark);border-radius:24px;padding:18px;background:radial-gradient(circle at 82% 0%,rgba(52,127,179,.18),transparent 34%),linear-gradient(180deg,#202833f5,#121821f5);box-shadow:var(--shadow-dark)}.future-week-card h2,.future-week-card p{margin:0}.future-week-card h2{font-size:24px;line-height:1.08}.future-week-card .segment{background:#ffffff0b;border-color:var(--border-dark);color:var(--text-dark);box-shadow:none}.future-week-card .segment .muted{color:var(--muted-dark)}.preview-race-row{border-color:#22c55e52;background:#22c55e14}.preview-empty-row strong{color:var(--muted-dark)}.future-week-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.future-week-actions .btn:first-child{grid-column:1 / -1}.future-week-generate{display:grid;gap:8px}.manual-week-notice,.preview-issues{border:1px solid rgba(251,191,36,.28);border-radius:16px;padding:12px 13px;color:#fde68a;background:#fbbf2414}.manual-week-notice{display:grid;gap:4px}.manual-week-notice strong,.manual-week-notice p{margin:0}.manual-week-notice p,.preview-issues span{color:#fde68a;font-size:13px;line-height:1.35}.preview-issues{display:grid;gap:5px}.ai-error-text{white-space:pre-line}.form-error{margin:0;color:var(--danger);font-size:13px;font-weight:800}.future-week-preview-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-days button{border:0;border-radius:18px;background:transparent;padding:8px 0;display:grid;gap:9px;color:#8a94a6;font-size:12px}.calendar-days strong{color:var(--text-light);font-size:15px}.calendar-days button.active{background:#347fb324}.calendar-days button.active strong{width:30px;height:30px;margin:0 auto;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2))}.workout-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px;border-radius:18px;background:var(--surface-light);border:1px solid var(--border-light);box-shadow:var(--shadow-light);color:inherit}.calendar-workout-row-main,.compact-workout-card{display:flex;align-items:center;gap:14px;min-width:0;border:0;padding:0;color:inherit;text-align:left;background:transparent}.compact-workout-card{padding:14px;border-radius:18px;background:var(--surface-light);border:1px solid var(--border-light);box-shadow:var(--shadow-light)}.app-dark .workout-row,.app-dark .compact-workout-card{background:var(--surface-dark);border-color:var(--border-dark);box-shadow:var(--shadow-dark)}.app-dark .workout-row-completed{border-color:#52d27357;background:linear-gradient(180deg,#52d2731f,#52d27309),var(--surface-dark)}.app-dark .workout-row-skipped,.app-dark .workout-row-cancelled{border-color:#fb3f4652;background:linear-gradient(180deg,#fb3f4621,#fb3f4609),var(--surface-dark)}.calendar-workout-actions{display:inline-flex;align-items:center;gap:8px}.calendar-workout-actions button{width:40px;height:40px;border:1px solid var(--border-dark);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted-dark);background:#ffffff0e}.calendar-workout-actions button.danger{color:#ff6b72;background:#fb3f461a;border-color:#fb3f462e}.calendar-day-group{display:grid;gap:10px}.calendar-day-group h2{margin:6px 0 0;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted-dark);font-size:15px;font-weight:800;text-transform:capitalize}.calendar-day-group h2 em{border-radius:999px;padding:4px 9px;color:#0f172a;background:#52d273;font-size:12px;font-style:normal;font-weight:900;text-transform:none}.calendar-day-title-main{min-width:0;display:inline-flex;align-items:center;gap:8px}.calendar-day-title-main>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-day-head-actions{display:inline-flex;align-items:center;gap:8px}.calendar-day-add{flex:0 0 auto;width:31px;height:31px;border:1px solid rgba(52,127,179,.24);border-radius:11px;display:inline-grid;place-items:center;color:#b9d9ea;background:#347fb31f}.calendar-day-today{position:relative}.calendar-day-today:before{content:"";position:absolute;left:-8px;top:34px;bottom:0;width:3px;border-radius:999px;background:#52d273}.calendar-day-today h2 span{color:var(--text-dark)}.calendar-race-card{width:100%;border:1px solid rgba(82,210,115,.36);border-radius:18px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;color:var(--text-dark);background:radial-gradient(circle at 90% 0%,rgba(82,210,115,.16),transparent 42%),linear-gradient(180deg,#19362be6,#142221f5);box-shadow:var(--shadow-dark)}.calendar-race-open{min-width:0;border:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;color:inherit;text-align:left;background:transparent}.calendar-race-delete{width:40px;height:40px;border:1px solid rgba(251,63,70,.18);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:#ff6b72;background:#fb3f461a}@media(hover:hover)and (pointer:fine){.calendar-race-delete{opacity:0;transition:opacity .14s ease,background .14s ease,border-color .14s ease}.calendar-race-card:hover .calendar-race-delete,.calendar-race-card:focus-within .calendar-race-delete{opacity:1}.calendar-race-delete:hover{border-color:#fb3f4657;background:#fb3f4629}}.calendar-race-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;color:#111827;background:#52d273}.calendar-race-main{min-width:0;display:grid;gap:3px}.calendar-race-main strong,.calendar-race-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-race-main strong{font-size:16px}.calendar-race-main small{color:var(--muted-dark);font-size:13px;font-weight:750}.calendar-race-priority{min-width:72px;height:28px;border-radius:999px;display:grid;place-items:center;padding:0 9px;color:#52d273;background:#52d27324;font-size:12px;font-weight:900}.calendar-note-card{width:100%;border:1px solid rgba(148,163,184,.22);border-radius:16px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;color:var(--text-dark);background:#ffffff0e}.calendar-note-open{min-width:0;border:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;color:inherit;text-align:left;background:transparent}.calendar-note-delete{width:40px;height:40px;border:1px solid rgba(251,63,70,.18);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:#ff6b72;background:#fb3f461a}@media(hover:hover)and (pointer:fine){.calendar-note-delete{opacity:0;transition:opacity .14s ease,background .14s ease,border-color .14s ease}.calendar-note-card:hover .calendar-note-delete,.calendar-note-card:focus-within .calendar-note-delete{opacity:1}.calendar-note-delete:hover{border-color:#fb3f4657;background:#fb3f4629}}.calendar-note-icon{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;color:#93c5fd;background:#3b82f629}.calendar-note-main{min-width:0;display:grid;gap:3px}.calendar-note-main strong,.calendar-note-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-note-main strong{font-size:15px}.calendar-note-main small{color:var(--muted-dark);font-size:13px;font-weight:700}.calendar-date-cell{width:38px;display:grid;gap:3px;color:#8a94a6;text-align:center}.calendar-date-cell strong{color:var(--text-light);font-size:17px}.calendar-workout-main{flex:1;min-width:0}.calendar-workout-main h3,.compact-workout-card h3{margin:0 0 4px;font-size:16px;line-height:1.15}.calendar-workout-main div,.compact-workout-card p{margin:0;color:var(--muted-light);font-size:13px}.app-dark .calendar-workout-main div,.app-dark .compact-workout-card p{color:var(--muted-dark)}.status{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:999px;padding:4px 9px;color:var(--muted-light);background:#94a3b81f;font-size:12px;font-weight:800}.status-completed{color:var(--green);background:#52d27324}.status-skipped,.status-cancelled{color:#c6ccd8;background:#94a3b824}.workout-card-completed{border-color:#52d27338}.workout-card-skipped{border-color:#94a3b82e;opacity:.9}.calendar-mobile-view{display:grid;gap:14px}.desktop-month-calendar{display:none}.desktop-calendar-toolbar,.desktop-calendar-title,.desktop-calendar-actions,.desktop-day-head,.desktop-day-actions,.desktop-workout-main,.desktop-workout-actions{min-width:0}.workout-status-panel{margin-top:14px;border-radius:16px;padding:12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid var(--border-dark);background:#ffffff0d}.workout-status-panel strong,.workout-status-panel span{display:block}.workout-status-panel strong{color:var(--text-dark);font-size:16px}.workout-status-panel span{color:var(--muted-dark);font-size:13px;margin-top:2px}.status-panel-completed{border-color:#52d27342;background:#52d2731a;color:var(--green)}.status-panel-skipped{border-color:#94a3b838;background:#94a3b81a;color:#c6ccd8}.status-reset-button{width:34px;height:34px;border:1px solid rgba(239,68,68,.35);border-radius:999px;display:inline-grid;place-items:center;color:#ff5a68;background:#ef44441f;box-shadow:none}.status-reset-button:active{transform:scale(.96);background:#ef444433}.detail-topbar{margin-bottom:6px}.workout-detail-screen{gap:16px}.detail-hero{display:grid;gap:8px}.detail-hero-kicker{color:var(--primary);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.detail-hero-title-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.detail-hero-title-row h1{max-width:310px;margin:0}.editable-workout-title{min-width:0;display:grid;gap:4px}.editable-workout-title-locked{border:1px solid transparent;border-radius:12px;margin:-6px -8px;padding:6px 8px;color:inherit;background:transparent;font:inherit;font-size:30px;line-height:1.05;font-weight:950;text-align:left;cursor:pointer}.editable-workout-title-locked:hover,.editable-workout-title-locked:focus-visible{border-color:#60a5fa61;background:#60a5fa14;outline:none}.editable-workout-title input{width:100%;min-width:0;border:1px solid transparent;border-radius:12px;margin:-6px -8px;padding:6px 8px;color:inherit;background:transparent;font:inherit;font-size:30px;line-height:1.05;font-weight:950;letter-spacing:0}.editable-workout-title input:hover,.editable-workout-title input:focus{border-color:#60a5fa61;background:#60a5fa14;outline:none}.editable-workout-title-status{color:var(--muted-dark);font-size:12px;font-weight:750}.editable-workout-title-status.is-error,.editable-workout-title-status.is-empty{color:#ef4444}.editable-workout-title-status.is-saved{color:#22c55e}.detail-hero-meta{display:flex;align-items:center;gap:12px;color:var(--muted-dark);font-size:16px;font-weight:750}.detail-hero-duration{display:inline-flex;align-items:center;gap:5px}.workout-summary-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--border-dark);border-radius:17px;background:var(--border-dark);gap:1px}.workout-summary-metric{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 8px;padding:14px;color:var(--muted-dark);background:#ffffff0a}.workout-summary-metric svg{grid-row:1 / 3;color:var(--primary)}.workout-summary-metric span{min-width:0;overflow:hidden;color:var(--muted-dark);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.workout-summary-metric strong{min-width:0;overflow:hidden;color:var(--text-dark);font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.workout-detail-panel{overflow:hidden;padding:0}.workout-detail-disclosure>summary{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer;list-style:none}.workout-detail-disclosure>summary::-webkit-details-marker{display:none}.workout-detail-disclosure>summary>span:first-child{min-width:0;display:grid;gap:3px}.workout-detail-disclosure>summary strong{color:var(--text-dark);font-size:16px;font-weight:900}.workout-detail-disclosure>summary small{overflow:hidden;color:var(--muted-dark);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.workout-detail-disclosure>summary>svg,.workout-fact-summary-state>svg{flex:0 0 auto;color:var(--muted-dark);transition:transform .18s ease}.workout-detail-disclosure[open]>summary>svg,.workout-detail-disclosure[open]>summary .workout-fact-summary-state>svg{transform:rotate(180deg)}.workout-purpose-content{display:grid;gap:14px;padding:0 16px 17px}.workout-purpose-content>p{margin:0;color:var(--text-dark);font-size:15px;line-height:1.5}.workout-purpose-focus{display:grid;grid-template-columns:minmax(80px,auto) minmax(0,1fr);gap:16px;padding-top:13px;border-top:1px solid var(--border-dark)}.workout-purpose-focus span{color:var(--muted-dark);font-size:12px;font-weight:850;text-transform:uppercase}.workout-purpose-focus strong{color:var(--text-dark);font-size:14px;line-height:1.4}.workout-structure-content{display:grid;gap:14px;padding:0 16px 17px}.workout-structure-content .workout-chart{margin-top:2px;padding-bottom:13px;border-bottom:1px solid var(--border-dark)}.detail-description{margin:0;color:var(--muted-dark);line-height:1.5}.workout-fact-card{display:block;overflow:hidden;padding:0}.workout-fact-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.workout-fact-note>span{display:block;color:var(--muted-dark);font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.workout-fact-heading{min-width:0;display:grid;gap:3px}.workout-fact-heading strong{color:var(--text-dark);font-size:16px;font-weight:900}.workout-fact-heading small{overflow:hidden;color:var(--muted-dark);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.workout-fact-summary-state{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px}.workout-fact-summary-state>small{max-width:210px;color:var(--muted-dark);font-size:12px;font-weight:750}.workout-fact-content{display:grid;gap:14px;padding:0 16px 17px}.workout-autosave-status{min-height:24px;display:inline-flex!important;align-items:center;color:var(--muted-dark)!important;font-size:12px!important;letter-spacing:0!important;text-transform:none!important}.workout-autosave-status.is-saving{color:var(--accent)!important}.workout-autosave-status.is-error{color:var(--danger)!important}.workout-fact-table{display:grid;gap:6px}.workout-fact-row{display:grid;grid-template-columns:minmax(92px,1fr) minmax(78px,108px) minmax(86px,118px) minmax(34px,54px);align-items:center;gap:6px;min-height:42px;margin:0}.workout-fact-row-head{min-height:18px;color:var(--muted-dark);font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.workout-fact-label{min-width:0;color:var(--text-dark);font-size:14px;font-weight:850}.workout-fact-plan{min-height:38px;border:1px solid var(--border-dark);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;color:var(--muted-dark);font-size:14px;font-weight:800;background:#ffffff0a;white-space:nowrap}.workout-fact-input{width:100%;min-width:0;height:38px;border:1px solid var(--border-dark);border-radius:12px;padding:0 10px;color:var(--text-dark);background:#ffffff12;font:inherit;font-size:14px;font-weight:850;text-align:center;outline:none}.workout-fact-input:focus{border-color:#347fb3c7;box-shadow:0 0 0 3px #347fb32e}.workout-fact-input::placeholder{color:#c6ccd88c}.workout-fact-unit{color:var(--muted-dark);font-size:12px;font-weight:850;white-space:nowrap}.workout-fact-note{display:grid;gap:7px}.workout-fact-note .textarea{min-height:78px}.workout-rpe-review{display:grid;gap:10px;padding:13px;border:1px solid var(--border-dark);border-radius:16px;background:#ffffff09}.workout-rpe-review-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.workout-rpe-review-head strong{display:block;color:var(--text-dark);font-size:14px;font-weight:900}.workout-rpe-review-head span,.workout-rpe-scale-label{color:var(--muted-dark);font-size:12px;font-weight:750}.workout-rpe-scale{display:grid;grid-template-columns:repeat(10,minmax(34px,1fr));gap:6px}.workout-rpe-scale button{min-width:0;height:38px;border:1px solid var(--border-dark);border-radius:11px;color:var(--muted-dark);background:#ffffff0b;font:inherit;font-size:13px;font-weight:900;cursor:pointer}.workout-rpe-scale button:hover{border-color:#347fb38c}.workout-rpe-scale button.is-selected{border-color:#347fb3;color:#fff;background:#347fb3;box-shadow:0 0 0 3px #7c3aed24}.workout-analysis-action{display:flex;align-items:center;gap:12px}.workout-analysis-action .btn{flex:0 0 auto;min-height:38px;padding-inline:15px}.workout-analysis-action small{color:var(--muted-dark);font-size:12px;line-height:1.35}.app-light .workout-fact-head span,.app-light .workout-fact-note span,.app-light .workout-fact-row-head,.app-light .workout-fact-unit,.app-light .workout-fact-plan{color:#64748b}.app-light .workout-fact-head strong,.app-light .workout-fact-label,.app-light .workout-fact-input{color:var(--text-light)}.app-light .workout-fact-plan{border-color:#dbe4f0;background:#f8fafc}.app-light .workout-fact-input{border-color:#dbe4f0;background:#fff;box-shadow:inset 0 1px #0f172a05}.app-light .workout-fact-input::placeholder{color:#a8b3c4}.app-light .workout-rpe-review{border-color:#dbe4f0;background:#f8fafc}.app-light .workout-rpe-review-head strong{color:var(--text-light)}.app-light .workout-rpe-review-head span,.app-light .workout-rpe-scale-label,.app-light .workout-analysis-action small{color:#64748b}.app-light .workout-rpe-scale button{border-color:#dbe4f0;color:#64748b;background:#fff}.app-light .workout-rpe-scale button.is-selected{border-color:#347fb3;color:#fff;background:#347fb3}.app-light .workout-summary-metrics{border-color:#dbe4f0;background:#dbe4f0}.app-light .workout-summary-metric{background:#fff}.app-light .workout-summary-metric span,.app-light .workout-detail-disclosure>summary small,.app-light .workout-fact-heading small,.app-light .workout-fact-summary-state>small,.app-light .workout-detail-disclosure>summary>svg,.app-light .workout-fact-summary-state>svg,.app-light .workout-purpose-focus span{color:#64748b}.app-light .workout-summary-metric strong,.app-light .workout-detail-disclosure>summary strong,.app-light .workout-purpose-content>p,.app-light .workout-purpose-focus strong,.app-light .workout-fact-heading strong{color:var(--text-light)}.app-light .workout-purpose-focus,.app-light .workout-structure-content .workout-chart{border-color:#dbe4f0}.workout-detail-utility-actions,.workout-detail-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workout-detail-utility-actions:empty{display:none}.workout-detail-utility-actions .btn,.workout-detail-primary-actions .btn{width:100%;min-width:0}.workout-detail-primary-actions{margin-top:-4px}@media(max-width:640px){.workout-detail-screen{gap:12px;padding-bottom:10px}.detail-topbar{margin-bottom:0}.detail-hero{gap:7px}.detail-hero-title-row{gap:10px}.detail-hero-meta{gap:8px;font-size:13px}.detail-hero-meta span+span:before{content:"·";margin-right:8px}.workout-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-summary-metric{padding:12px}.workout-detail-disclosure>summary{min-height:62px;padding:12px 14px}.workout-purpose-content,.workout-structure-content,.workout-fact-content{padding-right:14px;padding-left:14px;padding-bottom:14px}.workout-purpose-focus{grid-template-columns:1fr;gap:5px}.workout-fact-summary-state>small{display:none}.workout-fact-row{grid-template-columns:minmax(86px,1fr) minmax(70px,90px) minmax(76px,96px);gap:5px}.workout-fact-unit{display:none}.workout-fact-plan,.workout-fact-input{padding-right:7px;padding-left:7px}.workout-detail-primary-actions{position:sticky;z-index:8;bottom:8px;margin:2px -4px -2px;padding:8px;border:1px solid var(--border-dark);border-radius:16px;background:#141b26f0;box-shadow:0 16px 36px #02061747;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-light .workout-detail-primary-actions{border-color:#dbe4f0;background:#fffffff0;box-shadow:0 16px 36px #0f172a1f}.workout-rpe-review-head,.workout-analysis-action{align-items:stretch;flex-direction:column}.workout-rpe-scale{grid-template-columns:repeat(5,minmax(38px,1fr))}.workout-analysis-action .btn{width:100%}}.completed-metrics-card{gap:14px}.completed-metrics-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.completed-metrics-head span{display:block;color:var(--green);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.completed-metrics-head strong{display:block;margin-top:3px;color:var(--text-dark);font-size:20px}.completed-metrics-head small{color:var(--muted-dark);font-size:12px;text-align:right}.completed-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.completed-metric-tile{min-width:0;border:1px solid var(--border-dark);border-radius:14px;padding:10px;background:#ffffff0a}.completed-metric-tile strong,.completed-metric-tile span,.completed-metric-tile small{display:block}.completed-metric-tile strong{color:var(--text-dark);font-size:18px;line-height:1.1}.completed-metric-tile span{margin-top:5px;color:var(--muted-dark);font-size:12px;font-weight:800}.completed-metric-tile small{margin-top:3px;color:var(--green);font-size:12px;font-weight:850}.completed-streams{position:relative;margin-top:10px;border:1px solid var(--border-dark);border-radius:16px;overflow:visible;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent),#0c121c47}.completed-streams-plot{position:relative;overflow:hidden;border-radius:14px}.completed-streams svg{display:block;width:100%;height:180px;cursor:crosshair}.completed-streams polyline{stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round;opacity:.9}.stream-interval-bar{opacity:.34;transition:opacity .14s ease}.stream-interval-bar.is-solo{opacity:.82}.stream-interval-bar.is-work{fill:#16a37f}.stream-interval-bar.is-recovery{fill:#6388bd}.stream-hover-line{stroke:#0f172a73;stroke-width:1;vector-effect:non-scaling-stroke}.completed-streams-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 4px}.completed-streams-legend{display:flex;flex-wrap:wrap;gap:7px}.completed-streams-legend button{border:0;border-radius:999px;padding:5px 8px;background:#ffffff12;color:var(--muted-dark);font-size:12px;font-weight:850;cursor:pointer}.completed-streams-legend button:before{content:"";width:8px;height:8px;margin-right:6px;border-radius:3px;display:inline-block;vertical-align:-1px;background:var(--stream-color, currentColor);opacity:.36}.completed-streams-legend button.is-active{background:#ffffff2e;color:var(--text-dark);box-shadow:inset 0 0 0 1px #ffffff29}.completed-streams-legend button.is-active:before{opacity:1}.completed-streams-legend .stream-intervals{--stream-color: #16a37f;color:#16a37f}.completed-stream-tooltip{position:absolute;top:10px;z-index:8;min-width:138px;max-width:220px;transform:translate(-50%);display:grid;gap:3px;padding:9px 10px;border:1px solid rgba(148,163,184,.3);border-radius:12px;background:#0f172af0;color:#f8fafc;box-shadow:0 16px 34px #02061738;pointer-events:none}.completed-stream-tooltip.is-left{transform:translate(0)}.completed-stream-tooltip.is-right{transform:translate(-100%)}.completed-stream-tooltip strong,.app-light .completed-stream-tooltip strong,.app-dark .completed-stream-tooltip strong{color:#fff;font-size:12px}.completed-stream-tooltip span,.app-light .completed-stream-tooltip span,.app-dark .completed-stream-tooltip span{font-size:12px;font-weight:800}.completed-laps-list{display:grid;gap:4px;max-height:230px;overflow:auto;padding:0 10px 10px}.completed-lap-row{display:grid;grid-template-columns:10px minmax(150px,1fr) 64px 74px 70px 78px;align-items:center;gap:10px;min-width:520px;min-height:30px;color:var(--muted-dark);font-size:12px}.completed-lap-row.completed-lap-row-swim{grid-template-columns:10px minmax(130px,1fr) 64px 74px 84px 70px 88px;min-width:630px}.completed-lap-row>span:nth-child(n+3){text-align:right;white-space:nowrap}.completed-lap-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dark)}.completed-lap-header{position:sticky;top:0;z-index:1;min-height:28px;padding-bottom:2px;background:#0c121cf0;color:var(--muted-dark);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.completed-lap-header strong,.completed-lap-header span{color:inherit}.completed-lap-dot{width:8px;height:8px;border-radius:50%;background:#f97316}.completed-streams-empty{border:1px dashed var(--border-dark);border-radius:14px;padding:14px;color:var(--muted-dark);font-size:13px}.stream-hr{--stream-color: #fb6b5b;color:#fb6b5b;stroke:#fb6b5b}.stream-speed{--stream-color: #3f8fbf;color:#3f8fbf;stroke:#3f8fbf}.stream-altitude{--stream-color: #9ca3af;color:#9ca3af;stroke:#9ca3af}.stream-power{--stream-color: #347fb3;color:#347fb3;stroke:#347fb3}.stream-cadence{--stream-color: #d85643;color:#d85643;stroke:#d85643}.app-light .completed-metrics-head strong,.app-light .completed-metric-tile strong{color:var(--text-light)}.app-light .completed-metrics-head small,.app-light .completed-metric-tile span,.app-light .completed-streams-empty{color:#64748b}.app-light .completed-metric-tile,.app-light .completed-streams{border-color:#dde5f0;background:#f8fafc}.app-light .completed-streams-legend button{background:#edf2f7;color:#475569}.app-light .completed-streams-legend button.is-active{background:#fff;color:#0f172a;box-shadow:inset 0 0 0 1px #d8e2ef,0 6px 14px #0f172a14}.app-light .stream-hover-line{stroke:#0f172a6b}.app-light .completed-lap-row{color:#64748b}.app-light .completed-lap-row strong{color:#0f172a}.app-light .completed-lap-header{background:#f8fafcf5;color:#64748b}.app-light .completed-lap-header strong,.app-light .completed-lap-header span{color:inherit}.workout-editor-screen{gap:16px}.workout-editor-header{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.workout-editor-header .round-action{width:50px;height:50px}.workout-editor-header span{display:block;margin-bottom:4px;color:var(--primary);font-size:13px;font-weight:850}.workout-editor-header h1{margin:0;font-size:26px;line-height:1.05;letter-spacing:0}.workout-editor-card{padding:18px;border-radius:20px}.workout-editor-header-compact h1{font-size:24px}.editor-section-title{display:grid;gap:4px}.editor-section-title h2{margin:0;font-size:22px;line-height:1.1}.editor-section-title span{color:var(--muted-dark);font-size:13px;font-weight:700}.workout-blocks-card{gap:12px}.workout-blocks-header{display:flex;align-items:center;min-height:34px}.workout-blocks-header h2{margin:0;font-size:24px;line-height:1.1}.editor-short-textarea{min-height:86px}.workout-editor-date-picker{min-height:52px;border-radius:16px}.editor-mini-label{color:var(--muted-dark);font-size:13px;font-weight:850}.editor-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.editor-choice-grid-3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.editor-choice-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-choice-grid-5,.editor-choice-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.editor-choice-grid button{min-height:46px;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:0 10px;color:var(--muted-dark);background:#ffffff0b;font-size:14px;font-weight:850}.editor-choice-grid button.is-active{color:var(--text-dark);border-color:#347fb39e;background:#347fb33d;box-shadow:inset 0 1px #ffffff0f}.editor-segment{display:grid;gap:10px;border:1px solid rgba(255,255,255,.1);border-left:4px solid rgba(52,127,179,.78);border-radius:18px;padding:12px 12px 12px 14px;background:linear-gradient(180deg,#347fb314,#ffffff09),#ffffff0b;box-shadow:inset 0 1px #ffffff0a,0 10px 24px #02061724}.editor-segment-compact{border-radius:16px;padding:10px;border-left-color:#58a6ffd1;background:linear-gradient(180deg,#58a6ff14,#ffffff08),#03071229}.editor-segment-collapsed{gap:0}.editor-rest-note{gap:6px}.editor-rest-note strong{color:var(--text-dark);font-size:16px;line-height:1.2}.editor-rest-note span{color:var(--muted-dark);font-size:13px;font-weight:750;line-height:1.35}.editor-segment-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.editor-segment-toggle{min-width:0;min-height:40px;border:0;padding:0;display:inline-flex;align-items:center;gap:8px;color:var(--text-dark);background:transparent;text-align:left}.editor-segment-toggle>span{min-width:0;display:grid;gap:2px}.editor-segment-head strong,.editor-segment-toggle strong{font-size:16px}.editor-segment-toggle small{overflow:hidden;color:var(--muted-dark);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.editor-delete-button,.editor-add-block-button{min-height:46px;border:1px solid transparent;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:850}.editor-delete-button{color:#ff737d;background:#fb3f461a;border-color:#fb3f462e}.editor-delete-icon{width:42px;min-height:42px;padding:0}.editor-add-block-button{width:100%;color:var(--text-dark);background:#347fb338;border-color:#347fb347}.editor-add-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.editor-add-repeat-button{background:#58a6ff26;border-color:#58a6ff38}.editor-inline-action{min-height:44px;border:1px solid rgba(52,127,179,.26);border-radius:14px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#b9d9ea;background:#347fb321;font-weight:850}.editor-repeat-box{display:grid;gap:10px;border:1px solid rgba(52,127,179,.2);border-left:4px solid rgba(88,166,255,.78);border-radius:16px;padding:12px 12px 12px 14px;background:#347fb317}.editor-repeat-card{background:linear-gradient(180deg,#347fb324,#58a6ff12),#0f172a75}.editor-repeat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.editor-repeat-toggle{min-height:42px;border:0;padding:0;display:inline-flex;align-items:center;gap:8px;color:var(--text-dark);background:transparent;font-weight:900;text-align:left}.editor-repeat-summary{color:var(--muted-dark);font-size:13px;font-weight:700;line-height:1.35}.editor-repeat-inner{display:grid;gap:10px}.editor-repeat-title{color:#b9d9ea;font-weight:850}.workout-builder-desktop{display:grid;gap:14px;min-height:calc(100dvh - 56px)}.workout-builder-top{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:10px;padding:10px;border:1px solid #dde3ec;border-radius:12px;background:#fff;box-shadow:0 10px 26px #0f172a0d}.workout-builder-title-field{min-width:0;display:grid;gap:2px}.workout-builder-title-field span{color:#347fb3;font-size:12px;font-weight:900}.workout-builder-title-field input,.workout-builder-date input{min-width:0;border:0;color:#0f172a;background:transparent;font:inherit;font-weight:900;outline:0}.workout-builder-date,.workout-builder-sport-tabs,.workout-builder-totals{min-height:44px;border:1px solid #dde3ec;border-radius:10px;display:inline-flex;align-items:center;gap:8px;padding:0 10px;background:#f8fafc}.workout-builder-date input{width:128px;font-size:13px;color-scheme:light}.workout-builder-sport-tabs{padding:3px}.workout-builder-sport-tabs button{min-height:36px;border:0;border-radius:8px;padding:0 11px;color:#64748b;background:transparent;font-size:12px;font-weight:900}.workout-builder-sport-tabs button.is-active{color:#0f172a;background:#fff;box-shadow:0 4px 12px #0f172a14}.workout-builder-totals{display:grid;gap:0;align-content:center;min-width:92px}.workout-builder-totals strong{color:#0f172a;font-size:14px;line-height:1.1}.workout-builder-totals span{color:#64748b;font-size:12px;font-weight:800}.workout-setup-row{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(300px,1.28fr);gap:6px;align-items:center;padding:6px;border:1px solid #dbe3ef;border-radius:13px;background:#fff;box-shadow:0 8px 22px #0f172a0b}.workout-setup-row .workout-type-panel,.workout-setup-row .workout-goal-panel{min-width:0;padding:0;border:0;border-radius:0;display:block;background:transparent;box-shadow:none}.workout-setup-row .workout-type-panel>div:first-child,.workout-setup-row .workout-goal-panel>div:first-child{display:none}.workout-setup-row .workout-goal-panel{padding-left:6px;border-left:1px solid #e3e9f1}.workout-setup-row .workout-type-trigger{min-height:46px;padding:7px 10px;border-radius:10px;box-shadow:none}.workout-setup-row .workout-type-trigger small{display:none}.workout-setup-row .workout-type-trigger strong{font-size:14px}.workout-setup-row .editor-choice-grid{gap:5px}.workout-setup-row .editor-choice-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-setup-row .editor-choice-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.workout-setup-row .editor-choice-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.workout-setup-row .editor-choice-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.workout-setup-row .editor-choice-grid button{min-height:46px;padding:0 8px;border-radius:10px;font-size:13px}.app-dark .workout-setup-row{border-color:var(--desktop-dark-border);background:#0f172ab8;box-shadow:none}.app-dark .workout-setup-row .workout-goal-panel{border-left-color:var(--desktop-dark-border)}.workout-builder-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);gap:14px;align-items:start;min-width:0}.workout-builder-left,.workout-builder-outline,.builder-outline-list,.builder-repeat-steps{min-width:0;display:grid;gap:10px}.builder-chart-card,.builder-inspector-card{min-width:0;border-radius:12px;padding:14px}.builder-chart-head,.builder-outline-head,.builder-inspector-head,.builder-repeat-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-chart-head span,.builder-inspector-head span,.builder-outline-head span{display:block;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.builder-chart-head strong,.builder-inspector-head h2,.builder-outline-head h2{margin:0;color:#0f172a;font-size:18px;line-height:1.15}.builder-chart{height:176px;border:1px solid #dde3ec;border-radius:10px;padding:24px 18px 28px;display:flex;align-items:end;gap:5px;overflow-x:hidden;overflow-y:hidden;background:linear-gradient(180deg,#f8fafc4d,#f1f5f9b8),#fff}.builder-chart-bar{flex:1 1 0;width:auto;min-width:0;border:0;border-radius:5px 5px 2px 2px;position:relative;background:var(--builder-chart-color, #94a3b8);box-shadow:inset 0 -10px 18px #0f172a14;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.builder-chart-bar:hover,.builder-chart-bar.is-selected{transform:translateY(-3px);box-shadow:0 8px 18px #0f172a2e}.builder-chart-bar.is-selected{outline:2px solid #2563eb;outline-offset:2px}.builder-chart-warmup,.builder-chart-cooldown,.builder-chart-recovery{background:var(--builder-chart-color, #93c5fd)}.builder-chart-work{background:var(--builder-chart-color, #34d399)}.builder-chart-custom{background:var(--builder-chart-color, #b9d9ea)}.builder-chart-bar span{position:absolute;top:-19px;left:50%;transform:translate(-50%);color:#64748b;font-size:12px;font-weight:900;white-space:nowrap}.builder-inspector-actions,.builder-row-actions,.builder-repeat-count{display:inline-flex;align-items:center;gap:5px}.builder-inspector-actions button,.builder-row-actions button,.builder-small-danger{width:30px;height:30px;border:1px solid #dde3ec;border-radius:8px;display:grid;place-items:center;color:#64748b;background:#fff}.builder-kind-picker,.builder-workout-note{display:grid;gap:8px;position:relative}.workout-type-panel,.workout-goal-panel{border:1px solid #dde3ec;border-radius:12px;padding:10px;display:grid;grid-template-columns:minmax(160px,.35fr) minmax(260px,1fr);align-items:center;gap:12px;background:#fff;box-shadow:0 10px 26px #0f172a0d}.workout-type-panel{border-color:#2563eb47;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 32px #2563eb17}.workout-type-panel.is-compact{grid-template-columns:1fr;gap:10px}.workout-type-panel>div:first-child,.workout-goal-panel>div:first-child{display:grid;gap:2px}.workout-type-panel>div:first-child span,.workout-goal-panel>div:first-child span,.builder-block-target-head span{color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.workout-type-panel>div:first-child span{color:#2563eb}.workout-type-panel>div:first-child strong,.workout-goal-panel>div:first-child strong,.builder-block-target-head strong{color:#0f172a;font-size:16px;font-weight:950}.workout-type-panel>div:first-child strong{font-size:18px}.builder-block-target-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.app-dark .workout-type-panel,.app-dark .workout-goal-panel{border-color:var(--border-dark);background:#10151d57;box-shadow:none}.app-dark .workout-type-panel>div:first-child span,.app-dark .workout-goal-panel>div:first-child span,.app-dark .builder-block-target-head span{color:var(--muted-dark)}.app-dark .workout-type-panel>div:first-child strong,.app-dark .workout-goal-panel>div:first-child strong,.app-dark .builder-block-target-head strong{color:var(--text-dark)}.workout-type-dropdown{position:relative;min-width:0}.workout-type-trigger{width:100%;min-height:62px;border:1px solid #cbd5e1;border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:#0f172a;text-align:left;background:#fff;box-shadow:0 8px 22px #0f172a0d}.workout-type-trigger>span,.workout-type-menu button>span,.workout-sport-picker-card>span{min-width:0;display:grid;gap:2px}.workout-type-trigger strong,.workout-type-menu strong,.workout-sport-picker-card strong{color:inherit;font-size:15px;font-weight:900}.workout-type-trigger small,.workout-type-menu small,.workout-sport-picker-card small{color:#64748b;font-size:12px;font-weight:750;line-height:1.25}.workout-type-menu{position:absolute;z-index:35;left:0;right:0;top:calc(100% + 8px);border:1px solid #dbe3ef;border-radius:18px;padding:8px;display:grid;gap:6px;background:#fff;box-shadow:0 22px 48px #0f172a29}.workout-type-menu button{width:100%;border:1px solid transparent;border-radius:14px;padding:10px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;color:#0f172a;text-align:left;background:transparent}.workout-type-menu button:hover,.workout-type-menu button.is-active{background:#eef2ff;border-color:#c7d2fe}.workout-type-menu button.is-active{color:#312e81}.app-dark .workout-type-trigger{color:var(--text-dark);background:#ffffff0f;border-color:var(--border-dark);box-shadow:none}.app-dark .workout-type-trigger small,.app-dark .workout-type-menu small,.app-dark .workout-sport-picker-card small{color:var(--muted-dark)}.app-dark .workout-type-menu{background:#121923;border-color:var(--border-dark);box-shadow:0 24px 60px #00000057}.app-dark .workout-type-menu button{color:var(--text-dark)}.app-dark .workout-type-menu button:hover,.app-dark .workout-type-menu button.is-active{background:#347fb329;border-color:#a78bfa6b}.builder-kind-picker>span,.builder-workout-note>span{color:#64748b;font-size:12px;font-weight:900}.builder-kind-trigger{width:100%;min-height:48px;border:1px solid #dde3ec;border-radius:12px;padding:0 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;color:#0f172a;background:#fff;text-align:left;box-shadow:0 8px 18px #0f172a0a}.builder-kind-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:5;padding:6px;border:1px solid #dde3ec;border-radius:14px;display:grid;gap:4px;background:#fff;box-shadow:0 18px 44px #0f172a29}.builder-kind-menu button{min-height:48px;border:0;border-radius:10px;padding:7px 9px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;color:#0f172a;background:transparent;text-align:left}.builder-kind-menu button:hover,.builder-kind-menu button.is-active{background:#f1f5f9}.builder-kind-menu strong,.builder-kind-menu small{display:block}.builder-kind-menu small{color:#64748b;font-size:12px;font-weight:800}.builder-kind-dot{width:10px;height:28px;border-radius:999px;background:var(--builder-kind-color, #34d399)}.builder-kind-dot-warmup,.builder-kind-dot-cooldown,.builder-kind-dot-recovery{background:var(--builder-kind-color, #93c5fd)}.builder-kind-dot-work{background:var(--builder-kind-color, #34d399)}.builder-kind-dot-custom{background:#b9d9ea}.builder-workout-note{padding:12px;border:1px solid #dde3ec;border-radius:12px;background:#fff}.builder-workout-note textarea{width:100%;min-height:58px;resize:vertical;border:1px solid #dde3ec;border-radius:10px;padding:10px 12px;color:#0f172a;background:#f8fafc;font:inherit;font-weight:700}.builder-target-zone-panel{display:grid;gap:10px}.builder-target-preset{display:grid;gap:12px;padding:12px;border:1px solid #dbe4f0;border-radius:13px;background:linear-gradient(135deg,#f8fafc,#fff)}.builder-target-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-target-preset-head{display:flex;align-items:center;gap:9px}.builder-target-preset-head>span:last-child{display:grid;gap:2px}.builder-target-preset-head strong{color:#172033;font-size:13px;font-weight:950}.builder-target-preset-head small{color:#7a889f;font-size:12px;font-weight:750}.builder-target-zone-scale{min-height:36px;padding:3px;border-radius:11px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;background:#eef2f7}.builder-target-zone-scale button{min-width:0;min-height:30px;border:1px solid transparent;border-radius:8px;color:var(--target-zone-color, #64748b);background:color-mix(in srgb,var(--target-zone-color, #94a3b8) 12%,#ffffff);font-size:12px;font-weight:950;transition:transform .14s ease,box-shadow .14s ease,color .14s ease,background .14s ease}.builder-target-zone-scale button:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0f172a14}.builder-target-zone-scale button.is-active{border-color:#172033;color:#fff;background:var(--target-zone-color, #64748b);box-shadow:0 0 0 2px #fff,0 0 0 4px #172033}.builder-percent-steppers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.builder-percent-stepper{display:grid;gap:7px;padding:10px;border:1px solid #d5deea;border-radius:12px;background:#fff;color:#69778e;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.builder-percent-stepper>div{min-height:44px;padding:4px;border:0;border-radius:10px;display:grid;grid-template-columns:36px minmax(52px,1fr) 36px;align-items:center;gap:4px;background:#f1f5f9}.builder-percent-stepper:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.builder-percent-stepper button{width:36px;height:36px;border:1px solid #d9e2ed;border-radius:8px;display:grid;place-items:center;color:#172033;background:#f8fafc;transition:color .14s ease,border-color .14s ease,background .14s ease}.builder-percent-stepper button:hover{color:#2563eb;border-color:#bfdbfe;background:#eff6ff}.builder-percent-stepper-value{min-width:0;display:flex;align-items:center;justify-content:center;gap:2px}.builder-percent-stepper-value input{width:100%;min-width:0;border:0;outline:0;color:#172033;text-align:right;background:transparent;font:inherit;font-size:18px;font-weight:950}.builder-percent-stepper-value small{color:#64748b;font-size:12px;font-weight:900}.builder-target-calculation{min-height:38px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;color:#64748b;background:#f1f5f9}.builder-target-calculation span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.builder-target-calculation strong{color:#172033;font-size:12px;font-weight:950}.builder-target-calculation small{color:#64748b;font-size:12px;font-weight:850}.builder-zone-divider{display:flex;align-items:center;gap:8px;color:#8793a7;font-size:12px;font-weight:850}.builder-zone-divider:before,.builder-zone-divider:after{content:"";height:1px;flex:1;background:#e3e9f1}.builder-zone-divider span{white-space:nowrap}.builder-zone-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:7px}.builder-zone-list button{min-height:54px;border:1px solid #dde3ec;border-radius:10px;padding:8px;display:grid;gap:2px;color:#475569;background:#fff;text-align:left}.builder-zone-list button.is-active{color:#0f172a;border-color:#2563eb;background:#eff6ff;box-shadow:0 8px 18px #2563eb1f}.builder-zone-list strong{font-size:12px;font-weight:950}.builder-zone-list span{font-size:12px;font-weight:800}.builder-rpe-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.builder-rpe-stepper{min-width:0;border:1px solid #dde3ec;border-radius:12px;padding:10px;display:grid;gap:8px;background:#fff}.builder-rpe-stepper>span{color:#64748b;font-size:12px;font-weight:900}.builder-rpe-stepper div{display:grid;grid-template-columns:38px minmax(48px,1fr) 38px;align-items:center;gap:8px}.builder-rpe-stepper button{width:38px;height:38px;border:1px solid #d6e0ec;border-radius:10px;display:grid;place-items:center;color:#0f172a;background:#f8fafc;box-shadow:0 4px 12px #0f172a0d}.builder-rpe-stepper button:hover:not(:disabled){color:#2563eb;border-color:#bfdbfe;background:#eff6ff}.builder-rpe-stepper button:disabled{cursor:not-allowed;color:#cbd5e1;background:#f8fafc;box-shadow:none}.builder-rpe-stepper strong{min-height:38px;border-radius:10px;display:grid;place-items:center;color:#0f172a;background:#f1f5f9;font-size:20px;font-weight:950}.app-dark .builder-rpe-stepper{border-color:#94a3b83d;background:#0f172adb}.app-dark .builder-rpe-stepper>span{color:#94a3b8}.app-dark .builder-rpe-stepper button{color:#e5e7eb;border-color:#94a3b83d;background:#1e293be0}.app-dark .builder-rpe-stepper button:disabled{color:#475569;background:#0f172ab8}.app-dark .builder-rpe-stepper strong{color:#f8fafc;background:#1e293be6}.builder-control-card{display:grid;gap:10px;margin-top:10px;padding:12px;border:1px solid #dde3ec;border-radius:12px;background:#f8fafc}.builder-stepper{display:grid;gap:7px}.builder-time-field{display:grid;gap:8px}.builder-time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.builder-time-inputs label{min-width:0;border:1px solid #dde3ec;border-radius:12px;padding:8px 10px;display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:center;gap:8px;background:#fff}.builder-time-inputs span{color:#64748b;font-size:12px;font-weight:900}.builder-time-inputs input{width:100%;min-height:34px;border:0;border-radius:8px;color:#0f172a;background:#f8fafc;text-align:center;font:inherit;font-weight:950;outline:0}.builder-time-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.builder-time-actions button{min-height:34px;border:1px solid #dde3ec;border-radius:10px;color:#475569;background:#fff;font-size:12px;font-weight:900}.builder-time-actions button:hover{color:#0f172a;border-color:#bfdbfe;background:#eff6ff}.builder-stepper>span{color:#64748b;font-size:12px;font-weight:900}.builder-stepper div{display:grid;grid-template-columns:44px 1fr 44px;gap:8px}.builder-stepper button,.builder-stepper input{min-height:42px;border:1px solid #dde3ec;border-radius:10px;color:#0f172a;background:#fff;text-align:center;font-weight:900}.builder-outline-head{padding:12px;border:1px solid #dde3ec;border-radius:12px;background:#fff}.builder-outline-row,.builder-repeat-row,.builder-repeat-step{border:1px solid #dde3ec;border-radius:12px;background:#fff;box-shadow:0 8px 22px #0f172a0a;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease,opacity .14s ease}.builder-outline-row,.builder-repeat-step{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px}.builder-outline-row.is-selected,.builder-repeat-step.is-selected{border-color:#2563eb;background:#eff6ff;outline:2px solid #2563eb;outline-offset:1px;box-shadow:0 12px 26px #2563eb29;transform:translateY(-1px)}.builder-repeat-row.has-selection{border-color:#2563eb6b;box-shadow:0 10px 24px #2563eb17}.builder-outline-row.is-dragging,.builder-repeat-step.is-dragging{opacity:.45;transform:scale(.99)}.builder-row-main{min-width:0;border:0;padding:0;display:grid;grid-template-columns:auto 4px minmax(0,1fr);align-items:center;gap:9px;color:#0f172a;background:transparent;text-align:left}.builder-row-main strong,.builder-row-main small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.builder-row-main small{color:#64748b;font-size:12px;font-weight:750}.builder-row-accent{width:4px;height:34px;border-radius:999px;background:#34d399}.builder-row-accent-warmup,.builder-row-accent-cooldown,.builder-row-accent-recovery{background:#60a5fa}.builder-row-accent-work{background:#34d399}.builder-row-accent-custom{background:#78b7d3}.builder-repeat-row{display:grid;gap:8px;padding:10px;background:#f8fafc}.builder-repeat-top{min-height:34px}.builder-repeat-title{border:0;display:inline-flex;align-items:center;gap:7px;color:#0f172a;background:transparent;font-weight:950}.builder-repeat-title span{color:#0f172a}.builder-repeat-count{margin-left:auto;min-height:36px;padding:3px;border:1px solid #d8e1ed;border-radius:999px;background:linear-gradient(180deg,#fff,#f1f5f9);box-shadow:inset 0 1px #ffffffe6,0 8px 18px #0f172a0f}.builder-repeat-count strong{min-width:38px;padding:0 3px;text-align:center;color:#0f172a;font-size:14px;font-weight:950;line-height:30px}.builder-repeat-count button{width:30px;height:30px;border:0;border-radius:999px;display:grid;place-items:center;color:#475569;background:#fff;box-shadow:0 1px 2px #0f172a14;font-size:18px;font-weight:900;transition:color .14s ease,background .14s ease,transform .14s ease,box-shadow .14s ease}.builder-repeat-count button:hover{color:#0f172a;background:#eff6ff;box-shadow:0 4px 12px #2563eb24}.builder-repeat-count button:active{transform:scale(.94)}.builder-repeat-row>p{margin:0;color:#64748b;font-size:12px;font-weight:750}.builder-repeat-step{background:#fff}.builder-add-step,.builder-add-actions button{min-height:44px;border:1px dashed #cbd5e1;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#475569;background:#fff;font-weight:900}.builder-add-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.builder-inspector-empty{display:grid;gap:4px;padding:18px;border-radius:12px}.plan-phase-card,.race-card,.focus-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.plan-phase-card h2,.race-card h3{margin:4px 0;font-size:25px}.mini-sparkline{width:104px;height:58px;display:flex;align-items:end;justify-content:end;gap:5px}.mini-sparkline span{width:18px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,#c084fc,#c084fc2e)}.mini-sparkline span:nth-child(1){height:24px}.mini-sparkline span:nth-child(2){height:34px}.mini-sparkline span:nth-child(3){height:28px}.mini-sparkline span:nth-child(4){height:46px}.race-card{display:grid;grid-template-columns:1fr auto}.race-card strong{grid-row:span 2;color:var(--primary);font-size:46px;align-self:center}.race-card>span{color:var(--muted-light);font-size:12px}.load-number{font-size:26px;font-weight:850;margin:8px 0 0}.load-number span{color:var(--muted-dark);font-size:13px;font-weight:650}.weekly-chart{position:relative;height:150px;margin-top:16px}.weekly-grid-line{position:absolute;left:0;right:0;top:45%;border-top:1px dashed rgba(52,127,179,.36)}.weekly-bars{height:100%;display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.weekly-bar-column{display:grid;grid-template-rows:1fr auto;gap:8px;min-width:0;color:var(--muted-light);font-size:12px;text-align:center}.weekly-chart-dark .weekly-bar-column{color:var(--muted-dark)}.weekly-bar-track{position:relative;display:flex;align-items:end;justify-content:center}.weekly-bar-planned,.weekly-bar-completed{position:absolute;bottom:0;width:64%;min-height:2px;border-radius:7px 7px 0 0}.weekly-bar-planned{background:#347fb333}.weekly-bar-completed{width:48%;background:linear-gradient(180deg,#4e96bd,#347fb3);box-shadow:0 10px 24px #347fb347}.progress-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.progress-tabs button{border:0;background:transparent;color:var(--muted-dark);min-height:42px;font-size:13px;font-weight:750;border-bottom:2px solid transparent}.progress-tabs .active{color:var(--text-dark);border-bottom-color:var(--primary)}.period-select{min-height:50px;border:0;border-radius:16px;background:var(--surface-dark);color:var(--text-dark);padding:0 14px;display:flex;align-items:center;justify-content:space-between}.static-period{justify-content:center;font-weight:800}.metric-list,.detail-grid,.form-grid,.event-list,.switch-list,.help-list{display:grid;gap:10px}.form-grid{grid-template-columns:1fr 1fr}.form-grid .span-2{grid-column:1 / -1}.progress-metric,.detail-item,.settings-row,.event-card,.help-list p{border:1px solid var(--border-dark);border-radius:16px;padding:12px;background:#ffffff0a}.progress-metric{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px}.progress-metric>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#b9d9ea;background:#347fb32e}.progress-metric small,.detail-item span,.settings-row span,.event-card span,.help-list span{display:block;color:var(--muted-dark);font-size:13px}.progress-metric strong,.detail-item strong,.settings-row strong,.event-card strong{display:block;color:var(--text-dark);font-size:16px;margin-top:2px}.progress-hero-card,.ai-progress-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.progress-hero-card h2{margin:4px 0;font-size:44px;line-height:1}.progress-hero-card p,.ai-progress-card p{margin:0;color:var(--muted-dark);line-height:1.45}.progress-hero-icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;color:#b9d9ea;background:#347fb32e}.progress-history-tabs,.progress-metric-tabs{display:grid;border-radius:18px;padding:4px;background:#ffffff12}.progress-history-tabs{grid-template-columns:1fr 1fr}.progress-metric-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.progress-history-tabs button,.progress-metric-tabs button{min-height:38px;border:0;border-radius:14px;color:var(--muted-dark);background:transparent;font-size:22px;font-weight:850;line-height:1}.progress-history-tabs button.active,.progress-metric-tabs button.active{color:var(--text-dark);background:#ffffff29}.progress-metric-tabs button:disabled{cursor:default;opacity:.38}.progress-history-chart-card{display:grid;gap:14px}.progress-history-chart{--progress-bar-count: 1;min-height:220px;display:grid;grid-template-columns:repeat(var(--progress-bar-count),minmax(18px,42px));gap:clamp(3px,.8vw,8px);align-items:end;justify-content:center;padding:8px 0 0;overflow:hidden}.progress-history-bar-column{min-width:0;min-height:204px;border:0;padding:0;display:grid;grid-template-rows:1fr 20px;gap:7px;color:var(--muted-dark);background:transparent;text-align:center}.progress-history-bar-value{color:#52d273;font-size:12px;font-weight:850;white-space:nowrap}.progress-history-bar-track{height:100%;display:flex;align-items:end;justify-content:center;padding-top:24px}.progress-history-bar{position:relative;width:min(36px,78%);min-height:4px;border-radius:12px 12px 5px 5px;background:linear-gradient(180deg,#52d273,#16c66a);box-shadow:0 12px 30px #16c66a3d}.progress-history-bar-value{position:absolute;left:50%;bottom:calc(100% + 7px);transform:translate(-50%)}.progress-history-bar-label{overflow:hidden;color:var(--text-dark);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.progress-history-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-history-summary-item{min-width:0;border:1px solid var(--border-dark);border-radius:16px;padding:10px;display:grid;gap:4px;background:#ffffff0a}.progress-history-summary-item>span{color:#52d273}.progress-history-summary-item small{overflow:hidden;color:var(--muted-dark);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.progress-history-summary-item strong{color:var(--text-dark);font-size:15px;line-height:1.15}.progress-empty-history h2,.progress-empty-history p{margin:0}.progress-empty-history p{margin-top:6px;color:var(--muted-dark);line-height:1.4}.progress-period-list{display:grid;gap:22px}.progress-period-section{scroll-margin-top:18px;display:grid;gap:10px}.progress-period-head{display:flex;align-items:end;justify-content:space-between;gap:14px}.progress-period-head h2{margin:0;font-size:24px;line-height:1.05;text-transform:lowercase}.progress-period-head p{margin:7px 0 0;color:var(--muted-dark);font-size:14px;font-weight:750}.progress-period-metrics{margin-top:9px;display:flex;flex-wrap:wrap;gap:6px;color:var(--muted-dark)}.progress-period-metrics span{min-height:24px;border:1px solid var(--border-dark);border-radius:999px;padding:4px 8px;display:inline-flex;align-items:center;gap:5px;background:#ffffff0a;font-size:12px;font-weight:800;line-height:1;white-space:nowrap}.progress-sport-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-sport-total{min-width:0;border:1px solid var(--border-dark);border-radius:14px;padding:8px;display:flex;align-items:center;gap:8px;background:#ffffff0a}.progress-sport-total span{min-width:0;display:grid;gap:2px}.progress-sport-total strong,.progress-sport-total small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-sport-total strong{font-size:13px}.progress-sport-total small{color:var(--muted-dark);font-size:12px;font-weight:700}.progress-workout-list{overflow:hidden;border:1px solid var(--border-dark);border-radius:22px;background:#00000057}.progress-workout-row{min-height:78px;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.progress-workout-row+.progress-workout-row{border-top:1px solid var(--border-dark)}.progress-workout-main{min-width:0;display:grid;gap:5px}.progress-workout-main strong,.progress-workout-main span,.progress-workout-row time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-workout-main strong{font-size:17px}.progress-workout-main span,.progress-workout-row time{color:var(--muted-dark);font-size:14px;font-weight:700}.progress-period-empty{border:1px solid var(--border-dark);border-radius:16px;padding:14px;color:var(--muted-dark);background:#ffffff0a;font-weight:750}.discipline-volume-list{display:grid;gap:14px}.discipline-row{display:grid;gap:8px}.discipline-row-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.discipline-row-head span{color:#b9d9ea}.discipline-row-head small{color:var(--muted-dark);font-size:12px;font-weight:700}.discipline-bar{position:relative;height:9px;border-radius:999px;overflow:hidden;background:#ffffff14}.discipline-bar span,.discipline-bar b{position:absolute;inset:0 auto 0 0;border-radius:999px}.discipline-bar span{background:#347fb333}.discipline-bar b{background:linear-gradient(90deg,#60a5fa,#347fb3)}.discipline-row p{font-size:12px}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.event-card p,.help-list p{margin:0}.events-hero-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.events-hero-card h2,.event-form-card h3{margin:0}.events-hero-card p,.event-form-card p{margin:4px 0 0;line-height:1.35}.events-hero-icon,.form-card-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;color:#b9d9ea;background:#347fb32e}.event-summary-strip{min-width:62px;border-radius:16px;padding:8px 10px;display:grid;place-items:center;background:#ffffff0d;border:1px solid var(--border-dark)}.event-summary-strip span{color:var(--text-dark);font-size:22px;line-height:1;font-weight:850}.event-summary-strip small{margin-top:2px;color:var(--muted-dark);font-size:12px}.event-list-header,.event-archive-toggle{border:1px solid var(--border-dark);border-radius:18px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffff0a}.event-list-header strong,.event-archive-toggle strong{color:var(--text-dark)}.event-list-header span,.event-archive-toggle small,.event-archive-toggle em{color:var(--muted-dark);font-size:13px;font-style:normal;font-weight:750}.event-archive{display:grid;gap:10px}.event-archive-toggle{width:100%;text-align:left;cursor:pointer}.event-archive-toggle span{display:grid;gap:2px}.event-archive-list,.event-archive-year{display:grid;gap:10px}.event-archive-year h3{margin:2px 0 0;color:var(--muted-dark);font-size:13px}.race-event-card{border:1px solid var(--border-dark);border-radius:22px;padding:14px;display:grid;gap:12px;background:radial-gradient(circle at 90% 0%,rgba(52,127,179,.14),transparent 40%),#ffffff0b}.race-event-card-archived{background:#ffffff09}.race-event-card-archived>strong{color:#f8fafcc7}.race-event-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.race-event-card>strong{color:var(--text-dark);font-size:20px;line-height:1.15}.race-priority{min-width:96px;height:38px;padding:0 12px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:850;background:linear-gradient(135deg,var(--primary),var(--primary-2))}.race-priority-b{background:linear-gradient(135deg,#60a5fa,#347fb3)}.race-priority-c{background:linear-gradient(135deg,#64748b,#475569)}.race-meta-list{display:flex;flex-wrap:wrap;gap:8px}.race-meta-list span{min-height:30px;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;color:var(--muted-dark);background:#ffffff0e;font-size:13px;font-weight:700}.race-empty-state{border:1px dashed rgba(255,255,255,.16);border-radius:22px;padding:20px;display:grid;place-items:center;gap:7px;text-align:center;color:var(--muted-dark);background:#ffffff08}.race-empty-state strong{color:var(--text-dark);font-size:17px}.race-empty-state span{font-size:13px}.form-card-header{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:14px}.event-form-stack{display:grid;gap:12px}.event-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.date-picker-shell{min-height:58px;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:0 14px;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;color:var(--muted-dark);background:linear-gradient(180deg,#ffffff12,#ffffff0b);box-shadow:inset 0 1px #ffffff09}.date-picker-shell input{width:100%;min-width:0;border:0;outline:none;color:var(--text-dark);background:transparent;font:inherit;font-weight:800;color-scheme:dark}.date-picker-shell input::-webkit-calendar-picker-indicator{opacity:.8;filter:invert(1)}@media(min-width:1024px){.app-shell{max-width:none;width:100%;padding:0}.app-shell.app-light{color:var(--text-light);background:linear-gradient(180deg,#ffffffe0,#f7f9fcf5),var(--bg-light)}.desktop-web-shell{width:100%;min-height:100dvh;margin:0;padding:0 0 48px;display:block}.desktop-sidebar{display:none}.desktop-brand{display:flex;align-items:center;gap:10px;color:#0f172a;font-size:17px;font-weight:900}.desktop-brand span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#111827,#2473a6)}.desktop-sidebar-nav{display:grid;align-content:start;gap:5px}.desktop-sidebar-nav button{min-height:44px;border:0;border-radius:12px;padding:0 12px;display:flex;align-items:center;gap:10px;color:#64748b;background:transparent;font-size:14px;font-weight:800;text-align:left}.desktop-sidebar-nav button:hover,.desktop-sidebar-nav button.active{color:#0f172a;background:#eef2ff}.desktop-sidebar-nav button.active{box-shadow:inset 3px 0 #2473a6}.desktop-sidebar-account{display:grid;gap:8px;border-top:1px solid #e2e8f0;padding-top:14px}.desktop-sidebar-account span{min-width:0;overflow:hidden;color:#64748b;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.desktop-side-tabs{position:sticky;top:14px;z-index:24;width:156px;padding:7px;display:flex;flex-direction:column;gap:5px;border:1px solid #dde3ec;border-radius:18px;background:#ffffffeb;box-shadow:0 16px 34px #0f172a0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.desktop-side-tabs button{width:100%;min-height:42px;border:1px solid transparent;border-radius:13px;padding:0 10px;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;color:#64748b;background:transparent;font-size:13px;font-weight:850;text-align:left}.desktop-side-tabs button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desktop-side-tabs button:hover{color:#0f172a;background:#f8fafc;border-color:#e2e8f0}.desktop-side-tabs button.active{color:#0f172a;background:#fff;border-color:#bfdbfe;box-shadow:0 10px 24px #2563eb21,inset 0 0 0 1px #dbeafe}.desktop-web-main{min-width:0;display:block;padding:0 28px}.desktop-web-topbar{position:sticky;top:0;left:0;right:0;z-index:24;width:100%;max-width:100%;margin:0;min-height:70px;border:1px solid #dde3ec;border-left:0;border-right:0;border-top:0;border-radius:0;padding:10px 28px;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(360px,520px);align-items:center;gap:16px;background:#ffffffe6;box-shadow:0 14px 30px #0f172a0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.desktop-web-brand{min-width:0;display:inline-flex;align-items:center;gap:11px}.desktop-web-brand>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;overflow:hidden;background:#080b0f;border:1px solid rgba(15,23,42,.14);box-shadow:0 7px 18px #0f172a29}.desktop-web-brand div{min-width:0;display:grid;gap:2px}.desktop-web-brand strong,.desktop-web-brand small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desktop-web-brand strong{color:#0f172a;font-size:16px;line-height:1.1}.desktop-web-brand small{color:#64748b;font-size:12px;font-weight:800}.desktop-top-tabs{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:5px;border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc}.desktop-top-tabs button{min-width:0;min-height:46px;border:0;border-radius:14px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#64748b;background:transparent;font-size:13px;font-weight:850}.desktop-top-tabs button:hover{color:#0f172a;background:#fff}.desktop-top-tabs button.active{color:#0f172a;background:#fff;box-shadow:0 8px 18px #0f172a14,inset 0 0 0 1px #dbe4ef}.desktop-coach-trigger{min-height:46px;border:1px solid #c7d2fe;border-radius:14px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#4338ca;background:#eef2ff;font-size:13px;font-weight:850;white-space:nowrap}.desktop-coach-trigger:hover,.desktop-coach-trigger.active{color:#fff;border-color:#6366f1;background:#6366f1;box-shadow:0 8px 20px #6366f13d}.desktop-web-content{width:100%;max-width:1460px;margin:14px auto 0;display:block}.bottom-nav{display:none}.calendar-screen{width:100%;max-width:1280px;margin:0 auto}.calendar-mobile-view{display:none}.desktop-month-calendar{display:grid;gap:14px}.desktop-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.desktop-calendar-title{display:flex;align-items:center;gap:13px}.desktop-calendar-title-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;color:#b9d9ea;background:#347fb329;border:1px solid rgba(52,127,179,.2)}.desktop-calendar-title h1{margin:0;font-size:30px;line-height:1.04;text-transform:capitalize}.desktop-calendar-title p{margin:4px 0 0;color:var(--muted-dark);font-size:13px;font-weight:750}.desktop-calendar-actions{display:flex;align-items:center;gap:8px}.desktop-calendar-nav{width:42px;height:42px;border:1px solid var(--border-dark);border-radius:14px;display:inline-grid;place-items:center;color:var(--text-dark);background:#ffffff0f;font-size:28px;line-height:1}.desktop-calendar-message,.desktop-calendar-loading,.desktop-calendar-footnote{margin:0;border:1px solid var(--border-dark);border-radius:14px;padding:10px 12px;color:var(--muted-dark);background:#ffffff0b;font-size:13px;font-weight:750}.desktop-calendar-message{border-color:#fb3f4642;color:#ff9aa0;background:#fb3f4614}.desktop-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(132px,auto);border:1px solid var(--border-dark);border-radius:18px;overflow:hidden;background:#ffffff09;box-shadow:var(--shadow-dark)}.desktop-month-grid[aria-busy=true]{opacity:.72}.desktop-weekday{min-height:34px;padding:10px 12px;color:var(--muted-dark);background:#ffffff0d;border-right:1px solid var(--border-dark);border-bottom:1px solid var(--border-dark);font-size:12px;font-weight:900;letter-spacing:0}.desktop-weekday:nth-child(7){border-right:0}.desktop-day-cell{position:relative;min-width:0;min-height:132px;padding:10px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;background:#1a2029c2;border-right:1px solid var(--border-dark);border-bottom:1px solid var(--border-dark)}.desktop-day-cell:nth-child(7n){border-right:0}.desktop-day-outside{background:#10151d8f}.desktop-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.desktop-day-number{width:30px;height:30px;border:0;border-radius:11px;display:inline-grid;place-items:center;color:var(--text-dark);background:transparent;font-size:14px;font-weight:900}.desktop-day-outside .desktop-day-number{color:#a7b0c094}.desktop-day-today .desktop-day-number{color:#0f172a;background:var(--green)}.desktop-day-actions{position:absolute;top:10px;right:10px;display:inline-flex;gap:5px;opacity:0;transition:opacity .14s ease}.desktop-day-cell:hover .desktop-day-actions,.desktop-day-cell:focus-within .desktop-day-actions{opacity:1}.desktop-day-actions button,.desktop-workout-actions button{width:28px;height:28px;border:1px solid var(--border-dark);border-radius:10px;padding:0;display:inline-grid;place-items:center;color:var(--muted-dark);background:#ffffff0e;line-height:0}.desktop-day-actions button svg,.desktop-workout-actions button svg{display:block}.desktop-day-actions button:hover,.desktop-workout-actions button:hover,.desktop-calendar-nav:hover{color:var(--text-dark);background:#347fb329}.desktop-day-items{min-width:0;display:grid;align-content:start;gap:7px}.desktop-workout-card,.desktop-race-card,.desktop-note-card{min-width:0;border:1px solid var(--border-dark);border-radius:12px;color:var(--text-dark);background:#ffffff0e}.desktop-workout-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;padding:10px 34px 10px 10px;text-align:left;cursor:pointer;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.desktop-workout-open{width:100%;min-width:0;border:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;color:inherit;text-align:left;background:transparent;cursor:pointer}.desktop-workout-open:focus,.desktop-workout-open:focus-visible{outline:none}.desktop-workout-card[draggable=true]{cursor:grab}.desktop-workout-card[draggable=true]:active{cursor:grabbing}.desktop-workout-dragging{opacity:.48;transform:scale(.985);box-shadow:0 16px 32px #0f172a29}.desktop-workout-planned{border-left:4px solid rgba(52,127,179,.82)}.desktop-workout-completed{border-left:4px solid rgba(82,210,115,.86);background:#52d27317}.desktop-workout-skipped,.desktop-workout-cancelled{border-left:4px solid rgba(251,63,70,.78);background:#fb3f4614}.desktop-workout-main{display:flex;align-items:flex-start;gap:8px;border:0;padding:0;color:inherit;text-align:left;background:transparent}.desktop-workout-main .sport-icon-sm{width:28px;height:28px;flex-basis:28px}.desktop-workout-main span,.desktop-race-card span,.desktop-note-card span{min-width:0;display:grid;gap:2px}.desktop-workout-main small,.desktop-race-card strong,.desktop-race-card small,.desktop-note-card strong,.desktop-note-card small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desktop-workout-main strong,.desktop-race-card strong,.desktop-note-card strong{font-size:13px;line-height:1.15}.desktop-workout-main strong{overflow:visible;text-overflow:clip;white-space:normal}.desktop-workout-main small,.desktop-race-card small,.desktop-note-card small{color:var(--muted-dark);font-size:12px;font-weight:750}.desktop-note-card{min-height:54px;padding:9px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-color:#3b82f647;background:#3b82f614}.desktop-note-card-main{min-width:0;border:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;color:inherit;text-align:left;background:transparent}.desktop-note-card-delete{width:28px;height:28px;border:1px solid rgba(251,63,70,.18);border-radius:10px;display:grid;place-items:center;color:#ff6b72;background:#fb3f461a;opacity:0;transition:opacity .14s ease,background .14s ease,border-color .14s ease}.desktop-note-card:hover .desktop-note-card-delete,.desktop-note-card:focus-within .desktop-note-card-delete{opacity:1}.desktop-note-card-delete:hover{border-color:#fb3f4657;background:#fb3f4629}.desktop-note-card-main svg{color:#93c5fd}.desktop-workout-meta{display:flex;flex-wrap:wrap;gap:3px 8px;color:var(--muted-dark);font-size:12px;font-weight:800;line-height:1.15}.desktop-workout-meta strong{color:var(--text-dark);font-size:12px;line-height:1.15}.desktop-workout-tss{color:inherit}.desktop-workout-chart{min-width:0;margin-top:1px}.desktop-workout-chart .workout-chart{height:36px;padding:3px 0 5px}.desktop-workout-chart .chart-baseline{left:0;right:0;bottom:5px;border-top-color:#fff3}.desktop-workout-chart .chart-baseline:before{display:none}.desktop-workout-chart .chart-bars{gap:2px}.desktop-workout-chart .chart-bar{min-width:3px;border-radius:3px 3px 0 0}.desktop-workout-actions{position:absolute;top:5px;right:5px;display:inline-flex;align-items:center;gap:3px;opacity:0;transition:opacity .14s ease}.desktop-workout-card:hover .desktop-workout-actions,.desktop-workout-card:focus-within .desktop-workout-actions{opacity:1}.desktop-workout-actions button{width:24px;height:24px;border-radius:8px;font-size:12px;line-height:0}.desktop-race-card{width:100%;padding:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-color:#52d2735c;background:#52d2731c}.desktop-race-card-main{min-width:0;border:0;padding:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;color:inherit;text-align:left;background:transparent}.desktop-race-card-delete{width:28px;height:28px;border:1px solid rgba(251,63,70,.18);border-radius:10px;display:grid;place-items:center;color:#ff6b72;background:#fb3f461a;opacity:0;transition:opacity .14s ease,background .14s ease,border-color .14s ease}.desktop-race-card:hover .desktop-race-card-delete,.desktop-race-card:focus-within .desktop-race-card-delete{opacity:1}.desktop-race-card-delete:hover{border-color:#fb3f4657;background:#fb3f4629}.desktop-race-card-main svg{color:var(--green)}.desktop-empty-day{width:fit-content;min-height:28px;border:1px dashed rgba(52,127,179,.28);border-radius:10px;padding:0 10px;color:#b9d9ea;background:#347fb314;font-size:12px;font-weight:800;opacity:0;transition:opacity .14s ease,background .14s ease}.desktop-day-cell:hover .desktop-empty-day,.desktop-day-cell:focus-within .desktop-empty-day{opacity:1}.desktop-empty-day:hover{background:#347fb329}}@media(min-width:1024px){.desktop-web-shell .stack{gap:16px}.desktop-web-shell .screen-header,.desktop-web-shell .today-hero{display:none}.desktop-web-shell .card,.desktop-web-shell .dark-card,.desktop-web-shell .more-card,.desktop-web-shell .progress-period-section{color:#0f172a;background:#ffffffeb;border:1px solid #dde3ec;border-radius:14px;box-shadow:0 14px 34px #0f172a0e}.desktop-web-shell .muted,.desktop-web-shell .card p,.desktop-web-shell .list-row-main span,.desktop-web-shell .profile-row span,.desktop-web-shell .progress-period-head p,.desktop-web-shell .progress-workout-main span,.desktop-web-shell .progress-workout-row time{color:#64748b}.desktop-web-shell .round-action{color:#0f172a;background:#fff;border:1px solid #dde3ec;box-shadow:0 10px 24px #0f172a12}.desktop-web-shell .button-row{display:flex;flex-wrap:wrap}.desktop-web-shell .btn{min-height:42px;border-radius:12px;padding:0 14px;font-size:14px}.desktop-web-shell .btn-primary{background:#111827;box-shadow:0 12px 26px #0f172a2e}.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost{color:#4338ca;background:#eef2ff}.desktop-web-shell .empty-state{min-height:260px;display:grid;align-content:center;justify-items:start}.desktop-web-shell .today-screen{width:100%;max-width:1460px}.desktop-web-shell .progress-screen,.desktop-web-shell .more-screen{width:100%;max-width:1120px;margin:0 auto}.desktop-web-shell .today-multi-summary,.desktop-web-shell .race-start-card,.desktop-web-shell .next-workout,.desktop-web-shell .rest-day-card,.desktop-web-shell .workout-card,.desktop-web-shell .more-card,.desktop-web-shell .progress-history-chart-card,.desktop-web-shell .progress-period-section{border-radius:14px;box-shadow:0 12px 30px #0f172a0e}.desktop-web-shell .chat-panel-screen{min-height:calc(100dvh - 152px);width:100%;max-width:1120px;margin:0 auto;border:1px solid #dde3ec;border-radius:18px;padding:18px;background:#ffffffeb;box-shadow:0 16px 36px #0f172a0f}.desktop-web-shell .progress-history-chart{grid-template-columns:repeat(var(--progress-bar-count),minmax(32px,48px))}.desktop-web-shell .progress-history-bar{width:min(38px,82%)}.desktop-web-shell .chat-limit-pill{width:fit-content;color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.desktop-web-shell .chat-messages{border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#f8fafc}.desktop-web-shell .chat-message-assistant{color:#0f172a;background:#fff;border-color:#e2e8f0}.desktop-web-shell .chat-input-row textarea{color:#0f172a;background:#fff;border-color:#d8dee8}.desktop-web-shell .more-card{overflow:hidden}.desktop-web-shell .profile-row,.desktop-web-shell .list-row{min-height:64px;border-bottom-color:#e2e8f0}.desktop-web-shell .list-row-icon,.desktop-web-shell .more-icon{background:#f1f5f9;color:#0f172a}.desktop-web-shell .progress-history-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.desktop-web-shell .progress-period-list{gap:14px}.desktop-web-shell .progress-period-section{gap:14px;padding:18px}.desktop-web-shell .progress-period-head{align-items:center;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.desktop-web-shell .progress-period-head h2{color:#0f172a;font-size:22px;text-transform:none}.desktop-web-shell .progress-period-head p{margin-top:5px;font-size:13px}.desktop-web-shell .progress-period-metrics{margin-top:8px}.desktop-web-shell .progress-period-metrics span{border-color:#dde3ec;background:#f8fafc;color:#64748b}.desktop-web-shell .progress-sport-totals{display:flex;flex-wrap:wrap;gap:8px}.desktop-web-shell .progress-sport-total{width:auto;min-height:42px;padding:7px 10px 7px 7px;border-radius:999px;box-shadow:none}.desktop-web-shell .progress-sport-total .sport-icon-sm{width:28px;height:28px;flex:0 0 28px}.desktop-web-shell .progress-sport-total span{gap:0}.desktop-web-shell .progress-sport-total strong,.desktop-web-shell .progress-sport-total small{font-size:12px}.desktop-web-shell .progress-workout-list{display:grid;gap:8px;overflow:visible;border:0;border-radius:0;background:transparent}.desktop-web-shell .progress-history-summary-item,.desktop-web-shell .progress-sport-total,.desktop-web-shell .progress-workout-row{background:#fff;border-color:#dde3ec}.desktop-web-shell .progress-workout-row{min-height:0;padding:10px;border:1px solid #dde3ec;border-radius:14px;gap:10px;box-shadow:0 8px 20px #0f172a09}.desktop-web-shell .progress-workout-row+.progress-workout-row{border-top:1px solid #dde3ec}.desktop-web-shell .progress-workout-row .sport-icon{width:34px;height:34px}.desktop-web-shell .progress-workout-main{gap:2px}.desktop-web-shell .progress-workout-main strong{color:#0f172a;font-size:14px}.desktop-web-shell .progress-workout-main span{font-size:12px}.desktop-web-shell .progress-workout-row time{padding:5px 8px;border-radius:999px;color:#475569;background:#f1f5f9;font-size:12px}.desktop-web-shell .progress-history-tabs,.desktop-web-shell .progress-metric-tabs{background:#eef2f7;border-color:#dde3ec}.desktop-web-shell .progress-history-tabs button,.desktop-web-shell .progress-metric-tabs button{color:#64748b}.desktop-web-shell .progress-history-tabs button.active,.desktop-web-shell .progress-metric-tabs button.active{color:#0f172a;background:#fff}.desktop-web-shell .period-select,.desktop-web-shell .settings-row,.desktop-web-shell .event-card,.desktop-web-shell .help-list p,.desktop-web-shell .connection-card,.desktop-web-shell .event-summary-strip,.desktop-web-shell .event-list-header,.desktop-web-shell .event-archive-toggle,.desktop-web-shell .race-event-card,.desktop-web-shell .race-empty-state,.desktop-web-shell .goal-option-card,.desktop-web-shell .segmented-control,.desktop-web-shell .switch-row,.desktop-web-shell .zone-tabs,.desktop-web-shell .hr-zone-trigger,.desktop-web-shell .hr-zone-current,.desktop-web-shell .zone-card,.desktop-web-shell .zone-card-title,.desktop-web-shell .zone-range-row input,.desktop-web-shell .date-picker-shell,.desktop-web-shell .autosave-status,.desktop-web-shell .icon-button,.desktop-web-shell .textarea,.desktop-web-shell .input,.desktop-web-shell .select{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.desktop-web-shell .event-summary-strip,.desktop-web-shell .race-empty-state,.desktop-web-shell .segmented-control,.desktop-web-shell .zone-tabs,.desktop-web-shell .date-picker-shell{background:#f8fafc}.desktop-web-shell .events-hero-icon,.desktop-web-shell .form-card-icon,.desktop-web-shell .progress-metric>span{color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe}.desktop-web-shell .period-select,.desktop-web-shell .settings-row strong,.desktop-web-shell .event-card strong,.desktop-web-shell .event-summary-strip span,.desktop-web-shell .event-list-header strong,.desktop-web-shell .event-archive-toggle strong,.desktop-web-shell .race-event-card>strong,.desktop-web-shell .race-empty-state strong,.desktop-web-shell .goal-option-card,.desktop-web-shell .segmented-control button.is-active,.desktop-web-shell .switch-row,.desktop-web-shell .zone-tabs button.is-active,.desktop-web-shell .hr-zone-trigger,.desktop-web-shell .hr-zone-current strong,.desktop-web-shell .zone-card-title,.desktop-web-shell .date-picker-shell input{color:#0f172a}.desktop-web-shell .form-field>span,.desktop-web-shell .settings-row span,.desktop-web-shell .event-card span,.desktop-web-shell .help-list span,.desktop-web-shell .connections-header p,.desktop-web-shell .connections-category-head p,.desktop-web-shell .connection-card small,.desktop-web-shell .events-hero-card p,.desktop-web-shell .event-form-card p,.desktop-web-shell .event-summary-strip small,.desktop-web-shell .event-list-header span,.desktop-web-shell .event-archive-toggle small,.desktop-web-shell .event-archive-toggle em,.desktop-web-shell .event-archive-year h3,.desktop-web-shell .race-meta-list span,.desktop-web-shell .race-empty-state,.desktop-web-shell .race-empty-state span,.desktop-web-shell .goal-option-card small,.desktop-web-shell .segmented-control button,.desktop-web-shell .autosave-status,.desktop-web-shell .zone-tabs button,.desktop-web-shell .zone-collapsed-hint,.desktop-web-shell .hr-zone-trigger span,.desktop-web-shell .hr-zone-current span,.desktop-web-shell .hr-zone-current small,.desktop-web-shell .hr-zone-sheet-field span,.desktop-web-shell .zone-range-row,.desktop-web-shell .zone-range-row span,.desktop-web-shell .zone-range-row em,.desktop-web-shell .zone-range-row small{color:#64748b}.desktop-web-shell .goal-option-card.is-active,.desktop-web-shell .segmented-control button.is-active,.desktop-web-shell .zone-tabs button.is-active{color:#312e81;background:#eef2ff;border-color:#c7d2fe;box-shadow:inset 0 0 0 1px #c7d2fe}.desktop-web-shell .goal-option-card.is-active small,.desktop-web-shell .hr-zone-trigger-status{color:#4338ca;background:#e0e7ff}.desktop-web-shell .switch-control{background:#e2e8f0;border-color:#cbd5e1}.desktop-web-shell .switch-control:after{background:#fff;box-shadow:0 4px 12px #0f172a29}.desktop-web-shell .switch-control.is-on{background:#2473a6;border-color:#4338ca}.desktop-web-shell .switch-control.is-on:after{background:#fff}.desktop-web-shell .race-meta-list span{background:#f1f5f9}.desktop-web-shell .race-empty-state{border-style:dashed}.desktop-web-shell .date-picker-shell input,.desktop-web-shell .textarea,.desktop-web-shell .input,.desktop-web-shell .select{color-scheme:light}.desktop-web-shell .date-picker-shell input::-webkit-calendar-picker-indicator{filter:none}.desktop-web-shell .select option{color:#0f172a;background:#fff}.desktop-web-shell .connections-card{width:min(100%,820px);margin:0 auto}.desktop-web-shell .more-detail-topbar-connections{width:min(100%,820px);margin:0 auto -10px}.desktop-web-shell .connections-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-web-shell .connection-card{min-height:126px;grid-template-rows:auto 1fr}.desktop-web-shell .connection-card .connection-badge{align-self:end}.desktop-web-shell .logout-confirm-dialog,.logout-confirm-dialog{color:#0f172a;background:#fffffff5;border-color:#dde3ec;box-shadow:0 24px 70px #0f172a2e}.desktop-web-shell .logout-confirm-dialog p,.logout-confirm-dialog p{color:#64748b}.desktop-web-shell .profile-details-card{width:min(100%,980px);margin:0 auto;padding:18px;gap:14px}.desktop-web-shell .profile-details-header{padding-bottom:14px;border-bottom:1px solid #e2e8f0}.desktop-web-shell .profile-details-header h2{font-size:24px}.desktop-web-shell .profile-details-header p{max-width:620px;margin:5px 0 0;font-size:13px;line-height:1.35}.desktop-web-shell .profile-desktop-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px;align-items:start}.desktop-web-shell .profile-compact-section{min-width:0;padding:14px;border:1px solid #dde3ec;border-radius:16px;display:grid;gap:11px;background:#fff;box-shadow:0 10px 24px #0f172a0a}.desktop-web-shell .profile-equipment-section{grid-column:1 / -1}.desktop-web-shell .profile-section-title{margin:0;color:#0f172a;font-size:15px;line-height:1.1}.desktop-web-shell .profile-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.desktop-web-shell .profile-main-grid{align-items:start}.desktop-web-shell .profile-sex-field{grid-column:1 / -1}.desktop-web-shell .profile-details-card .form-field{gap:5px}.desktop-web-shell .profile-details-card .form-field>span{color:#64748b;font-size:12px;font-weight:850}.desktop-web-shell .profile-details-card .input,.desktop-web-shell .profile-details-card .select{min-height:42px;border-radius:12px;padding:0 12px;font-size:14px;box-shadow:none}.desktop-web-shell .profile-details-card .textarea.compact{min-height:70px;border-radius:12px;padding:11px 12px;font-size:14px;box-shadow:none}.desktop-web-shell .profile-sex-control,.desktop-web-shell .profile-details-card .segmented-control{min-height:42px;border-radius:12px;padding:3px;gap:3px;box-shadow:none}.desktop-web-shell .profile-sex-control button,.desktop-web-shell .profile-details-card .segmented-control button{min-height:34px;border-radius:9px;font-size:13px}.desktop-web-shell .profile-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.desktop-web-shell .profile-equipment-grid .switch-row{min-height:42px;border-radius:13px;padding:7px 8px 7px 11px;box-shadow:none}.desktop-web-shell .profile-equipment-grid .switch-row strong{font-size:13px}.desktop-web-shell .profile-equipment-grid .switch-control{width:38px;height:22px}.desktop-web-shell .profile-equipment-grid .switch-control:after{width:16px;height:16px}.desktop-web-shell .profile-equipment-grid .switch-control.is-on:after{transform:translate(16px)}.desktop-web-shell .profile-details-card .training-zones-section{padding:14px;border:1px solid #dde3ec;border-radius:16px;gap:10px;background:#fff;box-shadow:0 10px 24px #0f172a0a}.desktop-web-shell .profile-details-card .profile-section-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.desktop-web-shell .profile-details-card .profile-section-heading p{margin:0;font-size:12px}.desktop-web-shell .profile-details-card .hr-zone-trigger{min-height:50px;border-radius:13px;padding:9px 11px;box-shadow:none}.desktop-web-shell .profile-details-card .hr-zone-trigger strong{font-size:13px}.desktop-web-shell .profile-details-card .hr-zone-trigger span{font-size:12px}.desktop-web-shell .profile-details-card .hr-zone-trigger-status{min-width:60px;min-height:28px;font-size:12px}.desktop-web-shell .profile-details-card .zone-tabs{min-height:44px;border-radius:13px;box-shadow:none}.desktop-web-shell .profile-details-card .zone-tabs button{border-radius:9px}.desktop-web-shell .profile-details-card .zone-tabs button span,.desktop-web-shell .profile-details-card .zone-tabs button small{font-size:12px}.desktop-web-shell .profile-details-card .zone-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;gap:8px}.desktop-web-shell .profile-details-card .zone-card:nth-child(-n+3){grid-column:1}.desktop-web-shell .profile-details-card .zone-card:nth-child(n+4){grid-column:2}.desktop-web-shell .profile-details-card .zone-card:nth-child(1),.desktop-web-shell .profile-details-card .zone-card:nth-child(4){grid-row:1}.desktop-web-shell .profile-details-card .zone-card:nth-child(2),.desktop-web-shell .profile-details-card .zone-card:nth-child(5){grid-row:2}.desktop-web-shell .profile-details-card .zone-card:nth-child(3){grid-row:3}.desktop-web-shell .profile-details-card .zone-card{border-radius:13px;padding:9px;gap:8px;box-shadow:none}.desktop-web-shell .profile-details-card .zone-card-title{min-height:28px;border-radius:9px;padding:6px 8px;font-size:12px}.desktop-web-shell .profile-details-card .zone-range-row{grid-template-columns:minmax(48px,.75fr) minmax(0,1fr) auto minmax(0,1fr) minmax(38px,auto);gap:5px}.desktop-web-shell .profile-details-card .zone-range-row span,.desktop-web-shell .profile-details-card .zone-range-row em,.desktop-web-shell .profile-details-card .zone-range-row small{font-size:12px}.desktop-web-shell .profile-details-card .zone-range-row input{min-height:32px;border-radius:9px;padding:5px 7px;font-size:12px;box-shadow:none}.desktop-web-shell .profile-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.desktop-web-content .calendar-screen{max-width:1460px}.desktop-calendar-coach-layout,.desktop-web-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:18px}.desktop-web-layout-coach-open{grid-template-columns:minmax(0,1fr)}.desktop-global-coach-panel{position:fixed;top:86px;right:clamp(16px,2vw,28px);z-index:23;width:clamp(520px,44vw,640px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 108px);overflow:hidden;border:1px solid #dde3ec;border-radius:18px;padding:14px;background:#fff;box-shadow:0 18px 42px #0f172a14}.app-dark .desktop-global-coach-panel{border-color:#303a49;background:#171e29;box-shadow:0 18px 42px #00000042}.desktop-calendar-coach-layout-open{grid-template-columns:minmax(0,1fr) minmax(360px,410px)}.desktop-week-timeline{display:grid;gap:16px;overflow-anchor:none}.calendar-coach-panel{position:sticky;top:86px;z-index:12;min-width:0;max-height:calc(100dvh - 108px);overflow:hidden;border:1px solid #dde3ec;border-radius:18px;padding:14px;background:#fff;box-shadow:0 18px 42px #0f172a14}.chat-panel-calendar{height:calc(100dvh - 138px);grid-template-rows:auto auto minmax(0,1fr) auto auto auto}.chat-panel-calendar .chat-header{align-items:flex-start}.chat-panel-calendar .chat-messages{min-height:0;max-height:none}.desktop-week-list{display:grid;gap:18px}.desktop-week-sentinel{height:1px}.desktop-today-fab{position:fixed;right:24px;bottom:24px;z-index:15;min-height:44px;border:1px solid rgba(37,99,235,.24);border-radius:999px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#1d4ed8;background:#fffffff0;box-shadow:0 16px 34px #0f172a24;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:14px;font-weight:900}.desktop-today-fab:hover{color:#0f172a;border-color:#2563eb61;background:#fff}.desktop-week-row{min-width:0;position:relative;scroll-margin-top:96px;overflow:hidden;border:1px solid #dfe6ef;border-radius:20px;background:#fff;box-shadow:0 14px 34px #0f172a0d}.desktop-week-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#22c55e,#2563eb 54%,#347fb3);opacity:.72}.desktop-week-row-current{border-color:#93c5fd;box-shadow:0 18px 44px #2563eb1b}.desktop-week-row-head{min-height:62px;padding:13px 16px 13px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #e2e8f0;background:linear-gradient(180deg,#fff,#f8fafc)}.desktop-week-row-head>div:first-child{min-width:0;display:flex;align-items:center}.desktop-week-row-head strong{color:#0f172a;font-size:18px;font-weight:950;line-height:1.15;white-space:nowrap}.desktop-week-row-head span{color:#64748b;font-size:14px;font-weight:750;white-space:nowrap}.desktop-week-row-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.desktop-week-row-actions .wellness-compact-shell{flex:0 0 40px;width:40px}.desktop-week-row-actions .wellness-compact{min-height:44px;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;padding:5px 7px}.desktop-week-row-actions .wellness-compact-icon{width:32px;height:32px;color:#fff;background:#5546db;box-shadow:0 5px 12px #4338ca47}.desktop-week-row-actions .wellness-compact-icon svg{color:#fff;stroke:#fff;opacity:1}.desktop-week-row-actions .wellness-compact-action{min-width:34px;min-height:23px;padding:0 6px;color:#2473a6;background:#eeedff;font-size:12px;line-height:1}.desktop-week-note{margin:0;padding:10px 14px;border-bottom:1px solid #e2e8f0;color:#64748b;background:#f8fafc;font-size:13px;font-weight:750}.desktop-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch}.desktop-week-day{min-width:0;min-height:166px;padding:11px;display:grid;grid-template-rows:auto minmax(74px,1fr) auto;gap:9px;background:linear-gradient(180deg,#f8fafcc7,#fffffff5 38%),#fff;border-right:1px solid #e2e8f0;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.desktop-week-day:last-child{border-right:0}.desktop-week-day-weekend{background:linear-gradient(180deg,#f1f5f9e6,#f8fafcfa),#f8fafc}.desktop-week-day-today{position:relative;background:linear-gradient(180deg,#dbeafec2,#eff6ff75 52%,#fffffffa),#fff;box-shadow:inset 0 0 0 2px #2563eb47,0 10px 28px #2563eb14}.desktop-week-day-today:before{content:"";position:absolute;inset:0 0 auto;z-index:1;height:4px;border-radius:0 0 4px 4px;background:#2563eb;box-shadow:0 3px 10px #2563eb3d;pointer-events:none}.desktop-week-day-drop-target{background:linear-gradient(180deg,#dbeafee6,#eff6fffa),#eff6ff;box-shadow:inset 0 0 0 2px #2563eb57,0 14px 30px #2563eb1f;transform:translateY(-1px)}.desktop-week-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.desktop-week-day-head-meta{display:inline-flex;align-items:center;gap:6px}.desktop-week-day-label{min-width:0;display:flex;align-items:center;gap:6px}.desktop-week-day-head span{color:#64748b;font-size:12px;font-weight:900}.desktop-week-day-head strong{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;color:#0f172a;font-size:14px;font-weight:900}.desktop-week-day-today .desktop-week-day-head strong{color:#fff;background:#2563eb;box-shadow:0 6px 16px #2563eb38}.desktop-week-day-items{min-width:0;display:grid;align-content:start;gap:7px}.desktop-week-day-add{width:100%;min-height:28px;justify-self:stretch;border:1px dashed #b8c3d3;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#64748b;background:transparent;box-shadow:none;font:inherit;font-size:12px;font-weight:800;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,background .14s ease,border-color .14s ease,color .14s ease}.desktop-week-day:hover .desktop-week-day-add,.desktop-week-day:focus-within .desktop-week-day-add{opacity:1;pointer-events:auto;transform:translateY(0)}.desktop-week-day-add:hover{color:#4338ca;background:#f5f3ff;border-color:#a5b4fc}.desktop-month-calendar{gap:12px}.desktop-calendar-toolbar{border:1px solid #dde3ec;border-radius:18px;padding:14px 16px;background:#ffffffeb;box-shadow:0 14px 32px #0f172a0e}.desktop-calendar-title-icon{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.desktop-calendar-title h1{color:#0f172a;font-size:26px}.desktop-calendar-title p{color:#64748b}.desktop-calendar-actions{flex-wrap:wrap;justify-content:flex-end}.desktop-calendar-nav{width:38px;height:38px;color:#0f172a;background:#fff;border-color:#d8dee8;border-radius:12px}.desktop-empty-plan-banner,.desktop-calendar-message,.desktop-calendar-loading,.desktop-calendar-footnote{border:1px solid #dde3ec;border-radius:14px;background:#ffffffeb;color:#64748b;box-shadow:0 12px 28px #0f172a0d}.desktop-empty-plan-banner{padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.desktop-empty-plan-banner div{display:grid;gap:3px}.desktop-empty-plan-banner strong{color:#0f172a;font-size:14px}.desktop-empty-plan-banner span{color:#64748b;font-size:13px;font-weight:650}.desktop-calendar-message{color:#b91c1c;background:#fff1f2;border-color:#fecdd3}.desktop-month-grid{grid-auto-rows:minmax(132px,auto);border-color:#d8dee8;border-radius:18px;background:#fff;box-shadow:0 16px 38px #0f172a0f}.desktop-weekday{color:#64748b;background:#f8fafc;border-color:#e2e8f0}.desktop-day-cell{min-height:132px;background:#fff;border-color:#e2e8f0}.desktop-day-selected-week{background:#fbfdff;box-shadow:inset 0 0 0 2px #4f46e529}.desktop-day-outside{background:#f8fafc}.desktop-day-number{color:#0f172a}.desktop-day-outside .desktop-day-number{color:#94a3b8}.desktop-day-today .desktop-day-number{color:#fff;background:#111827}.desktop-day-actions button,.desktop-workout-actions button{color:#64748b;background:#fff;border-color:#d8dee8}.desktop-day-actions button:hover,.desktop-workout-actions button:hover,.desktop-calendar-nav:hover{color:#0f172a;background:#eef2ff}.desktop-workout-card,.desktop-race-card{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 6px 16px #0f172a0b}.desktop-workout-planned{border-left-color:#2473a6}.desktop-workout-completed{border-left-color:#16a34a;background:#f0fdf4}.desktop-workout-skipped,.desktop-workout-cancelled{border-left-color:#dc2626;background:#fff1f2}.desktop-workout-main small,.desktop-workout-meta,.desktop-race-card small{color:#64748b}.desktop-workout-meta strong{color:#0f172a}.desktop-workout-chart .chart-baseline{border-top-color:#cbd5e1}.desktop-race-card{border-color:#bbf7d0;background:#f0fdf4}.desktop-race-card-main svg{color:#16a34a}.desktop-race-card-delete{color:#dc2626;background:#fff1f2;border-color:#fecdd3}.desktop-empty-day{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.desktop-empty-day:hover{background:#e0e7ff}.desktop-web-shell .future-week-card{border:1px solid #dde3ec;border-radius:16px;padding:14px;color:#0f172a;background:#ffffffeb;box-shadow:0 14px 32px #0f172a0e}.desktop-web-shell .future-week-card h2,.desktop-web-shell .future-week-card p{color:#0f172a}.desktop-web-shell .future-week-card .muted,.desktop-web-shell .future-week-card .segment .muted{color:#64748b}.desktop-web-shell .future-week-card .segment{color:#0f172a;background:#f8fafc;border-color:#e2e8f0}.desktop-web-shell .preview-empty-row strong{color:#64748b}.desktop-web-shell .preview-race-row{border-color:#bbf7d0;background:#f0fdf4}.desktop-web-shell .future-week-generate{max-width:260px}.desktop-web-shell .manual-week-notice,.desktop-web-shell .preview-issues{color:#92400e;background:#fffbeb;border-color:#fde68a}.desktop-web-shell .manual-week-notice p,.desktop-web-shell .preview-issues span{color:#92400e}.auth-screen{min-height:100dvh;padding:40px 24px;background:linear-gradient(135deg,rgba(79,70,229,.08),transparent 36%),#f6f7fb}.auth-panel{width:min(100%,420px);border-color:#dde3ec;border-radius:22px;padding:24px;color:#0f172a;background:#fffffff0;box-shadow:0 22px 60px #0f172a1c}.auth-icon{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.auth-heading p,.auth-field{color:#64748b}.auth-field input{color:#0f172a;background:#fff;border-color:#d8dee8;color-scheme:light}.auth-switch,.text-action{color:#4338ca}}@media(min-width:1024px)and (hover:none){.desktop-week-day-add{opacity:1;pointer-events:auto;transform:none}}@media(max-width:380px){.event-form-grid{grid-template-columns:1fr}}.catalog-filter-dock{display:grid;gap:10px;min-width:0}@media(min-width:621px){.catalog-browser:not(.catalog-browser-compact)>.catalog-filter-dock{position:sticky;z-index:8;top:76px;margin:-8px -8px 0;padding:8px 8px 11px;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent);background:color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:0 12px 24px color-mix(in srgb,var(--text) 5%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}}.catalog-card-peek{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;gap:8px;padding:24px 54px 24px 20px;opacity:0;color:var(--text);background:color-mix(in srgb,var(--surface) 95%,var(--primary) 5%);transform:translateY(8px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.catalog-card-peek small{color:var(--primary);font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.catalog-card-peek strong{display:-webkit-box;overflow:hidden;font-size:14px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:4}.catalog-card-peek span{color:var(--text-muted);font-size:12px;font-weight:750;line-height:1.4}@media(hover:hover)and (pointer:fine){.catalog-template-card:hover .catalog-card-peek,.catalog-template-main:focus-visible+.catalog-card-peek{opacity:1;transform:none}}.desktop-week-heading{gap:15px}.week-load-summary{display:inline-flex;align-items:center;gap:7px;min-width:0;padding:5px 8px;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:10px;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 90%,var(--text) 3%);font-size:12px;line-height:1;white-space:nowrap}.desktop-week-row-head .week-load-summary :is(span,small,b){color:inherit;font-size:12px;line-height:1}.week-load-metric b{color:var(--text);font-weight:900}.week-load-completed{color:#047857!important}.week-load-balance{display:flex;width:46px;height:6px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent)}.week-load-balance i{min-width:0}.week-load-balance .is-easy{background:#45b89a}.week-load-balance .is-hard{background:#f16f57}.week-load-summary.is-compact{width:fit-content;max-width:100%;margin:-2px auto 0;padding:7px 10px}.wellness-saved-summary{display:grid;gap:9px;padding:10px;border:1px solid color-mix(in srgb,var(--wellness-marker, #6d5dfc) 22%,transparent);border-radius:13px;background:color-mix(in srgb,var(--wellness-marker, #6d5dfc) 7%,var(--surface))}.wellness-saved-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.wellness-saved-summary-head>span,.wellness-saved-summary-head button{display:inline-flex;align-items:center;gap:6px}.wellness-saved-summary-head>span{color:#059669}.wellness-saved-summary-head strong{color:var(--text);font-size:12px}.wellness-saved-summary-head button{min-height:30px;padding:0 7px;border:0;border-radius:8px;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);font:inherit;font-size:12px;font-weight:850}.wellness-saved-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.wellness-saved-summary-grid>span{display:grid;gap:3px;min-width:0;padding:7px 8px;border-radius:9px;background:color-mix(in srgb,var(--surface) 88%,var(--text) 3%)}.wellness-saved-summary-grid small{color:var(--text-muted);font-size:12px}.wellness-saved-summary-grid strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.coach-change-overview{display:grid;gap:9px;padding:10px;border:1px solid rgba(52,127,179,.25);border-radius:13px;background:#347fb312}.coach-change-overview-title{display:grid;gap:2px}.coach-change-overview-title strong{font-size:13px}.coach-change-overview-title small{color:var(--text-secondary);font-size:12px}.coach-change-counts{display:flex;flex-wrap:wrap;gap:6px}.coach-change-counts span{padding:5px 7px;border-radius:8px;font-size:12px;font-weight:850}.coach-change-counts .is-added{color:#6ee7b7;background:#10b9811f}.coach-change-counts .is-changed{color:#b9d9ea;background:#347fb324}.coach-change-counts .is-removed{color:#fca5a5;background:#ef44441f}.coach-load-diff{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.coach-load-diff>span{display:grid;gap:3px;padding:8px;border-radius:9px;background:#ffffff0b}.coach-load-diff small{color:var(--text-secondary);font-size:12px}.coach-load-diff strong{font-size:12px}.coach-load-diff em{color:#a7f3d0;font-size:12px;font-style:normal;font-weight:800}.coach-action-reasoning{display:grid;gap:4px;margin:0;padding:9px 10px;border-left:3px solid #347fb3;border-radius:0 9px 9px 0;background:#347fb312}.coach-action-reasoning strong{color:var(--text);font-size:12px}.coach-action-reasoning p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.45}.coach-operation-diff{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:6px;margin-top:4px}.coach-operation-diff>span{align-self:center;color:#78b7d3;font-weight:900}.coach-patch-snapshot{display:grid;align-content:start;gap:3px;min-width:0;padding:7px;border:1px solid rgba(148,163,184,.16);border-radius:8px;background:#ffffff09}.coach-patch-snapshot>small{color:var(--text-secondary);font-size:12px;font-weight:850;text-transform:uppercase}.coach-patch-snapshot>strong{overflow:hidden;font-size:12px;line-height:1.3;text-overflow:ellipsis}.coach-patch-snapshot>span{color:var(--text-secondary);font-size:12px;line-height:1.35}.coach-patch-snapshot.is-empty{opacity:.68;border-style:dashed}.app-light .coach-change-overview{border-color:#b9d9ea;background:#f5f3ff}.app-light .coach-change-counts .is-added{color:#047857}.app-light .coach-change-counts .is-changed{color:#6d28d9}.app-light .coach-change-counts .is-removed{color:#b91c1c}.app-light .coach-load-diff>span,.app-light .coach-patch-snapshot{border-color:#e2e8f0;background:#fff}.app-light .coach-load-diff em{color:#047857}.app-light .coach-action-reasoning{background:#f5f3ff}@media(max-width:620px){.catalog-browser:not(.catalog-browser-compact)>.catalog-filter-dock{position:sticky;z-index:8;top:0;margin:-4px -2px 0;padding:4px 2px 8px;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.catalog-filter-dock :is(.catalog-filters,.catalog-tags){flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.catalog-filter-dock :is(.catalog-filters,.catalog-tags)::-webkit-scrollbar{display:none}.catalog-filter-dock :is(.catalog-filters,.catalog-tags) button{flex:0 0 auto}.catalog-card-peek{display:none}.bottom-sheet,.app-dark .bottom-sheet{width:100%;max-height:calc(100dvh - max(10px,env(safe-area-inset-top)));padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.bottom-sheet-backdrop{align-items:flex-end;padding:max(8px,env(safe-area-inset-top)) 0 0}.bottom-sheet :is(.btn,.round-action),.wellness-sheet :is(.btn,.round-action),.catalog-date-dialog :is(.btn,.round-action){min-height:44px}.bottom-sheet input,.bottom-sheet textarea,.bottom-sheet select,.wellness-sheet textarea,.catalog-date-dialog input{font-size:16px}.catalog-preview{align-self:end;width:100%;max-height:calc(100dvh - max(10px,env(safe-area-inset-top)));padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.catalog-modal-backdrop{align-items:end;padding:max(8px,env(safe-area-inset-top)) 0 0}.catalog-date-dialog{width:100%;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.coach-operation-diff{grid-template-columns:1fr}.coach-operation-diff>span{justify-self:center;transform:rotate(90deg)}}@media(max-width:400px){.chat-sheet .chat-header{grid-template-columns:1fr}.chat-sheet .chat-header-actions{justify-self:start}.chat-header-actions .text-action{min-height:36px}.coach-load-diff{grid-template-columns:1fr}.week-load-summary.is-compact small{display:none}.week-load-summary.is-compact{gap:6px}.week-load-balance{width:38px}}.catalog-screen{width:100%;color:var(--text)}.catalog-browser{display:grid;gap:15px;min-width:0}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.catalog-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}.catalog-toolbar-actions>.btn{flex:0 0 auto;white-space:nowrap}.catalog-toolbar-actions>.catalog-search{flex:1 1 auto}.catalog-scope-tabs{display:flex;min-height:44px;padding:4px;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:15px;background:color-mix(in srgb,var(--surface) 90%,var(--text) 4%)}.catalog-scope-tabs button,.catalog-filters button,.catalog-tags button{min-height:36px;padding:0 15px;border:0;border-radius:11px;color:var(--text-muted);background:transparent;font-size:13px;font-weight:800}.catalog-scope-tabs button.active{color:#fff;background:linear-gradient(135deg,#7652ed,#5d39d5);box-shadow:0 7px 18px #6d45d83b}.catalog-search{display:flex;align-items:center;gap:8px;width:min(330px,40vw);min-height:44px;padding:0 13px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:14px;color:var(--text-muted);background:var(--surface)}.catalog-search input{width:100%;border:0;outline:0;color:var(--text);background:transparent}.catalog-filters,.catalog-tags{display:flex;flex-wrap:wrap;gap:7px}.catalog-filters button{border:1px solid color-mix(in srgb,var(--text) 9%,transparent);background:var(--surface)}.catalog-filters button.active{color:var(--text);border-color:color-mix(in srgb,var(--primary) 55%,transparent);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.catalog-tags button,.catalog-card-tag{--catalog-tag-color: #347fb3;--catalog-tag-bg: color-mix(in srgb,var(--catalog-tag-color) 11%,var(--surface))}.catalog-tags :is(button[data-tone=all]),.catalog-card-tag[data-tone=all]{--catalog-tag-color: #20242b}.catalog-tags :is(button[data-tone=recovery]),.catalog-card-tag[data-tone=recovery]{--catalog-tag-color: #6688b8}.catalog-tags :is(button[data-tone=endurance]),.catalog-card-tag[data-tone=endurance]{--catalog-tag-color: #347fb3}.catalog-tags :is(button[data-tone=tempo]),.catalog-card-tag[data-tone=tempo]{--catalog-tag-color: #b78000}.catalog-tags :is(button[data-tone=threshold]),.catalog-card-tag[data-tone=threshold]{--catalog-tag-color: #d66a1f}.catalog-tags :is(button[data-tone=vo2max]),.catalog-card-tag[data-tone=vo2max]{--catalog-tag-color: #e55244}.catalog-tags :is(button[data-tone=speed]),.catalog-card-tag[data-tone=speed]{--catalog-tag-color: #c73e4d}.app-dark .catalog-tags button,.app-dark .catalog-card-tag{--catalog-tag-color: #b8afff}.app-dark .catalog-tags button[data-tone=all],.app-dark .catalog-card-tag[data-tone=all]{--catalog-tag-color: #e5e7eb}.app-dark .catalog-tags button[data-tone=recovery],.app-dark .catalog-card-tag[data-tone=recovery]{--catalog-tag-color: #9bb9df}.app-dark .catalog-tags button[data-tone=endurance],.app-dark .catalog-card-tag[data-tone=endurance]{--catalog-tag-color: #78c7b2}.app-dark .catalog-tags button[data-tone=tempo],.app-dark .catalog-card-tag[data-tone=tempo]{--catalog-tag-color: #f3c45a}.app-dark .catalog-tags button[data-tone=threshold],.app-dark .catalog-card-tag[data-tone=threshold]{--catalog-tag-color: #f4a261}.app-dark .catalog-tags button[data-tone=vo2max],.app-dark .catalog-card-tag[data-tone=vo2max]{--catalog-tag-color: #ff8b7f}.app-dark .catalog-tags button[data-tone=speed],.app-dark .catalog-card-tag[data-tone=speed]{--catalog-tag-color: #f27c89}.catalog-tags button{min-height:30px;padding:0 11px;border-radius:999px;color:var(--catalog-tag-color);background:var(--catalog-tag-bg)}.catalog-tags button.active{color:#fff;background:var(--catalog-tag-color)}.app-dark .catalog-tags button.active{color:#10151d}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.catalog-template-card{position:relative;min-width:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:20px;background:var(--surface);box-shadow:0 12px 30px #0f172a0f;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.catalog-template-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 38%,transparent);box-shadow:0 16px 36px #0f172a1a}.catalog-template-main{display:grid;gap:13px;width:100%;min-height:246px;padding:18px;border:0;color:var(--text);text-align:left;background:transparent}.catalog-template-top{display:flex;align-items:center;gap:8px;padding-right:38px;color:var(--text-muted);font-size:12px;font-weight:850}.catalog-template-card:has(.catalog-card-delete) .catalog-template-top{padding-right:78px}.catalog-card-tag{display:inline-flex;align-items:center;width:fit-content;min-height:24px;padding:0 8px;border-radius:999px;color:var(--catalog-tag-color);background:var(--catalog-tag-bg);font-size:12px;letter-spacing:0;white-space:nowrap}.catalog-template-title{display:grid;gap:4px;min-height:43px}.catalog-template-title strong{display:-webkit-box;overflow:hidden;font-size:18px;line-height:1.18;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2}.catalog-template-title small{color:var(--text-muted)}.catalog-mini-chart{display:flex;align-items:end;gap:2px;height:58px;padding:8px 0;overflow:hidden;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.catalog-chart-block{min-width:1px;max-width:55%;border-radius:3px 3px 1px 1px;background:#65a4ef}.catalog-chart-block.intensity-moderate{background:#edb532}.catalog-chart-block.intensity-hard{background:#f16f57}.catalog-mini-chart.large{height:98px;padding-top:15px}.catalog-template-meta{display:flex;align-items:center;gap:12px;min-height:38px;padding-right:48px;color:var(--text-muted);font-size:12px;font-weight:800}.catalog-favorite,.catalog-card-delete,.catalog-card-add{position:absolute;z-index:2;right:10px;display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:11px;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 90%,var(--text) 5%)}.catalog-favorite{top:10px}.catalog-favorite:has(svg[fill=currentColor]){color:#e9a80e}.catalog-card-delete{top:10px;right:50px;color:var(--red)}.catalog-card-delete:hover{background:color-mix(in srgb,var(--red) 11%,var(--surface))}.catalog-card-add{right:12px;bottom:18px;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);color:var(--text-muted);background:color-mix(in srgb,var(--surface) 88%,var(--text) 6%);box-shadow:none;transition:color .15s ease,border-color .15s ease,background .15s ease}.catalog-card-add:hover{color:var(--text);border-color:color-mix(in srgb,var(--primary) 32%,var(--text) 10%);background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.catalog-card-add:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.catalog-card-add:disabled{opacity:.5}.catalog-empty{display:grid;justify-items:center;gap:8px;padding:58px 20px;border:1px dashed color-mix(in srgb,var(--text) 15%,transparent);border-radius:22px;color:var(--text-muted);text-align:center}.catalog-empty strong{color:var(--text);font-size:18px}.catalog-empty p{margin:0 0 8px}.catalog-modal-backdrop{position:fixed;z-index:1100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:18px;background:#0a0f18a3;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.catalog-preview{display:grid;gap:18px;width:min(620px,100%);max-height:min(820px,calc(100vh - 36px));padding:24px;overflow:auto;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:26px;color:var(--text);background:var(--surface);box-shadow:0 30px 90px #00000047}.catalog-preview header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.catalog-preview header span{color:var(--text-muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.catalog-preview h2,.catalog-date-dialog h3{margin:3px 0 0;font-size:27px;line-height:1.08}.catalog-preview>p{margin:0;color:var(--text-muted);line-height:1.55}.catalog-preview-facts{display:flex;flex-wrap:wrap;gap:8px}.catalog-preview-facts span{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border-radius:10px;color:var(--text);background:color-mix(in srgb,var(--primary) 8%,var(--surface));font-size:12px;font-weight:800}.catalog-preview-segments{padding:13px 16px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 97%,var(--text) 2%)}.catalog-preview footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.catalog-preview footer .btn{min-width:0;padding:10px}.catalog-date-dialog{display:grid;gap:16px;width:min(430px,100%);padding:24px;border-radius:24px;color:var(--text);background:var(--surface)}.catalog-date-dialog>span{color:var(--primary);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.catalog-date-dialog label{display:grid;gap:7px;color:var(--text-muted);font-size:12px;font-weight:800}.catalog-date-dialog input{min-height:48px;padding:0 12px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:12px;color:var(--text);background:color-mix(in srgb,var(--surface) 94%,var(--text) 3%);color-scheme:inherit}.catalog-date-dialog>div{display:flex;justify-content:flex-end;gap:8px}.catalog-picker{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;width:min(760px,calc(100% - 20px));max-height:min(820px,calc(100vh - 24px));padding:16px;overflow:hidden}.catalog-toast{position:fixed;z-index:1400;left:50%;bottom:calc(78px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 24px);padding:9px 10px 9px 14px;transform:translate(-50%);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:15px;color:var(--text);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 18px 45px #0f172a33;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.catalog-toast>span{max-width:min(430px,48vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750}.catalog-toast button{min-height:34px;padding:0 9px;border:0;border-radius:9px;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent);font-weight:850}.catalog-picker-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.catalog-picker-header>div{display:grid;gap:2px}.catalog-picker-header>div>span{color:var(--text-muted);font-size:12px;font-weight:800}.catalog-picker-header strong{display:flex;align-items:center;gap:7px}.catalog-create-scratch{display:flex;align-items:center;gap:11px;min-height:58px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);border-radius:15px;color:var(--text);text-align:left;background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.catalog-create-scratch>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#fff;background:var(--primary)}.catalog-create-scratch>div{display:grid;gap:2px}.catalog-create-scratch small{color:var(--text-muted)}.catalog-browser-compact{min-height:0;overflow:auto}.catalog-browser-compact .catalog-toolbar{position:sticky;z-index:4;top:0;align-items:stretch;padding-bottom:2px;background:var(--surface)}.catalog-browser-compact .catalog-scope-tabs{flex:1}.catalog-browser-compact .catalog-scope-tabs button{flex:1;padding:0 9px}.catalog-browser-compact .catalog-search{width:min(250px,38%)}.catalog-browser-compact .catalog-grid{grid-template-columns:1fr;gap:8px}.catalog-template-card.compact{min-height:88px;border-radius:15px}.catalog-template-card.compact .catalog-template-main{grid-template-columns:minmax(130px,1fr) minmax(120px,.8fr) auto;align-items:center;gap:14px;min-height:94px;padding:11px 96px 11px 14px}.catalog-template-card.compact .catalog-mini-chart{height:44px}.catalog-template-card.compact .catalog-template-title{min-height:0}.catalog-template-card.compact .catalog-template-title strong{font-size:15px}.catalog-template-card.compact .catalog-template-meta{min-height:0;padding-right:0}.catalog-template-card.compact .catalog-card-add{right:10px;bottom:10px;width:34px;min-width:34px;height:34px}.app-dark .catalog-template-card,.app-dark .catalog-preview,.app-dark .catalog-date-dialog{box-shadow:var(--shadow-dark)}@media(min-width:1024px){.catalog-screen{padding:24px 8px 48px}.catalog-toast{bottom:24px}}@media(max-width:1200px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.catalog-toolbar{display:grid;width:100%;justify-content:stretch}.catalog-toolbar>*{min-width:0}.catalog-toolbar-actions{width:100%;justify-self:stretch;justify-content:stretch}.catalog-scope-tabs{width:100%}.catalog-scope-tabs button{flex:1;min-width:0;padding:0 4px;font-size:12px;white-space:nowrap}.catalog-search,.catalog-browser-compact .catalog-search{width:100%}.catalog-grid{grid-template-columns:1fr;gap:10px}.catalog-template-main{min-height:190px}.catalog-preview{padding:18px;border-radius:22px}.catalog-preview footer{grid-template-columns:1fr}.catalog-template-card.compact{min-height:122px}.catalog-template-card.compact .catalog-template-main{grid-template-columns:1fr;gap:6px;min-height:120px;padding:12px 58px 12px 12px}.catalog-template-card.compact .catalog-mini-chart{display:none}.catalog-template-card.compact .catalog-template-meta{grid-column:1 / -1}.catalog-template-card.compact .catalog-card-add{left:auto;right:10px;bottom:10px;width:34px}.catalog-picker{width:100%;max-height:calc(100vh - max(10px,env(safe-area-inset-top)));border-radius:24px 24px 0 0}}@media(max-width:480px){.catalog-toolbar-actions{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch}.catalog-toolbar-actions>.btn{width:100%}}@media(max-width:350px){.catalog-scope-tabs{min-height:52px}.catalog-scope-tabs button{min-height:44px;overflow:hidden;font-size:12px;line-height:1.05;white-space:normal}.catalog-template-card.compact .catalog-template-main{grid-template-columns:1fr}.catalog-template-card.compact .catalog-mini-chart{display:none}}.wellness-card{overflow:hidden;border:1px solid rgba(109,93,252,.2);border-radius:22px;background:radial-gradient(circle at 92% -20%,rgba(109,93,252,.18),transparent 42%),var(--surface-dark);box-shadow:0 12px 30px #0f172a14}.wellness-card-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;padding:16px;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.wellness-card-icon,.recovery-overview-orb{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;color:#fff;background:linear-gradient(145deg,#7567ff,#5141da);box-shadow:0 8px 18px #5a49e142}.wellness-state-recovery_needed :is(.wellness-card-icon,.wellness-compact-icon),.recovery-overview-orb.is-recovery_needed{background:linear-gradient(145deg,#f97316,#dc2626)}.wellness-state-below_normal :is(.wellness-card-icon,.wellness-compact-icon),.recovery-overview-orb.is-below_normal{background:linear-gradient(145deg,#d85643,#ea580c)}.wellness-state-above_normal :is(.wellness-card-icon,.wellness-compact-icon),.recovery-overview-orb.is-above_normal{background:linear-gradient(145deg,#34d399,#059669)}.wellness-card-copy{min-width:0}.wellness-card-copy small,.recovery-overview-card small{display:block;color:#7467ea;font-size:12px;font-weight:900;letter-spacing:.11em}.wellness-card-copy strong{display:block;margin-top:3px;color:var(--text-dark);font-size:17px}.wellness-card-copy>span{display:block;margin-top:3px;color:var(--muted-dark);font-size:12px;line-height:1.4}.wellness-card-action{color:#6658e8;font-size:12px;font-weight:900}.wellness-card-details{display:grid;gap:9px;padding:0 16px 14px 73px}.wellness-factor-chips{display:flex;flex-wrap:wrap;gap:6px}.wellness-factor-chips span{padding:5px 9px;border-radius:999px;color:var(--muted-dark);background:#64748b1a;font-size:12px;font-weight:850}.wellness-factor-chips span.is-positive{color:#047857;background:#10b9811f}.wellness-factor-chips span.is-negative{color:#c2410c;background:#f9731621}.wellness-source-line{display:flex;align-items:center;gap:5px;color:var(--muted-dark);font-size:12px;font-weight:750}.wellness-coach-proposal{display:flex;align-items:center;gap:7px;width:fit-content;padding:7px 10px;border:0;border-radius:10px;color:#5b4bda;background:#6d5dfc1c;font:inherit;font-size:12px;font-weight:850;cursor:pointer}.wellness-compact-shell{--wellness-marker: #6d5dfc;position:relative;width:40px}.wellness-compact-shell.has-adaptation{display:flex;align-items:center;gap:7px;width:auto}.desktop-week-row-actions .wellness-compact-shell.has-adaptation{flex:0 0 auto;width:auto}.wellness-compact-adapt{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid rgba(109,93,252,.2);border-radius:12px;color:#5b4bda;background:#6d5dfc17;font:inherit;font-size:14px;font-weight:850;white-space:nowrap;cursor:pointer}.wellness-compact-adapt:hover{background:#6d5dfc26}.app-dark .wellness-compact-shell{--wellness-marker: #a99fff}.app-dark .wellness-compact-adapt{color:#c9c5ff;border-color:#a78bfa7a;background:linear-gradient(180deg,#7c6cff38,#6d5dfc24);box-shadow:inset 0 1px #ffffff0d}.app-dark .wellness-compact-adapt:hover{color:#e0deff;border-color:#c4b5fdad;background:#7c6cff47}.app-dark .wellness-compact-adapt:focus-visible{outline:2px solid rgba(196,181,253,.8);outline-offset:2px}.wellness-compact-shell.wellness-state-recovery_needed{--wellness-marker: #dc2626}.wellness-compact-shell.wellness-state-below_normal{--wellness-marker: #ea580c}.wellness-compact-shell.wellness-state-above_normal{--wellness-marker: #059669}.app-dark .wellness-compact-shell.wellness-state-recovery_needed{--wellness-marker: #fb7185}.app-dark .wellness-compact-shell.wellness-state-below_normal{--wellness-marker: #d85643}.app-dark .wellness-compact-shell.wellness-state-above_normal{--wellness-marker: #34d399}.wellness-compact{width:100%;min-height:52px;border:1px solid #dfe4f0;border-radius:14px;padding:7px 9px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;color:#0f172a;background:#fff;box-shadow:0 5px 14px #0f172a0b;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.wellness-compact:hover{border-color:#c7d2fe;box-shadow:0 8px 20px #4f46e517;transform:translateY(-1px)}.wellness-compact.wellness-compact-only{display:grid;grid-template-columns:1fr;place-items:center;gap:0;width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:10px;color:var(--wellness-marker);background:transparent;box-shadow:none}.wellness-compact.wellness-compact-only:hover{border-color:transparent;background:color-mix(in srgb,var(--wellness-marker) 7%,transparent);box-shadow:none}.wellness-compact.wellness-compact-only:focus-visible{outline:2px solid color-mix(in srgb,var(--wellness-marker) 48%,transparent);outline-offset:1px}.wellness-compact .wellness-compact-battery{position:relative;display:inline-flex;align-items:stretch;gap:2px;width:27px;height:15px;padding:2px;border:2px solid currentColor;border-radius:5px;color:var(--wellness-marker)}.wellness-compact-battery:after{content:"";position:absolute;top:50%;right:-5px;width:3px;height:6px;border-radius:0 2px 2px 0;background:currentColor;transform:translateY(-50%)}.wellness-compact-battery.is-empty:before{content:"+";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:13px;font-weight:900;line-height:1;transform:translateY(-.5px)}.wellness-compact-battery i{display:block;flex:1 1 0;min-width:0;border-radius:1.5px;background:currentColor;opacity:.16}.wellness-compact-battery i.is-active{opacity:1}:is(.app-dark,html[data-theme=dark]) .desktop-week-row-head .wellness-compact-battery{color:color-mix(in srgb,var(--wellness-marker) 78%,#fff)}.wellness-compact-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:#fff;background:linear-gradient(145deg,#7567ff,#5141da);box-shadow:0 6px 14px #5a49e133}.wellness-compact-copy{min-width:0;display:grid;gap:2px}.wellness-compact-copy small{color:#7c87a0;font-size:12px;font-weight:900;letter-spacing:.08em}.wellness-compact-copy strong{overflow:hidden;color:#172033;font-size:13px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.wellness-compact-action{min-width:38px;min-height:25px;border-radius:8px;padding:0 7px;display:grid;place-items:center;color:#5b4bda;background:#f0efff;font-size:12px;font-weight:900;white-space:nowrap}.wellness-compact-alert{position:absolute;top:-5px;right:-5px;width:20px;height:20px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;color:#fff;background:#6d5dfc;box-shadow:0 4px 10px #4f46e540}.wellness-adaptation-prompt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px 12px;border:1px solid rgba(109,93,252,.2);border-radius:14px;color:inherit;background:linear-gradient(135deg,#6d5dfc1f,#6d5dfc0d);font:inherit;text-align:left;cursor:pointer}.wellness-adaptation-prompt>span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#fff;background:linear-gradient(145deg,#7567ff,#5141da)}.wellness-adaptation-prompt>span:nth-child(2){min-width:0;display:grid;gap:2px}.wellness-adaptation-prompt strong{color:var(--text-dark);font-size:12px}.wellness-adaptation-prompt small{overflow:hidden;color:var(--muted-dark);font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.wellness-adaptation-prompt em{color:#5b4bda;font-size:12px;font-style:normal;font-weight:900}.wellness-adaptation-prompt.is-inline{padding:9px 10px}.app-light .wellness-adaptation-prompt strong{color:var(--text-light)}.app-light .wellness-adaptation-prompt small{color:#64748b}.wellness-day-marker{--wellness-marker: #6d5dfc;position:relative;display:inline-grid;place-items:center;width:32px;height:24px;padding:0;border:0;border-radius:8px;color:var(--wellness-marker);background:transparent;cursor:pointer;transition:color .14s ease,transform .14s ease}.wellness-day-marker:hover{transform:translateY(-1px) scale(1.04)}.wellness-day-marker:focus-visible{outline:2px solid color-mix(in srgb,var(--wellness-marker) 54%,transparent);outline-offset:2px}.wellness-day-marker.wellness-state-recovery_needed{--wellness-marker: #dc2626}.wellness-day-marker.wellness-state-below_normal{--wellness-marker: #ea580c}.wellness-day-marker.wellness-state-above_normal{--wellness-marker: #059669}.wellness-day-battery{position:relative;display:inline-flex;align-items:stretch;gap:1.5px;width:23px;height:12px;padding:1.5px;border:1.5px solid currentColor;border-radius:4px}.wellness-day-battery:after{content:"";position:absolute;top:50%;right:-4px;width:2.5px;height:5px;border-radius:0 1.5px 1.5px 0;background:currentColor;transform:translateY(-50%)}.wellness-day-battery i{display:block;flex:1 1 0;min-width:0;border-radius:1.5px;background:currentColor;opacity:.16}.wellness-day-battery i.is-active{opacity:1}:is(.app-dark,html[data-theme=dark]) .wellness-compact:not(.wellness-compact-only){color:#e5edf7;border-color:#94a3b833;background:#151d2a;box-shadow:0 7px 18px #0000002e}:is(.app-dark,html[data-theme=dark]) .wellness-compact:not(.wellness-compact-only):hover{border-color:#7dd3fc57}:is(.app-dark,html[data-theme=dark]) .wellness-compact-copy small{color:#91a0b5}:is(.app-dark,html[data-theme=dark]) .wellness-compact-copy strong{color:#f3f7fb}:is(.app-dark,html[data-theme=dark]) .wellness-compact-action{color:#b9d9ea;background:#347fb329}:is(.app-dark,html[data-theme=dark]) .wellness-compact-alert{border-color:#151d2a}:is(.app-dark,html[data-theme=dark]) .wellness-day-marker{color:color-mix(in srgb,var(--wellness-marker) 78%,#fff)}.wellness-sheet-backdrop{position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:24px;background:#080d1894;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wellness-sheet{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(720px,100%);max-height:min(880px,calc(100vh - 40px));overflow:hidden;border:1px solid rgba(148,163,184,.18);border-radius:28px;color:var(--text-dark);background:var(--surface-dark);box-shadow:0 30px 90px #00000057}.wellness-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid var(--border-dark)}.wellness-sheet-header small{color:#6d5dfc;font-size:12px;font-weight:950;letter-spacing:.14em}.wellness-sheet-header h2{margin:4px 0 2px;font-size:24px}.wellness-sheet-header p{margin:0;color:var(--muted-dark);font-size:12px;text-transform:capitalize}.wellness-sheet-header>button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-dark);border-radius:50%;color:var(--text-dark);background:#7f7f7f0f;cursor:pointer}.wellness-sheet-scroll{overflow:auto;padding:20px 24px}.wellness-signal-intro{display:flex;align-items:flex-start;gap:9px;margin-bottom:5px;padding:11px 13px;border-radius:14px;color:#5b4bda;background:#6d5dfc14}.wellness-signal-intro svg{flex:0 0 auto;margin-top:1px}.wellness-signal-intro p{margin:0;color:var(--muted-dark);font-size:12px;line-height:1.5}.wellness-signal-intro strong{color:var(--text-dark)}.wellness-checkin-step{padding:18px 0;border-bottom:1px solid var(--border-dark)}.wellness-step-title{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;margin-bottom:12px}.wellness-step-title>span{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;color:#fff;background:#5b4bda;font-size:12px;font-weight:950;box-shadow:0 5px 11px #5b4bda33}.wellness-step-title h3,.wellness-tags-section h3{margin:0;color:var(--text-dark);font-size:15px}.wellness-step-title p{margin:3px 0 0;color:var(--muted-dark);font-size:12px;line-height:1.4}.wellness-training-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wellness-training-mode-grid button{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-height:60px;padding:9px 11px;border:1px solid var(--border-dark);border-radius:15px;color:var(--text-dark);background:#7f7f7f06;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.wellness-training-mode-grid button:hover{transform:translateY(-1px);border-color:#6d5dfc59}.wellness-training-mode-grid button>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#64748b;background:#64748b1a}.wellness-training-mode-grid button>div{display:grid;gap:3px;min-width:0}.wellness-training-mode-grid strong{font-size:12px}.wellness-training-mode-grid small{color:var(--muted-dark);font-size:12px;line-height:1.3}.wellness-training-mode-grid button.is-selected{border-color:#6d5dfc80;background:#6d5dfc17;box-shadow:inset 0 0 0 1px #6d5dfc1f}.wellness-training-mode-grid button.is-selected>span{color:#fff;background:#5b4bda}.wellness-sleep-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.wellness-sleep-grid button{display:grid;justify-items:start;gap:4px;min-height:73px;padding:10px;border:1px solid var(--border-dark);border-radius:14px;color:var(--text-dark);background:#7f7f7f06;text-align:left;font:inherit;cursor:pointer}.wellness-sleep-grid svg{color:#64748b}.wellness-sleep-grid strong{font-size:12px}.wellness-sleep-grid small{color:var(--muted-dark);font-size:12px;line-height:1.3}.wellness-sleep-grid button.is-selected{border-color:#0ea5e980;background:#0ea5e917;box-shadow:inset 0 0 0 1px #0ea5e91a}.wellness-sleep-grid button.is-selected svg{color:#0284c7}.wellness-body-grid{display:flex;flex-wrap:wrap;gap:7px}.wellness-body-grid button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 11px;border:1px solid var(--border-dark);border-radius:11px;color:var(--muted-dark);background:transparent;font:inherit;font-size:12px;font-weight:850;cursor:pointer}.wellness-body-grid button.is-selected{border-color:#10b9816b;color:#047857;background:#10b9811c}.wellness-body-grid button.is-selected.is-warning{border-color:#ef44446b;color:#dc2626;background:#ef44441a}.wellness-pain-area{display:grid;gap:3px;margin-top:11px;padding:12px;border:1px solid rgba(239,68,68,.18);border-radius:14px;background:#ef44440b}.wellness-pain-area>strong{color:var(--text-dark);font-size:12px}.wellness-pain-area>small{color:var(--muted-dark);font-size:12px}.wellness-pain-area>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.wellness-pain-area button{padding:6px 9px;border:1px solid var(--border-dark);border-radius:9px;color:var(--muted-dark);background:var(--surface-dark);font:inherit;font-size:12px;font-weight:800;cursor:pointer}.wellness-pain-area button.is-selected{border-color:#ef4444;color:#b91c1c;background:#ef44441a}.wellness-device-snapshot{display:grid;gap:13px;margin-bottom:20px;padding:14px;border:1px solid rgba(14,165,233,.18);border-radius:18px;background:#0ea5e912}.wellness-device-snapshot>div:first-child{display:flex;align-items:center;gap:10px;color:#0284c7}.wellness-device-snapshot>div:first-child span{display:grid;gap:2px}.wellness-device-snapshot>div:first-child strong{color:var(--text-dark);font-size:13px}.wellness-device-snapshot>div:first-child small{color:var(--muted-dark);font-size:12px}.wellness-device-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.wellness-device-metrics>span{display:grid;gap:2px;padding:9px;border-radius:12px;background:#ffffff8f}.wellness-device-metrics svg{color:#0284c7}.wellness-device-metrics small{color:var(--muted-dark);font-size:12px}.wellness-device-metrics strong{font-size:13px}.wellness-device-metrics em{color:#0284c7;font-size:12px;font-style:normal;font-weight:900}.wellness-details-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 0;border:0;border-bottom:1px solid var(--border-dark);color:var(--text-dark);background:transparent;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.wellness-details-toggle span{display:flex;align-items:baseline;gap:6px}.wellness-details-toggle small{color:var(--muted-dark);font-size:12px;font-weight:700}.wellness-optional-details{display:grid}.wellness-tags-section{padding:18px 0 4px}.wellness-tag-grid{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.wellness-tag-grid button{padding:8px 11px;border:1px solid var(--border-dark);border-radius:999px;color:var(--muted-dark);background:transparent;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.wellness-tag-grid button.is-selected{border-color:#f9731666;color:#c2410c;background:#f973161f}.wellness-note{display:grid;gap:7px;margin-top:17px;color:var(--text-dark);font-size:12px;font-weight:850}.wellness-note textarea{min-height:76px;resize:vertical;border:1px solid var(--border-dark);border-radius:14px;padding:11px;color:var(--text-dark);background:#7f7f7f0a;font:inherit;font-size:12px}.wellness-error{color:#dc2626;font-size:12px}.wellness-sheet-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 24px;border-top:1px solid var(--border-dark)}.wellness-sheet-footer p{margin:0;color:var(--muted-dark);font-size:12px}.progress-view-tabs,.recovery-period-tabs{display:inline-flex;width:fit-content;padding:4px;border-radius:14px;background:#64748b1a}.progress-view-tabs button,.recovery-period-tabs button{padding:8px 13px;border:0;border-radius:10px;color:var(--muted-dark);background:transparent;font:inherit;font-size:12px;font-weight:850;cursor:pointer}.progress-view-tabs button.active,.recovery-period-tabs button.active{color:#fff;background:#6d5dfc;box-shadow:0 5px 14px #6d5dfc38}.recovery-progress{display:grid;gap:14px}.recovery-overview-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;border:1px solid rgba(109,93,252,.18);border-radius:22px;background:linear-gradient(135deg,#6d5dfc1a,#0ea5e90a)}.recovery-overview-card strong{display:block;margin-top:3px;color:var(--text-dark);font-size:18px}.recovery-overview-card p{margin:4px 0 0;color:var(--muted-dark);font-size:12px;line-height:1.45}.recovery-overview-card>em{color:var(--text-dark);font-size:20px;font-style:normal;font-weight:950;text-align:right}.recovery-overview-card>em small{margin-top:2px;color:var(--muted-dark);letter-spacing:0;text-transform:none}.recovery-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recovery-metric-card{min-width:0;padding:14px;border:1px solid var(--border-dark);border-radius:18px;background:var(--surface-dark)}.recovery-metric-card header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px}.recovery-metric-card header>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:var(--metric-color);background:color-mix(in srgb,var(--metric-color) 12%,transparent)}.recovery-metric-card header div{display:grid;gap:2px}.recovery-metric-card header strong{color:var(--text-dark);font-size:12px}.recovery-metric-card header small{color:var(--muted-dark);font-size:12px}.recovery-metric-card header em{color:var(--text-dark);font-size:14px;font-style:normal;font-weight:900}.recovery-mini-chart{display:grid;grid-template-columns:repeat(var(--recovery-points),minmax(2px,1fr));align-items:end;gap:2px;height:82px;margin-top:13px;border-bottom:1px solid var(--border-dark)}.recovery-mini-chart>span{display:flex;align-items:end;height:100%;min-width:0}.recovery-mini-chart i{display:block;width:100%;min-width:2px;border-radius:3px 3px 0 0;background:var(--metric-color);opacity:.76}.recovery-mini-chart>span.is-gap{height:3px;margin-bottom:2px;border-radius:2px;background:#94a3b82e}.recovery-metric-card footer{display:flex;justify-content:space-between;gap:8px;margin-top:6px;color:var(--muted-dark);font-size:12px}.recovery-progress-note,.recovery-progress-loading,.recovery-progress-error{margin:0;padding:12px 14px;border-radius:14px;color:var(--muted-dark);background:#64748b12;font-size:12px;line-height:1.45}.recovery-progress-error,.connection-action-danger{color:#dc2626}.connections-health-consent{margin:0;padding:11px 13px;border:1px solid rgba(14,165,233,.16);border-radius:14px;color:var(--muted-dark);background:#0ea5e90f;font-size:12px;line-height:1.5}.app-light .wellness-card,.app-light .wellness-sheet,.app-light .recovery-metric-card{color:var(--text-light);background-color:#fff}.app-light .wellness-card-copy strong,.app-light .wellness-sheet,.app-light .wellness-sheet-header h2,.app-light .wellness-sheet-header>button,.app-light .wellness-device-snapshot>div:first-child strong,.app-light .wellness-details-toggle,.app-light .wellness-signal-intro strong,.app-light .wellness-step-title h3,.app-light .wellness-training-mode-grid button,.app-light .wellness-sleep-grid button,.app-light .wellness-pain-area>strong,.app-light .wellness-note,.app-light .wellness-note textarea,.app-light .recovery-overview-card strong,.app-light .recovery-overview-card>em,.app-light .recovery-metric-card header strong,.app-light .recovery-metric-card header em{color:var(--text-light)}.app-light .wellness-card-copy>span,.app-light .wellness-source-line,.app-light .wellness-sheet-header p,.app-light .wellness-signal-intro p,.app-light .wellness-step-title p,.app-light .wellness-training-mode-grid small,.app-light .wellness-sleep-grid small,.app-light .wellness-pain-area>small,.app-light .wellness-device-snapshot>div:first-child small,.app-light .wellness-sheet-footer p,.app-light .recovery-overview-card p,.app-light .recovery-metric-card header small,.app-light .recovery-metric-card footer{color:#64748b}.app-light .wellness-pain-area button{background:#fff}.app-dark .wellness-device-metrics>span{background:#ffffff0d}@media(min-width:760px){.wellness-sheet-backdrop{align-items:center}}@media(max-width:640px){.wellness-sheet-backdrop{padding:0}.wellness-sheet{width:100%;max-height:calc(100vh - 18px);border-radius:24px 24px 0 0}.wellness-sheet-header,.wellness-sheet-scroll{padding-left:16px;padding-right:16px}.wellness-sheet-footer{align-items:stretch;flex-direction:column;padding:12px 16px}.wellness-sheet-footer .btn{width:100%}.wellness-training-mode-grid{grid-template-columns:1fr}.wellness-training-mode-grid button{min-height:54px}.wellness-sleep-grid,.wellness-device-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.wellness-detail-scale{grid-template-columns:1fr;gap:8px}.wellness-card-details{padding-left:16px}.recovery-chart-grid{grid-template-columns:1fr}}.connections-export-guide{width:100%;border:1px solid rgba(99,102,241,.22);border-radius:18px;padding:14px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;color:#25225e;text-align:left;background:linear-gradient(135deg,#eef2ff,#f5f3ff 55%,#eff6ff)}.connections-export-guide>span:first-child{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2473a6,#347fb3)}.connections-export-guide strong,.connections-export-guide small{display:block}.connections-export-guide strong{font-size:14px}.connections-export-guide small{margin-top:3px;color:#64748b;font-size:12px}.connections-guide-arrow{color:#6366f1;transform:rotate(180deg)}.workout-export-guide-link{width:calc(100% - 48px);margin:12px 24px 0;border:1px solid rgba(99,102,241,.22);border-radius:15px;padding:12px 14px;display:flex;align-items:center;gap:11px;color:#2473a6;text-align:left;background:#eef2ffbf}.workout-export-guide-link span{min-width:0}.workout-export-guide-link strong,.workout-export-guide-link small{display:block}.workout-export-guide-link strong{color:#312e81;font-size:13px}.workout-export-guide-link small{margin-top:2px;color:#64748b;font-size:12px}.zwift-power-hint{width:fit-content;max-width:100%;margin:-4px 0 0;display:inline-flex;align-items:center;gap:6px;color:var(--muted-light);font-size:12px;line-height:1.35}.app-dark .zwift-power-hint{color:var(--muted-dark)}.bottom-sheet.export-guide-sheet{width:min(840px,100%);max-height:min(94dvh,960px);padding:0;overflow:auto;color:#172033;background:linear-gradient(180deg,#f9fbff,#eef3f9);border:1px solid #dbe3ee;box-shadow:0 34px 90px #0f172a52}.export-guide-header{position:sticky;top:0;z-index:3;padding:22px 24px 18px;display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(203,213,225,.82);background:#f9fbfff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.export-guide-header h2,.export-guide-header p{margin:0}.export-guide-header h2{margin-top:5px;color:#101827;font-size:clamp(24px,3vw,32px)}.export-guide-header p{margin-top:6px;color:#64748b;font-size:13px}.export-guide-body{padding:20px 24px calc(26px + env(safe-area-inset-bottom));display:grid;gap:18px}.export-route-card,.export-guide-manual{border:1px solid #dce3ed;border-radius:21px;padding:18px;background:#ffffffd1;box-shadow:0 10px 26px #0f172a0d}.export-route-primary{color:#fff;border-color:transparent;background:radial-gradient(circle at 90% 0,rgba(255,255,255,.19),transparent 28%),linear-gradient(135deg,#2563eb,#347fb3 58%,#347fb3);box-shadow:0 18px 38px #4f46e538}.export-route-heading{display:flex;align-items:center;gap:12px}.export-route-heading h3,.export-route-heading span{margin:0}.export-route-heading>div>span{color:#6366f1;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.export-route-heading h3{margin-top:2px;color:#172033;font-size:17px}.export-route-primary .export-route-heading>div>span{color:#c7d2fe}.export-route-primary .export-route-heading h3{color:#fff}.export-route-icon{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;color:#2473a6;background:#eef2ff}.export-route-primary .export-route-icon{color:#fff;background:#ffffff29}.export-route-card>p{margin:14px 0 0;color:#ffffffdb;font-size:12px;line-height:1.5}.export-route-flow{margin-top:16px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.export-route-flow strong,.export-route-flow span{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 10px;display:inline-flex;align-items:center;gap:5px;color:#fff;background:#ffffff1f;font-size:12px}.export-guide-steps{margin:0;padding:0;display:grid;gap:10px;list-style:none;counter-reset:none}.export-guide-steps li{border:1px solid #dce3ed;border-radius:17px;padding:14px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;background:#ffffffb8}.export-step-number{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#fff;background:#2473a6;font-size:12px;font-weight:900}.export-guide-steps h4,.export-guide-steps p{margin:0}.export-guide-steps h4{color:#172033;font-size:14px}.export-guide-steps p{margin-top:5px;color:#64748b;font-size:12px;line-height:1.5}.export-guide-connect{margin-top:10px;min-height:36px;border:0;border-radius:999px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;color:#fff;background:linear-gradient(135deg,#2473a6,#347fb3);font-size:12px;font-weight:850}.export-guide-connect.is-connected{color:#047857;background:#d1fae5}.export-guide-links{margin-top:8px;display:flex;flex-wrap:wrap;gap:7px}.export-guide-links a,.export-guide-source a,.export-manual-grid a{display:inline-flex;align-items:center;gap:4px;color:#2473a6;font-size:12px;font-weight:800;text-decoration:none}.export-manual-grid{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.export-manual-grid article{border:1px solid #e2e8f0;border-radius:15px;padding:14px;color:#2473a6;background:#f8fafc}.export-manual-grid h4,.export-manual-grid p{margin:0}.export-manual-grid h4{margin-top:8px;color:#172033;font-size:14px}.export-manual-grid p{margin:6px 0 10px;color:#64748b;font-size:12px;line-height:1.5}.export-manual-grid p strong{color:#475569}.export-guide-note{border:1px solid #fed7aa;border-radius:15px;padding:12px 14px;display:grid;gap:3px;color:#9a3412;background:#fff7ed}.export-guide-note strong{font-size:12px}.export-guide-note span{font-size:12px;line-height:1.45}.export-guide-source{margin:-5px 0 0;color:#94a3b8;font-size:12px;text-align:center}:is(.app-dark,html[data-theme=dark]) .connections-export-guide{color:#f5f3ff;border-color:#347fb340;background:#6d4aff1a}:is(.app-dark,html[data-theme=dark]) .connections-export-guide small{color:#a9b5c5}:is(.app-dark,html[data-theme=dark]) .workout-export-guide-link{border-color:#347fb340;background:#6d4aff1a}:is(.app-dark,html[data-theme=dark]) .workout-export-guide-link strong{color:#b9d9ea}:is(.app-dark,html[data-theme=dark]) .workout-export-guide-link small{color:#94a3b8}:is(.app-dark,html[data-theme=dark]) .bottom-sheet.export-guide-sheet{color:#d9e3f0;border-color:#334155;background:linear-gradient(180deg,#182231,#111923)}:is(.app-dark,html[data-theme=dark]) .export-guide-header{border-color:#94a3b833;background:#182231f0}:is(.app-dark,html[data-theme=dark]) .export-guide-header h2,:is(.app-dark,html[data-theme=dark]) .export-route-heading h3,:is(.app-dark,html[data-theme=dark]) .export-guide-steps h4,:is(.app-dark,html[data-theme=dark]) .export-manual-grid h4{color:#f1f5f9}:is(.app-dark,html[data-theme=dark]) .export-guide-header p,:is(.app-dark,html[data-theme=dark]) .export-guide-steps p,:is(.app-dark,html[data-theme=dark]) .export-manual-grid p{color:#94a3b8}:is(.app-dark,html[data-theme=dark]) .export-route-card,:is(.app-dark,html[data-theme=dark]) .export-guide-manual,:is(.app-dark,html[data-theme=dark]) .export-guide-steps li,:is(.app-dark,html[data-theme=dark]) .export-manual-grid article{border-color:#94a3b833;background:#ffffff0b;box-shadow:none}:is(.app-dark,html[data-theme=dark]) .export-route-primary{background:radial-gradient(circle at 90% 0,rgba(255,255,255,.14),transparent 28%),linear-gradient(135deg,#2563eb,#347fb3 58%,#347fb3)}:is(.app-dark,html[data-theme=dark]) .export-route-primary .export-route-heading h3{color:#fff}:is(.app-dark,html[data-theme=dark]) .export-guide-note{border-color:#f9731647;color:#fed7aa;background:#f973161a}@media(max-width:620px){.workout-export-guide-link{width:calc(100% - 34px);margin-left:17px;margin-right:17px}.bottom-sheet.export-guide-sheet{max-height:95dvh;border-radius:24px 24px 0 0}.export-guide-header{padding:18px 17px 15px}.export-guide-body{padding:16px 17px calc(22px + env(safe-area-inset-bottom))}.export-route-card,.export-guide-manual{padding:15px}.export-manual-grid{grid-template-columns:1fr}.export-route-flow>svg{display:none}}.form-field{display:grid;gap:8px;min-width:0}.form-field>span{color:var(--muted-dark);font-size:12px;font-weight:700;letter-spacing:.01em}.profile-details-card{display:grid;gap:16px}.profile-details-header{display:grid;gap:8px}.profile-details-header h2{margin:0;font-size:28px;line-height:1.05}.autosave-status{width:fit-content;min-height:26px;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;color:var(--muted-dark);background:#ffffff0e;font-size:12px;font-weight:800}.autosave-status-saving{color:#b9d9ea}.autosave-status-saved{color:var(--green);background:#52d2731a}.autosave-status-error{color:var(--red);background:#fb3f461a}.profile-section-title{margin:4px 0 -4px;font-size:21px;line-height:1.1}.profile-section-heading{display:grid;gap:5px}.profile-section-heading .profile-section-title,.profile-section-heading p{margin:0}.goal-details-card{display:grid;gap:22px}.goal-option-list{display:grid;gap:10px}.goal-option-card{width:100%;min-height:64px;border:1px solid var(--border-dark);border-radius:18px;padding:13px 14px 13px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;color:var(--text-dark);background:linear-gradient(180deg,#ffffff0e,#ffffff09);box-shadow:inset 0 1px #ffffff0a}.goal-option-card span{min-width:0;font-size:16px;font-weight:850;line-height:1.2}.goal-option-card small{min-height:30px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted-dark);background:#ffffff0e;font-size:12px;font-weight:850}.goal-option-card.is-active{border-color:#347fb3a3;background:linear-gradient(135deg,#347fb342,#ffffff0b);box-shadow:0 16px 34px #347fb329,inset 0 1px #ffffff0d}.goal-option-card.is-active small{color:#b9d9ea;background:#347fb338}.profile-main-grid{align-items:end}.segmented-control{min-height:58px;padding:4px;border:1px solid rgba(255,255,255,.12);border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:linear-gradient(180deg,#ffffff12,#ffffff0b);box-shadow:inset 0 1px #ffffff09}.segmented-control button{min-height:48px;border:0;border-radius:12px;color:var(--muted-dark);background:transparent;font-weight:800;letter-spacing:0}.segmented-control button.is-active{color:var(--text-dark);background:linear-gradient(135deg,#347fb3eb,#a855f7e0);box-shadow:0 10px 24px #347fb33d}.textarea.compact{min-height:76px}.editable-event{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.icon-button{width:40px;height:40px;border:1px solid var(--border-dark);border-radius:14px;display:grid;place-items:center;color:var(--text-dark);background:#ffffff0d}.icon-button.danger{color:var(--red);background:#fb3f461a}.switch-row{min-height:64px;border:1px solid var(--border-dark);border-radius:18px;padding:13px 14px 13px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--text-dark);background:linear-gradient(180deg,#ffffff0e,#ffffff09);box-shadow:inset 0 1px #ffffff0a}.switch-row strong{font-size:17px;line-height:1.15}.switch-control{position:relative;width:52px;height:32px;flex:0 0 auto;border-radius:999px;background:#94a3b838;border:1px solid rgba(148,163,184,.28);transition:background .16s ease,border-color .16s ease}.switch-control:after{content:"";position:absolute;width:26px;height:26px;top:2px;left:2px;border-radius:50%;background:#d7dee8;box-shadow:0 5px 14px #00000038;transition:transform .16s ease,background .16s ease}.switch-control.is-on{background:#347fb36b;border-color:#347fb394}.switch-control.is-on:after{transform:translate(20px);background:var(--primary)}.training-zones-section{display:grid;gap:12px}.zone-tabs{min-height:60px;padding:4px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#ffffff0b}.zone-tabs button{min-width:0;border:0;border-radius:12px;display:flex;place-items:center;align-items:center;justify-content:center;gap:7px;color:var(--muted-dark);background:transparent;font-weight:800}.zone-tabs button svg{flex:0 0 auto;opacity:.82}.zone-tabs button span{font-size:14px;line-height:1.05}.zone-tabs button small{color:inherit;opacity:.72;font-size:12px;font-weight:800;line-height:1}.zone-tabs button.is-active{color:var(--text-dark);background:#347fb352}.zone-collapsed-hint{margin:-2px 0 0;color:var(--muted-dark);font-size:13px;font-weight:700}.hr-zone-trigger{width:100%;min-height:66px;padding:12px 14px;border:1px solid var(--border-dark);border-radius:18px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;text-align:left;color:var(--text-dark);background:linear-gradient(180deg,#347fb321,#ffffff0a);box-shadow:inset 0 1px #ffffff0d}.hr-zone-trigger strong{display:block;font-size:15px}.hr-zone-trigger span{color:var(--muted-dark);font-size:12px;font-weight:800}.hr-zone-trigger-status{min-width:74px;min-height:34px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#b9d9ea;background:#347fb32e;font-size:12px;font-weight:800}.hr-zone-sheet{gap:14px}.hr-zone-sheet-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.hr-zone-sheet-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;color:#347fb3;background:#f3e8ff;border:1px solid #b9d9ea}.hr-zone-sheet-title{min-width:0;display:grid;gap:4px}.hr-zone-sheet-title h2{margin:0;color:#0f172a;font-size:24px;line-height:1.05}.hr-zone-sheet-title p{margin:0;color:#64748b;font-size:13px;line-height:1.35}.hr-zone-close{min-height:34px;border:1px solid #dde3ec;border-radius:999px;padding:0 12px;color:#4338ca;background:#eef2ff;font-size:13px;font-weight:850}.hr-zone-current{padding:12px;border:1px solid #dde3ec;border-radius:16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:#f8fafc}.hr-zone-current span,.hr-zone-current small,.hr-zone-sheet-field span{color:#64748b;font-size:12px;font-weight:850}.hr-zone-current>div:first-child{min-width:0;display:grid;gap:2px}.hr-zone-current-values{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.hr-zone-current strong{min-height:32px;border-radius:999px;padding:0 11px;display:inline-flex;align-items:center;color:#0f172a;background:#fff;border:1px solid #dde3ec;font-size:13px;font-weight:900}.hr-zone-sheet-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;align-items:end}.hr-zone-sheet-field{display:grid;gap:6px}.hr-zone-sheet-field .input,.hr-zone-calc-button{width:100%;min-height:46px;border-radius:14px}.hr-zone-sheet-field .input{border-color:#d8dee8;color:#0f172a;background:#fff;box-shadow:none}.hr-zone-calc-button{border:1px solid #347fb3;color:#fff;background:linear-gradient(135deg,#2473a6,#9333ea);font-weight:900;box-shadow:0 12px 28px #7c3aed38}.hr-zone-calc-button:disabled{border-color:#e2e8f0;color:#94a3b8;background:#f1f5f9;box-shadow:none}.hr-zone-sheet-note{margin:0;border-top:1px solid #e2e8f0;padding-top:12px;color:#64748b;font-size:12px;line-height:1.35}.zone-list{display:grid;gap:10px}.zone-editor-stack{display:grid;gap:12px}.zone-reference-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}.zone-threshold-card,.zone-list-panel{min-width:0;overflow:hidden;border:1px solid var(--border-dark);border-radius:18px;background:#ffffff0b}.zone-threshold-card>header,.zone-list-panel>header{min-height:54px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border-dark)}.zone-threshold-card>header{display:grid;justify-content:stretch;gap:2px}.zone-threshold-card>header strong,.zone-list-panel>header>strong{color:inherit;font-size:13px}.zone-threshold-card>header small,.zone-list-panel>p{color:var(--muted-dark);font-size:12px}.zone-threshold-row{min-height:62px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border-dark)}.zone-threshold-row:last-child{border-bottom:0}.zone-threshold-row>span{color:var(--muted-dark);font-size:12px;font-weight:750}.zone-threshold-row>strong{color:inherit;font-size:18px;white-space:nowrap}.zone-threshold-row>strong small{color:var(--muted-dark);font-size:12px;font-weight:700}.zone-mode-switch{padding:3px;display:inline-flex;border-radius:999px;background:#94a3b824}.zone-mode-switch button{min-height:28px;border:0;border-radius:999px;padding:0 10px;color:var(--muted-dark);background:transparent;font-size:12px;font-weight:850}.zone-mode-switch button.is-active{color:#fff;background:#172033}.zone-manual-label{color:#64748b;font-size:12px;font-weight:850}.zone-list-rows{display:grid}.zone-list-row{min-height:60px;padding:8px 12px;display:grid;grid-template-columns:9px minmax(0,1fr) auto auto;align-items:center;gap:10px;border-bottom:1px solid var(--border-dark)}.zone-list-row>i{width:9px;height:9px;border-radius:3px;background:#3b82f6}.zone-list-row-2>i{background:#10b981}.zone-list-row-3>i{background:#347fb3}.zone-list-row-4>i{background:#f97316}.zone-list-row-5>i{background:#ef4444}.zone-list-row>div:nth-of-type(1){min-width:0;display:grid;gap:3px}.zone-list-row>div:nth-of-type(1) strong{overflow:hidden;color:inherit;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.zone-list-row>div:nth-of-type(1) small{color:var(--muted-dark);font-size:12px}.zone-list-row>b{color:inherit;font-size:12px}.zone-stepper{display:inline-flex;gap:4px}.zone-stepper button{width:30px;height:30px;border:1px solid var(--border-dark);border-radius:9px;color:inherit;background:#ffffff0e;font-size:18px;line-height:1}.zone-stepper button:disabled{opacity:.3}.zone-list-panel>p{margin:0;padding:11px 14px;line-height:1.35}.app-light .zone-threshold-card,.app-light .zone-list-panel{color:#172033;background:#fff;border-color:#dbe2ec;box-shadow:0 10px 28px #0f172a0b}.app-light .zone-threshold-card>header,.app-light .zone-list-panel>header,.app-light .zone-threshold-row,.app-light .zone-list-row{border-color:#e2e8f0}.app-light .zone-threshold-card>header small,.app-light .zone-threshold-row>span,.app-light .zone-threshold-row>strong small,.app-light .zone-list-row>div:nth-of-type(1) small,.app-light .zone-list-panel>p{color:#64748b}.app-light .zone-mode-switch{background:#edf1f5}.app-light .zone-mode-switch button{color:#64748b}.app-light .zone-mode-switch button.is-active{color:#fff;background:#172033}.app-light .zone-stepper button{color:#172033;background:#f8fafc;border-color:#cbd5e1}@media(max-width:760px){.zone-reference-layout{grid-template-columns:1fr}}.zone-reference-layout>.zone-threshold-card{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;border:0;background:transparent;box-shadow:none;gap:8px}.zone-reference-layout>.zone-threshold-card>header{grid-column:1 / -1;min-height:auto;padding:0 2px 5px;border:0}.zone-reference-layout>.zone-threshold-card .zone-threshold-row{min-height:66px;border:1px solid var(--border-dark);border-radius:15px;padding:12px;display:grid;align-content:space-between;gap:8px;background:#ffffff0b}.zone-reference-layout>.zone-threshold-card .zone-threshold-row>strong{font-size:20px}.zone-threshold-input{min-width:0;display:flex;align-items:baseline;gap:5px;border:1px solid rgba(148,163,184,.38);border-radius:11px;padding:7px 9px;background:#ffffff0e;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.zone-threshold-row>.zone-threshold-input{color:inherit}.zone-threshold-input:hover{border-color:#347fb39e;background:#347fb312}.zone-threshold-input:focus-within{border-color:#347fb3;background:#347fb317;box-shadow:0 0 0 3px #347fb321}.zone-threshold-input input{width:100%;min-width:0;border:0;outline:0;padding:0;color:inherit;background:transparent;font:inherit;font-size:20px;font-weight:900;cursor:text}.zone-threshold-input small{flex:0 0 auto;color:var(--muted-dark);font-size:12px;font-weight:750}.app-light .zone-threshold-input input{color:#172033;-webkit-text-fill-color:#172033}.zone-threshold-label{color:inherit;font-size:13px;font-weight:900;letter-spacing:-.01em}.zone-threshold-row>.zone-threshold-label{color:inherit}.app-light .zone-threshold-input{border-color:#cbd5e1;background:#f8fafc}.app-light .zone-threshold-input:hover,.app-light .zone-threshold-input:focus-within{border-color:#347fb3;background:#faf8ff}.zone-list-panel{overflow:visible;border:0;background:transparent}.zone-list-panel>header{min-height:48px;border:0;padding:0 2px 8px}.zone-list-rows{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.zone-list-row{position:relative;min-height:142px;border:1px solid var(--border-dark);border-radius:15px;padding:10px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto minmax(42px,1fr) auto;align-items:start;gap:8px;overflow:hidden;background:#ffffff0b}.zone-list-row:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:#3b82f6}.zone-list-row-2:before{background:#10b981}.zone-list-row-3:before{background:#347fb3}.zone-list-row-4:before{background:#f97316}.zone-list-row-5:before{background:#ef4444}.zone-number{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#fff;background:#3b82f6;font-size:12px;font-weight:950}.zone-list-row-2 .zone-number{background:#10b981}.zone-list-row-3 .zone-number{background:#d9a400}.zone-list-row-4 .zone-number{background:#f97316}.zone-list-row-5 .zone-number{background:#ef4444}.zone-list-row>div:nth-of-type(1){grid-column:1 / -1;grid-row:2;align-content:start;gap:6px}.zone-list-row>div:nth-of-type(1) strong{white-space:normal;font-size:12px;line-height:1.2}.zone-list-row>div:nth-of-type(1) small{color:#cbd5e1;font-size:12px;font-weight:800;line-height:1.35;letter-spacing:.005em}.zone-percent{align-self:center;border-radius:999px;padding:5px 7px;background:#94a3b821;font-size:12px}.zone-stepper{grid-column:1 / -1;grid-row:3;width:100%;display:grid;grid-template-columns:1fr 1fr}.zone-stepper button{width:auto;height:30px}.zone-list-panel>p{padding:9px 2px 0}.app-light .zone-reference-layout>.zone-threshold-card,.app-light .zone-list-panel{background:transparent;box-shadow:none}.app-light .zone-reference-layout>.zone-threshold-card .zone-threshold-row,.app-light .zone-list-row{background:#fff;border-color:#dde3ec;box-shadow:0 8px 20px #0f172a0a}.app-light .zone-list-row>div:nth-of-type(1) small{color:#334155;-webkit-text-fill-color:#334155}.app-dark .zone-list-row>div:nth-of-type(1) small{color:#cbd5e1;-webkit-text-fill-color:#cbd5e1}@media(max-width:1100px){.zone-reference-layout{grid-template-columns:1fr}.zone-list-rows{grid-template-columns:repeat(5,minmax(112px,1fr));overflow-x:auto;padding-bottom:4px}}@media(max-width:620px){.zone-reference-layout>.zone-threshold-card{grid-template-columns:1fr}.zone-list-rows{grid-template-columns:repeat(5,minmax(124px,1fr))}}.zone-scale-editor{min-width:0;border:1px solid var(--border-dark);border-radius:18px;padding:14px;display:grid;gap:11px;background:linear-gradient(145deg,#347fb317,#ffffff09)}.zone-scale-editor>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.zone-scale-editor>header strong{color:inherit;font-size:14px}.zone-scale-editor>header span,.zone-scale-editor>p{color:#64748b;font-size:12px;font-weight:750}.zone-scale-editor>p{margin:0}.zone-scale{position:relative;min-height:56px;border:4px solid rgba(255,255,255,.86);border-radius:16px;display:flex;overflow:visible;background:#fff;box-shadow:0 8px 22px #0f172a1f}.zone-scale-segment{min-width:0;display:grid;place-items:center;color:#fffffff0;align-content:center;font-weight:950;line-height:1;text-shadow:0 1px 2px rgba(15,23,42,.28)}.zone-scale-segment b{color:inherit;font-size:12px}.zone-scale-segment:first-of-type{border-radius:11px 0 0 11px}.zone-scale-segment:nth-of-type(5){border-radius:0 11px 11px 0}.zone-scale-segment-1{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.zone-scale-segment-2{background:linear-gradient(135deg,#34d399,#10b981)}.zone-scale-segment-3{background:linear-gradient(135deg,#347fb3,#d86b56)}.zone-scale-segment-4{background:linear-gradient(135deg,#fb923c,#f97316)}.zone-scale-segment-5{background:linear-gradient(135deg,#f87171,#ef4444)}.zone-scale input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:none;background:transparent}.zone-scale input[type=range]::-webkit-slider-runnable-track{height:1px;background:transparent}.zone-scale input[type=range]::-webkit-slider-thumb{width:7px;height:40px;margin-top:-19px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #ffffff;border-radius:999px;pointer-events:auto;cursor:ew-resize;background:#172033;box-shadow:0 4px 12px #0f172a4d}.zone-scale input[type=range]::-moz-range-track{background:transparent}.zone-scale input[type=range]::-moz-range-thumb{width:5px;height:38px;border:1px solid #ffffff;border-radius:999px;pointer-events:auto;cursor:ew-resize;background:#172033}.zone-scale-values{display:flex;align-items:flex-start}.zone-scale-values span{min-width:0;overflow:hidden;padding:0 2px;color:#64748b;font-size:clamp(8px,.75vw,10px);font-weight:850;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}.zone-scale-empty{border:1px dashed rgba(148,163,184,.36);border-radius:14px;padding:14px;color:var(--muted-dark);font-size:12px;font-weight:750;text-align:center}.zone-scale-pending{display:grid;gap:8px}.zone-scale-placeholder{opacity:.7;filter:saturate(.65);box-shadow:none}.zone-scale-placeholder .zone-scale-segment{min-height:48px}.zone-precise-values{border-radius:14px}.zone-precise-values>summary{width:fit-content;cursor:pointer;color:var(--muted-dark);font-size:12px;font-weight:850}.zone-precise-values[open]>summary{margin-bottom:10px}.app-light .zone-scale-editor{border-color:#dfe5ef;background:linear-gradient(145deg,#f7f4ff,#fff);box-shadow:0 10px 26px #0f172a0b}.app-light .zone-scale-editor>header strong{color:#172033}.app-light .zone-scale-editor>header span,.app-light .zone-scale-editor>p,.app-light .zone-scale-values span,.app-light .zone-precise-values>summary{color:#64748b}.app-light .zone-scale-empty{color:#64748b;background:#f8fafcd1;border-color:#cbd5e1}.zone-card{min-width:0;border:1px solid var(--border-dark);border-radius:18px;padding:12px;display:grid;gap:10px;background:linear-gradient(180deg,#ffffff0e,#ffffff09);box-shadow:inset 0 1px #ffffff0a}.zone-card-top{display:grid;grid-template-columns:1fr;align-items:center}.zone-range-row input{width:100%;min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:#ffffff0e;color:var(--text-dark);outline:none;box-shadow:inset 0 1px #ffffff09}.zone-card-title{min-height:36px;border-radius:13px;padding:8px 10px;display:flex;align-items:center;color:var(--text-dark);background:#ffffff0b;font-size:15px;font-weight:850;line-height:1.15}.zone-metrics-grid{display:grid;gap:8px}.zone-range-row{display:grid;grid-template-columns:minmax(64px,.75fr) minmax(0,1fr) auto minmax(0,1fr) minmax(46px,auto);gap:8px;align-items:center;color:var(--muted-dark)}.zone-range-row span,.zone-range-row em,.zone-range-row small{font-size:12px;font-style:normal;font-weight:800}.zone-range-row input{min-height:40px;padding:8px 10px;text-align:center;font-weight:750}.help-list p{display:grid;gap:4px}.connections-card{display:grid;gap:18px}.connections-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.connections-header h2,.connections-header p{margin:0}.connections-header p,.connections-category-head p,.connection-card small{color:var(--muted-light)}.app-dark .connections-header p,.app-dark .connections-category-head p,.app-dark .connection-card small{color:var(--muted-dark)}.connections-status-pill,.connection-badge{border:1px solid #c7d2fe;border-radius:999px;color:#4338ca;background:#eef2ff;font-size:12px;font-weight:850;line-height:1;white-space:nowrap}.connections-status-pill{padding:8px 10px}.connection-badge{padding:7px 9px}.connections-category-list{display:grid;gap:18px}.connections-category{display:grid;gap:10px}.connections-category-head{display:grid;gap:3px}.connections-category-head h3,.connections-category-head p{margin:0}.connections-category-head h3{font-size:16px}.connections-grid{display:grid;gap:10px}.connection-card{border:1px solid var(--border-light);border-radius:18px;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;background:#fff;box-shadow:0 8px 22px #0f172a09}.app-dark .connection-card{border-color:var(--border-dark);background:#ffffff0a;box-shadow:none}.connection-brand-icon{width:38px;height:38px;border-radius:14px;display:inline-grid;place-items:center;color:#fff;background:#4338ca;border:1px solid rgba(255,255,255,.18);font-size:13px;font-weight:950;letter-spacing:0;box-shadow:0 10px 18px #0f172a1f}.app-dark .connection-brand-icon{box-shadow:none}.connection-brand-strava{background:#fc4c02}.connection-brand-trainingpeaks{background:#0057ff}.connection-brand-intervals{background:#22c55e}.connection-brand-finalsurge{background:#0f172a}.connection-brand-garmin{background:#007cc3}.connection-brand-apple{background:linear-gradient(135deg,#ef4444,#f472b6)}.connection-brand-polar{background:#dc2626}.connection-brand-coros{background:#111827}.connection-brand-suunto{background:#020617}.connection-brand-wahoo{background:#00a8e8}.connection-brand-zwift{background:#f97316}.connection-brand-trainerroad{background:#ef4444}.connection-brand-stryd{background:#facc15;color:#111827}.connection-brand-komoot{background:#65a30d}.connection-brand-form{background:#0284c7}.connection-brand-myswimpro{background:#06b6d4}.connection-brand-whoop{background:#0f172a}.connection-brand-oura{background:#347fb3}.app-dark .connection-brand-finalsurge,.app-dark .connection-brand-coros,.app-dark .connection-brand-suunto,.app-dark .connection-brand-whoop{border-color:#ffffff47}.connection-main{min-width:0;display:grid;gap:3px}.connection-main strong,.connection-main small{display:block}.connection-main strong{color:var(--text-light);font-size:15px}.app-dark .connection-main strong{color:var(--text-dark)}.connection-card .connection-badge{grid-column:2;width:fit-content}.connections-message{margin:0;border:1px solid #bbf7d0;border-radius:14px;padding:10px 12px;color:#166534;background:#f0fdf4;font-size:13px;font-weight:750}.connections-message-error{border-color:#fecaca;color:#dc2626;background:#fef2f2}.app-dark .connections-message{border-color:#22c55e47;color:#bbf7d0;background:#22c55e1f}.app-dark .connections-message-error{border-color:#ef444452;color:#fecaca;background:#ef44441f}.connection-meta{margin-top:3px;color:#4338ca;font-weight:800}.app-dark .connection-meta{color:#b9d9ea}.connection-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.connection-action-button{min-height:34px;border:1px solid #111827;border-radius:999px;padding:0 12px;color:#fff;background:#111827;font-size:12px;font-weight:850}.connection-action-muted{color:#475569;background:#fff;border-color:#cbd5e1}.connection-action-button:disabled{cursor:default;opacity:.72}.connections-card-guest .connection-action-button:disabled{border-color:#cbd5e1;color:#64748b;background:#e2e8f0;opacity:1}.connections-guest-note{margin:0;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:14px;padding:10px 12px;color:var(--text-muted);background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:12px;font-weight:750;line-height:1.45}.app-dark .connection-action-button{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:#347fb38c}.app-dark .connection-action-muted{color:#b9d9ea;background:#ffffff0f;border-color:var(--border-dark)}.app-dark .connections-card-guest .connection-action-button:disabled{border-color:#94a3b838;color:#94a3b8;background:#94a3b81f}.connection-badge-warning{color:#b45309;background:#fef3c7;border-color:#fde68a}.distribution-layout{display:grid;grid-template-columns:118px 1fr;gap:18px;align-items:center;margin-top:12px}.donut{width:118px;height:118px;border-radius:50%;display:grid;place-items:center}.donut span{width:68px;height:68px;border-radius:50%;background:var(--surface-dark)}.distribution-legend{display:grid;gap:10px}.legend-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;color:var(--muted-dark);font-size:13px}.legend-dot{width:9px;height:9px;border-radius:50%}.legend-row strong{color:var(--text-dark)}.more-card{overflow:hidden;border-radius:20px;background:var(--surface-light);box-shadow:var(--shadow-light);border:1px solid var(--border-light)}.app-dark .more-card{background:var(--surface-dark);border-color:var(--border-dark);box-shadow:var(--shadow-dark)}.theme-switch-row{width:100%;min-height:72px;border-bottom:1px solid var(--border-light);padding:14px 16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}.app-dark .theme-switch-row{border-bottom-color:var(--border-dark)}.theme-switch-main{min-width:0;display:grid;gap:3px}.theme-switch-main strong{font-size:16px}.theme-switch-main span{color:var(--muted-light);font-size:13px}.app-dark .theme-switch-main span{color:var(--muted-dark)}.theme-toggle{min-height:38px;border:1px solid var(--border-light);border-radius:999px;padding:3px;display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;background:#f1f5f9}.app-dark .theme-toggle{border-color:var(--border-dark);background:#ffffff0f}.theme-toggle button{min-height:30px;border:0;border-radius:999px;padding:0 10px;color:var(--muted-light);background:transparent;font-size:12px;font-weight:850}.app-dark .theme-toggle button{color:var(--muted-dark)}.theme-toggle button.is-active{color:#111827;background:#fff;box-shadow:0 6px 16px #0f172a14}.app-dark .theme-toggle button.is-active{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 8px 20px #347fb33d}.profile-row,.list-row{width:100%;min-height:72px;border:0;background:transparent;color:inherit;padding:14px 16px;display:flex;align-items:center;gap:14px;text-align:left;border-bottom:1px solid var(--border-light)}.app-dark .profile-row,.app-dark .list-row{border-bottom-color:var(--border-dark)}.more-card>:last-child{border-bottom:0}.avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:850;background:linear-gradient(135deg,#111827,#64748b)}.profile-icon{color:#b9d9ea;background:linear-gradient(135deg,#347fb357,#6366f12e);border:1px solid rgba(52,127,179,.28)}.profile-row div:not(.avatar),.list-row-main{flex:1;display:grid;gap:3px}.profile-row strong,.list-row strong{font-size:16px}.profile-row span,.list-row-main span{color:var(--muted-light);font-size:13px}.app-dark .profile-row span,.app-dark .list-row-main span{color:var(--muted-dark)}.list-row-icon,.more-icon{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#f5f6f8;color:#111827}.app-dark .list-row-icon,.app-dark .more-icon{background:#ffffff0f;color:var(--text-dark)}.more-icon-goals{color:var(--primary)}.more-icon-events,.more-icon-equipment,.more-icon-settings,.more-icon-help{color:#111827}.more-icon-logout{color:var(--red);background:#fb3f461a}.app-dark .more-icon-events,.app-dark .more-icon-equipment,.app-dark .more-icon-settings,.app-dark .more-icon-help{color:var(--text-dark)}.ai-memory-screen{gap:16px}.ai-memory-heading{padding:20px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border-light));border-radius:24px;display:flex;align-items:flex-start;justify-content:space-between;background:linear-gradient(135deg,#f7fbff,#edf5fb)}.ai-memory-heading h1{margin:4px 0 6px}.ai-memory-heading p{margin:0;max-width:660px;color:var(--muted-light);line-height:1.45}.ai-memory-heading>svg{color:var(--primary);flex:0 0 auto}.ai-memory-card{display:grid;gap:18px}.ai-memory-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ai-memory-card-head h2{margin:0 0 4px;font-size:20px}.ai-memory-card-head p{margin:0;color:var(--muted-light);font-size:13px;line-height:1.4}.ai-memory-card .text-button{border:0;padding:7px 9px;display:inline-flex;align-items:center;gap:6px;color:var(--muted-light);background:transparent;font:inherit;font-size:13px;font-weight:700;white-space:nowrap}.ai-memory-card .text-button.danger{color:#b85c55}.memory-list-editor{display:grid;gap:9px}.memory-list-editor>span,.ai-memory-question>span{color:var(--text-light);font-size:13px;font-weight:800}.memory-chips{display:grid;gap:7px}.memory-chips>div{min-height:44px;padding:5px 6px 5px 12px;border:1px solid #d6e2ec;border-radius:14px;display:flex;align-items:center;gap:6px;background:#f7fafc}.memory-chips input{min-width:0;flex:1;border:0;outline:0;color:var(--text-light);background:transparent;font:inherit;font-size:14px}.memory-chips button{width:32px;height:32px;border:0;border-radius:10px;display:grid;place-items:center;color:var(--muted-light);background:transparent}.memory-chips button:hover{color:#b85c55;background:#f7e9e7}.memory-add-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.memory-add-row .round-action{border-color:#cbdbe8;color:var(--primary);background:#eef5fa}.ai-memory-question textarea{min-height:74px}.ai-memory-actions{display:flex;justify-content:flex-end}.ai-memory-message{margin:-6px 0 0;color:var(--primary);font-size:13px;font-weight:700}.ai-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ai-profile-facts button{min-width:0;border:1px solid #d9e4ed;border-radius:16px;padding:13px;display:grid;gap:4px;text-align:left;color:var(--text-light);background:#fbfcfd}.ai-profile-facts button span{color:var(--muted-light);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.ai-profile-facts button strong{overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.35}.ai-profile-facts button em{color:var(--primary);font-size:12px;font-style:normal;font-weight:700}.ai-dynamic-context{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--muted-light);font-size:14px;line-height:1.45}@media(max-width:680px){.ai-memory-heading{padding:17px;border-radius:20px}.ai-memory-heading>svg{width:25px}.ai-memory-card{padding:16px;border-radius:20px}.ai-memory-card-head{align-items:center}.ai-profile-facts{grid-template-columns:1fr}.ai-memory-actions .btn{width:100%}}.logout-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;padding:18px;display:grid;place-items:center;background:#050a1294;overscroll-behavior:contain}.logout-confirm-dialog{width:min(100%,380px);border:1px solid var(--border-dark);border-radius:22px;padding:18px;display:grid;gap:16px;color:var(--text-dark);background:#121923;box-shadow:0 22px 58px #0000006b}.logout-confirm-dialog h2,.logout-confirm-dialog p{margin:0}.logout-confirm-dialog h2{font-size:22px;line-height:1.12}.logout-confirm-dialog p{margin-top:7px;color:var(--muted-dark);font-size:14px;line-height:1.4}.logout-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#050a127a;display:flex;align-items:flex-end;overscroll-behavior:contain}.bottom-sheet{width:min(430px,100%);margin:0 auto;max-height:88vh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--surface-light);color:var(--text-light);border-radius:24px 24px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.workout-export-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px}.bottom-sheet.workout-export-sheet{width:min(780px,100%);max-height:min(92dvh,900px);padding:0;overflow:auto;color:#142033;background:radial-gradient(circle at 82% 0%,rgba(52,127,179,.13),transparent 32%),linear-gradient(180deg,#f8faff,#eef3f9);border:1px solid rgba(203,213,225,.92);box-shadow:0 34px 90px #0f172a4d}.workout-export-header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 24px 20px;border-bottom:1px solid rgba(203,213,225,.82);background:#f8faffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.workout-export-header h2,.workout-export-header p{margin:0}.workout-export-header h2{margin-top:5px;color:#101827;font-size:clamp(23px,3vw,32px);line-height:1.08}.workout-export-header p{margin-top:8px;color:#64748b;font-size:14px;line-height:1.4}.workout-export-eyebrow{color:#6d4aff;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.workout-export-close{width:42px;min-width:42px;height:42px;border:1px solid #d8e0eb;border-radius:14px;display:grid;place-items:center;color:#334155;background:#fff;box-shadow:0 7px 20px #0f172a14}.workout-export-share{width:calc(100% - 48px);margin:22px 24px 0;border:0;border-radius:20px;padding:17px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;text-align:left;color:#fff;background:linear-gradient(135deg,#2563eb,#6d4aff 58%,#9333ea);box-shadow:0 16px 34px #4f46e540}.workout-export-share strong,.workout-export-share small,.workout-export-option strong,.workout-export-option small,.workout-export-option em{display:block}.bottom-sheet.workout-export-sheet .workout-export-share strong{color:#fff;font-size:16px}.bottom-sheet.workout-export-sheet .workout-export-share small{margin-top:3px;color:#ffffffeb;font-size:12px;line-height:1.35}.workout-export-share .workout-export-option-icon{color:#fff;background:#ffffff2e}.workout-export-share-action{border-radius:999px;padding:9px 12px;color:#24304a;background:#fff;font-size:12px;font-weight:900}.workout-export-section-title{margin:24px 24px 11px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.workout-export-section-title strong{color:#172033;font-size:15px}.workout-export-section-title span{color:#7b8799;font-size:12px}.workout-export-grid{padding:0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.workout-export-option{min-width:0;min-height:136px;border:1px solid #dce3ed;border-radius:18px;padding:15px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;color:#172033;text-align:left;background:#ffffffe0;box-shadow:0 9px 24px #0f172a0e;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.workout-export-option:hover{transform:translateY(-2px);border-color:#4f46e557;box-shadow:0 15px 30px #0f172a17}.workout-export-option-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:#2473a6;background:#eef2ff}.export-format-fit .workout-export-option-icon{color:#0369a1;background:#e0f2fe}.export-format-zwo .workout-export-option-icon{color:#047857;background:#d1fae5}.export-format-ics .workout-export-option-icon{color:#b45309;background:#fef3c7}.workout-export-option-copy{min-width:0}.workout-export-option strong{color:#151d2d;font-size:15px;line-height:1.2}.bottom-sheet.workout-export-sheet .workout-export-option small{margin-top:3px;color:#6d4aff;font-size:12px;font-weight:800}.workout-export-option em{margin-top:10px;color:#64748b;font-size:12px;font-style:normal;line-height:1.4}.workout-export-download-icon{color:#94a3b8}.workout-export-json{width:calc(100% - 48px);margin:12px 24px 0;border:1px dashed #c7d1df;border-radius:14px;padding:11px 14px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;color:#475569;text-align:left;background:#ffffff8f}.workout-export-json span{min-width:0}.workout-export-json strong,.workout-export-json small{display:inline}.workout-export-json small{margin-left:6px;color:#7b8799}.workout-export-status{width:calc(100% - 48px);margin:12px 24px 0;border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:8px;color:#475569;background:#e8eef6;font-size:12px;font-weight:800}.workout-export-status.status-success{color:#047857;background:#d1fae5}.workout-export-status.status-error{color:#be123c;background:#ffe4e6}.workout-export-footnote{margin:16px 24px 0;padding:0 0 calc(22px + env(safe-area-inset-bottom));color:#7b8799;font-size:12px;line-height:1.5}.workout-export-footnote strong{color:#475569}.workout-export-detail-trigger{min-width:0}:is(.app-dark,html[data-theme=dark]) .bottom-sheet.workout-export-sheet{color:#d9e3f0;background:radial-gradient(circle at 82% 0%,rgba(109,74,255,.2),transparent 34%),linear-gradient(180deg,#182231,#111923);border-color:#334155}:is(.app-dark,html[data-theme=dark]) .workout-export-header{border-color:#94a3b833;background:#182231eb}:is(.app-dark,html[data-theme=dark]) .workout-export-header h2,:is(.app-dark,html[data-theme=dark]) .workout-export-section-title strong,:is(.app-dark,html[data-theme=dark]) .workout-export-option strong,:is(.app-dark,html[data-theme=dark]) .workout-export-json strong{color:#f1f5f9}:is(.app-dark,html[data-theme=dark]) .workout-export-header p,:is(.app-dark,html[data-theme=dark]) .workout-export-section-title span,:is(.app-dark,html[data-theme=dark]) .workout-export-option em,:is(.app-dark,html[data-theme=dark]) .workout-export-json small,:is(.app-dark,html[data-theme=dark]) .workout-export-footnote{color:#94a3b8}:is(.app-dark,html[data-theme=dark]) .workout-export-close,:is(.app-dark,html[data-theme=dark]) .workout-export-option,:is(.app-dark,html[data-theme=dark]) .workout-export-json{color:#cbd5e1;border-color:#94a3b838;background:#ffffff0e;box-shadow:none}:is(.app-dark,html[data-theme=dark]) .workout-export-footnote strong{color:#cbd5e1}@media(max-width:620px){.bottom-sheet.workout-export-sheet{max-height:94dvh;border-radius:24px 24px 0 0}.workout-export-header{padding:19px 17px 16px}.workout-export-share,.workout-export-json,.workout-export-status{width:calc(100% - 34px);margin-left:17px;margin-right:17px}.workout-export-share{grid-template-columns:auto minmax(0,1fr);margin-top:17px;padding:15px}.workout-export-share-action{display:none}.workout-export-section-title{margin:21px 17px 10px}.workout-export-section-title span{display:none}.workout-export-grid{padding:0 17px;grid-template-columns:1fr}.workout-export-option{min-height:112px}.workout-export-footnote{margin-left:17px;margin-right:17px}}.app-dark .bottom-sheet{background:#121923;color:var(--text-dark);border:1px solid var(--border-dark);border-bottom:0;box-shadow:0 -18px 46px #0000006b}.app-dark .bottom-sheet h2,.app-dark .bottom-sheet h3,.app-dark .bottom-sheet strong,.app-dark .bottom-sheet p{color:var(--text-dark)}.app-dark .bottom-sheet .segment{background:#ffffff0d;border-color:var(--border-dark)}.app-dark .bottom-sheet .muted,.app-dark .bottom-sheet .segment-detail-lines{color:var(--muted-dark)}.chat-sheet,.chat-panel{display:grid;gap:14px}.chat-sheet{max-height:86vh}.chat-panel-screen{min-height:calc(100dvh - 92px - env(safe-area-inset-bottom));grid-template-rows:auto auto minmax(0,1fr) auto auto auto}.chat-panel-screen .chat-header{align-items:flex-start}.chat-header h2{margin-bottom:4px}.chat-header-actions{display:inline-flex;align-items:center;gap:10px}.chat-header-actions .text-action{display:inline-flex;align-items:center;gap:5px}.chat-header-actions .text-action:disabled{opacity:.45;cursor:default}.chat-limit-pill{width:fit-content;border:1px solid rgba(52,127,179,.28);border-radius:999px;padding:7px 11px;color:#b9d9ea;background:#347fb31f;font-size:13px;font-weight:750}.chat-messages{min-height:260px;max-height:52vh;overflow:auto;display:grid;align-content:start;gap:10px;padding:4px 2px 10px;overflow-anchor:none}.chat-panel-screen .chat-messages{min-height:0;max-height:none}.chat-starter-actions{width:100%;display:grid;gap:8px;margin-top:8px}.chat-starter-actions button{min-height:38px;border:1px solid rgba(99,102,241,.28);border-radius:12px;padding:8px 12px;color:#4338ca;background:#6366f114;font:inherit;font-weight:800;text-align:left}.chat-starter-actions button:hover{background:#6366f129}.chat-empty{min-height:220px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--muted-dark)}.chat-empty strong{font-size:18px}.chat-message{max-width:86%;border-radius:18px;padding:11px 13px;line-height:1.35}.chat-markdown{display:grid;gap:8px}.chat-markdown :is(p,h3,h4,h5,ul,ol){margin:0}.chat-markdown :is(ul,ol){display:grid;gap:4px;padding-left:20px}.chat-markdown :is(h3,h4,h5,strong){font-weight:850}.chat-markdown code{border-radius:5px;padding:1px 4px;background:#94a3b829;font-size:.92em}.chat-markdown a{color:inherit;font-weight:750;text-decoration:underline;text-underline-offset:2px}.chat-message-user{justify-self:end;background:linear-gradient(135deg,#347fb3,#4e96bd);color:#fff}.app-light .chat-message-user,.app-light .chat-message-user p,.app-dark .chat-message-user,.app-dark .chat-message-user p,.app-light .bottom-sheet .chat-message-user,.app-light .bottom-sheet .chat-message-user p,.app-dark .bottom-sheet .chat-message-user,.app-dark .bottom-sheet .chat-message-user p{color:#fff;-webkit-text-fill-color:#ffffff;opacity:1}.chat-message-assistant{justify-self:start;color:var(--text-dark);background:#ffffff12;border:1px solid var(--border-dark)}.chat-message-assistant.chat-message-rich{width:100%;max-width:100%}.chat-token-usage{margin-top:8px;color:var(--muted-dark);font-size:12px;font-weight:650;line-height:1;opacity:.72;white-space:nowrap;font-variant-numeric:tabular-nums}.coach-live-progress{width:min(100%,360px);justify-self:start;overflow:hidden;border:1px solid rgba(52,127,179,.24);border-radius:18px;padding:13px;color:var(--text-dark);background:linear-gradient(145deg,#7c3aed1a,#ffffff0e);box-shadow:0 12px 30px #4c1d951a}.chat-panel>.coach-live-progress{width:100%;max-height:min(210px,28dvh);overflow-y:auto;flex-shrink:0}.coach-live-progress-head{display:flex;align-items:center;gap:10px}.coach-live-progress-head>div{display:grid;gap:1px}.coach-live-progress-head strong{font-size:13px;font-weight:900}.coach-live-progress-head small{color:var(--muted-dark);font-size:12px}.coach-live-orbit{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;color:#b9d9ea;background:#7c3aed2e;animation:coach-live-pulse 1.8s ease-in-out infinite}.coach-live-progress-steps{display:grid;gap:7px;margin-top:12px}.coach-live-progress-steps>div{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;min-height:22px}.coach-live-progress-steps>div>span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center}.coach-live-progress-steps .complete>span{color:#34d399;background:#10b98124}.coach-live-progress-steps .active>span{border:1px solid rgba(167,139,250,.35);background:#7c3aed1f}.coach-live-progress-steps .active i{width:6px;height:6px;border-radius:50%;background:#78b7d3;box-shadow:0 0 #a78bfa73;animation:coach-live-dot 1.25s ease-out infinite}.coach-live-progress-steps p{margin:0;color:var(--muted-dark);font-size:12px;font-weight:700}.coach-live-progress-steps .active p{color:var(--text-dark)}.app-light .coach-live-progress{color:#172033;background:linear-gradient(145deg,#f4f0ff,#fff)}.app-light .coach-live-progress-head strong{color:#172033;-webkit-text-fill-color:#172033}.app-light .coach-live-progress-head small{color:#64748b;-webkit-text-fill-color:#64748b}.app-light .coach-live-progress-steps p,.app-light .coach-live-progress-steps .active p{color:#475569;-webkit-text-fill-color:#475569;opacity:1}.app-light .coach-live-progress-steps .active p{color:#273449;-webkit-text-fill-color:#273449}@keyframes coach-live-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes coach-live-dot{0%{box-shadow:0 0 #a78bfa73}to{box-shadow:0 0 0 7px #a78bfa00}}@media(max-width:1023px){.workout-editor-screen{width:100%;max-width:720px;margin-inline:auto;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.workout-editor-mobile-summary{min-width:0;border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:6px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#ffffff0b;box-shadow:inset 0 1px #ffffff0a}.workout-editor-mobile-summary>div{min-width:0;min-height:52px;padding:7px 9px;display:grid;align-content:center;gap:2px;border-right:1px solid rgba(148,163,184,.16)}.workout-editor-mobile-summary>div:last-child{border-right:0}.workout-editor-mobile-summary span,.workout-blocks-header span{overflow:hidden;color:var(--muted-dark);font-size:11px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.workout-editor-mobile-summary strong{overflow:hidden;color:var(--text-dark);font-size:14px;font-weight:900;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.mobile-workout-chart-card{min-width:0;border:1px solid rgba(148,163,184,.18);border-radius:14px;padding:10px;display:grid;gap:8px;background:#ffffff09}.mobile-workout-chart-head{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-workout-chart-head span{color:var(--text-dark);font-size:12px;font-weight:900}.mobile-workout-chart-head small{overflow:hidden;color:var(--muted-dark);font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.mobile-workout-chart{min-width:0;height:82px;padding:9px 8px 6px;border-radius:10px;display:flex;align-items:end;gap:3px;overflow:hidden;background:linear-gradient(to top,rgba(148,163,184,.1) 1px,transparent 1px) 0 100% / 100% 33%,#0f172a38}.mobile-workout-chart-bar{min-width:2px;flex:1 1 0;border-radius:4px 4px 2px 2px;background:var(--builder-chart-color, #94a3b8);box-shadow:inset 0 -8px 12px #0f172a14}.editor-block-menu{position:relative;z-index:20;flex:0 0 auto}.editor-block-menu-trigger{width:40px;height:40px;border:1px solid rgba(148,163,184,.2);border-radius:12px;display:grid;place-items:center;color:var(--muted-dark);background:#ffffff0b}.editor-block-menu-trigger:hover,.editor-block-menu-trigger[aria-expanded=true]{color:var(--text-dark);border-color:#a78bfa6b;background:#347fb329}.editor-block-menu-popover{position:absolute;z-index:40;top:calc(100% + 6px);right:0;width:min(244px,calc(100vw - 54px));border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:6px;display:grid;gap:2px;background:#17212d;box-shadow:0 20px 44px #02061761}.editor-block-menu-popover button{width:100%;min-height:42px;border:0;border-radius:9px;padding:0 10px;display:flex;align-items:center;gap:9px;color:#e5e7eb;background:transparent;text-align:left;font-size:13px;font-weight:800}.editor-block-menu-popover button:hover:not(:disabled){background:#347fb326}.editor-block-menu-popover button:disabled{cursor:default;opacity:.36}.editor-block-menu-popover button.is-danger{color:#fda4af}.editor-block-menu-popover button.is-danger:hover{background:#f43f5e1f}.workout-blocks-header>div{min-width:0;display:grid;gap:3px}.workout-editor-save-bar{position:fixed;z-index:80;left:max(14px,calc((100vw - 720px)/2));right:max(14px,calc((100vw - 720px)/2));bottom:calc(10px + env(safe-area-inset-bottom));padding:7px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:color-mix(in srgb,#10151d 88%,transparent);box-shadow:0 16px 38px #02061752;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.workout-editor-save-bar .btn{width:100%;min-height:50px;border-radius:13px}.workout-editor-screen input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.workout-editor-screen input[type=number]::-webkit-inner-spin-button,.workout-editor-screen input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.workout-editor-screen .builder-target-preset,.workout-editor-screen .builder-control-card{min-width:0;border-radius:14px;box-shadow:none}.workout-editor-screen .builder-rpe-grid,.workout-editor-screen .builder-percent-steppers,.workout-editor-screen .field-grid,.workout-editor-screen .editor-choice-grid,.workout-editor-screen .builder-rpe-stepper,.workout-editor-screen .builder-percent-stepper{min-width:0}.workout-editor-screen .builder-rpe-stepper div{grid-template-columns:34px minmax(32px,1fr) 34px;gap:5px}.workout-editor-screen .builder-rpe-stepper button{width:34px;height:38px}.workout-editor-screen .builder-percent-stepper>div{grid-template-columns:34px minmax(38px,1fr) 34px}.workout-editor-screen .builder-percent-stepper button{width:34px;height:36px}.app-light .workout-editor-mobile-summary{background:#f8fafc;border-color:#dbe3ef;box-shadow:none}.app-light .workout-editor-mobile-summary>div{border-right-color:#e2e8f0}.app-light .workout-editor-mobile-summary span,.app-light .workout-blocks-header span{color:#64748b}.app-light .workout-editor-mobile-summary strong{color:#111827}.app-light .mobile-workout-chart-card{background:#f8fafc;border-color:#dbe3ef}.app-light .mobile-workout-chart-head span{color:#111827}.app-light .mobile-workout-chart-head small{color:#64748b}.app-light .mobile-workout-chart{background:linear-gradient(to top,rgba(148,163,184,.16) 1px,transparent 1px) 0 100% / 100% 33%,#eef2f7}.app-light .editor-block-menu-trigger{color:#64748b;background:#fff;border-color:#dbe3ef}.app-light .editor-block-menu-trigger:hover,.app-light .editor-block-menu-trigger[aria-expanded=true]{color:#4c1d95;border-color:#b9d9ea;background:#f5f3ff}.app-light .editor-block-menu-popover{background:#fff;border-color:#dbe3ef;box-shadow:0 20px 44px #0f172a2e}.app-light .editor-block-menu-popover button{color:#1f2937}.app-light .editor-block-menu-popover button.is-danger{color:#be123c}.app-light .workout-editor-save-bar{background:color-mix(in srgb,#ffffff 90%,transparent);border-color:#dbe3ef;box-shadow:0 16px 36px #0f172a29}.app-dark .workout-editor-screen .builder-target-preset,.app-dark .workout-editor-screen .builder-control-card{color:#e8edf5;background:#0f172a70;border-color:#94a3b82e}.app-dark .workout-editor-screen .builder-target-preset-head strong,.app-dark .workout-editor-screen .builder-target-calculation strong{color:#f3f6fb}.app-dark .workout-editor-screen .builder-target-preset-head small,.app-dark .workout-editor-screen .builder-target-calculation span,.app-dark .workout-editor-screen .builder-target-calculation small{color:#94a3b8}.app-dark .workout-editor-screen .builder-target-zone-scale,.app-dark .workout-editor-screen .builder-percent-stepper>div,.app-dark .workout-editor-screen .builder-target-calculation{background:#1e293bc7}.app-dark .workout-editor-screen .builder-percent-stepper{color:#94a3b8;background:#0f172ac2;border-color:#94a3b833}.app-dark .workout-editor-screen .builder-percent-stepper button{color:#e5e7eb;background:#1e293beb;border-color:#94a3b838}.app-dark .workout-editor-screen .builder-percent-stepper-value input,.app-dark .workout-editor-screen .builder-percent-stepper-value small{color:#f8fafc;-webkit-text-fill-color:#f8fafc}}.calendar-workout-card-run,.desktop-workout-sport-run{--sport-icon-color: #d85643}.calendar-workout-card-bike,.desktop-workout-sport-bike{--sport-icon-color: #5967b2}.calendar-workout-card-swim,.desktop-workout-sport-swim{--sport-icon-color: #2385c4}.calendar-workout-card-strength,.desktop-workout-sport-strength{--sport-icon-color: #a8555c}.calendar-workout-card-mobility,.desktop-workout-sport-mobility{--sport-icon-color: #8b6fa8}.calendar-workout-card-rest,.desktop-workout-sport-rest,.calendar-workout-card-other,.desktop-workout-sport-other{--sport-icon-color: #71808e}.app-light .workout-row.calendar-workout-card,.app-light .workout-row.calendar-workout-card.workout-row-completed,.app-light .workout-row.calendar-workout-card.workout-row-skipped,.app-light .workout-row.calendar-workout-card.workout-row-cancelled{border:1px solid #b9c8d5;background:#fbfcfe;box-shadow:0 9px 22px #1f37491a}.app-light .workout-row.calendar-workout-card:active{background:#fff}.app-light .workout-row.calendar-workout-card.workout-row-completed{border-color:#82bea2;background:#f5fbf8;box-shadow:inset 4px 0 #21865e,0 9px 22px #1f37491a}.app-light .workout-row.calendar-workout-card.workout-row-skipped{border-color:#e3ad68;background:#fffaf2;box-shadow:inset 4px 0 #d97706,0 9px 22px #1f374917}@media(min-width:1024px){.app-light .desktop-workout-card,.app-light .desktop-week-row-current .desktop-workout-card{border:1px solid #b9c8d5;background:#fbfcfe;box-shadow:0 9px 22px #1f37491c}.app-light .desktop-workout-card:hover,.app-light .desktop-workout-card:focus-within,.app-light .desktop-week-row-current .desktop-workout-card:hover,.app-light .desktop-week-row-current .desktop-workout-card:focus-within{border-color:#879fb3;background:#fff;box-shadow:0 13px 28px #1f374929}.app-light .desktop-workout-card.desktop-workout-completed,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-completed{border-color:#82bea2;border-top:1px solid #82bea2;background:#f5fbf8;box-shadow:inset 4px 0 #21865e,0 9px 22px #1f37491a}.app-light .desktop-workout-card.desktop-workout-skipped,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-skipped{border-color:#e3ad68;border-top:1px solid #e3ad68;background:#fffaf2;box-shadow:inset 4px 0 #d97706,0 9px 22px #1f374917}.app-light .desktop-workout-card.desktop-workout-unfilled:not(.desktop-workout-skipped),.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-unfilled:not(.desktop-workout-skipped){border-color:#e6a2a6;border-top:1px solid #e6a2a6;background:#fff8f8;box-shadow:inset 4px 0 #d74455,0 9px 22px #1f374917}.app-light .desktop-workout-chart .chart-baseline{border-top-color:#cbd5df}.app-light .desktop-workout-sport-rest:after{background:#71808e}}.wellness-card,.app-light .wellness-card,.app-dark .wellness-card{color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.wellness-card-icon,.wellness-compact-icon,.recovery-overview-orb{color:var(--ai-accent);border:1px solid color-mix(in srgb,var(--ai-accent) 28%,var(--border));background:var(--ai-soft);box-shadow:none}.wellness-card-copy small,.recovery-overview-card small,.wellness-card-action,.wellness-coach-proposal{color:var(--ai-accent);font-weight:700}.wellness-card-copy strong,.app-light .wellness-card-copy strong,.app-dark .wellness-card-copy strong{color:var(--text);font-weight:700}.wellness-card-copy>span,.app-light .wellness-card-copy>span,.app-dark .wellness-card-copy>span{color:var(--text-muted)}.wellness-compact-shell,.app-dark .wellness-compact-shell,.wellness-day-marker{--wellness-marker: var(--ai-accent)}.wellness-compact-adapt,.app-dark .wellness-compact-adapt,.wellness-coach-proposal,.wellness-adaptation-prompt{color:var(--ai-accent);border-color:color-mix(in srgb,var(--ai-accent) 28%,var(--border));background:var(--ai-soft);box-shadow:none}.wellness-adaptation-prompt>span:first-child{color:var(--ai-accent);border:1px solid color-mix(in srgb,var(--ai-accent) 28%,var(--border));background:var(--surface-raised)}.wellness-adaptation-prompt :is(strong,small){color:var(--text)}.wellness-adaptation-prompt em{color:var(--ai-accent)}.wellness-compact,:is(.app-dark,html[data-theme=dark]) .wellness-compact:not(.wellness-compact-only){color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.wellness-compact-action,:is(.app-dark,html[data-theme=dark]) .wellness-compact-action{color:var(--ai-accent);background:var(--ai-soft)}.wellness-compact-alert{border-color:var(--surface-raised);background:var(--ai-accent);box-shadow:none}.coach-action-reasoning{border-left-color:var(--ai-accent);background:var(--ai-soft)}.coach-plan-day:before{background:#858a82}.coach-plan-day-run:before{background:#4f7a60}.coach-plan-day-bike:before{background:#347fb3}.coach-plan-day-swim:before{background:#52798b}.coach-plan-day-rest:before{background:#858a82}.coach-plan-day-strength:before{background:#d85643}.coach-plan-sport,.app-light .coach-plan-sport{color:var(--primary);background:var(--primary-soft)}.coach-plan-workout-main em,.app-light .coach-plan-workout-main em{color:var(--primary)}.catalog-chart-block{background:#a6b3c0}.catalog-chart-block.intensity-easy{background:#7b8fb2}.catalog-chart-block.intensity-moderate{background:#e2a93b}.catalog-chart-block.intensity-hard{background:#d74455}.catalog-chart-block.intensity-mixed{background:#347fb3}.workout-rpe-scale button.is-selected,.app-light .workout-rpe-scale button.is-selected{color:var(--primary-fill-text);border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:none}.hr-zone-sheet-icon,.profile-icon{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,var(--border));background:var(--primary-soft);box-shadow:none}.hr-zone-calc-button{color:var(--primary-fill-text);border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:none}.zone-threshold-input:hover,.zone-threshold-input:focus-within,.app-light .zone-threshold-input:hover,.app-light .zone-threshold-input:focus-within{border-color:color-mix(in srgb,var(--primary) 52%,var(--border));background:var(--primary-soft);box-shadow:none}@media(max-width:760px){.workout-editor-screen{gap:12px}.workout-editor-header{gap:11px}.workout-editor-header .round-action{width:44px;height:44px}.workout-editor-header span{margin-bottom:2px;font-size:11px}.workout-editor-header-compact h1{font-size:clamp(21px,6vw,24px)}.workout-editor-card{gap:12px;padding:14px;border-radius:17px}.editor-section-title h2,.workout-blocks-header h2{font-size:19px}.editor-section-title span{font-size:12px;line-height:1.35}.workout-editor-screen .workout-type-panel,.workout-editor-screen .workout-goal-panel{gap:9px;padding:10px;border-radius:14px}.workout-editor-screen .workout-type-trigger{min-height:52px;border-radius:13px}.workout-editor-screen .workout-type-panel>div:first-child strong,.workout-editor-screen .workout-goal-panel>div:first-child strong{font-size:15px}.workout-editor-screen .editor-choice-grid{gap:6px}.workout-editor-screen .editor-choice-grid button{min-height:42px;border-radius:11px;padding-inline:7px;font-size:13px}.workout-editor-screen .form-field{gap:6px}.workout-editor-screen .input,.workout-editor-screen .textarea,.workout-editor-screen .date-picker-shell{min-height:48px;border-radius:13px;font-size:16px}.workout-editor-screen .editor-short-textarea{min-height:72px}.workout-blocks-card{gap:10px}.workout-editor-screen .editor-segment{gap:9px;padding:11px 11px 11px 12px;border-left-width:3px;border-radius:14px;box-shadow:none}.workout-editor-screen .editor-segment-compact{padding:10px;border-radius:13px}.workout-editor-screen .editor-segment-head{gap:8px}.workout-editor-screen .editor-segment-toggle{min-height:36px}.workout-editor-screen .editor-segment-toggle strong{font-size:15px}.workout-editor-screen .editor-delete-icon{width:40px;min-width:40px;min-height:40px;border-radius:12px}.workout-editor-screen .builder-target-preset{gap:10px;padding:10px;border-radius:12px}.workout-editor-screen .builder-target-preset-head small{line-height:1.25}.workout-editor-screen .builder-rpe-grid,.workout-editor-screen .builder-percent-steppers{gap:7px}.workout-editor-screen .builder-rpe-stepper,.workout-editor-screen .builder-percent-stepper{gap:7px;padding:8px;border-radius:11px}.workout-editor-screen .editor-repeat-box{gap:9px;padding:11px 11px 11px 12px;border-left-width:3px;border-radius:14px}.workout-editor-screen .editor-repeat-inner{gap:8px}.workout-editor-screen .editor-add-block-button{min-height:46px;border-radius:13px}}@media(max-width:480px){.workout-editor-save-bar{left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom))}.workout-editor-mobile-summary>div{padding-inline:7px}.workout-editor-mobile-summary strong{font-size:13px}.workout-editor-screen .editor-add-actions{grid-template-columns:minmax(0,1fr);gap:8px}}@media(max-width:360px){.workout-editor-screen .builder-rpe-grid,.workout-editor-screen .builder-percent-steppers{grid-template-columns:minmax(0,1fr)}.workout-editor-screen .editor-choice-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.coach-live-orbit,.coach-live-progress-steps .active i{animation:none}}@media(max-width:1023px){.mobile-coach-screen{position:fixed;inset:0 0 calc(72px + env(safe-area-inset-bottom));z-index:20;width:min(430px,100%);margin:0 auto;overflow:hidden;padding:max(18px,env(safe-area-inset-top)) 14px 12px}.app-dark .mobile-coach-screen{color:var(--text-dark);background:radial-gradient(circle at 84% 0%,rgba(109,92,231,.16),transparent 32%),linear-gradient(180deg,var(--bg-dark),#121923)}.app-light .mobile-coach-screen{color:var(--text-light);background:radial-gradient(circle at 80% 0%,rgba(109,92,231,.1),transparent 31%),var(--bg-light)}.mobile-coach-screen .chat-panel-screen{width:100%;height:100%;min-height:0;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;gap:10px;overflow:hidden;border:0;background:transparent;box-shadow:none}.mobile-coach-screen .chat-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px}.mobile-coach-screen .chat-header>div:first-child{min-width:0}.mobile-coach-screen .chat-header h2{margin:0;font-size:27px;line-height:1.08}.mobile-coach-screen .chat-header p{margin:5px 0 0;font-size:13px;line-height:1.4}.mobile-coach-screen .chat-header-actions{align-self:start}.mobile-coach-screen .chat-header-actions .text-action{min-height:40px;padding:0 10px;border-radius:12px}.mobile-coach-screen .chat-limit-pill{max-width:100%;padding:6px 10px;font-size:12px}.mobile-coach-screen .chat-messages{min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;padding:8px 2px 12px}.mobile-coach-screen .chat-input-row textarea{min-height:50px;max-height:112px;resize:none}}@media(max-width:360px){.mobile-coach-screen{padding-right:10px;padding-left:10px}.mobile-coach-screen .chat-header h2{font-size:24px}.mobile-coach-screen .chat-header p{font-size:12px}.mobile-coach-screen .chat-header-actions .text-action{padding:0 7px;font-size:12px}}.mobile-plan-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-plan-header>div{min-width:0;display:grid;gap:2px}.mobile-plan-header>div>small{color:var(--primary);font-weight:850;letter-spacing:.12em}.mobile-plan-header h1{margin:0;font-size:25px;line-height:1.15}.mobile-plan-race{min-width:0;max-width:48%;min-height:44px;border:1px solid color-mix(in srgb,var(--primary) 24%,transparent);border-radius:13px;padding:7px 10px;display:flex;align-items:center;gap:8px;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));text-align:left}.mobile-plan-race>span{min-width:0;display:grid;gap:1px}.mobile-plan-race strong,.mobile-plan-race small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-plan-race strong{color:var(--text);font-size:12px}.mobile-plan-race small{color:var(--text-muted);font-size:12px}.mobile-calendar-mode{min-height:46px;padding:4px;display:grid;grid-template-columns:1fr 1fr;gap:4px;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,var(--text) 4%)}.mobile-calendar-mode button{border:0;border-radius:11px;color:var(--text-muted);background:transparent;font-weight:800}.mobile-calendar-mode button.is-active{color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--surface));box-shadow:0 5px 14px color-mix(in srgb,var(--text) 8%,transparent)}.mobile-week-navigation{min-height:36px;display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px}.mobile-week-navigation>button{width:36px;height:36px;border:0;border-radius:11px;display:grid;place-items:center;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 86%,var(--text) 5%)}.mobile-week-navigation>button:disabled{opacity:.35;cursor:default}.mobile-week-navigation>span{min-width:0;display:flex;align-items:center;justify-content:center;gap:8px}.mobile-week-navigation strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.mobile-week-navigation span>button{min-height:28px;border:0;border-radius:9px;padding:0 8px;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);font-size:12px;font-weight:800}.mobile-date-strip{display:grid;grid-template-columns:repeat(7,minmax(40px,1fr));gap:4px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.mobile-date-strip::-webkit-scrollbar{display:none}.mobile-date-strip>button{min-width:40px;min-height:61px;border:1px solid transparent;border-radius:13px;padding:6px 2px 5px;display:grid;grid-template-rows:auto auto 5px;place-items:center;gap:1px;color:var(--text-muted);background:transparent}.mobile-date-strip>button small{font-size:12px;font-weight:750}.mobile-date-strip>button strong{color:var(--text);font-size:15px}.mobile-date-strip>button i{width:5px;height:5px;border-radius:999px;background:transparent}.mobile-date-strip>button i.has-training{background:var(--sport-run)}.mobile-date-strip>button i.has-rest{background:var(--sport-neutral)}.mobile-date-strip>button i.has-event{background:var(--warning-500)}.mobile-date-strip>button.is-today:not(.is-selected){background:color-mix(in srgb,var(--primary) 5%,transparent)}.mobile-date-strip>button.is-selected{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 30%,transparent);background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.mobile-date-strip>button.is-selected strong{color:var(--primary)}.mobile-day-view,.mobile-week-view{min-width:0;display:grid;gap:12px}.mobile-day-heading{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-day-heading>div{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;text-transform:capitalize}.mobile-day-heading>div strong{font-size:16px}.mobile-day-heading>div small{padding:3px 7px;border-radius:999px;color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent);font-weight:800}.mobile-day-heading>span{display:inline-flex;align-items:center;gap:7px}.mobile-day-heading>span>button:last-child{width:38px;height:38px;border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);border-radius:12px;display:grid;place-items:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent)}.mobile-week-toolbar{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-week-toolbar .week-load-summary{min-width:0;margin:0;overflow:hidden}.mobile-week-toolbar .btn{min-width:0;min-height:40px;flex:0 0 auto;border-radius:12px;padding:0 11px}.mobile-week-toolbar-action-label{white-space:nowrap}.mobile-week-list{min-width:0;display:grid;gap:7px}.mobile-week-day-row{width:100%;max-width:100%;min-width:0;min-height:64px;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:15px;padding:9px 10px;display:grid;grid-template-columns:34px 34px minmax(0,1fr) auto auto;align-items:center;gap:8px;color:var(--text);background:var(--surface);text-align:left}.mobile-week-day-row.is-today{border-color:color-mix(in srgb,var(--primary) 30%,transparent);background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.mobile-week-day-row.is-completed{border-color:color-mix(in srgb,#22b66f 24%,var(--border));border-left:5px solid #22b66f;background:linear-gradient(180deg,color-mix(in srgb,#22b66f 6%,transparent),color-mix(in srgb,#22b66f 2%,transparent)),var(--surface)}.mobile-week-day-row.is-unfilled{border-color:color-mix(in srgb,#e5484d 26%,var(--border));border-left:5px solid #e5484d;background:linear-gradient(180deg,color-mix(in srgb,#e5484d 6%,transparent),color-mix(in srgb,#e5484d 2%,transparent)),var(--surface)}.mobile-week-day-row.is-cancelled{opacity:.68}.mobile-week-day-date,.mobile-week-day-copy{min-width:0;display:grid;gap:1px}.mobile-week-day-date{justify-items:center;color:var(--text-muted)}.mobile-week-day-date small{font-size:12px}.mobile-week-day-date strong{color:var(--text)}.mobile-week-day-icon{display:grid;place-items:center;color:var(--text-muted)}.mobile-week-day-icon .sport-icon-sm{width:32px;height:32px}.mobile-week-day-copy strong,.mobile-week-day-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-week-day-copy strong{font-size:13px}.mobile-week-day-copy small{color:var(--text-muted);font-size:12px}.mobile-week-readiness{width:7px;height:7px;border-radius:999px;background:var(--success-500)}.mobile-week-readiness.wellness-state-caution{background:var(--warning-500)}.mobile-week-readiness.wellness-state-risk{background:var(--danger-500)}@media(max-width:355px){.mobile-plan-header{gap:8px}.mobile-plan-header h1{font-size:22px}.mobile-plan-race{max-width:42%;padding-inline:8px}.mobile-date-strip{grid-template-columns:repeat(7,minmax(0,1fr))}.mobile-date-strip>button{min-width:0}.mobile-week-day-row{grid-template-columns:32px 32px minmax(0,1fr) auto}.mobile-week-readiness{display:none}}@media(max-width:480px){.mobile-week-toolbar .week-load-summary :is(.week-load-completed,small){display:none}}@media(max-width:355px){.mobile-week-toolbar .btn{width:40px;padding:0}.mobile-week-toolbar-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.coach-action-list{display:grid;gap:10px;margin-top:10px}.coach-clarification-card{display:grid;gap:8px;margin-top:10px}.coach-clarification-card>small{color:var(--muted-dark);font-size:12px}.coach-clarification-options{display:grid;gap:7px}.coach-clarification-options button{width:100%;display:grid;gap:2px;padding:9px 10px;color:inherit;text-align:left;background:#347fb314;border:1px solid rgba(52,127,179,.24);border-radius:12px;cursor:pointer}.coach-clarification-options button:hover:not(:disabled){background:#347fb324;border-color:#347fb36b}.coach-clarification-options button:disabled{cursor:default;opacity:.55}.coach-clarification-options strong{font-size:13px}.coach-clarification-options span{color:var(--muted-dark);font-size:12px}.coach-clarification-card-resolved{opacity:.65}.coach-action-card{width:100%;min-width:0;border:1px solid rgba(167,139,250,.36);border-radius:16px;padding:12px;display:grid;gap:10px;background:#0f172a47}.coach-action-card>p{color:var(--muted-dark);font-size:13px}.coach-action-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.coach-action-head div{min-width:0;display:grid;gap:2px}.coach-action-head strong,.coach-action-head small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-action-head small{color:var(--muted-dark);font-size:12px;font-weight:750}.coach-action-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;color:#b9d9ea;background:#347fb32e}.coach-action-races,.coach-action-weeks{display:grid;gap:6px}.coach-action-races span{color:#bfdbfe;font-size:13px;font-weight:800}.coach-action-weeks details{border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:8px 10px;background:#ffffff0b}.coach-action-weeks summary{cursor:pointer;color:var(--text-dark);font-size:13px;font-weight:850}.coach-action-weeks details div{display:grid;gap:5px;margin-top:8px}.coach-action-weeks details span{color:var(--muted-dark);font-size:12px;line-height:1.25}.coach-action-warning{color:#fde68a!important}.coach-action-reasoning{color:var(--text-secondary);font-size:13px}.coach-plan-calendar{display:grid;gap:10px}.coach-plan-calendar-title{display:flex;align-items:center;gap:7px;color:#b9d9ea;font-size:13px}.coach-plan-week{overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:13px;background:#ffffff09}.coach-plan-week>header{padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(148,163,184,.18)}.coach-plan-week>header strong{font-size:12px;font-weight:900}.coach-plan-week>header span{color:var(--text-secondary);font-size:12px;font-weight:750}.coach-plan-days{display:grid}.coach-plan-day{position:relative;min-width:0;padding:9px 10px 9px 12px;display:grid;grid-template-columns:45px 58px minmax(0,1fr);align-items:center;gap:7px;border-bottom:1px solid rgba(148,163,184,.14)}.coach-plan-day:last-child{border-bottom:0}.coach-plan-day:before{content:"";position:absolute;inset:7px auto 7px 0;width:3px;border-radius:0 3px 3px 0;background:#347fb3}.coach-plan-day-run:before{background:#f97316}.coach-plan-day-bike:before{background:#3b82f6}.coach-plan-day-swim:before{background:#06b6d4}.coach-plan-day-rest:before{background:#94a3b8}.coach-plan-day-strength:before{background:#ef4444}.coach-plan-day time{display:grid;gap:1px}.coach-plan-day time strong{font-size:12px;line-height:1}.coach-plan-day time small{color:var(--text-secondary);font-size:12px;text-transform:uppercase}.coach-plan-sport{overflow:hidden;border-radius:7px;padding:4px 5px;color:#b9d9ea;background:#347fb321;font-size:12px;font-weight:850;text-align:center;text-overflow:ellipsis;white-space:nowrap}.coach-plan-workout-main{min-width:0;display:grid;gap:2px}.coach-plan-workout-main strong{overflow:hidden;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.coach-plan-workout-main small{color:var(--text-secondary);font-size:12px}.coach-plan-workout-main em{color:#347fb3;font-size:12px;font-style:normal;font-weight:800}.coach-plan-day-preserved{background:#94a3b812}.coach-plan-day-preserved:before{background:#94a3b8}.coach-plan-day-preserved .coach-plan-workout-main em{color:var(--text-secondary)}.coach-patch-operations{display:grid;gap:10px}.coach-patch-operations>section{display:grid;gap:6px}.coach-patch-operations>section>strong{font-size:12px;color:var(--text-secondary)}.coach-patch-operation{display:grid;gap:2px;border-radius:10px;padding:8px 10px;background:#6366f114;font-size:13px}.coach-patch-operation small{color:var(--text-secondary)}.coach-patch-operation-delete{color:#b91c1c;background:#ef44441a}.coach-action-buttons{display:flex;flex-wrap:wrap;gap:8px}.coach-action-buttons .btn{min-height:38px;padding:0 12px;font-size:13px}.coach-action-status{color:#a7f3d0;font-size:13px;font-weight:850}.coach-action-card-cancelled{opacity:.62}.app-light .coach-action-card{background:#fff;border-color:#dbe4ef}.app-light .coach-action-card>p,.app-light .coach-action-head small,.app-light .coach-action-weeks details span{color:#64748b}.app-light .coach-action-weeks details{background:#f8fafc;border-color:#e2e8f0}.app-light .coach-action-weeks summary{color:#111827}.app-light .coach-action-races span{color:#2563eb}.app-light .coach-action-warning{color:#b45309!important}.app-light .coach-plan-calendar-title{color:#6d28d9}.app-light .coach-plan-week{border-color:#e2e8f0;background:#f8fafc}.app-light .coach-plan-week>header{border-color:#e2e8f0}.app-light .coach-plan-week>header strong,.app-light .coach-plan-day time strong,.app-light .coach-plan-workout-main strong{color:#172033;-webkit-text-fill-color:#172033}.app-light .coach-plan-week>header span,.app-light .coach-plan-day time small,.app-light .coach-plan-workout-main small{color:#64748b;-webkit-text-fill-color:#64748b}.app-light .coach-plan-day{border-color:#e5e7eb}.app-light .coach-plan-sport{color:#5b21b6;background:#ede9fe;-webkit-text-fill-color:#5b21b6}.chat-input-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:end}.chat-input-row textarea{width:100%;min-height:54px;max-height:140px;resize:vertical;border:1px solid var(--border-dark);border-radius:18px;padding:13px 14px;color:var(--text-dark);background:#ffffff0f;font:inherit}.chat-send-button{width:42px;min-height:42px;padding:0;border-radius:14px;margin-bottom:6px}.chat-error{margin:0;color:#fecaca;font-weight:650}.action-choice-sheet,.workout-sport-picker-sheet{gap:14px}.workout-sport-picker-grid{display:grid;grid-template-columns:1fr;gap:8px}.workout-sport-picker-card{width:100%;border:1px solid var(--border-light);border-radius:18px;padding:12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;color:var(--text-light);text-align:left;background:#fff;box-shadow:0 10px 24px #0f172a0d}.workout-sport-picker-card:hover{border-color:#bfdbfe;background:#f8fbff}.app-dark .workout-sport-picker-card{color:var(--text-dark);background:#ffffff0f;border-color:var(--border-dark);box-shadow:none}.app-dark .workout-sport-picker-card:hover{border-color:#a78bfa6b;background:#347fb324}.completion-sheet{gap:14px}.completion-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.completion-grid .form-field:last-child{grid-column:1 / -1}.choice-card{width:100%;min-height:84px;border:1px solid var(--border-dark);border-radius:18px;padding:14px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;color:var(--text-dark);text-align:left;background:linear-gradient(180deg,#ffffff12,#ffffff0a);box-shadow:inset 0 1px #ffffff0a}.choice-card-icon{width:46px;height:46px;border-radius:16px;display:inline-grid;place-items:center;color:#b9d9ea;background:#347fb338}.choice-card strong,.choice-card small{display:block}.choice-card strong{margin-bottom:4px;font-size:17px}.choice-card small{color:var(--muted-dark);font-size:13px;line-height:1.35}.choice-card-active{border-color:#347fb385;background:#347fb324}.calendar-add-sheet{max-height:min(86vh,760px);overflow:auto}.calendar-add-subhead{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.calendar-add-subhead h2{margin:0 0 4px;font-size:26px;line-height:1.08}.calendar-add-subhead .muted{margin:0}.calendar-add-back{width:42px;height:42px;border:1px solid var(--border-light);border-radius:15px;display:inline-grid;place-items:center;color:var(--text-light);background:#f8fafc;box-shadow:0 8px 18px #0f172a14}.text-action.danger{color:#ef4444}.app-dark .calendar-add-back{color:var(--text-dark);background:#ffffff0f;border-color:var(--border-dark);box-shadow:none}.calendar-add-section{display:grid;gap:10px}.calendar-add-section-title{display:inline-flex;align-items:center;gap:10px}.calendar-add-section-title .choice-card-icon{width:38px;height:38px;border-radius:14px}.calendar-add-ai{min-height:74px}.calendar-add-sports{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-add-sports .workout-sport-picker-card{min-height:92px;align-content:start}.calendar-add-type-grid,.calendar-add-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.calendar-add-type-grid .choice-card{min-height:92px}.calendar-add-form{display:grid;gap:10px;padding:12px;border:1px solid var(--border-dark);border-radius:18px;background:#ffffff0b}.calendar-add-form-plain{padding:0;border:0;background:transparent}.calendar-add-form label{display:grid;gap:6px}.calendar-add-form label>span{color:var(--muted-light);font-size:12px;font-weight:850}.app-dark .calendar-add-form label>span{color:var(--muted-dark)}.calendar-add-dropdown{position:relative;display:grid;gap:6px;min-width:0}.calendar-add-dropdown>span{color:var(--muted-light);font-size:12px;font-weight:850}.app-dark .calendar-add-dropdown>span{color:var(--muted-dark)}.calendar-add-dropdown-button{width:100%;min-height:58px;border:1px solid var(--border-light);border-radius:18px;padding:0 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;color:var(--text-light);text-align:left;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.calendar-add-dropdown-button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:850}.calendar-add-dropdown-button svg{color:#64748b;transition:transform .16s ease}.calendar-add-dropdown-button-open{border-color:#2563eb6b;box-shadow:0 0 0 4px #2563eb14}.calendar-add-dropdown-button-open svg{transform:rotate(180deg)}.calendar-add-dropdown-menu{position:absolute;z-index:30;top:calc(100% + 7px);left:0;right:0;max-height:240px;overflow:auto;border:1px solid var(--border-light);border-radius:18px;padding:6px;background:#fff;box-shadow:0 18px 42px #0f172a29}.calendar-add-dropdown-option{width:100%;min-height:44px;border:0;border-radius:13px;padding:10px 11px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--text-light);text-align:left;background:transparent;font-weight:800}.calendar-add-dropdown-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-add-dropdown-option:hover,.calendar-add-dropdown-option-selected{background:#2563eb14}.calendar-add-dropdown-option svg{color:#2563eb}.app-dark .calendar-add-dropdown-button{color:var(--text-dark);background:#ffffff0e;border-color:var(--border-dark)}.app-dark .calendar-add-dropdown-button svg{color:var(--muted-dark)}.app-dark .calendar-add-dropdown-button-open{border-color:#a78bfa6b;box-shadow:0 0 0 4px #347fb31f}.app-dark .calendar-add-dropdown-menu{background:#161b29;border-color:var(--border-dark);box-shadow:0 18px 42px #00000047}.app-dark .calendar-add-dropdown-option{color:var(--text-dark)}.app-dark .calendar-add-dropdown-option:hover,.app-dark .calendar-add-dropdown-option-selected{background:#347fb329}.app-dark .calendar-add-dropdown-option svg{color:#b9d9ea}.calendar-add-date-static{min-height:58px;border:1px solid var(--border-light);border-radius:18px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;color:var(--text-light);background:#fff;font-weight:800}.app-dark .calendar-add-date-static{color:var(--text-dark);background:#ffffff0e;border-color:var(--border-dark)}.calendar-note-textarea{min-height:min(36vh,320px);resize:vertical}.textarea,.input,.select{width:100%;min-height:58px;border:1px solid var(--border-light);border-radius:16px;padding:13px 15px;background:#fff;color:var(--text-light);outline:none;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.app-dark .textarea,.app-dark .input,.app-dark .select{background:linear-gradient(180deg,#ffffff12,#ffffff0b);border-color:#ffffff1f;color:var(--text-dark);box-shadow:inset 0 1px #ffffff09}.textarea:focus,.input:focus,.select:focus{border-color:#347fb3b8;box-shadow:0 0 0 4px #347fb31f}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:46px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 23px) 50%,calc(100% - 15px) 50%;background-size:8px 8px,8px 8px;background-repeat:no-repeat}.app-dark .select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%),linear-gradient(180deg,#ffffff12,#ffffff0b);background-position:calc(100% - 23px) 50%,calc(100% - 15px) 50%,0 0;background-size:8px 8px,8px 8px,100% 100%;background-repeat:no-repeat}.select option{color:var(--text-light);background:#fff}.app-dark .select option{color:var(--text-dark);background:#1a2029}.textarea{min-height:112px;resize:vertical}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.loading{min-height:70vh;display:grid;place-items:center;color:var(--muted-dark);text-align:center}.error-state p,.empty-state p{color:var(--muted-light);line-height:1.45}@media(max-width:370px){.app-shell{padding-left:12px;padding-right:12px}.screen-header h1,.today-hero h1,.detail-hero-title-row h1{font-size:27px}.distribution-layout{grid-template-columns:96px 1fr}.donut{width:96px;height:96px}.donut span{width:56px;height:56px}}@media(min-width:1024px){.app-dark .desktop-web-shell .card,.app-dark .desktop-web-shell .dark-card,.app-dark .desktop-web-shell .more-card,.app-dark .desktop-web-shell .events-hero-card,.app-dark .desktop-web-shell .event-form-card,.app-dark .desktop-web-shell .progress-period-section{color:#0f172a;background:#fffffff0;border:1px solid #dde3ec;box-shadow:0 14px 34px #0f172a0e}.app-dark .desktop-web-shell h1,.app-dark .desktop-web-shell h2,.app-dark .desktop-web-shell h3,.app-dark .desktop-web-shell strong,.app-dark .desktop-web-shell .profile-section-title,.app-dark .desktop-web-shell .profile-details-header h2,.app-dark .desktop-web-shell .events-hero-card h2,.app-dark .desktop-web-shell .event-form-card h2{color:#0f172a}.app-dark .desktop-web-shell p,.app-dark .desktop-web-shell .muted,.app-dark .desktop-web-shell .card p,.app-dark .desktop-web-shell .profile-details-header p,.app-dark .desktop-web-shell .profile-section-heading p,.app-dark .desktop-web-shell .events-hero-card p,.app-dark .desktop-web-shell .event-form-card p,.app-dark .desktop-web-shell .list-row-main span,.app-dark .desktop-web-shell .profile-row span,.app-dark .desktop-web-shell .settings-row span,.app-dark .desktop-web-shell .event-card span,.app-dark .desktop-web-shell .help-list span,.app-dark .desktop-web-shell .form-field>span,.app-dark .desktop-web-shell .goal-option-card small,.app-dark .desktop-web-shell .switch-row span,.app-dark .desktop-web-shell .hr-zone-trigger span,.app-dark .desktop-web-shell .hr-zone-current span,.app-dark .desktop-web-shell .hr-zone-current small,.app-dark .desktop-web-shell .zone-range-row,.app-dark .desktop-web-shell .zone-range-row span,.app-dark .desktop-web-shell .zone-range-row em,.app-dark .desktop-web-shell .zone-range-row small,.app-dark .desktop-web-shell .autosave-status{color:#64748b}.app-dark .desktop-web-shell .profile-row,.app-dark .desktop-web-shell .list-row,.app-dark .desktop-web-shell .settings-row,.app-dark .desktop-web-shell .event-card,.app-dark .desktop-web-shell .help-list p,.app-dark .desktop-web-shell .goal-option-card,.app-dark .desktop-web-shell .switch-row,.app-dark .desktop-web-shell .zone-card,.app-dark .desktop-web-shell .zone-card-title,.app-dark .desktop-web-shell .hr-zone-trigger,.app-dark .desktop-web-shell .hr-zone-current,.app-dark .desktop-web-shell .date-picker-shell,.app-dark .desktop-web-shell .event-summary-strip,.app-dark .desktop-web-shell .event-list-header,.app-dark .desktop-web-shell .event-archive-toggle,.app-dark .desktop-web-shell .race-event-card,.app-dark .desktop-web-shell .race-empty-state{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.app-dark .desktop-web-shell .list-row-icon,.app-dark .desktop-web-shell .more-icon,.app-dark .desktop-web-shell .events-hero-icon,.app-dark .desktop-web-shell .form-card-icon,.app-dark .desktop-web-shell .progress-metric>span{color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe}.app-dark .desktop-web-shell .more-icon-logout{color:#dc2626;background:#fff1f2;border-color:#fecdd3}.app-dark .desktop-web-shell .textarea,.app-dark .desktop-web-shell .input,.app-dark .desktop-web-shell .select,.app-dark .desktop-web-shell .date-picker-shell input{color:#0f172a;background-color:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09;color-scheme:light}.app-dark .desktop-web-shell .textarea::placeholder,.app-dark .desktop-web-shell .input::placeholder{color:#94a3b8}.app-dark .desktop-web-shell .select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 23px) 50%,calc(100% - 15px) 50%;background-size:8px 8px,8px 8px;background-repeat:no-repeat}.app-dark .desktop-web-shell .select option{color:#0f172a;background:#fff}.app-dark .desktop-web-shell .segmented-control,.app-dark .desktop-web-shell .zone-tabs{background:#eef2f7;border-color:#dde3ec}.app-dark .desktop-web-shell .segmented-control button,.app-dark .desktop-web-shell .zone-tabs button{color:#64748b}.app-dark .desktop-web-shell .segmented-control button.is-active,.app-dark .desktop-web-shell .zone-tabs button.is-active,.app-dark .desktop-web-shell .goal-option-card.is-active{color:#312e81;background:#eef2ff;border-color:#c7d2fe;box-shadow:inset 0 0 0 1px #c7d2fe}.app-dark .desktop-web-shell .goal-option-card.is-active small,.app-dark .desktop-web-shell .hr-zone-trigger-status{color:#4338ca;background:#e0e7ff}.app-dark .desktop-web-shell .switch-control{background:#e2e8f0;border-color:#cbd5e1}.app-dark .desktop-web-shell .switch-control:after{background:#fff;box-shadow:0 4px 12px #0f172a29}.app-dark .desktop-web-shell .switch-control.is-on{background:#2473a6;border-color:#4338ca}.bottom-sheet-backdrop{z-index:40;padding:32px;align-items:center;justify-content:center;background:#0f172a5c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bottom-sheet,.app-dark .bottom-sheet{width:min(640px,100%);max-height:min(86vh,760px);margin:0;border:1px solid #dde3ec;border-radius:24px;padding:22px;color:#0f172a;background:#fffffffa;box-shadow:0 28px 80px #0f172a3d}.bottom-sheet.workout-sport-picker-sheet,.app-dark .bottom-sheet.workout-sport-picker-sheet{width:min(620px,100%)}.workout-sport-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-sheet.chat-sheet,.app-dark .bottom-sheet.chat-sheet{width:min(760px,100%)}.bottom-sheet.hr-zone-sheet,.app-dark .bottom-sheet.hr-zone-sheet{width:min(560px,100%)}.bottom-sheet.desktop-generation-sheet,.app-dark .bottom-sheet.desktop-generation-sheet{width:min(780px,100%);gap:18px}.desktop-generation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.desktop-generation-head h2{margin:2px 0 0;font-size:24px;line-height:1.15}.desktop-generation-kicker{margin:0;color:#347fb3;font-size:13px;font-weight:800}.desktop-generation-loading{display:flex;align-items:center;gap:16px;min-height:150px;padding:22px;border:1px solid #dde3ec;border-radius:18px;color:#0f172a;background:#f8fafc}.desktop-generation-loading strong{display:block;margin-bottom:4px;color:#0f172a;font-size:18px}.desktop-generation-loading p{margin:0;color:#64748b}.desktop-generation-spinner{width:34px;height:34px;flex:0 0 auto;border:3px solid #c7d2fe;border-top-color:#4338ca;border-radius:999px;animation:desktop-generation-spin .9s linear infinite}.bottom-sheet.desktop-generation-sheet .future-week-card,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card{border:1px solid #dde3ec;border-radius:18px;padding:16px;color:#0f172a;background:#fff;box-shadow:none}.bottom-sheet.desktop-generation-sheet .future-week-card h2,.bottom-sheet.desktop-generation-sheet .future-week-card p,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card h2,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card p{color:#0f172a}.bottom-sheet.desktop-generation-sheet .future-week-generate,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate{display:grid;gap:12px;padding:16px;border:1px solid #dde3ec;border-radius:18px;background:#fff}@keyframes desktop-generation-spin{to{transform:rotate(360deg)}}.bottom-sheet h2,.bottom-sheet h3,.bottom-sheet strong,.bottom-sheet p,.app-dark .bottom-sheet h2,.app-dark .bottom-sheet h3,.app-dark .bottom-sheet strong,.app-dark .bottom-sheet p{color:#0f172a}.bottom-sheet .muted,.bottom-sheet small,.bottom-sheet .segment-detail-lines,.app-dark .bottom-sheet .muted,.app-dark .bottom-sheet small,.app-dark .bottom-sheet .segment-detail-lines{color:#64748b}.bottom-sheet .segment,.app-dark .bottom-sheet .segment,.bottom-sheet .choice-card,.app-dark .bottom-sheet .choice-card{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.bottom-sheet .choice-card-icon,.app-dark .bottom-sheet .choice-card-icon{color:#4338ca;background:#eef2ff}.bottom-sheet .textarea,.bottom-sheet .input,.bottom-sheet .select,.app-dark .bottom-sheet .textarea,.app-dark .bottom-sheet .input,.app-dark .bottom-sheet .select{color:#0f172a;background-color:#fff;border-color:#dde3ec;color-scheme:light}.logout-confirm-dialog,.app-dark .logout-confirm-dialog{color:#0f172a;background:#fffffffa;border-color:#dde3ec;box-shadow:0 28px 80px #0f172a3d}.logout-confirm-dialog h2,.logout-confirm-dialog p,.app-dark .logout-confirm-dialog h2,.app-dark .logout-confirm-dialog p{color:#0f172a}.logout-confirm-dialog p,.app-dark .logout-confirm-dialog p{color:#64748b}.desktop-workout-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:34;display:flex;align-items:center;justify-content:center;padding:clamp(18px,3vw,42px);background:#0f172a3d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto;overscroll-behavior:contain}.desktop-workout-drawer{width:min(820px,56vw);min-width:min(620px,calc(100vw - 48px));height:min(90dvh,960px);overflow:auto;overscroll-behavior:contain;padding:22px 22px 32px;color:#0f172a;background:#fff;border:1px solid #dde3ec;border-radius:24px;box-shadow:0 30px 90px #0f172a3d}.desktop-workout-drawer.desktop-workout-drawer-editor{width:min(1180px,86vw);min-width:min(900px,calc(100vw - 48px));height:min(94dvh,1040px)}.desktop-workout-drawer .detail-screen,.desktop-workout-drawer .editor-screen,.desktop-workout-drawer .stack{max-width:none}.desktop-workout-drawer .screen-header,.desktop-workout-drawer .today-hero{display:none}.desktop-workout-drawer .card,.desktop-workout-drawer .dark-card,.desktop-workout-drawer .workout-card,.desktop-workout-drawer .segment,.desktop-workout-drawer .editor-block-card,.desktop-workout-drawer .editor-repeat-card{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 10px 26px #0f172a0d}.desktop-workout-drawer .editor-segment{border-left-color:#347fb3;background:linear-gradient(180deg,#347fb312,#ffffffb8),#fff}.desktop-workout-drawer .editor-segment-compact{border-left-color:#0ea5e9;background:linear-gradient(180deg,#0ea5e912,#ffffffd1),#fff}.desktop-workout-drawer .editor-segment-toggle{color:#0f172a}.desktop-workout-drawer .editor-segment-toggle small{color:#64748b}.desktop-workout-drawer .editor-repeat-box,.desktop-workout-drawer .editor-repeat-card{border-left-color:#0ea5e9}.desktop-workout-drawer .segment-repeat{border-color:#347fb357;background:linear-gradient(180deg,#347fb314,#fff6),#fff}.desktop-workout-drawer .segment-repeat-step{border-color:#e2e8f0;background:#f8fafc;box-shadow:none}.desktop-workout-drawer .segment-repeat-step-work{border-left-color:#347fb3}.desktop-workout-drawer .segment-repeat-step-rest{border-left-color:#60a5fa}.desktop-workout-drawer h1,.desktop-workout-drawer h2,.desktop-workout-drawer h3,.desktop-workout-drawer strong{color:#0f172a}.desktop-workout-drawer p,.desktop-workout-drawer small,.desktop-workout-drawer .muted,.desktop-workout-drawer .form-field>span,.desktop-workout-drawer .segment-detail-lines{color:#64748b}.desktop-workout-drawer .textarea,.desktop-workout-drawer .input,.desktop-workout-drawer .select{color:#0f172a;background-color:#fff;border-color:#dde3ec;color-scheme:light}.desktop-workout-drawer .select,.bottom-sheet .select,.app-dark .bottom-sheet .select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 23px) 50%,calc(100% - 15px) 50%;background-size:8px 8px,8px 8px;background-repeat:no-repeat}.desktop-workout-drawer .round-action,.desktop-workout-drawer .icon-button{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a12}.desktop-workout-drawer .detail-description,.desktop-workout-drawer .editor-section-title span,.desktop-workout-drawer .editor-mini-label,.desktop-workout-drawer .editor-repeat-summary,.desktop-workout-drawer .editor-rest-note span,.desktop-workout-drawer .choice-card small,.desktop-workout-drawer .date-picker-shell{color:#64748b}.desktop-workout-drawer .date-picker-shell,.desktop-workout-drawer .editor-segment,.desktop-workout-drawer .editor-repeat-box,.desktop-workout-drawer .editor-repeat-card{background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.desktop-workout-drawer .editor-segment-compact{background:#f8fafc}.desktop-workout-drawer .date-picker-shell input{color:#0f172a;-webkit-text-fill-color:#0f172a;background:transparent;color-scheme:light;opacity:1}.desktop-workout-drawer .date-picker-shell input::-webkit-calendar-picker-indicator{filter:none;opacity:.78}.desktop-workout-drawer .textarea::placeholder,.desktop-workout-drawer .input::placeholder,.desktop-workout-drawer .date-picker-shell input::placeholder{color:#94a3b8;-webkit-text-fill-color:#94a3b8}.desktop-workout-drawer .editor-choice-grid button{color:#64748b;background:#f8fafc;border-color:#dde3ec;box-shadow:none}.desktop-workout-drawer .editor-choice-grid button:hover{color:#0f172a;background:#fff;border-color:#cbd5e1}.desktop-workout-drawer .editor-choice-grid button.is-active{color:#312e81;background:#eef2ff;border-color:#78b7d3;box-shadow:inset 0 0 0 1px #c7d2fe}.desktop-workout-drawer .editor-repeat-toggle,.desktop-workout-drawer .editor-rest-note strong,.desktop-workout-drawer .editor-add-block-button{color:#0f172a}.desktop-workout-drawer .editor-repeat-title,.desktop-workout-drawer .editor-inline-action{color:#4338ca}.desktop-workout-drawer .editor-inline-action,.desktop-workout-drawer .editor-add-block-button{background:#eef2ff;border-color:#c7d2fe}.desktop-workout-drawer .editor-add-repeat-button{color:#075985;background:#e0f2fe;border-color:#bae6fd}.desktop-workout-drawer .editor-delete-button{color:#dc2626;background:#fff1f2;border-color:#fecdd3}.desktop-workout-drawer .btn{border-color:transparent;box-shadow:none}.desktop-workout-drawer .btn-primary{color:#fff;background:#111827;box-shadow:0 12px 26px #0f172a2e}.desktop-workout-drawer .btn-secondary,.desktop-workout-drawer .btn-ghost{color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe}.desktop-workout-drawer .btn-outline{color:#0f172a;background:#fff;border:1px solid #0f172a;opacity:1}.desktop-workout-drawer .btn-danger{color:#ef4444;background:#fee2e2;border:1px solid #fecaca}.desktop-workout-drawer .btn:disabled{opacity:1;color:#64748b;background:#f1f5f9;border-color:#dde3ec;box-shadow:none}.desktop-workout-drawer .btn-secondary:disabled,.desktop-workout-drawer .btn-ghost:disabled{color:#347fb3;background:#ede9fe;border-color:#b9d9ea}.desktop-workout-drawer .btn-danger:disabled{color:#dc2626;background:#fee2e2;border-color:#fecaca}.bottom-sheet .form-field>span,.app-dark .bottom-sheet .form-field>span,.bottom-sheet .editor-mini-label,.app-dark .bottom-sheet .editor-mini-label{color:#64748b}.bottom-sheet .chat-input-row textarea,.app-dark .bottom-sheet .chat-input-row textarea,.bottom-sheet .date-picker-shell,.app-dark .bottom-sheet .date-picker-shell{color:#0f172a;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.bottom-sheet .chat-input-row textarea::placeholder,.app-dark .bottom-sheet .chat-input-row textarea::placeholder{color:#94a3b8}.bottom-sheet .date-picker-shell input,.app-dark .bottom-sheet .date-picker-shell input{color:#0f172a;-webkit-text-fill-color:#0f172a;color-scheme:light}.bottom-sheet .select option,.app-dark .bottom-sheet .select option{color:#0f172a;background:#fff}.desktop-web-shell .btn,.app-dark .desktop-web-shell .btn,.desktop-workout-drawer .btn,.bottom-sheet .btn,.app-dark .bottom-sheet .btn,.logout-confirm-dialog .btn,.app-dark .logout-confirm-dialog .btn{opacity:1;border:1px solid transparent;box-shadow:none}.desktop-web-shell .btn-primary,.app-dark .desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.app-dark .bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary,.app-dark .logout-confirm-dialog .btn-primary{color:#fff;background:#111827;border-color:#111827;box-shadow:0 12px 26px #0f172a2e}.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost,.app-dark .desktop-web-shell .btn-secondary,.app-dark .desktop-web-shell .btn-ghost,.desktop-workout-drawer .btn-secondary,.desktop-workout-drawer .btn-ghost,.bottom-sheet .btn-secondary,.bottom-sheet .btn-ghost,.app-dark .bottom-sheet .btn-secondary,.app-dark .bottom-sheet .btn-ghost,.logout-confirm-dialog .btn-secondary,.logout-confirm-dialog .btn-ghost,.app-dark .logout-confirm-dialog .btn-secondary,.app-dark .logout-confirm-dialog .btn-ghost{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.desktop-web-shell .btn-outline,.app-dark .desktop-web-shell .btn-outline,.desktop-workout-drawer .btn-outline,.bottom-sheet .btn-outline,.app-dark .bottom-sheet .btn-outline,.logout-confirm-dialog .btn-outline,.app-dark .logout-confirm-dialog .btn-outline{color:#0f172a;background:#fff;border-color:#0f172a}.desktop-web-shell .btn-danger,.app-dark .desktop-web-shell .btn-danger,.desktop-workout-drawer .btn-danger,.bottom-sheet .btn-danger,.app-dark .bottom-sheet .btn-danger,.logout-confirm-dialog .btn-danger,.app-dark .logout-confirm-dialog .btn-danger{color:#dc2626;background:#fee2e2;border-color:#fecaca}.desktop-web-shell .btn:disabled,.app-dark .desktop-web-shell .btn:disabled,.desktop-workout-drawer .btn:disabled,.bottom-sheet .btn:disabled,.app-dark .bottom-sheet .btn:disabled,.logout-confirm-dialog .btn:disabled,.app-dark .logout-confirm-dialog .btn:disabled{opacity:1;color:#64748b;background:#f1f5f9;border-color:#dde3ec;box-shadow:none}.desktop-web-shell .text-action,.app-dark .desktop-web-shell .text-action,.desktop-workout-drawer .text-action,.bottom-sheet .text-action,.app-dark .bottom-sheet .text-action,.logout-confirm-dialog .text-action,.app-dark .logout-confirm-dialog .text-action{color:#4338ca}.app-dark{color:var(--text-dark);background:radial-gradient(circle at 80% 0%,rgba(52,127,179,.16),transparent 32%),linear-gradient(180deg,#10151d,#121821)}.app-dark .desktop-side-tabs,.app-dark .desktop-calendar-toolbar,.app-dark .desktop-week-row,.app-dark .desktop-web-shell .card,.app-dark .desktop-web-shell .dark-card,.app-dark .desktop-web-shell .more-card,.app-dark .desktop-web-shell .progress-period-section,.app-dark .desktop-web-shell .chat-panel-screen,.app-dark .desktop-web-shell .profile-compact-section,.app-dark .desktop-web-shell .profile-details-card .training-zones-section,.app-dark .bottom-sheet,.app-dark .logout-confirm-dialog,.app-dark .desktop-workout-drawer{color:var(--text-dark);background:linear-gradient(180deg,#202833f7,#181e27f7);border-color:var(--border-dark);box-shadow:var(--shadow-dark)}.app-dark .desktop-workout-drawer{background:#181e27}.app-dark .desktop-web-shell h1,.app-dark .desktop-web-shell h2,.app-dark .desktop-web-shell h3,.app-dark .desktop-web-shell strong,.app-dark .bottom-sheet h2,.app-dark .bottom-sheet h3,.app-dark .bottom-sheet strong,.app-dark .logout-confirm-dialog h2,.app-dark .logout-confirm-dialog strong,.app-dark .desktop-workout-drawer h1,.app-dark .desktop-workout-drawer h2,.app-dark .desktop-workout-drawer h3,.app-dark .desktop-workout-drawer strong{color:var(--text-dark)}.app-dark .desktop-web-shell p,.app-dark .desktop-web-shell .muted,.app-dark .desktop-web-shell .card p,.app-dark .desktop-web-shell .list-row-main span,.app-dark .desktop-web-shell .profile-row span,.app-dark .desktop-web-shell .connections-header p,.app-dark .desktop-web-shell .connections-category-head p,.app-dark .desktop-web-shell .connection-card small,.app-dark .desktop-web-shell .form-field>span,.app-dark .desktop-web-shell .zone-range-row,.app-dark .desktop-web-shell .zone-range-row span,.app-dark .desktop-web-shell .zone-range-row em,.app-dark .desktop-web-shell .zone-range-row small,.app-dark .bottom-sheet .muted,.app-dark .bottom-sheet small,.app-dark .logout-confirm-dialog p,.app-dark .desktop-workout-drawer p,.app-dark .desktop-workout-drawer small,.app-dark .desktop-workout-drawer .muted,.app-dark .desktop-workout-drawer .form-field>span{color:var(--muted-dark)}.app-dark .desktop-side-tabs button{color:var(--muted-dark)}.app-dark .desktop-side-tabs button:hover,.app-dark .desktop-side-tabs button.active{color:var(--text-dark);background:#347fb32e;border-color:#347fb352}.app-dark .desktop-week-row-head,.app-dark .desktop-week-day,.app-dark .desktop-workout-card,.app-dark .desktop-race-card,.app-dark .desktop-web-shell .progress-history-summary-item,.app-dark .desktop-web-shell .progress-sport-total,.app-dark .desktop-web-shell .progress-workout-row,.app-dark .desktop-web-shell .progress-period-metrics span,.app-dark .desktop-web-shell .goal-option-card,.app-dark .desktop-web-shell .switch-row,.app-dark .desktop-web-shell .zone-card,.app-dark .desktop-web-shell .zone-card-title,.app-dark .desktop-web-shell .hr-zone-trigger,.app-dark .desktop-web-shell .hr-zone-current,.app-dark .desktop-web-shell .date-picker-shell,.app-dark .desktop-web-shell .event-summary-strip,.app-dark .desktop-web-shell .event-list-header,.app-dark .desktop-web-shell .event-archive-toggle,.app-dark .desktop-web-shell .race-event-card,.app-dark .desktop-web-shell .race-empty-state,.app-dark .desktop-web-shell .connection-card,.app-dark .bottom-sheet .segment,.app-dark .bottom-sheet .choice-card,.app-dark .desktop-workout-drawer .card,.app-dark .desktop-workout-drawer .dark-card,.app-dark .desktop-workout-drawer .editor-segment,.app-dark .desktop-workout-drawer .editor-repeat-box,.app-dark .desktop-workout-drawer .editor-repeat-card{color:var(--text-dark);background:#ffffff0e;border-color:var(--border-dark);box-shadow:none}.app-dark .desktop-web-shell .textarea,.app-dark .desktop-web-shell .input,.app-dark .desktop-web-shell .select,.app-dark .desktop-web-shell .date-picker-shell input,.app-dark .bottom-sheet .textarea,.app-dark .bottom-sheet .input,.app-dark .bottom-sheet .select,.app-dark .desktop-workout-drawer .textarea,.app-dark .desktop-workout-drawer .input,.app-dark .desktop-workout-drawer .select{color:var(--text-dark);background:#ffffff0e;border-color:var(--border-dark);color-scheme:dark;box-shadow:none}.app-dark .desktop-web-shell .btn-primary,.app-dark .bottom-sheet .btn-primary,.app-dark .logout-confirm-dialog .btn-primary,.app-dark .desktop-workout-drawer .btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:#347fb38c;box-shadow:0 14px 34px #347fb347}.app-dark .desktop-web-shell .btn-secondary,.app-dark .desktop-web-shell .btn-ghost,.app-dark .bottom-sheet .btn-secondary,.app-dark .bottom-sheet .btn-ghost,.app-dark .desktop-workout-drawer .btn-secondary,.app-dark .desktop-workout-drawer .btn-ghost{color:#b9d9ea;background:#347fb32e;border-color:#347fb347}.app-dark .desktop-web-shell .btn-outline,.app-dark .bottom-sheet .btn-outline,.app-dark .desktop-workout-drawer .btn-outline{color:var(--text-dark);background:transparent;border-color:#ffffff52}}@media(min-width:1024px){.app-shell.app-dark{--desktop-dark-bg: #080d18;--desktop-dark-panel: rgba(18, 25, 38, .94);--desktop-dark-panel-strong: rgba(24, 33, 48, .98);--desktop-dark-panel-soft: rgba(255, 255, 255, .055);--desktop-dark-border: rgba(148, 163, 184, .2);--desktop-dark-border-strong: rgba(148, 163, 184, .32);--desktop-dark-text: #f8fafc;--desktop-dark-muted: #9aa7ba;--desktop-dark-muted-strong: #cbd5e1;color:var(--desktop-dark-text);background:radial-gradient(circle at 82% 0%,rgba(52,127,179,.14),transparent 32%),linear-gradient(180deg,#080d18,#0b1220 48%,#0a0f1a)}.app-dark .desktop-web-shell,.app-dark .desktop-web-main,.app-dark .desktop-web-content{color:var(--desktop-dark-text)}.app-dark .desktop-side-tabs,.app-dark .desktop-calendar-toolbar,.app-dark .desktop-week-row,.app-dark .desktop-web-shell .card,.app-dark .desktop-web-shell .dark-card,.app-dark .desktop-web-shell .more-card,.app-dark .desktop-web-shell .progress-period-section,.app-dark .desktop-web-shell .progress-history-chart-card,.app-dark .desktop-web-shell .chat-panel-screen,.app-dark .desktop-web-shell .connections-card,.app-dark .desktop-web-shell .profile-details-card,.app-dark .desktop-web-shell .profile-compact-section,.app-dark .desktop-web-shell .profile-details-card .training-zones-section,.app-dark .desktop-workout-drawer,.app-dark .bottom-sheet,.app-dark .logout-confirm-dialog,.app-dark .auth-panel{color:var(--desktop-dark-text);background:linear-gradient(180deg,#ffffff09,#ffffff03),var(--desktop-dark-panel);border-color:var(--desktop-dark-border);box-shadow:0 22px 58px #00000057}.app-dark .auth-screen{background:radial-gradient(circle at 78% 4%,rgba(52,127,179,.16),transparent 30%),linear-gradient(180deg,#080d18,#0b1220)}.app-dark .desktop-web-shell h1,.app-dark .desktop-web-shell h2,.app-dark .desktop-web-shell h3,.app-dark .desktop-web-shell h4,.app-dark .desktop-web-shell strong,.app-dark .desktop-calendar-title h1,.app-dark .desktop-week-row-head strong,.app-dark .desktop-workout-meta strong,.app-dark .desktop-web-shell .profile-section-title,.app-dark .desktop-web-shell .profile-details-header h2,.app-dark .desktop-web-shell .progress-period-head h2,.app-dark .desktop-web-shell .progress-workout-main strong,.app-dark .desktop-web-shell .settings-row strong,.app-dark .desktop-web-shell .connection-main strong,.app-dark .desktop-workout-drawer h1,.app-dark .desktop-workout-drawer h2,.app-dark .desktop-workout-drawer h3,.app-dark .desktop-workout-drawer h4,.app-dark .desktop-workout-drawer strong,.app-dark .bottom-sheet h2,.app-dark .bottom-sheet h3,.app-dark .bottom-sheet strong,.app-dark .logout-confirm-dialog h2,.app-dark .logout-confirm-dialog strong,.app-dark .auth-panel h1,.app-dark .auth-panel h2,.app-dark .auth-panel strong{color:var(--desktop-dark-text)}.app-dark .desktop-web-shell p,.app-dark .desktop-web-shell .muted,.app-dark .desktop-calendar-title p,.app-dark .desktop-week-row-head span,.app-dark .desktop-week-note,.app-dark .desktop-week-day-head span,.app-dark .desktop-workout-main small,.app-dark .desktop-workout-meta,.app-dark .desktop-race-card small,.app-dark .desktop-web-shell .form-field>span,.app-dark .desktop-web-shell .list-row-main span,.app-dark .desktop-web-shell .profile-row span,.app-dark .desktop-web-shell .settings-row span,.app-dark .desktop-web-shell .connection-card small,.app-dark .desktop-web-shell .connections-header p,.app-dark .desktop-web-shell .connections-category-head p,.app-dark .desktop-web-shell .progress-period-head p,.app-dark .desktop-web-shell .progress-period-metrics,.app-dark .desktop-web-shell .progress-period-metrics span,.app-dark .desktop-web-shell .progress-workout-main span,.app-dark .desktop-web-shell .progress-workout-row time,.app-dark .desktop-web-shell .goal-option-card small,.app-dark .desktop-web-shell .zone-range-row,.app-dark .desktop-web-shell .zone-range-row span,.app-dark .desktop-web-shell .zone-range-row em,.app-dark .desktop-web-shell .zone-range-row small,.app-dark .desktop-workout-drawer p,.app-dark .desktop-workout-drawer small,.app-dark .desktop-workout-drawer .muted,.app-dark .desktop-workout-drawer .form-field>span,.app-dark .desktop-workout-drawer .detail-description,.app-dark .desktop-workout-drawer .segment-detail-lines,.app-dark .bottom-sheet p,.app-dark .bottom-sheet small,.app-dark .bottom-sheet .muted,.app-dark .bottom-sheet .segment-detail-lines,.app-dark .logout-confirm-dialog p,.app-dark .auth-heading p,.app-dark .auth-field{color:var(--desktop-dark-muted)}.app-dark .desktop-side-tabs button,.app-dark .desktop-top-tabs button,.app-dark .desktop-web-shell .progress-history-tabs button,.app-dark .desktop-web-shell .progress-metric-tabs button,.app-dark .desktop-web-shell .zone-tabs button,.app-dark .desktop-web-shell .segmented-control button,.app-dark .desktop-web-shell .period-select,.app-dark .desktop-web-shell .autosave-status{color:var(--desktop-dark-muted)}.app-dark .desktop-side-tabs button:hover,.app-dark .desktop-side-tabs button.active,.app-dark .desktop-top-tabs button:hover,.app-dark .desktop-top-tabs button.active,.app-dark .desktop-web-shell .progress-history-tabs button.active,.app-dark .desktop-web-shell .progress-metric-tabs button.active,.app-dark .desktop-web-shell .zone-tabs button.is-active,.app-dark .desktop-web-shell .segmented-control button.is-active{color:var(--desktop-dark-text);background:#347fb32e;border-color:#a78bfa61;box-shadow:inset 0 0 0 1px #a78bfa38}.app-dark .desktop-week-row-head,.app-dark .desktop-week-note,.app-dark .desktop-top-tabs,.app-dark .desktop-web-shell .progress-history-tabs,.app-dark .desktop-web-shell .progress-metric-tabs,.app-dark .desktop-web-shell .segmented-control,.app-dark .desktop-web-shell .zone-tabs,.app-dark .desktop-web-shell .progress-history-summary-item,.app-dark .desktop-web-shell .progress-sport-total,.app-dark .desktop-web-shell .progress-workout-row,.app-dark .desktop-web-shell .settings-row,.app-dark .desktop-web-shell .profile-row,.app-dark .desktop-web-shell .list-row,.app-dark .desktop-web-shell .connection-card,.app-dark .desktop-web-shell .goal-option-card,.app-dark .desktop-web-shell .switch-row,.app-dark .desktop-web-shell .zone-card,.app-dark .desktop-web-shell .zone-card-title,.app-dark .desktop-web-shell .hr-zone-trigger,.app-dark .desktop-web-shell .hr-zone-current,.app-dark .desktop-web-shell .event-card,.app-dark .desktop-web-shell .help-list p,.app-dark .desktop-web-shell .date-picker-shell,.app-dark .desktop-web-shell .event-summary-strip,.app-dark .desktop-web-shell .event-list-header,.app-dark .desktop-web-shell .event-archive-toggle,.app-dark .desktop-web-shell .race-event-card,.app-dark .desktop-web-shell .race-empty-state,.app-dark .desktop-workout-drawer .card,.app-dark .desktop-workout-drawer .dark-card,.app-dark .desktop-workout-drawer .workout-card,.app-dark .desktop-workout-drawer .segment,.app-dark .desktop-workout-drawer .editor-block-card,.app-dark .desktop-workout-drawer .editor-repeat-card,.app-dark .bottom-sheet .segment,.app-dark .bottom-sheet .choice-card,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate{color:var(--desktop-dark-text);background:var(--desktop-dark-panel-soft);border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .desktop-web-shell .progress-workout-row time{color:var(--desktop-dark-muted-strong);background:#94a3b81f;border:1px solid rgba(148,163,184,.18)}.app-dark .desktop-week-row-head,.app-dark .desktop-week-note{border-bottom-color:var(--desktop-dark-border)}.app-dark .desktop-week-day{color:var(--desktop-dark-text);background:linear-gradient(180deg,#1e293b9e,#0f172ab8),#101827;border-color:var(--desktop-dark-border)}.app-dark .desktop-week-day-weekend{background:linear-gradient(180deg,#1e293b7a,#0f172ad1),#0f172a}.app-dark .desktop-week-day-today{background:linear-gradient(180deg,#2563eb2e,#0f172acc),#101827;box-shadow:inset 0 0 0 2px #60a5fa3d}.app-dark .desktop-week-day-drop-target{background:linear-gradient(180deg,#2563eb4d,#0f172ad1),#101827;box-shadow:inset 0 0 0 2px #60a5fa73}.app-dark .desktop-week-day-head strong{color:var(--desktop-dark-text)}.app-dark .desktop-week-day-today .desktop-week-day-head strong{color:#fff;background:#2563eb}.app-dark .desktop-week-day-add,.app-dark .desktop-calendar-nav,.app-dark .desktop-day-actions button,.app-dark .desktop-workout-actions button,.app-dark .desktop-web-shell .round-action,.app-dark .desktop-web-shell .icon-button,.app-dark .desktop-workout-drawer .round-action,.app-dark .desktop-workout-drawer .icon-button,.app-dark .builder-inspector-actions button,.app-dark .builder-row-actions button,.app-dark .builder-small-danger{color:var(--desktop-dark-muted-strong);background:#fff1;border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .desktop-week-day-add:hover,.app-dark .desktop-calendar-nav:hover,.app-dark .desktop-day-actions button:hover,.app-dark .desktop-workout-actions button:hover,.app-dark .desktop-web-shell .round-action:hover,.app-dark .desktop-web-shell .icon-button:hover,.app-dark .desktop-workout-drawer .round-action:hover,.app-dark .desktop-workout-drawer .icon-button:hover{color:var(--desktop-dark-text);background:#347fb32e;border-color:#a78bfa66}.app-dark .desktop-workout-card,.app-dark .desktop-race-card{color:var(--desktop-dark-text);background:#0f172ac2;border-color:var(--desktop-dark-border);box-shadow:0 10px 24px #0000002e}.app-dark .desktop-workout-planned{border-left-color:#347fb3}.app-dark .desktop-workout-completed{border-left-color:#22c55e;background:#16a34a24}.app-dark .desktop-workout-skipped,.app-dark .desktop-workout-cancelled{border-left-color:#fb7185;background:#f43f5e24}.app-dark .desktop-workout-chart .chart-baseline{border-top-color:#cbd5e13d}.app-dark .desktop-race-card{border-color:#22c55e52;background:#22c55e1f}.app-dark .desktop-empty-day{color:#b9d9ea;background:#347fb31f;border-color:#a78bfa4d}.app-dark .desktop-calendar-title-icon,.app-dark .desktop-web-shell .list-row-icon,.app-dark .desktop-web-shell .more-icon,.app-dark .desktop-web-shell .events-hero-icon,.app-dark .desktop-web-shell .form-card-icon,.app-dark .desktop-web-shell .progress-metric>span,.app-dark .bottom-sheet .choice-card-icon,.app-dark .auth-icon{color:#b9d9ea;background:#347fb32e;border-color:#a78bfa52}.app-dark .desktop-web-shell .more-icon-logout{color:#fecdd3;background:#f43f5e24;border-color:#fb718547}.app-dark .desktop-web-shell .textarea,.app-dark .desktop-web-shell .input,.app-dark .desktop-web-shell .select,.app-dark .desktop-web-shell .date-picker-shell input,.app-dark .desktop-web-shell .zone-range-row input,.app-dark .desktop-web-shell .chat-input-row textarea,.app-dark .desktop-workout-drawer .textarea,.app-dark .desktop-workout-drawer .input,.app-dark .desktop-workout-drawer .select,.app-dark .desktop-workout-drawer .date-picker-shell input,.app-dark .bottom-sheet .textarea,.app-dark .bottom-sheet .input,.app-dark .bottom-sheet .select,.app-dark .bottom-sheet .date-picker-shell,.app-dark .bottom-sheet .date-picker-shell input,.app-dark .auth-field input{color:var(--desktop-dark-text);-webkit-text-fill-color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border);color-scheme:dark;box-shadow:none}.app-dark .desktop-web-shell .textarea::placeholder,.app-dark .desktop-web-shell .input::placeholder,.app-dark .desktop-web-shell .chat-input-row textarea::placeholder,.app-dark .desktop-workout-drawer .textarea::placeholder,.app-dark .desktop-workout-drawer .input::placeholder,.app-dark .bottom-sheet .textarea::placeholder,.app-dark .bottom-sheet .input::placeholder,.app-dark .auth-field input::placeholder{color:#cbd5e180;-webkit-text-fill-color:rgba(203,213,225,.5)}.app-dark .desktop-web-shell .select option,.app-dark .desktop-workout-drawer .select option,.app-dark .bottom-sheet .select option{color:var(--desktop-dark-text);background:#111827}.app-dark .desktop-web-shell .switch-control{background:#4755699e;border-color:var(--desktop-dark-border)}.app-dark .desktop-web-shell .switch-control:after{background:#e5e7eb;box-shadow:0 4px 12px #0000003d}.app-dark .desktop-web-shell .switch-control.is-on{background:#2473a6;border-color:#a78bfa80}.app-dark .desktop-web-shell .btn,.app-dark .desktop-workout-drawer .btn,.app-dark .bottom-sheet .btn,.app-dark .logout-confirm-dialog .btn{opacity:1;box-shadow:none}.app-dark .desktop-web-shell .btn-primary,.app-dark .desktop-workout-drawer .btn-primary,.app-dark .bottom-sheet .btn-primary,.app-dark .logout-confirm-dialog .btn-primary{color:#fff;background:linear-gradient(135deg,#347fb3,#2563eb);border-color:#a78bfa80;box-shadow:0 14px 32px #4f46e547}.app-dark .desktop-web-shell .btn-secondary,.app-dark .desktop-web-shell .btn-ghost,.app-dark .desktop-workout-drawer .btn-secondary,.app-dark .desktop-workout-drawer .btn-ghost,.app-dark .bottom-sheet .btn-secondary,.app-dark .bottom-sheet .btn-ghost,.app-dark .logout-confirm-dialog .btn-secondary,.app-dark .logout-confirm-dialog .btn-ghost{color:#b9d9ea;background:#347fb329;border-color:#a78bfa4d}.app-dark .desktop-web-shell .btn-outline,.app-dark .desktop-workout-drawer .btn-outline,.app-dark .bottom-sheet .btn-outline,.app-dark .logout-confirm-dialog .btn-outline{color:var(--desktop-dark-text);background:transparent;border-color:var(--desktop-dark-border-strong)}.app-dark .desktop-web-shell .btn-danger,.app-dark .desktop-workout-drawer .btn-danger,.app-dark .bottom-sheet .btn-danger,.app-dark .logout-confirm-dialog .btn-danger{color:#fecdd3;background:#f43f5e24;border-color:#fb71854d}.app-dark .desktop-web-shell .btn:disabled,.app-dark .desktop-workout-drawer .btn:disabled,.app-dark .bottom-sheet .btn:disabled,.app-dark .logout-confirm-dialog .btn:disabled{color:#cbd5e18c;background:#47556940;border-color:#94a3b829;box-shadow:none}.app-dark .desktop-workout-drawer-backdrop,.app-dark .bottom-sheet-backdrop{background:#02061794;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-dark .workout-builder-top,.app-dark .workout-builder-date,.app-dark .workout-builder-sport-tabs,.app-dark .workout-builder-totals,.app-dark .builder-chart-card,.app-dark .builder-inspector-card,.app-dark .builder-outline-head,.app-dark .builder-control-card,.app-dark .builder-workout-note,.app-dark .builder-outline-row,.app-dark .builder-repeat-row,.app-dark .builder-repeat-step,.app-dark .builder-add-step,.app-dark .builder-add-actions button,.app-dark .workout-type-panel,.app-dark .workout-goal-panel,.app-dark .workout-type-trigger,.app-dark .builder-kind-trigger,.app-dark .builder-kind-menu,.app-dark .builder-target-preset,.app-dark .builder-target-calculation,.app-dark .builder-zone-list button,.app-dark .builder-rpe-stepper,.app-dark .builder-time-inputs label,.app-dark .builder-time-actions button,.app-dark .builder-stepper button,.app-dark .builder-stepper input{color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .workout-builder-title-field input,.app-dark .workout-builder-date input,.app-dark .builder-workout-note textarea,.app-dark .builder-percent-stepper-value input,.app-dark .builder-time-inputs input{color:var(--desktop-dark-text);-webkit-text-fill-color:var(--desktop-dark-text);background:#ffffff0e;border-color:var(--desktop-dark-border);color-scheme:dark}.app-dark .workout-builder-title-field span,.app-dark .workout-builder-totals span,.app-dark .builder-chart-head span,.app-dark .builder-inspector-head span,.app-dark .builder-outline-head span,.app-dark .builder-kind-picker>span,.app-dark .builder-target-preset-head small,.app-dark .builder-percent-stepper>span,.app-dark .builder-percent-basis,.app-dark .builder-target-calculation span,.app-dark .builder-target-calculation small,.app-dark .builder-workout-note>span,.app-dark .builder-stepper>span,.app-dark .builder-time-inputs span,.app-dark .builder-row-main small,.app-dark .builder-repeat-row>p,.app-dark .builder-zone-list span{color:var(--desktop-dark-muted)}.app-dark .workout-builder-totals strong,.app-dark .builder-chart-head strong,.app-dark .builder-inspector-head h2,.app-dark .builder-outline-head h2,.app-dark .builder-row-main,.app-dark .builder-row-main strong,.app-dark .builder-repeat-title,.app-dark .builder-repeat-title span,.app-dark .builder-repeat-count strong,.app-dark .builder-zone-list strong,.app-dark .builder-target-preset-head strong,.app-dark .builder-target-calculation strong,.app-dark .builder-rpe-stepper strong,.app-dark .workout-type-trigger strong,.app-dark .workout-type-menu strong,.app-dark .workout-sport-picker-card strong,.app-dark .builder-kind-menu strong{color:var(--desktop-dark-text)}.app-dark .builder-chart{background:linear-gradient(180deg,#1e293b6b,#0f172ab3),#101827;border-color:var(--desktop-dark-border)}.app-dark .builder-chart-bar span{color:var(--desktop-dark-muted-strong)}.app-dark .builder-repeat-count{background:#1e293bd9;border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .builder-repeat-count button{color:var(--desktop-dark-muted-strong);background:#ffffff14}.app-dark .builder-outline-row.is-selected,.app-dark .builder-repeat-step.is-selected,.app-dark .builder-repeat-row.has-selection,.app-dark .builder-zone-list button.is-active{border-color:#60a5fabd;background:#2563eb29;box-shadow:0 10px 24px #2563eb29}.app-dark .workout-type-menu{background:#111827;border-color:var(--desktop-dark-border);box-shadow:0 24px 60px #0000006b}.app-dark .workout-type-menu button,.app-dark .builder-kind-menu button{color:var(--desktop-dark-text);background:transparent}.app-dark .workout-type-menu button:hover,.app-dark .workout-type-menu button.is-active,.app-dark .builder-kind-menu button:hover,.app-dark .builder-kind-menu button.is-active{background:#347fb329;border-color:#a78bfa57}.app-dark .builder-target-zone-scale{background:#1e293bd6}.app-dark .builder-percent-stepper>div{color:var(--desktop-dark-text);border-color:var(--desktop-dark-border);background:#ffffff12}.app-dark .builder-percent-stepper{color:var(--desktop-dark-muted);border-color:var(--desktop-dark-border);background:#0f172ab8}.app-dark .builder-percent-stepper button{color:var(--desktop-dark-text);border-color:var(--desktop-dark-border);background:#ffffff12}.app-dark .builder-percent-stepper button:hover{color:#93c5fd;border-color:#60a5fa7a;background:#2563eb29}.app-dark .builder-percent-stepper-value small{color:var(--desktop-dark-muted)}.app-dark .builder-target-zone-scale button{background:color-mix(in srgb,var(--target-zone-color, #94a3b8) 22%,#111827)}.app-dark .builder-target-zone-scale button.is-active{color:#fff;background:var(--target-zone-color, #64748b);box-shadow:0 0 0 2px #111827,0 0 0 4px #e2e8f0}.app-dark .workout-sport-picker-card{color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border)}.app-dark .completed-metric-tile,.app-dark .completed-streams,.app-dark .completed-streams-empty,.app-dark .workout-fact-plan,.app-dark .workout-fact-input{color:var(--desktop-dark-text);background:#0f172aa8;border-color:var(--desktop-dark-border)}.app-dark .completed-lap-header{background:#0f172af5;color:var(--desktop-dark-muted)}.app-dark .completed-lap-row{color:var(--desktop-dark-muted)}.app-dark .completed-lap-row strong{color:var(--desktop-dark-text)}.app-dark .completed-streams-legend button{color:var(--desktop-dark-muted);background:#ffffff12}.app-dark .completed-streams-legend button.is-active{color:var(--desktop-dark-text);background:#ffffff29}.app-dark .stream-hover-line{stroke:#e2e8f080}.app-dark .desktop-generation-loading{color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border)}.app-dark .desktop-generation-loading strong{color:var(--desktop-dark-text)}.app-dark .desktop-generation-loading p{color:var(--desktop-dark-muted)}.app-dark .desktop-web-shell .future-week-card,.app-dark .desktop-web-shell .future-week-card .segment,.app-dark .desktop-web-shell .manual-week-notice,.app-dark .desktop-web-shell .preview-issues{color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border)}.app-dark .desktop-web-shell .future-week-card h2,.app-dark .desktop-web-shell .future-week-card p,.app-dark .desktop-web-shell .manual-week-notice p,.app-dark .desktop-web-shell .preview-issues span{color:var(--desktop-dark-text)}.app-dark .desktop-web-shell .future-week-card .muted,.app-dark .desktop-web-shell .future-week-card .segment .muted,.app-dark .desktop-web-shell .preview-empty-row strong{color:var(--desktop-dark-muted)}.app-dark .desktop-calendar-message{color:#fecdd3;background:#f43f5e24;border-color:#fb718547}.app-dark .desktop-calendar-loading,.app-dark .desktop-calendar-footnote,.app-dark .desktop-empty-plan-banner{color:var(--desktop-dark-muted);background:#0f172ab8;border-color:var(--desktop-dark-border)}.app-dark .desktop-web-shell .events-hero-card,.app-dark .desktop-web-shell .event-form-card,.app-dark .desktop-web-shell .profile-equipment-section,.app-dark .desktop-web-shell .profile-details-card .profile-compact-section,.app-dark .desktop-web-shell .profile-details-card .training-zones-section{color:var(--desktop-dark-text);background:var(--desktop-dark-panel-soft);border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .desktop-web-shell .profile-details-header h2,.app-dark .desktop-web-shell .profile-section-heading .profile-section-title,.app-dark .desktop-web-shell .events-hero-card h2,.app-dark .desktop-web-shell .event-form-card h2,.app-dark .desktop-web-shell .event-card strong,.app-dark .desktop-web-shell .help-list strong,.app-dark .desktop-web-shell .goal-option-card,.app-dark .desktop-web-shell .hr-zone-trigger strong,.app-dark .desktop-web-shell .hr-zone-current strong,.app-dark .desktop-web-shell .zone-card-title,.app-dark .desktop-web-shell .race-empty-state strong,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card h2,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card h3,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card strong,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate h2,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate h3,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate strong{color:var(--desktop-dark-text)}.app-dark .desktop-web-shell .profile-details-header p,.app-dark .desktop-web-shell .profile-section-heading p,.app-dark .desktop-web-shell .events-hero-card p,.app-dark .desktop-web-shell .event-form-card p,.app-dark .desktop-web-shell .event-card span,.app-dark .desktop-web-shell .help-list span,.app-dark .desktop-web-shell .goal-option-card small,.app-dark .desktop-web-shell .zone-collapsed-hint,.app-dark .desktop-web-shell .hr-zone-trigger span,.app-dark .desktop-web-shell .hr-zone-current span,.app-dark .desktop-web-shell .hr-zone-current small,.app-dark .desktop-web-shell .profile-details-card .form-field>span,.app-dark .desktop-web-shell .profile-details-card .zone-range-row,.app-dark .desktop-web-shell .profile-details-card .zone-range-row span,.app-dark .desktop-web-shell .profile-details-card .zone-range-row em,.app-dark .desktop-web-shell .profile-details-card .zone-range-row small,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card p,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card .muted,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-card .segment .muted,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate p,.app-dark .bottom-sheet.desktop-generation-sheet .future-week-generate .muted{color:var(--desktop-dark-muted)}.app-dark .desktop-web-shell .profile-details-card .input,.app-dark .desktop-web-shell .profile-details-card .select,.app-dark .desktop-web-shell .profile-details-card .textarea.compact,.app-dark .desktop-web-shell .profile-details-card .zone-range-row input{color:var(--desktop-dark-text);-webkit-text-fill-color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border);color-scheme:dark;box-shadow:none}.app-dark .desktop-web-shell .profile-sex-control,.app-dark .desktop-web-shell .profile-details-card .segmented-control,.app-dark .desktop-web-shell .profile-equipment-grid .switch-row,.app-dark .desktop-web-shell .profile-details-card .zone-tabs,.app-dark .desktop-web-shell .profile-details-card .zone-card{color:var(--desktop-dark-text);background:#0f172ab8;border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .desktop-workout-drawer .editor-choice-grid button{color:var(--desktop-dark-muted);background:#0f172ab8;border-color:var(--desktop-dark-border);box-shadow:none}.app-dark .desktop-workout-drawer .editor-choice-grid button:hover,.app-dark .desktop-workout-drawer .editor-choice-grid button.is-active{color:var(--desktop-dark-text);background:#347fb32e;border-color:#a78bfa6b;box-shadow:inset 0 0 0 1px #a78bfa38}.app-dark .desktop-workout-drawer .editor-add-block-button,.app-dark .desktop-workout-drawer .editor-inline-action{color:#b9d9ea;background:#347fb329;border-color:#a78bfa4d}.app-dark .desktop-workout-drawer .editor-add-repeat-button{color:#bae6fd;background:#0ea5e924;border-color:#38bdf84d}.app-dark .desktop-workout-drawer .editor-delete-button{color:#fecdd3;background:#f43f5e24;border-color:#fb71854d}}@media(min-width:1024px){.app-shell.app-dark{--desktop-dark-bg: #060911;--desktop-dark-shell: #090e18;--desktop-dark-panel: rgba(17, 24, 39, .96);--desktop-dark-panel-strong: rgba(21, 29, 43, .98);--desktop-dark-panel-soft: rgba(255, 255, 255, .045);--desktop-dark-card: rgba(13, 20, 34, .96);--desktop-dark-card-hover: rgba(17, 27, 44, .98);--desktop-dark-grid: rgba(100, 116, 139, .18);--desktop-dark-border: rgba(148, 163, 184, .16);--desktop-dark-border-strong: rgba(148, 163, 184, .28);--desktop-dark-text: #f3f6fb;--desktop-dark-muted: #8f9daf;--desktop-dark-muted-strong: #c0cada;--desktop-dark-primary: #7dd3fc;--desktop-dark-primary-2: #78b7d3;background:radial-gradient(circle at 78% -8%,rgba(56,189,248,.08),transparent 28%),radial-gradient(circle at 8% 8%,rgba(124,58,237,.08),transparent 26%),linear-gradient(180deg,var(--desktop-dark-bg) 0%,var(--desktop-dark-shell) 100%)}.app-dark .desktop-web-shell{background:transparent}.app-dark .desktop-web-topbar{color:var(--desktop-dark-text);background:linear-gradient(180deg,#ffffff0e,#ffffff05),#0a0f19d1;border-color:#94a3b82e;box-shadow:0 18px 44px #00000047,inset 0 1px #ffffff0b}.app-dark .desktop-web-brand>span{background:#080b0f;border-color:#94a3b833;box-shadow:0 8px 20px #00000057}.app-dark .desktop-web-brand strong{color:var(--desktop-dark-text)}.app-dark .desktop-web-brand small{color:var(--desktop-dark-muted)}.app-dark .desktop-top-tabs{background:#ffffff0a;border-color:#94a3b82e}.app-dark .desktop-top-tabs button{color:var(--desktop-dark-muted)}.app-dark .desktop-top-tabs button:hover,.app-dark .desktop-top-tabs button.active{color:var(--desktop-dark-text);background:#fff1;border-color:#7dd3fc47}.app-dark .desktop-top-tabs button.active{box-shadow:inset 0 0 0 1px #7dd3fc1f,0 10px 22px #0000002e}.app-dark .desktop-today-fab{color:var(--desktop-dark-primary);background:linear-gradient(180deg,#ffffff12,#ffffff06),#0a0f19e6;border-color:#7dd3fc47;box-shadow:0 18px 44px #00000052,inset 0 1px #ffffff0b}.app-dark .desktop-today-fab:hover{color:var(--desktop-dark-text);background:#111827f5;border-color:#7dd3fc6b}.app-dark .calendar-coach-panel{color:var(--desktop-dark-text);background:linear-gradient(180deg,#ffffff0b,#ffffff03),var(--desktop-dark-panel);border-color:#94a3b82e;box-shadow:0 22px 54px #00000052,inset 0 1px #ffffff09}.app-dark .desktop-side-tabs{background:linear-gradient(180deg,#ffffff0f,#ffffff06),#0a0f19c7;border-color:#94a3b82e;box-shadow:0 18px 44px #00000047,inset 0 1px #ffffff0b}.app-dark .desktop-side-tabs button{color:#8d9aae;background:transparent}.app-dark .desktop-side-tabs button:hover{color:var(--desktop-dark-text);background:#ffffff0e;border-color:#94a3b829;box-shadow:none}.app-dark .desktop-side-tabs button.active{color:#eef7ff;background:linear-gradient(135deg,#7dd3fc29,#a78bfa1c),#ffffff0b;border-color:#7dd3fc6b;box-shadow:inset 3px 0 #7dd3fcc7,inset 0 0 0 1px #7dd3fc14}.app-dark .desktop-calendar-toolbar,.app-dark .desktop-week-row,.app-dark .desktop-web-shell .card,.app-dark .desktop-web-shell .dark-card,.app-dark .desktop-web-shell .more-card,.app-dark .desktop-web-shell .progress-period-section,.app-dark .desktop-web-shell .progress-history-chart-card,.app-dark .desktop-web-shell .chat-panel-screen,.app-dark .desktop-web-shell .connections-card,.app-dark .desktop-web-shell .profile-details-card,.app-dark .desktop-workout-drawer,.app-dark .bottom-sheet,.app-dark .logout-confirm-dialog{background:linear-gradient(180deg,#ffffff0b,#ffffff03),var(--desktop-dark-panel);border-color:#94a3b82e;box-shadow:0 22px 54px #00000052,inset 0 1px #ffffff09}.app-dark .desktop-week-list{gap:22px}.app-dark .desktop-week-row{border-radius:18px;overflow:hidden}.app-dark .desktop-week-row:before{width:3px;background:linear-gradient(180deg,#2dd4bff2,#60a5facc,#a78bfab8);opacity:.9}.app-dark .desktop-week-row-current{border-color:#7dd3fc61;box-shadow:0 24px 64px #0000005c,0 0 0 1px #7dd3fc14}.app-dark .desktop-week-row-head{min-height:58px;background:linear-gradient(180deg,#ffffff0f,#ffffff06),var(--desktop-dark-panel-strong);border-bottom-color:#94a3b82e}.app-dark .desktop-week-row-head strong{color:#f6f8fc;font-weight:900;letter-spacing:0}.app-dark .desktop-week-row-head span{color:#98a6b8}.app-dark .desktop-week-row-actions .btn,.app-dark .desktop-calendar-actions .btn{min-height:38px;color:#d8e2ef;background:#ffffff0e;border-color:#94a3b833;box-shadow:none}.app-dark .desktop-week-row-actions .btn:hover,.app-dark .desktop-calendar-actions .btn:hover{color:#fff;background:#7dd3fc1f;border-color:#7dd3fc57}.app-dark .desktop-week-row-actions .btn-primary,.app-dark .desktop-calendar-actions .btn-primary{color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:#bae6fd8f;box-shadow:0 14px 28px #22d3ee1f}.app-dark .desktop-week-days{background:#0b1220}.app-dark .desktop-week-day{min-height:170px;background:linear-gradient(180deg,#101827fa,#0b1220fa),#0d1422;border-color:var(--desktop-dark-grid);box-shadow:inset 0 1px #ffffff06}.app-dark .desktop-week-day-weekend{background:linear-gradient(180deg,#0e1523fa,#090f1bfa),#0a1020}.app-dark .desktop-week-day-today{background:linear-gradient(180deg,#142134fa,#0c1627fa),#0d1728;box-shadow:inset 0 0 0 2px #7dd3fc57,0 12px 30px #0ea5e914,inset 0 1px #ffffff09}.app-dark .desktop-week-day-today:before{background:#38bdf8;box-shadow:0 3px 12px #38bdf833}.app-dark .desktop-week-day-drop-target{background:linear-gradient(180deg,#162b44fa,#0e1b2ffa),#0d1728;box-shadow:inset 0 0 0 2px #7dd3fc6b}.app-dark .desktop-week-day-head span{color:#7f8ca0;letter-spacing:.02em}.app-dark .desktop-week-day-head strong{color:#dce5f2;background:transparent}.app-dark .desktop-week-day-today .desktop-week-day-head strong{color:#06101f;background:#7dd3fc;box-shadow:0 8px 18px #7dd3fc2e}.app-dark .desktop-week-day-add{color:#95a3b8;background:#ffffff0e;border-color:#94a3b82e}.app-dark .desktop-week-day-add:hover{color:#07111f;background:#bae6fd;border-color:#bae6fdb8}.app-dark .desktop-workout-card,.app-dark .desktop-race-card{color:#edf3fb;background:linear-gradient(180deg,#ffffff0e,#ffffff05),var(--desktop-dark-card);border-color:#94a3b833;box-shadow:0 10px 22px #00000038,inset 0 1px #ffffff09}.app-dark .desktop-workout-card:hover{background:linear-gradient(180deg,#ffffff12,#ffffff08),var(--desktop-dark-card-hover);border-color:#94a3b84d;transform:translateY(-1px)}.app-dark .desktop-workout-planned{border-left-color:#347fb3}.app-dark .desktop-workout-completed{border-left-color:#34d399;background:linear-gradient(180deg,#34d39913,#ffffff05),var(--desktop-dark-card)}.app-dark .desktop-workout-skipped,.app-dark .desktop-workout-cancelled{border-left-color:#f87171;background:linear-gradient(180deg,#f8717114,#ffffff05),var(--desktop-dark-card)}.app-dark .desktop-workout-main strong,.app-dark .desktop-workout-meta strong{color:#f4f7fb}.app-dark .desktop-workout-main small,.app-dark .desktop-workout-meta{color:#9aa8ba}.app-dark .desktop-workout-chart .chart-baseline{border-top-color:#94a3b838}.app-dark .desktop-workout-chart .chart-bar{filter:saturate(.9) brightness(.98)}.app-dark .desktop-race-card{border-color:#2dd4bf52;background:linear-gradient(180deg,#2dd4bf17,#ffffff05),var(--desktop-dark-card)}.app-dark .desktop-empty-day{color:#b8c4d7;background:transparent;border-color:#94a3b83d}.app-dark .desktop-empty-day:hover{color:#06101f;background:#bae6fd;border-color:#bae6fd}.app-dark .desktop-calendar-title-icon,.app-dark .desktop-web-shell .list-row-icon,.app-dark .desktop-web-shell .more-icon,.app-dark .desktop-web-shell .events-hero-icon,.app-dark .desktop-web-shell .form-card-icon,.app-dark .desktop-web-shell .progress-metric>span,.app-dark .bottom-sheet .choice-card-icon,.app-dark .auth-icon{color:#a5f3fc;background:#7dd3fc1c;border-color:#7dd3fc3d}.app-dark .desktop-web-shell .btn-primary,.app-dark .desktop-workout-drawer .btn-primary,.app-dark .bottom-sheet .btn-primary,.app-dark .logout-confirm-dialog .btn-primary{color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:#bae6fd99;box-shadow:0 14px 30px #2dd4bf1f}.app-dark .desktop-web-shell .btn-secondary,.app-dark .desktop-web-shell .btn-ghost,.app-dark .desktop-workout-drawer .btn-secondary,.app-dark .desktop-workout-drawer .btn-ghost,.app-dark .bottom-sheet .btn-secondary,.app-dark .bottom-sheet .btn-ghost,.app-dark .logout-confirm-dialog .btn-secondary,.app-dark .logout-confirm-dialog .btn-ghost{color:#cdd7e5;background:#ffffff0e;border-color:#94a3b833}.app-dark .desktop-web-shell .btn-secondary:hover,.app-dark .desktop-web-shell .btn-ghost:hover,.app-dark .desktop-workout-drawer .btn-secondary:hover,.app-dark .desktop-workout-drawer .btn-ghost:hover,.app-dark .bottom-sheet .btn-secondary:hover,.app-dark .bottom-sheet .btn-ghost:hover{color:#fff;background:#7dd3fc1a;border-color:#7dd3fc4d}.app-dark .desktop-web-shell .textarea,.app-dark .desktop-web-shell .input,.app-dark .desktop-web-shell .select,.app-dark .desktop-web-shell .date-picker-shell input,.app-dark .desktop-web-shell .zone-range-row input,.app-dark .desktop-web-shell .chat-input-row textarea,.app-dark .desktop-workout-drawer .textarea,.app-dark .desktop-workout-drawer .input,.app-dark .desktop-workout-drawer .select,.app-dark .desktop-workout-drawer .date-picker-shell input,.app-dark .bottom-sheet .textarea,.app-dark .bottom-sheet .input,.app-dark .bottom-sheet .select,.app-dark .bottom-sheet .date-picker-shell,.app-dark .bottom-sheet .date-picker-shell input,.app-dark .auth-field input{background:#070c16b3;border-color:#94a3b82e}.app-dark .workout-builder-top,.app-dark .workout-builder-date,.app-dark .workout-builder-sport-tabs,.app-dark .workout-builder-totals,.app-dark .builder-chart-card,.app-dark .builder-inspector-card,.app-dark .builder-outline-head,.app-dark .builder-control-card,.app-dark .builder-workout-note,.app-dark .builder-outline-row,.app-dark .builder-repeat-row,.app-dark .builder-repeat-step,.app-dark .builder-add-step,.app-dark .builder-add-actions button,.app-dark .workout-type-panel,.app-dark .workout-goal-panel,.app-dark .workout-type-trigger,.app-dark .builder-kind-trigger,.app-dark .builder-kind-menu,.app-dark .builder-zone-list button,.app-dark .builder-rpe-stepper,.app-dark .builder-time-inputs label,.app-dark .builder-time-actions button,.app-dark .builder-stepper button,.app-dark .builder-stepper input{background:linear-gradient(180deg,#ffffff0b,#ffffff04),#0c1320eb;border-color:#94a3b82b}.app-dark .builder-chart{background:linear-gradient(180deg,#ffffff09,#ffffff03),#080e19;border-color:#94a3b829}}.app-dark .chat-panel-screen,.app-dark .chat-sheet,.app-dark .chat-panel,.app-dark .bottom-sheet.chat-sheet{color:#f3f6fb}.app-dark .chat-messages,.app-dark .chat-empty,.app-dark .bottom-sheet .chat-messages,.app-dark .bottom-sheet .chat-empty{color:#8f9daf;background:#070c166b;border-color:#94a3b829}.app-dark .chat-empty strong,.app-dark .bottom-sheet .chat-empty strong{color:#f3f6fb}.app-dark .chat-message-assistant,.app-dark .bottom-sheet .chat-message-assistant{color:#e8eef8;background:#ffffff0e;border-color:#94a3b829}.app-dark .chat-input-row textarea,.app-dark .bottom-sheet .chat-input-row textarea,.app-dark .bottom-sheet.chat-sheet .chat-input-row textarea{color:#f3f6fb;-webkit-text-fill-color:#f3f6fb;background:linear-gradient(180deg,#ffffff0b,#ffffff05),#070c16c7;border-color:#94a3b838;box-shadow:inset 0 1px #ffffff09;color-scheme:dark}.app-dark .chat-input-row textarea::placeholder,.app-dark .bottom-sheet .chat-input-row textarea::placeholder{color:#c0cadaa8;-webkit-text-fill-color:rgba(192,202,218,.66)}.app-dark .chat-input-row textarea:focus,.app-dark .bottom-sheet .chat-input-row textarea:focus{border-color:#7dd3fc80;box-shadow:0 0 0 4px #7dd3fc1a}.app-dark .chat-send-button{color:#c8d4e5;background:#ffffff0f;border-color:#94a3b838;box-shadow:none}.app-dark .chat-send-button:hover:not(:disabled){color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:#bae6fd94}.app-dark .chat-limit-pill,.app-dark .connections-status-pill,.app-dark .connection-badge,.app-dark .hr-zone-trigger-status{color:#a5f3fc;background:#7dd3fc1a;border-color:#7dd3fc3d}.app-dark .text-action,.app-dark .bottom-sheet .text-action,.app-dark .logout-confirm-dialog .text-action,.app-dark .desktop-workout-drawer .text-action{color:#7dd3fc}.app-dark .text-action:hover,.app-dark .bottom-sheet .text-action:hover,.app-dark .logout-confirm-dialog .text-action:hover,.app-dark .desktop-workout-drawer .text-action:hover{color:#bae6fd}.app-dark .hr-zone-sheet-icon,.app-dark .bottom-sheet .hr-zone-sheet-icon{color:#a5f3fc;background:#7dd3fc1a;border-color:#7dd3fc3d}.app-dark .hr-zone-sheet-title h2,.app-dark .bottom-sheet .hr-zone-sheet-title h2{color:#f3f6fb}.app-dark .hr-zone-sheet-title p,.app-dark .hr-zone-current span,.app-dark .hr-zone-current small,.app-dark .hr-zone-sheet-field span,.app-dark .hr-zone-sheet-note,.app-dark .bottom-sheet .hr-zone-sheet-title p,.app-dark .bottom-sheet .hr-zone-current span,.app-dark .bottom-sheet .hr-zone-current small,.app-dark .bottom-sheet .hr-zone-sheet-field span,.app-dark .bottom-sheet .hr-zone-sheet-note{color:#8f9daf}.app-dark .hr-zone-close,.app-dark .bottom-sheet .hr-zone-close{color:#c8d4e5;background:#ffffff0e;border-color:#94a3b833}.app-dark .hr-zone-current,.app-dark .bottom-sheet .hr-zone-current{background:#070c1694;border-color:#94a3b82e}.app-dark .hr-zone-current strong,.app-dark .bottom-sheet .hr-zone-current strong{color:#f3f6fb;background:#ffffff0e;border-color:#94a3b82e}.app-dark .hr-zone-sheet-field .input,.app-dark .bottom-sheet .hr-zone-sheet-field .input{color:#f3f6fb;-webkit-text-fill-color:#f3f6fb;background:#070c16b8;border-color:#94a3b833;color-scheme:dark}.app-dark .hr-zone-calc-button,.app-dark .bottom-sheet .hr-zone-calc-button{color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:#bae6fd94;box-shadow:0 14px 30px #2dd4bf1f}.app-dark .hr-zone-calc-button:disabled,.app-dark .bottom-sheet .hr-zone-calc-button:disabled{color:#cbd5e18c;background:#47556940;border-color:#94a3b829;box-shadow:none}.app-dark .connection-action-button{color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:#bae6fd94}.app-dark .connection-action-muted{color:#c8d4e5;background:#ffffff0e;border-color:#94a3b833}.app-dark .connection-meta{color:#7dd3fc}.app-dark .workout-sport-picker-card,.app-dark .bottom-sheet .workout-sport-picker-card,.app-dark .choice-card,.app-dark .bottom-sheet .choice-card{color:#f3f6fb;background:linear-gradient(180deg,#ffffff0b,#ffffff05),#0c1320eb;border-color:#94a3b82e;box-shadow:none}.app-dark .workout-sport-picker-card:hover,.app-dark .bottom-sheet .workout-sport-picker-card:hover,.app-dark .choice-card:hover,.app-dark .bottom-sheet .choice-card:hover{background:linear-gradient(180deg,#7dd3fc13,#ffffff05),#0f172af5;border-color:#7dd3fc47}.app-dark .choice-card-icon,.app-dark .bottom-sheet .choice-card-icon{color:#a5f3fc;background:#7dd3fc1a;border:1px solid rgba(125,211,252,.2)}.app-dark .choice-card small,.app-dark .bottom-sheet .choice-card small,.app-dark .workout-sport-picker-card small,.app-dark .bottom-sheet .workout-sport-picker-card small{color:#8f9daf}.app-dark .textarea,.app-dark .input,.app-dark .select,.app-dark .date-picker-shell,.app-dark .date-picker-shell input,.app-dark input[type=text],.app-dark input[type=number],.app-dark input[type=email],.app-dark input[type=password],.app-dark input[type=date],.app-dark textarea,.app-dark select{color-scheme:dark}.app-dark .date-picker-shell input::-webkit-calendar-picker-indicator,.app-dark input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.4);opacity:.76}.app-dark .theme-toggle button.is-active{color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);box-shadow:0 10px 22px #2dd4bf1f}.app-light .card,.app-light .dark-card,.app-light .more-card,.app-light .progress-period-section,.app-light .progress-history-chart-card,.app-light .chat-panel-screen,.app-light .profile-details-card,.app-light .connections-card,.app-light .bottom-sheet,.app-light .logout-confirm-dialog,.app-light .desktop-workout-drawer{color:#111827;background:#fffffff0;border-color:#dde3ec}.app-light .round-action{border:1px solid #dbe3ee;color:#334155;background:#ffffffe6;box-shadow:0 8px 20px #0f172a14}.app-light .calendar-day-today .calendar-day-title-main>span{color:#111827}.app-light .calendar-day-add{border-color:#d8ccff;color:#6d5ce7;background:#f2efff}.app-light .calendar-workout-actions button{border-color:#e2e8f0;color:#64748b;background:#f8fafc}.app-light .calendar-workout-actions button.danger{border-color:#fecdd3;color:#e11d48;background:#fff1f2}.app-light .profile-icon{border-color:#6d5ce747;color:#6d5ce7;background:linear-gradient(135deg,#347fb333,#6366f11a)}.app-light h1,.app-light h2,.app-light h3,.app-light h4,.app-light strong,.app-light .card h1,.app-light .card h2,.app-light .card h3,.app-light .dark-card h1,.app-light .dark-card h2,.app-light .dark-card h3,.app-light .progress-period-head h2,.app-light .progress-workout-main strong,.app-light .progress-history-summary-item strong,.app-light .progress-sport-total strong,.app-light .detail-item strong,.app-light .settings-row strong,.app-light .event-card strong,.app-light .profile-row strong,.app-light .list-row strong,.app-light .segment-title,.app-light .segment-repeat-label,.app-light .editor-segment-toggle strong,.app-light .editor-repeat-title,.app-light .workout-builder-totals strong,.app-light .builder-chart-head strong,.app-light .builder-inspector-head h2,.app-light .builder-outline-head h2,.app-light .builder-row-main,.app-light .builder-row-main strong,.app-light .builder-repeat-title,.app-light .builder-repeat-title span,.app-light .builder-repeat-count strong,.app-light .workout-type-trigger strong,.app-light .workout-type-menu strong,.app-light .workout-sport-picker-card strong,.app-light .choice-card strong,.app-light .hr-zone-sheet-title h2,.app-light .hr-zone-current strong,.app-light .connection-main strong{color:#111827}.app-light p,.app-light small,.app-light .muted,.app-light .card p,.app-light .dark-card p,.app-light .metric-pill,.app-light .detail-item span,.app-light .settings-row span,.app-light .event-card span,.app-light .help-list span,.app-light .profile-row span,.app-light .list-row-main span,.app-light .segment-detail-lines,.app-light .editor-section-title span,.app-light .editor-mini-label,.app-light .editor-repeat-summary,.app-light .editor-rest-note span,.app-light .progress-period-head p,.app-light .progress-period-metrics,.app-light .progress-period-metrics span,.app-light .progress-workout-main span,.app-light .progress-workout-row time,.app-light .progress-history-summary-item small,.app-light .progress-sport-total small,.app-light .progress-empty-history p,.app-light .progress-period-empty,.app-light .workout-builder-totals span,.app-light .builder-chart-head span,.app-light .builder-inspector-head span,.app-light .builder-outline-head span,.app-light .builder-kind-picker>span,.app-light .builder-workout-note>span,.app-light .builder-stepper>span,.app-light .builder-time-inputs span,.app-light .builder-row-main small,.app-light .builder-repeat-row>p,.app-light .workout-type-trigger small,.app-light .workout-type-menu small,.app-light .workout-sport-picker-card small,.app-light .choice-card small,.app-light .connections-header p,.app-light .connections-category-head p,.app-light .connection-card small,.app-light .hr-zone-sheet-title p,.app-light .hr-zone-current span,.app-light .hr-zone-current small,.app-light .hr-zone-sheet-field span,.app-light .hr-zone-sheet-note{color:#64748b}.app-light .progress-history-bar-column,.app-light .progress-history-bar-label{color:#64748b}.app-light .progress-history-bar-value,.app-light .progress-history-summary-item>span{color:#22c55e}.app-light .progress-history-summary-item,.app-light .progress-sport-total,.app-light .progress-workout-row,.app-light .progress-period-metrics span,.app-light .progress-metric,.app-light .detail-item,.app-light .settings-row,.app-light .event-card,.app-light .help-list p,.app-light .connection-card,.app-light .zone-card,.app-light .zone-card-title,.app-light .hr-zone-current,.app-light .hr-zone-trigger,.app-light .workout-sport-picker-card,.app-light .choice-card,.app-light .segment,.app-light .segment-repeat-step,.app-light .editor-segment,.app-light .editor-repeat-box,.app-light .editor-repeat-card,.app-light .builder-outline-row,.app-light .builder-repeat-row,.app-light .builder-repeat-step,.app-light .builder-control-card,.app-light .builder-workout-note,.app-light .builder-rpe-stepper,.app-light .builder-time-inputs label,.app-light .builder-stepper button,.app-light .builder-stepper input{color:#111827;background:#fff;border-color:#dde3ec;box-shadow:0 8px 22px #0f172a09}.app-light .builder-outline-row.is-selected,.app-light .builder-repeat-step.is-selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 12px 26px #2563eb29}.app-light .builder-repeat-row.has-selection{border-color:#2563eb6b;background:#f8fbff;box-shadow:0 10px 24px #2563eb17}.app-light .progress-history-tabs,.app-light .progress-metric-tabs,.app-light .progress-workout-list,.app-light .segmented-control,.app-light .zone-tabs,.app-light .period-select,.app-light .date-picker-shell,.app-light .chat-messages,.app-light .builder-chart,.app-light .builder-outline-head,.app-light .workout-builder-top,.app-light .workout-builder-date,.app-light .workout-builder-sport-tabs,.app-light .workout-builder-totals,.app-light .workout-type-panel,.app-light .workout-goal-panel{color:#111827;background:#f8fafc;border-color:#dde3ec;box-shadow:none}.app-light .progress-history-tabs button,.app-light .progress-metric-tabs button,.app-light .progress-tabs button,.app-light .segmented-control button,.app-light .zone-tabs button,.app-light .theme-toggle button{color:#64748b}.app-light .progress-history-tabs button.active,.app-light .progress-metric-tabs button.active,.app-light .progress-tabs .active,.app-light .segmented-control button.is-active,.app-light .zone-tabs button.is-active,.app-light .theme-toggle button.is-active{color:#111827;background:#fff;border-color:#dbe3ef;box-shadow:0 6px 16px #0f172a0f}.app-light .progress-metric>span,.app-light .progress-hero-icon,.app-light .list-row-icon,.app-light .more-icon,.app-light .choice-card-icon,.app-light .hr-zone-sheet-icon,.app-light .calendar-race-icon{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.app-light .textarea,.app-light .input,.app-light .select,.app-light .date-picker-shell input,.app-light .zone-range-row input,.app-light .chat-input-row textarea,.app-light .workout-builder-title-field input,.app-light .workout-builder-date input,.app-light .builder-workout-note textarea,.app-light .builder-time-inputs input,.app-light .workout-fact-input,.app-light .hr-zone-sheet-field .input,.app-light input[type=text],.app-light input[type=number],.app-light input[type=email],.app-light input[type=password],.app-light input[type=date],.app-light textarea,.app-light select{color:#111827;-webkit-text-fill-color:#111827;background:#fff;border-color:#d8e1ed;color-scheme:light;box-shadow:none}.app-light .builder-percent-stepper-value input,.app-light .workout-builder-title-field input{background:transparent;border-color:transparent}.app-light .textarea::placeholder,.app-light .input::placeholder,.app-light .chat-input-row textarea::placeholder,.app-light .workout-fact-input::placeholder,.app-light input::placeholder,.app-light textarea::placeholder{color:#94a3b8;-webkit-text-fill-color:#94a3b8}.app-light .btn-secondary,.app-light .btn-ghost,.app-light .text-action{color:#2563eb}.app-light .btn-secondary,.app-light .btn-ghost{background:#eff6ff;border-color:#bfdbfe}.app-light .btn-outline{color:#111827;border-color:#cbd5e1}.app-light .btn:disabled{color:#94a3b8;background:#f1f5f9;border-color:#e2e8f0;opacity:1}.app-light .desktop-workout-drawer .btn-primary,.app-light .bottom-sheet .btn-primary,.app-light .logout-confirm-dialog .btn-primary,.app-light .desktop-web-shell .btn-primary{color:#fff;background:#111827;border-color:#111827}.app-light .screen-header p,.app-light .today-hero p,.app-light .detail-hero p,.app-light .next-workout p,.app-light .today-multi-summary span,.app-light .race-start-main span,.app-light .race-start-main small,.app-light .race-start-arrow,.app-light .rest-visual,.app-light .future-week-card .segment .muted,.app-light .preview-empty-row strong,.app-light .manual-week-notice p,.app-light .preview-issues span,.app-light .event-summary-strip small,.app-light .race-meta-list span,.app-light .zone-range-row,.app-light .zone-range-row span,.app-light .zone-range-row em,.app-light .zone-range-row small{color:#64748b}.app-light .event-summary-strip span,.app-light .goal-option-card{color:#111827}.app-light .goal-option-card{border-color:#dde3ec;background:#fff;box-shadow:0 8px 22px #0f172a09}.app-light .goal-option-card small{color:#64748b;background:#f1f5f9}.app-light .goal-option-card.is-active{border-color:#6d5ce780;background:linear-gradient(135deg,#6d5ce724,#fff)}.app-light .goal-option-card.is-active small{color:#5b4bda;background:#6d5ce71f}.app-light .next-workout,.app-light .today-multi-summary,.app-light .race-start-card,.app-light .future-week-card,.app-light .period-select,.app-light .event-summary-strip,.app-light .race-empty-state,.app-light .manual-week-notice,.app-light .preview-issues{color:#111827;background:#fff;border-color:#dde3ec;box-shadow:0 12px 30px #0f172a0e}.app-light .next-workout{border-bottom-color:#e2e8f0;box-shadow:none}.app-light .race-start-card{background:radial-gradient(circle at 90% 0%,rgba(37,99,235,.08),transparent 42%),#fff}.app-light .race-start-icon,.app-light .segment-repeat-badge{color:#fff;background:linear-gradient(135deg,#2563eb,#347fb3)}.app-light .future-week-card .segment,.app-light .preview-race-row,.app-light .zone-card-title,.app-light .event-summary-strip,.app-light .race-meta-list span{color:#111827;background:#f8fafc;border-color:#e2e8f0}.app-light .manual-week-notice,.app-light .preview-issues{color:#92400e;background:#fffbeb;border-color:#fde68a}.app-light .chart-baseline{border-top-color:#64748b38}.app-light .chart-baseline:before{border-top-color:#64748b33}.app-light .weekly-chart-dark .weekly-bar-column{color:#64748b}.app-light .weekly-bar-planned{background:#2563eb29}textarea{field-sizing:content;overflow-y:hidden;resize:none!important}.desktop-web-shell .profile-desktop-grid{gap:18px 22px}.desktop-web-shell .profile-desktop-grid .profile-compact-section{padding:0;border:0;border-radius:0;gap:8px;background:transparent;box-shadow:none}.desktop-web-shell .profile-desktop-grid .profile-section-title{padding-left:3px;color:#64748b;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.desktop-web-shell .profile-desktop-grid .profile-section-body{min-width:0;overflow:hidden;border:1px solid #dde3ec;border-radius:18px;background:#fff;box-shadow:0 12px 28px #0f172a0b}.desktop-web-shell .profile-desktop-grid .profile-compact-grid{display:grid;grid-template-columns:1fr;gap:0}.desktop-web-shell .profile-desktop-grid .form-field{min-height:64px;border-bottom:1px solid #e2e8f0;padding:10px 14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(118px,.55fr);align-items:center;gap:16px}.desktop-web-shell .profile-desktop-grid .form-field:last-child{border-bottom:0}.desktop-web-shell .profile-desktop-grid .form-field>span{color:#172033;font-size:13px;font-weight:850}.desktop-web-shell .profile-desktop-grid .form-field .input{width:100%;min-height:38px;border-color:transparent;background:#f1f5f9;font-weight:850;text-align:right}.desktop-web-shell .profile-desktop-grid .form-field .input:hover,.desktop-web-shell .profile-desktop-grid .form-field .input:focus{border-color:#78b7d3;background:#faf8ff}.desktop-web-shell .profile-desktop-grid .profile-sex-field{grid-column:auto}.desktop-web-shell .profile-desktop-grid .profile-sex-control{min-height:38px;border:0;border-radius:999px;padding:3px;background:#edf1f5}.desktop-web-shell .profile-desktop-grid .profile-sex-control button{min-height:32px;border-radius:999px;font-size:12px}.desktop-web-shell .profile-desktop-grid .profile-equipment-section{grid-column:1 / -1}.desktop-web-shell .profile-desktop-grid .profile-equipment-section .profile-section-body{padding:10px}.profile-equipment-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profile-equipment-group{min-width:0;padding:10px;border:1px solid #e2e8f0;border-radius:15px;background:#fff}.profile-equipment-group h3{margin:0 2px 8px;color:#64748b;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.profile-equipment-group .profile-equipment-grid,.desktop-web-shell .profile-desktop-grid .profile-equipment-group .profile-equipment-grid{grid-template-columns:1fr}.switch-row-copy{display:grid;min-width:0;gap:2px;text-align:left}.switch-row-copy small{overflow:hidden;color:#8491a6;font-size:12px;line-height:1.25;text-overflow:ellipsis}.desktop-web-shell .profile-desktop-grid .profile-equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row{min-height:48px;border:0;border-radius:13px;padding:8px 10px 8px 12px;background:#f8fafc}@media(max-width:900px){.profile-equipment-groups{grid-template-columns:1fr}}.desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row:hover{background:#f1f5f9}.desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row:has(.switch-control.is-on){color:#312e81;background:#eef2ff}.desktop-web-shell .profile-desktop-grid .profile-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-web-shell .profile-desktop-grid .profile-main-grid .form-field{min-height:58px;border-right:1px solid #e2e8f0}.desktop-web-shell .profile-desktop-grid .profile-main-grid .form-field:nth-child(2n){border-right:0}.desktop-web-shell .profile-desktop-grid .profile-main-grid .form-field:nth-last-child(-n+2){border-bottom:0}.profile-availability-controls{display:grid}.profile-sport-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:14px}.profile-sport-picker button{display:grid;place-items:center;gap:2px;min-height:38px;padding:7px 9px;border:1px solid transparent;border-radius:11px;color:#64748b;background:#f1f5f9;font-size:12px;font-weight:800}.profile-sport-picker button small{font-size:12px;font-weight:700;line-height:1.15}.profile-sport-picker button.is-active{color:#fff;background:#172033;border-color:#172033;box-shadow:0 5px 12px #0f172a21}.profile-sport-picker button.is-included:disabled{opacity:.72;cursor:default}.profile-control-hint{display:block;padding:0 14px 14px;color:#64748b;font-size:12px;line-height:1.4}.profile-availability-row{min-height:76px;padding:11px 14px;display:grid;gap:9px;border-bottom:1px solid #e2e8f0}.profile-availability-row:last-child{border-bottom:0}.profile-availability-row>strong{color:#172033;font-size:12px;font-weight:850}.availability-day-picker,.weekly-hours-picker{display:grid;gap:5px}.availability-day-picker{grid-template-columns:repeat(7,minmax(0,1fr))}.weekly-hours-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.availability-day-picker button,.weekly-hours-picker button{min-height:34px;border:1px solid transparent;border-radius:10px;padding:0 7px;color:#64748b;background:#f1f5f9;font-size:12px;font-weight:850}.availability-day-picker button.is-active,.weekly-hours-picker button.is-active{color:#fff;background:#172033;border-color:#172033;box-shadow:0 5px 12px #0f172a21}.availability-day-picker button:hover,.weekly-hours-picker button:hover{border-color:#78b7d3}@media(max-width:760px){.workout-editor-screen .workout-goal-panel{min-width:0;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px}.workout-editor-screen .editor-choice-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.workout-editor-screen .field-grid{grid-template-columns:minmax(0,1fr)}.builder-target-toolbar{align-items:stretch;flex-direction:column}.builder-percent-steppers{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-target-calculation{grid-template-columns:auto 1fr}.builder-target-calculation small{grid-column:2}.desktop-web-shell .profile-desktop-grid .profile-equipment-grid,.profile-equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-web-shell .profile-desktop-grid .profile-main-grid,.profile-main-grid{grid-template-columns:1fr}}html,body,#root{min-height:100%}html[data-theme=dark],html[data-theme=dark] body{color-scheme:dark;background:#10151d;scrollbar-color:#475569 #10151d}html[data-theme=light],html[data-theme=light] body{color-scheme:light;background:var(--bg-light);scrollbar-color:#cbd5e1 var(--bg-light)}.app-dark .chat-starter-actions button{color:#b9d9ea;background:#347fb31f;border-color:#a78bfa57}.app-dark .chat-starter-actions button:hover{color:#ede9fe;background:#347fb333;border-color:#c4b5fd7a}.profile-details-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.profile-details-header>div:first-child{min-width:0}.profile-autosave-status{min-height:30px;flex:0 0 auto;border:1px solid rgba(148,163,184,.2);border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:8px;color:var(--muted-dark);background:#ffffff0b;font-size:12px;font-weight:800;white-space:nowrap}.profile-autosave-status.is-saved{color:#86efac;border-color:#4ade8042;background:#22c55e1a}.profile-autosave-status.is-error{color:#fecaca;border-color:#f871714d;background:#ef44441f}.profile-autosave-status button{border:0;padding:0;color:inherit;background:transparent;font:inherit;text-decoration:underline}.app-light .profile-autosave-status{color:#64748b;background:#f8fafc;border-color:#dbe3ef}.app-light .profile-autosave-status.is-saved{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.app-light .profile-autosave-status.is-error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.app-dark .desktop-web-shell .profile-desktop-grid .profile-section-body,.app-dark .desktop-web-shell .profile-equipment-group{color:#f3f6fb;background:#141d29;border-color:#94a3b82e;box-shadow:0 12px 28px #00000029}.app-dark .desktop-web-shell .profile-desktop-grid .form-field,.app-dark .desktop-web-shell .profile-availability-row{border-color:#94a3b829}.app-dark .desktop-web-shell .profile-desktop-grid .form-field>span,.app-dark .desktop-web-shell .profile-availability-row>strong,.app-dark .desktop-web-shell .profile-equipment-group h3,.app-dark .desktop-web-shell .switch-row-copy strong{color:#e8edf5;-webkit-text-fill-color:#e8edf5}.app-dark .desktop-web-shell .profile-desktop-grid .form-field .input,.app-dark .desktop-web-shell .profile-desktop-grid .textarea.compact{color:#f3f6fb;-webkit-text-fill-color:#f3f6fb;background:#0f1724;border-color:#94a3b833;color-scheme:dark}.app-dark .desktop-web-shell .profile-desktop-grid .form-field .input:hover,.app-dark .desktop-web-shell .profile-desktop-grid .form-field .input:focus,.app-dark .desktop-web-shell .profile-desktop-grid .textarea.compact:focus{background:#111c2a;border-color:#a78bfa99}.app-dark .desktop-web-shell .profile-sex-control,.app-dark .desktop-web-shell .profile-sport-picker button,.app-dark .desktop-web-shell .availability-day-picker button,.app-dark .desktop-web-shell .weekly-hours-picker button,.app-dark .desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row{color:#aab6c7;background:#1b2533;border-color:#94a3b826;box-shadow:none}.app-dark .desktop-web-shell .profile-sex-control button{color:#aab6c7}.app-dark .desktop-web-shell .profile-sex-control button.is-active,.app-dark .desktop-web-shell .profile-sport-picker button.is-active,.app-dark .desktop-web-shell .availability-day-picker button.is-active,.app-dark .desktop-web-shell .weekly-hours-picker button.is-active{color:#06101f;-webkit-text-fill-color:#06101f;background:linear-gradient(135deg,#bae6fd,#a7f3d0);border-color:transparent;box-shadow:0 8px 18px #2dd4bf1f}.app-dark .desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row:hover{background:#202c3c}.app-dark .desktop-web-shell .profile-desktop-grid .profile-equipment-grid .switch-row:has(.switch-control.is-on){color:#b9d9ea;background:#347fb324}.app-dark .desktop-web-shell .switch-row-copy small{color:#91a0b4;-webkit-text-fill-color:#91a0b4}.app-dark .desktop-web-shell .profile-control-hint{color:#91a0b4}@media(max-width:420px){.profile-sport-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.chat-sheet .chat-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px}.chat-sheet .chat-header>div:first-child{min-width:0}.chat-sheet .chat-header h2{padding-right:0}.chat-sheet .chat-header-actions{position:static;gap:7px}.chat-sheet .chat-header p{max-width:100%;padding-right:0}.profile-details-header{display:grid;gap:10px}.profile-autosave-status{width:fit-content}}@media(max-width:380px){.events-hero-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px}.events-hero-card h2,.events-hero-card p{text-align:left}.events-hero-card .event-summary-strip{width:100%;min-width:0;grid-column:1 / -1;grid-template-columns:auto auto;justify-content:center;gap:6px}.events-hero-card .event-summary-strip small{margin-top:0}.theme-switch-row{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px 12px}.theme-toggle{width:100%;grid-column:2}.editable-workout-title input,.editable-workout-title-locked{font-size:23px}.recovery-overview-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px}.recovery-overview-card>em{grid-column:1 / -1;padding-top:11px;border-top:1px solid rgba(109,93,252,.16);display:flex;align-items:baseline;justify-content:space-between;gap:12px;text-align:left}.recovery-overview-card>em small{margin-top:0}}@media(max-width:620px){.bottom-sheet-backdrop,.catalog-modal-backdrop{align-items:flex-end;padding:max(8px,env(safe-area-inset-top)) 0 0}.bottom-sheet,.app-dark .bottom-sheet,.app-light .bottom-sheet{width:100%;max-height:calc(100dvh - max(10px,env(safe-area-inset-top)));padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.catalog-preview,.catalog-date-dialog{align-self:end;width:100%;max-height:calc(100dvh - max(10px,env(safe-area-inset-top)));padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.bottom-sheet :is(.btn,.round-action),.wellness-sheet :is(.btn,.round-action),.catalog-date-dialog :is(.btn,.round-action){min-height:44px}.bottom-sheet :is(input,textarea,select),.wellness-sheet textarea,.catalog-date-dialog input{font-size:16px}}@media(max-width:400px){.chat-sheet .chat-header{grid-template-columns:1fr}.chat-sheet .chat-header-actions{justify-self:start}.chat-header-actions .text-action{min-height:36px}}.app-dark{--desktop-dark-primary: var(--primary);--desktop-dark-primary-2: var(--primary-2)}.app-shell :is(button,a,input,textarea,select):focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 36%,transparent);outline-offset:2px}.app-shell :is(.btn-primary,.desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary),.app-dark :is(.desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary),.app-light :is(.desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary){color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:color-mix(in srgb,var(--primary) 70%,transparent);box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 24%,transparent)}.app-shell :is(.btn-secondary,.btn-ghost,.text-action),.app-dark :is(.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost,.desktop-workout-drawer .btn-secondary,.desktop-workout-drawer .btn-ghost,.bottom-sheet .btn-secondary,.bottom-sheet .btn-ghost),.app-light :is(.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost,.desktop-workout-drawer .btn-secondary,.desktop-workout-drawer .btn-ghost,.bottom-sheet .btn-secondary,.bottom-sheet .btn-ghost){color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent);border-color:color-mix(in srgb,var(--primary) 28%,transparent)}.app-dark :is(.desktop-top-tabs button:hover,.desktop-top-tabs button.active),.app-dark .desktop-web-shell :is(.progress-history-tabs button.active,.progress-metric-tabs button.active,.segmented-control button.is-active,.zone-tabs button.is-active),.app-light :is(.desktop-top-tabs button:hover,.desktop-top-tabs button.active),.app-light .desktop-web-shell :is(.progress-history-tabs button.active,.progress-metric-tabs button.active,.segmented-control button.is-active,.zone-tabs button.is-active){color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);border-color:color-mix(in srgb,var(--primary) 30%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 14%,transparent)}.app-dark :is(.desktop-calendar-title-icon,.desktop-web-shell .list-row-icon,.desktop-web-shell .more-icon,.desktop-web-shell .events-hero-icon,.desktop-web-shell .form-card-icon,.desktop-web-shell .progress-metric>span),.app-light :is(.desktop-calendar-title-icon,.desktop-web-shell .list-row-icon,.desktop-web-shell .more-icon,.desktop-web-shell .events-hero-icon,.desktop-web-shell .form-card-icon,.desktop-web-shell .progress-metric>span){color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent);border-color:color-mix(in srgb,var(--primary) 24%,transparent)}.desktop-coach-trigger,.app-dark .desktop-coach-trigger{color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,transparent);border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.desktop-coach-trigger:hover,.desktop-coach-trigger.active,.app-dark .desktop-coach-trigger:hover,.app-dark .desktop-coach-trigger.active{color:#fff;background:var(--primary);border-color:var(--primary);box-shadow:0 9px 22px color-mix(in srgb,var(--primary) 24%,transparent)}.catalog-picker{grid-template-rows:auto minmax(0,1fr);gap:14px;width:min(680px,calc(100% - 20px))}.catalog-picker-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 16px}.catalog-picker-heading{min-width:0;display:flex!important;align-items:center;gap:10px!important}.catalog-picker-heading>.sport-icon-sm{flex:0 0 auto}.catalog-picker-heading>div{min-width:0;display:grid;gap:3px}.catalog-picker-heading h2{margin:0;color:var(--text);font-size:20px;line-height:1.15}.catalog-picker-heading>div>span{color:var(--text-muted);font-size:12px;font-weight:800}.catalog-picker-header>p{grid-column:1 / -1;margin:0;color:var(--text-muted);font-size:13px;line-height:1.35}.catalog-browser-compact{align-content:start;gap:12px;padding-right:4px}.catalog-browser-compact .catalog-toolbar{position:sticky;z-index:4;top:0;width:100%;padding:0 0 10px;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;background:var(--surface)}.catalog-browser-compact .catalog-scope-tabs{width:100%}.catalog-browser-compact .catalog-scope-tabs button{flex:1;min-width:0;padding:0 8px}.catalog-browser-compact .catalog-toolbar-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr)}.catalog-browser-compact .catalog-search{width:100%;min-height:46px}.catalog-browser-compact .catalog-filter-dock{display:grid;gap:8px}.catalog-goal-filter{min-width:0;display:grid;gap:8px}.catalog-goal-filter-head,.catalog-results-head{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.catalog-goal-filter-head strong,.catalog-results-head strong{color:var(--text);font-size:13px;font-weight:850}.catalog-goal-filter-head>button{border:0;padding:0;color:var(--primary);background:transparent;font-size:12px;font-weight:800}.catalog-browser-compact .catalog-tags{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.catalog-browser-compact .catalog-tags::-webkit-scrollbar{display:none}.catalog-browser-compact .catalog-tags button{flex:0 0 auto}.catalog-browser-compact .catalog-create-scratch{width:100%;min-height:44px;border-color:color-mix(in srgb,var(--primary) 28%,transparent);padding:0 14px;justify-content:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--surface));font-size:13px;font-weight:850}.catalog-browser-compact .catalog-create-scratch>span{display:inline;width:auto;height:auto;border-radius:0;color:inherit;background:transparent;white-space:nowrap}.catalog-browser-compact .catalog-create-scratch>svg{flex:0 0 auto}.catalog-results-head{padding-top:2px}.catalog-results-head>span{min-width:0;overflow:hidden;color:var(--text-muted);font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.catalog-template-card.compact .catalog-template-main{grid-template-columns:minmax(145px,1fr) minmax(130px,.8fr) auto;gap:12px;min-height:96px;padding:11px 48px 11px 14px}.catalog-template-card.compact .catalog-mini-chart{display:flex;height:44px}.catalog-card-open-hint{position:absolute;z-index:2;top:50%;right:10px;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));transform:translateY(-50%);pointer-events:none}@media(max-width:520px){.catalog-picker{gap:12px}.catalog-picker-heading h2{font-size:18px}.catalog-browser-compact .catalog-scope-tabs button{min-height:40px;font-size:12px}.catalog-results-head{align-items:flex-start}.catalog-results-head>span{max-width:58%;text-align:right}.catalog-template-card.compact .catalog-template-main{grid-template-columns:minmax(0,1fr);gap:6px;min-height:126px;padding:12px 50px 12px 12px}.catalog-template-card.compact .catalog-template-title,.catalog-template-card.compact .catalog-mini-chart,.catalog-template-card.compact .catalog-template-meta{grid-column:1 / -1}.catalog-template-card.compact .catalog-mini-chart{height:36px;padding:4px 0 6px}.catalog-card-open-hint{top:13px;transform:none}}.calendar-workout-card,.desktop-workout-card{--calendar-workout-accent: #347fb3}.calendar-workout-card-swim,.desktop-workout-sport-swim{--calendar-workout-accent: #0ea5e9}.calendar-workout-card-mobility,.desktop-workout-sport-mobility{--calendar-workout-accent: #78b7d3}.calendar-workout-card-rest,.desktop-workout-sport-rest,.calendar-workout-card-other,.desktop-workout-sport-other{--calendar-workout-accent: #94a3b8}.workout-row.calendar-workout-card{position:relative;display:block;overflow:visible;padding:14px;border-left:1px solid var(--border-light);border-radius:18px;background:var(--surface-light)}.app-dark .workout-row.calendar-workout-card,.app-dark .workout-row.calendar-workout-card.workout-row-completed,.app-dark .workout-row.calendar-workout-card.workout-row-skipped,.app-dark .workout-row.calendar-workout-card.workout-row-cancelled{border-color:var(--border-dark);border-left-color:var(--border-dark);background:var(--surface-dark)}.calendar-workout-card-open{width:100%;min-width:0;border:0;padding:0;display:grid;gap:10px;color:inherit;text-align:left;background:transparent}.calendar-workout-card-head{min-width:0;padding-right:38px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px}.calendar-workout-card-copy{min-width:0;display:grid;gap:3px}.calendar-workout-card-copy strong{min-width:0;color:var(--text-light);font-size:16px;font-weight:850;line-height:1.2}.calendar-workout-card-copy small{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--muted-light);font-size:12px;font-weight:650;line-height:1.35}.app-dark .calendar-workout-card-copy strong{color:var(--text-dark)}.app-dark .calendar-workout-card-copy small{color:var(--muted-dark)}.calendar-workout-card-chart{min-width:0;display:block}.calendar-workout-card-chart .workout-chart{height:42px;padding:3px 0 6px}.calendar-workout-card-chart .chart-baseline{left:0;right:0;bottom:5px}.calendar-workout-card-chart .chart-baseline:before{display:none}.calendar-workout-card-chart .chart-bars{gap:3px}.calendar-workout-card-chart .chart-bar{min-width:4px;border-radius:3px 3px 0 0}.calendar-workout-card-metrics{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px 0;color:var(--muted-light);font-size:12px;font-weight:800}.calendar-workout-card-metrics>*+*:before{content:"·";margin:0 7px;color:color-mix(in srgb,currentColor 55%,transparent)}.calendar-workout-card-metrics strong{color:var(--text-light)}.app-dark .calendar-workout-card-metrics{color:var(--muted-dark)}.app-dark .calendar-workout-card-metrics strong{color:var(--text-dark)}.calendar-workout-menu{position:absolute;top:10px;right:10px;z-index:9}.calendar-workout-menu-trigger{width:34px;height:34px;border:1px solid var(--border-light);border-radius:11px;padding:0;display:grid;place-items:center;color:var(--muted-light);background:color-mix(in srgb,var(--surface-light) 88%,transparent);box-shadow:0 5px 14px #0f172a0f}.app-dark .calendar-workout-menu-trigger{border-color:var(--border-dark);color:var(--muted-dark);background:#ffffff0e;box-shadow:none}.calendar-workout-menu-trigger:hover,.calendar-workout-menu-trigger[aria-expanded=true]{border-color:color-mix(in srgb,var(--calendar-workout-accent) 38%,transparent);color:var(--calendar-workout-accent);background:color-mix(in srgb,var(--calendar-workout-accent) 10%,transparent)}.calendar-workout-menu-popover{position:absolute;top:calc(100% + 7px);right:0;width:178px;border:1px solid var(--border-light);border-radius:14px;padding:6px;display:grid;gap:2px;color:var(--text-light);background:color-mix(in srgb,var(--surface-light) 96%,white 4%);box-shadow:0 18px 42px #0f172a2e}.app-dark .calendar-workout-menu-popover{border-color:var(--border-dark);color:var(--text-dark);background:#17212d;box-shadow:0 20px 50px #00000057}.calendar-workout-menu-popover>button,.calendar-workout-menu-popover .calendar-workout-menu-export{width:100%;min-height:38px;border:0;border-radius:9px;padding:0 10px;display:flex;align-items:center;justify-content:flex-start;gap:9px;color:inherit;background:transparent;font-size:13px;font-weight:750;line-height:1}.calendar-workout-menu-popover>button:hover,.calendar-workout-menu-popover .calendar-workout-menu-export:hover{background:color-mix(in srgb,var(--calendar-workout-accent) 10%,transparent)}.calendar-workout-menu-popover>button.danger{color:#e5484d}.calendar-workout-menu-popover>button.danger:hover{background:#e5484d1a}@media(min-width:1024px){.desktop-workout-card,.desktop-workout-completed,.desktop-workout-skipped,.desktop-workout-cancelled{padding:9px 28px 9px 9px;border-left:1px solid var(--border-light);background:#ffffff0e}.app-dark .desktop-workout-card{border-left-color:var(--border-dark)}.desktop-workout-open{gap:6px}.desktop-workout-main{gap:7px}.desktop-workout-main .sport-icon-sm{width:24px;height:24px;flex-basis:24px}.desktop-workout-main strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px;line-height:1.18}.desktop-workout-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700}.desktop-workout-meta{flex-wrap:nowrap;overflow:hidden;gap:0;font-size:10px;line-height:1.15;white-space:nowrap}.desktop-workout-meta>*{min-width:0;overflow:hidden;text-overflow:ellipsis}.desktop-workout-meta>*+*:before{content:"·";margin:0 5px;color:color-mix(in srgb,currentColor 55%,transparent)}.desktop-workout-meta strong{font-size:10px}.desktop-workout-chart .workout-chart{height:31px;padding:2px 0 4px}.desktop-workout-chart .chart-baseline{bottom:4px}.desktop-workout-chart .chart-bars{gap:1px}.desktop-workout-chart .chart-bar{min-width:2px}.desktop-workout-card>.calendar-workout-menu{top:4px;right:4px;opacity:0;transition:opacity .14s ease}.desktop-workout-card:hover>.calendar-workout-menu,.desktop-workout-card:focus-within>.calendar-workout-menu{opacity:1}.calendar-workout-menu-compact .calendar-workout-menu-trigger{width:23px;height:23px;border-radius:7px}.calendar-workout-menu-compact .calendar-workout-menu-popover{top:calc(100% + 3px);width:164px;padding:4px;gap:1px}.calendar-workout-menu-compact .calendar-workout-menu-popover>button,.calendar-workout-menu-compact .calendar-workout-menu-popover .calendar-workout-menu-export{min-height:28px;padding:0 8px;gap:7px;font-size:12px}.desktop-week-day:has(.calendar-workout-menu-popover) .desktop-week-day-add{opacity:0;pointer-events:none}}:root{--dialog-radius: 24px;--dialog-radius-mobile: 24px;--dialog-border: color-mix(in srgb, var(--text) 12%, transparent);--dialog-backdrop: rgba(7, 12, 21, .58);--dialog-shadow: 0 28px 80px rgba(5, 10, 20, .28)}body:has([aria-modal=true]){overflow:hidden}:is(.bottom-sheet-backdrop,.catalog-modal-backdrop,.wellness-sheet-backdrop,.logout-confirm-backdrop,.auth-modal-backdrop,.desktop-workout-drawer-backdrop){background:var(--dialog-backdrop);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overscroll-behavior:contain;animation:dialog-backdrop-in .16s ease-out both}:is(.bottom-sheet:not(.workout-export-sheet):not(.export-guide-sheet),.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog){border:1px solid var(--dialog-border);border-radius:var(--dialog-radius);color:var(--text);background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%);box-shadow:var(--dialog-shadow);scrollbar-width:thin;animation:dialog-surface-in .19s cubic-bezier(.2,.72,.2,1) both}.app-dark :is(.bottom-sheet:not(.workout-export-sheet):not(.export-guide-sheet),.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog){color:var(--text-dark);background:color-mix(in srgb,var(--surface-dark) 96%,#ffffff 4%);border-color:#94a3b833;box-shadow:0 30px 84px #0000006b}.app-light :is(.bottom-sheet:not(.workout-export-sheet):not(.export-guide-sheet),.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog){color:var(--text-light);background:#fffffffa;border-color:#dbe3ef}.dialog-close-button,.wellness-sheet-header>button,.workout-export-close,.auth-modal-close,.catalog-preview header>.round-action,.catalog-picker-header>.round-action{width:40px;height:40px;min-width:40px;min-height:40px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:12px;padding:0;display:inline-grid;place-items:center;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 92%,var(--text) 8%);box-shadow:none}.dialog-close-button:hover,.wellness-sheet-header>button:hover,.workout-export-close:hover,.auth-modal-close:hover,.catalog-preview header>.round-action:hover,.catalog-picker-header>.round-action:hover{color:var(--text);border-color:color-mix(in srgb,var(--primary) 32%,transparent);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.app-dark :is(.dialog-close-button,.wellness-sheet-header>button,.workout-export-close,.auth-modal-close,.catalog-preview header>.round-action,.catalog-picker-header>.round-action){color:var(--muted-dark);background:#ffffff0e;border-color:#94a3b833}.app-dark :is(.dialog-close-button,.wellness-sheet-header>button,.workout-export-close,.auth-modal-close,.catalog-preview header>.round-action,.catalog-picker-header>.round-action):hover{color:var(--text-dark);background:#347fb324;border-color:#a78bfa61}:is(.action-choice-sheet>.between:first-child,.calendar-add-subhead,.chat-header,.catalog-picker-header,.catalog-preview>header,.wellness-sheet-header,.workout-export-header,.export-guide-header){padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}:is(.action-choice-sheet>.between:first-child,.calendar-add-subhead,.chat-header,.catalog-picker-header,.catalog-preview>header) h2{margin:0;font-size:clamp(21px,4vw,24px);line-height:1.15}.confirmation-sheet{width:min(100%,430px);gap:10px}.confirmation-sheet>div:first-child{padding-bottom:5px}.confirmation-sheet>div:first-child h2{margin:0;font-size:22px;line-height:1.15}.confirmation-sheet>div:first-child p{margin:6px 0 0;line-height:1.45}.confirmation-sheet>.btn{width:100%;min-height:48px}:is(.workout-type-menu,.builder-kind-menu,.calendar-add-dropdown-menu,.editor-block-menu-popover){border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:14px;padding:6px;color:var(--text);background:color-mix(in srgb,var(--surface) 97%,var(--text) 3%);box-shadow:0 18px 44px #050a1433}.app-dark :is(.workout-type-menu,.builder-kind-menu,.calendar-add-dropdown-menu,.editor-block-menu-popover){color:var(--text-dark);background:#17212d;border-color:#94a3b833;box-shadow:0 20px 48px #0000005c}:is(.workout-type-menu,.builder-kind-menu,.calendar-add-dropdown-menu,.editor-block-menu-popover)>button{min-height:42px;border-radius:10px}@media(min-width:768px){:is(.bottom-sheet-backdrop,.catalog-modal-backdrop,.wellness-sheet-backdrop,.logout-confirm-backdrop,.auth-modal-backdrop){padding:28px;align-items:center;justify-content:center}.bottom-sheet:not(.workout-export-sheet):not(.export-guide-sheet){width:min(640px,100%);max-height:min(88dvh,820px);margin:0;padding:22px}.confirmation-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.confirmation-sheet>div:first-child{grid-column:1 / -1}.confirmation-sheet>.btn-secondary{grid-column:1;grid-row:2}.confirmation-sheet>:is(.btn-primary,.btn-danger){grid-column:2;grid-row:2}}@media(max-width:767px){:is(.bottom-sheet-backdrop,.catalog-modal-backdrop,.wellness-sheet-backdrop,.logout-confirm-backdrop,.auth-modal-backdrop){padding:max(8px,env(safe-area-inset-top)) 0 0;align-items:end;justify-content:stretch}.logout-confirm-backdrop,.auth-modal-backdrop{justify-items:stretch}:is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position){position:relative;width:100%;max-width:none;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));margin:0;border-radius:var(--dialog-radius-mobile) var(--dialog-radius-mobile) 0 0;border-bottom:0}.app-shell.app-dark :is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position),.app-shell.app-light :is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position){border-radius:var(--dialog-radius-mobile) var(--dialog-radius-mobile) 0 0;border-bottom:0}:is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position):before{content:"";position:absolute;z-index:4;top:7px;left:50%;width:38px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--text) 22%,transparent);transform:translate(-50%);pointer-events:none}.app-shell.app-dark :is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position):before,.app-shell.app-light :is(.bottom-sheet,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.logout-confirm-dialog,.auth-modal-position):before{content:"";position:absolute;z-index:4;top:7px;left:50%;width:38px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--text) 22%,transparent);transform:translate(-50%);pointer-events:none}.bottom-sheet:not(.workout-export-sheet):not(.export-guide-sheet),.catalog-preview,.catalog-date-dialog,.logout-confirm-dialog{padding:22px 16px calc(18px + env(safe-area-inset-bottom))}.wellness-sheet{max-height:calc(100dvh - max(8px,env(safe-area-inset-top)))}.dialog-close-button,.wellness-sheet-header>button,.workout-export-close,.auth-modal-close,.catalog-preview header>.round-action,.catalog-picker-header>.round-action{border-radius:12px}.confirmation-sheet>.btn{min-height:50px}}.catalog-preview{width:min(560px,100%);max-height:min(820px,calc(100dvh - 28px));padding:0;overflow:hidden;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:0}.catalog-preview-scroll{min-height:0;overflow-y:auto;padding:20px 22px 16px}.catalog-preview-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.catalog-preview-back{min-height:38px;border:0;padding:0;display:inline-flex;align-items:center;gap:7px;color:var(--primary);background:transparent;font-size:13px;font-weight:850}.catalog-preview-nav>.round-action{width:38px;height:38px;min-width:38px;min-height:38px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:12px;display:grid;place-items:center;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 92%,var(--text) 6%)}.catalog-preview-hero{position:relative;padding:18px 48px 0 0}.catalog-preview-goal{display:inline-flex;align-items:center;min-height:25px;border-radius:999px;padding:0 9px;color:color-mix(in srgb,var(--primary) 82%,var(--text));background:color-mix(in srgb,var(--primary) 10%,var(--surface));font-size:12px;font-weight:850}.catalog-preview-hero h2{margin:10px 0 0;color:var(--text);font-size:clamp(22px,5vw,27px);line-height:1.12}.catalog-preview-hero>p{margin:8px 0 0;color:var(--text-muted);font-size:14px;line-height:1.45}.catalog-preview-favorite{position:absolute;top:16px;right:0;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);border-radius:12px;display:grid;place-items:center;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 90%,var(--text) 5%)}.catalog-preview-favorite[aria-pressed=true]{border-color:color-mix(in srgb,#e9a80e 35%,transparent);color:#d49700;background:color-mix(in srgb,#e9a80e 10%,var(--surface))}.catalog-preview-favorite:disabled{opacity:.55}.catalog-preview .catalog-mini-chart.large{height:82px;margin-top:15px;padding:9px 0 7px}.catalog-preview-metrics{min-width:0;padding:13px 0 16px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 0;color:var(--text-muted);font-size:12px;font-weight:800}.catalog-preview-metrics>span{display:inline-flex;align-items:center;gap:5px}.catalog-preview-metrics>span+span:before{content:"·";margin:0 8px;color:color-mix(in srgb,var(--text-muted) 55%,transparent)}.catalog-preview-structure-head{padding-top:15px;border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent);display:flex;align-items:center;justify-content:space-between;gap:12px}.catalog-preview-structure-head h3{margin:0;color:var(--text);font-size:15px}.catalog-preview-structure-head>button{border:0;padding:0;display:inline-flex;align-items:center;gap:5px;color:var(--primary);background:transparent;font-size:12px;font-weight:850}.catalog-preview-structure-head>button svg{transition:transform .16s ease}.catalog-preview-structure-head>button[aria-expanded=true] svg{transform:rotate(180deg)}.catalog-preview-structure{margin-top:10px;display:grid;gap:8px}.catalog-preview-structure-row{min-width:0;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:13px;padding:10px 11px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;background:color-mix(in srgb,var(--surface) 96%,var(--text) 2%)}.catalog-preview-structure-index{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;color:#16806a;background:color-mix(in srgb,#45b89a 14%,var(--surface));font-size:12px;font-weight:900}.catalog-preview-structure-copy{min-width:0;display:grid;gap:3px}.catalog-preview-structure-copy strong,.catalog-preview-structure-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-preview-structure-copy strong{color:var(--text);font-size:13px}.catalog-preview-structure-copy small,.catalog-preview-structure-measure{color:var(--text-muted);font-size:12px}.catalog-preview-structure-measure{font-weight:850;white-space:nowrap}.catalog-preview-segments-expanded{margin-top:10px}.catalog-preview-edit{width:100%;min-height:42px;margin-top:10px;border:0;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--primary);background:transparent;font-size:13px;font-weight:850}.catalog-preview-primary-action{padding:13px 22px calc(16px + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent);display:grid;grid-template-columns:minmax(0,1fr);background:color-mix(in srgb,var(--surface) 97%,transparent)}.catalog-preview-primary-action>.btn{width:100%;min-height:50px}.app-dark .catalog-preview-nav>.round-action,.app-dark .catalog-preview-favorite{border-color:#94a3b833;color:var(--muted-dark);background:#ffffff0e}.app-dark .catalog-preview-structure-index{color:#75d9bd}@media(max-width:620px){.catalog-preview{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));padding:0;border-radius:24px 24px 0 0}.catalog-preview-scroll{padding:20px 16px 14px}.catalog-preview-primary-action{padding-left:16px;padding-right:16px}}@media(max-width:350px){.catalog-preview-structure-row{grid-template-columns:auto minmax(0,1fr)}.catalog-preview-structure-measure{grid-column:2}}.workout-row.calendar-workout-card.workout-row-completed{border-color:color-mix(in srgb,#22b66f 24%,var(--border-light));border-left:5px solid #22b66f;background:linear-gradient(180deg,color-mix(in srgb,#22b66f 6%,transparent),color-mix(in srgb,#22b66f 2%,transparent)),var(--surface-light);box-shadow:var(--shadow-light)}.app-dark .workout-row.calendar-workout-card.workout-row-completed{border-color:color-mix(in srgb,#34d399 24%,var(--border-dark));border-left-color:#34d399;background:linear-gradient(180deg,color-mix(in srgb,#34d399 8%,transparent),color-mix(in srgb,#34d399 3%,transparent)),var(--surface-dark);box-shadow:var(--shadow-dark)}.workout-row.calendar-workout-card.calendar-workout-card-unfilled{border-color:color-mix(in srgb,#e5484d 26%,var(--border-light));border-left:5px solid #e5484d;background:linear-gradient(180deg,color-mix(in srgb,#e5484d 6%,transparent),color-mix(in srgb,#e5484d 2%,transparent)),var(--surface-light);box-shadow:var(--shadow-light)}.app-dark .workout-row.calendar-workout-card.calendar-workout-card-unfilled{border-color:color-mix(in srgb,#fb5c62 27%,var(--border-dark));border-left-color:#fb5c62;background:linear-gradient(180deg,color-mix(in srgb,#fb5c62 9%,transparent),color-mix(in srgb,#fb5c62 3%,transparent)),var(--surface-dark);box-shadow:var(--shadow-dark)}@media(min-width:1024px){.desktop-workout-card.desktop-workout-completed{border-color:color-mix(in srgb,#22b66f 24%,var(--border-light));border-left:5px solid #22b66f;background:linear-gradient(180deg,color-mix(in srgb,#22b66f 6%,transparent),color-mix(in srgb,#22b66f 2%,transparent)),var(--surface-light);box-shadow:0 6px 15px #0f172a0e}.app-dark .desktop-workout-card.desktop-workout-completed{border-color:color-mix(in srgb,#34d399 24%,rgba(148,163,184,.2));border-left-color:#34d399;background:linear-gradient(180deg,color-mix(in srgb,#34d399 8%,transparent),color-mix(in srgb,#34d399 3%,transparent)),var(--desktop-dark-card);box-shadow:0 10px 22px #00000038}.desktop-workout-card.desktop-workout-unfilled{border-color:color-mix(in srgb,#e5484d 26%,var(--border-light));border-left:5px solid #e5484d;background:linear-gradient(180deg,color-mix(in srgb,#e5484d 6%,transparent),color-mix(in srgb,#e5484d 2%,transparent)),var(--surface-light);box-shadow:0 6px 15px #0f172a0e}.app-dark .desktop-workout-card.desktop-workout-unfilled{border-color:color-mix(in srgb,#fb5c62 27%,rgba(148,163,184,.2));border-left-color:#fb5c62;background:linear-gradient(180deg,color-mix(in srgb,#fb5c62 9%,transparent),color-mix(in srgb,#fb5c62 3%,transparent)),var(--desktop-dark-card);box-shadow:0 10px 22px #00000038}}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-surface-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html[data-theme=light],html[data-theme=light] body{color:#101820;background:#edf2f6}html[data-theme=dark],html[data-theme=dark] body{color:#f4f7f6;background:#081012}.app-light{--text: #101820;--text-muted: #647481;--surface: #f8fafc;--surface-raised: #ffffff;--surface-soft: #edf3f7;--border: #d2dce5;--primary: #347fb3;--primary-2: #255f85;--primary-soft: #e0edf5;--primary-fill: #347fb3;--primary-fill-text: #ffffff;--ai-accent: #d85643;--ai-soft: #f9e8e3;--carbon: #0b1214;--carbon-raised: #111b1e;--carbon-border: #263438;--on-carbon: #f4f7f6;--on-carbon-muted: #a7b4b2;--shadow-light: 0 12px 30px rgba(11, 18, 20, .075);color:var(--text);background:#edf2f6}.app-dark{--text: #f4f7f6;--text-muted: #9aa9a7;--surface: #10191b;--surface-raised: #172225;--surface-soft: #0c1517;--border: #2a393b;--primary: #78b7d3;--primary-2: #4e96bd;--primary-soft: #152f43;--primary-fill: #347fb3;--primary-fill-text: #ffffff;--ai-accent: #ee806b;--ai-soft: #3a211e;--carbon: #060d0f;--carbon-raised: #0d1719;--carbon-border: #263438;--on-carbon: #f4f7f6;--on-carbon-muted: #9aa9a7;--desktop-dark-bg: #081012;--desktop-dark-panel: #10191b;--desktop-dark-panel-strong: #172225;--desktop-dark-card: #172225;--desktop-dark-grid: #2a393b;--desktop-dark-text: #f4f7f6;--desktop-dark-muted: #9aa9a7;--shadow-dark: 0 14px 34px rgba(0, 0, 0, .24);color:var(--text);background:#081012}.app-shell h1,.app-shell h2,.app-shell h3{letter-spacing:-.025em;font-weight:700}.app-shell :is(button,input,textarea,select):focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 54%,transparent);outline-offset:2px}.app-light :is(.card,.dark-card,.more-card,.progress-period-section,.progress-history-chart-card,.catalog-template-card,.workout-row,.desktop-workout-card,.bottom-sheet,.logout-confirm-dialog,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.chat-panel-screen,.connections-card,.profile-details-card,.desktop-workout-drawer){color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.app-dark :is(.card,.dark-card,.more-card,.progress-period-section,.progress-history-chart-card,.catalog-template-card,.workout-row,.desktop-workout-card,.bottom-sheet,.logout-confirm-dialog,.catalog-preview,.catalog-date-dialog,.wellness-sheet,.chat-panel-screen,.connections-card,.profile-details-card,.desktop-workout-drawer){color:var(--text);border-color:var(--border);background:var(--surface);box-shadow:none}.app-shell :is(.btn,.round-action){font-weight:700;box-shadow:none}.app-shell :is(.btn-primary,.desktop-login-trigger),.app-light :is(.desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary),.app-dark :is(.desktop-web-shell .btn-primary,.desktop-workout-drawer .btn-primary,.bottom-sheet .btn-primary,.logout-confirm-dialog .btn-primary){color:var(--primary-fill-text);-webkit-text-fill-color:var(--primary-fill-text);border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:none}.app-shell :is(.btn-primary,.desktop-login-trigger):hover:not(:disabled){filter:brightness(.95);transform:translateY(-1px)}.app-shell :is(.btn-secondary,.btn-ghost,.btn-outline,.round-action),.app-light :is(.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost,.desktop-workout-drawer .btn-secondary,.bottom-sheet .btn-secondary),.app-dark :is(.desktop-web-shell .btn-secondary,.desktop-web-shell .btn-ghost,.desktop-workout-drawer .btn-secondary,.bottom-sheet .btn-secondary){color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.app-shell :is(.btn-secondary,.btn-ghost,.btn-outline,.round-action):hover:not(:disabled){color:var(--primary);border-color:color-mix(in srgb,var(--primary) 42%,var(--border));background:var(--primary-soft)}.app-shell .text-action{color:var(--primary);border-color:transparent;background:transparent;box-shadow:none}.app-shell :is(.input,.textarea,.select,input[type=text],input[type=number],input[type=email],input[type=password],input[type=date],input[type=search],textarea,select){color:var(--text);-webkit-text-fill-color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.app-shell :is(input,textarea,select):focus{border-color:color-mix(in srgb,var(--primary) 58%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 11%,transparent)}.app-shell :is(input,textarea)::placeholder{color:color-mix(in srgb,var(--text-muted) 78%,transparent);-webkit-text-fill-color:color-mix(in srgb,var(--text-muted) 78%,transparent)}.bottom-nav,.app-dark .bottom-nav{border-top-color:var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav button{color:var(--text-muted);font-weight:650}.bottom-nav button.active{color:var(--primary);background:var(--primary-soft)}.bottom-nav .bottom-nav-coach{color:var(--text-muted)}.bottom-nav-coach-icon{color:var(--ai-accent);border:1px solid color-mix(in srgb,var(--ai-accent) 28%,var(--border));background:var(--ai-soft);box-shadow:none}.bottom-nav .bottom-nav-coach.active{color:var(--ai-accent);background:var(--ai-soft)}.sport-icon,.workout-chart,.catalog-mini-chart{filter:saturate(.92)}.calendar-workout-card,.desktop-workout-card{--calendar-workout-accent: #7d8a88}.calendar-workout-card-run,.desktop-workout-sport-run{--calendar-workout-accent: #2b759b}.calendar-workout-card-bike,.desktop-workout-sport-bike{--calendar-workout-accent: #3d86b6}.calendar-workout-card-swim,.desktop-workout-sport-swim{--calendar-workout-accent: #2473a6}.calendar-workout-card-strength,.desktop-workout-sport-strength{--calendar-workout-accent: #d85643}.calendar-workout-card-mobility,.desktop-workout-sport-mobility{--calendar-workout-accent: #5b86a6}.calendar-workout-card-rest,.desktop-workout-sport-rest,.calendar-workout-card-other,.desktop-workout-sport-other{--calendar-workout-accent: #7d8a88}.app-light :is(.segmented-control,.progress-view-tabs,.progress-history-tabs,.progress-metric-tabs,.progress-tabs,.zone-tabs,.theme-toggle,.catalog-scope-tabs),.app-dark :is(.segmented-control,.progress-view-tabs,.progress-history-tabs,.progress-metric-tabs,.progress-tabs,.zone-tabs,.theme-toggle,.catalog-scope-tabs){border-color:var(--border);background:var(--surface-soft);box-shadow:none}.app-shell :is(.segmented-control,.progress-view-tabs,.progress-history-tabs,.progress-metric-tabs,.progress-tabs,.zone-tabs,.theme-toggle,.catalog-scope-tabs) button{color:var(--text-muted);font-weight:650;background:transparent;box-shadow:none}.app-shell :is(.segmented-control button.is-active,.progress-view-tabs button.active,.progress-history-tabs button.active,.progress-metric-tabs button.active,.progress-tabs .active,.zone-tabs button.is-active,.theme-toggle button.is-active,.catalog-scope-tabs button.active){color:var(--primary-fill-text);border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:0 5px 14px color-mix(in srgb,var(--primary-fill) 20%,transparent)}.app-light :is(.catalog-template-card,.progress-period-section,.progress-workout-list,.chat-messages,.chat-empty),.app-dark :is(.catalog-template-card,.progress-period-section,.progress-workout-list,.chat-messages,.chat-empty){color:var(--text-muted);border-color:var(--border);background:var(--surface-soft);box-shadow:none}.app-light :is(.chat-message-assistant,.chat-message-user),.app-dark :is(.chat-message-assistant,.chat-message-user){color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:none}.app-light .chat-message-user,.app-dark .chat-message-user{border-color:color-mix(in srgb,var(--primary) 24%,var(--border));background:var(--primary-soft)}.chat-limit-pill,.app-dark .chat-limit-pill,.app-light .chat-limit-pill{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,var(--border));background:var(--primary-soft)}.chat-starter-actions button,.app-dark .chat-starter-actions button{color:var(--text);border-color:var(--border);background:var(--surface-raised)}.chat-starter-actions button:hover,.app-dark .chat-starter-actions button:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 38%,var(--border));background:var(--primary-soft)}.mobile-coach-screen,.app-light .mobile-coach-screen,.app-dark .mobile-coach-screen{color:var(--text);background:var(--bg-light)}.app-dark .mobile-coach-screen{background:var(--bg-dark)}@media(min-width:1024px){.app-light .desktop-web-topbar,.app-dark .desktop-web-topbar{min-height:66px;border-color:var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.desktop-web-brand>span,.app-dark .desktop-web-brand>span{border-color:var(--border);border-radius:11px;background:#171a17;box-shadow:none}.desktop-web-brand strong,.app-dark .desktop-web-brand strong{color:var(--text);font-weight:700}.desktop-web-brand small,.app-dark .desktop-web-brand small{color:var(--text-muted);font-weight:600}.desktop-top-tabs,.app-dark .desktop-top-tabs{gap:3px;padding:0;border:0;border-radius:0;background:transparent}.desktop-top-tabs button,.app-dark .desktop-top-tabs button{min-height:42px;border:1px solid transparent;border-radius:10px;color:var(--text-muted);background:transparent;font-weight:650;box-shadow:none}.desktop-top-tabs button:hover,.desktop-top-tabs button.active,.app-dark .desktop-top-tabs button:hover,.app-dark .desktop-top-tabs button.active{color:var(--text);border-color:var(--border);background:var(--surface-soft);box-shadow:none}.desktop-coach-trigger,.app-dark .desktop-coach-trigger{min-height:42px;color:var(--text);border-color:var(--border);border-radius:10px;background:transparent;font-weight:650;box-shadow:none}.desktop-coach-trigger svg,.app-dark .desktop-coach-trigger svg{color:var(--ai-accent)}.desktop-coach-trigger:hover,.desktop-coach-trigger.active,.app-dark .desktop-coach-trigger:hover,.app-dark .desktop-coach-trigger.active{color:var(--text);border-color:color-mix(in srgb,var(--ai-accent) 34%,var(--border));background:var(--ai-soft);box-shadow:none}.desktop-login-trigger{min-height:42px;border-radius:10px;font-weight:700;box-shadow:none}.desktop-calendar-title-icon,.app-dark .desktop-calendar-title-icon{color:var(--primary);border-color:var(--border);border-radius:12px;background:var(--primary-soft);box-shadow:none}.desktop-calendar-title h1{color:var(--text);font-weight:700}.desktop-calendar-title p{color:var(--text-muted);font-weight:600}.desktop-week-list,.app-dark .desktop-week-list{gap:16px}.desktop-week-row,.app-dark .desktop-week-row{border-color:var(--border);border-radius:16px;background:var(--surface);box-shadow:none}.desktop-week-row:before,.app-dark .desktop-week-row:before{display:none}.desktop-week-row-current,.app-dark .desktop-week-row-current{border-color:color-mix(in srgb,var(--primary) 32%,var(--border));box-shadow:inset 3px 0 0 var(--primary)}.desktop-week-row-head,.app-dark .desktop-week-row-head{min-height:58px;padding-left:18px;color:var(--text);border-bottom-color:var(--border);background:var(--surface-raised)}.desktop-week-row-head strong,.app-dark .desktop-week-row-head strong{color:var(--text);font-weight:700}.desktop-week-row-head span,.app-dark .desktop-week-row-head span{color:var(--text-muted);font-weight:600}.desktop-week-row-actions .btn,.desktop-calendar-actions .btn,.app-dark .desktop-week-row-actions .btn,.app-dark .desktop-calendar-actions .btn{min-height:38px;color:var(--text);border-color:var(--border);background:transparent;box-shadow:none}.desktop-week-row-actions .btn:hover,.desktop-calendar-actions .btn:hover,.app-dark .desktop-week-row-actions .btn:hover,.app-dark .desktop-calendar-actions .btn:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 38%,var(--border));background:var(--primary-soft)}.desktop-week-row-actions .btn-primary,.desktop-calendar-actions .btn-primary,.app-dark .desktop-week-row-actions .btn-primary,.app-dark .desktop-calendar-actions .btn-primary{color:var(--primary-fill-text);border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:none}.desktop-week-note,.app-dark .desktop-week-note{color:var(--text-muted);border-bottom-color:var(--border);background:var(--surface-soft);font-weight:600}.desktop-week-days,.app-dark .desktop-week-days{background:var(--surface)}.desktop-week-day,.app-dark .desktop-week-day{min-height:166px;border-color:var(--border);background:var(--surface);box-shadow:none}.desktop-week-day-weekend,.app-dark .desktop-week-day-weekend{background:var(--surface-soft)}.desktop-week-day-today,.app-dark .desktop-week-day-today{background:var(--primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 30%,var(--border))}.desktop-week-day-today:before,.app-dark .desktop-week-day-today:before{display:none}.desktop-week-day-head span,.app-dark .desktop-week-day-head span{color:var(--text-muted);font-weight:650}.desktop-week-day-head strong,.app-dark .desktop-week-day-head strong{color:var(--text);font-weight:700;background:transparent}.desktop-week-day-today .desktop-week-day-head strong,.app-dark .desktop-week-day-today .desktop-week-day-head strong{color:var(--primary-fill-text);background:var(--primary-fill);box-shadow:none}.desktop-week-day-add,.app-dark .desktop-week-day-add{color:var(--text-muted);border-color:var(--border);background:transparent;box-shadow:none}.desktop-week-day-add:hover,.app-dark .desktop-week-day-add:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 44%,var(--border));background:var(--primary-soft)}.desktop-workout-card,.app-dark .desktop-workout-card,.desktop-race-card,.app-dark .desktop-race-card{color:var(--text);border-color:var(--border);border-left-color:var(--calendar-workout-accent);background:var(--surface-raised);box-shadow:none}.desktop-workout-main strong,.app-dark .desktop-workout-main strong,.desktop-workout-meta strong,.app-dark .desktop-workout-meta strong{color:var(--text);font-weight:650}.desktop-workout-main small,.app-dark .desktop-workout-main small,.desktop-workout-meta,.app-dark .desktop-workout-meta{color:var(--text-muted);font-weight:550}.desktop-today-fab,.app-dark .desktop-today-fab{color:var(--text);border-color:var(--border);background:var(--surface-raised);box-shadow:0 8px 24px #0000001a;-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:700}.desktop-web-shell :is(.card,.dark-card,.more-card,.progress-period-section),.app-dark .desktop-web-shell :is(.card,.dark-card,.more-card,.progress-period-section){color:var(--text);border-color:var(--border);background:var(--surface);box-shadow:none}}@media(max-width:1023px){.app-shell{background:transparent}.calendar-range,.calendar-days,.calendar-day-group,.mobile-week-toolbar,.week-load-summary{border-color:var(--border);box-shadow:none}.calendar-days button,.app-dark .calendar-days button{color:var(--text-muted);background:transparent}.calendar-days button.active,.app-dark .calendar-days button.active{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 30%,var(--border));background:var(--primary-soft);box-shadow:none}.calendar-days button.active strong,.app-dark .calendar-days button.active strong{color:var(--primary)}.calendar-day-today,.app-dark .calendar-day-today{border-color:color-mix(in srgb,var(--primary) 32%,var(--border));background:var(--primary-soft);box-shadow:none}.calendar-day-today:before,.app-dark .calendar-day-today:before{background:var(--primary);box-shadow:none}.workout-row.calendar-workout-card,.app-dark .workout-row.calendar-workout-card{color:var(--text);border-color:var(--border);border-left:3px solid var(--calendar-workout-accent);background:var(--surface-raised);box-shadow:none}.calendar-workout-card-copy strong,.app-dark .calendar-workout-card-copy strong,.calendar-workout-card-metrics strong,.app-dark .calendar-workout-card-metrics strong{color:var(--text);font-weight:650}.calendar-workout-card-copy small,.app-dark .calendar-workout-card-copy small,.calendar-workout-card-metrics,.app-dark .calendar-workout-card-metrics{color:var(--text-muted);font-weight:550}}.app-shell{color:var(--text);background:var(--surface-soft)}.app-light :is(.card,.dark-card,.more-card,.progress-period-section,.progress-history-chart-card,.catalog-template-card,.workout-row,.desktop-workout-card,.connections-card,.profile-details-card){box-shadow:var(--shadow-light)}.app-dark :is(.card,.dark-card,.more-card,.progress-period-section,.progress-history-chart-card,.catalog-template-card,.workout-row,.desktop-workout-card,.connections-card,.profile-details-card){box-shadow:var(--shadow-dark)}.goal-option-card.is-active,.app-light .goal-option-card.is-active,.app-dark .goal-option-card.is-active{color:var(--text);border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:var(--primary-soft);box-shadow:inset 4px 0 0 var(--primary)}.goal-option-card.is-active small,.app-light .goal-option-card.is-active small,.app-dark .goal-option-card.is-active small{color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--surface-raised))}.switch-control.is-on,.app-light .switch-control.is-on,.app-dark .switch-control.is-on{border-color:var(--primary-fill);background:var(--primary-fill)}.switch-control.is-on:after,.app-light .switch-control.is-on:after,.app-dark .switch-control.is-on:after{background:#fff}.coach-operation-diff>span,.coach-action-reasoning,.coach-change-counts .is-changed{color:var(--primary)}.coach-action-reasoning{border-left-color:var(--primary);background:var(--primary-soft)}@media(min-width:1024px){.app-light .desktop-web-topbar,.app-dark .desktop-web-topbar{border-color:var(--carbon-border);background:var(--carbon);box-shadow:0 8px 28px #040b0d2e;-webkit-backdrop-filter:none;backdrop-filter:none}.desktop-web-brand>span,.app-dark .desktop-web-brand>span{border-color:var(--carbon-border);background:var(--carbon-raised)}.desktop-web-brand strong,.app-dark .desktop-web-brand strong{color:var(--on-carbon)}.desktop-web-brand small,.app-dark .desktop-web-brand small,.desktop-top-tabs button,.app-dark .desktop-top-tabs button{color:var(--on-carbon-muted)}.desktop-top-tabs button:hover,.app-dark .desktop-top-tabs button:hover{color:var(--on-carbon);border-color:var(--carbon-border);background:var(--carbon-raised)}.desktop-top-tabs button.active,.app-dark .desktop-top-tabs button.active{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:0 6px 18px #347fb33d}.desktop-coach-trigger,.app-dark .desktop-coach-trigger{color:var(--on-carbon);border-color:var(--carbon-border);background:var(--carbon-raised)}.desktop-coach-trigger svg,.app-dark .desktop-coach-trigger svg{color:var(--ai-accent)}.desktop-coach-trigger:hover,.desktop-coach-trigger.active,.app-dark .desktop-coach-trigger:hover,.app-dark .desktop-coach-trigger.active{color:var(--on-carbon);border-color:color-mix(in srgb,var(--ai-accent) 50%,var(--carbon-border));background:color-mix(in srgb,var(--ai-accent) 13%,var(--carbon-raised))}.desktop-login-trigger{border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:0 6px 18px #347fb338}.desktop-calendar-toolbar{border:1px solid var(--border);border-radius:16px;padding:14px 16px;background:var(--surface-raised);box-shadow:var(--shadow-light)}.app-dark .desktop-calendar-toolbar{box-shadow:var(--shadow-dark)}.desktop-calendar-title-icon,.app-dark .desktop-calendar-title-icon{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill)}.desktop-week-row,.app-dark .desktop-week-row{overflow:hidden;box-shadow:var(--shadow-light)}.app-dark .desktop-week-row{box-shadow:var(--shadow-dark)}.desktop-week-row-current,.app-dark .desktop-week-row-current{border-color:var(--carbon-border);background:var(--carbon);box-shadow:0 18px 44px #040b0d2e}.desktop-week-row-current .desktop-week-row-head,.app-dark .desktop-week-row-current .desktop-week-row-head{color:var(--on-carbon);border-bottom-color:var(--carbon-border);background:var(--carbon)}.desktop-week-row-current .desktop-week-row-head strong,.app-dark .desktop-week-row-current .desktop-week-row-head strong{color:var(--on-carbon)}.desktop-week-row-current .desktop-week-row-head span,.app-dark .desktop-week-row-current .desktop-week-row-head span{color:var(--on-carbon-muted)}.desktop-week-row-current .desktop-week-row-actions .btn,.app-dark .desktop-week-row-current .desktop-week-row-actions .btn{color:var(--on-carbon);border-color:var(--carbon-border);background:var(--carbon-raised)}.desktop-week-row-current .desktop-week-row-actions .btn:hover,.app-dark .desktop-week-row-current .desktop-week-row-actions .btn:hover{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill)}.desktop-week-row-current .desktop-week-days,.app-dark .desktop-week-row-current .desktop-week-days{gap:4px;padding:0 8px 8px;background:var(--carbon)}.desktop-week-row-current .desktop-week-day,.app-dark .desktop-week-row-current .desktop-week-day{min-height:174px;padding:11px 8px 8px;border-color:var(--carbon-border);border-radius:12px;background:var(--carbon)}.desktop-week-row-current .desktop-week-day-weekend,.app-dark .desktop-week-row-current .desktop-week-day-weekend{background:var(--carbon-raised)}.desktop-week-row-current .desktop-week-day-today,.app-dark .desktop-week-row-current .desktop-week-day-today{background:var(--carbon-raised);box-shadow:inset 0 0 0 1px var(--primary-fill)}.desktop-week-row-current .desktop-week-day-head span,.app-dark .desktop-week-row-current .desktop-week-day-head span{color:var(--on-carbon-muted)}.desktop-week-row-current .desktop-week-day-head strong,.app-dark .desktop-week-row-current .desktop-week-day-head strong{color:var(--on-carbon)}.desktop-week-row-current .desktop-week-day-today .desktop-week-day-head strong,.app-dark .desktop-week-row-current .desktop-week-day-today .desktop-week-day-head strong{color:#fff;background:var(--primary-fill)}.desktop-week-row-current .desktop-week-day-add,.app-dark .desktop-week-row-current .desktop-week-day-add{color:var(--on-carbon-muted);border-color:var(--carbon-border)}.desktop-week-row-current .desktop-week-day-add:hover,.app-dark .desktop-week-row-current .desktop-week-day-add:hover{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill)}.app-light .desktop-week-row-current .desktop-workout-card,.app-light .desktop-week-row-current .desktop-race-card{color:var(--text);border-color:#d9e1de;border-left-color:var(--calendar-workout-accent);background:#fefcf8;box-shadow:0 8px 20px #020c0e29}.app-dark .desktop-week-row-current .desktop-workout-card,.app-dark .desktop-week-row-current .desktop-race-card{color:var(--text);border-color:var(--border);border-left-color:var(--calendar-workout-accent);background:var(--surface-raised);box-shadow:0 8px 20px #0000003d}.desktop-week-row:not(.desktop-week-row-current) .desktop-week-note,.app-dark .desktop-week-row:not(.desktop-week-row-current) .desktop-week-note{background:var(--primary-soft)}}@media(max-width:1023px){.app-light.app-shell{background:#edf2f6}.app-dark.app-shell{background:#081012}.mobile-plan-header{min-height:84px;padding:14px;border:1px solid var(--carbon-border);border-radius:17px;color:var(--on-carbon);background:var(--carbon);box-shadow:0 12px 28px #040b0d2e}.mobile-plan-header h1{color:var(--on-carbon)}.mobile-plan-header>div>small{color:#8fc4dd}.mobile-plan-race{border-color:var(--carbon-border);color:#8fc4dd;background:var(--carbon-raised)}.mobile-plan-race strong{color:var(--on-carbon)}.mobile-plan-race small{color:var(--on-carbon-muted)}.mobile-calendar-mode{border-color:var(--border);background:var(--surface-raised);box-shadow:0 7px 18px color-mix(in srgb,var(--text) 7%,transparent)}.mobile-calendar-mode button.is-active{color:#fff;background:var(--primary-fill);box-shadow:0 5px 14px #347fb338}.mobile-week-navigation>button{border:1px solid var(--border);color:var(--text);background:var(--surface-raised)}.mobile-date-strip>button.is-selected,.calendar-days button.active,.app-dark .calendar-days button.active{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:0 6px 16px #347fb333}.mobile-date-strip>button.is-selected strong,.calendar-days button.active strong,.app-dark .calendar-days button.active strong{color:#fff}.mobile-week-toolbar{padding:7px;border:1px solid var(--border);border-radius:15px;background:var(--surface-raised);box-shadow:0 7px 18px color-mix(in srgb,var(--text) 7%,transparent)}.mobile-week-day-row,.workout-row.calendar-workout-card,.app-dark .workout-row.calendar-workout-card{border-color:var(--border);background:var(--surface-raised);box-shadow:0 6px 16px color-mix(in srgb,var(--text) 7%,transparent)}.mobile-week-day-row.is-today{border-color:color-mix(in srgb,var(--primary) 48%,var(--border));background:var(--primary-soft);box-shadow:inset 4px 0 0 var(--primary)}.bottom-nav,.app-light .bottom-nav,.app-dark .bottom-nav{border-top-color:var(--carbon-border);background:var(--carbon);box-shadow:0 -8px 24px #040b0d33;-webkit-backdrop-filter:none;backdrop-filter:none}.bottom-nav button{color:var(--on-carbon-muted)}.bottom-nav button.active{color:#fff;background:var(--carbon-raised)}.bottom-nav-coach-icon{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill);box-shadow:0 5px 14px #347fb342}.bottom-nav .bottom-nav-coach.active{color:#fff;background:var(--carbon-raised)}}.week-load-summary,.week-load-summary.is-compact{gap:0;margin:0;padding:3px;border-color:var(--border);border-radius:12px;color:var(--text);background:var(--surface-soft);box-shadow:none;line-height:1.1}.week-load-insight{min-width:0;min-height:34px;padding:4px 9px;display:inline-flex;align-items:center;gap:7px;border-radius:9px}.week-load-insight+.week-load-insight{border-left:1px solid var(--border);border-radius:0 9px 9px 0}.week-load-insight>span{min-width:0;display:grid;gap:2px}.desktop-week-row-head .week-load-summary .week-load-insight small,.week-load-summary .week-load-insight small{color:var(--text-muted);font-size:8px;font-weight:800;line-height:1;letter-spacing:.08em;text-transform:uppercase}.desktop-week-row-head .week-load-summary .week-load-insight b,.week-load-summary .week-load-insight b{color:var(--text);font-size:12px;font-weight:850;line-height:1.05}.desktop-week-row-head .week-load-summary .week-load-insight.is-volume>svg,.week-load-insight.is-volume>svg{color:#347fb3}.desktop-week-row-head .week-load-summary .week-load-insight.is-load>svg,.week-load-insight.is-load>svg{color:var(--ai-accent)}.week-load-completed{min-height:30px;margin-left:3px;padding:0 8px;display:inline-flex;align-items:center;gap:4px;border-radius:8px;color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 11%,transparent)}.desktop-week-row-current .week-load-summary{color:var(--on-carbon);border-color:var(--carbon-border);background:var(--carbon-raised)}.desktop-week-row-current .week-load-insight+.week-load-insight{border-left-color:var(--carbon-border)}.desktop-week-row-current .week-load-summary .week-load-insight small{color:var(--on-carbon-muted)}.desktop-week-row-current .week-load-summary .week-load-insight b{color:var(--on-carbon)}@media(max-width:1023px){.mobile-week-toolbar .week-load-summary.is-compact{width:auto;flex:1 1 auto}.week-load-summary.is-compact .week-load-insight{flex:1 1 0;justify-content:center;padding:5px 6px}.week-load-summary.is-compact .week-load-insight>span{display:block}.week-load-summary.is-compact .week-load-insight small{display:none}.week-load-summary.is-compact .week-load-completed{padding:0 6px}}@media(min-width:1024px){.desktop-week-day,.app-dark .desktop-week-day,.desktop-week-row-current .desktop-week-day,.app-dark .desktop-week-row-current .desktop-week-day{min-height:254px;grid-template-rows:auto minmax(172px,1fr) auto}.desktop-week-day-items{align-content:start;grid-auto-rows:auto}.desktop-workout-card,.desktop-workout-completed,.desktop-workout-skipped,.desktop-workout-cancelled,.app-light .desktop-week-row-current .desktop-workout-card,.app-dark .desktop-week-row-current .desktop-workout-card{min-height:164px;height:auto;padding:14px 12px 10px;align-items:stretch;border-width:1px;border-left-width:1px;border-left-color:var(--border);border-radius:13px;box-shadow:0 8px 22px #020c0e1c}.app-light .desktop-week-row-current .desktop-workout-card{border-color:#d9e1de;border-left-color:#d9e1de;background:#fefcf8}.app-dark .desktop-week-row-current .desktop-workout-card{border-color:var(--border);border-left-color:var(--border);background:var(--surface-raised);box-shadow:0 9px 24px #00000040}.desktop-workout-card.desktop-workout-completed,.app-dark .desktop-workout-card.desktop-workout-completed{border-top:3px solid #2f9a70}.desktop-workout-card.desktop-workout-unfilled,.app-dark .desktop-workout-card.desktop-workout-unfilled{border-top:3px solid #d84b4b}.desktop-workout-open{height:100%;overflow:hidden;grid-template-rows:auto auto minmax(34px,1fr);align-items:start;gap:9px}.desktop-workout-main{min-width:0;min-height:48px;align-items:flex-start;gap:10px}.desktop-workout-main .sport-icon-sm{width:34px;height:34px;flex-basis:34px;border-radius:0;color:var(--calendar-workout-accent);background:transparent}.desktop-workout-main .sport-icon-sm svg{width:27px;height:27px;stroke-width:2.15}.desktop-workout-title{width:100%;min-width:0;max-width:100%;overflow:hidden;flex:1 1 auto;padding-top:1px}.desktop-workout-main strong,.app-dark .desktop-workout-main strong{display:-webkit-box;max-width:100%;overflow:hidden;color:var(--text);font-size:13px;font-weight:700;line-height:1.18;overflow-wrap:anywhere;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:3}.desktop-workout-main small,.app-dark .desktop-workout-main small{display:-webkit-box;max-width:100%;overflow:hidden;margin-top:4px;color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.28;text-overflow:clip;overflow-wrap:anywhere;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.desktop-workout-meta,.app-dark .desktop-workout-meta{min-width:0;max-width:100%;align-self:start;flex-wrap:nowrap;overflow:hidden;padding-top:1px;color:var(--text-muted);font-size:11px;font-weight:650;line-height:1.2;white-space:nowrap}.desktop-workout-meta>*,.desktop-workout-meta strong,.app-dark .desktop-workout-meta strong{min-width:0;overflow:hidden;color:inherit;font-size:inherit;font-weight:700;text-overflow:ellipsis}.desktop-workout-meta>*+*:before{margin:0 6px}.desktop-workout-chart{min-height:36px;margin-top:auto;align-self:end}.desktop-workout-chart .workout-chart{height:40px;padding:2px 0 5px}.desktop-workout-chart .chart-baseline{bottom:4px;border-top-width:2px;border-top-color:color-mix(in srgb,var(--calendar-workout-accent) 68%,transparent)}.desktop-workout-chart .chart-bars{gap:3px}.desktop-workout-chart .chart-bar{min-width:4px;border-radius:3px 3px 0 0}.desktop-workout-sport-rest:after{content:"";position:absolute;right:12px;bottom:13px;left:12px;height:3px;border-radius:999px;background:var(--calendar-workout-accent);opacity:.82}.desktop-workout-card>.calendar-workout-menu{top:8px;right:8px}.desktop-workout-sport-rest{--calendar-workout-accent: #347fb3}.desktop-workout-card:hover,.desktop-workout-card:focus-within{border-color:color-mix(in srgb,var(--calendar-workout-accent) 42%,var(--border));transform:translateY(-2px);box-shadow:0 12px 28px #020c0e26}.app-light .desktop-workout-card,.app-light .desktop-week-row-current .desktop-workout-card{color:#101820;border-color:#c7d4de;border-left-color:#c7d4de;background:#edf3f7}.app-light .desktop-workout-card:hover,.app-light .desktop-workout-card:focus-within,.app-light .desktop-week-row-current .desktop-workout-card:hover,.app-light .desktop-week-row-current .desktop-workout-card:focus-within{border-color:color-mix(in srgb,var(--calendar-workout-accent) 42%,#c7d4de);background:#e4eef5}.app-light.app-shell{background:#edf2f6}.app-light .desktop-week-row:not(.desktop-week-row-current){border-color:#cbd7e2;background:#f9fbfd;box-shadow:0 12px 30px #1f374917}.app-light .desktop-week-row:not(.desktop-week-row-current) .desktop-week-row-head{border-bottom-color:#d6e0e8;background:#f1f5f9}.app-light .desktop-week-row:not(.desktop-week-row-current) .desktop-week-days{background:#f9fbfd}.app-light .desktop-week-row:not(.desktop-week-row-current) .desktop-week-day{border-color:#d6e0e8;background:#f9fbfd}.app-light .desktop-week-row:not(.desktop-week-row-current) .desktop-week-day-weekend{background:#edf3f8}.desktop-week-row-empty .desktop-week-day,.app-light .desktop-week-row-empty .desktop-week-day,.app-dark .desktop-week-row-empty .desktop-week-day{min-height:148px;grid-template-rows:auto minmax(52px,1fr) auto}}@media(max-width:1023px){.app-light .workout-row.calendar-workout-card{border-color:#c7d4de;background:#edf3f7}.app-light .workout-row.calendar-workout-card:active{background:#e4eef5}}.app-light .calendar-workout-card .sport-icon,.app-light .desktop-workout-card .sport-icon{color:var(--sport-icon-color, #71808e);background:color-mix(in srgb,var(--sport-icon-color, #71808e) 10%,#ffffff)}.app-light .desktop-workout-main .sport-icon-sm{color:var(--sport-icon-color, #71808e);background:transparent}.app-light .workout-row.calendar-workout-card,.app-light .workout-row.calendar-workout-card.workout-row-cancelled{border:1px solid #b9c8d5;background:#fbfcfe;box-shadow:0 9px 22px #1f37491a}.app-light .workout-row.calendar-workout-card.workout-row-completed{border:1px solid #a8beb1;background:#e8efeb;box-shadow:0 9px 22px #3e52461a}.app-light .workout-row.calendar-workout-card.workout-row-skipped{border:1px solid #d8b2ac;background:#eee7e6;box-shadow:0 9px 22px #5e47441a}.app-light .calendar-workout-card-chart .chart-baseline{border-top-color:#cbd5df}@media(min-width:1024px){.app-light .desktop-workout-card,.app-light .desktop-week-row-current .desktop-workout-card{border:1px solid #b9c8d5;background:#fbfcfe;box-shadow:0 9px 22px #1f37491c}.app-light .desktop-workout-card:hover,.app-light .desktop-workout-card:focus-within,.app-light .desktop-week-row-current .desktop-workout-card:hover,.app-light .desktop-week-row-current .desktop-workout-card:focus-within{border-color:#879fb3;background:#fff;box-shadow:0 13px 28px #1f374929}.app-light .desktop-workout-card.desktop-workout-completed,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-completed{border:1px solid #a8beb1;background:#e8efeb;box-shadow:0 9px 22px #3e52461a}.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-completed{border-color:#69aa8d;background:#b9dfcf;box-shadow:0 11px 24px #14684833}.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-completed:hover,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-completed:focus-within{border-color:#3f8f6b;background:#c8e8da;box-shadow:0 14px 30px #14684842}.app-light .desktop-workout-card.desktop-workout-skipped,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-skipped{border:1px solid #d8b2ac;background:#eee7e6;box-shadow:0 9px 22px #5e47441a}.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-skipped{border-color:#bd766d;background:#e6c5c0;box-shadow:0 11px 24px #7e362f33}.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-skipped:hover,.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-skipped:focus-within{border-color:#a8544a;background:#eed2ce;box-shadow:0 14px 30px #7e362f42}.app-light .desktop-workout-card.desktop-workout-unfilled:not(.desktop-workout-skipped),.app-light .desktop-week-row-current .desktop-workout-card.desktop-workout-unfilled:not(.desktop-workout-skipped){border:1px solid #b9c8d5;background:#fbfcfe;box-shadow:0 9px 22px #1f374917}.app-light .desktop-workout-chart .chart-baseline{border-top-color:#cbd5df}.app-light .desktop-workout-sport-rest:after{background:#71808e}}.wellness-compact-shell,.wellness-compact-shell.wellness-state-normal,.wellness-day-marker,.wellness-day-marker.wellness-state-normal{--wellness-marker: #d6a521}.wellness-compact-shell.wellness-state-recovery_needed,.wellness-day-marker.wellness-state-recovery_needed{--wellness-marker: #d64545}.wellness-compact-shell.wellness-state-below_normal,.wellness-day-marker.wellness-state-below_normal{--wellness-marker: #e4772c}.wellness-compact-shell.wellness-state-above_normal,.wellness-day-marker.wellness-state-above_normal{--wellness-marker: #2a9467}.wellness-compact-battery.is-empty{color:#8796a5}.app-light :is(.chat-sheet,.chat-panel,.chat-panel-screen){color:#101820}.app-light .chat-messages{color:#53677a;border-color:#c8d6e1;background:#eef4f8}.app-light .chat-message-user,.app-light .bottom-sheet .chat-message-user{color:#fff;border:1px solid #2e74a5;background:#347fb3;box-shadow:0 7px 18px #347fb32e}.app-light .chat-message-user :is(p,li,strong,em,code),.app-light .bottom-sheet .chat-message-user :is(p,li,strong,em,code){color:inherit;-webkit-text-fill-color:currentColor}.app-light .chat-message-assistant,.app-light .bottom-sheet .chat-message-assistant{color:#253342;border-color:#c7d4de;background:#fff;box-shadow:0 6px 18px #1f37490f}.app-light .chat-message-assistant .chat-markdown,.app-light .chat-message-assistant .chat-markdown :is(p,li){color:#253342}.app-light .chat-message-assistant .chat-markdown :is(h3,h4,h5,strong){color:#101820}.app-light .chat-token-usage{color:#738394;opacity:1}.app-light .coach-action-card{color:#253342;border-color:#cbd8e2;background:#f8fafc}.app-light .coach-action-card :is(.coach-snapshot-card,.coach-action-weeks details){border-color:#d6e0e8;background:#fff}.app-light .coach-patch-operation{color:#253342;background:#edf3f8}.app-light .coach-patch-snapshot{color:#253342;border-color:#d2dde6;background:#fff}.app-light .coach-patch-snapshot>small,.app-light .coach-patch-snapshot>span{color:#66788a}.app-light .coach-action-status{color:#167a52}.app-light .coach-action-warning{color:#ad4a0b!important}.app-light .chat-limit-pill{color:#286f9f;border-color:#9ec3dc;background:#e2eff7}.app-light .chat-input-row :is(input,textarea){color:#101820;border-color:#c7d4de;background:#fff}.app-light .chat-input-row :is(input,textarea)::placeholder{color:#8293a5}.app-light .profile-icon{color:#347fb3;border-color:#b8cfe0;background:#e8f1f7}.app-light .wellness-day-marker .wellness-day-battery.wellness-battery-level-1,.app-light .wellness-compact-shell .wellness-compact-battery.wellness-battery-level-1{color:#d64545}.app-light .wellness-day-marker .wellness-day-battery.wellness-battery-level-2,.app-light .wellness-compact-shell .wellness-compact-battery.wellness-battery-level-2{color:#e4772c}.app-light .wellness-day-marker .wellness-day-battery.wellness-battery-level-3,.app-light .wellness-compact-shell .wellness-compact-battery.wellness-battery-level-3{color:#d6a521}.app-light .wellness-day-marker .wellness-day-battery.wellness-battery-level-4,.app-light .wellness-compact-shell .wellness-compact-battery.wellness-battery-level-4{color:#2a9467}.wellness-compact-adapt,.app-dark .wellness-compact-adapt{position:relative;width:40px;height:40px;min-height:40px;padding:0;flex:0 0 40px;gap:0;border:1px solid #e6a79d;border-radius:12px;color:#c95040;background:#fff2ef;box-shadow:none}.wellness-compact-adapt:after{content:"";position:absolute;top:7px;right:7px;width:5px;height:5px;border:2px solid #fff2ef;border-radius:50%;background:#d85643}.wellness-compact-adapt:hover{color:#ad3f32;border-color:#d98679;background:#ffe8e3}.wellness-compact-adapt:focus-visible{outline:2px solid rgba(216,86,67,.38);outline-offset:2px}.wellness-adaptation-backdrop{z-index:1320}.wellness-adaptation-dialog{width:min(100%,480px);overflow:hidden;border:1px solid #cfdae3;border-radius:24px;color:#162330;background:#fff;box-shadow:0 28px 70px #1025363d}.wellness-adaptation-dialog>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:20px 20px 17px;border-bottom:1px solid #e0e7ed}.wellness-adaptation-dialog-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#c95040;background:#fff0ed}.wellness-adaptation-dialog header div{min-width:0}.wellness-adaptation-dialog header small{display:block;margin-bottom:3px;color:#c95040;font-size:10px;font-weight:850;letter-spacing:.12em}.wellness-adaptation-dialog h2{margin:0;color:#101820;font-size:21px;line-height:1.15}.wellness-adaptation-dialog header>button{width:36px;height:36px;display:grid;place-items:center;border:1px solid #d3dde5;border-radius:11px;color:#627486;background:#f7f9fb}.wellness-adaptation-dialog-body{display:grid;gap:9px;padding:20px}.wellness-adaptation-dialog-body>strong{color:#101820;font-size:17px}.wellness-adaptation-dialog-body>p{margin:0;color:#5d7082;font-size:14px;line-height:1.55}.wellness-adaptation-reasons{display:flex;flex-wrap:wrap;gap:7px;margin-top:3px}.wellness-adaptation-reasons span{padding:6px 9px;border-radius:9px;color:#934439;background:#f8e5e1;font-size:12px;font-weight:700}.wellness-adaptation-explainer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;margin-top:6px;padding:12px;border:1px solid #c9dce9;border-radius:13px;color:#347fb3;background:#edf5fa}.wellness-adaptation-explainer p{margin:0;color:#49677d;font-size:12px;line-height:1.45}.wellness-adaptation-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:15px 20px 20px}@media(max-width:759px){.wellness-adaptation-dialog{width:100%;border-radius:22px 22px 0 0}.wellness-adaptation-dialog>footer{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.wellness-adaptation-dialog>footer .btn{flex:1 1 0}}.app-light .calendar-race-card{position:relative;isolation:isolate;overflow:hidden;min-height:116px;border:1px solid #254b68;border-radius:18px;padding:0;display:block;color:#fff;background:radial-gradient(circle at 94% 4%,rgba(255,107,87,.24),transparent 38%),linear-gradient(145deg,#193a54,#112a3f 58%,#0d2233);box-shadow:0 14px 28px #0e2c4333}.app-light .calendar-race-card:after,.app-light .desktop-race-card:after{content:"";position:absolute;z-index:-1;right:-34px;bottom:-44px;width:132px;height:132px;border:22px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}.app-light .calendar-race-open{width:100%;min-height:114px;border:0;padding:15px 52px 14px 15px;display:grid;grid-template-columns:31px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;align-items:center;gap:10px 11px;color:inherit;text-align:left;background:transparent}.app-light .calendar-race-open>strong,.app-light .desktop-race-card-main>strong{min-width:0;overflow:visible;color:#fff;font-weight:800;line-height:1.08;text-overflow:clip;white-space:normal}.app-light .calendar-race-open>strong{font-size:17px}.app-light .race-pulse-flag{width:30px;height:30px;border:1px solid rgba(255,128,108,.42);border-radius:9px;display:grid;place-items:center;color:#ff806c;background:#ff6b571f}.app-light .race-pulse-line{min-width:0;grid-column:1 / -1;display:flex;align-items:center;gap:8px;color:#ff6b57}.app-light .race-pulse-line:before,.app-light .race-pulse-line:after{content:"";height:1px;background:currentColor;opacity:.5}.app-light .race-pulse-line:before{width:17px}.app-light .race-pulse-line:after{min-width:0;flex:1}.app-light .race-pulse-line svg{flex:0 0 auto;color:inherit;stroke-width:2.2}.app-light .race-pulse-flag svg,.app-light .desktop-race-card-main .race-pulse-flag svg,.app-light .desktop-race-card-main .race-pulse-line svg{color:inherit}.app-light .calendar-race-delete{position:absolute;z-index:2;top:10px;right:10px;width:32px;height:32px;border-color:#ff806c47;border-radius:10px;color:#ff9b8c;background:#ff6b571a}@media(min-width:1024px){.app-light .desktop-race-card,.app-light .desktop-week-row-current .desktop-race-card{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:132px;border:1px solid #254b68;border-radius:16px;padding:0;display:block;color:#fff;background:radial-gradient(circle at 94% 4%,rgba(255,107,87,.24),transparent 38%),linear-gradient(145deg,#193a54,#112a3f 58%,#0d2233);box-shadow:0 12px 24px #0e2c4333;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.app-light .desktop-race-card:hover{transform:translateY(-1px);border-color:#ff806cb8;box-shadow:0 16px 30px #0e2c4345}.app-light .desktop-race-card-main{width:100%;min-height:130px;border:0;padding:14px 14px 13px;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;align-items:center;gap:10px 10px;color:inherit;text-align:left;background:transparent}.app-light .desktop-race-card-main>strong{padding-right:18px;font-size:14px}.app-light .desktop-race-card-delete{position:absolute;z-index:2;top:8px;right:8px;width:27px;height:27px;border-color:#ff806c47;border-radius:9px;color:#ff9b8c;background:#ff6b571a}.app-light .desktop-race-card-delete:hover{border-color:#ff806c8c;background:#ff6b5733}}@media(min-width:1024px){.desktop-week-day-drop-target,.app-light .desktop-week-row:not(.desktop-week-row-current) .desktop-week-day-drop-target,.desktop-week-row-current .desktop-week-day-drop-target,.app-dark .desktop-week-row-current .desktop-week-day-drop-target{position:relative;isolation:isolate;border-color:var(--primary);background:color-mix(in srgb,var(--primary-soft) 84%,var(--surface));box-shadow:inset 0 0 0 2px var(--primary),0 14px 32px color-mix(in srgb,var(--primary) 22%,transparent);transform:translateY(-2px)}.desktop-week-day-drop-target:after{content:"+";position:absolute;z-index:5;top:50%;left:50%;width:46px;height:46px;display:grid;place-items:center;border:2px solid var(--primary);border-radius:50%;color:var(--primary-fill-text);background:var(--primary-fill);box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 30%,transparent);transform:translate(-50%,-50%);pointer-events:none;font-size:27px;font-weight:400;line-height:1}.desktop-week-day-drop-target .desktop-week-day-head,.desktop-week-day-drop-target .desktop-week-day-items,.desktop-week-day-drop-target .desktop-week-day-add{opacity:.34}.desktop-workout-dragging{opacity:.26;transform:scale(.97);outline:2px dashed color-mix(in srgb,var(--primary) 58%,transparent);outline-offset:3px;box-shadow:none}}
