@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_5beb19a-module__o3X9vG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_5beb19a-module__o3X9vG__variable{--font-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0e7b7e0b829e3eb9-s.2j75_l12byk_u.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/daf789e4474d0d90-s.07wt1b-68kohk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9e9f04e3c37952ab-s.p.0pan85mumqyf3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Anton Fallback;src:local(Arial);ascent-override:129.7%;descent-override:36.29%;line-gap-override:0.0%;size-adjust:90.69%}.anton_2938c1a1-module__0SUJOG__className{font-family:Anton,Anton Fallback;font-style:normal;font-weight:400}.anton_2938c1a1-module__0SUJOG__variable{--font-display:"Anton", "Anton Fallback"}
:root{--text-3xs:9px;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0e0f;--surface:#16181a;--surface-2:#1f2224;--text-primary:#f2f3f0;--text-secondary:#b4b8b2;--text-muted:#7f847e;--gridline:#26292b;--baseline:#383c3e;--border:#f2f3f024;--series-1:#7896b7;--series-2:#759a86;--series-3:#c39a55;--series-4:#9185a3;--accent:#ff2c78;--accent-ink:#1a0208;--good:#79a47b;--ground:#0f0e0c;--nav-ground:#0b0a09;--rule:#2b2622;--hairline:#1e1b18;--ink:#f2efe9;--mid:#a9a093;--faint:#837c6e;--cream:#f0eae0;--cream-ink:#14110d;--cream-faint:#6e6659;--band:#ff2c78;--band-ink:#14110d;--band-rule:#14110d38;--accent-text:#ff2c78;--critical-text:#e4675f;--control-radius:4px;--focus-ring:var(--accent);--tap-min:38px;--gutter:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--bottom-nav-h:0px;--bottom-gap:12px;--z-bottom-nav:90;--z-fab:91;--z-sheet-scrim:95;--z-sheet:96;--z-toast:100;--z-fab-panel:101;--font-editorial:var(--font-grotesk), system-ui, sans-serif;--font-data:var(--font-grotesk), system-ui, sans-serif;--font-mono:var(--font-grotesk), system-ui, sans-serif;--type-micro:10px;--type-eyebrow:11px;--type-small:12px;--type-body:13px;--type-body-lg:14px;--type-title:16px;--type-heading:20px;--type-eyebrow-weight:650;--type-eyebrow-spacing:.1em;--confirmed:#86b28d;--confirmed-soft:#79a47b29;--estimated:#c9a04a;--estimated-soft:#c39a5524;--zone-1:#fec7d0;--zone-2:#fda2b3;--zone-3:#fd7896;--zone-4:#fc3e79;--zone-5:#e31364;--zone-6:#bf0e53;--zone-1-ink:#2a0413;--zone-2-ink:#2a0413;--zone-3-ink:#2a0413;--zone-4-ink:#2a0413;--zone-5-ink:#fff;--zone-6-ink:#fff;--arc-planned-opacity:.7;--ink-card:var(--surface-2);--ink-fg:#f4f1ee;--ink-fg-soft:#f4f1eedb;--ink-fg-mute:#f4f1ee8c;--ink-fg-faint:#f4f1ee73;--ink-hairline:#f4f1ee29;--ink-wash:#f4f1ee1a;--ink-good:#8fd6a8;--ink-warn:#f0c987;--ink-bad:#f0a8a0}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f3f4f2;--surface:#fcfcfb;--surface-2:#e9ebe8;--text-primary:#1a1c1b;--text-secondary:#545955;--text-muted:#7c817d;--gridline:#dde0dc;--baseline:#c3c7c2;--border:#1a1c1b1f;--series-1:#577ca3;--series-2:#5f876f;--series-3:#a77b32;--series-4:#786b8d;--accent:#d61e60;--accent-ink:#fff;--good:#557f59;--confirmed:#3d6b4f;--confirmed-soft:#e2ebe3;--estimated:#a07620;--estimated-soft:#f2e8d2;--ground:#f5f2ec;--nav-ground:#ebe6dc;--rule:#cfc7ba;--hairline:#e4ded3;--ink:#14110d;--mid:#554e44;--faint:#6b6357;--cream:#e8e1d4;--cream-ink:#14110d;--cream-faint:#635b4f;--band:#ff2c78;--band-ink:#14110d;--band-rule:#14110d38;--accent-text:#b81450;--critical-text:#a32a28;--zone-1:#fd93a8;--zone-2:#fd5f88;--zone-3:#f2156b;--zone-4:#c90f58;--zone-5:#a20945;--zone-6:#7d0433;--zone-1-ink:#2a0413;--zone-2-ink:#2a0413;--zone-3-ink:#2a0413;--zone-4-ink:#fff;--zone-5-ink:#fff;--zone-6-ink:#fff;--ink-card:#edefec;--ink-fg:#1a1c1b;--ink-fg-soft:#1a1c1b;--ink-fg-mute:#545955;--ink-fg-faint:#7c817d;--ink-hairline:#1a1c1b1f;--ink-wash:#1a1c1b0d;--ink-good:#3f7d59;--ink-warn:#8a6314;--ink-bad:#a8342a}}html.light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f3f4f2;--surface:#fcfcfb;--surface-2:#e9ebe8;--text-primary:#1a1c1b;--text-secondary:#545955;--text-muted:#7c817d;--gridline:#dde0dc;--baseline:#c3c7c2;--border:#1a1c1b1f;--series-1:#577ca3;--series-2:#5f876f;--series-3:#a77b32;--series-4:#786b8d;--accent:#d61e60;--accent-ink:#fff;--good:#557f59;--confirmed:#3d6b4f;--confirmed-soft:#e2ebe3;--estimated:#a07620;--estimated-soft:#f2e8d2;--ground:#f5f2ec;--nav-ground:#ebe6dc;--rule:#cfc7ba;--hairline:#e4ded3;--ink:#14110d;--mid:#554e44;--faint:#6b6357;--cream:#e8e1d4;--cream-ink:#14110d;--cream-faint:#635b4f;--band:#ff2c78;--band-ink:#14110d;--band-rule:#14110d38;--accent-text:#b81450;--critical-text:#a32a28;--zone-1:#fd93a8;--zone-2:#fd5f88;--zone-3:#f2156b;--zone-4:#c90f58;--zone-5:#a20945;--zone-6:#7d0433;--zone-1-ink:#2a0413;--zone-2-ink:#2a0413;--zone-3-ink:#2a0413;--zone-4-ink:#fff;--zone-5-ink:#fff;--zone-6-ink:#fff;--ink-card:#edefec;--ink-fg:#1a1c1b;--ink-fg-soft:#1a1c1b;--ink-fg-mute:#545955;--ink-fg-faint:#7c817d;--ink-hairline:#1a1c1b1f;--ink-wash:#1a1c1b0d;--ink-good:#3f7d59;--ink-warn:#8a6314;--ink-bad:#a8342a}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0f0e0c;--nav-ground:#0b0a09;--rule:#2b2622;--hairline:#1e1b18;--ink:#f2efe9;--mid:#a9a093;--faint:#837c6e;--cream:#f0eae0;--cream-ink:#14110d;--cream-faint:#6e6659;--band:#ff2c78;--band-ink:#14110d;--band-rule:#14110d38;--accent-text:#ff2c78;--critical-text:#e4675f;--page:#0d0e0f;--surface:#16181a;--surface-2:#1f2224;--text-primary:#f2f3f0;--text-secondary:#b4b8b2;--text-muted:#7f847e;--gridline:#26292b;--baseline:#383c3e;--border:#f2f3f024;--series-1:#7896b7;--series-2:#759a86;--series-3:#c39a55;--series-4:#9185a3;--accent:#ff2c78;--accent-ink:#1a0208;--good:#79a47b;--confirmed:#86b28d;--confirmed-soft:#79a47b29;--estimated:#c9a04a;--estimated-soft:#c39a5524;--zone-1:#fec7d0;--zone-2:#fda2b3;--zone-3:#fd7896;--zone-4:#fc3e79;--zone-5:#e31364;--zone-6:#bf0e53;--zone-1-ink:#2a0413;--zone-2-ink:#2a0413;--zone-3-ink:#2a0413;--zone-4-ink:#2a0413;--zone-5-ink:#fff;--zone-6-ink:#fff;--ink-card:var(--surface-2);--ink-fg:#f4f1ee;--ink-fg-soft:#f4f1eedb;--ink-fg-mute:#f4f1ee8c;--ink-fg-faint:#f4f1ee73;--ink-hairline:#f4f1ee29;--ink-wash:#f4f1ee1a;--ink-good:#8fd6a8;--ink-warn:#f0c987;--ink-bad:#f0a8a0}*{box-sizing:border-box;margin:0;padding:0}button{color:inherit}.plan-mode-list{gap:5px}.plan-mode-tile{padding:8px 10px}.plan-mode-tile p{color:var(--accent);font-size:var(--type-body);margin-top:1px;line-height:1.35}.plan-mode-tile.active{border-color:var(--accent);background:var(--surface)}body{background:var(--page);min-height:100dvh;color:var(--text-primary);font-family:var(--font-grotesk), system-ui, -apple-system, "Segoe UI", sans-serif;font-size:var(--type-body-lg);font-variant-numeric:tabular-nums;line-height:1.55}a{color:inherit;text-decoration:none}
:where(button,a,input,select,textarea,summary,[role=button],[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}:where(button,[role=button]):disabled,:where(button,[role=button])[aria-disabled=true]{cursor:not-allowed}:where(button,[role=button])[aria-busy=true]{cursor:progress}.container{max-width:1120px;padding:0 var(--gutter) 72px;margin:0 auto}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kicker{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);color:var(--text-muted)}.evidence-chip{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-3xs);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-weight:600;display:inline-flex}.evidence-chip:before{content:"";border-radius:50%;width:5px;height:5px}.evidence-chip.confirmed{background:var(--confirmed-soft);color:var(--confirmed)}.evidence-chip.confirmed:before{background:var(--confirmed)}.evidence-chip.estimated{border:1px solid var(--estimated);color:var(--estimated)}.evidence-chip.estimated:before{background:var(--estimated)}.evidence-chip.insufficient{border:1px dashed var(--baseline);color:var(--text-muted)}.evidence-chip.insufficient:before{background:var(--baseline)}.taper-arc{align-items:flex-end;gap:10px;height:56px;margin:12px 0 4px;padding:4px 4px 0;display:flex}.goal-card .taper-arc{height:30px;margin:8px 0 2px}.taper-arc i,.taper-arc button{background:var(--surface-2);border-radius:4px 4px 2px 2px;flex:1}.taper-arc button{appearance:none;cursor:pointer;border:0;min-width:0;padding:0}.taper-arc.interactive{touch-action:manipulation}.taper-arc .past{background:var(--baseline)}.taper-arc .open{outline:2px solid var(--text-secondary);outline-offset:2px}.taper-arc-axis span.open{color:var(--text-secondary);font-weight:650}.taper-arc .here{background:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.taper-arc .taper{background:color-mix(in srgb, var(--accent) 45%, var(--surface-2))}.taper-arc .taper.here{background:var(--accent)}.taper-arc-axis{gap:10px;padding:0 4px;display:flex}.taper-arc-axis span{text-align:center;font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-3xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex:1}.taper-arc-axis span.here{color:var(--accent);font-weight:650}.taper-arc-split{position:relative;overflow:hidden}.taper-arc .taper-arc-split,.taper-arc .taper-arc-split.past,.taper-arc .taper-arc-split.here,.taper-arc .taper-arc-split.taper{background:var(--surface-2)}.taper-arc-kind{position:absolute;left:0;right:0}.taper-arc-kind-easy{background:var(--zone-1)}.taper-arc-kind-long{background:var(--zone-2)}.taper-arc-kind-steady{background:var(--zone-3)}.taper-arc-kind-threshold{background:var(--zone-4)}.taper-arc-kind-vo2{background:var(--zone-5)}.taper-arc-kind-reps{background:var(--zone-6)}.taper-arc-kind-planned{opacity:var(--arc-planned-opacity)}.taper-arc-key{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-3xs);color:var(--text-muted);margin:6px 2px 0}.taper-arc-thresh{gap:10px;margin-top:2px;padding:0 4px;display:flex}.taper-arc-thresh span{text-align:center;font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-3xs);font-variant-numeric:tabular-nums;color:var(--text-muted);flex:1}.daystrip{gap:5px;margin:12px 0 2px;display:flex}.daystrip span{text-align:center;font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);color:var(--text-muted);border-top:3px solid var(--gridline);flex:1;padding-top:7px}.daystrip span.done{border-top-color:var(--series-1);color:var(--text-primary)}.daystrip span.hard{border-top-color:var(--accent)}.daystrip span.today{color:var(--accent);font-weight:700}.home-greeting .page-subtitle{margin-top:0;margin-bottom:0}.home-day-line{color:var(--text-secondary);font-size:var(--type-body-lg);margin:0 0 10px}.plan-arc-card{color:inherit;text-decoration:none;display:block}.card-head-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.link-quiet{font-size:var(--type-body);color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:none}.link-quiet.danger{color:var(--status-serious)}.plan-arc-card .plan-arc-head{flex-direction:column;gap:1px;margin-bottom:4px;display:flex}.plan-arc-card .sub{color:var(--text-muted);font-size:var(--type-body)}.site-header{background:var(--surface-2);z-index:10;padding-top:env(safe-area-inset-top);border-bottom:0;position:sticky;top:0}.site-header .logo{color:var(--ink-fg)}.site-header-inner{max-width:1120px;padding:16px max(var(--gutter), env(safe-area-inset-right)) 16px max(var(--gutter), env(safe-area-inset-left));align-items:center;gap:32px;margin:0 auto;display:flex}.logo{font-weight:700;font-size:var(--type-heading);letter-spacing:.02em;text-transform:uppercase}.logo:after{content:".";color:var(--accent)}.brand-lockup{align-items:center;display:inline-flex}.onboard-note p{font-size:var(--type-small);color:var(--text-secondary);margin:0;line-height:1.5}.nav{gap:2px;display:flex}.nav a{color:var(--text-muted);font-size:var(--type-body);letter-spacing:.01em;border-radius:999px;padding:6px 13px;font-weight:500}.nav a:hover{color:var(--text-primary)}.nav a.active{color:var(--text-primary);background:var(--surface-2)}.header-spacer{flex:1}.header-actions{flex:none;align-items:center;gap:10px;display:flex}.header-feedback{flex:none}.mobile-bottom-nav{display:none}@media (max-width:720px){:root{--bottom-nav-h:calc(72px + env(safe-area-inset-bottom,0px))}.site-header-inner{justify-content:center;min-height:44px;padding:8px 18px}.site-header .nav,.site-header .header-spacer{display:none}.site-header .logo{font-size:var(--type-title)}.site-header-inner{position:relative}.site-header.has-actions .site-header-inner{padding-right:max(104px, env(safe-area-inset-right));padding-left:max(44px, env(safe-area-inset-left))}.header-actions{top:50%;right:max(14px, env(safe-area-inset-right));gap:6px;position:absolute;transform:translateY(-50%)}.header-actions.header-actions-left{right:auto;left:max(14px, env(safe-area-inset-left))}.header-feedback{padding:5px 12px}.mobile-bottom-nav{z-index:var(--z-bottom-nav);padding:4px max(8px, env(safe-area-inset-right)) max(6px, calc(env(safe-area-inset-bottom) * .6)) max(8px, env(safe-area-inset-left));border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #0000001f}.mobile-bottom-nav a{min-width:0;min-height:48px;color:var(--text-muted);font-size:var(--type-micro);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:600;line-height:1.1;display:flex}.mobile-bottom-nav a.active{background:var(--surface-2);color:var(--accent)}.mobile-bottom-nav svg{width:22px;height:22px}.card{padding:var(--space-3);margin-bottom:var(--space-3)}.card h2{margin-bottom:var(--space-2)}.page-subtitle{margin-bottom:16px}.container{padding-bottom:calc(var(--bottom-nav-h) + var(--bottom-gap))}.toast-stack{left:12px;right:12px}.toast{max-width:none}}
.sync-btn{background:var(--accent);color:var(--accent-ink);font-family:inherit;font-size:var(--type-body);letter-spacing:.01em;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-weight:600;display:inline-flex}.sync-btn:hover{filter:brightness(1.08)}.sync-btn:disabled{opacity:.55;cursor:wait}.sync-summary{flex-direction:column;gap:4px;margin:10px 0 0;display:flex}.sync-summary-row{font-size:var(--type-small);grid-template-columns:minmax(0,max-content) 1fr;align-items:baseline;gap:4px 10px;display:grid}.sync-summary-row dt{color:var(--text-muted);white-space:nowrap}.sync-summary-row dd{color:var(--text);margin:0}@media (max-width:380px){.sync-summary-row{grid-template-columns:1fr;gap:0}}.page-title{font-family:var(--font-grotesk), system-ui, sans-serif;letter-spacing:-.035em;margin:6px 0 14px;font-size:clamp(30px,6vw,42px);font-weight:520;line-height:1}.page-subtitle{color:var(--text-muted);font-size:var(--type-body-lg);word-wrap:break-word;overflow-wrap:break-word;margin:-10px 0 18px}.hero{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;padding:4px 0 20px;display:flex}.hero-value{font-family:var(--font-grotesk), system-ui, sans-serif;letter-spacing:-.03em;font-size:clamp(64px,12vw,112px);font-weight:600;line-height:.95}.hero-value .unit{color:var(--text-muted);letter-spacing:0;margin-left:6px;font-size:.32em;font-weight:600}.hero-side{gap:36px;padding-bottom:10px;display:flex}.hero-stat .kicker{margin-bottom:2px}.hero-stat-value{font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:700}.hero-stat-value .delta-up{color:var(--good)}.tile-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:24px;display:grid}.tile{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px 22px}.tile-label{font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);color:var(--text-muted);margin-bottom:6px}.tile-value{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-3xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:600}.tile-unit{font-size:var(--type-body-lg);color:var(--text-muted);font-weight:600}.tile-delta{font-size:var(--type-small);color:var(--text-secondary);margin-top:2px}.tile-delta.up{color:var(--good)}.card{background:var(--surface);border:1px solid var(--border);padding:var(--space-4);margin-bottom:var(--space-4);word-wrap:break-word;border-radius:16px;overflow:hidden}.card h2{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-heading);letter-spacing:-.015em;color:var(--text-primary);margin-bottom:var(--space-2);font-weight:520;line-height:1.15}.summary-card{border:1px solid var(--border);background:var(--surface);overflow-wrap:anywhere;border-radius:16px;min-width:0;margin:8px 0 20px;padding:22px 24px}.summary-card .page-title{margin:0 0 8px;font-size:clamp(32px,5vw,46px)}.summary-card .page-subtitle{margin-bottom:0;line-height:1.5}@media (max-width:560px){.summary-card{border-radius:16px;padding:16px}.summary-card .page-title{font-size:clamp(26px,8vw,32px)}.card{border-radius:16px;margin-bottom:14px;padding:16px}.section-kicker{margin:14px 2px 6px}.hero-value{font-size:clamp(52px,12vw,112px)}}.activity-table{border-collapse:collapse;width:100%;font-size:var(--type-body-lg)}.activity-table th{text-align:left;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);color:var(--text-muted);border-bottom:1px solid var(--gridline);padding:8px 10px}.activity-table td{border-bottom:1px solid var(--gridline);color:var(--text-secondary);padding:10px}.activity-table td.name{color:var(--text-primary);font-weight:550}.activity-table tr:last-child td{border-bottom:none}.activity-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.activity-table-scroll{overflow-x:auto}.activity-laps-scroll{max-width:100%}@media (max-width:560px){.activity-laps-table th,.activity-laps-table td{padding-left:6px;padding-right:6px}.activity-laps-table .lap-mobile-secondary{display:none}}.week-schedule-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.week-schedule-scroll{overflow-x:auto}.week-schedule-table{min-width:760px}.week-schedule-table td{vertical-align:middle}.week-schedule-table td.name{min-width:230px}.week-schedule-table td.name>a:hover,.week-row-plan a:hover{color:var(--accent)}.week-row-plan{color:var(--text-muted);font-size:var(--type-eyebrow);margin:2px 0 0 17px;font-weight:450;display:block}.week-plan-link{margin:14px 0 0}@media (max-width:720px){.tile-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{padding:16px 14px}.activity-table-scroll,.week-schedule-scroll{overflow:visible}.week-schedule-table{min-width:0}}.effort-pill{font-size:var(--type-micro);text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:2px 10px;font-weight:650;display:inline-block}.effort-pill.hard{border-color:var(--accent);color:var(--accent)}.filter-row{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.chip-select{margin-bottom:0}.filter-chip{border:1px solid var(--border);color:var(--text-secondary);font-family:inherit;font-size:var(--type-small);letter-spacing:.01em;cursor:pointer;background:0 0;border-radius:999px;padding:6px 15px;font-weight:550}.filter-chip:hover:not(:disabled){color:var(--text-primary);border-color:var(--baseline)}.filter-chip.chip-empty{opacity:.4;cursor:default}.chip-count{font-variant-numeric:tabular-nums;opacity:.65}.filter-chip:active:not(:disabled){transform:translateY(1px)}.filter-chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:650}.filter-chip.active:hover:not(:disabled){color:var(--accent-ink);border-color:var(--accent)}.filter-chip:disabled{opacity:.55;cursor:not-allowed}.filter-group{flex-direction:column;gap:6px;display:flex}.filter-group-label{color:var(--text-muted)}.provider-empty{flex-direction:column;gap:8px;margin-top:24px;display:flex;position:relative}.provider-empty-dismiss{width:44px;height:44px;color:var(--text-secondary);font-size:var(--type-body);cursor:pointer;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:4px;right:4px}.provider-empty>.kicker{padding-right:40px}.provider-empty h2{font-size:var(--type-heading);line-height:1.3}.provider-empty p{max-width:560px;color:var(--text-secondary);font-size:var(--type-body-lg)}.provider-empty-btn{align-self:flex-start;margin-top:6px}.chart-wrap{position:relative}.filters-grid{flex-direction:column;gap:10px;display:flex}.filter-input{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);border-radius:12px;max-width:340px;padding:9px 13px}.filter-input::placeholder{color:var(--text-muted)}.filter-input-sm{max-width:110px}.date-range-filter{flex-wrap:wrap;gap:10px;display:flex}.date-range-filter label{align-items:center;gap:8px;display:flex}.date-range-filter .filter-input{max-width:175px}.best-effort-filters{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.best-effort-presets{flex-wrap:wrap;gap:8px;padding:1px;display:flex}.best-effort-custom{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:0;display:grid}.best-effort-custom label{min-width:0}.best-effort-custom label span{color:var(--text-muted);font-size:var(--type-small);margin-bottom:4px;display:block}.best-effort-custom .notes-select{width:100%;min-width:0}@media (max-width:620px){.best-effort-custom{gap:10px}.best-effort-custom .notes-select{font-size:var(--type-body);padding-inline:7px}}.bulk-activity-toolbar{border-bottom:1px solid var(--gridline);flex-wrap:wrap;align-items:center;gap:9px;margin:-4px 0 14px;padding-bottom:14px;display:flex}.bulk-activity-toolbar>div{flex-direction:column;min-width:110px;display:flex}.bulk-activity-toolbar>div strong{color:var(--text-primary);font-size:var(--type-body)}.bulk-activity-toolbar>div span{color:var(--text-muted);font-size:var(--type-eyebrow)}.bulk-toolbar-spacer{flex:1}.bulk-activity-toolbar>.chip-select{flex-flow:wrap;flex-basis:100%;gap:6px;min-width:0}.login-btn.bulk-apply-btn{border-radius:999px;width:auto;min-width:108px;padding:9px 16px}.bulk-shoe-select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:right 11px center,right 6px center;background-repeat:no-repeat;background-size:5px 5px,5px 5px;max-width:170px;padding-right:26px}.filter-chip.act-reset{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 38%, transparent)}.filter-chip.act-reset:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:var(--accent)}.filter-chip.bulk-delete-btn{color:#d9556b;border-color:#d9556b66}.filter-chip.bulk-delete-btn:hover:not(:disabled){background:#d9556b1f;border-color:#d9556b}.filter-chip.admin-delete-chip{color:#d9556b;border-color:#d9556b66}.filter-chip.admin-delete-chip:hover:not(:disabled){background:#d9556b1f;border-color:#d9556b}.filter-chip.admin-delete-chip.armed{color:#fff;background:#d9556b;border-color:#d9556b}.actlog{margin-top:4px}.actlog-legend{flex-wrap:wrap;gap:8px 14px;margin-bottom:6px;display:flex}.actlog-legend span{font-size:var(--type-small);color:var(--text-muted);align-items:center;gap:6px;font-weight:500;display:flex}.actlog-dot{border-radius:50%;flex:none;width:9px;height:9px}.actlog-week{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.actlog-week:first-of-type{border-top:0;margin-top:6px;padding-top:6px}.actlog-week-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.actlog-week-title{font-size:var(--type-title);align-items:center;gap:9px;font-weight:700;display:flex}.actlog-now{background:var(--surface-2);border:1px solid var(--border);color:var(--accent);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);border-radius:999px;padding:2px 8px}.actlog-week-km{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-body-lg);font-weight:600}.actlog-week-km span{color:var(--text-muted);font-weight:500;font-size:var(--type-small)}.actlog-bar{border-radius:999px;height:7px;margin-bottom:14px;display:flex;overflow:hidden}.actlog-bar i{height:100%}.actlog-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.actlog-day{width:100%;min-height:104px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding-top:2px;text-decoration:none;display:flex}.actlog-day.today{box-shadow:inset 0 0 0 1px var(--accent)}.actlog-daylab{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);color:var(--text-muted);text-align:center;line-height:1.25}.actlog-day.today .actlog-daylab{color:var(--accent)}.actlog-daylab b{color:var(--text-primary);font-size:var(--type-small);font-weight:600;display:block}.actlog-well{flex:1;justify-content:center;align-items:center;display:flex}.actlog-twin{gap:4px}.actlog-runlink{text-decoration:none;display:inline-flex}.actlog-multi{display:inline-flex;position:relative}.actlog-bub{font-family:var(--font-grotesk), system-ui, sans-serif;font-weight:700;font-size:var(--type-small);border-radius:50%;flex:none;justify-content:center;align-items:center;transition:transform .12s;display:flex}.actlog-bub.sm{font-size:var(--type-micro)}.actlog-day:hover .actlog-bub{transform:scale(1.05)}.actlog-rest{border:1.5px dashed color-mix(in oklab, var(--text-muted), transparent 55%);border-radius:50%;width:32px;height:32px}.actlog-badge{background:var(--page);border:1.5px solid var(--accent);min-width:17px;height:17px;color:var(--accent);font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);border-radius:8px;justify-content:center;align-items:center;padding:0 3px;font-weight:800;display:flex;position:absolute;top:-3px;right:-3px}.actlog-dayfoot{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);color:var(--text-muted)}.actlog-dayfoot.rest{opacity:.65}.actlog-dayfoot.multi{color:var(--accent)}.actlog-dayfoot.race{color:var(--accent);font-weight:600}.lap-gap,.split-delta{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);color:var(--text-muted);white-space:nowrap;display:block}.split-delta.faster{color:var(--ink-good)}.alltime-card{margin-top:14px}.alltime-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px;margin-top:6px;display:grid}@media (min-width:720px){.alltime-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.alltime-grid b{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-heading);font-variant-numeric:tabular-nums;font-weight:600;display:block}.alltime-grid span{font-size:var(--type-small);color:var(--text-muted)}.guide-block{margin-top:12px}.guide-block p{font-size:var(--type-body);color:var(--text-secondary);margin:0 0 10px;line-height:1.6}.guide-block p:last-child{margin-bottom:0}.guide-block b{color:var(--text-primary);font-weight:600}.guide-foot{margin-top:14px}.guide-foot a{color:var(--accent)}.guide-lede{font-size:var(--type-body);color:var(--text-secondary);margin:0 0 10px;line-height:1.6}.guide-lede:last-child{margin-bottom:0}.guide-lede b{color:var(--text-primary);font-weight:600}.guide-ramprow{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-muted);justify-content:space-between;margin-bottom:3px;display:flex}.guide-ramp{background:linear-gradient(90deg, var(--zone-1), var(--zone-2), var(--zone-3), var(--zone-4), var(--zone-5), var(--zone-6));border-radius:6px;height:6px;margin-bottom:4px}.guide-rung{border-top:1px solid var(--border);grid-template-columns:10px 1fr auto;align-items:center;gap:12px;padding:11px 0;display:grid}.guide-rung:first-of-type{border-top:0}.guide-dot{border-radius:50%;width:10px;height:10px}.guide-rung h3{font-size:var(--type-body-lg);margin:0 0 2px;font-weight:650}.guide-rung p{font-size:var(--type-small);color:var(--text-secondary);margin:0;line-height:1.4}.guide-tag{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);letter-spacing:.06em;color:var(--text-muted);white-space:nowrap;align-self:start;padding-top:3px}.guide-flow{align-items:center;gap:8px;display:flex}.guide-node{text-align:center;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex:1;padding:12px 6px}.guide-node svg{width:20px;height:20px;stroke:var(--accent);fill:none;stroke-width:1.6px;margin-bottom:6px}.guide-node span{font-size:var(--type-small);color:var(--text-secondary);line-height:1.3;display:block}.guide-arrow{color:var(--text-muted);font-size:15px}.guide-tiles,.guide-life{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.guide-tile,.guide-lt{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:12px 8px}.guide-tile{text-align:center}.guide-tile svg{width:20px;height:20px;stroke:var(--text-primary);fill:none;stroke-width:1.5px;margin-bottom:7px}.guide-tile b{font-size:var(--type-small);font-weight:600;display:block}.guide-tile span,.guide-lt span{font-size:var(--type-micro);color:var(--text-muted);margin-top:2px;line-height:1.3;display:block}.guide-lt svg{fill:none;stroke-width:1.6px;width:19px;height:19px;stroke:var(--text-primary);margin-bottom:7px}.guide-lt b{font-size:var(--type-small);font-weight:650;display:block}.guide-lt span{color:var(--text-secondary)}.guide-lt.is-go svg{stroke:var(--ink-good)}.guide-lt.is-soft svg{stroke:var(--zone-1)}.guide-lt.is-stop{border-color:#f0a8a080}.guide-lt.is-stop svg{stroke:var(--ink-bad)}.guide-lt.is-stop b{color:var(--ink-bad)}.guide-pt,.guide-rd{border-top:1px solid var(--border);gap:11px;padding:10px 0;display:flex}.guide-pt:first-of-type{border-top:0}.guide-pt svg,.guide-rd svg{width:19px;height:19px;stroke:var(--accent);fill:none;stroke-width:1.6px;flex:none;margin-top:1px}.guide-pt p,.guide-rd p{font-size:var(--type-small);color:var(--text-secondary);margin:0;line-height:1.45}.guide-pt b,.guide-rd b{color:var(--text-primary);font-weight:600}.guide-wklabel{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-muted);justify-content:space-between;margin-bottom:4px;display:flex}.guide-wedge{align-items:flex-end;gap:5px;height:60px;margin-bottom:4px;display:flex}.guide-wedge i{opacity:.9;background:linear-gradient(180deg, var(--zone-4), var(--zone-6));border-radius:3px 3px 0 0;flex:1}.guide-wedge i.is-race{background:var(--accent);opacity:1}.year-bests{font-size:var(--type-body);color:var(--text-secondary);margin:10px 2px 0;line-height:1.5}.actlog-hide{cursor:pointer;background:0 0;border:0;padding:0}.admin-athlete-row{color:inherit;text-decoration:none;display:block}.actlog-race{outline:2px solid var(--accent);outline-offset:2px}.success-note{color:var(--status-good);font-size:var(--type-body);margin:0 0 14px}.chart-nav{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.chart-tooltip{pointer-events:none;background:var(--surface-2);border:1px solid var(--border);font-size:var(--type-body);white-space:nowrap;z-index:20;border-radius:8px;padding:7px 11px;position:absolute;box-shadow:0 4px 14px #0000004d}.chart-tooltip .tt-title{color:var(--text-primary);font-weight:600}.chart-tooltip .tt-body{color:var(--text-secondary)}.goal-row{border-bottom:1px solid var(--gridline);align-items:baseline;gap:12px;padding:12px 0;display:flex}.goal-row:last-child{border-bottom:none}.goal-name{font-weight:600}.goal-when{color:var(--text-muted);font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);font-weight:var(--type-eyebrow-weight);letter-spacing:.08em;text-transform:uppercase}.goal-target{font-variant-numeric:tabular-nums;color:var(--text-secondary);margin-left:auto;font-weight:600}.goal-delete{color:var(--text-muted);cursor:pointer;font-size:var(--type-body);background:0 0;border:none;font-family:inherit}.goal-delete:hover{color:var(--accent)}.goal-form{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.goal-form.settings-stack{flex-direction:column;align-items:stretch}.goal-form.settings-stack>button{align-self:flex-start}.goal-form input{padding:var(--space-2) 12px;border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);border-radius:12px;flex:120px;min-width:0;max-width:280px}@media (max-width:480px){.goal-form input{flex:100%}}.goal-form input::placeholder{color:var(--text-muted)}.field-label{margin:var(--space-1) 0 -2px;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);flex:100%}.input-with-suffix{flex:120px;align-items:center;gap:6px;min-width:0;max-width:280px;display:flex}.input-with-suffix input{flex:auto;max-width:none}.input-suffix{color:var(--text-secondary);font-size:var(--type-body-lg);white-space:nowrap;flex-shrink:0}.input-hint{flex:100%;margin:0}.goal-form .input-hint{-webkit-line-clamp:1;cursor:pointer;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.goal-form .input-hint.hint-open{-webkit-line-clamp:unset}@media (max-width:480px){.input-with-suffix{flex:100%;max-width:none}}.goal-form button:not(.filter-chip){background:var(--accent);color:var(--accent-ink);font-family:inherit;font-weight:var(--type-eyebrow-weight);font-size:var(--type-eyebrow);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;flex-shrink:0;padding:9px 18px}.metric-modal-head{border-bottom:1px solid var(--gridline);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.metric-modal-head strong{font-size:var(--type-body-lg)}.metric-modal-body{padding:14px 0 18px}.metric-modal-body p{font-size:var(--type-body);color:var(--text-secondary);margin:0;line-height:1.5}:root{--status-good:#79a47b;--status-warning:#d2a44c;--status-serious:#d47a55;--status-critical:#c95b58}.pred-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;margin-bottom:18px;display:grid}.pred-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px 13px}.pred-dist{margin-bottom:10px}.pred-time{font-family:var(--font-grotesk), system-ui, sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(30px,7.6vw,38px);font-weight:600;line-height:.95}.pred-alt{font-size:var(--type-small);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:6px}.pred-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.pred-move{font-size:var(--type-eyebrow);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2.5px 8px;font-weight:650;display:inline-flex}.pred-move.faster{background:var(--confirmed-soft);color:var(--confirmed)}.pred-move.slower{background:var(--estimated-soft);color:var(--estimated)}.pred-move.held{border:1px solid var(--border);color:var(--text-muted)}.pred-range{font-size:var(--type-eyebrow);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:7px}.pred-chips .evidence-chip{font-size:var(--text-3xs);letter-spacing:.05em;white-space:normal;text-align:left;max-width:100%;padding:3px 7px;line-height:1.5;display:inline-block}.pred-chips .evidence-chip:before{margin-right:5px;display:inline-block}.pred-action{font-size:var(--type-eyebrow);color:var(--text-secondary);margin-top:8px;line-height:1.45}.pred-intro{color:var(--text-secondary);font-size:var(--type-body);margin:0 0 14px;line-height:1.55}
.detail-stats{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:32px;margin-bottom:24px;padding:4px 0 24px;display:flex}.back-link{font-size:var(--type-small);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-top:28px;font-weight:650;display:inline-block}.back-link:hover{color:var(--text-primary)}.zone-bar{border-radius:6px;gap:2px;height:26px;margin:6px 0 10px;display:flex;overflow:hidden}.zone-seg{height:100%}.zone-legend{font-size:var(--type-small);color:var(--text-secondary);flex-wrap:wrap;gap:18px;display:flex}.zone-legend .dot{border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.split-bar{background:var(--series-1);border-radius:3px;height:6px}tr.clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}@media (hover:hover){tr.clickable:hover td{background:var(--surface-2)}.card-ink tr.clickable:hover td{background:var(--ink-wash)}}@media (hover:none){tr.clickable:active{opacity:.68}}.login-wrap{justify-content:center;align-items:flex-start;min-height:calc(100dvh - 70px);display:flex}@media (min-height:780px){.login-wrap{align-items:center}}.login-box{text-align:center;width:100%;max-width:380px;padding:28px 24px 32px}.login-tagline{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--text-2xl);letter-spacing:-.01em;margin:0 0 8px;font-weight:600;line-height:1.28}.login-tagline-sub{color:var(--text-muted);font-size:var(--type-body);margin:0 0 22px}.login-proof{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:6px;margin-top:22px;padding-top:18px;display:flex}.login-proof span{font-size:var(--type-eyebrow);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:4px 10px}.login-what{font-size:var(--type-small);color:var(--text-muted);margin-top:14px;text-decoration:underline;display:inline-block}.login-logo{font-size:44px}.login-tag{color:var(--text-muted);font-size:var(--type-body-lg);margin:6px 0 36px}.login-buttons{flex-direction:column;gap:10px;display:flex}.login-btn{border:1px solid var(--baseline);background:var(--surface);width:100%;color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);cursor:pointer;border-radius:12px;padding:13px 18px;font-weight:600}.login-btn:hover:not(:disabled):not(.login-btn-primary){border-color:var(--text-muted);background:var(--surface-2)}.login-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.login-btn-strava{color:#fff;background:#fc4c02;border-color:#fc4c02;font-weight:600}.login-btn-strava:hover:not(:disabled){filter:brightness(1.08)}.strava-connect-btn{cursor:pointer;background:0 0;border:none;align-self:center;padding:0;line-height:0;display:inline-flex}.strava-connect-btn img{width:auto;max-width:100%;height:48px;display:block}.strava-connect-btn:disabled{opacity:.6;cursor:default}.strava-connect-btn:hover:not(:disabled) img{filter:brightness(1.06)}.strava-connect-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:6px}.login-btn:disabled{opacity:.55;cursor:not-allowed}.login-btn-primary[aria-busy=true]:disabled{opacity:.9}.login-skip{font-size:var(--type-body);color:var(--text-muted);margin-top:22px;text-decoration:underline;display:inline-block}.login-skip:hover{color:var(--text-primary)}.login-fine{font-size:var(--type-small);color:var(--text-muted);margin-top:30px}.onboard-wrap{max-width:560px;margin:0 auto}.onboard-back{min-height:var(--tap-min);color:var(--text-secondary);font:inherit;font-size:var(--type-body-lg);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:28px 0 -14px;padding:0 2px;display:inline-flex}.onboard-back:hover{color:var(--text-primary)}.onboard-back:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:4px}.onboard-topline{justify-content:space-between;align-items:center;gap:16px;margin:0;display:flex}.onboard-topline .onboard-progress-meta{flex:auto;min-width:0;margin-bottom:0}.onboard-progress-meta{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.onboard-progress-segs{gap:4px;display:flex}.onboard-progress-segs i{background:var(--border);border-radius:2px;flex:1;height:3px;display:block}.onboard-progress-segs i.on{background:var(--accent)}.onboard-progress-segs i.now{background:var(--accent);opacity:.55}.device-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:8px;display:grid}.device-card{background:var(--surface);border:1px solid var(--border);text-align:left;cursor:pointer;color:var(--text-primary);border-radius:16px;flex-direction:column;gap:6px;padding:22px 18px;font-family:inherit;display:flex}.device-card:hover:not(.disabled){border-color:var(--accent)}.device-card.disabled{opacity:.45;cursor:default}.device-name{font-weight:700;font-size:var(--type-title)}.device-status{font-size:var(--type-small);color:var(--text-muted)}.onboard-form{max-width:380px}.onboard-import-btn{width:100%;max-width:380px}.import-progress{text-align:center;padding:40px 0}.import-count{font-family:var(--font-grotesk), system-ui, sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:64px;font-weight:700}.import-bar{background:var(--surface-2);border-radius:999px;max-width:380px;height:6px;margin:16px auto 0;overflow:hidden}.import-bar.inline{margin:10px 0 0}.import-bar-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .6s}.import-bar-fill.indeterminate{width:35%;animation:1.4s ease-in-out infinite import-sweep}@keyframes import-sweep{0%{margin-left:0}50%{margin-left:65%}to{margin-left:0}}@media (prefers-reduced-motion:reduce){.import-bar-fill.indeterminate{width:50%;margin-left:25%;animation:none}}.login-email-form{flex-direction:column;gap:10px;display:flex}.login-email-form input{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);border-radius:12px;padding:12px 14px}.login-email-form input::placeholder{color:var(--text-muted)}.login-btn-primary{background:var(--accent);color:var(--accent-ink);text-transform:uppercase;letter-spacing:.07em;font-weight:700;font-size:var(--type-body);border:none}.login-divider{font-size:var(--type-small);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin:18px 0}.coach-card{border-left:3px solid var(--accent)}.coach-rating{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.coach-execution{border-bottom:1px solid var(--gridline);margin-bottom:16px;padding-bottom:14px}.coach-execution-text{font-size:var(--type-body-lg);color:var(--text-secondary);line-height:1.55}.notes-form{flex-direction:column;gap:6px;display:flex}.plan-date-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.plan-date-fields .notes-row{align-content:start}.notes-form textarea{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);resize:vertical;border-radius:12px;padding:12px 14px}.notes-form textarea::placeholder{color:var(--text-muted)}.edit-btn{color:var(--text-muted);font-size:var(--type-heading);cursor:pointer;vertical-align:middle;background:0 0;border:none;margin-left:10px}.edit-btn:hover{color:var(--text-primary)}.edit-form{flex-direction:column;gap:10px;max-width:560px;margin-top:8px;display:flex}.edit-input{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body-lg);border-radius:12px;padding:10px 14px}.edit-input::placeholder{color:var(--text-muted)}.edit-input-title{font-size:var(--type-heading);font-weight:600}.notes-save{cursor:pointer;border-radius:999px;align-self:flex-start;padding:9px 20px}.notes-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.notes-label{min-width:120px}.unit-groups{flex-direction:column;gap:18px;display:flex}.notes-select{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);font-family:inherit;font-size:var(--type-body);border-radius:12px;padding:8px 12px}.notes-hint,.input-hint,.sheet-hint,.threshold-hint{font-size:var(--type-small);color:var(--text-muted)}.role-chip{font-size:var(--type-micro);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:1px 8px;font-weight:700;display:inline-block}.role-work{background:var(--accent);color:var(--accent-ink)}.role-rest{border:1px solid var(--baseline);color:var(--text-muted)}.role-warmup,.role-cooldown{border:1px solid var(--baseline);color:var(--text-secondary)}.zone-chip{font-size:var(--type-micro);color:var(--zone-6-ink,#fff);border-radius:6px;padding:1px 8px;font-weight:700;display:inline-block}.zone-note{margin-top:10px}.zone-note>summary{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);letter-spacing:var(--type-eyebrow-spacing);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;color:var(--text-muted);cursor:pointer;padding:6px 0;list-style:none}.zone-note>summary::-webkit-details-marker{display:none}.zone-note>summary:after{content:" +";font-family:inherit}.zone-note[open]>summary:after{content:" -"}.zone-note>p{color:var(--text-secondary);font-size:var(--type-body);max-width:62ch;margin:2px 0 4px;line-height:1.5}.zone-card{padding-left:20px}.zone-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:8px;display:flex}.zone-card-head h2{margin-bottom:0}.zone-bands{flex-wrap:wrap;gap:4px 10px;display:flex}.zone-band{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-small);color:var(--text-secondary);white-space:nowrap}.zone-lede{color:var(--text-secondary);font-size:var(--type-body-lg);max-width:62ch;margin:0;line-height:1.5}.zone-plan{font-size:var(--type-body);color:var(--text-secondary);margin:8px 0 0}.zone-plan>span{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-muted);margin-right:8px}.zone-card>.zone-note{margin-top:4px}.zone-card>.zone-note>summary{padding-bottom:0}.zone-detail,.anchor-rows{margin:12px 0 0}.zone-detail>div,.anchor-row{grid-template-columns:8.5rem 1fr;gap:4px 12px;padding:8px 0 0;display:grid}.zone-detail dt,.anchor-row dt{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-muted);padding-top:2px}.zone-detail dd,.anchor-row dd{color:var(--text-secondary);font-size:var(--type-body);max-width:62ch;margin:0;line-height:1.5}.anchor-row dt{flex-direction:column;align-items:flex-start;gap:5px;display:flex}@media (max-width:520px){.zone-detail>div,.anchor-row{grid-template-columns:1fr;gap:2px}.anchor-row dt{flex-direction:row;align-items:center;gap:8px}}tr.lap-rest td{opacity:.55}tr.lap-support td{opacity:.72}.activity-actions{position:relative}.activity-actions-menu{z-index:40;border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;min-width:210px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 48px #00000038}.activity-actions-item{color:var(--text-primary);font-family:inherit;font-size:var(--type-body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 12px}.activity-actions-item:hover{background:var(--surface-2)}.activity-actions-item.danger{color:var(--status-serious);border-top:1px solid var(--border);border-radius:0 0 8px 8px;margin-top:4px}.lap-time{white-space:nowrap}.pause-flag{vertical-align:-.05em;width:.85em;height:.85em;fill:var(--text-muted);margin-left:.45em}.lap-legend{font-size:var(--type-micro);color:var(--text-muted);align-items:center;gap:6px;margin:10px 2px 0;display:flex}.lap-legend .pause-flag{margin-left:0}.plan-progress-head{justify-content:space-between;margin-bottom:8px;display:flex}.plan-progress-track{background:var(--gridline);border-radius:999px;height:8px;overflow:hidden}.plan-progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .4s}.workout-list{flex-direction:column;gap:10px;margin-top:8px;display:flex}.workout-card{border:1px solid var(--gridline);border-radius:12px;padding:14px 16px}.workout-head{cursor:pointer;width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;padding:0;display:flex}.workout-head>span:first-child{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.workout-head .role-chip{border:1px solid var(--baseline);color:var(--text-secondary)}.workout-card.user-workout{border-left:3px solid var(--accent)}.workout-library-section{color:var(--text-muted);font-size:var(--type-eyebrow);letter-spacing:var(--type-eyebrow-spacing);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;margin:12px 0 0}.workout-card-actions{margin:8px 0 0}.workout-name{font-weight:650;font-size:var(--type-body-lg)}.workout-origin{font-size:var(--type-small);color:var(--text-muted)}.workout-session{font-size:var(--type-body);color:var(--text-secondary);margin-top:8px;line-height:1.55}.workout-purpose-line{font-size:var(--type-body);color:var(--text-secondary);margin:6px 0 0;line-height:1.5}.workout-summary{flex-direction:column;gap:2px;margin-top:6px;display:flex}.workout-summary-line{font-size:var(--type-body);color:var(--text-primary);overflow-wrap:anywhere;line-height:1.45}.workout-summary-line.muted{color:var(--text-muted);font-size:var(--type-small)}.workout-chip-row{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.workout-card-media{align-items:center;gap:10px;margin-top:6px;display:flex}.workout-card-thumb{flex:0 0 112px;width:112px}.workout-card-thumb .workout-profile{margin:0}.workout-card-thumb .workout-profile svg{min-height:0;display:block}.workout-card-stats{min-width:0;font-size:var(--type-body);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:0 6px;display:flex}.workout-card-minutes{color:var(--text-primary)}.workout-card-cost{color:var(--text-muted);font-size:var(--type-small)}.workout-details{border-top:1px dashed var(--gridline);margin-top:10px;padding-top:8px}.workout-detail-line{font-size:var(--type-small);color:var(--text-secondary);margin:4px 0 0;line-height:1.5}.workout-search{margin:6px 0 10px;display:block}.workout-search .filter-input{box-sizing:border-box;width:100%}.workout-fit{background:color-mix(in srgb, var(--accent) 8%, transparent);font-size:var(--type-small);color:var(--text-secondary);border-radius:8px;margin:6px 0 0;padding:6px 10px;line-height:1.5}.workout-fit-note{margin:0}.workout-fit-warn .workout-fit{background:color-mix(in srgb, var(--status-warning) 12%, transparent);color:var(--text-primary)}.workout-purpose{font-size:var(--type-body);color:var(--text-muted);border-left:2px solid var(--accent);margin-top:8px;padding-left:10px;line-height:1.55}.next-session-card{transition:border-color .12s;display:block}.next-session-card:hover{border-color:var(--accent)}.next-session-title{font-weight:650;font-size:var(--type-body-lg);margin-bottom:4px}.toast-stack{bottom:calc(var(--bottom-nav-h) + var(--tap-min) + var(--bottom-gap) * 2);z-index:var(--z-toast);flex-direction:column;gap:8px;display:flex;position:fixed;right:24px}.toast{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);font-size:var(--type-body);color:var(--text-primary);border-radius:12px;align-items:center;gap:14px;max-width:380px;padding:12px 18px;animation:.2s toast-in;display:flex;box-shadow:0 6px 20px #00000059}.toast-success{border-left-color:var(--good)}.toast-tick{width:18px;height:18px;color:var(--good);flex-shrink:0}.toast-tick path{stroke-dasharray:24;stroke-dashoffset:24px;animation:.42s ease-out .12s forwards tick-draw}@keyframes tick-draw{to{stroke-dashoffset:0}}.toast-action{background:var(--accent);color:var(--accent-ink);font-family:inherit;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:5px 14px}.toast-action:hover{filter:brightness(1.08)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.plan-week{flex-direction:column;gap:10px;display:flex}.plan-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.plan-calendar-day{border:1px solid var(--gridline);background:var(--surface-2);border-radius:12px;flex-direction:column;min-height:182px;padding:10px;display:flex}.plan-drop-target{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--surface-2));box-shadow:inset 0 0 0 1px var(--accent)}.plan-day-rail{align-items:baseline;gap:6px;display:flex}.plan-day-name{color:var(--text-muted);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase}.plan-day-date{color:var(--text-secondary);font-size:var(--type-body);font-weight:700}.plan-today-tag{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;border-radius:999px;margin-left:auto;padding:2px 7px}.plan-day-body{flex-direction:column;flex:1;min-width:0;display:flex}.plan-calendar-session{box-sizing:border-box;background:var(--surface);flex-direction:column;flex:1;min-height:150px;margin-top:8px;padding:10px;display:flex}.plan-calendar-session .plan-session-head{gap:6px}.plan-calendar-session .role-chip{font-size:var(--type-micro)}.plan-calendar-session .plan-title{font-size:var(--type-body)}.plan-calendar-session .plan-detail{font-size:var(--type-small)}.plan-session-actions{gap:5px;margin-top:auto;margin-bottom:0;padding-top:8px}.plan-swap-choice{min-height:var(--tap-min);font-size:var(--type-small);letter-spacing:.02em;text-align:center;white-space:normal;justify-content:center;align-items:center;padding:6px 12px;line-height:1.25;display:inline-flex}.plan-swap-choice.danger{color:var(--status-critical,#d03b3b);border-color:currentColor}.plan-session-more{min-height:var(--tap-min);color:var(--text-muted);font:inherit;font-size:var(--type-small);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-left:auto;padding:0 2px;display:inline-flex}.plan-session-more:hover{color:var(--text-primary)}.plan-session-more:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:6px}.plan-more-chev{font-size:var(--type-small)}.plan-session-actions{margin-top:8px}.plan-execution{border-top:1px solid var(--gridline);font-size:var(--type-eyebrow);margin-top:8px;padding-top:8px;line-height:1.4}.plan-execution strong,.plan-execution span{display:block}.plan-execution strong{text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing)}.plan-execution span{color:var(--text-muted);margin-top:2px}.training-link-control{color:var(--text-secondary);font-size:var(--type-body);flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.training-link-picker{flex-direction:column;gap:8px;max-width:560px;margin-top:10px;padding:14px;display:flex}.training-link-option{border:1px solid var(--baseline);background:var(--page);color:var(--text-primary);text-align:left;cursor:pointer;border-radius:12px;padding:10px 12px}.training-link-option:hover{border-color:var(--accent)}.training-link-option strong,.training-link-option span{display:block}.training-link-option span{color:var(--text-muted);font-size:var(--type-small);margin-top:3px}.race-picker{border:1px solid var(--border);background:var(--surface-2);border-radius:16px;margin-top:16px;padding:16px}.race-picker .filter-input{width:100%;max-width:none}.race-picker-results{gap:8px;max-height:360px;margin-top:12px;display:grid;overflow-y:auto}.race-picker-option{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:11px 12px;display:flex}.race-picker-option:hover{border-color:var(--accent)}.race-picker-option:disabled{cursor:wait;opacity:.65}.race-picker-option span,.race-picker-option strong,.race-picker-option small{display:block}.race-picker-option small{color:var(--text-muted);font-size:var(--type-small);margin-top:3px}.race-picker-option b{color:var(--accent);font-size:var(--type-small);flex:none;font-weight:600}.plan-badge{font-size:var(--type-micro);letter-spacing:.04em;white-space:nowrap;cursor:help;border-radius:999px;padding:1px 7px}.plan-badge.adjust{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.plan-badge.warn{background:color-mix(in srgb, var(--status-serious) 16%, transparent);color:var(--status-serious)}.progress-block{box-sizing:border-box;width:100%;min-width:0;margin-top:10px}.progress-track{background:var(--gridline);border-radius:999px;height:4px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:999px;width:38%;height:100%;animation:1.15s ease-in-out infinite progress-slide}@keyframes progress-slide{0%{margin-left:-38%}to{margin-left:100%}}@media (prefers-reduced-motion:reduce){.progress-fill{opacity:.55;width:100%;animation:none}}.progress-label{color:var(--text-secondary);font-size:var(--type-small);margin-top:7px}.workout-splits-card{grid-column:1/-1}.stream-chart{width:100%;margin:4px 0 6px}.stream-chart svg{width:100%;height:auto;min-height:180px;display:block}.stream-chart-grid line{stroke:var(--gridline);stroke-width:1px}.stream-chart-band{opacity:.13}.stream-chart-avg{stroke:var(--accent);stroke-width:2px;stroke-dasharray:7 7;opacity:.85}.stream-chart-avglab{fill:var(--accent);font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-body);letter-spacing:.03em;font-weight:600}@media (max-width:768px){.stream-chart-avglab{font-size:var(--text-3xl)}}.stream-chart-scrub{stroke:var(--text-muted);stroke-width:1.5px;stroke-dasharray:3 4}.stream-chart-scrub-dot{fill:var(--accent);stroke:var(--page);stroke-width:2.5px}.stream-chart-scrub-label{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-body);letter-spacing:.03em;fill:var(--text-primary);paint-order:stroke;stroke:var(--page);stroke-width:6px;font-weight:600}@media (max-width:768px){.stream-chart-scrub-label{font-size:var(--text-3xl)}}.stream-chart-grid text,.stream-chart-grid-unit,.stream-chart-axis-title{fill:var(--text-muted);font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-body);letter-spacing:.06em}@media (max-width:768px){.stream-chart-grid text,.stream-chart-grid-unit,.stream-chart-axis-title{font-size:var(--text-3xl);letter-spacing:.03em}}.stream-chart-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round}.stream-chart-area{fill:var(--accent);opacity:.14}.chart-stat-head{justify-content:flex-end;gap:20px;margin:2px 2px 8px;display:flex}.chart-stat-head .cs{text-align:right}.chart-stat-head .cs b{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-title);letter-spacing:-.01em;color:var(--text-primary);font-weight:600;line-height:1.1;display:block}.chart-stat-head .cs span{font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-muted)}.workout-profile{width:100%;margin:4px 0 6px}.workout-profile svg{width:100%;height:auto;min-height:180px;display:block}.workout-profile-grid line{stroke:var(--gridline);stroke-width:1px}.workout-profile-grid text,.workout-profile-axis-title,.workout-profile-time{fill:var(--text-secondary);font-family:var(--font-grotesk), system-ui, sans-serif;letter-spacing:.06em;font-size:26px}.workout-profile-mark rect{opacity:.52}.workout-profile-mark.warmup rect,.workout-profile-mark.cooldown rect,.workout-profile-mark.recovery rect{fill:var(--series-1)}.workout-profile-mark.steady rect{fill:var(--series-2)}.workout-profile-mark.work rect{fill:var(--accent)}.workout-profile-mark.float rect{fill:var(--accent);opacity:.35}.workout-profile-line{fill:none;stroke:var(--text-primary);stroke-width:2.5px;stroke-linejoin:round}.workout-profile-point{fill:var(--text-primary)}.workout-profile-baseline{stroke:var(--baseline);stroke-width:1px}.splits-bar{background:var(--surface);border-radius:8px;gap:2px;height:44px;margin:4px 0 10px;display:flex;overflow:hidden}.splits-block{border-radius:2px;flex-basis:0;min-width:2px;transition:opacity .12s}.splits-block:hover{opacity:.75}.splits-block.warmup,.splits-swatch.warmup{background:var(--series-1)}.splits-block.cooldown,.splits-swatch.cooldown{background:var(--series-1);opacity:.6}.splits-block.recovery,.splits-swatch.recovery{background:var(--series-1);opacity:.8}.splits-block.steady,.splits-swatch.steady{background:var(--series-2)}.splits-block.work,.splits-swatch.work{background:var(--accent)}.splits-block.float,.splits-swatch.float{background:var(--accent);opacity:.5}.splits-total{color:var(--text-secondary);font-size:var(--type-small);flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.splits-legend{flex-wrap:wrap;gap:10px;display:flex}.splits-key{align-items:center;gap:5px;display:inline-flex}.splits-swatch{border-radius:2px;width:9px;height:9px;display:inline-block}.splits-list{flex-direction:column;gap:6px;margin:14px 0 0;padding:0;list-style:none;display:flex}.splits-row{font-size:var(--type-body);align-items:baseline;gap:10px;display:flex}.splits-reps{text-align:right;min-width:34px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.splits-detail{flex-wrap:wrap;gap:6px;display:flex}.splits-chip{font-size:var(--type-small);background:var(--surface);border-left:3px solid var(--gridline);border-radius:999px;padding:2px 9px}.splits-chip.work{border-left-color:var(--accent)}.splits-chip.float{border-left-color:var(--accent);border-left-style:dashed}.splits-chip.steady{border-left-color:var(--series-2)}.splits-chip.recovery,.splits-chip.warmup,.splits-chip.cooldown{border-left-color:var(--series-1)}.workout-swapped-original{border-top:1px solid var(--gridline);color:var(--text-muted);font-size:var(--type-body);margin-top:12px;padding-top:12px;line-height:1.5}.plan-rest-day{color:var(--text-muted);font-size:var(--type-small);margin-top:18px}button.plan-rest-day-add{text-align:left;border:1px dashed var(--gridline);cursor:pointer;width:100%;font:inherit;font-size:var(--type-small);color:var(--text-muted);background:0 0;border-radius:12px;padding:10px 12px;display:block}button.plan-rest-day-add:hover{border-color:var(--accent);color:var(--text-secondary)}.plan-rest-add-hint{color:var(--accent);font-weight:700}.plan-day-add-hint{color:var(--text-muted);font-weight:600}button.plan-day-add:hover .plan-day-add-hint{color:var(--accent)}a.plan-unplanned-run{color:var(--text-muted);border-style:dashed;text-decoration:none;display:block}a.plan-unplanned-run .plan-row-title{min-height:var(--tap-min);font-size:var(--type-body);color:var(--text-secondary);align-items:center;font-weight:500}a.plan-unplanned-run .plan-row-actual{display:block}a.plan-unplanned-run:hover .plan-row-title{color:var(--text-primary)}.activity-attribution{font-size:var(--type-small);color:var(--text-muted)}.plan-session{border:1px solid var(--gridline);border-radius:12px;padding:14px 16px}.plan-session[draggable=true]{cursor:grab}.plan-session[draggable=true]:active{cursor:grabbing}.plan-dragging{opacity:.45;border-style:dashed}.plan-key{border-color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.plan-key-mark{width:18px;height:18px;font-size:var(--type-eyebrow);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:999px;justify-content:center;align-items:center;margin-right:4px;display:inline-flex}.plan-week-context{flex-direction:column;gap:12px;padding:16px 20px;display:flex}.plan-context-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.plan-context-summary{color:var(--text-secondary);font-size:var(--type-body);margin:0;line-height:1.5}.plan-context-actions{flex-shrink:0;gap:8px;display:flex}.taper-arc-caption{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--text-secondary);margin:2px 2px 0}.plan-week-credit{color:var(--text-muted);font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-micro);font-weight:var(--type-eyebrow-weight);letter-spacing:.04em;text-transform:uppercase;margin:0;padding:0;line-height:1.45}.plan-hero-anchor-note{color:var(--text-muted);font-size:var(--type-small);margin:2px 0 0}.racepace{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.racepace-head{font-size:var(--type-small);color:var(--text-primary);margin:0 0 4px;font-weight:600}.racepace-list{margin:0;padding:0;list-style:none}.racepace-row{font-size:var(--type-small);grid-template-columns:16px 3.2em 1fr;align-items:baseline;gap:6px;line-height:1.5;display:grid}.racepace-mark{color:var(--text-muted);text-align:center}.racepace-row.is-ticked .racepace-mark{color:var(--accent)}.racepace-dist{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.racepace-detail{color:var(--text-muted);font-variant-numeric:tabular-nums}.racepace-row.is-ticked .racepace-detail{color:var(--text-secondary)}.racepace-next{font-size:var(--type-small);color:var(--text-primary);margin:6px 0 0}.plan-today-jump{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;flex-shrink:0;padding:0;text-decoration:underline}.plan-week-card{padding:14px 16px}.plan-next{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.plan-next-tag{background:var(--accent);color:#fff;font-size:var(--text-3xs);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:2px 7px;font-weight:700}.plan-action-prompt{color:var(--text-muted);font-size:var(--type-eyebrow);align-self:center}.plan-action{min-height:var(--tap-min)}.plan-move-banner{top:calc(var(--header-h,56px) + 8px);z-index:50;border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;display:flex;position:sticky}.plan-move-banner-text{flex-direction:column;gap:2px;min-width:0;display:flex}.plan-move-banner-text strong{font-size:var(--type-body-lg)}.plan-move-banner-text span{color:var(--text-secondary);font-size:var(--type-small)}.plan-calendar-choosing .plan-calendar-day{cursor:default}.plan-day-eligible{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface-2))}.plan-move-day-summary{color:var(--text-muted);font-size:var(--type-small);text-overflow:ellipsis;white-space:nowrap;margin-bottom:8px;overflow:hidden}.plan-move-target{text-align:left;width:100%;font:inherit;font-size:var(--type-body);border-radius:12px;padding:10px 12px;font-weight:600;display:block}button.plan-move-target.eligible{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}button.plan-move-target.eligible:hover{filter:brightness(1.06)}.plan-move-target.current{border:1px dashed var(--border);background:var(--surface-2);color:var(--text-muted)}.plan-move-target.blocked{border:1px solid var(--gridline);color:var(--text-muted);background:0 0;font-weight:500}.swap-library-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.swap-library-head h2{margin:3px 0 0}.sheet.custom-workout-dialog{max-width:1040px}.custom-workout-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;margin-top:16px;display:grid}.custom-workout-entry,.custom-workout-preview{border:1px solid var(--gridline);background:var(--surface);border-radius:16px;min-width:0;padding:16px}.workout-upload{border:1px dashed var(--baseline);color:var(--text-primary);text-align:center;cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:22px 16px;display:flex}.workout-upload:hover{border-color:var(--accent);background:var(--surface-2)}.workout-upload.busy{cursor:wait;opacity:.65}.workout-upload input{opacity:0;width:1px;height:1px;position:absolute}.workout-upload span{color:var(--text-muted);font-size:var(--type-eyebrow)}.custom-workout-fields{grid-template-columns:1fr 190px;gap:10px;margin:16px 0 12px;display:grid}.custom-workout-fields label,.custom-workout-entry>label:not(.workout-upload){flex-direction:column;gap:6px;display:flex}.custom-workout-fields .filter-input,.custom-workout-fields .notes-select{width:100%;max-width:none}.custom-workout-text{resize:vertical;width:100%;font-family:var(--font-grotesk), system-ui, sans-serif;line-height:1.55}.custom-candidates{border:1px solid var(--status-warning);background:color-mix(in srgb, var(--status-warning) 8%, transparent);font-size:var(--type-small);border-radius:12px;flex-direction:column;gap:8px;margin-top:12px;padding:12px;display:flex}.structured-editor{flex-direction:column;gap:9px;margin-top:16px;display:flex}.structured-editor-head,.structured-block-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.structured-editor-head>div:first-child{flex-direction:column;gap:2px;display:flex}.structured-editor-head span{color:var(--text-muted);font-size:var(--type-eyebrow)}.structured-editor-actions{gap:5px;display:flex}.structured-block{border:1px solid var(--gridline);background:var(--surface);border-radius:12px;flex-direction:column;gap:7px;padding:11px;display:flex}.structured-block-toolbar{justify-content:flex-start}.structured-block-number{color:var(--text-secondary);font-size:var(--type-eyebrow);letter-spacing:.05em;text-transform:uppercase;font-weight:650}.structured-block-toolbar label{color:var(--text-muted);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);align-items:center;gap:5px;margin-left:4px;display:flex}.structured-block-toolbar input{width:52px}.structured-open-badge{color:var(--text-muted);font-size:var(--type-micro);letter-spacing:.06em;text-transform:uppercase}.structured-block-actions{gap:5px;margin-left:auto;display:flex}.structured-block-toolbar button,.structured-mode button,.structured-add-recovery{border:1px solid var(--gridline);background:var(--surface);min-height:36px;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--type-micro);border-radius:8px}.structured-block-toolbar button{width:36px;font-size:var(--type-body-lg)}.structured-block-toolbar button:disabled{cursor:default;opacity:.35}.structured-step{border-top:1px solid var(--gridline);grid-template-columns:108px minmax(110px,1fr) 96px;gap:6px;padding-top:7px;display:grid;position:relative}.structured-block-add{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.structured-step-remove{border:1px solid var(--gridline);background:var(--surface);width:22px;height:22px;color:var(--text-muted);cursor:pointer;font:inherit;font-size:var(--type-body);border-radius:6px;line-height:1;position:absolute;top:9px;right:-2px}.structured-kind{grid-column:1}.kind-picker{position:relative}.kind-picker>button{border:1px solid var(--gridline);background:var(--surface);width:100%;min-height:36px;color:var(--text-primary);font:inherit;font-size:var(--type-small);cursor:pointer;border-radius:8px}.kind-picker-backdrop{z-index:29;cursor:default;background:0 0;border:none;position:fixed;inset:0}.kind-picker-menu{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:2px;min-width:132px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #14101829}.kind-picker-menu button{text-align:left;font:inherit;font-size:var(--type-small);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 10px}.kind-picker-menu button:hover{background:var(--surface-2)}.kind-picker-menu button.active{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);font-weight:600}.structured-label{grid-column:2/4}.structured-step-uncertain{border-left:3px solid var(--status-warning);padding-left:8px}.structured-uncertain-badge{font-size:var(--type-eyebrow);color:var(--status-warning);grid-column:1/4;font-weight:600}.custom-step-uncertain{border-left:3px solid var(--status-warning)}.custom-uncertain-confirm{font-size:var(--type-small);color:var(--text-secondary);align-items:flex-start;gap:8px;margin:10px 0 2px;display:flex}.custom-uncertain-confirm input{accent-color:var(--status-warning);margin-top:2px}.skeleton-card{flex-direction:column;gap:12px;display:flex}.skeleton-line{background:linear-gradient(90deg, var(--border) 25%, var(--surface-2) 50%, var(--border) 75%);background-size:200% 100%;border-radius:8px;height:13px;animation:1.4s ease-in-out infinite skeleton-shimmer}.skeleton-title{width:45%;height:20px;margin-bottom:4px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:no-preference){.filter-chip{transition:background-color .14s,color .14s,border-color .14s,transform .1s}.filter-chip:active:not(:disabled){transform:scale(.95)}.login-btn{transition:transform .1s,opacity .14s}.login-btn:active:not(:disabled){transform:scale(.98)}.card,.tile{animation:.24s both card-in}.analysis-section-body{animation:.18s both card-in}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(28px)}to{opacity:1;transform:none}}}.plan-wizard-bar{background:var(--border);border-radius:2px;flex:1;max-width:200px;height:4px;overflow:hidden}.plan-wizard-bar i{background:var(--accent);border-radius:2px;height:100%;display:block}.plan-wizard-title{font-size:var(--text-2xl);margin:2px 0 0}.plan-wizard-lead{max-width:46em;color:var(--text-secondary);font-size:var(--type-body);margin:8px 0 0;line-height:1.5}.plan-wizard-next{flex:1}.plan-wizard-body{animation:.22s wizard-step-in}@keyframes wizard-step-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.plan-wizard-body{animation:none}}.plan-wizard-body .notes-row{margin:0 0 24px;display:block}.plan-wizard-body .notes-label{min-width:0;margin-bottom:8px;display:block}.plan-wizard-body .notes-hint{font-size:var(--type-small);max-width:40ch;margin-top:8px;line-height:1.5;display:block}.plan-wizard-body .notes-row{background:var(--surface-2);border-radius:16px;margin:0 0 12px;padding:14px 14px 15px}.plan-wizard-body .notes-row .filter-chip{background:var(--surface);border-color:#0000}.plan-wizard-body .notes-row .filter-chip.active{background:var(--accent);color:var(--accent-ink)}.plan-wizard-body .notes-row .filter-input,.plan-wizard-body .notes-row .notes-select{background:var(--surface);border-color:#0000}.plan-wizard-body .notes-hint{color:var(--text-secondary)}.group-card{background:var(--surface-2);border-radius:16px;margin:0 0 12px;padding:14px 14px 15px}.group-card>.kicker{margin-bottom:8px;display:block}.notes-row.group-card{display:block}.notes-row.group-card .notes-label{min-width:0;margin-bottom:8px;display:block}.notes-row.group-card .notes-hint{margin-top:8px;display:block}.group-card .filter-chip{background:var(--surface);border-color:#0000}.group-card .filter-chip.active{background:var(--accent);color:var(--accent-ink)}.group-card .filter-input,.group-card input[type=date],.group-card input[type=number],.group-card input[type=time]{background:var(--surface);color:var(--text-primary);border:1px solid #0000;border-radius:12px;padding:9px 13px;font-family:inherit}.plan-note{background:var(--estimated-soft);border-left:3px solid var(--estimated);font-size:var(--type-small);color:var(--text-secondary);border-radius:0 12px 12px 0;margin-bottom:8px;padding:10px 12px;line-height:1.5}.plan-note:first-of-type{margin-top:10px}.plan-mode-switch{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:22px;padding-top:16px;display:flex}.plan-mode-switch .kicker{margin:0}.plan-mode-switch .plan-newplan-btn{margin-top:2px}.plan-note-aside{color:var(--text-muted);margin-top:6px;display:block}.next-session-steps{gap:7px;margin-top:10px}.workout-step-lines.next-session-steps li{grid-template-columns:none;align-items:baseline;gap:9px;display:flex}.next-session-steps .splits-swatch{flex:none;position:relative;top:-1px}.next-session-steps .workout-step-text{font-size:var(--type-body);color:var(--text-secondary);line-height:1.45}.workout-step-lines{gap:8px;margin:0;padding:0;list-style:none;display:grid}.workout-step-lines li{grid-template-columns:96px 1fr;align-items:baseline;gap:10px;display:grid}.workout-step-kind{font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.workout-step-text{font-size:var(--type-body-lg);color:var(--text-primary);line-height:1.45}.workout-step-intent{font-size:var(--type-small);color:var(--text-muted);grid-column:2;margin-top:1px;line-height:1.45}.card-kicker{margin-bottom:12px;display:block}.next-session-card .plan-detail{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.plan-note-label{font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase;color:var(--text-primary);margin-bottom:2px;display:block}.day-chip-row{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.day-chip-row .filter-chip{text-align:center;justify-content:center;min-width:0;padding:8px 0}.plan-review-list{flex-direction:column;gap:10px;display:flex}.plan-review-row{border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.plan-review-row p{font-size:var(--type-body);margin:2px 0 0}.structured-mode{grid-column:1}.structured-value{grid-column:2}.structured-pace{grid-column:3}.structured-step select,.structured-step input{border:1px solid var(--baseline);background:var(--surface);width:100%;min-width:0;min-height:34px;color:var(--text-primary);font:inherit;font-size:var(--type-eyebrow);border-radius:8px;padding:5px 7px}.structured-step label{color:var(--text-muted);font-size:var(--text-3xs);flex-direction:column;align-items:stretch;gap:3px;display:flex}.structured-step .structured-input-invalid{border-color:var(--status-critical)}.structured-field-error{color:var(--status-critical);font-size:var(--type-micro);line-height:1.25}.structured-mode{gap:4px;display:flex}.structured-mode button{flex:1}.structured-mode button.active{border-color:var(--accent);color:var(--accent)}.structured-open-note{color:var(--text-muted);font-size:var(--type-micro);grid-column:2/4;align-self:center}.structured-add-recovery{align-self:flex-start;padding:4px 9px}.structured-add-step{align-self:flex-start}.structured-validation{font-size:var(--type-eyebrow);border-radius:8px;padding:8px 10px}.structured-validation p{margin:2px 0}.structured-validation.errors{border:1px solid var(--status-critical);color:var(--status-critical)}.structured-validation.warnings{border:1px solid var(--status-warning);color:var(--text-secondary)}.trend-legend{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.trend-key{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-small);color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.trend-swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.trend-swatch.easy,.trend-seg.easy{background:var(--status-good,#4a9d6b)}.trend-swatch.hard,.trend-seg.hard{background:var(--accent,#d1603d)}.trend-swatch.unclassified,.trend-seg.unclassified{background:var(--text-muted,#9aa5b1)}.trend-weeks{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.trend-week{border:1px solid var(--gridline);background:var(--surface);border-radius:12px;padding:10px 12px}.trend-week.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.trend-week-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.trend-week-label{font-weight:600;font-size:var(--type-body-lg);align-items:center;gap:8px;display:inline-flex}.trend-current-badge{font-style:normal;font-size:var(--type-micro);text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:1px 7px;font-weight:600}.trend-week-total{font-weight:600;font-size:var(--type-body-lg)}.trend-bar{background:var(--gridline);border-radius:999px;min-width:6%;height:9px;margin:8px 0;display:flex;overflow:hidden}.trend-seg{min-width:2px;height:100%;display:block}.trend-week-stats{font-size:var(--type-small);color:var(--text-secondary);flex-wrap:wrap;gap:4px 14px;display:flex}.trend-week-stats b{color:var(--text-primary);font-weight:600}.private-note-preview{border:1px solid var(--gridline);background:var(--surface);font-size:var(--type-body);color:var(--text-secondary);white-space:pre-wrap;border-radius:12px;margin:10px 0 0;padding:10px 12px}.private-note-preview .kicker{margin-bottom:4px;display:block}.sheet.plan-edit-sheet{padding-inline:0}.plan-edit-header{z-index:1;border-bottom:1px solid var(--gridline);background:var(--page);justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 18px 16px;display:flex;position:sticky;top:0}.plan-edit-header strong{font-size:var(--type-title);margin-top:2px;display:block}.plan-edit-close{border:1px solid var(--gridline);background:var(--surface);width:36px;height:36px;color:var(--text-primary);font-size:var(--type-heading);cursor:pointer;border-radius:12px;flex:none;line-height:1}.plan-edit-body{padding:4px 18px 18px}.plan-edit-preview{margin-top:14px}.plan-edit-type{flex-direction:column;gap:6px;margin-top:14px;display:flex}.plan-edit-type .filter-row{flex-wrap:wrap}.plan-edit-actions{padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--gridline);background:var(--page);justify-content:flex-end;gap:8px;display:flex;position:sticky;bottom:0}@media (max-width:640px){.plan-edit-actions .filter-chip{text-align:center;flex:auto}}.workout-adjust-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.workout-adjust-actions .filter-chip{width:100%;min-height:var(--tap-min);justify-content:center;align-items:center;margin:0;text-decoration:none;display:inline-flex}.custom-workout-preview{flex-direction:column;display:flex}.custom-preview-summary{flex-direction:column;gap:3px;margin:8px 0 12px;display:flex}.custom-preview-summary strong{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-heading)}.custom-preview-summary span{color:var(--text-muted);font-size:var(--type-small)}.custom-preview-steps{flex-direction:column;gap:5px;max-height:430px;margin:0 0 16px;padding:0;list-style:none;display:flex;overflow-y:auto}.custom-preview-steps li{border-bottom:1px solid var(--gridline);font-size:var(--type-small);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.custom-preview-steps li>span:last-child{color:var(--text-muted);font-variant-numeric:tabular-nums}.custom-workout-save{margin-top:auto}.custom-workout-save-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;display:grid}.custom-preview-empty{min-height:260px;color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;display:flex}.custom-preview-empty strong{color:var(--text-primary)}.custom-preview-empty span{max-width:300px;font-size:var(--type-body);line-height:1.5}@media (max-width:680px){.custom-workout-grid,.custom-workout-fields{grid-template-columns:1fr}.structured-step{grid-template-columns:92px minmax(92px,1fr) 82px}.workout-adjust-actions,.custom-workout-save-actions,.plan-date-fields{grid-template-columns:1fr}}@media (max-width:720px){.plan-calendar{grid-template-columns:1fr;gap:0}.plan-calendar-day{border:0;border-top:1px solid var(--gridline);background:0 0;border-radius:0;flex-direction:row;align-items:baseline;gap:10px;min-height:0;padding:9px 0}.plan-calendar-day:first-child{border-top:0}.plan-calendar-day.plan-today{box-shadow:inset 3px 0 0 var(--accent);padding-left:9px}.plan-day-rail{font-family:var(--font-grotesk), system-ui, sans-serif;flex-direction:row;flex:0 0 66px;align-items:baseline;gap:4px;padding-top:0}.plan-day-name{font-size:var(--type-micro)}.plan-day-date{font-size:var(--type-small);white-space:nowrap;font-weight:600}.plan-today-tag{display:none}.plan-day-body{gap:0}.plan-calendar-session{background:0 0;border:0;border-radius:0;grid-template-columns:auto minmax(min-content,auto) auto 1fr;align-items:baseline;gap:0 8px;min-height:0;margin-top:0;padding:0;display:grid}.plan-calendar-session:after{content:""}.plan-calendar-session.plan-next,.plan-calendar-session.plan-key{box-shadow:none;border:0}.plan-calendar-session .plan-session-head{gap:5px;margin:0;padding-left:19px;position:relative}.plan-calendar-session .role-chip{font-size:var(--text-3xs);letter-spacing:.06em;padding:2px 6px}.plan-calendar-session .plan-key-mark{width:15px;height:15px;font-size:var(--text-3xs);position:absolute;top:50%;left:0;transform:translateY(-50%)}.plan-calendar-session .plan-next-tag{font-size:var(--text-3xs);padding:2px 5px}.plan-calendar-session .plan-title{min-width:0;font-size:var(--type-body-lg);overflow-wrap:normal}.plan-calendar-session .plan-session-more{margin-left:2px}.plan-calendar-session .plan-session-actions{flex-wrap:nowrap;grid-column:1/-1;gap:6px;margin-top:8px}.plan-calendar-session .plan-session-actions .filter-chip{min-height:var(--tap-min);font-size:var(--type-small);text-align:center;flex:auto;padding:6px 4px}.plan-rest-day{min-height:0;padding:0}button.plan-rest-day-add{text-align:left;background:0 0;border:0;min-height:0;padding:0}}.plan-today{border-color:var(--accent)}.plan-missed{opacity:.55}.plan-session-head{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:4px;display:flex}.plan-date{font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing);color:var(--text-muted);min-width:92px}.plan-status{font-size:var(--type-small);color:var(--text-muted);margin-left:auto}.plan-status.action{cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.plan-status.done{color:var(--status-good)}.plan-status.swap{color:var(--accent)}.plan-title{font-weight:650;font-size:var(--type-body-lg)}.plan-detail{font-size:var(--type-body);color:var(--text-secondary);margin-top:2px;line-height:1.55}.plan-adjust{font-size:var(--type-body);color:var(--text-secondary);background:color-mix(in srgb, var(--status-warning) 12%, transparent);border-left:3px solid var(--status-warning);border-radius:0 12px 12px 0;margin-top:8px;padding:10px 12px;line-height:1.5}.plan-warning{font-size:var(--type-body);color:var(--text-secondary);background:color-mix(in srgb, var(--status-serious) 12%, transparent);border-left:3px solid var(--status-serious);border-radius:0 12px 12px 0;margin-top:8px;padding:10px 12px;line-height:1.5}.workout-link{color:var(--text-primary);text-decoration:none;display:block}.workout-link:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.back-link{color:var(--text-muted);font-size:var(--type-body);margin-bottom:14px;text-decoration:none;display:inline-block}.back-link:hover{color:var(--accent)}.workout-day-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 22px;display:grid}.workout-day-link{border:1px solid var(--gridline);background:var(--surface-2);border-radius:12px;flex-direction:column;min-width:0;padding:11px 13px;transition:border-color .12s,background .12s;display:flex}.workout-day-link:hover{border-color:var(--accent);background:var(--surface)}.workout-day-link.next{text-align:right}.workout-day-link span{color:var(--text-muted);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-spacing);text-transform:uppercase}.workout-day-link strong{font-size:var(--type-body);overflow-wrap:anywhere;margin-top:2px;line-height:1.35}.workout-day-link small{color:var(--text-muted);font-size:var(--type-eyebrow)}.workout-topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.workout-topbar .back-link{margin:0}.workout-icon-btn{border:1px solid var(--gridline);background:var(--surface-2);width:38px;height:38px;color:var(--text-secondary);font-size:var(--type-heading);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;line-height:1;transition:border-color .12s,color .12s;display:inline-flex}.workout-icon-btn:hover{border-color:var(--accent);color:var(--accent)}.workout-actions-btn{border:1px solid var(--gridline);background:var(--surface-2);height:38px;color:var(--text-primary);font-size:var(--type-body);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 16px;font-weight:600;transition:border-color .12s,color .12s;display:inline-flex}.workout-actions-btn:hover{border-color:var(--accent);color:var(--accent)}.workout-daynav{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:0 0 16px;display:grid}.workout-daynav-date{text-align:center;color:var(--text-secondary);font-size:var(--type-small)}.workout-daynav-arrow{min-width:0;color:var(--text-muted);flex-direction:column;gap:2px;text-decoration:none;transition:color .12s;display:flex}.workout-daynav-arrow:hover{color:var(--accent)}.workout-daynav-arrow.next{text-align:right;align-items:flex-end}.workout-daynav-arrow .glyph{font-size:var(--type-body);overflow-wrap:anywhere;line-height:1.3}.workout-daynav-arrow small{font-size:var(--type-eyebrow);color:var(--text-muted)}.workout-daynav-arrow.is-empty{visibility:hidden}.workout-action-sheet-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.workout-action-list{flex-direction:column;gap:8px;display:flex}.workout-action-item{border:1px solid var(--gridline);background:var(--surface-2);width:100%;color:var(--text-primary);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;transition:border-color .12s,background .12s;display:flex}.workout-action-item:hover{border-color:var(--accent);background:var(--surface)}.workout-action-item strong{font-size:var(--type-body-lg)}.workout-action-item span{color:var(--text-muted);font-size:var(--type-small)}.wizard-alt{border:1px solid var(--gridline);background:var(--surface-2);border-radius:16px;margin-bottom:11px;padding:13px 13px 12px}.wizard-alt-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.wizard-alt-top strong{font-size:var(--type-body-lg)}.wizard-alt-meta{font-family:var(--font-grotesk), system-ui, sans-serif;font-size:var(--type-small);color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.wizard-why{color:var(--accent);font-size:var(--type-small);margin:9px 0 0;line-height:1.5}.wizard-cost{color:var(--text-muted);font-size:var(--type-small);margin:4px 0 0;line-height:1.5}.wizard-swap{width:100%;margin-top:11px}.wizard-manual{gap:8px;margin:0 0 12px;display:flex}.wizard-manual .sheet-btn{min-height:44px}.wizard-alt .workout-profile svg{min-height:0}.workout-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.workout-prescription{grid-column:span 2}.workout-head{margin:6px 0 16px}.workout-head .page-title{margin:6px 0 2px}.workout-page-head{justify-content:space-between;align-items:center;gap:12px;margin:6px 0 16px;display:flex}.workout-page-head-text{min-width:0}.workout-page-head .page-title{margin:6px 0 2px}.workout-head .page-subtitle{text-transform:capitalize;margin:0}.what-to-run{border-left:3px solid var(--accent)}.workout-detail-grid>.analysis-section,.workout-detail-grid>.coach-card,.workout-detail-grid>.workout-adjust-section,.workout-detail-grid>.workout-day-navigation,.workout-detail-grid>.workout-garmin-status{grid-column:1/-1}.workout-detail-grid>.workout-garmin-status{margin:2px 2px 0}.workout-brief-text{color:var(--text-secondary);line-height:1.6;font-size:var(--type-body);margin:0 0 8px}.workout-brief-text:last-child{margin-bottom:0}.section-badge-text{color:var(--text-secondary);font-size:var(--type-small);font-weight:500}.workout-prescription-text{color:var(--text-secondary);line-height:1.65;font-size:var(--type-title);margin:10px 0 0}.workout-meta{color:var(--text-primary);flex-direction:column;gap:3px;margin:18px 0 0;font-weight:650;display:flex}.workout-meta small{font-size:var(--type-small);color:var(--text-muted);letter-spacing:normal;text-transform:none;font-weight:500}.workout-meta span,.weather-summary span{color:var(--text-muted);font-size:var(--type-eyebrow);font-weight:var(--type-eyebrow-weight);text-transform:uppercase;letter-spacing:var(--type-eyebrow-spacing)}.weather-summary{flex-direction:column;gap:8px;display:flex}.weather-summary strong{font-size:var(--text-3xl);line-height:1}.sync-state{color:var(--text-secondary);line-height:1.55}.sync-state.good{color:var(--status-good)}.plan-sync-button{font-size:var(--type-small)}.garmin-pace-setting{color:var(--text-secondary);font-size:var(--type-body);cursor:pointer;align-items:flex-start;gap:10px;margin-top:18px;display:flex}.garmin-pace-setting input{accent-color:var(--accent);margin:3px 0 0}.garmin-pace-setting strong,.garmin-pace-setting small{display:block}.garmin-pace-setting strong{color:var(--text-primary);font-weight:600}.garmin-pace-setting small{color:var(--text-muted);margin-top:3px}@media (max-width:680px){.workout-detail-grid{grid-template-columns:1fr}.workout-prescription{grid-column:span 1}}
