:root{font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f8fafc;--surface:#fff;--foreground:#002a36;--muted:#3c5c65;--line:#dce5e8;--soft:#edf3f5;--green:#047857;--on-green:#fff;--green-soft:#e2f4ed;--yellow:#d97706;--red:#ef476f;--amber-bg:#fff0c9;--amber-text:#674400;--red-bg:#fce7ed;--red-text:#9b2344;--blue:#0369a1;--radius:12px;--timer-bg:#002a36;--timer-line:#002a36;--timer-button:#164b58;--timer-muted:#c9d8dd;background:var(--background);color:var(--foreground);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#00151c;--surface:#002a36;--foreground:#f5fafc;--muted:#acbdc6;--line:#244550;--soft:#103945;--green:#06d6a0;--on-green:#002a36;--green-soft:#083e3b;--yellow:#ffd166;--amber-bg:#423619;--amber-text:#ffd166;--red-bg:#482333;--red-text:#ffb4c8;--blue:#5bc5fa;--timer-bg:#104956;--timer-line:#34616d;--timer-button:#0b3a45}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,.button{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--foreground);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-weight:650;text-decoration:none;display:inline-flex}button:hover{background:var(--soft)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.primary,.button{background:var(--green);color:var(--on-green);border-color:var(--green)}.primary:hover{filter:brightness(.92);background:var(--green)}svg{flex-shrink:0;width:22px;height:22px}a{color:var(--blue)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}header{justify-content:space-between;align-items:center;max-width:940px;margin:auto;padding:16px 30px;display:flex}header a{color:var(--foreground);letter-spacing:-.025em;align-items:center;gap:10px;font-size:1.25rem;font-weight:750;text-decoration:none;display:flex}.brand-mark{background:var(--green);color:var(--on-green);border-radius:10px;padding:7px;display:inline-flex}.brand-mark svg{width:20px;height:20px}.header-actions,.local{align-items:center;gap:12px;display:flex}.local{color:var(--muted);gap:5px;font-size:.75rem}.local svg{width:14px;height:14px}.theme-button{border-radius:50%;min-width:44px;min-height:44px;padding:0}.theme-button svg{width:20px;height:20px}main{max-width:800px;margin:auto;padding:20px 24px 120px}h1{letter-spacing:-.035em;text-wrap:balance;margin:0 0 10px;font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.13}h2{letter-spacing:-.02em;margin:0 0 10px;font-size:1.2rem;line-height:1.3}h3{font-size:1rem}p{margin:8px 0 16px}small,.hint,.day{color:var(--muted);font-size:.82rem}.hint{line-height:1.5}.page-title{margin-bottom:24px}.page-title p{color:var(--muted);margin-top:4px;font-size:1rem}main>section:not(.exercise):not(.timer):not(.readiness):not(.intro):not(.session-complete),.consistency{margin:32px 0}main>section:not(.finish):not(.session-complete):has(>h2:first-child){border-top:1px solid var(--line);padding-top:24px}main>section>button{margin:8px 8px 0 0}.message{background:var(--soft);border-radius:10px;align-items:center;gap:8px;margin:0 0 14px;padding:2px 2px 2px 14px;font-size:.85rem;line-height:1.4;display:flex}.dismiss{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;flex-shrink:0;margin-left:auto;padding:0}.dismiss svg{width:18px;height:18px}.saving{z-index:7;border:1px solid var(--line);background:var(--surface);color:var(--muted);pointer-events:none;border-radius:999px;margin:0;padding:3px 10px;font-size:.75rem;position:fixed;top:10px;right:10px}.notice{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:14px;margin:20px 0;padding:18px;display:flex}.notice h2{font-size:1.05rem}.notice p{margin:4px 0;font-size:.9rem}.notice>div{flex:1;min-width:150px}.notice>h2,.notice>h3,.notice>p{width:100%}.notice[role=alert]{flex-wrap:nowrap;margin:0 0 14px;padding:4px 4px 4px 16px;font-size:.9rem}.notice.amber{background:var(--amber-bg);color:var(--amber-text);border-color:#0000}.notice.red,.stop{background:var(--red-bg);color:var(--red-text);border-color:#0000}.readiness{background:var(--surface)}.readiness.green{background:var(--green-soft)}.readiness>svg{color:var(--green)}.readiness.amber>svg,.readiness.red>svg{color:inherit}.readiness h2{margin-bottom:2px}.readiness button{font-size:.83rem}.intro{max-width:580px;padding:30px 0}.intro>svg{width:48px;height:48px;color:var(--green);margin-bottom:20px}.intro h2{font-size:1.7rem}.intro .primary{width:100%;margin-top:12px}.toggle{align-items:center;gap:12px;min-height:48px;margin:8px 0;font-size:.9rem;display:flex}.toggle input{width:23px;height:23px;accent-color:var(--green);flex-shrink:0}label:not(.toggle){margin:18px 0;font-size:.9rem;display:block}label:not(.toggle)>input,label>select{width:100%;margin-top:7px;display:block}input,select{border:1px solid var(--line);background:var(--surface);color:var(--foreground);border-radius:8px;max-width:100%;min-height:48px;padding:10px}input[type=file]{font-size:.85rem}details{border-bottom:1px solid var(--line);padding:10px 0}summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-weight:650;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary:after{content:"";opacity:.65;border-bottom:2px solid;border-right:2px solid;flex-shrink:0;width:7px;height:7px;margin:0 6px 3px auto;transform:rotate(45deg)}details[open]>summary:after{margin-bottom:-3px;transform:rotate(-135deg)}details[open]>summary{margin-bottom:6px}.day-tabs{grid-template-columns:repeat(7,1fr);gap:5px;margin:16px 0 18px;display:grid}.day-tabs button{background:0 0;border-color:#0000;flex-direction:column;gap:7px;min-width:0;padding:10px 2px;font-size:.8rem;display:flex}.day-tabs button[aria-pressed=true]{background:var(--foreground);color:var(--background)}.day-dot{border:1px solid;border-radius:50%;width:5px;height:5px}.day-tabs button[aria-pressed=true] .day-dot{background:currentColor}.session-list section{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;padding:20px 4px;display:flex}.session-list .session-summary{flex:1;min-width:160px}.session-list h2{margin-top:4px;font-size:1.25rem}.session-list p{color:var(--muted);margin:3px 0;font-size:.86rem}.session-list section.featured-session{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin-bottom:12px;padding:24px;display:block}.featured-session h2{margin:6px 0;font-size:2rem}.start-session{justify-content:space-between;width:100%;min-height:56px;margin-top:18px;font-size:1.1rem}.featured-session>button:not(.primary){margin-top:10px}.session-list section{position:relative}.session-list section>button{z-index:1;position:relative}.card-link{min-height:0;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;padding:0;display:inline}.card-link:hover{text-underline-offset:4px;background:0 0;text-decoration:underline;text-decoration-thickness:2px}.card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.preview-hint{color:var(--muted);align-items:center;gap:2px;margin-top:6px;font-size:.8rem;font-weight:600;display:inline-flex}.preview-hint svg{width:16px;height:16px}.session-list section.catch-up{border:1px solid var(--yellow);background:var(--surface);border-radius:16px;margin-bottom:12px;padding:18px 20px}.catch-up .day{color:var(--amber-text);font-weight:700}.session-list section.post-ride{border-radius:var(--radius);background:var(--soft);border:0;margin-bottom:12px;padding:12px 12px 12px 16px}.post-ride h2{margin:2px 0 0;font-size:1.05rem}.post-ride p{margin:2px 0 0}.rest-day h2{font-size:1.6rem}.picker-heading{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:22px 0 0;font-size:.8rem;font-weight:700}.week-roll .actions{width:100%}.week-roll .actions button{flex:1}.back-choices{gap:10px;display:grid}.back-choices button{gap:12px}.back-choices button:before{content:"";background:var(--green);border-radius:50%;flex-shrink:0;width:12px;height:12px}.back-choices .back-off:before{background:var(--yellow)}.back-choices .back-bad:before{background:var(--red)}.back-today .back-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.back-today .back-choices button{gap:8px;min-height:56px;padding:8px 6px;font-size:.95rem}.back-today .back-good{background:var(--green);color:var(--on-green);border-color:var(--green)}.back-today .back-good:before{background:var(--on-green)}.back-today .back-good:hover{background:var(--green);filter:brightness(.92)}.flag-row{justify-content:flex-end;margin:-8px 0 8px;display:flex}.red-flag{border-color:var(--red);min-height:44px;color:var(--red-text);background:0 0;border-radius:999px;padding:6px 14px;font-size:.85rem}.red-flag:hover{background:var(--red-bg)}.workout-bar{z-index:4;background:var(--timer-bg);color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 16px;font-size:.85rem;font-weight:500;display:flex;position:sticky;top:0}.workout-bar:hover{background:var(--timer-bg);filter:brightness(1.12)}.workout-bar strong{text-overflow:ellipsis;min-width:0;font-weight:750;overflow:hidden}.workout-bar>span:not(.live-dot){color:var(--timer-muted)}.workout-bar .bar-timer{color:#ffd166;font-weight:750}.workout-bar .bar-resume{color:#06d6a0;align-items:center;gap:4px;margin-left:auto;font-weight:750;display:inline-flex}.workout-bar .bar-resume svg{width:18px;height:18px}.live-dot{background:#06d6a0;border-radius:50%;flex-shrink:0;width:8px;height:8px}.consistency{border-top:1px solid var(--line);padding:24px 0}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.section-heading>span{color:var(--muted);font-size:.8rem}.session-options{margin-bottom:18px}nav{background:var(--surface);border-top:1px solid var(--line);padding:6px 6px calc(7px + env(safe-area-inset-bottom));z-index:5;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{width:20%;min-width:0;max-width:140px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex-direction:column;gap:4px;padding:8px 3px;font-size:.72rem;font-weight:500;display:flex}nav button[aria-current]{color:var(--green);background:var(--green-soft);font-weight:750}nav.in-workout{padding:3px 6px calc(3px + env(safe-area-inset-bottom))}nav.in-workout button{gap:1px;min-height:44px;padding:4px 3px;font-size:.66rem}nav.in-workout svg{width:18px;height:18px}.session-top{align-items:center;gap:8px;display:flex}.session-id{flex:1;min-width:0}.session-top h1{letter-spacing:-.02em;margin:0;font-size:1.35rem}.session-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:2px 10px;margin:2px 0 0;font-size:.82rem;display:flex}.ready-chip{background:var(--green-soft);color:var(--green);border-radius:999px;align-items:center;gap:5px;padding:0 8px 0 7px;font-size:.75rem;font-weight:700;line-height:1.6;display:inline-flex}.ready-chip:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.ready-chip.amber{background:var(--amber-bg);color:var(--amber-text)}.ready-chip.red,.ready-chip.tripwire{background:var(--red-bg);color:var(--red-text)}.finish-button{min-height:44px;padding:8px 16px}.cancel-button{min-height:44px;color:var(--muted);background:0 0;border-color:#0000;padding:8px 12px;font-size:.85rem}.cancel-confirm .actions{width:100%}.cancel-confirm .actions button{flex:140px}.destructive{background:var(--red-text);color:var(--red-bg);border-color:var(--red-text)}.destructive:hover{background:var(--red-text);filter:brightness(.92)}.ready-note{background:var(--amber-bg);color:var(--amber-text);border-radius:8px;margin:10px 0 0;padding:8px 12px;font-size:.85rem}.ready-note.red{background:var(--red-bg);color:var(--red-text)}.pair-progress{gap:3px;margin:14px 0 16px;padding:0;list-style:none;display:flex}.pair-progress li{min-width:0;height:26px;color:var(--muted);background:linear-gradient(90deg, var(--green-soft) var(--fill,0%), var(--soft) 0);font-variant-numeric:tabular-nums;border-radius:6px;flex:1 1 0;place-items:center;font-size:.7rem;font-weight:700;display:grid}.pair-progress li.group-start{margin-left:5px}.pair-progress li.done{background:var(--green-soft);color:var(--green)}.pair-progress li.current{color:var(--foreground);box-shadow:inset 0 0 0 2px var(--foreground)}.exercise{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:20px 0 28px;scroll-margin-top:24px;overflow:hidden}.focused-exercise{margin:0}.exercise-title{align-items:flex-start;gap:12px;padding:20px 14px;display:flex}.exercise-title>div{flex:1;min-width:0}.exercise-title h2{font-size:1.05rem}.exercise-title p{color:var(--muted);margin:4px 0;font-size:.78rem}.focused-exercise .exercise-title{padding:18px 18px 4px}.focused-exercise .exercise-title h2{margin:2px 0 4px;font-size:1.5rem;line-height:1.2}.focused-exercise .exercise-title .set-position{margin:0;font-size:.9rem}.effort{background:var(--soft);border-radius:999px;margin-top:8px;padding:3px 10px;font-size:.8rem;font-weight:600;display:inline-block}.pair{background:var(--soft);min-width:38px;min-height:38px;color:var(--foreground);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:5px 8px;font-size:.8rem;font-weight:750;display:inline-flex}.quiet{background:0 0;border:0;min-height:44px;padding:4px 8px;font-size:.83rem}.current-set{padding:4px 18px 18px}.current-inputs{gap:12px;margin-top:12px;display:grid}.stepper-label{align-items:baseline;gap:8px;margin-bottom:6px;font-size:.85rem;font-weight:650;display:flex}.stepper-label span{color:var(--muted);font-size:.78rem;font-weight:400}.stepper-row{grid-template-columns:64px minmax(0,1fr) 64px;gap:8px;display:grid}.stepper-row button{min-height:64px;padding:0;font-size:1.6rem;font-weight:500}.stepper-row input{text-align:center;letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:var(--soft);border-color:#0000;width:100%;min-height:64px;padding:4px;font-size:2.2rem;font-weight:700}.stepper-row input:focus{border-color:var(--green)}.hold-target{border-radius:var(--radius);background:var(--soft);justify-items:center;margin:12px 0 0;padding:12px;display:grid}.hold-target span{color:var(--muted);font-size:.85rem;font-weight:600}.hold-target strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:4.5rem;line-height:1.05}.previous{color:var(--muted);font-size:.8rem}.current-set .previous{margin:14px 0 12px;font-size:.85rem}.complete-set{width:100%;min-height:60px;font-size:1.15rem}.up-next{color:var(--muted);margin:10px 0 0;font-size:.85rem}.next-up{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;margin:12px 0 0;padding:12px 14px;display:flex}.next-up>div{gap:1px;min-width:0;display:grid}.next-up strong{font-size:1rem;line-height:1.3}.next-kicker{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.next-target{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.next-up.last{gap:2px;display:grid}.exercise-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 18px 16px;display:grid}.exercise-actions button{background:0 0;border-radius:999px;min-height:44px;padding:6px 10px;font-size:.85rem;font-weight:600}.exercise .exercise-actions{padding-top:4px}.exercise-details{border-top:1px solid var(--line);border-bottom:0;padding:2px 18px}.exercise-details>summary{color:var(--muted);font-size:.85rem}.exercise-details>button{margin:0 8px 12px 0}.session-complete{border-radius:var(--radius);background:var(--green-soft);padding:24px 20px}.session-complete p{margin-bottom:0}.session-tools{border-top:1px solid var(--line);margin:20px 0 8px}.session-tools .warmup{color:var(--foreground);padding:4px 0}.session-tools .warmup p{color:var(--muted);margin-top:0}.tool-row{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;justify-content:space-between;width:100%;min-height:52px;padding:0}.tool-row span{color:var(--muted);font-size:.8rem;font-weight:600}.tool-row[aria-pressed=true],.tool-row[aria-pressed=true] span{color:var(--green)}.session-tools .hint{margin:10px 0 0}.set-head,.set-row{text-align:center;grid-template-columns:30px minmax(60px,1.1fr) minmax(45px,.8fr) minmax(45px,.8fr) 58px;align-items:center;gap:8px;padding:8px 12px;display:grid}.set-head{color:var(--muted);background:var(--soft);font-size:.74rem}.set-row{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.set-row input{text-align:center;background:var(--soft);border-color:#0000;width:100%;padding:9px 3px}.set-row input:focus{border-color:var(--green)}.set-row button{min-width:0;padding:8px 3px}.set-row.done{background:var(--green-soft)}.set-row.done button{background:var(--green);color:var(--on-green);opacity:1}.set-table+.exercise-actions{padding-top:12px}.timer{background:var(--timer-bg);color:#fff;border:1px solid var(--timer-line);text-align:center;border-radius:16px;padding:16px 18px}.timer>span{display:block}.timer strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:4rem;line-height:1.05;display:block}.timer button{background:var(--timer-button);color:#fff;border-color:#63818b}.timer button:hover{background:#1d5b6a}.timer .quiet{color:var(--timer-muted);background:0 0}.timer-label{font-size:1rem;font-weight:700}.timer.waiting .timer-label{color:#ffd166}.timer-sub{color:var(--timer-muted);margin-top:2px;font-size:.85rem}.timer.hold:not(.dock){margin:12px 18px 18px;padding:18px 16px 12px}.timer.hold:not(.dock) strong{margin:2px 0;font-size:6rem}.timer.hold .actions{gap:4px;margin-top:14px;display:grid}.timer .stop-hold{color:#002a36;background:#06d6a0;border-color:#06d6a0;min-height:60px;font-size:1.15rem}.timer .stop-hold:hover{filter:brightness(.94);background:#06d6a0}.dock{z-index:6;bottom:calc(51px + env(safe-area-inset-bottom));text-align:left;border-bottom:0;border-radius:18px 18px 0 0;width:min(100%,800px);padding:12px 16px 14px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #00151c40}.timer.rest{border-top:2px solid #ffd166}.dock-next{color:var(--timer-muted);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:.85rem;overflow:hidden}.dock-next span{color:#ffd166;text-transform:uppercase;letter-spacing:.06em;margin-right:8px;font-size:.75rem;font-weight:750}.dock-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.dock strong{font-size:3rem}.dock-row .actions{flex-wrap:nowrap;gap:6px;margin:0}.dock-row button{min-width:54px;padding:8px 10px}.timer.hold.dock{text-align:left}.timer.hold.dock .actions{grid-template-columns:2fr 1fr}.timer.hold.dock .stop-hold{min-height:52px}main.has-dock{padding-bottom:250px}.actions{flex-wrap:wrap;gap:8px;display:flex}.cues{background:var(--soft);border-radius:10px;margin-bottom:12px;padding:16px}.cues a{margin-top:12px;font-size:.85rem;display:block}.cues .video-credit{color:var(--muted);margin:8px 0 0;font-size:.8rem}.cues .video-note{color:var(--amber-text);margin:4px 0 0;font-size:.85rem}iframe{aspect-ratio:16/9;border:0;width:100%;margin-top:12px}.swap-panel,.finish{background:var(--soft);padding:20px}.finish{border-radius:var(--radius)}.finish .actions button{flex:1}.swap-panel>div{border-bottom:1px solid var(--line);padding:15px 0}.recommendation{border-top:1px solid var(--line);margin:26px 0;padding:24px 0}.recommendation button{margin:5px 5px 5px 0}.library-row{border-bottom:1px solid var(--line);padding:18px 0}.library-row p{color:var(--muted);font-size:.85rem}.checkin{padding-top:4px}.checkin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.checkin-head h1{margin:0;font-size:1.6rem}.steps{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:4px;margin:0;font-size:.8rem;display:flex}.step{background:var(--line);border-radius:2px;width:18px;height:4px}.step.on{background:var(--green)}.step-count{margin-left:6px}.checkin h2{margin:24px 0 18px;font-size:1.45rem}.choices{gap:12px;display:grid}.choices button{justify-content:flex-start;min-height:64px;font-size:1.2rem}.safety{border:1px solid var(--red);border-radius:10px;margin:28px 0 16px;padding:2px 12px 4px}.safety legend{color:var(--red-text);letter-spacing:.02em;padding:0 6px;font-size:.78rem;font-weight:700}.safety .toggle{min-height:44px;margin:0;font-size:.84rem;line-height:1.35}.safety .toggle+.toggle{border-top:1px solid var(--line)}.safety input{accent-color:var(--red);width:20px;height:20px}.back-button{margin-top:4px}.notice.amber,.readiness.amber{border:1px solid var(--yellow)}.notice.red,.stop{border:1px solid var(--red)}.finish label{font-size:.85rem}.finish input{max-width:100px}.stop .button{background:var(--red-text);color:var(--red-bg);border:0}.stop button{margin:12px 0}.back-link{min-height:44px;color:var(--blue);background:0 0;border:0;margin:0 0 8px -4px;padding:0 10px 0 4px;font-size:.9rem}.back-link:before{content:"";border-bottom:2px solid;border-left:2px solid;width:7px;height:7px;margin-right:2px;transform:rotate(45deg)}.back-link:hover{background:0 0;text-decoration:underline}.preview-kicker{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:700}.preview-ready{display:block}.preview-ready ul{margin:6px 0 0;padding-left:18px;font-size:.9rem}.preview-ready li+li{margin-top:4px}.preview-group{margin:24px 0 0}.preview-group>h2,.preview-group>h3{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 2px;font-size:.8rem;font-weight:700}.preview-exercise summary{gap:12px;font-weight:500}.preview-name{flex:1;gap:1px;min-width:0;display:grid}.preview-name strong{font-size:.95rem;font-weight:650}.preview-name span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.preview .start-session{margin-top:28px}.segmented{flex-wrap:wrap;gap:5px;margin:12px 0;display:flex}.segmented button{flex:1;font-size:.85rem}.segmented button[aria-pressed=true]{background:var(--foreground);color:var(--background);border-color:var(--foreground)}.plan-day{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:16px 0;display:flex}.plan-day>strong{width:38px;color:var(--muted);font-size:.85rem}.plan-day>div{flex:1;min-width:0}.plan-day p{color:var(--muted);margin:4px 0;font-size:.85rem}.plan-preview{min-height:44px;color:inherit;text-align:left;background:0 0;border:0;justify-content:flex-start;gap:2px;padding:0;font-weight:700}.plan-preview:hover{text-underline-offset:4px;background:0 0;text-decoration:underline}.plan-preview svg{width:18px;height:18px;color:var(--muted)}.volume-note{background:var(--soft);border-radius:10px;padding:12px 14px;font-size:.88rem}.half-note{display:block}.half-note h2{margin:0 0 4px;font-size:1rem}.half-note p{color:var(--muted);margin:0 0 8px;font-size:.88rem}.half-note ul{margin:0;padding-left:18px;font-size:.9rem}.half-note li+li{margin-top:2px}.cardio-table td:last-child{white-space:normal;min-width:180px}.cardio-table tr.hard td{background:var(--amber-bg);color:var(--amber-text)}.hard-badge{background:var(--amber-text);color:var(--amber-bg);letter-spacing:.04em;text-transform:uppercase;vertical-align:1px;border-radius:999px;margin:0 8px 0 0;padding:0 8px;font-size:.7rem;font-weight:750;line-height:1.7;display:inline-block}.cardio-table .rest{color:var(--muted)}.hard-days{border:0;margin:18px 0 6px;padding:0}.hard-days legend{padding:0;font-size:.9rem;font-weight:650}.hard-days .day-tabs{margin:10px 0 8px}.hard-days .day-tabs button{border-color:var(--line)}.volume-review{border-bottom:1px solid var(--line);padding:20px 0}.volume-review p{font-size:.85rem}.empty{color:var(--muted);padding:20px 0}.chart{width:100%}.chart>svg{width:100%;height:auto;min-height:130px;display:block;overflow:visible}.chart text{fill:var(--muted);font-size:13px}.axis{stroke:var(--line)}.gridline{stroke:var(--line);stroke-dasharray:3 4}.chart-line{stroke:var(--green);stroke-width:3px}.chart-point{fill:var(--green)}.chart-data{padding:8px 0;font-size:.8rem}.chart-data summary{color:var(--muted)}.table-scroll{max-width:100%;overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}th,td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:12px}.ladder-track{gap:8px;margin:20px 0;display:flex}.ladder-track span{background:var(--soft);text-align:center;border-radius:8px;flex:1;padding:12px 0;font-size:.8rem}.ladder-track .current{background:var(--green);color:var(--on-green);font-weight:750}.timeline{padding-left:20px}.timeline time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.85rem}.calendar{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.calendar-day{border:1px solid var(--line);background:var(--soft);border-radius:8px;padding:0}.calendar-day summary{text-align:center;min-height:44px;padding:8px 0;font-size:.8rem;display:block}.calendar-day summary:after{display:none}.calendar-day[open]>summary{margin:0}.calendar-day p{overflow-wrap:anywhere;padding:8px;font-size:.75rem}.calendar-day.green{background:var(--green-soft);color:var(--green)}.calendar-day.amber{background:var(--amber-bg);color:var(--amber-text);border-color:var(--yellow)}.calendar-day.red,.calendar-day.tripwire{background:var(--red-bg);color:var(--red-text);border-color:var(--red)}.calendar-day.missing{color:var(--muted)}.calendar-day summary span{margin-left:3px}.volume-list>div{margin:18px 0}meter{width:100%;height:12px;accent-color:var(--green);margin-top:8px}meter::-webkit-meter-bar{background:var(--soft);border:0}meter::-webkit-meter-optimum-value{background:var(--green)}.wanted-list{padding:0;list-style:none}.wanted-list li{border-bottom:1px solid var(--line);padding:16px 0}.wanted-list span{color:var(--muted);margin-top:4px;font-size:.85rem;display:block}@media (min-width:560px){.exercise-actions.four{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:380px){.dock strong{font-size:2.6rem}.dock-row button{min-width:50px;padding:8px}}@media (max-width:480px){header{padding:12px 16px}header a{font-size:1.15rem}.header-actions{gap:8px}.local{max-width:65px;font-size:.65rem}main{padding:12px 16px 110px}.readiness{gap:10px;padding:14px}.readiness>svg{display:none}.readiness>div{min-width:160px}.readiness p{font-size:.8rem}.readiness button{padding:10px}.session-list section.featured-session{padding:20px}.set-head,.set-row{grid-template-columns:26px minmax(52px,1fr) minmax(40px,.75fr) minmax(40px,.75fr) 52px;gap:5px;padding:8px}.exercise-title{gap:8px;padding:16px 10px}.focused-exercise .exercise-title{padding:16px 14px 4px}.current-set{padding:4px 14px 16px}.exercise-actions{padding:0 14px 14px}.exercise-details{padding:2px 14px}.timer.hold:not(.dock){margin:12px 14px 16px}.pair{min-width:32px;min-height:34px;padding:4px 6px}.section-heading>span{font-size:.75rem}.workout-bar{gap:8px;padding:0 12px;font-size:.8rem}.back-today .back-choices button{flex-direction:column;gap:4px;font-size:.88rem}}@media (prefers-reduced-motion:no-preference){.set-row.done button{animation:.16s ease-out logged}.dock{animation:.18s ease-out dock-in}.live-dot{animation:2s ease-in-out infinite live}@keyframes live{50%{opacity:.35}}@keyframes logged{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes dock-in{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
