/* ────────────────────────────────────────────────────────────
   Argonar v2 — operator console visual system
   Loaded after app.css; overrides nav + introduces dashboard.
   ──────────────────────────────────────────────────────────── */

/* Pure black background everywhere */
body { background: #000 !important; }

/* Force dark form controls so native <select> popups, date pickers,
   scrollbars, and autofill chrome stop blasting the page with white. */
:root { color-scheme: dark; }
html, body, input, select, textarea, button { color-scheme: dark; }

/* Belt-and-suspenders for <select>: kill the OS chrome and add a custom
   chevron via SVG bg so the closed control matches the dark cards. */
select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: #0a0a0f;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2371717a'><path d='M4.427 6.427L8 10l3.573-3.573a.5.5 0 0 0-.708-.707L8 8.586 5.135 5.72a.5.5 0 1 0-.708.707z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.7rem center;
    background-size: 14px 14px;
    padding-right: 2rem !important;
    color: var(--text);
}
select option {
    background: #0a0a0f;
    color: var(--text);
}

/* ==========================================================
   Slim global nav (replaces .navbar)
   ========================================================== */
.gnav {
    position: sticky;
    top: 0;
    z-index: 9000;
    background: rgba(0, 0, 0, 0.85);
    backdrop-filter: saturate(150%) blur(14px);
    -webkit-backdrop-filter: saturate(150%) blur(14px);
    border-bottom: 1px solid var(--border);
    padding: 0;
    height: 56px;
    display: flex;
    align-items: stretch;
}
.gnav-inner {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0 1.1rem;
    max-width: 1480px;
    margin: 0 auto;
    width: 100%;
}
.gnav-brand {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: #fff;
    font-weight: 800;
    letter-spacing: -0.02em;
    font-size: 1.05rem;
}
.gnav-brand .gnav-mark {
    width: 34px; height: 34px;
    display: inline-block;
    object-fit: contain;
    margin-right: 0.1rem;
}
.gnav-brand .gnav-brand-sub {
    font-family: var(--mono);
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--text-muted);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    margin-left: 0.1rem;
}

.gnav-cmd {
    flex: 1;
    max-width: 520px;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(255,255,255,0.03);
    border: 1px solid var(--border);
    color: var(--text-muted);
    padding: 0.45rem 0.8rem;
    font-family: var(--mono);
    font-size: 0.78rem;
    cursor: pointer;
    transition: border-color .15s, background .15s, color .15s;
}
.gnav-cmd:hover { border-color: var(--accent); color: var(--text); background: rgba(124,58,237,0.05); }
.gnav-cmd-icon { color: var(--accent-cyan); }
.gnav-cmd-key {
    margin-left: auto;
    font-family: var(--mono);
    font-size: 0.66rem;
    color: var(--text-muted);
    background: rgba(255,255,255,0.04);
    border: 1px solid var(--border);
    padding: 0.1rem 0.4rem;
    letter-spacing: 0.05em;
}

.gnav-quick {
    display: inline-flex;
    align-items: center;
    gap: 0.1rem;
}
.gnav-quick a {
    color: var(--text-muted);
    text-decoration: none;
    font-family: var(--mono);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 0.45rem 0.7rem;
    border: 1px solid transparent;
    transition: color .12s, border-color .12s;
}
.gnav-quick a:hover { color: #fff; border-color: var(--border); }
.gnav-quick a.live { color: var(--accent-cyan); }
.gnav-quick a.live::before {
    content: '●';
    margin-right: 0.3rem;
    color: var(--accent-cyan);
    animation: gnav-blink 1.6s infinite;
}
@keyframes gnav-blink { 0%, 60% { opacity: 1; } 80% { opacity: 0.3; } 100% { opacity: 1; } }

.gnav-bal {
    font-family: var(--mono);
    font-size: 0.75rem;
    color: var(--accent-light);
    border: 1px solid var(--border);
    padding: 0.35rem 0.65rem;
    text-decoration: none;
    letter-spacing: 0.05em;
}
.gnav-bal:hover { border-color: var(--accent-light); color: #fff; }

.gnav-avatar {
    width: 32px; height: 32px;
    background: rgba(255,255,255,0.04);
    border: 1px solid var(--border);
    color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    font-weight: 800;
    font-size: 0.8rem;
    font-family: var(--mono);
    text-decoration: none;
    cursor: pointer;
    transition: border-color .12s, background .12s;
    padding: 0;
}
.gnav-avatar:hover, .gnav-avatar[aria-expanded="true"] { border-color: var(--accent); background: rgba(124,58,237,0.08); }

/* User dropdown */
.gnav-user-wrap { position: relative; }
.gnav-dropdown {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 240px;
    background: #050507;
    border: 1px solid var(--accent);
    box-shadow: 0 0 0 1px rgba(124,58,237,0.4) inset, 0 24px 60px rgba(0,0,0,0.6), 0 0 30px rgba(124,58,237,0.2);
    z-index: 9500;
    display: none;
}
.gnav-dropdown.open { display: block; }
.gnav-dropdown-head {
    padding: 0.85rem 1rem;
    border-bottom: 1px solid var(--border);
}
.gnav-dropdown-name {
    font-family: var(--mono);
    font-size: 0.82rem;
    font-weight: 800;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.gnav-dropdown-bal {
    font-family: var(--mono);
    font-size: 0.66rem;
    color: var(--accent-cyan);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-top: 0.2rem;
}
.gnav-dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.65rem 1rem;
    color: var(--text);
    text-decoration: none;
    font-family: var(--mono);
    font-size: 0.78rem;
    font-weight: 600;
    transition: background .12s, color .12s;
    border-bottom: 1px solid rgba(255,255,255,0.025);
}
.gnav-dropdown-item:hover { background: rgba(124,58,237,0.1); color: #fff; }
.gnav-dropdown-item i { color: var(--accent-cyan); width: 18px; text-align: center; font-size: 0.95rem; }
.gnav-dropdown-divider {
    height: 1px;
    background: var(--border);
    margin: 0;
}
.gnav-dropdown-logout { color: #fca5a5 !important; }
.gnav-dropdown-logout:hover { background: rgba(239,68,68,0.1) !important; color: #fff !important; }
.gnav-dropdown-logout i { color: #fca5a5 !important; }
@media (max-width: 540px) {
    .gnav-dropdown { right: -1rem; min-width: 220px; }
}

.gnav-login {
    background: var(--accent);
    color: #fff !important;
    text-decoration: none;
    padding: 0.45rem 0.95rem;
    font-weight: 800;
    font-size: 0.78rem;
    font-family: var(--mono);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    transition: background .12s;
}
.gnav-login:hover { background: var(--accent-light); }

@media (max-width: 720px) {
    .gnav-quick { display: none; }
    .gnav-cmd-key { display: none; }
    .gnav-brand-sub { display: none; }
}

/* Override the legacy .navbar styles when the new gnav is present */
.gnav ~ .navbar, body > .navbar.legacy-hidden { display: none !important; }

/* ==========================================================
   Command palette (Cmd+K)
   ========================================================== */
.cmdk-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    backdrop-filter: blur(8px);
    z-index: 99999;
    display: none;
    align-items: flex-start;
    justify-content: center;
    padding-top: 12vh;
}
.cmdk-backdrop.open { display: flex; }
.cmdk-shell {
    width: 100%;
    max-width: 560px;
    background: #050507;
    border: 1px solid var(--accent);
    box-shadow: 0 30px 80px rgba(124,58,237,0.25), 0 0 0 1px rgba(124,58,237,0.4) inset;
}
.cmdk-input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--border);
    color: #fff;
    padding: 1rem 1.2rem;
    font-family: var(--mono);
    font-size: 1rem;
    outline: none;
}
.cmdk-input::placeholder { color: var(--text-muted); }
.cmdk-list {
    max-height: 50vh;
    overflow-y: auto;
}
.cmdk-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.7rem 1.2rem;
    color: var(--text);
    text-decoration: none;
    font-size: 0.88rem;
    border-bottom: 1px solid rgba(255,255,255,0.03);
    cursor: pointer;
}
.cmdk-item.active, .cmdk-item:hover { background: rgba(124,58,237,0.12); color: #fff; }
.cmdk-item .cmdk-ico { color: var(--accent-cyan); width: 18px; text-align: center; }
.cmdk-item .cmdk-label { flex: 1; }
.cmdk-item .cmdk-tag {
    font-family: var(--mono);
    font-size: 0.65rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.cmdk-empty {
    padding: 1.5rem 1.2rem;
    color: var(--text-muted);
    font-family: var(--mono);
    font-size: 0.82rem;
    text-align: center;
}
.cmdk-foot {
    padding: 0.5rem 1.2rem;
    border-top: 1px solid var(--border);
    font-family: var(--mono);
    font-size: 0.66rem;
    color: var(--text-muted);
    display: flex;
    gap: 1rem;
    letter-spacing: 0.06em;
}

/* ==========================================================
   Live dashboard (homepage)
   ========================================================== */
.dx {
    max-width: 1480px;
    margin: 0 auto;
    padding: 0 1.1rem 4rem;
    color: var(--text);
}

.dx-ticker {
    border-bottom: 1px solid var(--border);
    background: linear-gradient(90deg, rgba(124,58,237,0.04), transparent 30%, transparent 70%, rgba(34,211,238,0.04));
    overflow: hidden;
    height: 38px;
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}
.dx-ticker-tag {
    flex-shrink: 0;
    background: var(--accent-cyan);
    color: #000;
    font-family: var(--mono);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    padding: 0 0.85rem;
    height: 100%;
    display: inline-flex;
    align-items: center;
    text-transform: uppercase;
}
.dx-ticker-tag::before {
    content: '●';
    margin-right: 0.4rem;
    animation: gnav-blink 1.4s infinite;
}
.dx-ticker-stream {
    flex: 1;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
}
.dx-ticker-stream-inner {
    display: inline-block;
    padding-left: 100%;
    animation: dx-marquee 60s linear infinite;
}
.dx-ticker-stream-inner span {
    display: inline-block;
    margin-right: 2.5rem;
    font-family: var(--mono);
    font-size: 0.78rem;
    color: var(--text-muted);
}
.dx-ticker-stream-inner b {
    color: #fff;
    font-weight: 700;
    margin-right: 0.4rem;
}
.dx-ticker-stream-inner em {
    color: var(--accent-cyan);
    font-style: normal;
    font-weight: 700;
}
@keyframes dx-marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-100%); } }

/* Top stat strip */
.dx-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    border: 1px solid var(--border);
    background: var(--bg-card);
    margin-bottom: 1.5rem;
}
.dx-stat {
    padding: 1.1rem 1.2rem;
    border-right: 1px solid var(--border);
    position: relative;
}
.dx-stat:last-child { border-right: none; }
.dx-stat-label {
    font-family: var(--mono);
    font-size: 0.62rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    margin-bottom: 0.45rem;
}
.dx-stat-val {
    font-family: var(--mono);
    font-size: 2rem;
    color: #fff;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
}
.dx-stat-sub {
    font-family: var(--mono);
    font-size: 0.7rem;
    color: var(--accent-cyan);
    margin-top: 0.4rem;
    letter-spacing: 0.05em;
}
@media (max-width: 720px) {
    .dx-stats { grid-template-columns: repeat(2, 1fr); }
    .dx-stat { border-right: none; border-bottom: 1px solid var(--border); }
    .dx-stat:nth-child(odd) { border-right: 1px solid var(--border); }
    .dx-stat:nth-last-child(-n+2) { border-bottom: none; }
}

