/* PULSE workout landing — approved compact Variant 1 */
.workout-v1{display:grid;gap:14px;max-width:980px;margin:0 auto}.workout-v1-head{display:flex;align-items:center;justify-content:space-between}.workout-v1-head h1{margin:0;font-size:clamp(34px,5vw,54px);line-height:1}.workout-v1-today{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"date copy start";align-items:center;gap:20px;padding:22px 24px}.workout-v1-date{grid-area:date;display:flex;flex-direction:column;min-width:110px}.workout-v1-date strong{font-size:20px}.workout-v1-date span,.workout-v1-today-copy p{opacity:.66}.workout-v1-today-copy{grid-area:copy}.workout-v1-today-copy h2,.workout-v1-today-copy p{margin:2px 0}.workout-v1-status{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.65}.workout-v1-start{grid-area:start;min-width:230px}.workout-v1-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.workout-v1-action{display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:12px;text-align:left;padding:18px 20px;width:100%}.workout-v1-action>svg:first-child{width:28px;height:28px}.workout-v1-action span{display:flex;flex-direction:column}.workout-v1-action strong{font-size:18px}.workout-v1-action small{margin-top:3px;opacity:.62}.workout-v1-week{padding:18px 20px}.workout-v1-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.workout-v1-section-head>div{display:flex;flex-direction:column}.workout-v1-section-head strong{font-size:20px}.workout-v1-section-head small{opacity:.6}.workout-v1-section-head button{border:0;background:none;color:inherit;display:flex;gap:6px;align-items:center}.workout-v1-section-head button svg{width:16px}.workout-v1 .week-program-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.workout-v1 .week-program-day{min-width:0}
@media(max-width:720px){
  body:has(.workout-v1){overflow:hidden}
  body:has(.workout-v1) main{
    height:100dvh!important;
    min-height:0!important;
    padding-bottom:0!important;
    overflow:hidden!important;
  }
  body:has(.workout-v1) .page{
    height:calc(100dvh - 76px - env(safe-area-inset-bottom))!important;
    min-height:0!important;
    padding:8px 14px 8px!important;
    overflow:hidden!important;
  }
  body:has(.workout-v1) footer{display:none!important}

  .workout-v1{
    height:100%;
    max-width:none;
    margin:0;
    padding:0;
    display:grid;
    grid-template-rows:auto minmax(0,1.55fr) minmax(0,.72fr) minmax(0,.92fr);
    gap:8px;
    overflow:hidden;
  }
  .workout-v1-head{
    min-height:42px;
    align-items:center;
  }
  .workout-v1-head h1{
    font-size:clamp(30px,8.7vw,42px);
    line-height:1;
  }

  .workout-v1-today{
    min-height:0;
    height:100%;
    margin:0!important;
    padding:13px 14px;
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto minmax(0,1fr) auto;
    grid-template-areas:"date" "copy" "start";
    gap:7px;
    overflow:hidden;
    border-radius:20px;
  }
  .workout-v1-date{
    min-width:0;
    display:flex;
    flex-direction:row;
    align-items:baseline;
    gap:10px;
    white-space:nowrap;
  }
  .workout-v1-date strong{font-size:18px}
  .workout-v1-date span{font-size:16px}
  .workout-v1-today-copy{
    min-height:0;
    align-self:center;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .workout-v1-today-copy h2{
    margin:0;
    font-size:clamp(20px,5.8vw,28px);
    line-height:1.12;
  }
  .workout-v1-today-copy p{
    margin-top:6px;
    font-size:12px;
    line-height:1.3;
    max-width:360px;
  }
  .workout-v1-status{font-size:10px;margin-bottom:3px}
  .workout-v1-start{
    min-width:0;
    width:100%;
    min-height:48px;
    max-height:52px;
    padding:10px 14px;
    font-size:16px;
    border-radius:14px;
  }

  .workout-v1-actions{
    min-height:0;
    height:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .workout-v1-action{
    min-height:0;
    height:100%;
    margin:0!important;
    padding:10px 11px;
    grid-template-columns:28px minmax(0,1fr) 16px;
    gap:7px;
    border-radius:18px;
  }
  .workout-v1-action>svg:first-child{
    width:24px;
    height:24px;
  }
  .workout-v1-action>svg:last-child{
    width:16px;
    height:16px;
  }
  .workout-v1-action strong{
    font-size:clamp(14px,4vw,17px);
    line-height:1.05;
  }
  .workout-v1-action small{
    margin-top:2px;
    font-size:10px;
    line-height:1.15;
  }

  .workout-v1-week{
    min-height:0;
    height:100%;
    margin:0!important;
    padding:10px 12px;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    gap:7px;
    overflow:hidden;
    border-radius:18px;
  }
  .workout-v1-section-head{
    min-height:25px;
    margin:0;
  }
  .workout-v1-section-head strong{font-size:17px}
  .workout-v1-section-head small{display:none}
  .workout-v1-section-head button{
    min-height:28px;
    padding:2px 0;
    font-size:12px;
  }
  .workout-v1 .week-program-strip{
    min-height:0;
    height:100%;
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:4px;
  }
  .workout-v1 .week-program-day{
    min-width:0;
    min-height:0;
    height:100%;
    padding:5px 1px;
    border-radius:12px;
    gap:2px;
  }
  .workout-v1 .week-program-day span,
  .workout-v1 .week-program-day small{
    font-size:8px;
    line-height:1;
  }
  .workout-v1 .week-program-day strong{
    font-size:17px;
    line-height:1.05;
  }
}

@media(max-width:420px){
  body:has(.workout-v1) .page{padding-left:10px!important;padding-right:10px!important}
  .workout-v1{gap:7px}
  .workout-v1-head{min-height:38px}
  .workout-v1-head h1{font-size:32px}
  .workout-v1-today{padding:11px 12px}
  .workout-v1-date strong{font-size:17px}
  .workout-v1-date span{font-size:15px}
  .workout-v1-today-copy h2{font-size:21px}
  .workout-v1-today-copy p{font-size:11px}
  .workout-v1-action{padding:8px 9px}
  .workout-v1-action small{display:none}
  .workout-v1-week{padding:9px 10px}
}

@media(max-width:380px),(max-height:680px){
  body:has(.workout-v1) .page{
    height:calc(100dvh - 70px - env(safe-area-inset-bottom))!important;
    padding-top:5px!important;
    padding-bottom:5px!important;
  }
  .workout-v1{
    grid-template-rows:34px minmax(0,1.45fr) minmax(64px,.62fr) minmax(94px,.84fr);
    gap:5px;
  }
  .workout-v1-head{min-height:34px}
  .workout-v1-head h1{font-size:28px}
  .workout-v1-today{padding:9px 10px;gap:4px}
  .workout-v1-date strong{font-size:15px}
  .workout-v1-date span{font-size:13px}
  .workout-v1-today-copy h2{font-size:18px}
  .workout-v1-today-copy p{font-size:10px;margin-top:3px}
  .workout-v1-start{min-height:42px;max-height:44px;font-size:14px}
  .workout-v1-action{padding:6px 8px}
  .workout-v1-action strong{font-size:13px}
  .workout-v1-action small{display:none}
  .workout-v1-week{padding:7px 8px;gap:4px}
  .workout-v1-section-head strong{font-size:15px}
  .workout-v1 .week-program-day{padding:3px 1px;border-radius:10px}
  .workout-v1 .week-program-day strong{font-size:15px}
  .workout-v1 .week-program-day span,
  .workout-v1 .week-program-day small{font-size:7px}
}

@media(min-width:721px) and (max-width:1100px){
  .workout-v1{max-width:860px}
  .workout-v1-today{
    grid-template-columns:130px 1fr;
    grid-template-areas:"date copy" "start start";
    gap:12px 16px;
  }
  .workout-v1-start{width:100%;min-width:0}
  .workout-v1-action strong{font-size:16px}
}

/* Iteration 73 — active workout UX only */

/* Header: finish / stop / explicit delete */
.workout-live-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:stretch!important;
}
.workout-live-actions .live-delete{
  min-width:48px!important;
  width:48px!important;
  padding:0!important;
  border:1px solid rgba(255,74,94,.55)!important;
  background:rgba(174,24,43,.18)!important;
  color:#ff5265!important;
  border-radius:14px!important;
}
.workout-live-actions .live-delete svg{width:20px!important;height:20px!important}
.delete-workout-confirm{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:8px 12px;
  align-items:center;
}
.delete-workout-confirm>svg{
  width:32px;height:32px;color:#ff5265;grid-row:1/3;
}
.delete-workout-confirm strong{font-size:1.05rem}
.delete-workout-confirm p{margin:0;color:var(--muted)}

/* Exercise tool buttons are visually ordered: edit then delete. */
.exercise-card-active .exercise-edit-actions{
  display:flex!important;
  gap:8px!important;
}
.exercise-card-active .exercise-edit-actions button:last-child{
  color:#ff5d6d!important;
  border-color:rgba(255,93,109,.38)!important;
  background:rgba(255,93,109,.08)!important;
}

/* One unified rest/timer panel */
.exercise-card-active .active-rest-row{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:stretch!important;
  padding:8px!important;
  border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--panel) 88%,transparent)!important;
}
.exercise-card-active .record-trophy{
  width:52px!important;
  min-width:52px!important;
  height:100%!important;
  min-height:58px!important;
  border-radius:14px!important;
}
.active-rest-combined{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(92px,.9fr) minmax(118px,1fr) minmax(86px,.75fr);
  gap:8px;
  align-items:center;
}
.active-rest-status{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 8px!important;
  border:0!important;
  background:transparent!important;
}
.active-rest-status>svg{width:22px!important;height:22px!important;color:var(--accent)!important}
.active-rest-status span{font-size:.72rem!important;color:var(--muted)!important}
.active-rest-status strong{font-size:1.05rem!important;white-space:nowrap!important}
.rest-stepper{
  min-width:0;
  height:46px;
  display:grid;
  grid-template-columns:38px minmax(44px,1fr) 38px;
  align-items:center;
  border:1px solid var(--border);
  border-radius:13px;
  overflow:hidden;
  background:var(--input);
}
.rest-stepper>strong{
  text-align:center;
  font-size:.95rem;
  white-space:nowrap;
}
.rest-adjust{
  height:100%!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--text)!important;
  font-size:1.25rem!important;
}
.rest-adjust:first-child{border-right:1px solid var(--border)!important}
.rest-adjust:last-child{border-left:1px solid var(--border)!important}
.rest-start{
  min-width:0!important;
  width:100%!important;
  height:46px!important;
  padding:0 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
}
.rest-start svg{width:17px!important;height:17px!important}

