/* ===== Estilos personalizados LYNK25 ===== */
.small-card .card-body { padding: 0.75rem 1rem; font-size: 0.9rem; }
.small-card h5 { font-size: 1rem; }
.badge-status { font-size: 0.85rem; padding: 0.35em 0.6em; }
.scroll-area { max-height: 300px; overflow-y: auto; }

/* Dark mode forzado */
body { background-color:#121212; color:#eaeaea; }
.card { background-color:#1e1e1e; color:#eaeaea; border:1px solid #2a2a2a; border-radius:14px; }
.list-group { --bs-list-group-bg:#1f1f1f; --bs-list-group-color:#eaeaea; --bs-list-group-border-color:#2a2a2a; }
.list-group-item { background-color:var(--bs-list-group-bg)!important; color:var(--bs-list-group-color)!important; border-color:var(--bs-list-group-border-color)!important; }
.table { --bs-table-bg:#1f1f1f; --bs-table-color:#eaeaea; --bs-table-border-color:#2a2a2a; --bs-table-striped-bg:#242424; --bs-table-striped-color:#eaeaea;
         background-color:var(--bs-table-bg)!important; color:var(--bs-table-color)!important; border-color:var(--bs-table-border-color)!important; }
thead.table-dark { background-color:#2a2a2a !important; color:#eaeaea !important; border-color:#2f2f2f !important; }
.bg-warning-subtle { background-color:#15395b !important; color:#e8f1ff !important; border-color:#1e4973 !important; }
.text-muted { color:#d5d5d5 !important; }

/* Botones fantasma mini (estilo header index) */
.btn-ghost{ background:transparent!important; border:1px solid rgba(255,255,255,.25)!important; color:#f1f1f1!important; }
.btn-ghost:hover{ background:rgba(255,255,255,.08)!important; border-color:rgba(255,255,255,.35)!important; }
.btn-xxs{ padding:.15rem .35rem!important; font-size:.70rem!important; line-height:1!important; border-radius:.5rem!important; }
.btn-icon{ width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; padding:0!important; }
.header-tools{ gap:.35rem; }

/* Logo de previsualización en personalizar_header */
.preview-logo {
  max-height: 70px;
  width: auto;
  height: auto;
}

/* Podio de ranking */
.podio-1 {
  background-color: #ffd700 !important; /* dorado */
  color: #000 !important;
  border: 2px solid #e6c200;
}
.podio-2 {
  background-color: #c0c0c0 !important; /* plateado */
  color: #000 !important;
  border: 2px solid #a9a9a9;
}
.podio-3 {
  background-color: #cd7f32 !important; /* bronce */
  color: #fff !important;
  border: 2px solid #a0522d;
}

/* Ajustes generales */
.podio-1 .badge,
.podio-2 .badge,
.podio-3 .badge {
  background-color: rgba(255,255,255,0.8);
  color: #000;
}



/* 🥇 Podio 1 con efecto brillante */
.podio-1 {
  background-color: #ffd700 !important; /* dorado */
  color: #000 !important;
  border: 2px solid #e6c200;
  box-shadow: 0 0 15px rgba(255, 215, 0, 0.8);
  position: relative;
  overflow: hidden;
}

/* Efecto brillo que cruza la tarjeta */
.podio-1::after {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0.1) 0%,
    rgba(255,255,255,0.6) 50%,
    rgba(255,255,255,0.1) 100%
  );
  transform: rotate(25deg);
  animation: shine 3s infinite;
}

/* Animación de movimiento */
@keyframes shine {
  0%   { transform: translateX(-100%) rotate(25deg); }
  50%  { transform: translateX(100%)  rotate(25deg); }
  100% { transform: translateX(100%)  rotate(25deg); }
}


/* Ajuste de texto en los podios */
.podio-1, .podio-2, .podio-3 {
  font-weight: bold;        /* Texto en negrita */
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3); /* Sombrilla ligera para contraste */
}

/* 🥇 Podio dorado */
.podio-1 {
  background-color: #ffd700 !important;
  color: #000 !important;   /* Negro sobre dorado */
  border: 2px solid #e6c200;
  box-shadow: 0 0 15px rgba(255, 215, 0, 0.8);
  position: relative;
  overflow: hidden;
}

/* 🥈 Podio plateado */
.podio-2 {
  background-color: #c0c0c0 !important;
  color: #000 !important;   /* Negro sobre plata */
  border: 2px solid #a9a9a9;
}

/* 🥉 Podio bronce */
.podio-3 {
  background-color: #cd7f32 !important;
  color: #fff !important;   /* Blanco sobre bronce */
  border: 2px solid #a0522d;
}

/* Indicativos dentro del podio */
.podio-1 strong,
.podio-2 strong,
.podio-3 strong {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 6px;
  font-weight: 900; /* más grueso que bold */
  text-transform: uppercase;
}

/* 🥇 Indicativo en dorado: fondo negro con letras doradas */
.podio-1 strong {
  background-color: #000;
  color: #ffd700;
}

/* 🥈 Indicativo en plata: fondo negro con letras blancas */
.podio-2 strong {
  background-color: #000;
  color: #ffffff;
}

/* 🥉 Indicativo en bronce: fondo negro con letras bronce */
.podio-3 strong {
  background-color: #000;
  color: #cd7f32;
}

/* Estilo especial para medallas del podio */
.podio-1 h3,
.podio-2 h3,
.podio-3 h3 {
  font-size: 2.2rem;         /* Más grandes */
  text-shadow: 2px 2px 4px rgba(0,0,0,0.5); /* Sombrilla que resalta */
  margin-bottom: 0.5rem;
}
