/* Sector Uno — Parrilla oficial 2026 (Pilotos / Campeonato / Escuderías).
 * Estilos de la actualización visual 22 pilotos. Carga después de
 * site-01..09 y solo toca las tres secciones autorizadas. */

/* ---------- PILOTOS: nombre + dorsal ---------- */
.pilot-slot-number{font:900 13px var(--sport);color:#fff;background:rgba(0,0,0,.30);border:1px solid rgba(255,255,255,.38);padding:2px 7px;border-radius:4px;white-space:nowrap;line-height:1.4}
.pilot-slot-name{max-width:205px}
@media(max-width:1030px){.pilot-slot-name{max-width:180px}}
@media(max-width:690px){.pilot-slot-name{max-width:230px}}
@media(max-width:385px){.pilot-slot-name{max-width:170px}.pilot-slot-number{font-size:11px}}

/* ---------- CAMPEONATO: tabla de 5 columnas ---------- */
.score-head.score-head-5{grid-template-columns:52px minmax(0,1fr) 54px minmax(0,1.15fr) 92px}
.league-standing-row.league-standing-row-5{grid-template-columns:52px minmax(0,1fr) 54px minmax(0,1.15fr) 92px}
.league-standing-row-5 .ls-num{font:900 15px var(--sport);color:#fff;white-space:nowrap}
.league-standing-row-5 .ls-team{display:flex;align-items:center;gap:10px;min-width:0}
.league-standing-row-5 .ls-team .team-logo-wrap.compact{width:40px!important;height:30px!important;min-width:40px!important}
.league-standing-row-5 .ls-team>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#cfc7db;font-weight:700}
.league-standing-row .ls-team{display:flex;align-items:center;gap:10px;min-width:0}
.league-standing-row .ls-team .team-logo-wrap.compact{width:40px!important;height:30px!important;min-width:40px!important}
.league-standing-row .ls-team>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#cfc7db;font-weight:700}
@media(max-width:640px){
  .score-head.score-head-5{grid-template-columns:42px minmax(0,1fr) 48px 70px}
  .score-head.score-head-5 span:nth-child(4){display:none}
  .league-standing-row.league-standing-row-5{grid-template-columns:42px minmax(0,1fr) 48px 70px}
  .league-standing-row-5 .ls-team{display:none}
  .league-standing-row-5 .ls-num{font-size:13px}
}
@media(max-width:385px){
  .score-head.score-head-5{grid-template-columns:36px minmax(0,1fr) 42px 58px}
  .league-standing-row.league-standing-row-5{grid-template-columns:36px minmax(0,1fr) 42px 58px}
}

/* ---------- ESCUDERÍAS: tarjetas con pilotos ---------- */
.constructor-card{min-height:0}
.constructor-card .team-identity{justify-content:flex-start;gap:14px;min-height:0;margin:0 0 14px}
.constructor-card .team-identity .team-logo-wrap{width:72px!important;height:56px!important;min-width:72px!important;max-width:72px!important}
.constructor-card .team-identity h3{margin:0;font-size:clamp(24px,2vw,32px)}
.team-pilots{display:grid;gap:0;margin-bottom:14px}
.team-pilot{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 0;border-top:1px solid rgba(255,255,255,.10)}
.team-pilot-name{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-pilot-num{font:900 16px var(--sport);color:var(--team-color);white-space:nowrap}
.team-count{text-align:right;white-space:nowrap}
.team-count b{display:block;font:900 56px/.9 var(--sport);color:#fff}
.team-count small{display:block;font-size:10px;font-family:var(--font);color:#aaa0b5;letter-spacing:.12em;font-weight:900;margin-top:6px}
.team-detail .detail-identity{justify-content:flex-start;gap:18px}
.team-detail .detail-identity .team-logo-wrap{width:150px!important;height:110px!important;min-width:150px!important}

/* ---------- ESCUDERÍAS: tarjetas fotográficas ---------- */
.pilot-photo-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.pilot-photo-card{border:1px solid color-mix(in srgb,var(--team-color),white 12%);border-radius:10px;overflow:hidden;background:#0b0a14}
.pilot-photo-frame{position:relative;aspect-ratio:5/6;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--team-color),#000 58%),#0b0a14)}
.pilot-photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%;display:block}
.pilot-photo-fallback{position:absolute;inset:0;display:grid;place-items:center;font:900 46px var(--sport);color:rgba(255,255,255,.9)}
/* Retratos PNG con transparencia real: las iniciales de reserva deben
   ocultarse cuando hay una foto cargada; si no, se verían a través de
   las zonas transparentes. Si la foto falla y se elimina (onerror),
   el fallback vuelve a aparecer solo. */
.pilot-photo-frame:has(>img) .pilot-photo-fallback{display:none}
.pilot-photo-info{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 14px}
.pilot-photo-info strong{font-size:13px;text-transform:uppercase;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pilot-photo-info b{font:900 26px var(--sport);color:#fff;white-space:nowrap}
.team-stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.team-stats-row>div{border-left:1px solid #3a304a;padding-left:14px;min-width:0}
.team-stats-row span{display:block;font-size:10px;letter-spacing:.1em;color:#9d96ac;font-weight:900;margin-bottom:6px}
.team-stats-row b{font:900 26px var(--sport);color:#fff;white-space:nowrap}
@media(max-width:640px){
  .team-stats-row{grid-template-columns:repeat(2,1fr);gap:16px 14px}
  .team-detail .detail-identity .team-logo-wrap{width:120px!important;height:88px!important;min-width:120px!important}
  .team-count b{font-size:44px}
}
@media(max-width:380px){
  .pilot-photo-cards{grid-template-columns:1fr}
  .pilot-photo-info b{font-size:22px}
}
