/* UX review v18: legibility, predictable hierarchy and zero horizontal overflow. */
.day-btn .type{font-size:11px;letter-spacing:.08em}
.progress-meta{font-size:13px;line-height:1.45}
.muscle-head span{font-size:12px}
.tag{font-size:11px;line-height:1.15}
.exercise-meta{gap:7px}
.exercise-summary{min-height:82px}
.exercise-title{font-size:22px}

.catchup-button{
  min-height:46px;
  margin-bottom:22px;
  border-style:dashed!important;
  background:#151113!important;
  color:#d6c8cd!important;
  box-shadow:none!important;
}
.catchup-button .ui-icon{color:#ff6d82}

.exercise-sheet{
  overflow-x:hidden!important;
  scrollbar-gutter:stable;
}
.exercise-sheet #sheetLogger,
.exercise-sheet .set-logger,
.exercise-sheet .set-log,
.exercise-sheet .set-log>*,
.exercise-sheet .series-main-fields,
.exercise-sheet .series-counter,
.exercise-sheet .counter-main,
.exercise-sheet .reps-drag,
.exercise-sheet .series-effort,
.exercise-sheet .series-more{
  width:100%;
  min-width:0;
  max-width:100%;
}
.exercise-sheet .set-log-summary{
  width:auto;
  min-width:0;
  overflow-wrap:anywhere;
}
.exercise-sheet .counter-main>div,
.exercise-sheet .counter-main input,
.exercise-sheet .reps-drag>div,
.exercise-sheet .reps-drag>input,
.exercise-sheet .reps-quick{
  min-width:0;
  max-width:100%;
}
.exercise-sheet .set-log{overflow:hidden;padding-bottom:18px}
.exercise-sheet .set-run{bottom:8px;margin-top:14px}
.exercise-sheet .set-history-reset{margin-bottom:2px}

.sheet-step{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:2px 2px 0;
  color:#f6e8ed;
}
.sheet-step span{font-size:14px;font-weight:800}
.sheet-step small{color:#9c8d94;font-size:12px}
.sheet-tabs{padding-top:10px}
.sheet-tabs button{position:relative}
.sheet-tabs button[aria-pressed="true"]::after{
  position:absolute;
  right:7px;
  bottom:5px;
  left:7px;
  height:2px;
  border-radius:2px;
  background:#ff8da0;
  content:"";
}

.series-type-help{padding-left:10px;border-left:2px solid #6f3340}
.series-counter>label,.effort-title{font-weight:700}
.reps-quick{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))}
.reps-quick button{min-width:0!important}
.reps-type{min-width:0;padding:0 4px!important;justify-content:center}
.reps-type .ui-icon{width:17px;height:17px;flex:0 0 auto}
.reps-type input{width:30px!important}
.exercise-sheet .effort-buttons{
  margin-right:-2px;
  padding-bottom:12px;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
.exercise-sheet .effort-buttons::after{content:"";flex:0 0 1px}

.set-run,.set-history-reset{display:flex!important;align-items:center;justify-content:center;gap:8px}
.set-run .ui-icon,.set-history-reset .ui-icon{flex:0 0 auto}

@media(max-width:420px){
  .topbar{padding-right:12px;padding-left:12px}
  .brand{gap:8px}
  .app-logo{width:44px!important;height:44px!important}
  .brand-copy strong{font-size:18px}
  .week-btn{padding:0 9px;font-size:15px}
  .days{gap:5px;padding-right:12px;padding-left:12px}
  main{padding-right:12px;padding-left:12px}
  .session-live{padding:14px}
  .athlete-card{grid-template-columns:1fr;gap:8px}
  .athlete-stats{font-size:14px}
  .exercise-sheet .set-log{padding:13px 11px 18px}
  .exercise-sheet .counter-main{padding-right:4px;padding-left:4px}
  .exercise-sheet .counter-main button{width:40px;flex-basis:40px}
  .exercise-sheet .series-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
  .exercise-sheet .series-presets button{min-width:0}
  .sheet-step small{display:none}
}

@media(max-width:350px){
  .brand-copy span{display:none}
  .sheet-tools{display:grid;grid-template-columns:1fr 1fr}
  .reps-quick{grid-template-columns:repeat(3,1fr)!important}
}
