/* ================================================================
   ON/OFF COURT (MINUTES) — matchup/includes/bet-onoff-minutes.php,
   filled by scripts/matchup-onoff.js. Loaded on /matchup/, admin/bet
   and, through the widget catalog's assets, on /my-dashboards/.
   Colours are tokens (styles/tokens.css); the player pills reuse
   .injury-pill from player-injury-common.css.
   ================================================================ */
.tmb-onoff { container-type: inline-size; }
.tmb-onoff-head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 8px;
    margin-bottom: 6px;
}
.tmb-onoff-head h7 { margin: 0; }
.tmb-onoff-unit {
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 1px 7px;
    border-radius: 3px;
    background: var(--tmb-blue-50);
    color: var(--tmb-blue);
    border: 1px solid color-mix(in srgb, var(--tmb-blue) 35%, transparent);
}
.tmb-onoff-q {
    flex-basis: 100%;
    font-size: 0.74rem;
    color: var(--tmb-gray-600);
}
.tmb-onoff-ctl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    margin-bottom: 6px;
    font-size: 0.78rem;
}
.tmb-onoff-ctl label { display: inline-flex; align-items: center; gap: 4px; margin: 0; font-weight: 600; color: var(--tmb-gray-700); }
.tmb-onoff-mode { font-size: 0.74rem; gap: 6px 14px; }
.tmb-onoff-mode label { font-weight: 500; }
.tmb-onoff-mode input { margin: 0; }
.tmb-onoff-ctl select { font-size: 0.78rem; padding: 2px 6px; border: 1px solid var(--tmb-gray-400); border-radius: 4px; background: var(--tmb-white, #fff); color: var(--tmb-gray-900); }
.tmb-onoff-teams {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
@container (max-width: 760px) { .tmb-onoff-teams { grid-template-columns: 1fr; } }
.tmb-onoff-team { min-width: 0; }
.tmb-onoff-team-name {
    font-weight: 700;
    font-size: 0.9rem;
    margin: 0 0 4px;
    color: var(--tmb-gray-900);
}
.tmb-onoff-sel {
    font-size: 0.74rem;
    color: var(--tmb-gray-700);
    margin: 0 0 4px;
}
.tmb-onoff-sel b { color: var(--tmb-gray-900); }
.tmb-onoff table { font-variant-numeric: tabular-nums; margin-bottom: 8px; }
.tmb-onoff table th, .tmb-onoff table td { white-space: nowrap; text-align: right; }
.tmb-onoff table th:first-child, .tmb-onoff table td:first-child { text-align: left; }
/* A phone: the player table's headers ("ORtg off") wrap to two lines and
   the cells tighten, so its six columns fit without a sideways scroll
   (measured at 375px on a full season's four-digit minutes). */
@container (max-width: 420px) {
    .tmb-onoff table th { white-space: normal; }
    .tmb-onoff table th, .tmb-onoff table td { padding-left: 3px; padding-right: 3px; font-size: 0.75rem; }
}
.tmb-onoff td.onoff-name { font-weight: 600; }
.tmb-onoff tr.onoff-sum td { font-weight: 700; }
.tmb-onoff td.onoff-pos { background: var(--tmb-good-7); color: var(--tmb-success-text); }
.tmb-onoff td.onoff-pos.s2 { background: var(--tmb-good-4); }
.tmb-onoff td.onoff-pos.s3 { background: var(--tmb-good-1); }
.tmb-onoff td.onoff-neg { background: var(--tmb-bad-1); color: var(--tmb-danger-text); }
.tmb-onoff td.onoff-neg.s2 { background: var(--tmb-bad-3); }
.tmb-onoff td.onoff-neg.s3 { background: var(--tmb-bad-5); }
.tmb-onoff td.onoff-thin, .tmb-onoff tr.onoff-thin td { color: var(--tmb-gray-600); font-style: italic; }
.tmb-onoff .tmb-onoff-note { font-size: 0.72rem; color: var(--tmb-gray-600); margin: -4px 0 6px; }
.tmb-onoff .tmb-onoff-empty { font-size: 0.8rem; color: var(--tmb-gray-600); padding: 6px 0; }
