/* Multi-sport additions: model vs market columns and the per-sport status label. */

/* Status label (Experimental / Learning / Tracking edge), computed from the live Track Record. */
.status-chip { font-weight: 700; letter-spacing: 0.02em; cursor: help; }
.rec-status { display: inline-flex; align-items: center; gap: 4px; }

/* Model vs market. The projected score column steps aside so the comparison fits; it stays in each team line and the game sheet. */
@media (min-width: 1140px) {
  .slate--market .row--head, .slate--market .game {
    grid-template-columns: 156px minmax(200px, 1.7fr) minmax(120px, 1fr) 52px minmax(150px, 1.2fr) minmax(120px, 1fr) minmax(96px, 0.8fr);
  }
}
.slate--market .cell--score { display: none; }
.cell--edge .spread__team, .cell--market .spread__team { white-space: normal; }
.cell--market { display: grid; gap: 2px; color: var(--market); font-weight: 600; }
.cell--market .spread__team { color: inherit; }
.mkt__total { font-size: 0.75rem; font-weight: 500; color: var(--ink-3); }
.cell--edge .edge { font-weight: 700; }
.cell--edge .muted { color: var(--ink-3); }
@media (min-width: 960px) and (max-width: 1139px) {
  .slate--market .row--head, .slate--market .game { grid-template-columns: 140px minmax(150px, 1.5fr) minmax(100px, 1fr) 46px minmax(120px, 1.1fr) minmax(100px, 0.9fr) minmax(84px, 0.8fr); }
}
@media (max-width: 959px) {
  .slate--market .game, .slate--market .game:last-child {
    grid-template-areas: 'kick kick kick' 'match match match' 'spread total win' 'market market edge';
  }
  .cell--market { grid-area: market; } .cell--edge { grid-area: edge; }
  .cell--market, .cell--edge { padding-top: var(--space-2); border-top: 1px dashed var(--line); }
}

/* Phones: the sport switcher appears once more than one sport is published. */
@media (max-width: 719px) {
  .multi-sport .sport-select { display: block; width: 104px; min-height: 32px; font-size: 0.8125rem; }
}
@media (max-width: 400px) {
  .multi-sport .brand__name { font-size: 1.15rem; }
  .multi-sport .sport-select { width: 96px; }
}

/* Optional sections: hidden nav entries stay hidden whatever the nav layout says. */
a[data-nav][hidden] { display: none !important; }

/* Player Props table: desktop table, phone cards. */
.props { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); overflow: clip; }
.prow { display: grid; grid-template-columns: minmax(200px, 1.6fr) minmax(120px, 1fr) 110px 80px minmax(140px, 1.1fr) minmax(170px, 1.2fr);
  column-gap: var(--space-4); align-items: center; padding: 10px var(--space-4); border-bottom: 1px solid var(--line); }
.prow:last-child { border-bottom: 0; }
.prow--head { background: var(--surface-2); font-size: 0.75rem; font-weight: 700; color: var(--ink-2); min-height: 38px; }
.pcell { min-width: 0; }
.pcell--player { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 6px; }
.pcell .muted, .pcell.muted { color: var(--ink-3); font-size: var(--step--1); }
.prop__tag { font-size: 0.6875rem; }
@media (max-width: 959px) {
  .props { border: 0; background: transparent; overflow: visible; }
  .prow--head { display: none; }
  .prow { grid-template-columns: 1fr 1fr 1fr; grid-template-areas: 'player player player' 'prop line over' 'proj proj proj' 'game game game';
    gap: var(--space-2); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-m);
    background: var(--surface); margin-bottom: var(--space-3); }
  .prow:last-child { border-bottom: 1px solid var(--line); }
  .prow > :nth-child(1) { grid-area: player; } .prow > :nth-child(2) { grid-area: prop; } .prow > :nth-child(3) { grid-area: line; }
  .prow > :nth-child(4) { grid-area: over; } .prow > :nth-child(5) { grid-area: proj; } .prow > :nth-child(6) { grid-area: game; }
  .pcell[data-label]::before { content: attr(data-label); display: block; font-size: 0.6875rem; font-weight: 600; color: var(--ink-3); margin-bottom: 2px; }
}

/* Density: tighter prop rows. */
.prow:not(.prow--head) { padding-block: 5px; min-height: 0; }

/* Player Props, sportsbook style: best bets on top, then one block per game, grouped by category. */
.bestbets { margin-bottom: var(--space-5); }
.pgame__bar { display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-2); }
.section-title { font: 700 var(--step-2)/1.15 var(--font-display); margin: 0; }
.props__all { margin: var(--space-2) 0 var(--space-3); }
.bestbets__note { margin: 0 0 var(--space-3); font-size: var(--step--1); color: var(--ink-3); }
.pgame { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); overflow: clip; margin-bottom: var(--space-3); }
.pgame > .props { border: 0; border-radius: 0; }
.pgame__head { cursor: pointer; list-style: none; border-top: 0 !important; position: static !important; }
.pgame__head::-webkit-details-marker { display: none; }
.pgame__head h2::before { content: '▸'; display: inline-block; width: 1.1em; color: var(--ink-3); transition: transform .15s; }
.pgame[open] > .pgame__head h2::before { transform: rotate(90deg); }
.pgame:not([open]) > .pgame__head { border-bottom: 0; }
.pcat { padding: 6px var(--space-4) 4px; background: var(--surface-2); border-bottom: 1px solid var(--line);
  font-size: 0.75rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-2); }
.pcat .muted { font-weight: 500; text-transform: none; letter-spacing: 0; }
@media (max-width: 959px) {
  .pgame { border: 0; background: transparent; overflow: visible; }
  .pgame__head { border-radius: var(--radius-m); border: 1px solid var(--line) !important; margin-bottom: var(--space-2); }
  .pcat { background: transparent; border: 0; padding: var(--space-2) 2px; }
}