/* More harmonious set table */
.exercise-card-active .set-grid{
  grid-template-columns:38px minmax(88px,1fr) minmax(88px,1fr) 54px 38px!important;
  column-gap:8px!important;
  align-items:center!important;
}
.exercise-card-active .set-grid.set-label{
  padding:2px 0 4px!important;
  font-size:.68rem!important;
  color:var(--muted)!important;
}
.exercise-card-active .set-grid input{
  min-width:0!important;
  text-align:center!important;
}
.exercise-card-active .active-exercise-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
}

/* User-provided exercise photo/GIF */
.exercise-custom-media{
  position:relative;
  width:100%;
  height:100%;
  min-height:210px;
  overflow:hidden;
  border-radius:16px;
  background:#090b0f;
}
.exercise-custom-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#090b0f;
}
.custom-media-badge{
  position:absolute;
  right:10px;
  bottom:10px;
  padding:6px 9px;
  border-radius:10px;
  background:rgba(7,10,15,.76);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
}
.exercise-media-upload{
  display:grid!important;
  gap:6px!important;
  margin-top:12px!important;
}
.exercise-media-upload>span{font-weight:750}
.exercise-media-upload input[type="file"]{
  width:100%;
  padding:10px;
  border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));
  border-radius:12px;
  background:var(--input);
  color:var(--text);
}
.exercise-media-upload small{color:var(--muted)}
.exercise-media-current{
  margin-top:12px;
  display:grid;
  gap:8px;
}
.exercise-media-current .exercise-custom-media{
  min-height:160px;
  max-height:280px;
}
#exercise-media-progress{width:100%;margin-top:10px}

