/* Shared presentation for the existing site. Betting and account DOM contracts stay intact. */
@font-face { font-family: Barlow; src: url('fonts/ui/Barlow-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: Barlow; src: url('fonts/ui/Barlow-SemiBold.ttf') format('truetype'); font-weight: 600 900; font-display: swap; }
@font-face { font-family: 'Barlow Condensed'; src: url('fonts/ui/BarlowCondensed-SemiBold.ttf') format('truetype'); font-weight: 600 900; font-display: swap; }
:root { --ui-type: Barlow, sans-serif; font-family: var(--ui-type); }
body {
  --ink: #101518; --panel: #181e22; --line: #343c40; --muted: #acb3b8;
  --cyan: #5cebd2; --pink: #ff6486; --gold: #e9bf72;
  --heading-type: 'Barlow Condensed', sans-serif;
  --theme-duration: 650ms;
  background-color: var(--ink); font-size: 15px; line-height: 1.45;
}
body[data-site-tab="tournament"] {
  --ink: #19161b; --panel: #211d25; --line: #403948; --muted: #b9b1c1;
  --cyan: #e9bf72; --pink: #b6a1df;
  background-color: var(--ink);
}
body[data-site-tab="shop"] {
  --ink: #111b23; --panel: #1a2731; --line: #354957; --muted: #adbfcc;
  --cyan: #8dc8e8; --pink: #efaf91; --gold: #efaf91;
  background-color: var(--ink);
}
#shopView { --cyan: inherit; --gold: inherit; --panel: inherit; --line: inherit; --muted: inherit; }
#tournamentView { --t-accent: var(--cyan); --t-other: var(--pink); --t-line: var(--line); --t-panel: var(--panel); }
/* Animate the painted properties, including both entering and leaving tab states.
   Custom name effects retain their own animation/colour declarations. */
body, .masthead, .site-tabs, .site-tabs button, .account-menu, .account strong,
.section-label, .kicker, .stream-panel, .stream-heading, .site-chat, .site-chat-heading,
.join-panel, .closed-book, .match-board, .fighter-copy, .side-mark, .ledger,
.recent-outcomes-section, .leaderboard-section, .leaderboard-section th,
.tournament-pools article, .tournament-header, .tournament-lists section,
.tournament-bracket, .bracket-match, .shop-hero, .shop-loadout, .shop-card,
.shop-category-tabs, .shop-category-note, .shop-preview, .shop-card-visual,
input, select, textarea, button, .pool-line strong, .tournament-wallet strong,
.tournament-pools strong, .tournament-pools .section-label, footer {
  transition: background-color var(--theme-duration) ease, color var(--theme-duration) ease,
    border-color var(--theme-duration) ease;
}
.masthead, body[data-site-tab="tournament"] .masthead, body[data-site-tab="shop"] .masthead {
  min-height: 100px; padding-block: 24px 20px; background: transparent; border-bottom: 0;
}
.masthead h1 { font-size: clamp(30px, 5vw, 48px); }
.masthead .site-brand { flex: 0 1 300px; min-width: 0; }
.masthead .site-brand h1 { margin: 0; line-height: 0; }
.masthead .site-brand h1 a { display: block; }
.masthead .site-logo { display: block; width: 100%; height: auto; }
.kicker { font-size: 10px; margin-bottom: 10px; }
.section-label, #liveView .section-label, #tournamentView .section-label { font-size: 12px; font-weight: 600; letter-spacing: .05em; }
.site-tabs { margin-top: 0; margin-bottom: 0; gap: 24px; border: 0; border-bottom: 1px solid var(--line); background: transparent; }
.site-tabs button { flex: 0 1 auto; min-width: 100px; min-height: 44px; padding: 8px 4px 12px; border: 0; border-bottom: 3px solid transparent; font-size: 16px; letter-spacing: 0; }
.site-tabs button[aria-selected="true"], #tournamentTab[aria-selected="true"], #shopTab[aria-selected="true"] { color: var(--cyan); border-bottom-color: var(--cyan); background: transparent; }
.site-tabs button:hover:not([aria-selected="true"]), .site-tabs button:focus-visible:not([aria-selected="true"]) { background: transparent; color: var(--paper); border-bottom-color: var(--line); }
button { font-weight: 600; letter-spacing: .02em; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, a:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
input, select, textarea, .style-form select, .tournament-form input, .tournament-form select { color: var(--paper); background: var(--ink); border-color: var(--line); font-size: 14px; }
input:not([type="checkbox"]):not([type="color"]), select { min-height: 42px; }
.account span { font-size: 12px; letter-spacing: .03em; }
.account strong { color: var(--paper); font-size: 22px; font-variant-numeric: tabular-nums; }
.account-edit-button { padding: 6px 8px; min-height: 30px; font-size: 11px; background: var(--panel); border-color: var(--line); }
.account-menu { width: min(370px, calc(100vw - 24px)); padding: 20px; background: var(--panel); border-color: var(--line); border-top-color: var(--cyan); box-shadow: none; }
.account-menu-heading strong { font: 600 22px var(--heading-type); letter-spacing: 0; }
.style-access-note, .menu-notice, .admin-users.empty { font-size: 13px; }
.style-form > label, .colour-fields label, .password-form > label, .admin-schedule-form > label { font-size: 11px; letter-spacing: .04em; }
.account-menu button { font-size: 12px; }
.account-menu-heading > button { font-size: 22px; background: var(--ink); }
.name-style-preview, .admin-reset-form { background: var(--ink); border-color: var(--line); }
.admin-panel summary, .admin-user-row small, .admin-tag-toggle { font-size: 11px; letter-spacing: .03em; }
.admin-user-row strong { font-size: 14px; }
.admin-user-row { padding-block: 12px; border-color: var(--line); }
.admin-password-reset, .admin-schedule-actions button:last-child, .admin-reset-actions button:last-child { background: var(--ink); border: 1px solid var(--line); }
.shared-betting { margin-top: 24px; }
.stream-heading, .site-chat, .site-chat-heading { background: var(--panel); border-color: var(--line); }
.site-chat-heading strong { font: 600 18px var(--heading-type); letter-spacing: .02em; }
.chat-message { font-size: 14px; line-height: 1.5; }
.chat-message-author .member-name { font-size: 13px; }
.chat-message-time, .chat-notice { font-size: 11px; }
.chat-form input { background: var(--ink); }
.chat-form button { font-size: 12px; }
.join-panel { border-left-width: 1px; border-top: 2px solid var(--cyan); }
.closed-book { background: #181e22; }
.closed-book em { color: #acb3b8; }
.match-board { border-inline: 0; background: transparent; }
.match-meta { padding: 12px 0; letter-spacing: .04em; font-size: 12px; }
.fighters { grid-template-columns: minmax(0,1fr) 32px minmax(0,1fr); }
.fighter { background: var(--panel); }
.fighter-copy { border-top-width: 2px; padding: 18px; }
.fighter h2, .tournament-pools h2, #tournamentView h1, .shop-hero h2 { font-family: var(--heading-type); font-style: normal; font-weight: 600; letter-spacing: 0; line-height: 1.05; }
.fighter h2, .tournament-pools h2 { font-size: 32px; }
#tournamentView h1, .shop-hero h2 { font-size: 38px; }
.side-mark, .fighter.right .side-mark { background: transparent; padding: 0; margin-bottom: 10px; color: var(--cyan); font-size: 12px; }
.fighter.right .side-mark { color: var(--pink); }
.fighter-copy > p { font-size: 13px; font-weight: 400; letter-spacing: .02em; }
.fighter-stats { font-size: 11px; font-weight: 400; }
.pool-line strong { font: 600 32px var(--heading-type); color: var(--cyan); }
.fighter.right .pool-line strong { color: var(--pink); }
.versus { background: transparent; border: 0; font: 600 18px var(--heading-type); }
.bet-desk { padding: 18px 0; }
.amount-row button { background: var(--panel); border: 1px solid var(--line); font-size: 13px; }
.side-buttons button { min-height: 44px; font-size: 16px; }
.future-toggle { padding-inline: 0; }
.future-panel, .future-leg { background: var(--panel); }
.future-panel label, .future-summary, .future-notice { font-size: 12px; }
.future-toggle small, .future-ticket-head span, .future-ticket-leg { font-size: 11px; }
.ledger, .recent-outcomes-section, .leaderboard-section { border-top-width: 2px; }
#liveView .empty, #ticket, .future-ticket, .active-player-row, .wager-row, .recent-player, .leaderboard-section table { font-size: 14px; }
.ledger-heading > span, .leaderboard-heading > span, .player-status { font-size: 11px; letter-spacing: .04em; }
.recent-score, .leaderboard-section th { background: var(--ink); }
.recent-score { font-size: 14px; }
.leaderboard-section th { font-size: 11px; font-weight: 400; letter-spacing: .04em; }
.leaderboard-section td, .leaderboard-section th { padding: 12px 16px; }
.leaderboard-section td { vertical-align: middle; }
.leader-identity { display: flex; align-items: center; gap: 12px; min-height: 36px; }
.leader-identity .member-name { min-width: 0; max-width: 28ch; line-height: 1.4; }
.leader-identity .member-badge-image, .leader-identity .member-jc-icon { display: block; }
.leader-identity .leader-tag { margin-left: 0; flex: 0 0 auto; }
.leader-identity .st-plus-tag, .leader-identity .dev-tag { flex: 0 0 auto; }
.active-player-row, .wager-row, .recent-outcome-row, .leaderboard-section td { border-bottom-color: var(--line); }
.leaderboard-section tr.is-viewer { background: transparent; outline-color: var(--cyan); }
.tournament-header { padding: 24px 0 20px; border-bottom: 1px solid var(--line); }
.tournament-header p, .tournament-wallet p { color: var(--muted); font-size: 14px; }
.tournament-wallet strong { font-size: 26px; }
.tournament-pools article, .tournament-pools article:last-child { background: var(--panel); border: 0; border-top: 2px solid var(--side); }
.tournament-pools h2 { color: var(--paper); }
#tournamentView .tournament-pools .section-label { border: 0; padding: 0; }
.tournament-pools strong { font: 600 32px var(--heading-type); }
.tournament-pools button { min-height: 44px; font-size: 16px; }
#tournamentTicket, #tournamentReceipt { background: var(--panel); border-left: 0; border-top: 1px solid var(--line); font-size: 14px; }
.tournament-lists h3, .tournament-bracket h3 { font: 600 24px var(--heading-type); letter-spacing: 0; }
.tournament-lists section { padding: 0 16px 16px; background: var(--panel); border-top: 2px solid var(--t-accent); }
.tournament-list > div { font-size: 14px; border-color: var(--line); }
.bracket-match { background: var(--panel); }
.betting-rules, #tournamentChain, #tournamentNotice, #tournamentSearchNotice { font-size: 13px; }
.shop-hero { padding: 24px 0; background: transparent; border-top: 0; border-bottom: 1px solid var(--line); }
.shop-loadout { border-top: 0; padding: 20px; }
.shop-balance-panel > span, .loadout-slot > span, .shop-category-note { font-size: 12px; letter-spacing: .03em; }
.shop-balance-panel strong { font-size: 26px; }
.loadout-slot > strong { font-size: 13px; }
.loadout-slot button { font-size: 12px; }
.shop-category-tabs { background: transparent; }
.shop-category-tabs button { border: 0; border-bottom: 2px solid transparent; font-size: 14px; }
.shop-category-tabs button[aria-pressed="true"] { color: var(--cyan); border-bottom-color: var(--cyan); background: transparent; }
.shop-grid { gap: 16px; margin-top: 16px; background: transparent; }
.shop-card { padding: 12px; grid-template-rows: 112px minmax(64px,auto) 42px; }
.shop-card-copy { padding-inline: 0; }
.shop-card-copy strong { font-size: 14px; }
.shop-card-copy span { font-size: 11px; letter-spacing: .02em; }
.shop-card > button { background: transparent; color: var(--gold); border: 1px solid var(--line); font-size: 14px; }
.shop-card-visual, #shopView .shop-preview, #shopView .shop-category-note, #shopView .loadout-slot button { background: var(--ink); border-color: var(--line); }
.shop-notice { font-size: 13px; }
.shop-loadout > p:last-child, .shop-credit { font-size: 12px; }
.pool-line, .recent-score, .leaderboard-section table, .tournament-list, .bracket-score { font-variant-numeric: tabular-nums; }
@media(max-width:700px) {
  .masthead { padding: 20px 12px; gap: 12px; }
  .kicker { font-size: 9px; letter-spacing: .02em; }
  .site-tabs { gap: 12px; }
  .site-tabs button { flex: 1; min-width: 0; font-size: 14px; }
  .account strong { font-size: 18px; }
  .account-menu { top: 100px; max-height: calc(100dvh - 112px); }
  .fighters { grid-template-columns: 1fr; }
  .fighter-copy { padding: 16px 12px; }
  .fighter h2, .tournament-pools h2 { font-size: 27px; }
  .bet-desk { grid-template-columns: 1fr; }
  #tournamentView h1, .shop-hero h2 { font-size: 30px; }
  .tournament-wallet strong { font-size: 22px; }
  .tournament-header p, .tournament-wallet p { font-size: 12px; }
  .shop-grid { gap: 12px; }
  .shop-category-tabs button { padding-inline: 8px; }
  .leaderboard-section table { min-width: 600px; }
}


/* Closure controls keep the tournament route explicit. */
#tournamentOnlySite { grid-column: 1 / -1; grid-row: 2; background: #e9bf72; color: #17131e; }
#tournamentRedirect { background: var(--panel); border-color: var(--line); justify-content: center; flex-wrap: wrap; }
#switchToTournament { padding: 9px 12px; background: #e9bf72; color: #17131e; font-size: 12px; }

/* Independent section controls share the same row. */
#tournamentOnlySite { grid-column: auto; grid-row: auto; }


/* Quiet page textures sit behind the existing solid content surfaces. */
body { background-image: url('/assets/page-live.svg'); background-size: cover; background-position: center top; background-repeat: no-repeat; background-attachment: fixed; }
body[data-site-tab="tournament"] { background-image: url('/assets/page-tournament.svg'); }
body[data-site-tab="shop"] { background-image: url('/assets/page-shop.svg'); background-size: 160px 160px; background-repeat: repeat; }
body[data-site-tab="dailies"] { background-image: url('/assets/page-dailies.svg'); }

footer{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px 18px}
footer .footer-notice{font-size:12px;font-weight:400;letter-spacing:normal;line-height:1.6;color:#9aa6af;max-width:100%}


/* September 2026: compact broadcast presentation. */
body:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) { --space-1: 8px; --space-2: 16px; --space-3: 24px; --space-4: 32px; --content-width: 1180px; --ui-border: 1px solid var(--line); }
body:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])):not([data-site-background]) { background-image: none !important; }







:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .guest-sign-in { min-height:44px; padding: 10px 16px; background: transparent; color: var(--paper); border: var(--ui-border); font-size:14px; }

:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .guest-sign-in[hidden], :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .customisation-guest[hidden] { display:none; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .site-announcement { padding-block:8px; border-bottom: var(--ui-border); background:var(--panel); }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .site-announcement p { font-weight:400; font-size:13px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .site-announcement strong { letter-spacing:.06em; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .site-tabs button { font-size:15px; min-height:46px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .site-tabs { gap:20px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) button, :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) input, :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) select { font-family:var(--ui-type); }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) button { letter-spacing:0; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) input:not([type="checkbox"]):not([type="color"]),:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) select { min-height:44px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .shared-betting { margin-top:20px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-panel { padding:16px 20px; border:var(--ui-border); background:var(--panel); display:grid; grid-template-columns:150px minmax(0,1fr); gap:6px 20px; align-items:center; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-panel.hidden { display:none; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-panel > .section-label { font:600 19px var(--heading-type); margin:0; color:var(--paper); letter-spacing:0; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) #joinForm { grid-column:2; grid-row:1 / 3; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) #joinForm > label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-row { display:grid; grid-template-columns:1fr 1fr auto; gap:8px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-row input { width:100%; min-width:0; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-row button { min-height:44px; padding:10px 16px; font-size:13px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) #joinNotice { grid-column:1; margin:0; font-size:12px; line-height:1.5; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-book { min-height:0; place-content:normal; padding:26px 28px; margin-block:20px; text-align:left; display:grid; grid-template-columns:1fr auto; gap:16px 24px; align-items:center; border:var(--ui-border); border-left:3px solid var(--cyan); background:var(--panel); }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-book.hidden { display:none; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-book > p { font:600 clamp(26px,3vw,34px)/1.1 var(--heading-type); margin:0; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-games { display:flex; gap:8px; margin:0; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-games a { min-height:44px; padding:11px 16px; color:var(--paper); border:var(--ui-border); font-size:13px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:baseline; justify-content:flex-start; gap:8px 18px; max-width:none; width:auto; padding:16px 0 0; margin:0; border-top:var(--ui-border); }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream.hidden { display:none; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream time { font:600 18px var(--ui-type); }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream small { font-size:12px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream > span { font-size:11px; letter-spacing:.08em; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .match-board { margin-top:24px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .match-meta { border-bottom:var(--ui-border); margin-bottom:16px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .fighter-copy { padding:20px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .fighter h2 { font-size:32px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .fighter-stats { font-size:13px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .pool-line strong { font-size:34px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .bet-desk { padding-block:20px; gap:20px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .amount-block > label { font-size:12px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .lower-grid { gap:20px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .ledger,:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .recent-outcomes-section,:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leaderboard-section { border-top-width:1px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leaderboard-section th { font-size:12px; letter-spacing:.02em; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leaderboard-section td,:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leaderboard-section th { padding:12px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leaderboard-scroll { scrollbar-width:thin; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .leader-mobile-record { display:none; }

:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .style-form > label,:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .colour-fields label,:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .password-form > label { font-size:12px; letter-spacing:.02em; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .account-menu-heading > button { min-width:40px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .password-form { gap:12px; }
:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) footer { margin-top:32px; padding-block:24px; border-top:var(--ui-border); }
@media(max-width:760px) {



:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .guest-sign-in{font-size:12px;padding:8px 10px}
 :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-panel { display:block; padding:16px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-panel > .section-label{margin-bottom:12px}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-row{grid-template-columns:1fr 1fr}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .join-row button{grid-column:1/-1}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) #joinNotice{margin-top:10px}
 :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-book { padding:20px; grid-template-columns:1fr; gap:16px; }:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-games a{flex:1;text-align:center}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream{display:grid;justify-items:start;gap:6px;padding-top:14px}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .next-stream time{font-size:16px}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .closed-book > p{font-size:28px}
 
 :where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .fighter h2{font-size:27px}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .fighter-copy{padding:16px}:where(body:not([data-site-tab="live"]):not([data-site-tab="tournament"])) .match-board{margin-top:16px}
}

/* Authentication stays explicit on the restored betting pages too. */
body{--ui-border:1px solid var(--line)}
.guest-sign-in{min-height:44px;padding:10px 16px;background:transparent;color:var(--paper);border:var(--ui-border);font-size:14px}
body[data-joined="false"] .account,.guest-sign-in[hidden],.customisation-guest[hidden],.leader-mobile-record{display:none}

/* Game section palettes extend the shared theme; equipped backgrounds win. */
body[data-site-tab="mine"], body[data-site-tab="vip"], body[data-site-tab="vip-mine"] { --ink:#1d1913; --panel:#272119; --line:#4a3e2e; --muted:#c1b5a1; --cyan:#dfb978; --pink:#e49382; }
body[data-site-tab="grinder"] { --ink:#1c151f; --panel:#271e2b; --line:#49364e; --muted:#bfaec5; --cyan:#c9a1d8; --pink:#f0929f; }
body[data-site-tab="sponsor"] { --ink:#0e2021; --panel:#152c2d; --line:#2d4b4d; --muted:#a7c1c0; --cyan:#76d6ba; --pink:#ed929f; }
body[data-site-tab="cards"] { --ink:#151b29; --panel:#20283a; --line:#3d4963; --muted:#b0b9ce; --cyan:#b9c6ff; --pink:#efb9cf; }
body { isolation:isolate; }
.game-page-texture { position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:0; background-position:center top; background-size:720px 540px; background-repeat:repeat; transition:opacity var(--theme-duration,650ms) ease; }
.game-page-texture[data-page-texture="cards"] { background-image:url('/assets/page-cards.svg'); }
.game-page-texture[data-page-texture="mine"] { background-image:url('/assets/page-mine.svg'); }
.game-page-texture[data-page-texture="grinder"] { background-image:url('/assets/page-grinder-pattern.svg'); }
.game-page-texture[data-page-texture="sponsor"] { background-image:url('/assets/page-sponsor.svg'); }
.game-page-texture[data-page-texture="stats"] { background-image:url('/assets/page-bank.svg?v=2'); }
body[data-site-tab="cards"]:not([data-site-background]) > [data-page-texture="cards"],
body[data-site-tab="mine"]:not([data-site-background]) > [data-page-texture="mine"],
body[data-site-tab="grinder"]:not([data-site-background]) > [data-page-texture="grinder"],
body[data-site-tab="sponsor"]:not([data-site-background]) > [data-page-texture="sponsor"],
body[data-site-tab="stats"]:not([data-site-background]) > [data-page-texture="stats"] { opacity:1; }
/* Suppress immediately on equip: no native texture overlays a purchased background. */
body[data-site-background] > .game-page-texture { opacity:0; transition:none; }
@media(prefers-reduced-motion:reduce) { body { --theme-duration:250ms; } .game-page-texture { transition:none; } }

/* The shared account header has one layout across every section. */
.masthead button { font-family:var(--ui-type); letter-spacing:0; }

/* Translucent reading surface preserves equipped artwork through the content. */
body[data-background-darken]:is([data-site-background],[data-local-background]) #siteContent,
body[data-background-darken]:is([data-site-background],[data-local-background]) .masthead,
body[data-background-darken]:is([data-site-background],[data-local-background]) .site-navigation,
body[data-background-darken]:is([data-site-background],[data-local-background]) .site-announcement,
body[data-background-darken]:is([data-site-background],[data-local-background]) #streamRewards {
  background-color:rgba(12,17,24,.50);
}

/* Account access: explicit paths, shared site tokens and visible labels. */
#joinPanel.join-panel { display:block; padding:20px; border:1px solid var(--line); border-top:2px solid var(--cyan); background:var(--panel); }
#joinPanel.hidden { display:none; }
#joinPanel [hidden] { display:none !important; }
.join-header { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
#joinHeading { margin:0; font:600 26px var(--heading-type); color:var(--paper); }
.join-modes { display:flex; gap:4px; border-bottom:1px solid var(--line); }
.join-modes button { min-height:44px; padding:8px 14px; color:var(--muted); background:transparent; border:0; border-bottom:2px solid transparent; font:600 15px var(--ui-type); }
.join-modes button[aria-pressed="true"] { color:var(--cyan); border-bottom-color:var(--cyan); }
#joinPanel .join-flow-help { margin:12px 0 16px; font-size:15px; color:var(--muted); }
.join-steps { display:flex; flex-wrap:wrap; gap:12px 32px; padding-left:20px; margin:0 0 16px; color:var(--muted); font-size:15px; }
.join-steps li[aria-current="step"] { color:var(--paper); font-weight:600; }
#joinPanel .join-google { min-height:44px; padding:10px 18px; margin-bottom:16px; border:1px solid var(--line); background:var(--ink); color:var(--paper); font:600 15px var(--ui-type); }
#joinPanel[data-mode="create"] .join-google { background:var(--cyan); color:var(--ink); border-color:var(--cyan); }
#joinPanel #joinForm { margin:0; }
#joinPanel .join-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; align-items:end; gap:12px; }
#joinPanel .join-field label { display:block; position:static; width:auto; height:auto; overflow:visible; margin-bottom:6px; font-size:14px; color:var(--paper); }
#joinPanel .join-field input { width:100%; min-width:0; min-height:44px; }
#joinPanel .join-row button { min-height:44px; padding:10px 20px; font:600 15px var(--ui-type); }
#joinPanel #joinNotice { margin:12px 0 0; font-size:14px; color:var(--muted); }
#joinPanel #joinNotice:empty { display:none; }
#joinPanel #joinNotice.error { color:#ff849e; }
#joinPanel button:focus-visible { outline:2px solid var(--cyan); outline-offset:3px; }
@media(max-width:600px) { #joinPanel.join-panel { padding:16px; } #joinPanel .join-row { grid-template-columns:1fr; } #joinPanel .join-row button { grid-column:auto; } #joinPanel .join-google { width:100%; } }
