/* ── CURRENT MATCHES ── */
.current-toolbar {
  background:var(--panel); padding:10px 16px; border-bottom:1px solid var(--border);
}
.div-multiselect { position:relative; display:inline-flex; }
.div-multiselect-btn {
  display:flex; align-items:center; gap:8px;
  font-family:'DM Sans',sans-serif; font-size:12px; padding:5px 11px;
  border-radius:6px; border:1px solid var(--border); background:var(--input-bg);
  color:var(--text); cursor:pointer; outline:none; transition:border-color 0.15s;
}
.div-multiselect-btn:hover { border-color:#555; }
.div-multiselect.open .div-multiselect-btn { border-color:#555; }
.div-multiselect-caret { color:var(--muted); font-size:10px; transition:transform 0.15s; }
.div-multiselect.open .div-multiselect-caret { transform:rotate(180deg); }
.div-multiselect-panel {
  position:absolute; top:calc(100% + 4px); left:0; min-width:200px;
  background:var(--autocomplete-bg); border:1px solid var(--border); border-radius:6px;
  z-index:200; overflow-y:auto; max-height:280px; display:none;
  box-shadow:0 4px 12px rgba(0,0,0,0.15); padding:4px;
}
.div-multiselect.open .div-multiselect-panel { display:block; }
.dms-item {
  display:flex; align-items:center; gap:8px;
  font-family:'DM Sans',sans-serif; font-size:12px; padding:7px 8px;
  cursor:pointer; color:var(--text); border-radius:4px; transition:background 0.1s;
}
.dms-item:hover { background:var(--autocomplete-hover); }
.dms-check {
  width:14px; height:14px; border-radius:4px; border:1px solid var(--border);
  flex-shrink:0; display:flex; align-items:center; justify-content:center;
  background:var(--input-bg); transition:background 0.1s, border-color 0.1s;
}
.dms-item.checked .dms-check { background:var(--div-color,var(--red)); border-color:transparent; }
.dms-check::after {
  content:''; width:4px; height:8px; border:solid #fff; border-width:0 2px 2px 0;
  transform:rotate(45deg) translate(-1px,-1px); opacity:0;
}
.dms-item.checked .dms-check::after { opacity:1; }
.dms-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; background:var(--div-color,var(--muted)); }
.dms-divider { height:1px; background:var(--border); margin:4px 2px; }

/* ── CURRENT MATCHES GRID ── */
.table-wrap { padding:12px 16px; }

.match-grid {
  display:grid;
  /* #  | div | round | ring | status | blue | vs | red | winner */
  grid-template-columns:
    max-content
    max-content
    minmax(0,140px)
    max-content
    max-content
    minmax(0,1fr)
    max-content
    minmax(0,1fr)
    minmax(0,1fr);
  gap:0;
}

.mg-header {
  font-family:'DM Sans',sans-serif; font-size:11px; letter-spacing:2px;
  text-transform:uppercase; color:var(--muted); padding:6px 10px;
  border-bottom:1px solid var(--border);
  position:sticky; top:calc(var(--header-h,56px) + var(--tabs-h,38px)); background:var(--black); z-index:1;
  white-space:nowrap;
}

.mg-row { display:contents; }
.mg-row > * {
  padding:8px 10px; display:flex; align-items:center;
  border-bottom:1px solid var(--row-divider); transition:background 0.1s;
  min-width:0; background:transparent; white-space:nowrap;
}
.match-grid:has(.mg-row > *:hover) .mg-row > * { background:transparent; }
.mg-row:has(> *:hover) > * { background:var(--row-hover) !important; }

.mg-vs {
  color:var(--vs-color); font-family:'DM Sans',sans-serif; font-size:12px;
  font-weight:700; justify-content:center; padding:8px 4px;
}
.mg-team {
  gap:8px; font-size:14px; font-weight:600; overflow:hidden;
}
.mg-team.blue-bg { background:var(--blue-bg); }
.mg-team.red-bg  { background:var(--red-bg); }
.mg-team.won     { color:#4ade80; }
.mg-winner {
  font-size:14px; font-weight:700; color:#4ade80;
  overflow:hidden; text-overflow:ellipsis;
}
.mg-winner.none { color:var(--winner-none-color); font-weight:400; }
.mg-dash { color:var(--winner-none-color); font-weight:400; }
.mg-team-name { overflow:hidden; text-overflow:ellipsis; }
.mg-num  { font-family:'DM Sans',sans-serif; font-size:12px; color:var(--muted); font-weight:700; }
.mg-round { font-size:12px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.div-badge {
  display:inline-block; padding:2px 7px; border-radius:4px;
  font-family:'DM Sans',sans-serif; font-size:12px; font-weight:700;
  letter-spacing:0.3px; white-space:nowrap; flex-shrink:0;
}

.status-pill {
  display:inline-block; padding:2px 7px; border-radius:4px;
  font-family:'DM Sans',sans-serif; font-size:11px; letter-spacing:0.5px;
  font-weight:600; white-space:nowrap; flex-shrink:0;
}
/* Colors derived from TMS status palette */
.status-pill.sp-created         { background:var(--div-btn-bg); color:#888; }
.status-pill.sp-holding         { background:#2a1f08; color:rgb(242,229,205); }
.status-pill.sp-staging         { background:#0a2010; color:rgb(183,225,205); }
.status-pill.sp-route           { background:#1a1530; color:rgb(180,167,214); }
.status-pill.sp-checked         { background:#1e1828; color:rgb(217,210,233); }
.status-pill.sp-competing       { background:#0d1a2a; color:rgb(201,218,248); }
.status-pill.sp-done            { background:#0d1520; color:rgb(164,194,244); }
.status-pill.sp-canceled        { background:#2a0d0d; color:rgb(244,204,204); }

/* Light mode: swap fg/bg so pills read as light chips with dark text */
[data-theme="light"] .status-pill.sp-created         { background:var(--div-btn-bg); color:var(--muted); }
[data-theme="light"] .status-pill.sp-holding         { background:rgb(242,229,205); color:#6b5115; }
[data-theme="light"] .status-pill.sp-staging         { background:rgb(183,225,205); color:#0f4a29; }
[data-theme="light"] .status-pill.sp-route           { background:rgb(180,167,214); color:#332a5c; }
[data-theme="light"] .status-pill.sp-checked         { background:rgb(217,210,233); color:#3a2e5c; }
[data-theme="light"] .status-pill.sp-competing       { background:rgb(201,218,248); color:#1c3d6e; }
[data-theme="light"] .status-pill.sp-done            { background:rgb(164,194,244); color:#17356b; }
[data-theme="light"] .status-pill.sp-canceled        { background:rgb(244,204,204); color:#7a1f1f; }

.ring-badge {
  font-family:'DM Sans',sans-serif; font-size:12px;
  color:var(--yellow); font-weight:700; white-space:nowrap; flex-shrink:0;
}
.match-num {
  font-family:'DM Sans',sans-serif; font-size:13px;
  color:var(--muted); font-weight:700; flex-shrink:0;
}
.round-txt {
  font-size:13px; color:var(--muted); white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis;
}
.lmh-tag {
  font-family:'DM Sans',sans-serif; font-size:11px;
  color:var(--lmh-color); font-weight:700; flex-shrink:0;
}
.team-dot { width:6px; height:6px; border-radius:50%; flex-shrink:0; }

.no-active {
  padding:60px; text-align:center;
  font-family:'DM Sans',sans-serif; font-size:13px; color:var(--muted);
}
