/* boxscore-card.css — shared box-score card styles (Team page Games tab).
   The Box Scores page keeps an equivalent inline copy; this is the standalone
   stylesheet the renderer (js/boxscore-card.js) needs anywhere else it's used. */
.bs-games-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 16px; }
.bs-card { background:#fff; border-radius:12px; box-shadow:0 2px 12px rgba(0,0,0,0.08); overflow:hidden; scroll-margin-top:90px; }
.bs-card-header { background:#1a3c6d; color:#fff; padding:8px 16px; font-size:0.72rem; font-weight:600; letter-spacing:0.8px; text-transform:uppercase; display:flex; justify-content:space-between; align-items:center; }
.bs-card-header .bs-game-label { color:#a0b8d8; }
.bs-card-header .bs-game-label .bs-daytag { color:#fff; }
.bs-card-header .bs-po-badge { background:#c0392b; color:#fff; padding:2px 8px; border-radius:3px; font-size:0.65rem; font-weight:800; letter-spacing:0.5px; margin-right:8px; white-space:nowrap; text-transform:none; }
.bs-card.bs-card-playoff { border:2px solid #c0392b; }
.bs-score-table { width:100%; border-collapse:collapse; font-size:0.9rem; }
.bs-score-table th { background:#f0f4fa; color:#666; font-size:0.7rem; font-weight:700; text-transform:uppercase; padding:6px 10px; text-align:center; letter-spacing:0.5px; }
.bs-score-table th.bs-team-col { text-align:left; }
.bs-score-table td { padding:9px 10px; text-align:center; border-top:1px solid #f0f0f0; }
.bs-score-table td.bs-team-name { text-align:left; font-weight:700; font-size:0.95rem; }
.bs-score-table td.bs-final { font-size:1.25rem; font-weight:900; }
.bs-row-win td.bs-team-name { color:#1a3c6d; }
.bs-row-lose td { color:#888; }
.bs-row-win td.bs-final { color:#1a7a3c; }
.bs-row-lose td.bs-final { color:#aaa; }
.bs-q-dim { color:#bbb; font-size:0.82rem; }
.bs-leaders { display:flex; padding:10px 14px; gap:0; background:#f8f9fc; border-top:1px solid #eef; }
.bs-leader-item { flex:1; text-align:center; padding:4px 6px; }
.bs-leader-item + .bs-leader-item { border-left:1px solid #e0e8f0; }
.bs-leader-cat { font-size:0.62rem; font-weight:700; text-transform:uppercase; color:#999; letter-spacing:0.5px; margin-bottom:3px; }
.bs-leader-names { font-size:0.74rem; color:#333; line-height:1.4; }
.bs-leader-stat { font-weight:700; color:#1a3c6d; margin-left:4px; }
.bs-toggle-btn { width:100%; padding:8px; background:#f0f4fa; border:none; border-top:1px solid #e0e8f4; color:#1a3c6d; font-size:0.78rem; font-weight:700; cursor:pointer; letter-spacing:0.3px; transition:background 0.15s; }
.bs-toggle-btn:hover { background:#dce8f8; }
.bs-detail { display:none; border-top:1px solid #e8eef8; overflow-x:auto; }
.bs-detail.open { display:block; }
.bs-detail-team { padding:6px 14px 4px; font-size:0.72rem; font-weight:800; text-transform:uppercase; letter-spacing:0.6px; color:#fff; background:#2a5caa; }
.bs-stat-table { width:100%; border-collapse:collapse; font-size:0.75rem; }
.bs-stat-table th { background:#e8eef8; color:#555; font-size:0.66rem; font-weight:700; padding:5px 6px; text-align:center; text-transform:uppercase; }
.bs-stat-table th.bs-name-col { text-align:left; min-width:120px; }
.bs-stat-table td { padding:5px 6px; text-align:center; border-top:1px solid #f2f2f2; }
.bs-stat-table td.bs-pname { text-align:left; }
.bs-stat-table tr:nth-child(even) { background:#f8fafc; }
.bs-stat-table tr.bs-totals { background:#e8eef8; font-weight:700; }
.bs-stat-table td.bs-pts { font-weight:800; color:#1a3c6d; }
.bs-stat-table td.bs-fant { font-weight:700; color:#2a7a3b; }
.bs-pct-row { padding:4px 10px; font-size:0.7rem; color:#666; background:#f0f4fa; border-top:1px solid #e8eef8; display:flex; gap:16px; }
.bs-empty { text-align:center; padding:40px 20px; color:#888; font-size:0.95rem; }
.bs-team-banner { display:flex; align-items:center; gap:10px; background:#1a3c6d; color:#fff; border-radius:11px; padding:11px 16px; margin-bottom:14px; font-weight:700; }
.bs-team-banner .bs-rec { margin-left:auto; color:#a0b8d8; font-weight:800; }
[data-theme="dark"] .bs-team-banner { background:var(--bg-th); }
[data-theme="dark"] .bs-team-banner .bs-rec { color:var(--text-muted); }

@media (max-width: 600px) {
  .bs-games-grid { grid-template-columns: 1fr; }
  .bs-score-table { font-size: 0.88rem; }
  .bs-score-table th { font-size: 0.78rem; padding: 6px 6px; }
  .bs-score-table td { padding: 8px 6px; }
  .bs-score-table td.bs-final { font-size: 1.1rem; }
  .bs-leader-cat { font-size: 0.7rem; }
  .bs-leader-names { font-size: 0.82rem; }
  .bs-stat-table { font-size: 0.78rem; }
  .bs-stat-table th { font-size: 0.72rem; padding: 6px 4px; }
  .bs-stat-table td { padding: 6px 4px; }
  .bs-stat-table th.bs-name-col { min-width: 90px; }
  .bs-toggle-btn { padding: 12px; font-size: 0.85rem; min-height: 44px; }
  .bs-pct-row { font-size: 0.78rem; gap: 10px; flex-wrap: wrap; }
}
@media (max-width: 380px) {
  .bs-leaders { flex-wrap: wrap; gap: 6px 0; }
  .bs-leader-item { flex: 1 1 50%; }
  .bs-leader-item:nth-child(2n+1) { border-left: none; }
}

[data-theme="dark"] .bs-card { background:var(--bg-card); box-shadow:0 2px 12px rgba(0,0,0,0.3); }
[data-theme="dark"] .bs-card-header { background:var(--bg-th); }
[data-theme="dark"] .bs-card-header .bs-game-label { color:var(--text-muted); }
[data-theme="dark"] .bs-score-table th { background:var(--bg-even); color:var(--text-muted); }
[data-theme="dark"] .bs-score-table td { border-top-color:var(--border); }
[data-theme="dark"] .bs-row-win td.bs-team-name { color:var(--accent); }
[data-theme="dark"] .bs-row-lose td { color:var(--text-muted); }
[data-theme="dark"] .bs-row-win td.bs-final { color:#5bdb8a; }
[data-theme="dark"] .bs-row-lose td.bs-final { color:var(--text-muted); }
[data-theme="dark"] .bs-q-dim { color:var(--text-muted); }
[data-theme="dark"] .bs-leaders { background:var(--bg-even); border-top-color:var(--border); }
[data-theme="dark"] .bs-leader-item + .bs-leader-item { border-left-color:var(--border); }
[data-theme="dark"] .bs-leader-cat { color:var(--text-muted); }
[data-theme="dark"] .bs-leader-names { color:var(--text-secondary); }
[data-theme="dark"] .bs-leader-stat { color:var(--accent); }
[data-theme="dark"] .bs-toggle-btn { background:var(--bg-even); border-top-color:var(--border); color:var(--accent); }
[data-theme="dark"] .bs-toggle-btn:hover { background:rgba(91,155,213,0.1); }
[data-theme="dark"] .bs-detail { border-top-color:var(--border); }
[data-theme="dark"] .bs-detail-team { background:var(--bg-th); }
[data-theme="dark"] .bs-stat-table th { background:var(--bg-even); color:var(--text-muted); }
[data-theme="dark"] .bs-stat-table td { border-top-color:var(--border); }
[data-theme="dark"] .bs-stat-table tr:nth-child(even) { background:var(--bg-even); }
[data-theme="dark"] .bs-stat-table tr.bs-totals { background:var(--bg-even); }
[data-theme="dark"] .bs-stat-table td.bs-pts { color:var(--accent); }
[data-theme="dark"] .bs-stat-table td.bs-fant { color:#5bdb8a; }
[data-theme="dark"] .bs-pct-row { background:var(--bg-even); border-top-color:var(--border); color:var(--text-muted); }
