.coach-workout-session {
  --cws-ink: #142b32;
  --cws-muted: #50666c;
  --cws-line: #d4dfdc;
  --cws-paper: #f5f7f4;
  --cws-teal: #087f87;
  box-sizing: border-box;
  color: var(--cws-ink);
  font: inherit;
  max-width: 960px;
  width: 100%;
}
.coach-workout-session *, .coach-workout-session *::before, .coach-workout-session *::after { box-sizing: border-box; }
.coach-workout-session__header { border-bottom: 1px solid var(--cws-line); margin-bottom: 1rem; padding-bottom: .8rem; }
.coach-workout-session__eyebrow { color: var(--cws-teal); font-size: .78rem; font-weight: 700; letter-spacing: .06em; margin: 0 0 .25rem; text-transform: uppercase; }
.coach-workout-session h2 { font-size: clamp(1.2rem, 4vw, 1.65rem); line-height: 1.2; margin: 0 0 .4rem; overflow-wrap: anywhere; }
.coach-workout-session h3 { font-size: 1.05rem; margin: 0 0 .65rem; overflow-wrap: anywhere; }
.coach-workout-session h4 { font-size: .9rem; margin: .3rem 0 .55rem; }
.coach-workout-session h5 { font-size: .85rem; margin: 0; }
.coach-workout-session p { line-height: 1.45; margin: .4rem 0; overflow-wrap: anywhere; }
.coach-workout-session__form, .coach-workout-session__exercise-list { display: grid; gap: .8rem; }
.coach-workout-session__exercise, .coach-workout-session__feedback, .coach-workout-session__server-version {
  background: #fff; border: 1px solid var(--cws-line); border-radius: 12px; min-width: 0; padding: .85rem;
}
.coach-workout-session__prescription { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .25rem .6rem; margin: 0 0 .8rem; }
.coach-workout-session__prescription dt { color: var(--cws-muted); font-size: .75rem; }
.coach-workout-session__prescription dd { font-size: .9rem; font-weight: 650; margin: 0; overflow-wrap: anywhere; }
.coach-workout-session__field { display: grid; gap: .3rem; min-width: 0; }
.coach-workout-session__field > span { color: var(--cws-muted); font-size: .82rem; font-weight: 600; }
.coach-workout-session__input { background: #fff; border: 1px solid #9aadaa; border-radius: 7px; color: var(--cws-ink); font: inherit; min-height: 42px; padding: .55rem .65rem; width: 100%; }
.coach-workout-session textarea.coach-workout-session__input { min-height: 76px; resize: vertical; }
.coach-workout-session__input:focus-visible, .coach-workout-session__button:focus-visible, .coach-workout-session summary:focus-visible { outline: 3px solid #63c4c5; outline-offset: 2px; }
.coach-workout-session__sets { border-top: 1px solid var(--cws-line); display: grid; gap: .55rem; margin-top: .75rem; padding-top: .65rem; }
.coach-workout-session__set { align-items: end; background: var(--cws-paper); border-radius: 8px; display: grid; gap: .55rem; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: .6rem; }
.coach-workout-session__set h5 { grid-column: 1 / -1; }
.coach-workout-session__button { background: #fff; border: 1px solid var(--cws-teal); border-radius: 7px; color: var(--cws-teal); cursor: pointer; font: inherit; font-weight: 650; min-height: 42px; padding: .5rem .8rem; }
.coach-workout-session__button:hover:not(:disabled) { background: #edf8f6; }
.coach-workout-session__button:disabled { cursor: not-allowed; opacity: .6; }
.coach-workout-session__actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.coach-workout-session__actions button[type="submit"], .coach-workout-session__feedback button[type="submit"] { background: var(--cws-teal); color: #fff; }
.coach-workout-session__error { background: #fff3ef; border-left: 3px solid #b5452a; color: #702d1d; padding: .65rem .8rem; }
.coach-workout-session__notice { background: #eff8f4; border-left: 3px solid var(--cws-teal); padding: .65rem .8rem; }
.coach-workout-session__compare { display: grid; gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.coach-workout-session__compare-column { background: var(--cws-paper); border-radius: 8px; min-width: 0; padding: .65rem; }
.coach-workout-session__compare-column .coach-workout-session__prescription { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.coach-workout-session__feedback { display: grid; gap: .65rem; margin-top: .8rem; }
.coach-workout-session__server-version { margin-top: .8rem; }
.coach-workout-session__server-version summary { cursor: pointer; font-weight: 650; }
@media (max-width: 480px) {
  .coach-workout-session__prescription { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .coach-workout-session__compare { grid-template-columns: minmax(0, 1fr); }
  .coach-workout-session__set { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .coach-workout-session__set .coach-workout-session__field:first-of-type { grid-column: 1 / -1; }
  .coach-workout-session__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .coach-workout-session__actions .coach-workout-session__button { width: 100%; }
}