/* Three-column layout */
.dx-grid {
    display: grid;
    grid-template-columns: 1.2fr 2fr 1.2fr;
    gap: 1rem;
    margin-bottom: 1.5rem;
}
@media (max-width: 1080px) { .dx-grid { grid-template-columns: 1fr; } }

.dx-panel {
    background: var(--bg-card);
    border: 1px solid var(--border);
    padding: 0;
    display: flex;
    flex-direction: column;
}
.dx-panel-h {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border);
    font-family: var(--mono);
    font-size: 0.7rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.18em;
}
.dx-panel-h .dx-panel-h-act {
    color: var(--accent-cyan);
    text-decoration: none;
    font-size: 0.65rem;
}
.dx-panel-h .dx-panel-h-act:hover { color: #fff; }
.dx-panel-body { padding: 0.6rem 1rem 1rem; }

/* Leaderboard rows */
.dx-lb-row {
    display: grid;
    grid-template-columns: 28px 1fr auto;
    align-items: center;
    gap: 0.6rem;
    padding: 0.55rem 0;
    border-bottom: 1px dashed rgba(255,255,255,0.04);
    font-size: 0.88rem;
}
.dx-lb-row:last-child { border-bottom: none; }
.dx-lb-rank {
    font-family: var(--mono);
    font-weight: 800;
    color: var(--text-muted);
    font-size: 0.85rem;
}
.dx-lb-rank.t1 { color: #fbbf24; }
.dx-lb-rank.t2 { color: #d1d5db; }
.dx-lb-rank.t3 { color: #c87f5a; }
.dx-lb-name {
    color: #fff;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dx-lb-name .dx-tier {
    margin-left: 0.4rem;
    font-family: var(--mono);
    font-size: 0.6rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.1rem 0.35rem;
    border: 1px solid currentColor;
}
.dx-lb-pts {
    font-family: var(--mono);
    font-weight: 800;
    color: var(--accent-light);
    font-size: 0.85rem;
}

/* Center: bracket / event card */
.dx-bracket-card {
    text-align: center;
    padding: 1.5rem;
}
.dx-bracket-tag {
    display: inline-block;
    font-family: var(--mono);
    font-size: 0.68rem;
    color: var(--accent-cyan);
    letter-spacing: 0.2em;
    text-transform: uppercase;
    border: 1px solid var(--accent-cyan);
    padding: 0.2rem 0.6rem;
    margin-bottom: 0.85rem;
}
.dx-bracket-h {
    font-size: 2.2rem;
    color: #fff;
    font-weight: 900;
    line-height: 1.05;
    margin: 0 0 0.55rem;
    letter-spacing: -0.02em;
}
.dx-bracket-meta {
    font-family: var(--mono);
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 1.4rem;
    letter-spacing: 0.06em;
}
.dx-bracket-meta b { color: var(--accent-light); font-weight: 800; }

.dx-bracket-cta {
    display: inline-flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: center;
}
.dx-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.7rem 1.1rem;
    font-family: var(--mono);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--border);
    color: var(--text);
    background: rgba(255,255,255,0.02);
    transition: border-color .12s, background .12s, color .12s;
}
.dx-btn:hover { border-color: var(--accent); color: #fff; }
.dx-btn.primary {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
}
.dx-btn.primary:hover { background: var(--accent-light); border-color: var(--accent-light); }
.dx-btn.cyan {
    background: var(--accent-cyan);
    color: #000;
    border-color: var(--accent-cyan);
}
.dx-btn.cyan:hover { background: #0ee2f5; }

/* Right column: you / activity */
.dx-you {
    background: linear-gradient(135deg, rgba(124,58,237,0.16), transparent);
    border: 1px solid rgba(124,58,237,0.4);
    padding: 1rem;
    margin-bottom: 0.5rem;
}
.dx-you-name {
    font-weight: 800;
    color: #fff;
    font-size: 1rem;
    margin-bottom: 0.2rem;
}
.dx-you-stat {
    font-family: var(--mono);
    font-size: 0.75rem;
    color: var(--text-muted);
}
.dx-you-stat b {
    color: var(--accent-light);
    font-weight: 800;
}
.dx-you-actions {
    display: flex;
    gap: 0.4rem;
    margin-top: 0.85rem;
}
.dx-you-actions a {
    flex: 1;
    text-align: center;
    padding: 0.5rem;
    background: rgba(0,0,0,0.4);
    border: 1px solid var(--border);
    color: var(--text);
    font-family: var(--mono);
    font-size: 0.7rem;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.dx-you-actions a:hover { border-color: var(--accent); color: #fff; }

.dx-act-row {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.55rem 0;
    border-bottom: 1px dashed rgba(255,255,255,0.04);
    font-size: 0.82rem;
}
.dx-act-row:last-child { border-bottom: none; }
.dx-act-time {
    font-family: var(--mono);
    font-size: 0.66rem;
    color: var(--text-muted);
    flex-shrink: 0;
    width: 50px;
}
.dx-act-msg { color: var(--text); flex: 1; }
.dx-act-msg b { color: #fff; font-weight: 700; }
.dx-act-msg em { color: var(--accent-cyan); font-style: normal; font-weight: 700; }

/* Bottom rail: products */
.dx-rail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}
.dx-tile {
    display: block;
    padding: 1rem 1.1rem;
    background: var(--bg-card);
    border: 1px solid var(--border);
    text-decoration: none;
    color: var(--text);
    transition: border-color .12s, transform .12s;
}
.dx-tile:hover { border-color: var(--accent); transform: translateY(-1px); }
.dx-tile-h {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}
.dx-tile-h i { color: var(--accent-cyan); font-size: 1.05rem; }
.dx-tile-h span {
    font-family: var(--mono);
    font-size: 0.7rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.dx-tile-h b { color: #fff; font-weight: 800; font-size: 0.95rem; margin-left: auto; font-family: var(--mono); }
.dx-tile-name {
    font-size: 1.05rem;
    color: #fff;
    font-weight: 800;
    margin-bottom: 0.25rem;
    letter-spacing: -0.01em;
}
.dx-tile-sub {
    font-size: 0.78rem;
    color: var(--text-muted);
    line-height: 1.4;
}

/* Empty-state copy */
.dx-empty {
    padding: 1.2rem;
    text-align: center;
    color: var(--text-muted);
    font-family: var(--mono);
    font-size: 0.78rem;
    letter-spacing: 0.06em;
}
.dx-empty strong { color: var(--accent-cyan); font-weight: 800; }

/* ==========================================================
   Auth pages (login / register / arena/join) — console reskin
   Overrides classes from includes/auth_styles.php so both pages
   inherit the new look without rewriting their markup.
   ========================================================== */
.auth-page { padding-top: 4rem !important; }
.auth-page::before {
    background: radial-gradient(circle, rgba(124,58,237,0.18) 0%, transparent 60%) !important;
}
.auth-card {
    background: #050507 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    box-shadow: 0 0 0 1px rgba(124,58,237,0.2) inset, 0 30px 80px rgba(0,0,0,0.6) !important;
    position: relative;
}
.auth-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), var(--accent-cyan), transparent);
}
.auth-header {
    padding: 1.4rem 1.6rem 0.5rem !important;
}
.auth-logo { margin-top: 1.2rem !important; margin-bottom: 0.4rem !important; gap: 0.45rem !important; }
.auth-logo-icon {
    width: 32px !important; height: 32px !important;
    background: transparent !important;
    background-image: url('/images/argonar-logo.svg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    border-radius: 0 !important;
    filter: drop-shadow(0 0 6px rgba(34,211,238,0.25));
}
.auth-logo-icon i { display: none; }
.auth-logo-icon::before { content: ''; display: none; }
.auth-logo-text {
    font-size: 1rem !important;
    font-weight: 800 !important;
    color: #fff !important;
    letter-spacing: 0.01em !important;
    text-transform: uppercase;
}
.auth-logo-text span {
    font-family: var(--mono);
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.18em !important;
    margin-left: 0.3rem;
    text-transform: uppercase;
    font-weight: 700 !important;
}
.auth-logo-text span::before { content: '// '; color: var(--accent-cyan); }
.auth-tabs {
    background: transparent !important;
    border-bottom: 1px solid var(--border);
    padding: 0 1.6rem !important;
    margin: 0 !important;
    gap: 0 !important;
    border-radius: 0 !important;
}
.auth-tab {
    border-radius: 0 !important;
    color: var(--text-muted) !important;
    font-family: var(--mono) !important;
    font-size: 0.72rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding: 0.85rem 0.5rem !important;
    border-bottom: 2px solid transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    transition: color .12s, border-color .12s;
}
.auth-tab.active {
    background: transparent !important;
    color: #fff !important;
    border-bottom-color: var(--accent) !important;
    box-shadow: none !important;
}
.auth-tab:not(.active):hover { color: #fff !important; background: transparent !important; }
.auth-divider { display: none !important; }
.auth-body { padding: 1.5rem 1.6rem 1.7rem !important; }
.auth-field { margin-bottom: 0.95rem !important; }
.auth-field label {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.2em !important;
    font-weight: 700 !important;
    margin-bottom: 0.4rem !important;
}
.auth-input-wrap input {
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-size: 0.9rem !important;
    padding: 0.75rem 1rem 0.75rem 2.4rem !important;
    transition: border-color .12s, background .12s !important;
}
.auth-input-wrap input:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
    background: #050507 !important;
}
.auth-input-wrap .field-icon { color: var(--accent-cyan) !important; left: 0.85rem !important; font-size: 0.85rem !important; }
.auth-input-wrap input::placeholder { color: var(--text-muted) !important; opacity: 0.6; }
.auth-submit {
    background: var(--accent) !important;
    color: #fff !important;
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.82rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    padding: 0.95rem !important;
    box-shadow: none !important;
    transition: background .12s, transform .12s !important;
}
.auth-submit:hover {
    background: var(--accent-light) !important;
    transform: none !important;
    box-shadow: 0 0 0 1px var(--accent-light) inset !important;
}
.auth-submit i { font-size: 0.9rem !important; }
.auth-errors {
    background: rgba(239,68,68,0.08) !important;
    border: 1px solid rgba(239,68,68,0.4) !important;
    border-radius: 0 !important;
    color: #fca5a5 !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
}
.auth-errors div::before { content: '> '; color: #ef4444; }
.auth-errors i { display: none; }
.auth-foot {
    font-family: var(--mono) !important;
    font-size: 0.72rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.04em;
}
.auth-foot a { color: var(--accent-cyan) !important; }
.back-home {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    color: var(--text-muted) !important;
}
.pw-toggle { color: var(--text-muted) !important; }
.pw-toggle:hover { color: var(--accent-cyan) !important; }
.label-optional { font-family: var(--mono); font-size: 0.62rem !important; color: var(--text-muted) !important; }

/* Captcha + honeypot field on the auth pages */
.cap-row label { font-family: var(--mono) !important; font-size: 0.62rem !important; }
.cap-row input { background: #000 !important; border: 1px solid var(--border) !important; border-radius: 0 !important; font-family: var(--mono) !important; }
.cap-row input:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 1px var(--accent) inset !important; }

/* ==========================================================
   Team registration page (register-team.php) — console reskin
   Scoped to .reg-container so it doesn't bleed into other Bootstrap
   forms across the site.
   ========================================================== */
.reg-container {
    max-width: 720px !important;
    margin: 2.5rem auto 4rem !important;
    padding: 0 1.25rem !important;
}
.reg-container .back-link {
    font-family: var(--mono);
    font-size: 0.66rem;
    color: var(--text-muted) !important;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
}
.reg-container .back-link:hover { color: var(--accent-cyan) !important; }

.reg-container .reg-card {
    background: #050507 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1.6rem 1.6rem 1.8rem !important;
    box-shadow: 0 0 0 1px rgba(124,58,237,0.2) inset, 0 30px 80px rgba(0,0,0,0.6) !important;
    position: relative !important;
}
.reg-container .reg-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), var(--accent-cyan), transparent);
}
.reg-container .reg-card h2 {
    font-size: 1.55rem !important;
    font-weight: 900 !important;
    color: #fff !important;
    margin: 0 0 0.3rem !important;
    letter-spacing: -0.02em !important;
}
.reg-container .reg-card h2::before {
    content: '// ';
    color: var(--accent-cyan);
    font-family: var(--mono);
    font-weight: 700;
}
.reg-container .reg-card .subtitle {
    font-family: var(--mono) !important;
    font-size: 0.75rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-bottom: 1.4rem !important;
}
.reg-container .section-label {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2em !important;
    font-weight: 800 !important;
    padding-bottom: 0.45rem !important;
    margin: 1.5rem 0 0.85rem !important;
    border-bottom: 1px solid var(--border) !important;
    border-radius: 0 !important;
    background: transparent !important;
}
.reg-container .section-label::before {
    content: '> ';
    color: var(--accent-cyan);
}
.reg-container .form-label {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    font-weight: 700 !important;
    margin-bottom: 0.4rem !important;
}
.reg-container .form-control,
.reg-container .form-select {
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-size: 0.88rem !important;
    padding: 0.7rem 0.95rem !important;
    box-shadow: none !important;
}
.reg-container .form-control:focus,
.reg-container .form-select:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
    background: #050507 !important;
}
.reg-container .form-control::placeholder { color: var(--text-muted) !important; opacity: 0.55; }
.reg-container input[type="file"].form-control {
    padding: 0.55rem 0.7rem !important;
    color: var(--text-muted) !important;
}
.reg-container .form-text { font-family: var(--mono); font-size: 0.66rem !important; letter-spacing: 0.04em; }

/* The 5 member panels: kill rounded corners + lighten the bg framing.
   Inline styles set border-radius:10px so we override with !important. */
.reg-container .reg-card form > .mb-3[style*="border-radius:10px"] {
    border-radius: 0 !important;
    background: rgba(255,255,255,0.015) !important;
    border-left: 2px solid var(--border) !important;
    padding: 0.85rem 1rem !important;
    transition: border-color .15s;
}
.reg-container .reg-card form > .mb-3[style*="border-radius:10px"]:focus-within {
    border-left-color: var(--accent-cyan) !important;
}

.reg-container .alert-custom {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    padding: 0.75rem 0.95rem !important;
    line-height: 1.55;
}
.reg-container .alert-custom.alert-danger {
    background: rgba(239,68,68,0.08) !important;
    border: 1px solid rgba(239,68,68,0.45) !important;
    color: #fca5a5 !important;
}
.reg-container .alert-custom i { color: #ef4444 !important; margin-right: 0.4rem; }

.reg-container .payment-info {
    background: linear-gradient(135deg, rgba(124,58,237,0.12), rgba(34,211,238,0.04)) !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1.2rem 1.3rem !important;
    text-align: center !important;
    margin-bottom: 0.9rem !important;
    position: relative;
}
.reg-container .payment-info::before {
    content: 'ENTRY FEE';
    position: absolute;
    top: 0.7rem;
    left: 1rem;
    font-family: var(--mono);
    font-size: 0.6rem;
    color: var(--accent-cyan);
    letter-spacing: 0.2em;
    font-weight: 800;
}
.reg-container .payment-info .fee {
    font-family: var(--mono) !important;
    font-size: 2.6rem !important;
    font-weight: 900 !important;
    color: #fff !important;
    line-height: 1 !important;
    margin: 0.85rem 0 0.5rem !important;
    letter-spacing: -0.02em !important;
}
.reg-container .payment-info p {
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 !important;
}

/* The "payment methods available after registration" callout — flatten its corners */
.reg-container .reg-card form > div[style*="rgba(139,92,246,0.06)"] {
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    background: rgba(124,58,237,0.04) !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
}

.reg-container .terms-section {
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1rem 1.2rem !important;
    margin-bottom: 1.1rem !important;
}
.reg-container .terms-title {
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    color: var(--accent-cyan) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    margin-bottom: 0.7rem !important;
}
.reg-container .terms-body {
    font-size: 0.78rem !important;
    line-height: 1.6 !important;
    color: var(--text) !important;
}
.reg-container .terms-body ul { padding-left: 1.1rem; margin-top: 0.4rem; }
.reg-container .terms-body strong { color: var(--accent-light) !important; }
.reg-container .terms-checkbox {
    display: flex !important;
    align-items: flex-start !important;
    gap: 0.6rem !important;
    font-size: 0.78rem !important;
    color: var(--text-muted) !important;
    margin-top: 0.85rem;
    cursor: pointer;
    line-height: 1.55 !important;
}
.reg-container .terms-checkbox input { margin-top: 0.18rem; accent-color: var(--accent); }
.reg-container .terms-checkbox a { color: var(--accent-cyan) !important; }

.reg-container .btn-submit {
    width: 100% !important;
    background: var(--accent) !important;
    color: #fff !important;
    border: 1px solid var(--accent) !important;
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    padding: 1rem !important;
    cursor: pointer;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem;
    transition: background .12s, box-shadow .12s !important;
}
.reg-container .btn-submit:hover {
    background: var(--accent-light) !important;
    border-color: var(--accent-light) !important;
    box-shadow: 0 0 0 1px var(--accent-light) inset !important;
    transform: none !important;
}

/* ==========================================================
   Dashboard (dashboard.php) — console reskin
   Scoped to .db so the rest of the site stays untouched.
   ========================================================== */
.db { max-width: 1180px !important; padding: 1.5rem 1.1rem 5rem !important; }

/* Top bar: avatar + welcome + actions */
.db .db-top {
    border-bottom: 1px solid var(--border) !important;
    padding-bottom: 1.1rem !important;
    margin-bottom: 1.4rem !important;
}
.db .db-av {
    border-radius: 0 !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-cyan)) !important;
    color: #000 !important;
    font-family: var(--mono) !important;
    font-weight: 900 !important;
    width: 36px !important;
    height: 36px !important;
    font-size: 0.95rem !important;
}
.db .db-welcome-name {
    font-family: var(--mono);
    font-size: 0.78rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 700 !important;
}
.db .db-welcome-name::before { content: '> '; color: var(--accent-cyan); }
.db .db-welcome-sub {
    font-family: var(--mono);
    font-size: 0.65rem !important;
    color: var(--text-muted) !important;
    opacity: 0.7;
}
.db .db-top-btn {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    padding: 0.5rem 0.85rem !important;
}

/* Stat cards */
.db .db-stats { gap: 0 !important; border: 1px solid var(--border) !important; background: var(--bg-card) !important; }
.db .db-stat {
    background: transparent !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1rem 1.2rem !important;
}
.db .db-stat:last-child { border-right: none !important; }
.db .db-stat:hover { background: rgba(124,58,237,0.04) !important; border-color: var(--border) !important; }
.db .db-stat-ico { display: none !important; }
.db .db-stat-val {
    font-family: var(--mono) !important;
    font-size: 1.9rem !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
}
.db .db-stat-lbl {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    margin-top: 0;
    order: -1;
}
.db .db-stat-sub {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--accent-cyan) !important;
    letter-spacing: 0.05em;
    margin-top: 0.4rem !important;
}

/* Alerts */
.db .db-alert {
    border-radius: 0 !important;
    border-left: 3px solid #ef4444 !important;
    background: rgba(239,68,68,0.06) !important;
}
.db .db-alert-title {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    text-transform: uppercase;
    letter-spacing: 0.12em !important;
}
.db .db-alert-text { font-size: 0.82rem !important; }
.db .db-alert-cta {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding: 0.6rem 1.1rem !important;
}

/* Cards */
.db .db-card {
    background: var(--bg-card) !important;
    border-radius: 0 !important;
}
.db .db-card-head { padding: 0.75rem 1rem !important; border-bottom: 1px solid var(--border) !important; }
.db .db-card-label {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.2em !important;
}
.db .db-card-link {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--accent-cyan) !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.db .db-card-link:hover { color: #fff !important; text-decoration: none !important; }

/* HC hero (balance card) */
.db .db-hc-big {
    font-family: var(--mono) !important;
    font-size: 2.3rem !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
}
.db .db-hc-big img { display: none !important; }
.db .db-hc-big::before {
    content: '\20B1';
    color: var(--accent-light);
    font-family: var(--mono);
    margin-right: 0.2rem;
}
.db .db-hc-unit { display: none !important; }
.db .db-hc-sub { font-family: var(--mono) !important; font-size: 0.66rem !important; letter-spacing: 0.1em; text-transform: uppercase; }

/* Action button grid */
.db .db-action {
    border-radius: 0 !important;
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid var(--border) !important;
    color: var(--text) !important;
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    padding: 0.85rem 0.3rem !important;
    transition: border-color .12s, color .12s !important;
}
.db .db-action:hover {
    background: rgba(124,58,237,0.06) !important;
    border-color: var(--accent) !important;
    color: var(--accent-cyan) !important;
    transform: none !important;
}
.db .db-action.primary {
    background: var(--accent) !important;
    border-color: var(--accent) !important;
    color: #fff !important;
}
.db .db-action.primary:hover { background: var(--accent-light) !important; border-color: var(--accent-light) !important; color: #fff !important; }

/* Transaction rows */
.db .db-tx { font-family: var(--mono) !important; font-size: 0.78rem !important; }
.db .db-tx-lbl { color: var(--text) !important; font-size: 0.78rem !important; }
.db .db-tx-amt { font-family: var(--mono) !important; }
.db .db-tx-date, .db .db-tx-ref { font-family: var(--mono) !important; font-size: 0.62rem !important; letter-spacing: 0.05em; }

/* Prediction rows */
.db .db-pred { font-size: 0.82rem !important; }
.db .db-pred-meta { font-family: var(--mono) !important; font-size: 0.62rem !important; letter-spacing: 0.06em; }

/* Badges */
.db .db-badge {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.58rem !important;
    letter-spacing: 0.14em !important;
    border: 1px solid currentColor !important;
    background: transparent !important;
    padding: 0.2rem 0.45rem !important;
}

/* Announcement rows */
.db .db-ann-title { font-size: 0.85rem !important; color: #fff !important; }
.db .db-ann-body { font-size: 0.78rem !important; }
.db .db-ann-date { font-family: var(--mono) !important; font-size: 0.6rem !important; letter-spacing: 0.06em; }
.db .db-ann-dot { border-radius: 0 !important; width: 4px !important; height: 14px !important; margin-top: 0.25rem !important; }

/* Next-match strip */
.db .db-match-card {
    border-radius: 0 !important;
    background: linear-gradient(135deg, rgba(124,58,237,0.12), rgba(34,211,238,0.04)) !important;
    border: 1px solid var(--border) !important;
    border-left: 3px solid var(--accent) !important;
}
.db .db-match-team {
    font-family: var(--mono);
    font-size: 0.92rem !important;
    color: #fff !important;
    letter-spacing: -0.01em;
}
.db .db-match-vs-badge {
    font-family: var(--mono) !important;
    border-radius: 0 !important;
    background: var(--accent-cyan) !important;
    color: #000 !important;
    border: none !important;
    letter-spacing: 0.14em;
}

/* Registration rows */
.db .db-reg-row { font-family: var(--mono) !important; font-size: 0.78rem !important; }
.db .db-reg-lbl { font-size: 0.66rem !important; text-transform: uppercase; letter-spacing: 0.12em; }
.db .db-reg-val.code { color: var(--accent-cyan) !important; letter-spacing: 0.06em !important; }

/* Form fields */
.db .db-field input,
.db .db-roster-row input,
.db .db-roster-row select {
    border-radius: 0 !important;
    background: #000 !important;
    border: 1px solid var(--border) !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-size: 0.84rem !important;
}
.db .db-field input:focus,
.db .db-roster-row input:focus,
.db .db-roster-row select:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
}
.db .db-field label {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.2em !important;
}
.db .db-save {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    padding: 0.65rem 1.2rem !important;
}
.db .db-save:hover { background: var(--accent-light) !important; }
.db .db-ok, .db .db-err {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
}
.db .db-empty {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.04em;
}

/* Season pass / claim strips */
.db .db-pass {
    border-radius: 0 !important;
}
.db .db-pass-icon { border-radius: 0 !important; }

/* ==========================================================
   Predict (predict.php) — console reskin
   Scoped under .predict-wrap.
   ========================================================== */
.predict-wrap { max-width: 720px !important; padding: 0 1.1rem 4rem !important; }

.predict-wrap .predict-hero {
    background: linear-gradient(135deg, rgba(124,58,237,0.16), rgba(34,211,238,0.04)) !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1.6rem !important;
    position: relative;
}
.predict-wrap .predict-hero::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), var(--accent-cyan), transparent);
}
.predict-wrap .predict-hero h1 {
    font-family: var(--mono);
    font-size: 1.4rem !important;
    color: #fff !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.predict-wrap .predict-hero h1::before { content: '// '; color: var(--accent-cyan); font-weight: 700; }
.predict-wrap .predict-hero p {
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.predict-wrap .balance-pill {
    border-radius: 0 !important;
    background: rgba(0,0,0,0.4) !important;
    border: 1px solid var(--accent) !important;
    color: var(--accent-light) !important;
    font-family: var(--mono) !important;
    font-size: 0.75rem !important;
    padding: 0.4rem 0.85rem !important;
    letter-spacing: 0.08em;
}

.predict-wrap .section-label {
    border-radius: 0 !important;
    border-left: 3px solid currentColor !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    background: transparent !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase;
    letter-spacing: 0.18em !important;
    padding: 0.55rem 0.85rem !important;
    margin: 1.5rem 0 0.7rem !important;
}
.predict-wrap .round-label {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase;
    letter-spacing: 0.18em !important;
    color: var(--text-muted) !important;
}

.predict-wrap .match-card {
    background: var(--bg-card) !important;
    border-radius: 0 !important;
    border-color: var(--border) !important;
    padding: 1rem 1.2rem !important;
    transition: border-color .12s !important;
}
.predict-wrap .match-card.is-live {
    border-left: 3px solid #ef4444 !important;
}
.predict-wrap .match-card.is-completed { opacity: 0.65 !important; }

.predict-wrap .team-name {
    font-family: var(--mono);
    font-size: 0.92rem !important;
    color: #fff !important;
    letter-spacing: -0.01em;
}
.predict-wrap .team-pool {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.06em;
}
.predict-wrap .team-mult {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    color: #34d399 !important;
}
.predict-wrap .vs-badge {
    border-radius: 0 !important;
    background: var(--accent-cyan) !important;
    color: #000 !important;
    font-family: var(--mono) !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.18em;
    padding: 0.2rem 0.55rem !important;
}

.predict-wrap .odds-row {
    border-radius: 0 !important;
    height: 4px !important;
    background: rgba(255,255,255,0.04) !important;
}
.predict-wrap .odds-fill-a { background: var(--accent) !important; }
.predict-wrap .odds-fill-b { background: var(--accent-cyan) !important; }

.predict-wrap .pick-btn {
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    background: rgba(255,255,255,0.02) !important;
    color: var(--text-muted) !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    padding: 0.6rem 0.5rem !important;
}
.predict-wrap .pick-btn:hover { border-color: var(--accent) !important; color: #fff !important; background: rgba(124,58,237,0.06) !important; }
.predict-wrap .pick-btn.active-a {
    border-color: var(--accent) !important;
    background: var(--accent) !important;
    color: #fff !important;
}
.predict-wrap .pick-btn.active-b {
    border-color: var(--accent-cyan) !important;
    background: var(--accent-cyan) !important;
    color: #000 !important;
}

.predict-wrap .stake-input,
.predict-wrap .futures-select {
    border-radius: 0 !important;
    background: #000 !important;
    border: 1px solid var(--border) !important;
    color: #fff !important;
    font-family: var(--mono) !important;
}
.predict-wrap .stake-input:focus,
.predict-wrap .futures-select:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
}
.predict-wrap .stake-submit {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.55rem 1.1rem !important;
    background: var(--accent) !important;
}
.predict-wrap .stake-submit:hover { background: var(--accent-light) !important; opacity: 1 !important; }
.predict-wrap .stake-hint { font-family: var(--mono) !important; font-size: 0.66rem !important; letter-spacing: 0.06em; }
.predict-wrap .quick-hc {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    border: 1px solid var(--border) !important;
    background: transparent !important;
}
.predict-wrap .quick-hc:hover { border-color: var(--accent) !important; background: rgba(124,58,237,0.08) !important; }

.predict-wrap .my-stake {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    border-left: 3px solid #34d399 !important;
    background: rgba(52,211,153,0.06) !important;
}
.predict-wrap .my-stake.lost { border-left-color: #ef4444 !important; background: rgba(239,68,68,0.06) !important; }

.predict-wrap .winner-tag {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding: 0.18rem 0.5rem !important;
}
.predict-wrap .pari-note {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    background: rgba(124,58,237,0.06) !important;
    border: 1px solid var(--border) !important;
    border-left: 3px solid var(--accent) !important;
}
.predict-wrap .no-matches {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border: 1px dashed var(--border);
    margin-top: 1rem;
}

/* Login modal lives only on this page; matches the cmdk shell */
.predict-wrap ~ .login-modal-bg .login-modal,
body > .login-modal-bg .login-modal {
    background: #050507 !important;
    border: 1px solid var(--accent) !important;
    border-radius: 0 !important;
    box-shadow: 0 0 0 1px rgba(124,58,237,0.4) inset, 0 30px 80px rgba(124,58,237,0.25) !important;
}
.login-modal h3 { font-family: var(--mono); text-transform: uppercase; letter-spacing: 0.1em; }
.login-modal-btn { border-radius: 0 !important; font-family: var(--mono) !important; text-transform: uppercase; letter-spacing: 0.14em !important; }

/* ==========================================================
   Marketplace (marketplace.php) — console reskin
   Scoped under .mkp-page.
   ========================================================== */
.mkp-page { max-width: 1180px !important; padding: 1.5rem 1.1rem 4rem !important; }

.mkp-page .mkp-hero {
    background: linear-gradient(135deg, rgba(124,58,237,0.16), rgba(34,211,238,0.04)) !important;
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    padding: 1.6rem !important;
    position: relative;
}
.mkp-page .mkp-hero::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), var(--accent-cyan), transparent);
}
.mkp-page .mkp-hero-left h1 {
    font-family: var(--mono);
    font-size: 1.4rem !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.mkp-page .mkp-hero-left h1::before { content: '// '; color: var(--accent-cyan); font-weight: 700; }
.mkp-page .mkp-hero-left p {
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.mkp-page .mkp-balance-pill {
    border-radius: 0 !important;
    background: rgba(0,0,0,0.4) !important;
    border: 1px solid var(--accent) !important;
    color: var(--accent-light) !important;
    font-family: var(--mono) !important;
    font-size: 0.85rem !important;
    padding: 0.45rem 0.95rem !important;
}
.mkp-page .mkp-balance-pill img { display: none !important; }
.mkp-page .mkp-balance-pill::before { content: '\20B1'; margin-right: 0.2rem; color: var(--accent-light); }

.mkp-page .mkp-tabs {
    background: transparent !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}
.mkp-page .mkp-tab {
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--text-muted) !important;
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    padding: 0.6rem 1rem !important;
    border-right: 1px solid var(--border);
}
.mkp-page .mkp-tab:last-child { border-right: none; }
.mkp-page .mkp-tab.active {
    background: var(--accent) !important;
    color: #fff !important;
    box-shadow: none !important;
}
.mkp-page .mkp-sell-btn {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.6rem 1.1rem !important;
    box-shadow: none !important;
    background: var(--accent-cyan) !important;
    color: #000 !important;
}
.mkp-page .mkp-sell-btn:hover { background: #0ee2f5 !important; }

.mkp-page .mkp-cats { gap: 0.4rem !important; }
.mkp-page .mkp-cat-btn {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    text-transform: uppercase;
    letter-spacing: 0.12em !important;
    border: 1px solid var(--border) !important;
    background: transparent !important;
    color: var(--text-muted) !important;
    padding: 0.45rem 0.8rem !important;
}
.mkp-page .mkp-cat-btn.active,
.mkp-page .mkp-cat-btn:hover {
    border-color: var(--accent) !important;
    color: #fff !important;
    background: rgba(124,58,237,0.06) !important;
}

.mkp-page .mkp-grid { gap: 1rem !important; }
.mkp-page .mkp-card {
    background: var(--bg-card) !important;
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    transition: border-color .12s, transform .12s !important;
}
.mkp-page .mkp-card:hover { border-color: var(--accent) !important; transform: translateY(-1px); }
.mkp-page .mkp-card-img-placeholder { border-radius: 0 !important; }
.mkp-page .mkp-card-img, .mkp-page .mkp-card-gallery img { border-radius: 0 !important; }
.mkp-page .mkp-card-cat {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    text-transform: uppercase;
    letter-spacing: 0.16em !important;
    color: var(--accent-cyan) !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 1px solid var(--accent-cyan);
    padding: 0.12rem 0.45rem !important;
}
.mkp-page .mkp-card-title {
    font-size: 1rem !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
}
.mkp-page .mkp-card-desc { font-size: 0.78rem !important; color: var(--text-muted); }
.mkp-page .mkp-price {
    font-family: var(--mono) !important;
    font-size: 1.15rem !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
}
.mkp-page .mkp-price-unit {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.mkp-page .mkp-buy-btn,
.mkp-page .mkp-remove-btn {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.55rem 0.95rem !important;
    box-shadow: none !important;
}
.mkp-page .mkp-empty {
    border-radius: 0 !important;
    border: 1px dashed var(--border) !important;
    background: transparent !important;
    font-family: var(--mono);
    font-size: 0.85rem;
}
.mkp-page .mkp-section-title {
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase;
    letter-spacing: 0.18em !important;
    color: var(--text-muted) !important;
    border-left: 3px solid var(--accent);
    padding-left: 0.6rem !important;
    border-radius: 0 !important;
}

.mkp-page .mkp-my-section { background: var(--bg-card) !important; border-radius: 0 !important; border: 1px solid var(--border); }
.mkp-page .mkp-my-row { border-radius: 0 !important; }
.mkp-page .mkp-my-title { font-size: 0.95rem !important; color: #fff !important; }
.mkp-page .mkp-my-meta, .mkp-page .mkp-my-info { font-family: var(--mono) !important; font-size: 0.7rem !important; }

.mkp-page .mkp-modal {
    background: #050507 !important;
    border: 1px solid var(--accent) !important;
    border-radius: 0 !important;
    box-shadow: 0 0 0 1px rgba(124,58,237,0.4) inset !important;
}
.mkp-page .mkp-modal-title { font-family: var(--mono); text-transform: uppercase; letter-spacing: 0.1em; }
.mkp-page .mkp-form-field input,
.mkp-page .mkp-form-field textarea,
.mkp-page .mkp-form-field select {
    border-radius: 0 !important;
    background: #000 !important;
    border: 1px solid var(--border) !important;
    font-family: var(--mono) !important;
    color: #fff !important;
}
.mkp-page .mkp-form-field input:focus,
.mkp-page .mkp-form-field textarea:focus,
.mkp-page .mkp-form-field select:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
}
.mkp-page .mkp-form-field label {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    color: var(--text-muted) !important;
}
.mkp-page .mkp-img-zone {
    border-radius: 0 !important;
    border: 1px dashed var(--border) !important;
    background: rgba(0,0,0,0.3) !important;
}
.mkp-page .mkp-img-zone-label { font-family: var(--mono) !important; }
.mkp-page .mkp-img-preview { border-radius: 0 !important; }
.mkp-page .mkp-modal-actions button,
.mkp-page .mkp-modal-cancel,
.mkp-page .mkp-modal-submit {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
}
.mkp-page .mkp-modal-error {
    border-radius: 0 !important;
    border-left: 3px solid #ef4444 !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
}

/* ==========================================================
   Chat sidebar (includes/chat_sidebar.php) — console reskin
   Scoped under .cs-side. Leaves chat-box internals (.cs-box*) +
   modals + voice UI untouched; only retunes the rail itself.
   ========================================================== */
.cs-side {
    background: #050507 !important;
    border-left: 1px solid var(--border) !important;
    box-shadow: -1px 0 0 rgba(124,58,237,0.18), -8px 0 32px rgba(0,0,0,0.55) !important;
}

/* Kill the chat rail entirely on mobile — sidebar, floating launcher,
   toast stack, modals, everything chat-related. Chat is desktop-only. */
@media (max-width: 1023px) {
    .cs-side,
    .cs-launcher,
    .cs-toast-stack,
    .cs-toggle,
    .cs-boxes,
    .cs-modal,
    .cs-lightbox { display: none !important; }
}

.cs-toggle {
    background: #050507 !important;
    border: 1px solid var(--border) !important;
    border-right: none !important;
    border-radius: 0 !important;
    color: var(--accent-cyan) !important;
}
.cs-toggle:hover { background: rgba(34,211,238,0.06) !important; color: #fff !important; }
.cs-toggle .cs-tab-badge {
    background: var(--accent-cyan) !important;
    color: #000 !important;
    font-family: var(--mono) !important;
    border-radius: 0 !important;
    border: 1px solid var(--accent-cyan) !important;
}

.cs-launcher {
    background: linear-gradient(135deg, var(--accent), var(--accent-cyan)) !important;
    box-shadow: 0 6px 24px rgba(34,211,238,0.35), 0 0 0 1px rgba(0,0,0,0.6) inset !important;
    color: #000 !important;
}
.cs-launcher .cs-badge {
    background: var(--accent-cyan) !important;
    color: #000 !important;
    font-family: var(--mono) !important;
    border-radius: 0 !important;
    border: 1px solid #000 !important;
}

.cs-head {
    background: linear-gradient(90deg, rgba(124,58,237,0.05), transparent 60%) !important;
    border-bottom: 1px solid var(--border) !important;
    position: relative;
}
.cs-head::after {
    content: '';
    position: absolute; left: 0; right: 0; bottom: -1px; height: 1px;
    background: linear-gradient(90deg, var(--accent), var(--accent-cyan), transparent);
}
.cs-head-title {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    color: #fff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    font-weight: 800 !important;
}
.cs-head-title i { color: var(--accent-cyan) !important; }
.cs-head-count {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.cs-head-count::before { content: '// '; color: var(--accent-cyan); }
.cs-tips-btn { color: var(--text-muted) !important; }
.cs-tips-btn:hover { color: var(--accent-cyan) !important; background: rgba(34,211,238,0.06) !important; }

.cs-search-wrap { padding: 0.7rem 0.85rem !important; border-bottom: 1px solid var(--border) !important; }
.cs-search {
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-size: 0.82rem !important;
    padding: 0.55rem 0.85rem 0.55rem 2.1rem !important;
}
.cs-search::placeholder { color: var(--text-muted); opacity: 0.6; }
.cs-search:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 1px var(--accent) inset !important; }

/* User row */
.cs-user {
    border-left: 3px solid transparent !important;
    padding: 0.65rem 0.85rem !important;
    transition: background .12s, border-color .12s;
}
.cs-user:hover { background: rgba(255,255,255,0.03) !important; }
.cs-user.active {
    background: rgba(124,58,237,0.1) !important;
    border-left-color: var(--accent) !important;
}

/* Square (sharp) avatars matching the rest of v2 */
.cs-av {
    border-radius: 0 !important;
    background: linear-gradient(135deg, rgba(124,58,237,0.25), rgba(34,211,238,0.05)) !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-weight: 800 !important;
    width: 36px !important;
    height: 36px !important;
    font-size: 0.85rem !important;
}
.cs-av.team { border-radius: 0 !important; }
.cs-av i.bi-person-fill { font-size: 1.4rem !important; }

.cs-online-dot {
    background: var(--accent-cyan) !important;
    border: 2px solid #050507 !important;
    box-shadow: 0 0 0 1px rgba(34,211,238,0.45) !important;
    border-radius: 0 !important;
    width: 8px !important;
    height: 8px !important;
    right: -1px !important;
    bottom: -1px !important;
}
.cs-private-badge { border-radius: 0 !important; }

.cs-user-name {
    font-family: var(--mono) !important;
    font-size: 0.84rem !important;
    color: #fff !important;
    font-weight: 700 !important;
    letter-spacing: -0.005em;
}
.cs-user-name i.verified { color: var(--accent-cyan) !important; }
.cs-user-msg {
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.02em;
}
.cs-user-time {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.cs-unread {
    background: var(--accent-cyan) !important;
    color: #000 !important;
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-weight: 800 !important;
    font-size: 0.62rem !important;
    padding: 0.1rem 0.4rem !important;
    border: 1px solid var(--accent-cyan);
}

.cs-flair {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.cs-empty {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.04em;
    border: 1px dashed var(--border);
    margin: 0.85rem;
    padding: 1rem;
    text-align: center;
}
.cs-empty::before { content: '// '; color: var(--accent-cyan); }

/* Admin/god-mode row keeps its red treatment but with sharp corners + mono tag */
.cs-user.cs-admin-view {
    background: linear-gradient(90deg, rgba(239,68,68,0.06), rgba(239,68,68,0.01)) !important;
    border-left: 3px solid #ef4444 !important;
}
.cs-admin-view-tag {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.55rem !important;
    letter-spacing: 0.18em !important;
}

/* ==========================================================
   /admin/* console reskin
   Scoped under .admin-container so the rest of the site stays untouched.
   ========================================================== */
.admin-container { max-width: 1200px !important; padding: 1.25rem !important; }

/* Header strip */
.admin-container .admin-header {
    border-bottom: 1px solid var(--border) !important;
    padding-bottom: 1rem !important;
    margin-bottom: 1.4rem !important;
}
.admin-container .admin-header h1 {
    font-family: var(--mono) !important;
    font-size: 1.35rem !important;
    font-weight: 900 !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #fff !important;
    background-clip: initial !important;
    color: #fff !important;
    text-transform: uppercase;
    letter-spacing: 0.04em !important;
}
.admin-container .admin-header h1::before { content: '// '; color: var(--accent-cyan); font-weight: 700; }

/* Header buttons (back-to-site, tools, etc.) */
.admin-container .btn-back-site,
.admin-container .btn-logout {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.5rem 0.85rem !important;
    border: 1px solid var(--border) !important;
}
.admin-container .btn-back-site:hover { border-color: var(--accent) !important; color: #fff !important; }
.admin-container .btn-logout {
    background: rgba(239,68,68,0.08) !important;
    border-color: rgba(239,68,68,0.4) !important;
}
.admin-container .btn-logout:hover { background: rgba(239,68,68,0.16) !important; }

/* Summary stat cards */
.admin-container .summary-cards { gap: 0 !important; border: 1px solid var(--border) !important; background: var(--bg-card) !important; }
.admin-container .summary-card {
    background: transparent !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 1rem 1.2rem !important;
    transition: background .12s;
}
.admin-container .summary-card:last-child { border-right: none !important; }
.admin-container .summary-card:hover { background: rgba(124,58,237,0.04) !important; }
.admin-container .summary-card-warning { border-right: 1px solid var(--border) !important; }
.admin-container .summary-card-warning .summary-icon { background: transparent !important; color: var(--warning) !important; }

.admin-container .summary-icon {
    background: transparent !important;
    color: var(--accent-cyan) !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    font-size: 1rem !important;
    margin-right: 0.5rem;
}
.admin-container .summary-number {
    font-family: var(--mono) !important;
    font-size: 1.85rem !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
    line-height: 1 !important;
}
.admin-container .summary-label {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2em !important;
    margin-top: 0.4rem !important;
}

/* Panels (the bordered boxes throughout admin/index.php) */
.admin-container .admin-panel,
.admin-container .admin-section {
    background: var(--bg-card) !important;
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    margin-bottom: 1.1rem !important;
}
.admin-container .admin-panel-header,
.admin-container .admin-section-header {
    border-radius: 0 !important;
    border-bottom: 1px solid var(--border) !important;
    padding: 0.7rem 1rem !important;
    background: rgba(255,255,255,0.015) !important;
}
.admin-container .admin-panel-header h2,
.admin-container .admin-panel-header h3,
.admin-container .admin-section-header h2,
.admin-container .admin-section-header h3 {
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    color: #fff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    font-weight: 800 !important;
    margin: 0 !important;
}
.admin-container .admin-panel-header h2::before,
.admin-container .admin-panel-header h3::before,
.admin-container .admin-section-header h2::before,
.admin-container .admin-section-header h3::before { content: '// '; color: var(--accent-cyan); }
.admin-container .admin-count {
    font-family: var(--mono) !important;
    font-size: 0.65rem !important;
    color: var(--accent-cyan) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    border: 1px solid var(--border);
    padding: 0.12rem 0.45rem !important;
    border-radius: 0 !important;
}
.admin-container .admin-panel-body { padding: 0.85rem 1rem !important; }

/* Tables */
.admin-container .admin-table {
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    border-collapse: collapse !important;
    width: 100% !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
}
.admin-container .admin-table th {
    background: rgba(255,255,255,0.025) !important;
    border-bottom: 1px solid var(--border) !important;
    color: var(--text-muted) !important;
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    text-align: left;
    padding: 0.55rem 0.8rem !important;
}
.admin-container .admin-table td {
    border-bottom: 1px dashed rgba(255,255,255,0.04) !important;
    padding: 0.55rem 0.8rem !important;
    color: var(--text) !important;
}
.admin-container .admin-table tr:last-child td { border-bottom: none !important; }
.admin-container .admin-table tr:hover td { background: rgba(124,58,237,0.04) !important; }

/* Game cards (per-game stats panel) */
.admin-container .admin-game-cards { gap: 0.85rem !important; }
.admin-container .admin-game-card-header,
.admin-container .admin-game-card {
    border-radius: 0 !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
}
.admin-container .admin-game-card-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 0;
    border-top: 1px solid var(--border);
}
.admin-container .admin-game-stat {
    border-right: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 0.7rem 0.85rem !important;
    background: transparent !important;
}
.admin-container .admin-game-stat:last-child { border-right: none !important; }
.admin-container .admin-game-stat-num {
    font-family: var(--mono) !important;
    font-size: 1.1rem !important;
    color: #fff !important;
    font-weight: 800 !important;
}
.admin-container .admin-game-stat-label {
    font-family: var(--mono) !important;
    font-size: 0.58rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
}
.admin-container .admin-game-bar {
    background: rgba(255,255,255,0.04) !important;
    border-radius: 0 !important;
    height: 3px !important;
}
.admin-container .admin-game-bar-fill {
    background: linear-gradient(90deg, var(--accent), var(--accent-cyan)) !important;
    border-radius: 0 !important;
    height: 100% !important;
}

/* Filter tabs (per-game) */
.admin-container .filter-tabs {
    background: transparent !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    display: flex;
    overflow-x: auto;
    margin-bottom: 1.1rem !important;
}
.admin-container .filter-tabs a,
.admin-container .filter-tabs button {
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--text-muted) !important;
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.55rem 1rem !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
}
.admin-container .filter-tabs a:last-child,
.admin-container .filter-tabs button:last-child { border-right: none !important; }
.admin-container .filter-tabs a.active,
.admin-container .filter-tabs button.active {
    background: var(--accent) !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* Status badges (used across many tables) */
.admin-container .status-badge {
    border-radius: 0 !important;
    border: 1px solid currentColor !important;
    background: transparent !important;
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.15rem 0.5rem !important;
    font-weight: 800 !important;
}

/* Generic alert blocks */
.admin-container .alert-custom {
    border-radius: 0 !important;
    border-left: 3px solid currentColor !important;
    font-family: var(--mono) !important;
    font-size: 0.82rem !important;
    padding: 0.7rem 1rem !important;
}
.admin-container .alert-custom.alert-success { color: #6ee7b7 !important; background: rgba(52,211,153,0.06) !important; border-color: rgba(52,211,153,0.4) !important; }
.admin-container .alert-custom.alert-danger  { color: #fca5a5 !important; background: rgba(239,68,68,0.06) !important;  border-color: rgba(239,68,68,0.4) !important; }
.admin-container .alert-custom.alert-warning { color: #fbbf24 !important; background: rgba(251,191,36,0.06) !important; border-color: rgba(251,191,36,0.4) !important; }
.admin-container .alert-custom.alert-info    { color: var(--accent-cyan) !important; background: rgba(34,211,238,0.06) !important; border-color: rgba(34,211,238,0.4) !important; }

/* Activity rows */
.admin-container .admin-activity-item {
    border-bottom: 1px dashed rgba(255,255,255,0.04) !important;
    border-radius: 0 !important;
    padding: 0.6rem 0 !important;
}
.admin-container .admin-activity-icon {
    border-radius: 0 !important;
    color: var(--accent-cyan) !important;
    background: transparent !important;
    width: auto !important;
    height: auto !important;
}
.admin-container .admin-activity-name { font-weight: 700 !important; color: #fff !important; }
.admin-container .admin-activity-meta {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.04em;
}

/* Forms inside admin */
.admin-container input[type="text"],
.admin-container input[type="number"],
.admin-container input[type="email"],
.admin-container input[type="url"],
.admin-container input[type="date"],
.admin-container input[type="datetime-local"],
.admin-container input[type="password"],
.admin-container textarea,
.admin-container select {
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-family: var(--mono) !important;
    font-size: 0.85rem !important;
    padding: 0.55rem 0.75rem !important;
    box-shadow: none !important;
}
.admin-container input:focus,
.admin-container textarea:focus,
.admin-container select:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
    outline: none !important;
}
.admin-container button[type="submit"],
.admin-container .btn-primary,
.admin-container .btn-action {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.55rem 1rem !important;
    box-shadow: none !important;
}

/* Two-col layout panels */
.admin-container .admin-two-col { gap: 1rem !important; }

/* ==========================================================
   bracket.php — console reskin
   Targets the .bracket-* prefix directly (no wrapper scope needed —
   the prefix is unique to this page).
   ========================================================== */

/* Game-selection grid (when no ?game= specified) */
.bracket-game-grid { gap: 0 !important; max-width: 980px !important; border: 1px solid var(--border); background: var(--bg-card); }
.bracket-game-card {
    border-radius: 0 !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
    background: transparent !important;
    padding: 1.4rem 1.5rem !important;
    transition: background .12s !important;
}
.bracket-game-card:last-child { border-right: none !important; }
.bracket-game-card:hover {
    background: rgba(124,58,237,0.06) !important;
    border-color: var(--border) !important;
    border-right-color: var(--border) !important;
    transform: none !important;
    box-shadow: none !important;
}
.bracket-game-icon {
    border-radius: 0 !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-cyan)) !important;
    color: #000 !important;
}
.bracket-game-info h3,
.bracket-game-info > div:first-child {
    font-family: var(--mono) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: #fff !important;
}
.bracket-game-cta {
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    color: var(--accent-cyan) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
}

/* Bracket page header (per-game) */
.bracket-header { margin-bottom: 1.4rem !important; }
.bracket-title-row { gap: 0.75rem !important; }
.bracket-title-icon {
    border-radius: 0 !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-cyan)) !important;
    color: #000 !important;
}
.bracket-page-title {
    font-family: var(--mono) !important;
    font-size: 1.4rem !important;
    color: #fff !important;
    text-transform: uppercase;
    letter-spacing: 0.04em !important;
}
.bracket-page-title::before { content: '// '; color: var(--accent-cyan); font-weight: 700; }
.bracket-stats-row { gap: 0.4rem !important; flex-wrap: wrap; }
.bracket-stat {
    border-radius: 0 !important;
    background: transparent !important;
    border: 1px solid var(--border) !important;
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    color: var(--text-muted) !important;
    padding: 0.25rem 0.6rem !important;
}
.bracket-stat-live {
    border-color: rgba(239,68,68,0.4) !important;
    color: #fca5a5 !important;
    background: rgba(239,68,68,0.06) !important;
}
.bracket-format-badge {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    background: var(--accent-cyan) !important;
    color: #000 !important;
    border: none !important;
}

/* Section headers (winners / losers / grand) */
.bracket-section { margin-bottom: 1.5rem !important; }
.bracket-section-header {
    border-radius: 0 !important;
    border-left: 3px solid currentColor !important;
    border-top: none !important; border-right: none !important; border-bottom: none !important;
    background: transparent !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    padding: 0.45rem 0.85rem !important;
}
.bracket-section-count {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.14em !important;
}

/* Round columns + titles */
.bracket-round-title {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    border-bottom: 1px solid var(--border);
    padding-bottom: 0.4rem;
}

/* Match cards — sharper, mono numbers */
.bracket-round .match-card,
.bracket-round > div[class*="match"] {
    border-radius: 0 !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    box-shadow: none !important;
    transition: border-color .12s !important;
}
.bracket-round .match-card:hover { border-color: var(--accent) !important; }
.bracket-match-live-bar {
    background: linear-gradient(90deg, #ef4444, #f87171, #ef4444) !important;
    border-radius: 0 !important;
}

.bracket-team-logo,
.bracket-team-logo-placeholder {
    border-radius: 0 !important;
    background: linear-gradient(135deg, rgba(124,58,237,0.25), rgba(34,211,238,0.05)) !important;
}
.team-name {
    font-family: var(--mono) !important;
    font-size: 0.85rem !important;
    color: #fff !important;
    letter-spacing: -0.01em;
}
.team-name.tbd-placeholder {
    color: var(--text-muted) !important;
    font-style: normal;
}
.team-name.tbd-placeholder::before { content: '> '; color: var(--accent-cyan); }
.team-score {
    font-family: var(--mono) !important;
    font-weight: 800 !important;
    color: #fff !important;
    font-size: 1rem !important;
}
.team-rank-sum {
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--accent-cyan) !important;
    letter-spacing: 0.12em !important;
}
.team-row-divider { border-color: var(--border) !important; }
.bracket-unpaid, .bracket-unpaid-inline {
    border-radius: 0 !important;
    color: #fbbf24 !important;
}

/* Match footer (round metadata) */
.match-footer {
    border-top: 1px dashed rgba(255,255,255,0.05) !important;
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase;
}
.match-time { color: var(--accent-cyan) !important; }

/* Empty state + disclaimer */
.bracket-empty-state {
    border: 1px dashed var(--border) !important;
    background: transparent !important;
    border-radius: 0 !important;
    font-family: var(--mono);
    color: var(--text-muted);
}
.bracket-empty-icon { color: var(--accent-cyan) !important; }
.bracket-disclaimer {
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    border-left: 3px solid var(--accent-cyan) !important;
    background: rgba(34,211,238,0.04) !important;
    font-family: var(--mono) !important;
    font-size: 0.78rem !important;
    color: var(--text) !important;
}

.bracket-auto-refresh {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase;
}
.live-dot { border-radius: 0 !important; }

@media (max-width: 720px) {
    .bracket-game-grid { grid-template-columns: 1fr !important; }
    .bracket-game-card { border-right: none !important; border-bottom: 1px solid var(--border) !important; }
    .bracket-game-card:last-child { border-bottom: none !important; }
}

/* ==========================================================
   admin/brackets.php — match-card overrides
   The brackets admin page uses .mc-* classes for match cards
   inside the .admin-container shell. Scope under .admin-container.
   ========================================================== */
.admin-container .mc-grid {
    gap: 0.6rem !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
}
.admin-container .mc-grid > div,
.admin-container .mc-card,
.admin-container [class*="mc-card"] {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    padding: 0.85rem !important;
    transition: border-color .12s !important;
}
.admin-container .mc-live {
    border-left: 3px solid #ef4444 !important;
    box-shadow: none !important;
}
.admin-container .mc-completed { opacity: 0.6 !important; }
.admin-container .mc-head {
    font-family: var(--mono) !important;
    font-size: 0.66rem !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    border-bottom: 1px dashed rgba(255,255,255,0.05);
    padding-bottom: 0.45rem !important;
    margin-bottom: 0.55rem !important;
}
.admin-container .mc-num {
    font-family: var(--mono) !important;
    color: var(--accent-cyan) !important;
    letter-spacing: 0.06em;
}
.admin-container .mc-format,
.admin-container .mc-pill,
.admin-container .mc-pill-live,
.admin-container .mc-pill-done,
.admin-container .mc-pill-upcoming {
    border-radius: 0 !important;
    border: 1px solid currentColor !important;
    background: transparent !important;
    font-family: var(--mono) !important;
    font-size: 0.6rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.1rem 0.4rem !important;
    font-weight: 800 !important;
}
.admin-container .mc-pill-live     { color: #fca5a5 !important; }
.admin-container .mc-pill-done     { color: #6ee7b7 !important; }
.admin-container .mc-pill-upcoming { color: var(--accent-cyan) !important; }

.admin-container .mc-teams {
    border-radius: 0 !important;
    background: rgba(0,0,0,0.25) !important;
    border: 1px solid var(--border) !important;
    padding: 0.55rem !important;
    margin: 0.45rem 0 !important;
}
.admin-container .mc-team-name {
    font-family: var(--mono) !important;
    font-size: 0.85rem !important;
    color: #fff !important;
    letter-spacing: -0.01em;
}
.admin-container .mc-team-form {
    border-radius: 0 !important;
    background: #000 !important;
    border: 1px solid var(--border) !important;
    color: #fff !important;
    font-family: var(--mono) !important;
}
.admin-container .mc-team-form:focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 1px var(--accent) inset !important;
}
.admin-container .mc-vs {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.18em !important;
    border-top: 1px dashed rgba(255,255,255,0.05);
    border-bottom: 1px dashed rgba(255,255,255,0.05);
    padding: 0.18rem 0 !important;
    margin: 0.25rem 0 !important;
}
.admin-container .mc-score {
    font-family: var(--mono) !important;
    font-size: 1rem !important;
    color: var(--accent-cyan) !important;
    font-weight: 800 !important;
    background: #000 !important;
    border: 1px solid var(--border) !important;
    border-radius: 0 !important;
    text-align: center;
    width: 50px !important;
    padding: 0.25rem !important;
}
.admin-container .mc-time {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.06em !important;
}
.admin-container .mc-pick-hint {
    font-family: var(--mono) !important;
    font-size: 0.62rem !important;
    color: var(--accent-cyan) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
}
.admin-container .mc-edit-form {
    background: rgba(255,255,255,0.015) !important;
    border-radius: 0 !important;
    border: 1px solid var(--border) !important;
    padding: 0.7rem !important;
    margin-top: 0.5rem !important;
}
.admin-container .mc-edit-row {
    display: flex; gap: 0.4rem; align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.45rem !important;
}
.admin-container .mc-edit-actions {
    display: flex; gap: 0.4rem; flex-wrap: wrap;
    border-top: 1px dashed rgba(255,255,255,0.05);
    padding-top: 0.55rem !important;
}
.admin-container .mc-save,
.admin-container .mc-reset {
    border-radius: 0 !important;
    font-family: var(--mono) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.5rem 0.95rem !important;
    box-shadow: none !important;
}
.admin-container .mc-save {
    background: var(--accent-cyan) !important;
    color: #000 !important;
    border: 1px solid var(--accent-cyan) !important;
}
.admin-container .mc-reset {
    background: transparent !important;
    color: #fca5a5 !important;
    border: 1px solid rgba(239,68,68,0.4) !important;
}
.admin-container .mc-details {
    font-family: var(--mono) !important;
    font-size: 0.68rem !important;
    color: var(--text-muted) !important;
    letter-spacing: 0.04em;
}
.admin-container .btn-delete {
    border-radius: 0 !important;
    background: rgba(239,68,68,0.12) !important;
    border: 1px solid rgba(239,68,68,0.4) !important;
    color: #fca5a5 !important;
    font-family: var(--mono) !important;
    font-size: 0.68rem !important;
    text-transform: uppercase;
    letter-spacing: 0.14em !important;
    padding: 0.4rem 0.8rem !important;
}
.admin-container .btn-submit {
    border-radius: 0 !important;
    background: var(--accent) !important;
    color: #fff !important;
    border: 1px solid var(--accent) !important;
    font-family: var(--mono) !important;
    font-size: 0.74rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    padding: 0.55rem 1rem !important;
    box-shadow: none !important;
}

/* Foot brand */
.dx-foot {
    margin-top: 2rem;
    padding-top: 1.2rem;
    border-top: 1px solid var(--border);
    font-family: var(--mono);
    font-size: 0.7rem;
    color: var(--text-muted);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-align: center;
}
.dx-foot b { color: var(--accent-light); font-weight: 800; }
