/* ============================================================
   BFF Public Site — Badakhshan Football Federation
   Colors: Navy #0D1B4B · Red #D42020 · Gold #C8A030
   ============================================================ */
:root {
  --bg:        #060d22;
  --surface:   #0d1b4b;
  --surface2:  #122060;
  --surface3:  #1a2a72;
  --border:    rgba(200,160,48,0.2);
  --red:       #d42020;
  --red-dark:  #a81818;
  --red-glow:  rgba(212,32,32,0.3);
  --gold:      #c8a030;
  --gold-light:#e8c040;
  --gold-glow: rgba(200,160,48,0.25);
  --silver:    #8fa8c0;
  --text:      #ffffff;
  --text-muted:rgba(255,255,255,0.5);
  --text-dim:  rgba(255,255,255,0.25);
  --green:     #4caf50;
  --blue:      #4fc3f7;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg); color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:15px; line-height:1.5;
}
a{color:inherit;text-decoration:none;}
img{display:block;}

/* ============================================================
   SITE HEADER
   ============================================================ */
.site-header{
  background:var(--surface);
  border-bottom:2px solid var(--red);
  box-shadow:0 2px 24px rgba(212,32,32,0.2);
  position:sticky; top:0; z-index:100;
}
.header-inner{
  max-width:1100px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 20px; height:64px;
}
.site-logo{display:flex;align-items:center;gap:12px;}
.site-logo img{
  width:46px;height:46px;border-radius:50%;
  border:2px solid var(--gold);
  box-shadow:0 0 12px var(--gold-glow);
}
.site-logo-text .logo-title{
  font-size:14px;font-weight:900;color:var(--gold-light);
  letter-spacing:0.5px;line-height:1.1;
}
.site-logo-text .logo-sub{
  font-size:9px;color:var(--text-muted);letter-spacing:2px;text-transform:uppercase;
}
.site-nav{display:flex;gap:4px;}
.site-nav a{
  padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;
  color:var(--text-muted);letter-spacing:0.3px;transition:all 0.15s;
}
.site-nav a:hover,.site-nav a.active{color:var(--gold-light);background:rgba(200,160,48,0.1);}
.site-nav a.active{border-bottom:2px solid var(--red);}