@media(max-width:700px){
  .workout-live-actions{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px!important;
    gap:6px!important;
  }
  .workout-live-actions .live-delete{
    width:42px!important;
    min-width:42px!important;
    border-radius:12px!important;
  }
  .active-rest-combined{
    grid-template-columns:1fr 1.05fr .9fr!important;
    gap:6px!important;
  }
  .exercise-card-active .active-rest-row{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:6px!important;
    padding:6px!important;
  }
  .exercise-card-active .record-trophy{
    width:46px!important;
    min-width:46px!important;
    min-height:52px!important;
  }
  .active-rest-status{
    padding:0 4px!important;
    gap:5px!important;
  }
  .active-rest-status>svg{width:18px!important;height:18px!important}
  .active-rest-status span{font-size:.62rem!important}
  .active-rest-status strong{font-size:.88rem!important}
  .rest-stepper{
    height:42px;
    grid-template-columns:32px minmax(38px,1fr) 32px;
  }
  .rest-stepper>strong{font-size:.82rem}
  .rest-start{
    height:42px!important;
    font-size:.82rem!important;
    padding:0 8px!important;
  }
  .exercise-card-active .set-grid{
    grid-template-columns:28px minmax(72px,1fr) minmax(72px,1fr) 44px 30px!important;
    column-gap:5px!important;
  }
  .exercise-card-active .set-grid.set-label{
    font-size:.57rem!important;
  }
}

@media(max-width:420px){
  .active-rest-combined{
    grid-template-columns:minmax(76px,.8fr) minmax(104px,1fr) 72px!important;
  }
  .rest-start{
    font-size:0!important;
  }
  .rest-start svg{
    width:20px!important;height:20px!important;margin:0!important;
  }
  .exercise-card-active .set-grid{
    grid-template-columns:24px minmax(64px,1fr) minmax(64px,1fr) 40px 26px!important;
    column-gap:4px!important;
  }
}


/* Iteration 74 — workout pages rebuild.
   Scope is limited to the workout landing and active-workout views. */

/* ---------- shared visual system ---------- */
.workout-v1,
body.workout-live-mode .page{
  --wv-card:color-mix(in srgb,var(--panel) 94%,#071008);
  --wv-border:color-mix(in srgb,var(--border) 78%,var(--accent) 10%);
  --wv-muted:color-mix(in srgb,var(--text) 58%,transparent);
}
.workout-v1 .card,
body.workout-live-mode .exercise-card-active,
body.workout-live-mode .workout-live-title{
  border:1px solid var(--wv-border)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.12)!important;
}

