/* players-refined.css — the Players page in the refined editorial register.
   Same design language as match-refined / team-refined: warm paper, Source Serif
   body, Archivo names + labels, quiet hairlines, green accent. Discovery first —
   the breakout board leads, injuries follow, the races sit as a light third,
   and a small static band of household faces closes it out.
   No quant register, no external calls. Archivo + Source Serif only. */

.pr-wrap{ max-width:1080px; margin:0 auto; padding:0 32px 96px; }

/* ---------- hero ---------- */
.pr-hero{ padding:44px 0 30px; border-bottom:1px solid #e6e1d4; }
.pr-kicker{ font-family:var(--font-text); font-size:12px; font-weight:600; text-transform:uppercase;
  letter-spacing:.16em; color:var(--accent-strong); margin:0 0 18px; }
.pr-title{ font-family:var(--font-serif); font-weight:600; font-size:clamp(32px,5.2vw,52px);
  line-height:1.08; letter-spacing:-.018em; color:var(--ink); margin:0 0 20px; max-width:18ch; }
.pr-standfirst{ font-family:var(--font-serif); font-weight:400; font-size:clamp(18px,2.2vw,22px);
  line-height:1.55; color:#6b6759; margin:0; max-width:60ch; }

/* ---------- sections ---------- */
.pr-section{ padding-top:40px; }
.pr-section-head{ margin-bottom:22px; }
.pr-h{ font-family:var(--font-serif); font-weight:700; font-size:clamp(24px,3vw,30px); line-height:1.18;
  letter-spacing:-.012em; color:var(--ink); margin:0 0 10px; }
.pr-sub{ font-family:var(--font-serif); font-size:17px; line-height:1.6; color:#6b6759; margin:0; max-width:62ch; }

/* ---------- breakout board (the lead) ---------- */
.pr-break-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:16px; }
.pr-break{ border:1px solid #e6e1d4; border-radius:14px; background:#fff;
  box-shadow:0 1px 0 rgba(0,0,0,.02); overflow:hidden; transition:border-color .12s ease, box-shadow .12s ease; }
.pr-break[open]{ border-color:#d8d2c2; box-shadow:0 6px 22px -14px rgba(30,28,22,.32); }
.pr-break-sum{ list-style:none; cursor:pointer; padding:18px 18px 16px; position:relative; }
.pr-break-sum::-webkit-details-marker{ display:none; }
.pr-break-top{ display:flex; align-items:center; gap:10px; }
.pr-break-top .fi{ width:26px; height:26px; border-radius:50%; background-size:cover; background-position:center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); flex:none; }
.pr-break-name{ font-family:var(--font-text); font-weight:700; font-size:17px; letter-spacing:-.01em;
  color:var(--ink); }
.pr-break-age{ font-family:var(--font-text); font-weight:600; font-size:11px; color:#a8a292;
  border:1px solid #eee9df; border-radius:999px; padding:2px 8px; margin-left:auto; }
.pr-break-arch{ font-family:var(--font-text); font-size:12.5px; color:#86826f; margin:9px 0 0; line-height:1.45; }
.pr-break-arch .pr-dot{ color:#c9c2b0; }
.pr-break-hook{ font-family:var(--font-serif); font-size:15.5px; line-height:1.55; color:#3a382f;
  margin:11px 0 0; }
.pr-break-cue{ display:inline-block; font-family:var(--font-text); font-size:11.5px; font-weight:600;
  letter-spacing:.02em; color:var(--accent-strong); margin:13px 0 0; }
.pr-break-cue::before{ content:"+ "; color:#a8a292; }
.pr-break[open] .pr-break-cue{ color:#86826f; }
.pr-break[open] .pr-break-cue::before{ content:"\2013 "; }

.pr-scout{ padding:2px 18px 18px; border-top:1px solid #f1ede3; margin-top:2px; }
.pr-scout-row{ margin:14px 0 0; }
.pr-scout-label{ font-family:var(--font-text); font-size:10.5px; font-weight:700; text-transform:uppercase;
  letter-spacing:.1em; color:#a8a292; }
.pr-scout-label.pr-up{ color:var(--accent-strong); }
.pr-scout-label.pr-down{ color:#9a6510; }
.pr-scout-list{ list-style:none; margin:8px 0 0; padding:0; }
.pr-scout-list li{ font-family:var(--font-serif); font-size:15px; line-height:1.5; color:#3a382f;
  padding-left:16px; position:relative; margin:0 0 6px; }
.pr-scout-list li::before{ content:""; position:absolute; left:0; top:.62em; width:5px; height:5px;
  border-radius:50%; background:#cfc8b6; }
.pr-scout-comp{ font-family:var(--font-serif); font-size:14.5px; line-height:1.55; color:#6b6759;
  margin:16px 0 0; padding-top:13px; border-top:1px solid #f1ede3; }
.pr-scout-comp .pr-scout-label{ display:block; margin-bottom:4px; }
.pr-scout-link{ display:inline-block; font-family:var(--font-text); font-size:12.5px; font-weight:600;
  color:var(--accent-strong); text-decoration:none; margin-top:16px; }
.pr-scout-link:hover{ text-decoration:underline; }

/* ---------- injury watch ---------- */
.pr-injury{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.pr-injury-col{ min-width:0; }
.pr-injury-h{ font-family:var(--font-text); font-size:11px; font-weight:700; text-transform:uppercase;
  letter-spacing:.1em; padding:0 0 9px; margin:0 0 4px; border-bottom:2px solid; }
.pr-inj-out{ color:#9a2f2f; border-color:rgba(154,47,47,.4); }
.pr-inj-doubt{ color:#9a6510; border-color:rgba(154,101,16,.4); }
.pr-inj-monitor{ color:#6b6759; border-color:#e6e1d4; }
.pr-injury-list{ list-style:none; margin:0; padding:0; }
.pr-injury-row{ padding:11px 0; border-bottom:1px solid #f1ede3; }
.pr-injury-row:last-child{ border-bottom:0; }
.pr-injury-name{ display:flex; align-items:center; gap:8px; font-family:var(--font-text); font-weight:700;
  font-size:14.5px; color:var(--ink); letter-spacing:-.01em; }
.pr-injury-name .fi{ width:18px; height:18px; border-radius:50%; background-size:cover; background-position:center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); flex:none; }
.pr-injury-issue{ display:block; font-family:var(--font-serif); font-size:14px; line-height:1.45;
  color:#6b6759; margin:4px 0 0; }
.pr-injury-empty{ font-family:var(--font-serif); font-style:italic; font-size:14.5px; color:#a8a292; margin:11px 0 0; }

/* ---------- races (light third) ---------- */
.pr-races{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.pr-race{ border:1px solid #e6e1d4; border-radius:14px; background:#fff; padding:20px 20px 22px;
  box-shadow:0 1px 0 rgba(0,0,0,.02); }
.pr-race-h{ font-family:var(--font-serif); font-weight:700; font-size:19px; letter-spacing:-.01em;
  color:var(--ink); margin:0 0 6px; }
.pr-race-note{ font-family:var(--font-serif); font-style:italic; font-size:14px; color:#a8a292; margin:0 0 16px; }
.pr-race-label{ font-family:var(--font-text); font-size:10.5px; font-weight:700; text-transform:uppercase;
  letter-spacing:.1em; color:#a8a292; margin:16px 0 9px; }
.pr-race-label:first-of-type{ margin-top:0; }
.pr-race-names{ list-style:none; margin:0; padding:0; }
.pr-race-names li{ display:flex; align-items:center; gap:9px; font-family:var(--font-text); font-weight:600;
  font-size:14.5px; color:var(--ink); padding:7px 0; border-bottom:1px solid #f4f0e7; }
.pr-race-names li:last-child{ border-bottom:0; }
.pr-race-names .fi{ width:18px; height:18px; border-radius:50%; background-size:cover; background-position:center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); flex:none; }

/* ---------- faces band (static, narrative) ---------- */
.pr-faces{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; }
.pr-face{ border:1px solid #e6e1d4; border-radius:14px; background:#fff; padding:20px;
  box-shadow:0 1px 0 rgba(0,0,0,.02); }
.pr-face-top{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px; }
.pr-face-top .fi{ width:40px; height:40px; border-radius:50%; background-size:cover; background-position:center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); flex:none; }
.pr-face-pos{ font-family:var(--font-text); font-size:10.5px; font-weight:700; text-transform:uppercase;
  letter-spacing:.09em; color:#a8a292; }
.pr-face-name{ font-family:var(--font-text); font-weight:700; font-size:18px; letter-spacing:-.01em; color:var(--ink); }
.pr-face-club{ font-family:var(--font-text); font-size:12.5px; color:#86826f; margin:3px 0 0; }
.pr-face-line{ font-family:var(--font-serif); font-size:15.5px; line-height:1.55; color:#3a382f;
  margin:12px 0 0; padding-top:12px; border-top:1px solid #f1ede3; }

/* ---------- responsive ---------- */
@media(max-width:760px){
  .pr-injury{ grid-template-columns:1fr; gap:18px; }
  .pr-races{ grid-template-columns:1fr; }
}
@media(max-width:560px){
  .pr-wrap{ padding:0 20px 72px; }
  .pr-break-grid{ grid-template-columns:1fr; }
}
