/* ============================================
   MODO OSCURO - RED STUDENT
   Sistema completo de estilos para Dark Mode
   Bootstrap 5.3 Compatible
   ============================================ */

/* === VARIABLES CSS === */
:root {
   /* Transiciones globales */
   --transition-speed: 0.3s;
}

/* === ESTILOS BASE === */
body {
   background-color: var(--bs-body-bg);
   color: var(--bs-body-color);
   transition: background-color var(--transition-speed) ease, color var(--transition-speed) ease;
}

/* === SIDEBAR === */
#sidebar {
   background: #1e40af !important;
   transition: background var(--transition-speed) ease;
}

[data-bs-theme="dark"] #sidebar {
   background: #1e40af !important;
}

/* Logo/Brand del sidebar en dark mode */
[data-bs-theme="dark"] #sidebar .rounded-3 {
   background: rgba(255, 255, 255, 0.2) !important;
}

[data-bs-theme="dark"] #sidebar h6 {
   color: #ffffff;
}

[data-bs-theme="dark"] #sidebar small {
   color: rgba(255, 255, 255, 0.7);
}

/* Títulos de sección del sidebar */
[data-bs-theme="dark"] #sidebar .text-uppercase {
   color: rgba(255, 255, 255, 0.6);
}

/* Enlaces del sidebar en modo oscuro */
[data-bs-theme="dark"] #sidebar .nav-link {
   color: #ffffff !important;
   background: transparent !important;
}

[data-bs-theme="dark"] #sidebar .nav-link:hover {
   background: rgba(255, 255, 255, 0.2) !important;
   color: #ffffff !important;
   transform: translateX(4px);
}

/* Estado activo de enlaces */
[data-bs-theme="dark"] #sidebar .nav-link[style*="background: rgba(255,255,255,0.2)"] {
   background: rgba(255, 255, 255, 0.25) !important;
   border-left-color: #ffffff !important;
   color: #ffffff !important;
}

/* Iconos del sidebar */
[data-bs-theme="dark"] #sidebar .nav-link i {
   color: #ffffff !important;
}

[data-bs-theme="dark"] #sidebar .nav-link:hover i {
   color: #ffffff !important;
}

/* Contenedor de iconos en estado activo */
[data-bs-theme="dark"] #sidebar .nav-link .d-flex.rounded-2 {
   transition: background 0.3s ease;
   background: transparent !important;
}

[data-bs-theme="dark"] #sidebar .nav-link:hover .d-flex.rounded-2 {
   background: rgba(255, 255, 255, 0.25) !important;
}

/* Span de texto en enlaces */
[data-bs-theme="dark"] #sidebar .nav-link span {
   color: #ffffff !important;
}

/* === CONTENIDO PRINCIPAL === */
#mainContent {
   background-color: var(--bs-body-bg);
   transition: background-color var(--transition-speed) ease;
}

[data-bs-theme="dark"] #mainContent {
   background-color: #0f172a;
}

/* === NAVBAR === */
.navbar {
   background-color: var(--bs-body-bg) !important;
   border-color: var(--bs-border-color) !important;
   transition: background-color var(--transition-speed) ease;
}

[data-bs-theme="dark"] .navbar {
   background-color: #1e293b !important;
   box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* === TEXTOS ADAPTABLES === */
.text-adaptive {
   color: var(--bs-body-color);
}

.text-muted-adaptive {
   color: var(--bs-secondary-color);
}

[data-bs-theme="dark"] .text-adaptive {
   color: #f1f5f9;
}

[data-bs-theme="dark"] .text-muted-adaptive {
   color: #cbd5e1;
}

/* === CARDS === */
.card {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
   transition: background-color var(--transition-speed) ease, border-color var(--transition-speed) ease;
}

[data-bs-theme="dark"] .card {
   background-color: #1e293b;
   border-color: #334155;
   box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-bs-theme="dark"] .card:hover {
   background-color: #2d3748;
   box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4);
}