/* Lang toggle in header */
.header-lang{display:flex;gap:4px;margin-left:12px;}
.hlang-btn{
  background:none;border:1px solid var(--border);color:var(--text-muted);
  padding:4px 9px;border-radius:5px;font-size:11px;font-weight:700;
  cursor:pointer;letter-spacing:0.5px;transition:all 0.15s;
}
.hlang-btn.active{background:var(--gold);color:#000;border-color:var(--gold);}

/* Mobile nav toggle */
.mobile-menu-btn{
  display:none;background:none;border:none;color:var(--text-muted);
  font-size:24px;padding:4px;cursor:pointer;
}
.mobile-nav{
  display:none;background:var(--surface);border-top:1px solid var(--border);
  padding:12px 20px;
}
.mobile-nav a{
  display:block;padding:12px 0;border-bottom:1px solid var(--border);
  font-size:15px;font-weight:600;color:var(--text-muted);
}
.mobile-nav a:last-child{border-bottom:none;}

@media(max-width:700px){
  .site-nav{display:none;}
  .mobile-menu-btn{display:block;}
  .mobile-nav.open{display:block;}
}

/* ============================================================
   HERO BANNER
   ============================================================ */
.hero{
  background:
    radial-gradient(ellipse 80% 70% at 50% -10%, #1a2a72 0%, transparent 60%),
    linear-gradient(180deg, #0d1b4b 0%, var(--bg) 100%);
  padding:60px 20px 50px;
  text-align:center;
  position:relative;overflow:hidden;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(circle at 20% 50%, var(--red-glow) 0%, transparent 50%),
    radial-gradient(circle at 80% 50%, rgba(200,160,48,0.08) 0%, transparent 50%);
  pointer-events:none;
}
.hero-logo-wrap{
  display:flex;justify-content:center;margin-bottom:20px;
}
.hero-logo-img{
  width:110px;height:110px;border-radius:50%;overflow:hidden;
  border:3px solid var(--gold);
  box-shadow:0 0 40px rgba(212,32,32,0.4),0 0 0 8px rgba(200,160,48,0.08);
}
.hero-logo-img img{width:100%;height:100%;object-fit:cover;}
.hero-title{
  font-size:clamp(22px,5vw,38px);font-weight:900;
  color:var(--gold-light);letter-spacing:0.5px;margin-bottom:6px;
  text-shadow:0 2px 20px rgba(200,160,48,0.3);
}
.hero-sub{
  font-size:clamp(11px,2vw,14px);color:var(--text-muted);
  letter-spacing:2px;text-transform:uppercase;margin-bottom:28px;
}
.hero-badges{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.hero-badge{
  padding:8px 18px;border-radius:20px;font-size:12px;font-weight:700;
  letter-spacing:0.5px;text-transform:uppercase;
}
.hero-badge-red{background:var(--red);color:#fff;box-shadow:0 3px 12px var(--red-glow);}
.hero-badge-gold{background:var(--gold);color:#000;box-shadow:0 3px 12px var(--gold-glow);}

/* ============================================================
   LAYOUT
   ============================================================ */
.container{max-width:1100px;margin:0 auto;padding:0 20px;}
.section{padding:40px 0;}
.section-title{
  font-size:clamp(18px,3vw,24px);font-weight:900;color:var(--gold-light);
  margin-bottom:6px;
}
.section-divider{
  display:flex;align-items:center;gap:12px;margin-bottom:28px;
}
.section-divider .divider-line{flex:1;height:1px;background:var(--border);}
.section-divider .divider-dot{
  width:8px;height:8px;border-radius:50%;background:var(--red);
  box-shadow:0 0 8px var(--red-glow);
}

/* ============================================================
   TEAM CARDS
   ============================================================ */
.teams-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;
}
.team-card{
  background:var(--surface2);border:1px solid var(--border);border-radius:16px;
  padding:24px 16px;text-align:center;
  transition:transform 0.2s,border-color 0.2s,box-shadow 0.2s;
  cursor:pointer;
}
.team-card:hover{
  transform:translateY(-4px);border-color:var(--gold);
  box-shadow:0 8px 32px rgba(200,160,48,0.15);
}
.team-card-logo{
  width:72px;height:72px;border-radius:50%;overflow:hidden;margin:0 auto 14px;
  border:2px solid var(--border);background:var(--surface);
  display:flex;align-items:center;justify-content:center;font-size:32px;
}
.team-card-logo img{width:100%;height:100%;object-fit:cover;}
.team-card-name{font-size:15px;font-weight:800;margin-bottom:4px;}
.team-card-city{font-size:12px;color:var(--text-muted);}
.team-card-players{
  display:inline-block;margin-top:10px;
  background:rgba(200,160,48,0.1);color:var(--gold);
  border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700;
}

/* ============================================================
   PLAYER CARDS
   ============================================================ */
.players-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;
}
.player-card{
  background:var(--surface2);border:1px solid var(--border);border-radius:14px;
  padding:18px 12px;text-align:center;
  transition:transform 0.15s,border-color 0.15s;
}
.player-card:hover{transform:translateY(-3px);border-color:rgba(200,160,48,0.35);}
.player-photo{
  width:68px;height:68px;border-radius:50%;overflow:hidden;margin:0 auto 12px;
  border:2px solid var(--border);background:var(--surface);
  display:flex;align-items:center;justify-content:center;font-size:28px;
}
.player-photo img{width:100%;height:100%;object-fit:cover;}
.player-number{
  display:inline-block;background:var(--red);color:#fff;
  border-radius:6px;padding:2px 8px;font-size:11px;font-weight:800;
  margin-bottom:6px;
}
.player-name{font-size:13px;font-weight:700;margin-bottom:4px;}
.player-pos{
  display:inline-block;background:rgba(200,160,48,0.1);color:var(--gold);
  border-radius:6px;padding:2px 8px;font-size:10px;font-weight:700;
  letter-spacing:0.3px;text-transform:uppercase;
}
.player-stats{font-size:11px;color:var(--text-muted);margin-top:6px;}

/* ============================================================
   STANDINGS TABLE
   ============================================================ */
.standings-wrap{overflow-x:auto;}
.standings-table{
  width:100%;border-collapse:collapse;font-size:14px;min-width:480px;
}
.standings-table th{
  text-align:left;padding:10px 14px;
  color:var(--gold);font-size:10px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  border-bottom:2px solid var(--red);
}
.standings-table td{padding:12px 14px;border-bottom:1px solid var(--border);}
.standings-table tr:last-child td{border-bottom:none;}
.standings-table tr:hover td{background:var(--surface2);}
.st-rank{
  font-size:13px;font-weight:800;color:var(--text-dim);width:32px;
}
.st-rank.gold-rank{color:var(--gold);}
.st-rank.silver-rank{color:var(--silver);}
.st-rank.bronze-rank{color:#cd7f32;}
.st-team-logo{
  width:32px;height:32px;border-radius:50%;overflow:hidden;
  background:var(--surface);display:flex;align-items:center;justify-content:center;
  font-size:16px;flex-shrink:0;
}
.st-team-logo img{width:100%;height:100%;object-fit:cover;}
.st-team{display:flex;align-items:center;gap:10px;}
.st-team-name{font-weight:700;}
.st-pts{font-weight:900;color:var(--gold-light);font-size:16px;}
.st-num{color:var(--text-muted);text-align:center;}
.st-num.good{color:#81c784;}
.st-num.bad{color:#ef9a9a;}

/* ============================================================
   MATCH CARDS
   ============================================================ */
.matches-list{display:flex;flex-direction:column;gap:10px;}
.match-card{
  background:var(--surface2);border:1px solid var(--border);border-radius:14px;
  padding:16px 18px;display:flex;align-items:center;gap:14px;
}
.match-card.live{
  border-color:var(--red);
  box-shadow:0 0 16px var(--red-glow);
  animation:live-pulse 2s infinite;
}
@keyframes live-pulse{
  0%,100%{box-shadow:0 0 16px var(--red-glow);}
  50%{box-shadow:0 0 28px rgba(212,32,32,0.5);}
}
.match-team{
  flex:1;display:flex;align-items:center;gap:10px;
}
.match-team.away{flex-direction:row-reverse;text-align:right;}
.match-team-logo{
  width:40px;height:40px;border-radius:50%;overflow:hidden;
  background:var(--surface);display:flex;align-items:center;justify-content:center;
  font-size:20px;flex-shrink:0;border:1px solid var(--border);
}
.match-team-logo img{width:100%;height:100%;object-fit:cover;}
.match-team-name{font-size:14px;font-weight:700;}
.match-score-col{
  display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;
}
.match-score{
  font-size:26px;font-weight:900;color:var(--gold-light);
  letter-spacing:3px;font-variant-numeric:tabular-nums;
  text-shadow:0 0 14px rgba(200,160,48,0.3);
}
.match-score.scheduled{font-size:18px;color:var(--text-muted);letter-spacing:1px;}
.match-badge{
  font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;
  padding:2px 8px;border-radius:6px;
}
.match-badge.live{background:var(--red);color:#fff;animation:blink 1s infinite;}
.match-badge.finished{background:rgba(120,130,140,0.3);color:var(--text-muted);}
.match-badge.scheduled{background:rgba(79,195,247,0.15);color:var(--blue);}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0.6;}}
.match-meta{font-size:10px;color:var(--text-dim);text-align:center;margin-top:2px;}

/* ============================================================
   LIVE WIDGET
   ============================================================ */
.live-widget{
  background:var(--surface2);border:1px solid var(--border);border-radius:20px;
  padding:30px 24px;max-width:520px;margin:0 auto;
  box-shadow:0 8px 40px rgba(0,0,0,0.4);
}
.live-tourn{
  display:flex;align-items:center;gap:10px;justify-content:center;
  margin-bottom:16px;
}
.live-tourn-logo{
  width:32px;height:32px;border-radius:50%;overflow:hidden;
  background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:16px;
}
.live-tourn-logo img{width:100%;height:100%;object-fit:cover;}
.live-tourn-name{font-size:13px;color:var(--text-muted);font-weight:600;}
.live-period{
  text-align:center;margin-bottom:20px;
}
.live-period-badge{
  display:inline-block;background:var(--red);color:#fff;
  border-radius:20px;padding:5px 18px;font-size:12px;font-weight:800;
  letter-spacing:1px;text-transform:uppercase;
  box-shadow:0 2px 12px var(--red-glow);
}
.live-scoreboard{
  display:flex;align-items:center;justify-content:center;gap:20px;
  margin-bottom:24px;
}
.live-team-col{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;
}
.live-team-logo{
  width:64px;height:64px;border-radius:50%;overflow:hidden;
  border:2px solid var(--border);background:var(--surface);
  display:flex;align-items:center;justify-content:center;font-size:28px;
}
.live-team-logo img{width:100%;height:100%;object-fit:cover;}
.live-team-name{font-size:13px;font-weight:700;text-align:center;}
.live-score-num{
  font-size:52px;font-weight:900;line-height:1;
  color:var(--gold-light);
  text-shadow:0 0 24px rgba(200,160,48,0.35);
}
.live-divider{
  font-size:28px;font-weight:200;color:var(--text-dim);
  padding:0 4px;
}
.live-events-list{border-top:1px solid var(--border);padding-top:14px;}
.live-event-row{
  display:flex;align-items:center;gap:10px;
  padding:7px 0;border-bottom:1px solid rgba(255,255,255,0.04);
  font-size:13px;
}
.live-event-time{
  font-size:12px;color:var(--text-dim);font-weight:600;
  min-width:32px;
}
.live-no-signal{
  text-align:center;color:var(--text-dim);padding:30px 0;font-size:14px;
}

/* ============================================================
   FILTER BAR
   ============================================================ */
.filter-bar{
  display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;align-items:center;
}
.filter-select{
  background:var(--surface2);border:1px solid var(--border);border-radius:8px;
  padding:8px 14px;color:var(--text);font-size:13px;outline:none;
  appearance:none;cursor:pointer;font-weight:600;
}
.filter-select:focus{border-color:var(--gold);}
.filter-search{
  background:var(--surface2);border:1px solid var(--border);border-radius:8px;
  padding:8px 14px;color:var(--text);font-size:13px;outline:none;
  flex:1;min-width:160px;
}
.filter-search:focus{border-color:var(--gold);}

/* ============================================================
   TABS
   ============================================================ */
.pub-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border);}
.pub-tab{
  padding:10px 18px;font-size:13px;font-weight:700;color:var(--text-muted);
  border:none;background:none;border-bottom:2px solid transparent;
  margin-bottom:-1px;cursor:pointer;letter-spacing:0.3px;text-transform:uppercase;
  transition:color 0.15s;
}
.pub-tab.active{color:var(--gold-light);border-bottom-color:var(--red);}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{
  background:var(--surface);border-top:2px solid var(--red);
  padding:30px 20px;margin-top:60px;
  text-align:center;
}
.footer-logo{
  width:50px;height:50px;border-radius:50%;overflow:hidden;
  border:2px solid var(--gold);margin:0 auto 12px;
}
.footer-logo img{width:100%;height:100%;object-fit:cover;}
.footer-title{font-size:14px;font-weight:800;color:var(--gold-light);margin-bottom:4px;}
.footer-sub{font-size:11px;color:var(--text-dim);letter-spacing:1px;}
.footer-links{
  display:flex;gap:20px;justify-content:center;margin-top:16px;
  flex-wrap:wrap;
}
.footer-links a{font-size:12px;color:var(--text-muted);font-weight:600;}
.footer-links a:hover{color:var(--gold);}

/* ============================================================
   EMPTY / LOADING STATES
   ============================================================ */
.pub-empty{
  text-align:center;color:var(--text-dim);padding:60px 20px;font-size:15px;
}
.pub-empty::before{content:'⚽';display:block;font-size:40px;margin-bottom:12px;opacity:0.4;}
.pub-loading{
  text-align:center;padding:40px;color:var(--text-muted);
}

/* ============================================================
   PAGE HERO MINI (for inner pages)
   ============================================================ */
.page-hero-mini{
  background:linear-gradient(180deg,var(--surface) 0%,var(--bg) 100%);
  border-bottom:1px solid var(--border);
  padding:32px 20px 24px;text-align:center;
}
.page-hero-title{
  font-size:clamp(22px,4vw,32px);font-weight:900;
  color:var(--gold-light);letter-spacing:0.5px;
}

/* ============================================================
   TEAM HERO (team.html)
   ============================================================ */
.team-hero{
  background:linear-gradient(180deg,var(--surface) 0%,var(--bg) 100%);
  border-bottom:1px solid var(--border);
  padding:32px 20px;display:flex;align-items:center;gap:24px;
  max-width:1100px;margin:0 auto;
}
.team-hero-logo{
  width:90px;height:90px;border-radius:50%;overflow:hidden;flex-shrink:0;
  border:3px solid var(--gold);box-shadow:0 0 24px var(--gold-glow);
  background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:40px;
}
.team-hero-logo img{width:100%;height:100%;object-fit:cover;}
.team-hero-name{font-size:clamp(20px,4vw,30px);font-weight:900;color:var(--gold-light);margin-bottom:6px;}
.team-hero-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--text-muted);}
.team-hero-meta .sep{color:var(--border);}

/* ============================================================
   SQUAD (team.html)
   ============================================================ */
.squad-pos-label{
  font-size:10px;font-weight:800;color:var(--gold);letter-spacing:2px;
  text-transform:uppercase;padding:12px 0 8px;
  border-bottom:1px solid var(--border);margin-bottom:12px;
}
.squad-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;
  margin-bottom:20px;
}
.squad-card{
  background:var(--surface2);border:1px solid var(--border);border-radius:12px;
  padding:16px 10px;text-align:center;
  transition:border-color 0.15s,transform 0.15s;
}
.squad-card:hover{border-color:rgba(200,160,48,0.4);transform:translateY(-2px);}
.squad-photo{
  width:60px;height:60px;border-radius:50%;overflow:hidden;margin:0 auto 8px;
  background:var(--surface);border:2px solid var(--border);
  display:flex;align-items:center;justify-content:center;
}
.squad-photo img{width:100%;height:100%;object-fit:cover;}
.squad-number{
  display:inline-block;background:var(--red);color:#fff;
  border-radius:5px;padding:1px 7px;font-size:11px;font-weight:800;margin-bottom:4px;
}
.squad-name{font-size:13px;font-weight:700;margin-bottom:4px;}
.squad-pos-pill{
  display:inline-block;background:rgba(200,160,48,0.1);color:var(--gold);
  border-radius:5px;padding:1px 7px;font-size:10px;font-weight:700;text-transform:uppercase;
}
.squad-stat{font-size:11px;color:var(--text-muted);margin-top:4px;}

/* ============================================================
   FILTER ROW / SELECT (standings, matches)
   ============================================================ */
.filter-row{display:flex;gap:10px;margin-bottom:20px;align-items:center;flex-wrap:wrap;}
.pub-select{
  background:var(--surface2);border:1px solid var(--border);border-radius:8px;
  padding:9px 14px;color:var(--text);font-size:13px;font-weight:600;
  outline:none;cursor:pointer;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23c8a030' d='M6 8L0 0h12z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
  padding-right:32px;
}
.pub-select:focus{border-color:var(--gold);}

/* ============================================================
   STANDINGS (standings.html)
   ============================================================ */
.standings-title{
  font-size:15px;font-weight:800;color:var(--gold);
  margin-bottom:14px;padding-bottom:10px;
  border-bottom:1px solid var(--border);
}
.standings-table-wrap{overflow-x:auto;}
.standings-table{width:100%;border-collapse:collapse;font-size:14px;min-width:480px;}
.standings-table th{
  text-align:center;padding:10px 12px;
  color:var(--gold);font-size:10px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  border-bottom:2px solid var(--red);
}
.standings-table th:nth-child(2){text-align:left;}
.standings-table td{padding:12px 12px;border-bottom:1px solid var(--border);text-align:center;}
.standings-table td:nth-child(2){text-align:left;}
.standings-table tr:last-child td{border-bottom:none;}
.standings-table tr:hover td{background:rgba(255,255,255,0.03);}
.st-gold td,.st-gold:hover td{background:rgba(200,160,48,0.06);}
.st-silver td,.st-silver:hover td{background:rgba(143,168,192,0.05);}
.st-bronze td,.st-bronze:hover td{background:rgba(205,127,50,0.05);}
.st-pos{font-size:13px;font-weight:800;color:var(--text-dim);}
.st-gold .st-pos{color:var(--gold);}
.st-silver .st-pos{color:var(--silver);}
.st-bronze .st-pos{color:#cd7f32;}
.st-team-inner{display:flex;align-items:center;gap:10px;}
.st-logo{
  width:28px;height:28px;border-radius:50%;overflow:hidden;
  background:var(--surface);display:flex;align-items:center;justify-content:center;
  font-size:14px;flex-shrink:0;
}
.st-logo img{width:100%;height:100%;object-fit:cover;}
.st-name{font-weight:700;color:var(--text);}
.st-name:hover{color:var(--gold);}
.st-pts{font-weight:900;color:var(--gold-light);font-size:15px;}

/* ============================================================
   LIVE PAGE
   ============================================================ */
.live-no-signal{
  text-align:center;padding:80px 20px;
}
.live-no-icon{font-size:56px;margin-bottom:16px;opacity:0.5;}
.live-no-text{font-size:20px;font-weight:800;color:var(--text-muted);margin-bottom:8px;}
.live-no-sub{font-size:13px;color:var(--text-dim);margin-bottom:24px;}
.live-no-btn{
  display:inline-block;padding:12px 28px;
  background:var(--surface2);border:1px solid var(--border);
  border-radius:10px;font-size:13px;font-weight:700;color:var(--gold);
}
.live-no-btn:hover{border-color:var(--gold);}

.live-widget{max-width:560px;margin:40px auto;padding:0 20px;}
.live-badge-top{
  text-align:center;margin-bottom:20px;
  font-size:13px;font-weight:800;color:var(--red);
  letter-spacing:2px;animation:blink 1s infinite;
}
.live-scoreboard{
  background:var(--surface2);border:1px solid var(--red);border-radius:20px;
  box-shadow:0 0 32px rgba(212,32,32,0.2);
  padding:24px;display:flex;align-items:center;gap:16px;margin-bottom:24px;
}
.live-team{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;}
.live-team.away{}
.live-team-logo{
  width:60px;height:60px;border-radius:50%;overflow:hidden;
  border:2px solid var(--border);background:var(--surface);
  display:flex;align-items:center;justify-content:center;font-size:26px;
}
.live-team-logo img{width:100%;height:100%;object-fit:cover;}
.live-team-name{font-size:13px;font-weight:700;text-align:center;}
.live-score-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;}
.live-score{
  font-size:44px;font-weight:900;color:var(--gold-light);
  letter-spacing:4px;text-shadow:0 0 20px rgba(200,160,48,0.3);
  font-variant-numeric:tabular-nums;
}
.live-tour{font-size:10px;color:var(--text-dim);letter-spacing:1px;text-align:center;}

.live-events-wrap{
  background:var(--surface2);border:1px solid var(--border);border-radius:16px;
  padding:16px;
}
.live-events-title{
  font-size:11px;font-weight:800;color:var(--gold);letter-spacing:2px;
  text-transform:uppercase;margin-bottom:12px;
  padding-bottom:10px;border-bottom:1px solid var(--border);
}
.live-events-list{display:flex;flex-direction:column;gap:2px;}
.live-event-row{
  display:flex;align-items:center;gap:10px;
  padding:8px 4px;border-bottom:1px solid rgba(255,255,255,0.04);
  font-size:13px;
}
.live-event-row:last-child{border-bottom:none;}
.live-event-min{
  font-size:11px;color:var(--text-dim);font-weight:700;
  min-width:28px;font-variant-numeric:tabular-nums;
}
.live-event-icon{font-size:18px;flex-shrink:0;}
.live-event-info{display:flex;flex-direction:column;gap:1px;}
.live-event-type{font-size:12px;font-weight:700;}
.live-event-player{font-size:11px;color:var(--text-muted);}

/* ============================================================
   UTILITIES
   ============================================================ */
.gold{color:var(--gold-light);}
.red{color:var(--red);}
.muted{color:var(--text-muted);}
.mt-8{margin-top:8px;}
.mt-16{margin-top:16px;}
.text-center{text-align:center;}