/* ---------- PAGE 1: workout landing ---------- */
.workout-v1{
  width:min(100%,980px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-areas:
    "head head"
    "today today"
    "actions actions"
    "week week"!important;
  gap:14px!important;
}
.workout-v1-head{grid-area:head!important}
.workout-v1-today{grid-area:today!important}
.workout-v1-actions{grid-area:actions!important}
.workout-v1-week{grid-area:week!important}

.workout-v1-head{
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
}
.workout-v1-head h1{
  margin:0!important;
  font-size:clamp(34px,4.5vw,52px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}

.workout-v1-today{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) minmax(230px,300px)!important;
  grid-template-areas:"date copy start"!important;
  align-items:center!important;
  min-height:205px!important;
  padding:24px 26px!important;
  gap:20px!important;
  border-radius:26px!important;
  background:
    radial-gradient(70% 120% at 78% 38%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 62%),
    var(--wv-card)!important;
}
.workout-v1-date{
  grid-area:date!important;
  align-self:start!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.workout-v1-date strong{font-size:22px!important}
.workout-v1-date span{font-size:15px!important;color:var(--wv-muted)!important}

.workout-v1-today-copy{
  grid-area:copy!important;
  min-width:0!important;
  align-self:center!important;
}
.workout-v1-status{
  display:inline-flex!important;
  width:max-content!important;
  margin-bottom:8px!important;
  padding:5px 9px!important;
  border:1px solid color-mix(in srgb,var(--accent) 48%,transparent)!important;
  border-radius:999px!important;
  color:var(--accent)!important;
  opacity:1!important;
  font-weight:800!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}
.workout-v1-today-copy h2{
  margin:0!important;
  font-size:clamp(26px,3.1vw,38px)!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
}
.workout-v1-today-copy p{
  margin:7px 0 0!important;
  color:var(--wv-muted)!important;
  font-size:14px!important;
}
.workout-v1-empty h2{font-size:clamp(22px,2.8vw,32px)!important}

.workout-v1-start{
  grid-area:start!important;
  align-self:end!important;
  width:100%!important;
  min-width:0!important;
  min-height:58px!important;
  padding:14px 18px!important;
  border-radius:17px!important;
  font-size:17px!important;
  font-weight:850!important;
  justify-content:center!important;
}

.workout-v1-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}
.workout-v1-action{
  min-height:118px!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 22px!important;
  align-items:center!important;
  gap:13px!important;
  padding:18px 20px!important;
  border-radius:22px!important;
  text-align:left!important;
  background:var(--wv-card)!important;
}
.workout-v1-action>svg:first-child{
  width:30px!important;height:30px!important;
  padding:8px!important;
  box-sizing:content-box!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--accent) 7%,transparent)!important;
}
.workout-v1-action strong{
  font-size:19px!important;
  line-height:1.08!important;
}
.workout-v1-action small{
  margin-top:5px!important;
  color:var(--wv-muted)!important;
  opacity:1!important;
  font-size:12px!important;
}

.workout-v1-week{
  padding:18px 20px!important;
  border-radius:22px!important;
  background:var(--wv-card)!important;
}
.workout-v1-section-head{
  margin:0 0 12px!important;
  min-height:32px!important;
}
.workout-v1-section-head strong{font-size:21px!important}
.workout-v1-section-head small{
  margin-top:2px!important;
  color:var(--wv-muted)!important;
  opacity:1!important;
  font-size:11px!important;
}
.workout-v1-section-head button{
  color:var(--text)!important;
  font-size:13px!important;
  font-weight:750!important;
}
.workout-v1 .week-program-strip{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:8px!important;
}
.workout-v1 .week-program-day{
  min-width:0!important;
  min-height:92px!important;
  padding:9px 5px!important;
  border-radius:15px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
}
.workout-v1 .week-program-day span,
.workout-v1 .week-program-day small{font-size:10px!important}
.workout-v1 .week-program-day strong{
  font-size:22px!important;
  line-height:1!important;
}