.card-header {
   background-color: var(--bs-secondary-bg);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .card-header {
   background-color: #334155;
   border-color: #475569;
}

/* === TÍTULOS === */
h1, h2, h3, h4, h5, h6 {
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4,
[data-bs-theme="dark"] h5,
[data-bs-theme="dark"] h6 {
   color: #f1f5f9;
}

/* === BREADCRUMBS === */
.breadcrumb {
   background-color: transparent;
}

[data-bs-theme="dark"] .breadcrumb-item,
[data-bs-theme="dark"] .breadcrumb-item a {
   color: #94a3b8;
}

[data-bs-theme="dark"] .breadcrumb-item.active {
   color: #cbd5e1;
}

/* === BOTONES === */
.btn-outline-secondary {
   color: var(--bs-body-color);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .btn-outline-secondary {
   color: #cbd5e1;
   border-color: #475569;
}

[data-bs-theme="dark"] .btn-outline-secondary:hover {
   background-color: #334155;
   border-color: #64748b;
   color: #f1f5f9;
}

.btn-light {
   background-color: var(--bs-light);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .btn-light {
   background-color: #334155;
   border-color: #475569;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .btn-light:hover {
   background-color: #475569;
   color: #f1f5f9;
}

/* === TABLAS === */
.table {
   color: var(--bs-body-color);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .table {
   color: #cbd5e1;
   border-color: #334155;
}

[data-bs-theme="dark"] .table thead th {
   background-color: #1e293b;
   color: #f1f5f9;
   border-color: #334155;
}

[data-bs-theme="dark"] .table tbody tr {
   border-color: #334155;
}

[data-bs-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
   background-color: rgba(255, 255, 255, 0.02);
}

[data-bs-theme="dark"] .table-hover tbody tr:hover {
   background-color: #2d3748;
   color: #f1f5f9;
}

/* === FORMULARIOS === */
.form-control,
.form-select {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
   background-color: #0f172a;
   border-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
   background-color: #1e293b;
   border-color: #3b82f6;
   color: #f1f5f9;
   box-shadow: 0 0 0 0.25rem rgba(59, 130, 246, 0.25);
}

[data-bs-theme="dark"] .form-control::placeholder {
   color: #64748b;
}

.input-group-text {
   background-color: var(--bs-secondary-bg);
   border-color: var(--bs-border-color);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .input-group-text {
   background-color: #334155;
   border-color: #475569;
   color: #cbd5e1;
}

/* === DROPDOWNS === */
.dropdown-menu {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .dropdown-menu {
   background-color: #1e293b;
   border-color: #334155;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.dropdown-item {
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .dropdown-item {
   color: #cbd5e1;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
   background-color: #334155;
   color: #f1f5f9;
}

.dropdown-divider {
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .dropdown-divider {
   border-color: #334155;
}

/* === MODALES === */
.modal-content {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .modal-content {
   background-color: #1e293b;
   border-color: #334155;
   color: #f1f5f9;
}

.modal-header {
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .modal-header {
   background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%) !important;
   border-color: #334155;
   color: white;
}

.modal-footer {
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .modal-footer {
   background-color: #1e293b;
   border-color: #334155;
}

.modal-title {
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .modal-title {
   color: white;
}

/* === BADGES === */
.badge {
   transition: background-color var(--transition-speed) ease;
}

[data-bs-theme="dark"] .badge.bg-light {
   background-color: #334155 !important;
   color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .badge.bg-secondary {
   background-color: #475569 !important;
}

/* === ALERTAS === */
.alert {
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .alert {
   border-color: #334155;
}

[data-bs-theme="dark"] .alert-light {
   background-color: #1e293b;
   color: #cbd5e1;
   border-color: #334155;
}

/* === LIST GROUPS === */
.list-group-item {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .list-group-item {
   background-color: #1e293b;
   border-color: #334155;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .list-group-item:hover {
   background-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .list-group-item.active {
   background-color: #1e40af;
   border-color: #1e40af;
}

/* === FOOTER === */
footer {
   background-color: var(--bs-body-bg) !important;
   border-color: var(--bs-border-color) !important;
   transition: background-color var(--transition-speed) ease;
}

[data-bs-theme="dark"] footer {
   background-color: #1e293b !important;
   border-color: #334155 !important;
}

/* === BORDERS === */
.border,
.border-top,
.border-bottom,
.border-start,
.border-end {
   border-color: var(--bs-border-color) !important;
}

[data-bs-theme="dark"] .border,
[data-bs-theme="dark"] .border-top,
[data-bs-theme="dark"] .border-bottom,
[data-bs-theme="dark"] .border-start,
[data-bs-theme="dark"] .border-end {
   border-color: #334155 !important;
}

/* === BACKGROUNDS === */
.bg-light {
   background-color: var(--bs-light) !important;
}

[data-bs-theme="dark"] .bg-light {
   background-color: #1e293b !important;
}

.bg-white {
   background-color: #ffffff !important;
}

[data-bs-theme="dark"] .bg-white {
   background-color: #1e293b !important;
}

.bg-body-secondary {
   background-color: var(--bs-secondary-bg) !important;
}

[data-bs-theme="dark"] .bg-body-secondary {
   background-color: #334155 !important;
}

/* === SHADOWS === */
.shadow-sm {
   box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

[data-bs-theme="dark"] .shadow-sm {
   box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3) !important;
}

.shadow {
   box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

[data-bs-theme="dark"] .shadow {
   box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5) !important;
}

.shadow-lg {
   box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

[data-bs-theme="dark"] .shadow-lg {
   box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.6) !important;
}

/* === NAVEGACIÓN === */
.nav-link {
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .nav-link:not(.text-white) {
   color: #cbd5e1;
}

[data-bs-theme="dark"] .nav-link:not(.text-white):hover {
   color: #f1f5f9;
}

/* === PAGINATION === */
.page-link {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .page-link {
   background-color: #1e293b;
   border-color: #334155;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .page-link:hover {
   background-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .page-item.active .page-link {
   background-color: #1e40af;
   border-color: #1e40af;
}

[data-bs-theme="dark"] .page-item.disabled .page-link {
   background-color: #1e293b;
   color: #64748b;
}

/* === PROGRESS BARS === */
.progress {
   background-color: var(--bs-secondary-bg);
}

[data-bs-theme="dark"] .progress {
   background-color: #334155;
}

/* === ACCORDION === */
.accordion-item {
   background-color: var(--bs-body-bg);
   border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .accordion-item {
   background-color: #1e293b;
   border-color: #334155;
}

.accordion-button {
   background-color: var(--bs-body-bg);
   color: var(--bs-body-color);
}

[data-bs-theme="dark"] .accordion-button {
   background-color: #1e293b;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .accordion-button:not(.collapsed) {
   background-color: #334155;
   color: #f1f5f9;
}

/* === BREADCRUMB ESPECÍFICO === */
[data-bs-theme="dark"] .breadcrumb-item + .breadcrumb-item::before {
   color: #64748b;
}

/* === NOTIFICACIONES === */
[data-bs-theme="dark"] .dropdown-item:hover {
   background-color: #334155 !important;
}

/* === SCROLLBAR === */
[data-bs-theme="dark"] ::-webkit-scrollbar {
   width: 12px;
   height: 12px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-track {
   background: #1e293b;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb {
   background: #475569;
   border-radius: 6px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb:hover {
   background: #64748b;
}

/* === ICONOS === */
[data-bs-theme="dark"] .text-primary {
   color: #60a5fa !important;
}

[data-bs-theme="dark"] .text-secondary {
   color: #94a3b8 !important;
}

[data-bs-theme="dark"] .text-success {
   color: #34d399 !important;
}

[data-bs-theme="dark"] .text-danger {
   color: #f87171 !important;
}

[data-bs-theme="dark"] .text-warning {
   color: #fbbf24 !important;
}

[data-bs-theme="dark"] .text-info {
   color: #38bdf8 !important;
}

/* === CONTRASTE MEJORADO === */
[data-bs-theme="dark"] p {
   color: #cbd5e1;
}

[data-bs-theme="dark"] small {
   color: #94a3b8;
}

[data-bs-theme="dark"] .text-muted {
   color: #94a3b8 !important;
}

/* === HOVER STATES === */
[data-bs-theme="dark"] a:not(.btn):hover {
   color: #93c5fd;
}

[data-bs-theme="dark"] .card-link:hover {
   color: #60a5fa;
}

/* === ESPECÍFICOS DE LA APLICACIÓN === */
[data-bs-theme="dark"] .rounded-circle[style*="background: rgba(13, 110, 253"] {
   background: rgba(30, 64, 175, 0.2) !important;
}

[data-bs-theme="dark"] .rounded-circle[style*="background: #0d6efd"] {
   background: #1e40af !important;
}

/* === OVERLAY === */
[data-bs-theme="dark"] .sidebar-overlay {
   background: rgba(0, 0, 0, 0.7);
}

/* === CLOSE BUTTON === */
[data-bs-theme="dark"] .btn-close {
   filter: invert(1);
}

/* === TOOLTIP Y POPOVER === */
[data-bs-theme="dark"] .tooltip-inner {
   background-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .popover {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .popover-header {
   background-color: #334155;
   border-color: #475569;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .popover-body {
   color: #cbd5e1;
}

/* === OFFCANVAS === */
[data-bs-theme="dark"] .offcanvas {
   background-color: #1e293b;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .offcanvas-header {
   border-color: #334155;
}

/* === TOAST === */
[data-bs-theme="dark"] .toast {
   background-color: #1e293b;
   border-color: #334155;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .toast-header {
   background-color: #334155;
   border-color: #475569;
   color: #f1f5f9;
}

/* === SELECT2, DATEPICKER Y OTROS PLUGINS === */
[data-bs-theme="dark"] .select2-container--default .select2-selection--single {
   background-color: #0f172a;
   border-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered {
   color: #f1f5f9;
}

[data-bs-theme="dark"] .select2-dropdown {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .select2-results__option {
   color: #cbd5e1;
}

[data-bs-theme="dark"] .select2-results__option--highlighted {
   background-color: #334155;
   color: #f1f5f9;
}

/* ============================================
   SUMMERNOTE EDITOR - MODO OSCURO
   ============================================ */

/* Toolbar principal */
[data-bs-theme="dark"] .note-editor {
   background-color: #1e293b;
   border-color: #334155;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-toolbar {
   background-color: #1e293b;
   border-color: #334155;
}

/* Área de edición */
[data-bs-theme="dark"] .note-editable {
   background-color: #0f172a;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-editable p,
[data-bs-theme="dark"] .note-editable div,
[data-bs-theme="dark"] .note-editable span {
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-editable h1,
[data-bs-theme="dark"] .note-editable h2,
[data-bs-theme="dark"] .note-editable h3,
[data-bs-theme="dark"] .note-editable h4,
[data-bs-theme="dark"] .note-editable h5,
[data-bs-theme="dark"] .note-editable h6 {
   color: #f1f5f9;
}

/* Botones del toolbar */
[data-bs-theme="dark"] .note-btn {
   background-color: #334155;
   border-color: #475569;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-btn:hover {
   background-color: #475569;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-btn.active,
[data-bs-theme="dark"] .note-btn:active {
   background-color: #1e40af;
   border-color: #1e40af;
   color: white;
}

/* Dropdowns del toolbar */
[data-bs-theme="dark"] .note-dropdown-menu {
   background-color: #1e293b;
   border-color: #334155;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

[data-bs-theme="dark"] .note-dropdown-item {
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-dropdown-item:hover {
   background-color: #334155;
   color: #f1f5f9;
}

/* Color picker */
[data-bs-theme="dark"] .note-color-palette {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .note-color-row {
   background-color: #1e293b;
}

[data-bs-theme="dark"] .note-color-reset {
   background-color: #334155;
   color: #cbd5e1;
   border-color: #475569;
}

[data-bs-theme="dark"] .note-color-reset:hover {
   background-color: #475569;
   color: #f1f5f9;
}

/* Modales de Summernote */
[data-bs-theme="dark"] .note-modal {
   background-color: rgba(15, 23, 42, 0.9);
}

[data-bs-theme="dark"] .note-modal-content {
   background-color: #1e293b;
   border-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-modal-header {
   background-color: #1e40af;
   border-color: #334155;
   color: white;
}

[data-bs-theme="dark"] .note-modal-title {
   color: white;
}

[data-bs-theme="dark"] .note-modal-body {
   background-color: #1e293b;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-modal-footer {
   background-color: #1e293b;
   border-color: #334155;
   padding: 1.25rem 1.5rem;
}

/* Inputs dentro de modales Summernote */
[data-bs-theme="dark"] .note-modal .form-control,
[data-bs-theme="dark"] .note-modal input[type="text"],
[data-bs-theme="dark"] .note-modal input[type="url"],
[data-bs-theme="dark"] .note-modal textarea {
   background-color: #0f172a;
   border-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-modal .form-control:focus,
[data-bs-theme="dark"] .note-modal input:focus {
   background-color: #1e293b;
   border-color: #3b82f6;
   color: #f1f5f9;
   box-shadow: 0 0 0 0.25rem rgba(59, 130, 246, 0.25);
}

[data-bs-theme="dark"] .note-modal .form-control::placeholder,
[data-bs-theme="dark"] .note-modal input::placeholder {
   color: #64748b;
}

/* Labels en modales */
[data-bs-theme="dark"] .note-modal label,
[data-bs-theme="dark"] .note-modal .note-form-label {
   color: #cbd5e1;
}

/* Botones de modales Summernote */
[data-bs-theme="dark"] .note-modal .note-btn {
   background-color: #334155;
   border-color: #475569;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-modal .note-btn-primary {
   background-color: #0d6efd;
   border-color: #0d6efd;
   color: white;
}

[data-bs-theme="dark"] .note-modal .note-btn-primary:hover {
   background-color: #0a58ca;
   border-color: #0a58ca;
}

/* Botón cerrar del modal */
[data-bs-theme="dark"] .note-modal .close,
[data-bs-theme="dark"] .note-modal button.close {
   color: white;
   text-shadow: none;
   opacity: 1;
}

[data-bs-theme="dark"] .note-modal .close:hover {
   color: #cbd5e1;
}

/* Tabs en modales (imagen, video, link) */
[data-bs-theme="dark"] .note-modal .nav-tabs {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .note-modal .nav-tabs .nav-link {
   color: #94a3b8;
   border-color: transparent;
}

[data-bs-theme="dark"] .note-modal .nav-tabs .nav-link:hover {
   color: #cbd5e1;
   border-color: #334155;
}

[data-bs-theme="dark"] .note-modal .nav-tabs .nav-link.active {
   background-color: #334155;
   border-color: #334155 #334155 #1e293b;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .note-modal .tab-content {
   background-color: #1e293b;
   border-color: #334155;
}

/* Checkboxes en modales */
[data-bs-theme="dark"] .note-modal .checkbox label,
[data-bs-theme="dark"] .note-modal .form-check-label {
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-modal input[type="checkbox"] {
   border-color: #475569;
   background-color: #334155;
}

[data-bs-theme="dark"] .note-modal input[type="checkbox"]:checked {
   background-color: #0d6efd;
   border-color: #0d6efd;
}

/* Help text */
[data-bs-theme="dark"] .note-modal .help-block,
[data-bs-theme="dark"] .note-modal .note-help-block {
   color: #94a3b8;
}

/* Status bar */
[data-bs-theme="dark"] .note-statusbar {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .note-resizebar {
   background-color: #334155;
   border-color: #475569;
}

/* Placeholder text */
[data-bs-theme="dark"] .note-placeholder {
   color: #64748b;
}

/* Link dialog */
[data-bs-theme="dark"] .note-link-dialog .note-link-text,
[data-bs-theme="dark"] .note-link-dialog .note-link-url {
   background-color: #0f172a;
   color: #f1f5f9;
   border-color: #334155;
}

/* Image dialog */
[data-bs-theme="dark"] .note-image-dialog img {
   border-color: #334155;
}

/* Table */
[data-bs-theme="dark"] .note-table {
   border-color: #334155;
}

[data-bs-theme="dark"] .note-table td,
[data-bs-theme="dark"] .note-table th {
   border-color: #334155;
   color: #cbd5e1;
}

/* Popover de Summernote */
[data-bs-theme="dark"] .note-popover {
   background-color: #1e293b;
   border-color: #334155;
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

[data-bs-theme="dark"] .note-popover .popover-content {
   background-color: #1e293b;
   color: #cbd5e1;
}

[data-bs-theme="dark"] .note-popover .arrow::after {
   border-bottom-color: #1e293b;
}

/* Handle */
[data-bs-theme="dark"] .note-handle {
   background-color: #0d6efd;
   border-color: #0d6efd;
}

/* Dialog fade background */
[data-bs-theme="dark"] .note-modal-backdrop {
   background-color: rgba(0, 0, 0, 0.7);
}

/* Grupos de botones */
[data-bs-theme="dark"] .note-btn-group {
   background-color: transparent;
}

[data-bs-theme="dark"] .note-btn-group .note-btn {
   border-color: #475569;
}

/* Icono de dropdown */
[data-bs-theme="dark"] .note-icon-caret {
   color: #cbd5e1;
}

/* Recent colors */
[data-bs-theme="dark"] .note-recent-color {
   background-color: #334155;
}

/* Video/Image dimension inputs */
[data-bs-theme="dark"] .note-modal .note-dimension-picker {
   background-color: #0f172a;
   border-color: #334155;
}

[data-bs-theme="dark"] .note-modal .note-dimension-picker-mousecatcher {
   background-color: #1e293b;
}

[data-bs-theme="dark"] .note-modal .note-dimension-picker-highlighted {
   background-color: #1e40af;
}

/* Custom modal styles específicos */
[data-bs-theme="dark"] .note-modal .modal-dialog {
   box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.6);
}

/* Separadores */
[data-bs-theme="dark"] .note-toolbar .note-btn-group::after,
[data-bs-theme="dark"] .note-toolbar .note-btn-group + .note-btn-group::before {
   background-color: #475569;
}

/* Estilos para el contenido editable con mejor contraste */
[data-bs-theme="dark"] .note-editable table {
   border-color: #475569;
}

[data-bs-theme="dark"] .note-editable table td,
[data-bs-theme="dark"] .note-editable table th {
   border-color: #475569;
}

[data-bs-theme="dark"] .note-editable blockquote {
   border-left-color: #475569;
   color: #94a3b8;
}

[data-bs-theme="dark"] .note-editable code {
   background-color: #334155;
   color: #f1f5f9;
   border: 1px solid #475569;
}

[data-bs-theme="dark"] .note-editable pre {
   background-color: #0f172a;
   border-color: #334155;
   color: #cbd5e1;
}

/* HR en el editor */
[data-bs-theme="dark"] .note-editable hr {
   border-color: #475569;
}

/* Links en el editor */
[data-bs-theme="dark"] .note-editable a {
   color: #60a5fa;
}

[data-bs-theme="dark"] .note-editable a:hover {
   color: #93c5fd;
}

/* ============================================
   ASIGNACIÓN DE ESTUDIANTES - GRUPOS DE TRABAJO
   ============================================ */

/* Alert de información en modo oscuro */
[data-bs-theme="dark"] .alert-info {
   background-color: rgba(59, 130, 246, 0.15) !important;
   border-color: rgba(59, 130, 246, 0.3);
   color: #93c5fd;
}

[data-bs-theme="dark"] .alert-info .alert-heading,
[data-bs-theme="dark"] .alert-info h6 {
   color: #60a5fa;
}

[data-bs-theme="dark"] .alert-info i {
   color: #60a5fa;
}

[data-bs-theme="dark"] .alert-info small {
   color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .alert-info .text-muted {
   color: #cbd5e1 !important;
}

/* Cards de estudiantes disponibles y seleccionados */
[data-bs-theme="dark"] .card.border-0 {
   background-color: #1e293b;
   border-color: #334155;
}

[data-bs-theme="dark"] .card-header.bg-light {
   background-color: #334155 !important;
   border-color: #475569;
}

[data-bs-theme="dark"] .card-header h6 {
   color: #f1f5f9;
}

[data-bs-theme="dark"] .card-header .text-muted {
   color: #94a3b8 !important;
}

/* Badges en headers de cards */
[data-bs-theme="dark"] .badge.bg-secondary {
   background-color: #475569 !important;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .badge.bg-primary {
   background-color: #3b82f6 !important;
   color: #ffffff;
}

/* List group items de estudiantes */
[data-bs-theme="dark"] .list-group-item {
   background-color: #1e293b;
   border-color: #334155;
   color: #f1f5f9;
}

[data-bs-theme="dark"] .list-group-item:hover {
   background-color: #334155;
}

[data-bs-theme="dark"] .list-group-item .fw-semibold {
   color: #f1f5f9;
}

[data-bs-theme="dark"] .list-group-item .text-muted,
[data-bs-theme="dark"] .list-group-item small.text-muted {
   color: #94a3b8 !important;
}

/* Icono de drag */
[data-bs-theme="dark"] .list-group-item .mdi-drag-vertical {
   color: #64748b !important;
}

/* Mensaje vacío */
[data-bs-theme="dark"] #emptyMessage {
   color: #64748b !important;
}

[data-bs-theme="dark"] #emptyMessage i {
   color: #475569;
}

/* Botones outline en list items */
[data-bs-theme="dark"] .list-group-item .btn-outline-primary {
   color: #60a5fa;
   border-color: #3b82f6;
}

[data-bs-theme="dark"] .list-group-item .btn-outline-primary:hover {
   background-color: #3b82f6;
   border-color: #3b82f6;
   color: #ffffff;
}

[data-bs-theme="dark"] .list-group-item .btn-outline-danger {
   color: #f87171;
   border-color: #ef4444;
}

[data-bs-theme="dark"] .list-group-item .btn-outline-danger:hover {
   background-color: #ef4444;
   border-color: #ef4444;
   color: #ffffff;
}

/* Card con borde izquierdo (Estudiantes Seleccionados) */
[data-bs-theme="dark"] .card[style*="border-left"] {
   border-left-color: #3b82f6 !important;
}

/* Títulos con color primary en modo oscuro */
[data-bs-theme="dark"] .card-header h6[style*="color: #0d6efd"] {
   color: #60a5fa !important;
}
