.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.workout-subhead{margin-top:44px}
.workout-actions{display:grid;gap:12px;margin-top:4px}.workout-actions .primary,.workout-actions .secondary{margin-top:0;min-height:48px;font-size:14px}
.workout-actions .secondary[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}
.workout-preview{margin:28px 0 8px;padding:22px 18px;background:var(--field-2);color:var(--field-2-ink);border-radius:var(--radius-sm)}
.workout-preview h3{font-size:22px;font-weight:600;color:var(--field-2-ink)}.workout-preview h3:focus{outline:none}.workout-preview h3:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.workout-preview .tool-note,.workout-preview .field-help{color:var(--muted-strong)}
.workout-rows{margin:6px 0 18px}
.workout-row{border:0;margin:0;padding:16px 0;min-width:0;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;border-bottom:1px solid var(--line-strong)}
.workout-row>.tool-field:first-of-type{grid-column:1/-1}.workout-row .field-help{grid-column:1/-1;margin:0}
.workout-row .tool-remove{color:var(--field-2-ink)}
.workout-day{margin-top:22px}.workout-day h3{font-size:18px;font-weight:600;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.workout-day h3 span{font:500 13px var(--font-body);color:var(--muted)}
.workout-day .tool-log{margin:6px 0}.workout-day .tool-log>li{padding:12px 0}.workout-day .tool-log p{font-size:15px;color:var(--muted-strong);font-family:var(--font-body);letter-spacing:0}
/* Training sessions (#22): one dated session per day groups its exercises */
.session-target{display:flex;gap:8px;align-items:baseline;margin-top:10px;font-size:13px;line-height:1.5;color:var(--accent-text)}.session-target::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent-fill);transform:translateY(-1px)}
.workout-session{margin-top:26px;padding-top:18px;border-top:2px solid var(--line-strong)}.workout-session:first-of-type{margin-top:18px}
.workout-session-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.workout-session-head h3{font-size:19px;font-weight:600}
.session-plan{font-size:11px;font-weight:600;border-radius:5px;padding:4px 8px;background:var(--accent-soft);color:var(--accent-text);white-space:nowrap}
.session-meta{flex-basis:100%;font:500 13px var(--font-body);letter-spacing:0;color:var(--muted)}
.workout-session .tool-log{margin:8px 0 4px}.workout-session .tool-log>li{padding:12px 0}.workout-session .tool-log>li:last-child{border-bottom:0}.workout-session .tool-log p{font-size:15px;color:var(--muted-strong);font-family:var(--font-body);letter-spacing:0}
.session-add{min-height:44px;padding:0 14px;border-radius:9px;background:var(--surface-2);color:var(--accent-text);font-size:13px;font-weight:600}.session-add:hover{background:var(--accent-soft)}
/* Session names (#23): optional Push, Pull, Legs or free text, set from chips in one tap */
.workout-session-head h3 .session-name{display:block}.workout-session-head h3 .session-date{display:block;margin-top:2px;font:500 14px var(--font-body);letter-spacing:0;color:var(--muted-strong)}
.session-actions{display:flex;flex-wrap:wrap;gap:8px}
.session-ghost{min-height:44px;padding:0 14px;border-radius:9px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);font-size:13px;font-weight:600}.session-ghost:hover{border-color:var(--accent);color:var(--accent-text)}
.session-namer{display:grid;gap:12px;margin-top:6px;padding-top:14px;border-top:1px solid var(--line)}
.draft-name{display:grid;gap:12px;padding:6px 0 18px;border-bottom:1px solid var(--line-strong)}
.draft-name-label{font-size:15px;font-weight:600;color:inherit}.draft-name-label span{margin-left:6px;font-size:13px;font-weight:500;color:var(--muted-strong)}
.session-chips{display:flex;flex-wrap:wrap;gap:8px}
.session-chip{min-height:44px;min-width:72px;padding:0 18px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600}
.session-chip:hover{border-color:var(--accent)}.session-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}
@media(min-width:760px){.workout-actions{grid-template-columns:1fr 1fr}.workout-preview{padding:26px 24px}.workout-row{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr)) auto}.workout-row>.tool-field:first-of-type{grid-column:auto}}
@media(max-width:370px){.workout-row{grid-template-columns:repeat(3,minmax(0,1fr))}.workout-row .tool-remove{grid-column:1/-1;justify-self:start}}
@media print{.workout-preview,[data-workout-form],[data-workout-csv],.session-add,.session-target,.session-actions,.session-namer{display:none}}
