:root{
    --idx-card-border:#1e1e1e;
    --idx-dim:#bdbdbd;
    --idx-accent:#ffaa00;
    --idx-danger:#ff4444;
}

/* Tournament banner wrapper */
.tournament-header{ width:min(1200px,94%); margin:10px auto 0 auto; }
.tournament-banner{ background:#0a0a0a; border:1px solid var(--idx-card-border); border-radius:14px; padding:14px; box-shadow:0 10px 24px rgba(0,0,0,.4); }
.tournament-banner .tournament-meta{ margin-top:8px; display:flex; gap:8px; justify-content:center; }
.tournament-banner .week-badge,.tournament-banner .date-badge{ border:1px solid #242424; border-radius:999px; padding:6px 10px; font-weight:700; letter-spacing:1px; }

/* Hero (live + next) */
.hero{ margin:16px auto; width:min(1200px,94%); display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
.card{ border:1px solid var(--idx-card-border); border-radius:14px; background:#0b0b0b; box-shadow:0 10px 30px rgba(0,0,0,.4); }
.card-header{ padding:14px 16px; border-bottom:1px solid #151515; display:flex; align-items:center; justify-content:space-between; }
.card-body{ padding:16px; }
.pill{ border:1px solid #222; border-radius:999px; padding:6px 10px; font-weight:700; letter-spacing:1px; }
.pill.live{ border-color:var(--idx-danger); color:var(--idx-danger); }
.pill.next{ border-color:var(--idx-accent); color:var(--idx-accent); }
.live-grid{ display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:start; }
.fighter{ display:grid; gap:8px; }
/* Normalize name block height so left/right columns align even if one wraps */
.fighter .name{ font-family:'Mozilla Headline',sans-serif; font-size:1.4rem; letter-spacing:1px; min-height:3.2rem; display:flex; align-items:center; }
.fighter .record{ color:var(--idx-dim); font-size:.95rem; }
.live-avatar-img,.countdown-avatar-img{ width:84px; height:84px; border-radius:50%; border:2px solid #242424; object-fit:cover; }
.vs-chip{ font-family:'Mozilla Headline',sans-serif; font-size:1.1rem; color:var(--idx-dim); letter-spacing:4px; padding:6px 14px; border:1px dashed #242424; border-radius:999px; align-self:center; }
.cta{ display:inline-block; margin-top:10px; 
    position:relative; overflow:hidden; 
    background:linear-gradient(135deg, #ff5151, #ff8a00);
    color:#000 !important; font-weight:900; text-transform:uppercase; letter-spacing:2px; 
    padding:12px 22px; border-radius:999px; border:2px solid transparent;
    box-shadow:0 6px 18px rgba(255, 81, 81, 0.35), inset 0 0 0 2px rgba(0,0,0,0.15);
    transition:transform .15s ease, box-shadow .25s ease, filter .25s ease; }
.cta::before{ content:""; position:absolute; top:0; left:-150%; height:100%; width:150%;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,0.35), transparent);
    transform:skewX(-20deg); }
.cta:hover{ transform:translateY(-1px); box-shadow:0 10px 28px rgba(255, 106, 0, 0.45), 0 0 0 2px rgba(255, 138, 0, 0.35) inset; filter:saturate(1.15); }
.cta:hover::before{ left:150%; transition:left .8s ease; }
.cta:active{ transform:translateY(0); box-shadow:0 4px 12px rgba(255, 81, 81, 0.3), inset 0 6px 18px rgba(0,0,0,0.25); }

/* Next fight countdown */
.countdown{ display:grid; grid-template-columns:1fr; gap:10px; }
.timer{ font-family:'Mozilla Headline',sans-serif; font-size:2rem; letter-spacing:3px; }
.meter{ position:relative; height:8px; background:#151515; border-radius:999px; overflow:hidden; border:1px solid #191919; }
.meter>i{ position:absolute; inset:0; width:0%; background:linear-gradient(90deg,#ffaa00,#ff4444); box-shadow:0 0 16px rgba(255,170,0,.5); }

/* Schedule grids */
.section-wrap{ width:min(1200px,94%); margin:0 auto; }
.section-title{ margin-top:26px; margin-bottom:6px; display:flex; align-items:center; justify-content:space-between; }
.section-title .now{ color:var(--idx-dim); font-size:.95rem; }
.grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.fight-card{ border:1px solid var(--idx-card-border); border-radius:12px; background:#0a0a0a; padding:14px; display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease; position:relative; overflow:hidden; }
/* Remove third grid column for normal fight cards so names don't compress (ad cards keep 3 cols) */
.fight-card:not(.ad-card){ grid-template-columns:auto 1fr; }
.fight-card:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.5); }
.fight-card::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:#444; }
/* Undead tint */
.fight-card.undead-present{ background: linear-gradient(0deg, rgba(164,140,232,0.06), rgba(164,140,232,0.06)), #0a0a0a; }
/* Side-specific undead aura: purple fade from zombie side + green edge that fades across */
.fight-card.undead-left::before,
.fight-card.undead-right::before{ width:6px; }
.fight-card.undead-left::after,
.fight-card.undead-right::after{ content:""; position:absolute; top:0; bottom:0; width:42%; pointer-events:none; }
.fight-card.undead-left::after{ left:0; background:linear-gradient(90deg, rgba(164,140,232,0.18) 0%, rgba(164,140,232,0.08) 40%, rgba(164,140,232,0.0) 100%); box-shadow:inset 4px 0 0 rgba(16,185,129,0.35); }
.fight-card.undead-right::after{ right:0; background:linear-gradient(270deg, rgba(164,140,232,0.18) 0%, rgba(164,140,232,0.08) 40%, rgba(164,140,232,0.0) 100%); box-shadow:inset -4px 0 0 rgba(16,185,129,0.35); }
/* Green outline tint that fades along the top/bottom toward the non‑zombie side */
.fight-card.undead-left{ border-color:#0f172a; }
.fight-card.undead-right{ border-color:#0f172a; }
.fight-card.undead-left{ box-shadow:0 0 0 1px rgba(0,0,0,0) inset; }
.fight-card.undead-right{ box-shadow:0 0 0 1px rgba(0,0,0,0) inset; }
.fight-card.undead-left{ background-image:
    linear-gradient(0deg, rgba(164,140,232,0.06), rgba(164,140,232,0.06)),
    radial-gradient(120px 80% at left center, rgba(16,185,129,0.35) 0%, rgba(16,185,129,0.12) 35%, rgba(0,0,0,0) 70%),
    linear-gradient(90deg, rgba(16,185,129,0.5) 0%, rgba(16,185,129,0.12) 30%, rgba(0,0,0,0) 55%),
    #0a0a0a; }
.fight-card.undead-right{ background-image:
    linear-gradient(0deg, rgba(164,140,232,0.06), rgba(164,140,232,0.06)),
    radial-gradient(120px 80% at right center, rgba(16,185,129,0.35) 0%, rgba(16,185,129,0.12) 35%, rgba(0,0,0,0) 70%),
    linear-gradient(270deg, rgba(16,185,129,0.5) 0%, rgba(16,185,129,0.12) 30%, rgba(0,0,0,0) 55%),
    #0a0a0a; }
/* Status-specific left-edge colors */
.fight-card.status-active::before{ background:#00ff00; }
.fight-card.status-completed::before{ background:#888888; }
.fight-card.status-voided::before{ background:#ff4444; }
.fight-card.status-scheduled::before{ background:#ffaa00; }
/* Bet placed highlight for scheduled */
.fight-card.bet-placed.status-scheduled::before{ background:#4A90E2; }
.time-display{ color:var(--idx-dim); font-weight:700; }
.match{ display:grid; gap:4px; }
.names{ font-family:'Mozilla Headline',sans-serif; letter-spacing:1px; }
.undead-dot{ display:inline-block; width:8px; height:8px; border-radius:50%; background:#c4b5fd; box-shadow:0 0 8px rgba(196,181,253,.6); vertical-align:middle; margin-left:6px; }
.status{ font-size:.85rem; font-weight:700; letter-spacing:1px; padding:6px 10px; border-radius:999px; border:1px solid #242424; position:absolute; right:12px; bottom:10px; pointer-events:none; }
.status.upcoming{ color:#fff; }
.status.completed{ color:#9e9e9e; }
.status.voided{ color:#b66; font-style:italic; }

/* Undead fighter name: zombie purple with glow */
.undead-name{ color:#c4b5fd !important; text-shadow:0 0 8px rgba(196,181,253,0.65), 0 0 14px rgba(124,58,237,0.45), 0 0 22px rgba(0,255,128,0.18); }
@keyframes undeadNamePulse{ 0%{ text-shadow:0 0 6px rgba(196,181,253,0.45), 0 0 10px rgba(124,58,237,0.25), 0 0 0 rgba(0,255,128,0.0);} 50%{ text-shadow:0 0 14px rgba(196,181,253,0.9), 0 0 22px rgba(124,58,237,0.55), 0 0 12px rgba(0,255,128,0.25);} 100%{ text-shadow:0 0 6px rgba(196,181,253,0.45), 0 0 10px rgba(124,58,237,0.25), 0 0 0 rgba(0,255,128,0.0);} }
.undead-name{ animation:undeadNamePulse 2200ms ease-in-out infinite; }

@media (max-width:960px){
    .hero{ grid-template-columns:1fr; }
    .grid{ grid-template-columns:1fr; }
}


