:root{color-scheme:light dark;--bg: #f3f3f3;--surface: rgba(255, 255, 255, .94);--surface-strong: #ffffff;--surface-elevated: #ffffff;--text: #1c1c1e;--muted: #6e7582;--muted-soft: #8e8e93;--border: rgba(60, 60, 67, .13);--card-border: var(--border);--divider: rgba(60, 60, 67, .1);--bg-gradient: linear-gradient(180deg, #f8f8f8 0%, #f2f2f2 46%, #e9e9e9 100%);--accent: #0a84ff;--accent-strong: #0057b8;--action-primary: #176cae;--accent-soft: rgba(10, 132, 255, .1);--warmup-surface: linear-gradient(to right, rgba(118, 118, 128, .17) 0%, rgba(118, 118, 128, .08) 100%);--work-set-surface: var(--accent);--work-set-ink: var(--button-ink);--work-set-muted: rgba(255, 255, 255, .72);--green: #34c759;--yellow: #ffcc00;--red: #ff3b30;--status-blue: #007aff;--status-orange: #ff9500;--status-purple: #af52de;--status-gray: #8e8e93;--input: rgba(118, 118, 128, .12);--control-selected: var(--surface-strong);--button-ink: #ffffff;--shadow: none;--shadow-soft: none;--shadow-control: none;--shadow-floating: none;--shadow-focus: none;--shadow-focus-active: none;--mono: "Aptos Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #1c1c1e;--surface: rgba(42, 43, 50, .96);--surface-strong: #303138;--surface-elevated: #363740;--text: #f7f7f8;--muted: #c7c7cc;--muted-soft: #9a9aa3;--border: rgba(255, 255, 255, .08);--card-border: rgba(255, 255, 255, .09);--divider: rgba(255, 255, 255, .09);--bg-gradient: none;--accent: #0a84ff;--accent-strong: #64d2ff;--action-primary: #176cae;--accent-soft: rgba(10, 132, 255, .22);--warmup-surface: linear-gradient(to right, rgba(255, 255, 255, .09) 0%, rgba(255, 255, 255, .045) 100%);--work-set-surface: var(--accent);--work-set-ink: var(--button-ink);--work-set-muted: rgba(255, 255, 255, .72);--green: #30f26b;--yellow: #ffd84d;--red: #ff453a;--status-blue: #0a84ff;--status-orange: #ffb340;--status-purple: #d777ff;--status-gray: #a7a7b0;--input: rgba(118, 118, 128, .2);--control-selected: #3a3b44;--button-ink: #ffffff;--shadow: none;--shadow-soft: none;--shadow-control: none;--shadow-floating: none;--shadow-focus: none;--shadow-focus-active: none}}*{box-sizing:border-box}body{margin:0;background:var(--bg);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}.fitness-shell{width:min(100%,720px);min-height:100svh;margin:0 auto;padding:16px 16px calc(104px + env(safe-area-inset-bottom))}.site-back-link{display:inline-flex;min-height:44px;align-items:center;align-self:start;margin-bottom:4px;color:var(--muted);font-size:14px;font-weight:750;text-decoration:none}.site-back-link:hover{color:var(--text)}.site-back-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.coach-note,.completion-card,.exercise-card,.notice,.template-card,.log-card,.progress-card,.tomorrow-preview-card{border:0;border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.today-header{display:grid;gap:6px;padding:6px 2px 4px}.recovery-status-line{display:flex;align-items:center;gap:6px;margin:7px 0 0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.25}.recovery-status-dot{inline-size:7px;block-size:7px;border-radius:50%;background:var(--green)}.recovery-status-line.yellow .recovery-status-dot,.recovery-status-line.garmin-readiness-low .recovery-status-dot{background:var(--status-orange)}.recovery-status-line.red .recovery-status-dot,.recovery-status-line.garmin-readiness-poor .recovery-status-dot{background:var(--red)}.recovery-status-line.garmin-readiness-high .recovery-status-dot{background:var(--status-blue)}.recovery-status-line.garmin-readiness-prime .recovery-status-dot{background:var(--status-purple)}.readiness-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;inline-size:100%;text-align:left}.readiness-tile,.training-status-tile{border:0;border-radius:8px;display:grid;align-items:center;justify-items:start;inline-size:100%;min-block-size:44px;padding:8px 10px;text-align:left;transition:background-color .16s ease,transform .16s ease}.readiness-tile.green,.readiness-tile.garmin-readiness-moderate,.training-status-tile.productive{background:color-mix(in srgb,var(--green) 40%,var(--surface))}.readiness-tile.yellow{background:color-mix(in srgb,var(--yellow) 46%,var(--surface))}.readiness-tile.garmin-readiness-low{background:color-mix(in srgb,var(--status-orange) 40%,var(--surface))}.readiness-tile.red,.readiness-tile.garmin-readiness-poor,.training-status-tile.overreaching{background:color-mix(in srgb,var(--red) 40%,var(--surface))}.training-status-tile.maintaining,.readiness-tile.garmin-readiness-high,.training-status-tile.recovery{background:color-mix(in srgb,var(--status-blue) 40%,var(--surface))}.training-status-tile.unproductive,.training-status-tile.strained{background:color-mix(in srgb,var(--status-orange) 40%,var(--surface))}.training-status-tile.peaking,.readiness-tile.garmin-readiness-prime{background:color-mix(in srgb,var(--status-purple) 40%,var(--surface))}.training-status-tile.detraining,.readiness-tile.unknown,.training-status-tile.unknown{background:color-mix(in srgb,var(--status-gray) 32%,var(--surface))}.eyebrow{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}h1,h2,p{overflow-wrap:anywhere}h1{margin:0;font-size:31px;font-weight:800;line-height:1.02}.workout-subtitle{margin:6px 0 0;color:var(--muted);font-size:15px;font-weight:650;line-height:1.25}h2{margin:0;font-size:23px;font-weight:750;line-height:1.12}.readiness-metric{color:var(--text);font-size:12px;font-weight:750;line-height:1.25;white-space:nowrap}.tabbar{position:fixed;left:max(16px,calc((100vw - 720px)/2 + 16px));right:max(16px,calc((100vw - 720px)/2 + 16px));bottom:calc(10px + env(safe-area-inset-bottom));z-index:10;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;max-width:688px;margin:0 auto;padding:4px;border:0;border-radius:10px;background:color-mix(in srgb,var(--surface-strong) 86%,transparent);box-shadow:var(--shadow-floating);backdrop-filter:blur(18px)}.tabbar button{min-height:44px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:14px;font-weight:750;transition:background-color .16s ease,color .16s ease,transform .14s ease,box-shadow .16s ease}.tabbar button:active,.start-workout-action:active,.workout-set-overview-action:active,.set-check:active{transform:scale(.97)}.tabbar button.active{background:var(--control-selected);color:var(--text);box-shadow:var(--shadow-control)}.coach-note,.completion-card,.notice{margin-top:10px;padding:18px}.completed-day-overview{display:grid;gap:12px;margin-top:12px}.completed-day-overview .completion-card,.tomorrow-preview-card{margin-top:0;box-shadow:none}.completion-receipt{overflow:hidden;border:0;padding:28px 20px 24px;background:var(--surface);text-align:center}.completion-mark{display:grid;place-items:center;inline-size:56px;block-size:56px;border-radius:50%;margin:0 auto 18px;background:var(--accent);color:var(--button-ink);font-size:30px;font-weight:900;line-height:1;animation:completion-mark-in .5s cubic-bezier(.2,.9,.2,1.2) both}.completion-receipt h2{margin-top:6px;font-size:28px;font-weight:850;line-height:1.08;letter-spacing:-.025em}.completion-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px;padding-top:20px;border-top:1px solid var(--divider)}.completion-metrics span{display:grid;gap:3px;min-width:0}.completion-metrics strong{color:var(--text);font-family:var(--mono);font-size:22px;font-weight:850;line-height:1.1}.completion-metrics small{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.next-workout-card{border:0;padding:0;overflow:hidden}.next-workout-card .exercise-list{border:0;box-shadow:none}.next-workout-card>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:82px;padding:16px;cursor:pointer;list-style:none}.next-workout-card>summary::-webkit-details-marker{display:none}.next-workout-card>summary>span:first-child{display:grid;gap:5px;min-width:0}.next-workout-card>summary strong{color:var(--text);font-size:20px;font-weight:820;line-height:1.15}.next-workout-chevron{flex:0 0 auto;color:var(--accent);font-size:30px;line-height:1;transition:transform .18s ease}.next-workout-card[open] .next-workout-chevron{transform:rotate(90deg)}.next-workout-details{padding:0 16px 16px;border-top:1px solid var(--divider)}.next-workout-meta{display:flex;flex-wrap:wrap;gap:6px 18px;padding:14px 2px;color:var(--muted);font-size:13px;font-weight:750}.tomorrow-exercise-list{margin-top:0}@keyframes completion-mark-in{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.completion-mark{animation:none}.next-workout-chevron{transition:none}}.coach-note{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:8px;padding:12px 14px;box-shadow:var(--shadow-soft)}.coach-note h2{color:var(--muted);font-size:17px;font-weight:750;line-height:1.2}.coach-note ul{margin:12px 0 0;padding-left:20px;color:var(--muted)}.start-workout-action,.finish-workout-action,.manual-log-action,.manual-log-form>button{flex:0 0 auto;min-height:44px;border:0;border-radius:7px;padding:0 14px;background:var(--accent);color:var(--button-ink);font-size:14px;font-weight:750;box-shadow:none}.finish-workout-action{position:static;width:100%;min-height:50px;margin:8px 0}.finish-workout-action:disabled,.manual-log-form>button:disabled{opacity:.5}.start-workout-action{display:block;width:100%;margin-top:10px;min-height:52px;border-radius:7px;font-size:17px}.workout-mode{margin-top:4px}.workout-mode-bar{position:static;z-index:3;display:flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:8px 10px;background:var(--surface);box-shadow:none}.workout-mode-bar h2{min-width:0;font-size:15px;line-height:1.15;text-align:center}.workout-save-error{margin:8px 2px 0;color:var(--red);font-size:12px;font-weight:750}.workout-scroll{height:min(662px,calc(100svh - 226px - env(safe-area-inset-bottom)));margin:4px -2px 0;overflow-y:auto;overscroll-behavior-y:contain;padding:0 2px 34px;scroll-padding-block:0;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch}.workout-feedback-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:8px;padding:12px 14px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:800}.workout-feedback-summary strong{color:var(--text);font-size:12px;text-align:right}.focused-exercise-card{min-height:min(620px,calc(100svh - 178px - env(safe-area-inset-bottom)));margin-block:6px;border:0;border-radius:8px;display:flex;flex-direction:column;justify-content:flex-start;gap:22px;padding:22px;background:var(--surface-elevated);box-shadow:var(--shadow-focus);scroll-snap-align:start;scroll-snap-stop:always}.focused-exercise-card.active{box-shadow:var(--shadow-focus-active)}.focused-card-top{display:grid;gap:8px}.focused-card-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.focused-card-progress{color:var(--muted)}.focused-exercise-card h2{font-size:31px;font-weight:800;line-height:1.04}.focused-card-sets{display:grid;gap:14px}.focused-exercise-card .weight-change{font-size:15px;line-height:1.35}.focused-exercise-card .warmup-stack{border-radius:8px;border-top:0;margin-top:0;padding:14px;background:var(--warmup-surface)}.focused-exercise-card .work-set-stack{border-radius:8px;border-top:0;margin-top:0;padding:16px;background:var(--work-set-surface)}.focused-exercise-card .set-line{font-size:28px}.focused-exercise-card .warmup-stack .set-line,.focused-exercise-card .work-set-stack .set-line,.focused-exercise-card .work-set-stack .set-line strong{font-size:16px}.current-set-card{min-height:min(500px,calc(100svh - 224px - env(safe-area-inset-bottom)));margin-top:8px;border:0;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--surface-elevated);box-shadow:none}.current-set-heading{display:grid;gap:5px}.current-set-heading h2{font-size:clamp(28px,8.5vw,36px);font-weight:850;line-height:1}.current-set-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.current-set-type{grid-column:1 / -1;margin:0 0 -4px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.current-set-inputs label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.weight-input-shell{position:relative;min-width:0}.current-set-inputs input{width:100%;min-width:0;height:68px;border:1px solid var(--border);border-radius:7px;padding:8px 12px;background:var(--input);color:var(--text);font-family:var(--mono);font-size:clamp(30px,9vw,42px);font-weight:850;text-align:center}.weight-input-shell input{padding-inline:12px 42px}.weight-input-unit{position:absolute;inset-inline-end:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;font-weight:850;letter-spacing:0;line-height:1;opacity:1;pointer-events:none;text-transform:lowercase;transition:opacity .12s ease}.weight-input-shell:focus-within .weight-input-unit{opacity:0}.complete-set-action{width:100%;min-height:54px;border:1px solid color-mix(in srgb,var(--action-primary) 78%,var(--border));border-radius:7px;background:var(--action-primary);color:var(--button-ink);font-size:18px;font-weight:850;box-shadow:none}.undo-set-action{width:100%;min-height:46px;border:1px solid var(--card-border);border-radius:7px;background:var(--input);color:var(--accent);font-size:14px;font-weight:850}.repeat-set-action{align-self:center;min-height:36px;border:0;background:transparent;color:var(--accent);font-size:13px;font-weight:800}.repeat-set-action:disabled{opacity:.4}.rest-timer{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:5px 10px;border-radius:6px;padding:8px 10px;background:var(--accent-soft);color:var(--accent)}.rest-timer span{font-size:12px;font-weight:850}.rest-timer strong{font-family:var(--mono);font-size:20px}.rest-timer small{grid-column:1 / -1;color:var(--muted);font-size:11px;font-weight:700;line-height:1.3}.rest-timer>div{display:flex;justify-content:flex-end;gap:5px}.rest-timer button{min-height:32px;border:0;border-radius:6px;padding:0 10px;background:var(--input);color:var(--accent);font-weight:800}.set-navigation{display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:8px;margin-top:auto}.set-navigation span{color:var(--muted);font-size:12px;font-weight:800;text-align:center}.set-navigation button{min-height:44px;border:0;border-radius:7px;background:var(--input);color:var(--accent);font-size:30px;font-weight:650;line-height:1}.set-navigation button>span{color:inherit;font-size:inherit;font-weight:inherit;line-height:1}.set-navigation button:last-child{justify-self:stretch}.set-navigation button:disabled{opacity:.35}.set-minimap{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:14px;overflow:hidden}.set-minimap-group{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0}.set-minimap-dot{inline-size:6px;block-size:6px;flex:0 1 6px;border:1px solid color-mix(in srgb,var(--muted) 52%,transparent);border-radius:50%;background:transparent}.set-minimap-dot.completed{border-color:var(--accent);background:var(--accent)}.set-minimap-dot.current{inline-size:8px;block-size:8px;flex-basis:8px;border:2px solid var(--accent);background:var(--surface-elevated)}.set-feedback-step{display:grid;gap:10px}.set-feedback-step>button{min-height:42px;border:0;border-radius:7px;background:var(--input);color:var(--accent);font-weight:800}.workout-set-overview{display:grid;gap:8px;margin-top:8px}.workout-set-overview>button{min-height:56px;border:1px solid var(--card-border);border-radius:7px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;background:var(--surface);color:var(--text);text-align:left}.workout-set-overview>button>span{display:grid;place-items:center;width:26px;height:26px;border-radius:6px;background:var(--input);color:var(--muted);font-size:12px;font-weight:850}.workout-set-overview>button>strong{font-size:14px}.workout-set-overview>button>small{color:var(--muted);font-size:12px;font-weight:800}.workout-set-overview .exit-workout-action{display:block;color:var(--accent);text-align:center;font-weight:800}.workout-set-overview .discard-workout-action{display:block;border-color:color-mix(in srgb,var(--red) 25%,transparent);color:var(--red);text-align:center;font-weight:800}.workout-set-overview-action{width:100%;min-height:56px;margin:8px 0;border:1px solid var(--card-border);border-radius:7px;padding:10px 12px;background:var(--surface);color:var(--accent);font-size:14px;font-weight:800;text-align:center}.editable-set-line{display:grid;grid-template-columns:minmax(70px,1fr) 72px 82px 38px;align-items:end;gap:8px;border-top:1px solid color-mix(in srgb,var(--work-set-ink) 15%,transparent);padding-top:9px}.editable-set-line:first-of-type{border-top:0}.editable-set-line>span{align-self:center;color:var(--work-set-ink);font-size:13px;font-weight:800}.editable-set-line label{display:grid;gap:3px;color:var(--work-set-muted);font-size:10px;font-weight:800;text-transform:uppercase}.editable-set-line input,.manual-log-form input,.manual-log-form select{min-width:0;width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;padding:6px 8px;background:var(--input);color:var(--text);font:inherit;font-size:15px;font-weight:750}.editable-set-line.complete{opacity:.72}.editable-set-line.compact>span{color:var(--text)}.exercise-feedback-panel{display:grid;gap:10px;border-radius:7px;padding:14px;background:color-mix(in srgb,var(--accent) 10%,transparent)}.exercise-feedback-panel>span,.exercise-feedback-saved span{color:var(--text);font-size:13px;font-weight:800}.exercise-feedback-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.exercise-feedback-options button,.exercise-feedback-saved button{min-height:40px;border:1px solid var(--card-border);border-radius:6px;padding:0 12px;background:var(--button-surface);color:var(--button-ink);font:inherit;font-size:13px;font-weight:800}.exercise-feedback-options button:disabled,.exercise-feedback-saved button:disabled{opacity:.55}.exercise-feedback-saved{display:flex;align-items:center;justify-content:space-between;gap:12px}.exercise-feedback-panel small{color:var(--red);font-size:12px}.workout-mode-shell{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.completion-card dl{display:grid;gap:10px;margin:14px 0 0}.completion-card dt{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.completion-card dd{margin:4px 0 0;font-family:var(--mono);font-size:15px;font-weight:800}.exercise-list{display:grid;gap:0;margin-top:12px;overflow:hidden;border:0;border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.exercise-card,.template-card,.log-card,.progress-card{padding:16px}.exercise-row{min-width:0;border-top:1px solid var(--divider)}.exercise-row:first-child{border-top:0}.exercise-row>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:10px;min-height:66px;padding:10px 12px;cursor:pointer;list-style:none}.exercise-row>summary::-webkit-details-marker,.progress-summary::-webkit-details-marker{display:none}.exercise-row-copy{display:grid;gap:3px;min-width:0}.exercise-row-copy strong{font-size:16px;font-weight:780;line-height:1.15}.exercise-row-copy small{color:var(--muted);font-size:12px;font-weight:650;line-height:1.25}.exercise-row-load{color:var(--text);font-family:var(--mono);font-size:14px;font-weight:800;white-space:nowrap}.row-chevron{display:inline-block;color:var(--muted-soft);font-size:22px;font-weight:500;line-height:1;transition:transform .16s ease}.exercise-row[open]>summary .row-chevron,.card-toggle[aria-expanded=true] .row-chevron,.other-activity>button[aria-expanded=true] .row-chevron{transform:rotate(90deg)}.exercise-row-details{display:grid;gap:8px;padding:0 12px 14px}.exercise-row-details>p,.exercise-row-details>small{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.exercise-row .warmup-stack,.exercise-row .work-set-stack{margin-top:4px;border-radius:7px}.exercise-row .work-set-stack{padding:12px 14px;background:var(--accent-soft)}.exercise-row .work-set-stack .set-line strong{color:var(--text);font-size:18px}.exercise-row .work-set-stack .set-line .set-delta{color:var(--accent)}.exercise-card h2{font-size:20px;font-weight:750;line-height:1.15}.exercise-header{display:grid;gap:4px}.exercise-card>p{margin:8px 0 0;color:var(--muted)}.weight-change{margin:8px 0 0;color:var(--muted);font-size:13px;font-weight:650;line-height:1.35}.warmup-stack{display:grid;gap:6px;margin-top:12px;border-top:1px solid var(--divider);border-radius:8px;padding:12px 14px;background:var(--warmup-surface);color:var(--muted);font-size:14px}.warmup-stack>span{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.warmup-stack>div{display:grid;gap:6px}.work-set-stack{display:grid;gap:6px;margin-top:8px;border-top:1px solid var(--divider);border-radius:8px;padding:14px 16px 16px;background:var(--work-set-surface)}.work-set-stack>span{color:var(--work-set-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.rpe-line{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.rpe-range{color:var(--muted)}.template-list,.log-list,.progress-list{display:grid;gap:12px;margin-top:14px}.weight-change span,.weight-change small{display:block}.weight-change small{margin-top:2px;color:var(--muted);font-size:12px;font-weight:550}.history-toolbar{display:flex;justify-content:flex-end}.manual-log-action{width:auto;min-height:40px;background:var(--input);color:var(--accent);box-shadow:none}.manual-log-form{display:grid;gap:14px;border:0;border-radius:8px;padding:16px;background:var(--surface)}.manual-log-form>label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.manual-exercise-list{display:grid;gap:10px}.manual-exercise-row{display:grid;grid-template-columns:minmax(110px,1fr) repeat(3,62px);gap:8px;align-items:end;border-top:1px solid var(--divider);padding-top:10px}.manual-exercise-row strong{align-self:center;font-size:13px}.manual-exercise-row label{display:grid;gap:3px;color:var(--muted);font-size:10px;font-weight:800}.manual-log-form>small{color:var(--red)}.delete-manual-log{min-height:40px;border:0;border-radius:6px;background:color-mix(in srgb,var(--red) 12%,transparent);color:var(--red);font-weight:800}.manual-log-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.manual-log-controls button{min-height:40px;border:0;border-radius:6px;background:var(--input);color:var(--accent);font-weight:800}.reconciliation-card{display:grid;gap:8px;border:0;border-radius:8px;padding:16px;background:var(--surface);box-shadow:var(--shadow-soft)}.reconciliation-card p:not(.eyebrow),.reconciliation-card>small{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.reconciliation-card>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}.reconciliation-card button,.reconciliation-merged button{min-height:42px;border:0;border-radius:6px;padding:0 10px;background:var(--accent);color:var(--button-ink);font-weight:800}.reconciliation-card button:last-child{background:var(--input);color:var(--accent)}.reconciliation-error{color:var(--red)!important}.reconciliation-merged{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:6px;padding:12px;background:var(--accent-soft);color:var(--text);font-size:12px;font-weight:750}.reconciliation-merged button{flex:0 0 auto;min-height:36px;background:var(--input);color:var(--accent)}@media(max-width:430px){.manual-exercise-row{grid-template-columns:repeat(3,1fr)}.manual-exercise-row strong{grid-column:1 / -1}.editable-set-line{grid-template-columns:minmax(52px,1fr) 58px 66px 34px;gap:6px}.editable-set-line input{padding-inline:5px}}.template-card>p{margin:8px 0 0;color:var(--muted)}.template-card{overflow:hidden;padding:0;box-shadow:var(--shadow-soft)}.template-card>.card-toggle{padding:14px}.card-toggle{display:block;width:100%;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.card-toggle:focus-visible{border-radius:8px;outline:2px solid var(--accent);outline-offset:4px}.card-toggle+div>p{margin:8px 0 0;color:var(--muted)}.template-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.template-heading>div{min-width:0}.template-heading h2{font-size:18px}.template-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;font-weight:650;line-height:1.35}.template-heading>.row-chevron{flex:0 0 auto}.template-exercises,.log-sets{display:grid;gap:10px;margin-top:14px}.template-card>div{border-top:1px solid var(--divider);padding:0 14px 14px}.library-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;border-top:1px solid var(--divider);padding-top:10px}.library-row div:first-child,.log-row div{min-width:0}.library-row strong,.library-row span,.library-row small,.log-row strong,.log-row span{display:block}.library-row span,.library-row p,.library-row small,.log-row span{color:var(--muted);font-size:13px;line-height:1.35}.library-row p,.library-row small{grid-column:1 / -1;margin:0}.library-load{color:var(--text);font-family:var(--mono);font-weight:800;white-space:nowrap}.log-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;border-top:1px solid var(--divider);padding-top:10px}.log-row>div:last-child{text-align:right}.history-month{display:grid;gap:7px}.history-month>h2{margin:0 2px;color:var(--muted);font-size:12px;font-weight:750}.history-month>div,.other-activity>div{overflow:hidden;border:0;border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.log-card{border:0;border-top:1px solid var(--divider);border-radius:0;padding:0;box-shadow:none}.log-card:first-child{border-top:0}.log-card>.card-toggle{padding:12px}.history-row-heading{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:9px}.history-row-heading h3{margin:0;font-size:16px;font-weight:780;line-height:1.2}.history-row-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;font-weight:650;line-height:1.3}.needs-review{color:var(--status-orange);font-size:11px;font-weight:800;white-space:nowrap}.log-card>.log-sets{margin-top:0;border-top:1px solid var(--divider);padding:12px}.match-detail{color:var(--muted);font-size:11px;font-weight:700}.other-activity{display:grid;gap:7px}.other-activity>button{display:grid;grid-template-columns:auto minmax(0,1fr) 14px;align-items:center;gap:8px;min-height:44px;border:0;padding:0 4px;background:transparent;color:var(--text);text-align:left;font-weight:750}.other-activity>button small{color:var(--muted);font-size:11px;font-weight:650}.reconciled-log,.reconciled-log-list,.raw-garmin-list{display:grid;gap:10px}.reconciled-log-row{display:grid;gap:4px;border-top:1px solid var(--divider);padding-top:10px}.reconciled-log-row strong,.reconciled-log-row span,.reconciled-log-row small,.reconciled-log-extras strong,.reconciled-log-extras span{display:block}.reconciled-log-row span,.reconciled-log-row small,.reconciled-log-extras span,.raw-garmin-sets summary{color:var(--muted);font-size:13px;line-height:1.35}.reconciled-log-row small{color:var(--accent);font-weight:700}.reconciled-log-extras{display:grid;gap:4px;border-top:1px solid var(--divider);padding-top:10px}.raw-garmin-sets{border-top:1px solid var(--divider);padding-top:10px}.raw-garmin-sets summary{cursor:pointer;font-weight:750}.raw-garmin-list{margin-top:10px}.plan-match{display:grid;gap:10px}.plan-match-summary{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:1px solid var(--divider);padding-top:10px}.plan-match-summary strong,.plan-match-summary span,.plan-match-row strong,.plan-match-row span{display:block}.plan-match-summary strong{min-width:0;color:var(--accent);font-family:var(--mono)}.plan-match-summary span,.plan-match-row span{color:var(--muted);font-size:13px;line-height:1.35}.plan-match-list{display:grid;gap:8px}.plan-match-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;border-top:1px solid var(--divider);padding-top:8px}.plan-match-row>div{min-width:0}.plan-match-row>div:last-child{text-align:right}.plan-match-row.missing>div:last-child strong{color:var(--red)}.progress-card{overflow:hidden;padding:0;box-shadow:var(--shadow-soft)}.progress-summary{display:block;padding:14px;cursor:pointer;list-style:none}.progress-title-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.progress-title-line h2{font-size:18px}.progress-summary-meta{display:inline-flex;align-items:center;gap:7px}.progress-card[open] .progress-summary-meta .row-chevron{transform:rotate(90deg)}.trend-change{color:var(--muted);font-family:var(--mono);font-size:12px;font-weight:800}.trend-change.positive{color:var(--green)}.trend-change.negative{color:var(--red)}.progress-primary{display:block;margin-top:6px;font-family:var(--mono);font-size:18px;font-weight:850}.progress-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;border-top:1px solid var(--divider);padding:12px 14px 14px}.progress-details dt{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.progress-details dd{margin:4px 0 0;font-family:var(--mono);font-size:16px;font-weight:800}.trend-chart{margin-top:14px}.trend-chart svg{display:block;width:100%;height:86px;border:0;border-radius:6px;background:var(--input)}.trend-grid{stroke:var(--border);stroke-width:1}.trend-y-label{fill:var(--muted);font-family:var(--mono);font-size:10px;font-weight:800;dominant-baseline:middle}.trend-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.trend-point{fill:var(--text);stroke:var(--accent);stroke-width:2}.trend-labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin-top:6px;color:var(--muted);font-family:var(--mono);font-size:12px;font-weight:800}.trend-labels span:nth-child(2n){text-align:right}.trend-empty{margin-top:14px;border:1px dashed var(--divider);border-radius:6px;color:var(--muted);font-size:13px;font-weight:800;padding:18px 12px;text-align:center}.set-line{display:flex;align-items:baseline;justify-content:flex-start;gap:8px;margin:0;font-family:var(--mono);font-size:22px;letter-spacing:0}.warmup-stack .set-line{margin:0;font-size:15px}.work-set-stack .set-line strong{font-size:22px;letter-spacing:-.01em}.set-line strong,.set-line span{min-width:0}.set-line strong{flex:0 1 auto;color:var(--text);text-align:left}.set-line .set-delta{flex:0 0 auto;color:var(--accent);font-weight:800}.work-set-stack .set-line strong,.work-set-stack .set-line .set-delta{color:var(--work-set-ink)}.set-check{flex:0 0 auto;display:grid;place-items:center;inline-size:34px;block-size:34px;border:0;border-radius:6px;margin-left:auto;margin-inline-end:0;padding:0;background:color-mix(in srgb,var(--text) 9%,transparent);color:var(--button-ink);transition:background-color .16s ease,transform .14s ease,box-shadow .16s ease}.set-check span{inline-size:18px;block-size:18px;border:2px solid color-mix(in srgb,var(--muted) 70%,transparent);border-radius:4px;transition:background-color .16s ease,border-color .16s ease,transform .18s cubic-bezier(.2,.9,.2,1.2)}.set-check[aria-pressed=true]{background:var(--accent-soft);box-shadow:none}.set-check[aria-pressed=true] span{border-color:var(--accent);background:var(--accent);transform:scale(1.08)}@media(prefers-color-scheme:dark){.tabbar{border-color:#ffffff14;background:#1f2026d1;box-shadow:none}.tabbar button{color:var(--muted-soft)}.tabbar button.active{color:#fff}.coach-note h2,.workout-subtitle,.weight-change{color:var(--muted)}.eyebrow,.warmup-stack>span,.completion-card dt,.progress-card dt{color:var(--muted-soft)}.readiness-tile,.training-status-tile{box-shadow:none}.readiness-tile.green,.readiness-tile.garmin-readiness-moderate,.training-status-tile.productive{background:#30f26b5c}.readiness-tile.yellow{background:#ffd84d61}.readiness-tile.garmin-readiness-low{background:#ffb3405c}.readiness-tile.red,.readiness-tile.garmin-readiness-poor,.training-status-tile.overreaching{background:#ff453a5c}.readiness-tile.garmin-readiness-high,.training-status-tile.maintaining,.training-status-tile.recovery{background:#0a84ff5c}.training-status-tile.unproductive,.training-status-tile.strained{background:#ffb3405c}.training-status-tile.peaking,.readiness-tile.garmin-readiness-prime{background:#d777ff5c}.readiness-tile.unknown,.training-status-tile.detraining,.training-status-tile.unknown{background:#a7a7b047}.workout-mode-bar{border-color:var(--card-border);background:var(--surface)}.warmup-stack,.focused-exercise-card .warmup-stack{background:var(--warmup-surface)}.trend-chart svg{background:#ffffff0e}.work-set-stack,.focused-exercise-card .work-set-stack{background:var(--work-set-surface)}}@media(max-width:430px){.readiness-summary{gap:3px}.readiness-tile,.training-status-tile{padding:7px 10px}.readiness-metric{font-size:11px}.workout-subtitle{font-size:13px}}@media(max-width:360px){.today-header{display:grid}.readiness-summary{justify-items:stretch;width:100%}.readiness-tile,.training-status-tile{inline-size:100%;text-align:left}}@media(min-width:760px){.fitness-shell{padding:24px 24px calc(112px + env(safe-area-inset-bottom))}.exercise-list,.template-list,.progress-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.public-dashboard{display:grid;gap:18px;max-width:960px;padding-bottom:40px}.public-dashboard-header{display:grid;gap:6px;padding:18px 0 4px}.public-dashboard-header h1{font-size:clamp(32px,6vw,52px)}.public-dashboard-header>p:last-child,.public-dashboard-footer{color:var(--muted)}.public-next-workout-panel,.public-progress-panel,.public-history>article{padding:18px;background:var(--surface)}.public-next-workout,.public-progress,.public-history{display:grid;gap:12px}.public-progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}.public-progress-grid article{display:grid;gap:3px;padding:14px;background:var(--input)}.public-progress-grid span,.public-progress-grid small,.public-history time{color:var(--muted);font-size:12px}.public-progress-grid strong{font-family:var(--mono);font-size:20px}.public-history>article{display:grid;gap:12px}.public-history h3{margin-top:3px}.public-history ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.public-history li{display:flex;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--divider)}.public-dashboard-footer{display:flex;justify-content:center;gap:10px;padding:8px 0;font-size:12px;text-align:center}.public-dashboard-footer a,.owner-session-links a{color:var(--accent);font-weight:750;text-decoration:none}.owner-session-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;font-size:12px}.owner-session-links a:focus-visible,.public-dashboard-footer a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:520px){.owner-session-links{justify-content:flex-start}}
