/* ==========================================================================
   PLANIFICACIONES DE CÁTEDRA
   ========================================================================== */

.planificaciones-page {
  background-color: #f8fafc;
  min-height: 100vh;
}

/* Acordeón de Departamentos */
.plan-accordion .accordion-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  overflow: hidden;
  background: #ffffff !important;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.025) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  margin-bottom: 1.25rem;
}

/* Elevación/Sombra y transición en Hover consistente con el sitio */
.plan-accordion .accordion-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.08) !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
}

.plan-accordion .accordion-button {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #1e293b !important;
  background-color: #ffffff !important;
  padding: 22px 24px;
  border: none !important;
  box-shadow: none !important;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.plan-accordion .accordion-button::after {
  display: none !important;
}

/* Estado Expandido (Mantenemos fondo blanco y texto oscuro) */
.plan-accordion .accordion-button:not(.collapsed) {
  background-color: #ffffff !important;
  color: #1e293b !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

/* Colores de Borde Izquierdo por Carrera en Estado Normal (DESIGN.md) */
.plan-dept-mecanica {
  border-left: 5px solid #6c2f14 !important;
}

.plan-dept-electronica {
  border-left: 5px solid #f7a331 !important;
}

.plan-dept-sistemas {
  border-left: 5px solid #124b77 !important;
}

.plan-dept-quimica {
  border-left: 5px solid #f12d18 !important;
}

.plan-dept-rural {
  border-left: 5px solid #3fb850 !important;
}

.plan-dept-basicas {
  border-left: 5px solid #F5A800 !important; /* Naranja Institucional */
}

.plan-dept-civil {
  border-left: 5px solid #ff611e !important;
}

.plan-dept-logistica {
  border-left: 5px solid #ff7a41 !important;
}

.plan-dept-mecatronica {
  border-left: 5px solid #2fae96 !important;
}

.plan-dept-negociacion {
  border-left: 5px solid #7f42a2 !important;
}

.plan-dept-programacion {
  border-left: 5px solid #252581 !important;
}

/* Hover de Departamentos con sus respectivos colores */
.plan-dept-mecanica:hover .accordion-button {
  background-color: #6c2f14 !important;
  color: #ffffff !important;
}
.plan-dept-mecanica:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-electronica:hover .accordion-button {
  background-color: #f7a331 !important;
  color: #ffffff !important;
}
.plan-dept-electronica:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-sistemas:hover .accordion-button {
  background-color: #124b77 !important;
  color: #ffffff !important;
}
.plan-dept-sistemas:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-quimica:hover .accordion-button {
  background-color: #f12d18 !important;
  color: #ffffff !important;
}
.plan-dept-quimica:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-rural:hover .accordion-button {
  background-color: #3fb850 !important;
  color: #ffffff !important;
}
.plan-dept-rural:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-basicas:hover .accordion-button {
  background-color: #F5A800 !important;
  color: #ffffff !important;
}
.plan-dept-basicas:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-civil:hover .accordion-button {
  background-color: #ff611e !important;
  color: #ffffff !important;
}
.plan-dept-civil:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-logistica:hover .accordion-button {
  background-color: #ff7a41 !important;
  color: #ffffff !important;
}
.plan-dept-logistica:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-mecatronica:hover .accordion-button {
  background-color: #2fae96 !important;
  color: #ffffff !important;
}
.plan-dept-mecatronica:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-negociacion:hover .accordion-button {
  background-color: #7f42a2 !important;
  color: #ffffff !important;
}
.plan-dept-negociacion:hover .accordion-arrow {
  color: #ffffff !important;
}

.plan-dept-programacion:hover .accordion-button {
  background-color: #252581 !important;
  color: #ffffff !important;
}
.plan-dept-programacion:hover .accordion-arrow {
  color: #ffffff !important;
}

/* Estilos del título del departamento y flecha */
.plan-dept-title {
  font-size: 17px;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
}

.plan-accordion .accordion-arrow {
  font-size: 20px;
  color: #94a3b8;
  transition: transform 0.2s ease, color 0.3s ease;
}

.plan-accordion .accordion-button:not(.collapsed) .accordion-arrow {
  transform: rotate(90deg);
}

/* Subacordeones de Planes (Ej: Electrónica) */
.plan-sub-accordion .accordion-item {
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  margin-bottom: 0.75rem;
  overflow: hidden;
}

.plan-sub-accordion .accordion-button {
  padding: 14px 20px;
  font-size: 15px;
  background-color: #f8fafc !important;
  color: #334155 !important;
  border-bottom: none !important;
}

.plan-sub-accordion .accordion-button:not(.collapsed) {
  background-color: #e2e8f0 !important;
  color: #0f172a !important;
  border-bottom: 1px solid #cbd5e1 !important;
}

/* Listado de Materias */
.plan-subjects-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px 0;
}

.plan-subject-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  background-color: #ffffff;
  border: 1px solid #f1f5f9;
  border-radius: 8px;
  transition: all 0.2s ease-in-out;
}

.plan-subject-item:hover {
  background-color: #f8fafc;
  border-color: #cbd5e1;
  transform: translateX(4px);
}

.plan-subject-name {
  font-weight: 600;
  color: #334155;
  font-size: 14.5px;
  font-family: "Montserrat", sans-serif;
}

/* Botones para ver planificación */
.plan-btn-view {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 8px 16px;
  border-radius: 20px;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.plan-btn-view:hover {
  transform: translateY(-1px);
}

/* Ajustes Responsivos */
@media (max-width: 768px) {
  .plan-subject-item {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px;
  }

  .plan-subject-item:hover {
    transform: none;
  }

  .plan-btn-view {
    text-align: center;
    width: 100%;
  }
}
