/* Refinement release: retain graphite/cyan, reduce workout friction. */
main { margin-bottom:0; padding-bottom:calc(var(--dock-reserve,100px) + 32px); }
.page-heading { margin-bottom:20px; }
.page-heading h1 { font-size:clamp(24px,2.6vw,34px); }
.page-heading p:not(.eyebrow) { font-size:14px; max-width:65ch; }
.status-copy { display:flex; flex-direction:column; align-items:flex-start; gap:3px; }
#sync-detail { font-size:10px; color:var(--muted); font-weight:400; }
button:disabled, input:disabled, select:disabled, textarea:disabled { cursor:not-allowed; opacity:.55; }
.inline-details>summary { cursor:pointer; min-height:40px; padding-block:10px; }
.inline-details>summary:focus-visible { outline:2px solid var(--cyan); outline-offset:3px; }
.saved-strip small { display:block; color:var(--muted); margin-top:4px; }
.rest-layout { display:grid; grid-template-areas:'timer' 'effort' 'next'; gap:16px; }
.rest-layout .rest-panel { grid-area:timer; }
.rest-layout .effort-panel { grid-area:effort; margin:0; }
.rest-layout .next-panel { grid-area:next; margin:0; }
.rest-layout.rest-finished { grid-template-areas:'timer' 'next' 'effort'; }
.rest-finished .rest-panel { display:flex; align-items:center; justify-content:space-between; padding:10px 14px; gap:12px; }
.rest-finished .rest-heading { margin:0; text-align:left; gap:10px; }
.rest-finished .rest-heading>span:last-child { display:none; }
.rest-finished .rest-clock { display:none; }
.rest-finished .rest-actions { margin:0; }
.rest-finished .rest-actions button { min-height:40px; padding:7px 12px; }
.rest-finished .next-panel { border-color:var(--cyan); background:var(--cyan-soft); }
.next-panel strong { display:block; font-size:18px; line-height:1.35; }
.next-panel .primary { flex-shrink:0; min-height:48px; }
.effort-buttons.full-scale { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.effort-buttons.full-scale button { min-width:0; min-height:47px; font-size:22px; }
.effort-entry { align-items:end; }
.effort-entry input { min-height:44px; }
.timer-details { margin-top:10px; }
.duration-entry { padding:20px; }
.duration-entry input { font-size:42px; line-height:1.2; text-align:center; width:100%; min-height:78px; font-variant-numeric:tabular-nums; }
.duration-entry label { display:block; font-weight:600; }
.duration-entry small { display:block; color:var(--muted); font-size:12px; padding-top:9px; }
.bodyweight-entry { grid-template-columns:minmax(0,1fr); }
.today-sets th, .today-sets td { font-size:12px; white-space:normal; }
.today-sets td:nth-child(2) { color:var(--muted); }
.set-track .set-chip { min-width:140px; }
.set-index { font-size:10px; }
.today-outline { margin:12px 0 0; padding-left:24px; }
.today-outline li { padding:10px 4px; border-bottom:1px solid var(--line); }
.today-outline small { display:block; margin-top:4px; color:var(--muted); }
.today-outline p { margin-top:4px; font-size:12px; }
.save-facts, .timing-facts { display:grid; grid-template-columns:minmax(150px,1fr) minmax(0,1.5fr); gap:10px 20px; margin:14px 0 20px; }
.save-facts dt,.timing-facts dt { color:var(--muted); font-size:13px; }
.save-facts dd,.timing-facts dd { margin:0; font-size:13px; }
.source-provenance code { display:block; overflow-wrap:anywhere; white-space:normal; }
.focused-set-list .session-editor-set { padding:16px 0; }
.settings-actions { flex-wrap:wrap; }
.settings-section ol { padding-left:24px; }
.mobile-exercise-actions { display:none; }
@media(max-width:1000px) {
  .train-grid { grid-template-columns:170px minmax(0,1fr); }
  .train-aside { display:none; }
  .mobile-exercise-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
  .mobile-exercise-actions button { min-height:44px; }
}
@media(max-width:760px) {
  main { padding-bottom:calc(var(--dock-reserve,100px) + 95px + env(safe-area-inset-bottom)); }
  #sync-detail { display:none; }
  .train-grid { display:block; }
  .train-main h2 { font-size:25px; }
  .exercise-meta { font-size:12px; }
  .rest-panel { padding:18px; }
  .rest-clock { font-size:64px; padding:14px 0; }
  .next-panel { flex-direction:column; align-items:stretch; gap:12px; padding:15px; }
  .next-panel .primary { width:100%; }
  .effort-panel { padding:16px; }
  .effort-panel h3 { font-size:18px; }
  .effort-buttons.full-scale button { min-height:46px; font-size:21px; }
  .effort-entry { grid-template-columns:minmax(0,1fr) auto; }
  .effort-entry button { min-height:44px; }
  .form-grid { min-width:0; }
  .save-facts,.timing-facts { grid-template-columns:1fr; gap:4px; }
  .save-facts dd,.timing-facts dd { margin-bottom:10px; }
  .duration-entry input { font-size:40px; }
  .dialog-body pre { font-size:11px; }
}
