/* Estilos comunes de los Premios DGOAE (TalentoBachiller, Valor, Valor_SI).
   La paleta de cada premio se define en <premio>/css/premio.css con las
   variables --premio-*. */

:root {
  --premio-primario: #003f7f;
  --premio-primario-claro: #e7eef7;
  --premio-acento: #ff9900;
  --premio-titulo-bases: #003f7f;
  --premio-tabla-enc: #005fbf;
  --premio-tabla-fila: #eef5ff;
  --premio-radio: .75rem;
}

body {
  background-color: #f4f5f7;
  color: #212529;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.premio-main { flex: 1 0 auto; padding-bottom: 2rem; }

/* Cabecera y navegación */
.premio-cabecera { background: #fff; padding: .5rem 0; }
.premio-banner { max-height: 260px; width: auto; }

.premio-nav {
  background: #fff;
  border-top: 4px solid var(--premio-primario);
  box-shadow: 0 2px 8px rgba(0, 0, 0, .06);
  margin-bottom: 1.5rem;
}
.premio-nav .nav-link { color: #333; font-weight: 500; }
.premio-nav .nav-link:hover,
.premio-nav .nav-link.active { color: var(--premio-primario); }
.premio-nav .nav-link.active { box-shadow: inset 0 -3px 0 var(--premio-acento); }
.premio-nav .navbar-brand { color: var(--premio-primario); font-weight: 600; }

/* Contenido */
.premio-tarjeta {
  background: #fff;
  border-radius: var(--premio-radio);
  box-shadow: 0 4px 18px rgba(0, 0, 0, .07);
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) { .premio-tarjeta { padding: 2rem 2.5rem; } }

.premio-titulo { color: var(--premio-primario); font-weight: 700; }
.premio-convoca { color: var(--premio-acento); font-weight: 700; text-align: center; }
.premio-bases-titulo { color: var(--premio-titulo-bases); font-weight: 700; }
.texto-justificado { text-align: justify; hyphens: auto; }
.obligatorio { color: #dc3545; font-weight: 700; }

.premio-nota {
  background: #fff8d6;
  border-left: 5px solid #f0ad00;
  border-radius: .5rem;
  padding: .75rem 1rem;
  text-align: center;
}

/* Bases (acordeón) */
.premio-bases .accordion-button { font-weight: 700; letter-spacing: .05em; justify-content: center; }
.premio-bases .accordion-button::after { margin-left: 1rem; }
.premio-bases .accordion-body { text-align: justify; }
.premio-bases .sangria { padding-left: 1.25rem; }
ol.letras-parentesis { list-style: none; counter-reset: letras; padding-left: 1.75rem; }
ol.letras-parentesis > li { counter-increment: letras; position: relative; margin-bottom: .5rem; }
ol.letras-parentesis > li::before { content: counter(letras, lower-alpha) ")"; position: absolute; left: -1.5rem; }
ol.letras-minusculas { list-style-type: lower-alpha; }

/* Tablas */
.premio-tabla thead th,
.premio-tabla thead td {
  background: var(--premio-tabla-enc);
  color: #fff;
  font-weight: 600;
  vertical-align: middle;
  text-align: center;
}
.premio-tabla.table-striped > tbody > tr:nth-of-type(odd) > * { --bs-table-bg-type: var(--premio-tabla-fila); }
.premio-tabla td { vertical-align: middle; }

.premio-totales .card { border-left: 4px solid var(--premio-acento); }

/* Rúbrica */
.rubrica input[type=number] { min-width: 3.6rem; text-align: center; padding-left: .25rem; padding-right: .25rem; }
.rubrica .total input { font-weight: 700; background: var(--premio-primario-claro); }
.rubrica th.nivel { background: var(--premio-tabla-enc); color: #fff; text-align: center; }
.rubrica .encabezado-casillas th { background: #dfd7cf; text-align: center; }
.rubrica-gran-total { font-size: 1.25rem; font-weight: 700; }

/* Botones con el color del premio */
.btn-premio {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--premio-primario);
  --bs-btn-border-color: var(--premio-primario);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--premio-primario);
  --bs-btn-hover-border-color: var(--premio-primario);
  --bs-btn-active-bg: var(--premio-primario);
  --bs-btn-active-color: #fff;
  filter: saturate(1.05);
}
.btn-premio:hover { filter: brightness(1.1); }
.btn-acento {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--premio-acento);
  --bs-btn-border-color: var(--premio-acento);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--premio-acento);
  --bs-btn-hover-border-color: var(--premio-acento);
  --bs-btn-active-bg: var(--premio-acento);
  --bs-btn-active-color: #fff;
}
.btn-acento:hover { filter: brightness(1.08); }

.premio-accion {
  display: inline-flex; flex-direction: column; align-items: center; gap: .5rem;
  padding: 1rem 1.5rem; border-radius: var(--premio-radio);
}
.premio-accion img { width: 64px; height: auto; }

/* Ayuda emergente de "Participación" (Valor) */
.info-icon { cursor: pointer; color: #0d6efd; font-size: 1.4rem; }

/* Pie */
.premio-pie { background: #fff; border-top: 1px solid #e3e3e3; padding: 2rem 0 1rem; margin-top: auto; }
.premio-pie-img { max-width: 60%; }

/* Listados de Seguimiento/Constancia */
.premio-seguimiento td, .premio-seguimiento th { font-size: .875rem; }

@media print {
  .premio-nav, .premio-pie, .no-imprimir { display: none !important; }
  body { background: #fff !important; }
}
