/* Workout format picker, per-format config panels, and in-session tracking. */

/* --- format tabs --------------------------------------------------------- */
.format-picker{margin-top:26px}
.format-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px}
.format-tab{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:8px 16px;font:11px 'DM Mono';letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .16s ease;white-space:nowrap}
.format-tab:hover{color:var(--paper);border-color:#3c4640}
.format-tab.is-active{background:var(--acid);border-color:var(--acid);color:#101313;font-weight:500}
.format-description{margin:14px 0 0;color:var(--muted);font:13px/1.6 'Space Grotesk';max-width:70ch}

/* --- shared config bits -------------------------------------------------- */
.format-panel[hidden]{display:none}
.movement-field{display:block;margin-top:18px}
.movement-field small,label>small{color:var(--muted);font:10px 'DM Mono';letter-spacing:.5px;text-transform:none;margin-left:6px}
/* Hints inside a compact field sit on their own line rather than wrapping into the label. */
.field-row label>small,.format-panel>label>small{display:block;margin:3px 0 0}
.movement-field code{background:#20272400;color:var(--acid);font:10px 'DM Mono'}
.movement-field textarea,#customNotes{width:100%;margin-top:8px;background:#1b211e;border:1px solid var(--line);border-radius:10px;color:var(--paper);padding:12px 14px;font:13px/1.7 'DM Mono';resize:vertical}
.movement-field textarea:focus{outline:none;border-color:var(--acid)}
.ladder-range{gap:10px}
.ladder-preview{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding:14px 16px;background:#1b211e;border:1px solid var(--line);border-radius:10px}
.ladder-preview span{font:10px 'DM Mono';letter-spacing:1.5px;color:var(--muted)}
.ladder-preview strong{font:15px 'DM Mono';color:var(--acid);font-weight:400;text-align:right;margin-left:14px}

/* session notes — shared across formats, stored on the log */
.session-notes-panel{margin-top:14px}
.session-notes-panel .exercise-header{margin-top:0}
.session-notes-panel .exercise-header small{color:var(--muted);font:10px 'DM Mono';letter-spacing:.5px}
.session-notes-panel .movement-field{margin-top:12px}
.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}
.log-note{display:block;color:var(--muted);font:10px 'DM Mono';margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:34ch}

/* saved workouts now sit below the grid so every format can reach them */
.shared-saved{margin-top:14px}
.shared-saved .exercise-header{margin-top:0}

/* --- in-session tracking ------------------------------------------------- */
.session-track{width:100%;max-width:520px;margin:26px auto 0}
.session-track[hidden]{display:none}
.track-tally{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-bottom:14px}
.track-tally span{font:10px 'DM Mono';letter-spacing:2px;color:var(--muted)}
.track-tally strong{font:44px 'DM Mono';font-weight:400;color:var(--acid);line-height:1}
.track-button{width:100%;background:var(--acid);color:#101313;border:none;border-radius:12px;padding:20px;font:15px 'Space Grotesk';font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:transform .1s ease,filter .16s ease}
.track-button:hover{filter:brightness(1.08)}
.track-button:active{transform:scale(.985)}
.track-splits{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;margin-top:14px;max-height:104px;overflow:auto}
.track-splits div{display:flex;justify-content:space-between;gap:8px;padding:6px 9px;background:#1b211e;border-radius:7px;font:11px 'DM Mono'}
.track-splits span{color:var(--muted)}
.track-splits strong{color:var(--paper);font-weight:400}

/* chipper checklist */
.track-list{display:flex;flex-direction:column;gap:6px;max-height:290px;overflow:auto}
.track-item{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#1b211e;border:1px solid var(--line);border-radius:10px;padding:14px 16px;color:var(--paper);cursor:pointer;transition:all .16s ease}
.track-item:hover{border-color:#3c4640}
.track-item span{font:11px 'DM Mono';color:var(--muted);min-width:22px}
.track-item strong{font:14px 'Space Grotesk';font-weight:500}
.track-item.is-done{opacity:.45;border-color:var(--acid)}
.track-item.is-done span{color:var(--acid)}
.track-item.is-done strong{text-decoration:line-through}

@media(max-width:850px){
  .format-tabs{gap:5px}
  .format-tab{padding:7px 12px;font-size:10px}
  .session-track{margin-top:18px}
  .track-tally strong{font-size:34px}
  .track-button{padding:17px}
  .track-list{max-height:210px}
}
