/* coach.css — parse-coaching page. Theme vars + chrome come from report.css. */
/* Root container sizing: report.css/#report-root and ni6.css/#ni6-root each set
   their own max-width+padding; #coach-root has no equivalent in report.css, so
   it's set here to match that convention (single-column, narrower than both). */
#coach-root { max-width: 900px; margin: 0 auto; padding: 18px 20px 60px; }
.co-form { display: flex; gap: 8px; flex-wrap: wrap; margin: 16px 0; }
.co-form input { background: var(--card-2); border: 1px solid var(--line);
  color: var(--ink); padding: 8px 10px; border-radius: 6px; font-family: var(--font-gob); }
#co-coach-banner:not(:empty) { margin-bottom: 14px; }
#co-cards { display: flex; flex-direction: column; gap: 14px; }
/* waterfall */
.co-wf .wf-name { fill: var(--body); font: 12px var(--font-gob); }
.co-wf .wf-val  { fill: var(--body); font: 11px var(--font-mono); }
.co-wf .wf-pos  { fill: var(--green); } .co-wf .wf-neg { fill: var(--ember); }
.co-wf .wf-axis { stroke: var(--line); stroke-width: 1; }
.co-wf-toggle { display: flex; gap: 6px; margin-bottom: 8px; }
/* band strips */
.co-band-row { display: grid; grid-template-columns: 110px auto 1fr; gap: 10px;
  align-items: center; padding: 3px 0; }
.co-band-lbl { color: var(--dim); font: 12px var(--font-gob); }
.co-band-you { fill: var(--gold-bright); stroke: #000; stroke-width: 0.5; }
.co-band-rank { fill: var(--dim); cursor: pointer; }
.co-band-rank:hover { fill: var(--gold); }
.co-band-nums { color: var(--body); font: 11px var(--font-mono); }
/* inline compare bar */
.co-ibar .ib-ref { fill: var(--dim); } .co-ibar .ib-you { fill: var(--gold); }
.co-note { color: var(--dim); font: italic 12px var(--font-read); margin-top: 6px; }
/* headline + band spacing (Task 10) */
.co-headline { font-size: 16px; }
.co-bands { margin-top: 8px; }
/* crit / drivers tables — mirrors report.css's table.rp, own classes since the
   renderers don't share report.js's table markup convention */
.co-crit, .co-drivers { border-collapse: collapse; width: 100%; font-size: 13.5px; }
.co-crit th, .co-drivers th {
  font-family: var(--font-gob); font-weight: 500; font-size: 10.5px;
  letter-spacing: 0.13em; text-transform: uppercase; color: var(--dim);
  padding: 5px 10px; text-align: left; white-space: nowrap;
  border-bottom: 1px solid var(--line);
}
.co-crit td, .co-drivers td { padding: 6px 10px; border-bottom: 1px solid var(--hair); }
.co-crit tbody tr:last-child td, .co-drivers tbody tr:last-child td { border-bottom: 0; }
.co-crit tbody tr:hover td, .co-drivers tbody tr:hover td { background: rgba(216,167,62,0.045); }
/* re-anchor form (band card) */
.co-reanchor { display: flex; gap: 8px; margin-top: 8px; }
.co-reanchor input { background: var(--card-2); border: 1px solid var(--line);
  color: var(--ink); padding: 6px 10px; border-radius: 6px; font-family: var(--font-gob); flex: 1; }
/* per-card question chips (Task 12): small, inline, unobtrusive */
.co-chip { display: inline-block; margin-top: 8px; padding: 4px 10px; font-size: 12px; }
/* uptime timeline (Task 14): dig button + per-player lane strips */
.co-dig { margin-top: 4px; }
.co-tl-player { margin-bottom: 10px; }
.co-tl-lbl { color: var(--dim); font: 11px var(--font-gob); text-transform: uppercase;
  letter-spacing: 0.1em; margin-bottom: 2px; }
.co-tl .tl-name { fill: var(--body); font: 12px var(--font-gob); }
.co-tl .tl-track { fill: var(--card-2); stroke: var(--hair); stroke-width: 0.5; }
.co-tl .tl-seg { fill: var(--gold); }
.co-tl .tl-pct { fill: var(--body); font: 11px var(--font-mono); }
/* per-card explainer line (one sentence under the title) */
.co-hint { color: var(--dim); font: italic 12.5px var(--font-read); margin-bottom: 10px; }
/* consumables & buffs — grouped chip grid (replaces the comma run-ons) */
.co-cons-group { margin-bottom: 12px; }
.co-cons-title { font-family: var(--font-gob); font-weight: 500; font-size: 10.5px;
  letter-spacing: 0.13em; text-transform: uppercase; color: var(--dim);
  border-bottom: 1px solid var(--line); padding-bottom: 4px; margin-bottom: 6px; }
.co-cons-row { display: grid; grid-template-columns: 105px 1fr; gap: 8px;
  align-items: start; padding: 3px 0; }
.co-cons-lbl { color: var(--dim); font: 12px var(--font-gob); padding-top: 3px; }
.co-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.co-tag { display: inline-block; padding: 2px 9px; border-radius: 10px;
  font: 12.5px var(--font-read); color: var(--body);
  background: var(--card-2); border: 1px solid var(--line); }
.co-tag-miss { border-color: var(--ember); }
.co-tag-extra { border-color: var(--green); }
