/* ── Sport badges (palette matches picks.html pc2-sport-badge / admin_costs charts) ── */
.sport-badge{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.1em;padding:.2rem .55rem;border-radius:0;border:1px solid transparent;text-transform:uppercase;white-space:nowrap}
/* Sport-family colors: see style.css --sport-* tokens */

.td-grade{font-weight:700;color:var(--accent,#00E676);text-align:center;font-size:.85rem}
.td-pick{white-space:normal;word-break:break-word;max-width:14rem}
/* ── Units column ── */
.td-units{text-align:center;white-space:nowrap;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums}
.units-pos{color:#42BDA6}
.units-neg{color:#f87171}
.units-push{color:#94a3b8}
/* ── Margin column ── */
.result-margin{font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.margin-pos{color:#42BDA6}
.margin-neg{color:#f87171}
.margin-push{color:#94a3b8}
.margin-pending{color:#475569}
.result-margin-cell{text-align:right;min-width:3.5rem}
/* ── Result column — .picks-table prefix (0-2-0) beats any single-class rule ── */
.picks-table .result-win  { color: #42BDA6; font-weight: 700; }
.picks-table .result-loss { color: #f87171; font-weight: 700; }
.picks-table .result-push { color: #94a3b8; font-weight: 600; }
/* ── Filter bar ── */
.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;align-items:center}
.filter-bar select{padding:.35rem .6rem;border-radius:4px;border:1px solid var(--filter-border,rgba(255,255,255,.1));
  background:var(--surface-card,#0d0f14);color:var(--text,#e2e8f0);font-size:.82rem;cursor:pointer;outline:none}
.filter-bar select:focus{border-color:var(--accent,#00E676)}
.filter-label{font-size:.75rem;color:var(--muted,#94a3b8);letter-spacing:.03em}
.filter-clear{font-size:.78rem;color:var(--accent,#00E676);cursor:pointer;padding:.3rem .65rem;
  border:1px solid var(--filter-border,rgba(255,255,255,.1));border-radius:4px;background:transparent;transition:all .15s}
.filter-clear:hover{background:var(--accent,#00E676);color:#08090b;border-color:var(--accent,#00E676)}
.pick-count-bar{font-size:.8rem;color:var(--muted,#888);margin-top:.4rem;margin-bottom:0}
/* ── Sortable table headers ── */
th.sortable{cursor:pointer;user-select:none;white-space:nowrap;transition:color .15s}
th.sortable:hover{color:#42BDA6}
th.sort-active{color:var(--accent,#00E676)}
.sort-arrow{font-size:.7rem;margin-left:.15rem;display:inline-block;min-width:.7rem}
/* ── Table caption (pick count + Today's Slate link) ── */
.table-caption{text-align:center;font-size:.85rem;color:var(--muted,#888);margin:.75rem 0 0}
/* ── Pagination ── */
.pagination-nav{display:flex;align-items:center;gap:.35rem;justify-content:center;flex-wrap:wrap;margin:1.5rem 0 .25rem}
.pagination-nav .btn-sm{padding:.25rem .6rem;font-size:.75rem}
.pag-disabled{opacity:.4;cursor:default;pointer-events:none}
.pag-num{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .4rem;border-radius:4px;font-size:.8rem;font-weight:600;color:var(--text,#e2e8f0);text-decoration:none;border:1px solid var(--filter-border,rgba(255,255,255,.1));transition:background .15s,color .15s,border-color .15s}
.pag-num:hover{background:rgba(0,230,118,.12);color:var(--accent,#00E676);border-color:rgba(0,230,118,.35)}
.pag-current{background:var(--accent,#00E676);color:#08090b!important;border-color:var(--accent,#00E676);cursor:default;pointer-events:none}
.pag-ellipsis{color:var(--muted,#888);font-size:.8rem;padding:0 .2rem}
.pag-meta{text-align:center;font-size:.8rem;color:var(--muted,#888);margin:.25rem 0 0}

