/* Estilos comunes para toda la sección de Términos */
.terminos-container {
  font-family: 'Segoe UI', Roboto, sans-serif;
}

/* Estilos para el menú lateral */
.terminos-menu .card-header {
  background-color: #e74c3c !important;
  color: white;
}

.terminos-menu .list-group-item {
  border-left: none;
  border-right: none;
  padding: 12px 20px;
  color: #2c3e50;
  transition: all 0.3s ease;
}

.terminos-menu .list-group-item.active {
  background-color: #ba8d58;
  border-color: #ba8d58;
  color: white;
}

.terminos-menu .list-group-item:hover:not(.active) {
  background-color: #f8f9fa;
}

/* Estilos para las cards de contenido */
.terminos-content .card {
  border: none;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
}

.terminos-content .card-header {
  background-color: white;
  border-bottom: 2px solid #ba8d58;
  font-weight: 600;
}

/* Estilos para acordeones */
.terminos-accordion .accordion-item {
  border: none;
  margin-bottom: 10px;
}

.terminos-accordion .accordion-button {
  background-color: rgba(231, 76, 60, 0.1);
  color: #2c3e50;
  font-weight: 500;
  border-radius: 6px !important;
}

.terminos-accordion .accordion-button:not(.collapsed) {
  background-color: rgba(186, 141, 88, 0.2);
  color: #2c3e50;
}

.terminos-accordion .accordion-button:focus {
  box-shadow: 0 0 0 0.25rem rgba(186, 141, 88, 0.25);
}

/* Estilos para alertas */
.terminos-alert {
  border-left: 4px solid;
}

.alert-danger {
  border-left-color: #e74c3c;
}

.alert-warning {
  border-left-color: #ba8d58;
}

.alert-primary {
  border-left-color: #2c3e50;
}

/* Estilos para listas */
.terminos-list {
  list-style-type: none;
  padding-left: 0;
}

.terminos-list li {
  padding-left: 1.5rem;
  position: relative;
  margin-bottom: 8px;
}

.terminos-list li:before {
  content: "•";
  color: #e74c3c;
  font-weight: bold;
  position: absolute;
  left: 0.5rem;
}

/* Estilos para títulos */
.terminos-title {
  border-bottom: 2px solid #ba8d58;
  padding-bottom: 0.5rem;
  color: #2c3e50;
}

/* Estilos responsivos */
@media (max-width: 768px) {
  .terminos-menu {
    margin-bottom: 20px;
  }
  
  .terminos-content .card {
    box-shadow: none;
  }
}