/**
 * Elimination bracket match pairs — admin (tournamentmgmt) + public (tournaments.html).
 * Connectors live inside .teamContainer; never clip (overflow) or paint opaque fills on the container
 * (later rounds float on top and would cover earlier connectors).
 */
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer {
  border-radius: 6px;
  border: 1px solid #b8b8be;
  background: transparent;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.07),
    0 4px 14px rgba(0, 0, 0, 0.1);
  overflow: visible;
  box-sizing: border-box;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer {
  border-color: rgba(255, 255, 255, 0.16);
  background: transparent;
  box-shadow:
    0 2px 10px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(255, 255, 255, 0.05);
}

:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer > .team,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer > .team {
  border-left: 0;
  border-right: 0;
  border-top: 0;
  background-color: var(--idx-surface, #ffffff);
}

:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer > .team:first-child,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer > .team:first-child {
  border-bottom: 1px solid var(--idx-border, #d2d2d7);
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer > .team:last-child,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer > .team:last-child {
  border-bottom: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer > .team:first-child,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer > .team:first-child {
  border-bottom-color: var(--idx-border, #2a2a2a);
}

/* Bracket lines (admin + player + legacy manage tab) */
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .connector,
#tourny_tab-2 .toplevel_manage_div div.jQBracket .connector,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .connector {
  border-color: #424242 !important;
  border-width: 2px;
  z-index: 3;
}

:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .connector div.connector,
#tourny_tab-2 .toplevel_manage_div div.jQBracket .connector div.connector,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .connector div.connector {
  border-bottom: 2px solid #424242 !important;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .connector,
body.dark-theme #tourny_tab-2 .toplevel_manage_div div.jQBracket .connector,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .connector {
  border-color: #bdbdbd !important;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .connector div.connector,
body.dark-theme #tourny_tab-2 .toplevel_manage_div div.jQBracket .connector div.connector,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .connector div.connector {
  border-bottom-color: #bdbdbd !important;
}

/* Win/lose rows — stronger separation from bracket canvas */
:is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team.win,
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.win,
#tourny_tab-2:not(.sv2-manage-tab) .toplevel_manage_div div.jQBracket .team.win,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.win {
  background-color: #d4edd9;
  color: #0d1f12;
  font-weight: 600;
}

:is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team.lose,
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.lose,
#tourny_tab-2:not(.sv2-manage-tab) .toplevel_manage_div div.jQBracket .team.lose,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.lose {
  background-color: #f3f4f6;
  color: #1a2328;
  font-weight: 500;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team,
body.dark-theme #tourny_tab-2:not(.sv2-manage-tab) .toplevel_manage_div div.jQBracket .team,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team {
  background-color: #3a3a42;
  border-color: rgba(255, 255, 255, 0.1);
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team.win,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.win,
body.dark-theme #tourny_tab-2:not(.sv2-manage-tab) .toplevel_manage_div div.jQBracket .team.win,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.win {
  background-color: #1f4a2e;
  color: #e8f5e9;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team.lose,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.lose,
body.dark-theme #tourny_tab-2:not(.sv2-manage-tab) .toplevel_manage_div div.jQBracket .team.lose,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.lose {
  background-color: #2a2a30;
  color: #e2e8ec;
}

/* Player path highlight — hover (desktop) / long-press (mobile) */
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer.bracket-path-glow,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer.bracket-path-glow {
  outline: 2px solid #22c55e;
  outline-offset: 1px;
  box-shadow:
    0 0 0 3px rgba(34, 197, 94, 0.35),
    0 4px 16px rgba(34, 197, 94, 0.25);
  z-index: 15;
}

:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer.bracket-path-glow--gold,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer.bracket-path-glow--gold {
  outline-color: #eab308;
  box-shadow:
    0 0 0 3px rgba(234, 179, 8, 0.45),
    0 4px 18px rgba(234, 179, 8, 0.35);
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer.bracket-path-glow,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer.bracket-path-glow {
  outline-color: #4ade80;
  box-shadow:
    0 0 0 3px rgba(74, 222, 128, 0.4),
    0 4px 16px rgba(74, 222, 128, 0.28);
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .teamContainer.bracket-path-glow--gold,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .teamContainer.bracket-path-glow--gold {
  outline-color: #fbbf24;
  box-shadow:
    0 0 0 3px rgba(251, 191, 36, 0.5),
    0 4px 18px rgba(251, 191, 36, 0.38);
}

/* Empty / not-yet-filled slots (jQuery Bracket .np) — neutral surface, not green win tint */
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.np,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.np {
  background-color: #e3e6ea !important;
  color: #1a2328 !important;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team.np,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team.np {
  background-color: #3d454c !important;
  color: #f1f5f8 !important;
  border-color: rgba(255, 255, 255, 0.12);
}

/* TBD rows (empty-tbd): one surface for every row that shows .elim-bracket-tbd (any .win/.lose/.na/.np).
 * Light mode by default; body.dark-theme block below. JS sets .elim-bracket-tbd-slot on the .team row. */
:is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)),
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)),
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) {
  background-color: #e5e7eb !important;
  color: #1f2937 !important;
}

:is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
:is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd,
:is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd,
.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd {
  color: #1f2937 !important;
  font-style: italic;
  font-weight: 600;
  letter-spacing: 0.03em;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)),
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)),
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) {
  background-color: #3d454c !important;
  color: #f1f5f8 !important;
}

body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) div.label,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2).sv2-manage-tab .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd,
body.dark-theme :is(#tourny_tab-2, #player-tournament-sv2) .toplevel_manage_div div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd,
body.dark-theme.chalksta-app.chalksta-page-tournaments .tournament_managediv div.jQBracket .team:is(.elim-bracket-tbd-slot, :has(.elim-bracket-tbd)) .elim-bracket-tbd {
  color: #f8fafc !important;
}
