/* Sedes de la columna lateral del tema clásico (partials/public_sedes.html) y el modal
   de su mapa (partials/public_sede_mapa_modal.html), que usan los seis temas. */
.pub-sedes-cuerpo { flex: 1; min-width: 0; display: flex; align-items: center; gap: 0.25rem; }
.pub-sedes-lista { flex: 1; min-width: 0; }
.pub-sede {
  display: flex; flex-direction: column; align-items: flex-start; gap: 0.1rem;
  width: 100%; padding: 0; border: 0; background: none; text-align: left;
  color: #4a5568; font-size: 0.9rem; cursor: pointer;
}
.pub-sede-nombre { color: #2d3748; font-weight: 600; }
/* La dirección es la que abre el mapa: se subraya al pasar, como un enlace. */
.pub-sede:hover > span, .pub-sede:focus-visible > span { text-decoration: underline; }
.pub-sede-ruta { color: var(--brand, #6D28D9); font-size: 0.85rem; font-weight: 500; }
.pub-sedes-flecha {
  flex: 0 0 auto; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: none; color: #566a7f; font-size: 1rem; cursor: pointer;
}
.pub-sedes-flecha:hover, .pub-sedes-flecha:focus-visible { background: rgba(0, 0, 0, 0.06); }
.pub-contact-list .pub-sedes-flecha i { margin-top: 0; color: inherit; }

#pubSedeModal .pub-sede-modal-dir { margin: 0; padding: 0.75rem 1.25rem; opacity: 0.8; }
#pubSedeModal .pub-sede-mapa { display: block; width: 100%; height: 420px; border: 0; }
@media (max-width: 575.98px) {
  #pubSedeModal .modal-body { display: flex; flex-direction: column; }
  #pubSedeModal .pub-sede-mapa { flex: 1; height: auto; min-height: 300px; }
}

/* "Ver mapa" junto a la dirección en los otros cinco temas: solo estructura, el
   color lo pone cada _<tema>_head.html. */
.pub-sede-mapa-btn {
  display: inline-flex; align-items: center; gap: 0.25rem; margin-left: 0.4rem;
  padding: 0.25rem 0; border: 0; background: none; color: currentColor;
  font: inherit; font-size: 0.85em; font-weight: 600; text-decoration: underline;
  text-underline-offset: 3px; cursor: pointer;
}
