/*
 * ============================================================
 *  IGSS — 06_pages: directorio.css
 *  Estilos específicos de la página Directorio.
 *  Cargado condicionalmente desde enqueue.php.
 *
 *  Depende de: app.css (tokens + overrides ya disponibles)
 * ============================================================ */

/* ── Paneles contenedores ───────────────────────────────── */
.igss-dir-panel {
  background:    var(--igss-color-bg);
  border-radius: var(--igss-radius-xl);
  box-shadow:    var(--igss-shadow-sm);
  border:        1px solid var(--igss-color-border);
  padding:       var(--igss-space-8);
}

.igss-dir-heading {
  font-size:     var(--igss-text-xl);
  font-weight:   var(--igss-font-bold);
  color:         var(--igss-color-navy);
  border-left:   4px solid var(--igss-color-primary);
  padding-left:  var(--igss-space-4);
  margin-bottom: var(--igss-space-3);
  line-height:   1.25;
}

/* ── Columna de número en tabla PDFs ─────────────────────── */
.igss-pdf-num {
  width:       52px;
  font-weight: var(--igss-font-bold);
  color:       var(--igss-color-primary);
  background:  var(--igss-blue-50);
  text-align:  center;
}

/* ── Banner (imagen) ──────────────────────────────────────── */
.igss-dir-banner-img {
  border-radius: var(--igss-radius-xl);
  overflow:      hidden;
  margin-bottom: var(--igss-space-8);
  line-height:   0;        /* elimina espacio inferior del inline img */
}

.igss-dir-banner-img img {
  width:   100%;
  height:  auto;
  display: block;
}

/* ── Estado de carga de selects ──────────────────────────── */
#igssEstadoCarga {
  font-size: var(--igss-text-sm);
  color:     var(--igss-color-text-muted);
  min-height: 1.25rem;
}

/* ── Card de detalle de unidad ──────────────────────────── */
#igssCardDetalle {
  border-color:  var(--igss-color-border);
  border-radius: var(--igss-radius-lg);
  overflow:      hidden;
}

#igssCardDetalle .card-header {
  background-color: var(--igss-color-navy);
  border-bottom:    none;
  padding:          var(--igss-space-4) var(--igss-space-6);
}

#igssCardDetalle .card-header h3 {
  color:         #ffffff;
  font-size:     var(--igss-text-lg);
  font-weight:   var(--igss-font-bold);
  margin:        0 0 var(--igss-space-1);
  line-height:   var(--igss-leading-snug);
}

#igssCardDetalle .card-header small {
  color:   rgba(255, 255, 255, 0.65);
  display: block;
}

/* ── Lista de datos de contacto ──────────────────────────── */
.igss-dir-detail-list {
  list-style: none;
  padding:    0;
  margin:     0 0 var(--igss-space-5);
}

.igss-dir-detail-list li {
  display:       flex;
  align-items:   flex-start;
  gap:           var(--igss-space-3);
  padding:       var(--igss-space-3) 0;
  border-bottom: 1px solid var(--igss-color-border);
}

.igss-dir-detail-list li:last-child { border-bottom: none; }

.igss-dir-detail-list i {
  color:       var(--igss-color-primary);
  font-size:   1rem;
  flex-shrink: 0;
  margin-top:  3px;
}

.igss-dir-detail__label {
  display:     block;
  font-weight: var(--igss-font-semibold);
  color:       var(--igss-color-navy);
  font-size:   var(--igss-text-sm);
}

.igss-dir-detail__value {
  display:   block;
  color:     var(--igss-color-text);
  font-size: var(--igss-text-base);
}

/* ── Lista de extensiones del PBX ───────────────────────── */
.igss-dir-ext-list {
  list-style: none;
  padding:    0;
  margin:     var(--igss-space-2) 0 0 0;
  border-top: 1px dashed var(--igss-color-border);
  padding-top: var(--igss-space-2);
}

.igss-dir-ext-list li {
  font-size: var(--igss-text-sm);
  color:     var(--igss-color-text-muted);
  padding:   2px 0;
}

/* ── Badge de Emergencia 24h ─────────────────────────────── */
.igss-badge-emergency {
  display:        inline-flex;
  align-items:    center;
  gap:            var(--igss-space-1);
  background:     var(--igss-danger-light);
  color:          var(--igss-danger-dark);
  border-radius:  var(--igss-radius-full);
  font-size:      var(--igss-text-xs);
  font-weight:    var(--igss-font-semibold);
  padding:        2px 10px;
  margin-top:     var(--igss-space-2);
  width:          fit-content;
}

/* ── Mapa embed ───────────────────────────────────────────── */
.igss-dir-map-wrap {
  border-radius: var(--igss-radius-lg);
  overflow:      hidden;
  border:        1px solid var(--igss-color-border);
}

/* ── Líneas de horario de atención ───────────────────────── */
.igss-horario-item {
  display:         block;
  padding:         var(--igss-space-1) 0 var(--igss-space-1) var(--igss-space-5);
  position:        relative;
  line-height:     var(--igss-leading-normal);
}

.igss-horario-item + .igss-horario-item {
  border-top: 1px dashed var(--igss-color-border);
}

.igss-horario-item::before {
  content:     '·';
  position:    absolute;
  left:        var(--igss-space-1);
  color:       var(--igss-color-primary);
  font-weight: var(--igss-font-bold);
  font-size:   1.1rem;
  line-height: inherit;
}

.igss-horario-label {
  font-weight: var(--igss-font-semibold);
  color:       var(--igss-color-navy);
}

.igss-horario-valor {
  color: var(--igss-color-text);
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 575.98px) {
  .igss-dir-panel { padding: var(--igss-space-5); }
}