/* ---------- PAGE 2: active workout ---------- */
body.workout-live-mode .page{
  width:min(100%,980px)!important;
  margin:0 auto!important;
}
body.workout-live-mode .workout-live-title{
  display:grid!important;
  grid-template-columns:minmax(150px,.8fr) minmax(0,1.4fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  padding:14px!important;
  margin-bottom:14px!important;
  border-radius:24px!important;
  background:
    radial-gradient(70% 130% at 55% 50%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 62%),
    var(--wv-card)!important;
}
.workout-live-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.workout-live-copy .eyebrow{
  margin:0 0 2px!important;
  color:var(--accent)!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:850!important;
}
.workout-live-copy h1{margin:0!important}
.workout-live-copy #elapsed{
  font-size:clamp(30px,4vw,48px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
.workout-live-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:stretch!important;
}
.workout-live-actions>button{
  min-height:58px!important;
  border-radius:16px!important;
  font-weight:850!important;
}

.exercise-card-active{
  border-radius:24px!important;
  padding:18px!important;
  background:var(--wv-card)!important;
  overflow:hidden!important;
}
.active-exercise-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:start!important;
  margin-bottom:12px!important;
}
.active-exercise-kicker{
  color:var(--accent)!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.06em!important;
}
.exercise-group-name{
  margin:5px 0 2px!important;
  color:color-mix(in srgb,var(--accent) 82%,var(--text))!important;
  font-weight:750!important;
}
.active-exercise-top h2{
  margin:0!important;
  font-size:clamp(26px,3.6vw,38px)!important;
  line-height:1.03!important;
  letter-spacing:-.025em!important;
}
.active-exercise-top p:last-child{
  margin:6px 0 0!important;
  color:var(--wv-muted)!important;
}
.exercise-edit-actions{
  display:flex!important;
  gap:8px!important;
}
.exercise-edit-actions .icon-btn{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:13px!important;
}
.exercise-edit-actions .icon-btn:last-child{
  color:#ff5b68!important;
  border-color:rgba(255,91,104,.46)!important;
  background:rgba(255,91,104,.08)!important;
}

.active-exercise-body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
}
.active-exercise-media{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid var(--border)!important;
  border-radius:18px!important;
  min-height:250px!important;
  background:#090b0f!important;
}
.active-exercise-media .exercise-motion,
.active-exercise-media .exercise-custom-media{
  min-height:250px!important;
  height:250px!important;
}
.active-exercise-progress{
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  transform:translate(-50%,50%)!important;
  display:flex!important;
  align-items:baseline!important;
  gap:8px!important;
  padding:3px 10px!important;
  border-radius:999px!important;
  background:var(--wv-card)!important;
  z-index:5!important;
}
.active-exercise-progress strong{
  font-size:30px!important;
  line-height:1!important;
}
.active-exercise-progress span{
  color:var(--wv-muted)!important;
  font-size:11px!important;
}

.active-exercise-work{
  padding-top:18px!important;
}
.active-rest-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  padding:0!important;
  border:0!important;
  background:none!important;
}
.active-rest-row .record-trophy{
  display:none!important;
}
.active-rest-combined{
  display:grid!important;
  grid-template-columns:minmax(150px,1.15fr) minmax(155px,1fr) minmax(110px,.72fr)!important;
  gap:8px!important;
  padding:8px!important;
  border:1px solid var(--wv-border)!important;
  border-radius:17px!important;
  background:color-mix(in srgb,var(--panel) 88%,transparent)!important;
}
.active-rest-status{
  min-height:48px!important;
  padding:0 10px!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
.active-rest-status>svg{
  width:28px!important;height:28px!important;
  color:var(--accent)!important;
}
.active-rest-status span{
  font-size:11px!important;
  color:var(--wv-muted)!important;
}
.active-rest-status strong{
  font-size:20px!important;
  line-height:1!important;
}
.rest-stepper{
  height:48px!important;
  display:grid!important;
  grid-template-columns:38px minmax(48px,1fr) 38px!important;
  border:1px solid var(--border)!important;
  border-radius:13px!important;
  overflow:hidden!important;
  background:var(--input)!important;
}
.rest-start{
  height:48px!important;
  border-radius:13px!important;
}

.exercise-card-active .set-grid{
  display:grid!important;
  grid-template-columns:42px minmax(90px,1fr) minmax(90px,1fr) 48px 34px!important;
  gap:8px!important;
  align-items:center!important;
}
.exercise-card-active .set-grid.set-label{
  margin-top:12px!important;
  padding:0 1px 4px!important;
  font-size:10px!important;
}
.exercise-card-active .set-grid input{
  height:50px!important;
  min-width:0!important;
  text-align:center!important;
  border-radius:13px!important;
}
.exercise-card-active .set-grid .check{
  width:48px!important;height:48px!important;
}
.exercise-card-active .set-grid .icon-btn{
  width:34px!important;height:48px!important;
}

.active-exercise-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  margin-top:10px!important;
}
.active-exercise-actions>.text-btn{
  min-height:52px!important;
  border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--accent) 5%,transparent)!important;
  color:var(--accent)!important;
  font-weight:850!important;
}
.exercise-stepper{
  min-width:180px!important;
  display:grid!important;
  grid-template-columns:48px auto 48px!important;
  align-items:center!important;
  gap:7px!important;
}
.exercise-nav-arrow{
  width:48px!important;height:48px!important;
  padding:0!important;
}
.catalog-add-button{
  margin-top:14px!important;
  min-height:58px!important;
  border-radius:17px!important;
  font-weight:800!important;
}

