/* Olympiad Live Coverage CSS */
:root {
  --portal-blue: #004ac6;
  --portal-blue-container: #2563eb;
  --amber-gold: #855300;
  --amber-gold-container: #fea619;
  --teal-green: #006242;
  --surface-dark: #0f172a;
  --card-bg: rgba(255, 255, 255, 0.07);
  --card-border: rgba(255, 255, 255, 0.12);
}

/* Fixed Photo Background: Malaysian Men / Women Teams (Alternates on reload) */
html, body {
  min-height: 100%;
}

body.olympiad-portal {
  background-color: #020617;
  background-attachment: fixed;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  transition: background-image 0.3s ease-in-out;
}

body.olympiad-portal.bg-women-team {
  background-image: 
    linear-gradient(to bottom, rgba(2, 6, 23, 0.45) 0%, rgba(15, 23, 42, 0.70) 50%, rgba(2, 6, 23, 0.88) 100%),
    url('images/women-team.jpg');
}

body.olympiad-portal.bg-men-team {
  background-image: 
    linear-gradient(to bottom, rgba(2, 6, 23, 0.45) 0%, rgba(15, 23, 42, 0.70) 50%, rgba(2, 6, 23, 0.88) 100%),
    url('images/men-team.jpg');
}

/* Custom Replay Styling */
.cm-chessboard {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5);
}

.cm-chessboard.brown .board .square.white { fill: #f0e6c8 !important; }
.cm-chessboard.brown .board .square.black { fill: #8b6340 !important; }

/* Move list scrollbar */
.custom-scroll::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.custom-scroll::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 4px;
}
.custom-scroll::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 4px;
}
.custom-scroll::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.35);
}

/* Tab & Pill transitions */
.round-pill {
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.round-pill:hover:not(:disabled) {
  transform: translateY(-2px);
}

/* Board interactive pulse on selection */
.board-row-highlight {
  background: rgba(37, 99, 235, 0.25) !important;
  border-color: rgba(37, 99, 235, 0.5) !important;
}

/* Live indicator pulse */
@keyframes live-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.95); }
}
.animate-pulse-live {
  animation: live-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* Live Mini-Board Cards */
.live-mini-board-card {
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.live-mini-board-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 20px -5px rgba(37, 99, 235, 0.25);
}
.live-mini-board-card.active-board {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 12px rgba(59, 130, 246, 0.4);
}