/* Intuitive delete confirmation */
.delete-exercise-confirm{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:6px 12px!important;
  align-items:center!important;
}
.delete-exercise-confirm>svg{
  grid-row:1/3!important;
  width:30px!important;height:30px!important;
  color:#ff5b68!important;
}
.delete-exercise-confirm strong{font-size:18px!important}
.delete-exercise-confirm p{
  margin:0!important;
  color:var(--muted)!important;
}

/* ---------- tablet ---------- */
@media(min-width:721px) and (max-width:1100px){
  .workout-v1-today{
    grid-template-columns:120px minmax(0,1fr)!important;
    grid-template-areas:"date copy" "start start"!important;
    min-height:220px!important;
  }
  .workout-v1-start{max-width:none!important}
  .active-exercise-media,
  .active-exercise-media .exercise-motion,
  .active-exercise-media .exercise-custom-media{
    min-height:300px!important;
    height:300px!important;
  }
}

/* ---------- mobile ---------- */
@media(max-width:720px){
  body:has(.workout-v1),
  body.workout-live-mode{
    overflow-x:hidden!important;
  }

  body:has(.workout-v1) main,
  body.workout-live-mode main{
    min-height:0!important;
  }

  .workout-v1{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"head" "today" "actions" "week"!important;
    gap:9px!important;
    padding:0!important;
  }
  .workout-v1-head{min-height:45px!important}
  .workout-v1-head h1{font-size:clamp(32px,10vw,44px)!important}

  .workout-v1-today{
    grid-template-columns:1fr!important;
    grid-template-areas:"date" "copy" "start"!important;
    min-height:0!important;
    padding:15px!important;
    gap:10px!important;
    border-radius:20px!important;
  }
  .workout-v1-date{
    flex-direction:row!important;
    align-items:baseline!important;
    gap:10px!important;
  }
  .workout-v1-date strong{font-size:18px!important}
  .workout-v1-date span{font-size:14px!important}
  .workout-v1-today-copy h2{font-size:24px!important}
  .workout-v1-today-copy p{font-size:12px!important}
  .workout-v1-start{
    min-height:52px!important;
    font-size:16px!important;
  }

  .workout-v1-actions{
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }
  .workout-v1-action{
    min-height:104px!important;
    grid-template-columns:36px minmax(0,1fr) 18px!important;
    padding:12px!important;
    gap:8px!important;
    border-radius:18px!important;
  }
  .workout-v1-action>svg:first-child{
    width:22px!important;height:22px!important;
    padding:6px!important;
  }
  .workout-v1-action strong{
    font-size:15px!important;
    line-height:1.1!important;
  }
  .workout-v1-action small{
    font-size:10px!important;
    line-height:1.2!important;
  }

  .workout-v1-week{
    padding:12px!important;
    border-radius:18px!important;
  }
  .workout-v1-section-head{margin-bottom:9px!important}
  .workout-v1-section-head strong{font-size:18px!important}
  .workout-v1-section-head small{display:none!important}
  .workout-v1-section-head button{font-size:12px!important}
  .workout-v1 .week-program-strip{gap:4px!important}
  .workout-v1 .week-program-day{
    min-height:84px!important;
    padding:6px 2px!important;
    border-radius:12px!important;
  }
  .workout-v1 .week-program-day span,
  .workout-v1 .week-program-day small{font-size:8px!important}
  .workout-v1 .week-program-day strong{font-size:18px!important}

  body.workout-live-mode .page{
    width:100%!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.workout-live-mode .workout-live-title{
    grid-template-columns:minmax(0,.95fr) minmax(0,1.3fr)!important;
    padding:9px!important;
    gap:7px!important;
    margin-bottom:9px!important;
    border-radius:18px!important;
  }
  .workout-live-copy .eyebrow{font-size:9px!important}
  .workout-live-copy #elapsed{font-size:30px!important}
  .workout-live-actions{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px!important;
    gap:5px!important;
  }
  .workout-live-actions>button{
    min-height:46px!important;
    padding:8px!important;
    font-size:12px!important;
    border-radius:12px!important;
  }
  .workout-live-actions .live-delete{
    min-width:38px!important;width:38px!important;
  }

  .exercise-card-active{
    padding:12px!important;
    border-radius:19px!important;
  }
  .active-exercise-top{
    margin-bottom:9px!important;
    gap:8px!important;
  }
  .active-exercise-kicker{font-size:9px!important}
  .exercise-group-name{font-size:12px!important}
  .active-exercise-top h2{font-size:27px!important}
  .active-exercise-top p:last-child{font-size:11px!important}
  .exercise-edit-actions{gap:5px!important}
  .exercise-edit-actions .icon-btn{
    width:39px!important;height:39px!important;min-width:39px!important;
  }

  .active-exercise-media{
    min-height:230px!important;
    border-radius:15px!important;
  }
  .active-exercise-media .exercise-motion,
  .active-exercise-media .exercise-custom-media{
    min-height:230px!important;
    height:230px!important;
  }
  .active-exercise-progress strong{font-size:27px!important}
  .active-exercise-progress span{font-size:9px!important}

  .active-exercise-work{padding-top:17px!important}
  .active-rest-combined{
    grid-template-columns:minmax(84px,.9fr) minmax(112px,1fr) 78px!important;
    gap:5px!important;
    padding:6px!important;
    border-radius:14px!important;
  }
  .active-rest-status{
    min-height:42px!important;
    padding:0 4px!important;
    gap:5px!important;
  }
  .active-rest-status>svg{width:20px!important;height:20px!important}
  .active-rest-status span{font-size:8px!important}
  .active-rest-status strong{font-size:15px!important}
  .rest-stepper{
    height:42px!important;
    grid-template-columns:30px minmax(40px,1fr) 30px!important;
    border-radius:11px!important;
  }
  .rest-stepper>strong{font-size:12px!important}
  .rest-start{
    height:42px!important;
    padding:0 6px!important;
    font-size:12px!important;
    border-radius:11px!important;
  }

  .exercise-card-active .set-grid{
    grid-template-columns:24px minmax(62px,1fr) minmax(62px,1fr) 40px 28px!important;
    gap:4px!important;
  }
  .exercise-card-active .set-grid.set-label{
    font-size:8px!important;
    margin-top:10px!important;
  }
  .exercise-card-active .set-grid input{
    height:46px!important;
    border-radius:11px!important;
  }
  .exercise-card-active .set-grid .check{
    width:40px!important;height:40px!important;
  }
  .exercise-card-active .set-grid .icon-btn{
    width:28px!important;height:40px!important;
  }

  .active-exercise-actions{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  .active-exercise-actions>.text-btn{min-height:48px!important}
  .exercise-stepper{
    min-width:132px!important;
    grid-template-columns:38px auto 38px!important;
    gap:4px!important;
  }
  .exercise-nav-arrow{
    width:38px!important;height:46px!important;
  }
  .catalog-add-button{
    min-height:54px!important;
    margin-top:10px!important;
    border-radius:15px!important;
    font-size:14px!important;
  }

  body.workout-live-mode .note-label,
  body.workout-live-mode .save-hint{
    display:none!important;
  }
}

/* very small / short phones */
@media(max-width:390px){
  .workout-v1-action small{display:none!important}
  .workout-v1-action{min-height:92px!important}
  .workout-v1 .week-program-day{min-height:74px!important}
  .active-exercise-media,
  .active-exercise-media .exercise-motion,
  .active-exercise-media .exercise-custom-media{
    min-height:200px!important;
    height:200px!important;
  }
  .active-exercise-top h2{font-size:24px!important}
  .active-rest-combined{
    grid-template-columns:minmax(72px,.85fr) minmax(96px,1fr) 64px!important;
  }
  .rest-start{font-size:0!important}
  .rest-start svg{width:19px!important;height:19px!important}
  .exercise-card-active .set-grid{
    grid-template-columns:22px minmax(56px,1fr) minmax(56px,1fr) 36px 24px!important;
  }
}


/* Iteration 75 — match approved workout reference and fix planned-workout deletion. */

/* ===== Landing card ===== */
.workout-v1-today{
  position:relative!important;
}
.workout-v1-today-tools{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:4!important;
}
.workout-v1-delete-plan{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:12px!important;
  color:#ff5b68!important;
  border:1px solid rgba(255,91,104,.42)!important;
  background:rgba(255,91,104,.08)!important;
}
.workout-v1-delete-plan svg{width:19px!important;height:19px!important}

/* ===== Active workout — approved hierarchy ===== */
body.workout-live-mode .exercise-card-active{
  padding:16px!important;
}
body.workout-live-mode .active-exercise-body{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
}
body.workout-live-mode .active-exercise-media{
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:16/7!important;
  border-radius:17px!important;
  overflow:hidden!important;
  background:#090b0f!important;
}
body.workout-live-mode .active-exercise-media .exercise-motion,
body.workout-live-mode .active-exercise-media .exercise-custom-media{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}
body.workout-live-mode .active-exercise-media img,
body.workout-live-mode .active-exercise-media video{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* Progress is a clean row BELOW media — never overlaying controls. */
body.workout-live-mode .active-exercise-progress{
  position:static!important;
  transform:none!important;
  left:auto!important;
  bottom:auto!important;
  width:100%!important;
  margin:8px 0 10px!important;
  padding:0!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:9px!important;
  background:transparent!important;
  border-radius:0!important;
  z-index:auto!important;
}
body.workout-live-mode .active-exercise-progress strong{
  font-size:31px!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
body.workout-live-mode .active-exercise-progress span{
  font-size:11px!important;
  color:var(--wv-muted)!important;
  text-transform:none!important;
}

/* One horizontal rest/timer strip matching the reference. */
body.workout-live-mode .active-exercise-work{
  padding-top:0!important;
}
body.workout-live-mode .active-rest-row{
  display:block!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.workout-live-mode .active-rest-combined{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(130px,1.15fr) minmax(150px,1fr) minmax(100px,.72fr)!important;
  gap:8px!important;
  align-items:center!important;
  padding:8px!important;
  border:1px solid var(--wv-border)!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--panel) 90%,transparent)!important;
}
body.workout-live-mode .active-rest-status{
  min-height:48px!important;
}
body.workout-live-mode .rest-stepper,
body.workout-live-mode .rest-start{
  height:48px!important;
}

/* Sets: aligned, no overlap with progress/nav. */
body.workout-live-mode .set-grid{
  width:100%!important;
}
body.workout-live-mode .active-exercise-actions{
  margin-top:10px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
}
body.workout-live-mode .exercise-stepper{
  min-width:150px!important;
}

/* Keep add-from-catalog visually separate and stable. */
body.workout-live-mode .catalog-add-button{
  width:100%!important;
  margin:12px 0 0!important;
}

/* ===== Mobile exact-fit ===== */
@media(max-width:720px){
  .workout-v1-today-tools{
    top:10px!important;
    right:10px!important;
  }
  .workout-v1-delete-plan{
    width:38px!important;height:38px!important;min-width:38px!important;
  }

  body.workout-live-mode .page{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.workout-live-mode .exercise-card-active{
    padding:11px!important;
    border-radius:18px!important;
  }
  body.workout-live-mode .active-exercise-top{
    margin-bottom:8px!important;
  }
  body.workout-live-mode .active-exercise-top h2{
    font-size:26px!important;
    line-height:1.02!important;
  }
  body.workout-live-mode .active-exercise-media{
    aspect-ratio:2.2/1!important;
    border-radius:14px!important;
  }
  body.workout-live-mode .active-exercise-progress{
    margin:7px 0 9px!important;
  }
  body.workout-live-mode .active-exercise-progress strong{
    font-size:28px!important;
  }
  body.workout-live-mode .active-exercise-progress span{
    font-size:9px!important;
  }
  body.workout-live-mode .active-rest-combined{
    grid-template-columns:minmax(82px,.88fr) minmax(108px,1fr) 76px!important;
    gap:5px!important;
    padding:6px!important;
    border-radius:13px!important;
  }
  body.workout-live-mode .active-rest-status{
    min-height:42px!important;
    padding:0 3px!important;
  }
  body.workout-live-mode .active-rest-status>svg{
    width:19px!important;height:19px!important;
  }
  body.workout-live-mode .active-rest-status span{font-size:8px!important}
  body.workout-live-mode .active-rest-status strong{font-size:14px!important}
  body.workout-live-mode .rest-stepper{
    height:42px!important;
    grid-template-columns:28px minmax(38px,1fr) 28px!important;
  }
  body.workout-live-mode .rest-start{
    height:42px!important;
    padding:0 6px!important;
    font-size:11px!important;
  }

  body.workout-live-mode .set-grid{
    grid-template-columns:24px minmax(62px,1fr) minmax(62px,1fr) 40px 26px!important;
    gap:4px!important;
  }
  body.workout-live-mode .set-grid.set-label{
    font-size:8px!important;
    margin-top:10px!important;
  }
  body.workout-live-mode .set-grid input{
    height:46px!important;
    min-width:0!important;
  }
  body.workout-live-mode .set-grid .check{
    width:40px!important;height:40px!important;
  }
  body.workout-live-mode .set-grid .icon-btn{
    width:26px!important;height:40px!important;
  }
  body.workout-live-mode .active-exercise-actions{
    grid-template-columns:minmax(0,1fr) 126px!important;
    gap:6px!important;
  }
  body.workout-live-mode .active-exercise-actions>.text-btn{
    min-height:48px!important;
  }
  body.workout-live-mode .exercise-stepper{
    min-width:126px!important;
    grid-template-columns:36px auto 36px!important;
    gap:3px!important;
  }
  body.workout-live-mode .exercise-nav-arrow{
    width:36px!important;height:46px!important;
  }
  body.workout-live-mode .catalog-add-button{
    min-height:52px!important;
    font-size:13px!important;
    border-radius:14px!important;
  }
}

@media(max-width:390px){
  body.workout-live-mode .active-exercise-top h2{font-size:23px!important}
  body.workout-live-mode .active-exercise-media{aspect-ratio:2/1!important}
  body.workout-live-mode .active-rest-combined{
    grid-template-columns:minmax(70px,.8fr) minmax(96px,1fr) 62px!important;
  }
  body.workout-live-mode .rest-start{font-size:0!important}
  body.workout-live-mode .rest-start svg{width:18px!important;height:18px!important}
  body.workout-live-mode .set-grid{
    grid-template-columns:22px minmax(54px,1fr) minmax(54px,1fr) 36px 24px!important;
  }
  body.workout-live-mode .active-exercise-actions{
    grid-template-columns:minmax(0,1fr) 112px!important;
  }
  body.workout-live-mode .exercise-stepper{
    min-width:112px!important;
    grid-template-columns:32px auto 32px!important;
  }
}
