/* Refuerzo: si vuelve el span .brand-text (p. ej. al actualizar jazzmin), ocultarlo */
.sidebar-brand .brand-text,
#jazzy-logo .brand-text {
    display: none !important;
}

/* Logo en sidebar del admin */
.sidebar-brand .brand-link .brand-image {
    float: left;
    width: auto;
    max-height: 48px;
    line-height: 0.8;
}

.login-logo img {
    max-height: 48px;
    width: auto;
    border-radius: 0 !important;
    object-fit: contain;
    box-shadow: none !important;
}

/* Login: mismo tono que el menú (.app-sidebar + data-bs-theme=dark). html + body para cubrir toda la vista. */
html.jazzmin-login-root,
body.jazzmin-login-page {
    background-color: #343a40 !important;
    background-image: none !important;
}
html.jazzmin-login-root {
    min-height: 100%;
}
body.jazzmin-login-page {
    min-height: 100vh;
}

/* Login: input-group estable al validar (sin flex-wrap raro ni campos que “saltan”) */
.login-card-body .jazzmin-login-field.input-group {
    flex-wrap: nowrap;
    align-items: stretch;
    width: 100%;
}
.login-card-body .jazzmin-login-field.input-group > .form-control {
    min-width: 0;
    flex: 1 1 auto;
}
.login-card-body .jazzmin-login-field.input-group > .input-group-text {
    flex-shrink: 0;
}
.login-card-body .jazzmin-login-field .form-control.is-invalid,
.login-card-body .jazzmin-login-field .form-control:invalid {
    /* Sin doble borde que rompa el grupo si se usa estado inválido */
    box-shadow: none;
}

/* ==========================================================================
   Select2 en changelist — mismo aspecto que .form-select (Bootstrap)
   ========================================================================== */
#change-list-filters .form-group {
    margin-bottom: 0;
}

#change-list-filters .select2-container--default .select2-selection--single .select2-selection__arrow,
#changelist .select2-container--default .select2-selection--single .select2-selection__arrow,
.change-list-actions .select2-container--default .select2-selection--single .select2-selection__arrow,
.actions .select2-container--default .select2-selection--single .select2-selection__arrow {
    display: none !important;
}

#change-list-filters .select2-container,
#changelist .select2-container,
.change-list-actions .select2-container,
.actions .select2-container {
    vertical-align: middle;
}

#change-list-filters .select2-container {
    min-width: 11rem;
    max-width: 100%;
}

#change-list-filters .select2-container--default .select2-selection--single,
#changelist .select2-container--default .select2-selection--single,
.change-list-actions .select2-container--default .select2-selection--single,
.actions .select2-container--default .select2-selection--single {
    min-height: calc(1.5em + 0.75rem + 2px);
    height: auto !important;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    font-size: var(--bs-body-font-size, 0.875rem);
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color, #212529);
    background-color: var(--bs-body-bg, #fff);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: var(--bs-border-radius, 0.375rem);
    display: flex;
    align-items: center;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

html[data-bs-theme="dark"] #change-list-filters .select2-container--default .select2-selection--single,
html[data-bs-theme="dark"] #changelist .select2-container--default .select2-selection--single,
html[data-bs-theme="dark"] .change-list-actions .select2-container--default .select2-selection--single,
html[data-bs-theme="dark"] .actions .select2-container--default .select2-selection--single {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

#change-list-filters .select2-container--default.select2-container--focus .select2-selection--single,
#changelist .select2-container--default.select2-container--focus .select2-selection--single,
.change-list-actions .select2-container--default.select2-container--focus .select2-selection--single,
.actions .select2-container--default.select2-container--focus .select2-selection--single,
#change-list-filters .select2-container--default.select2-container--open .select2-selection--single,
#changelist .select2-container--default.select2-container--open .select2-selection--single,
.change-list-actions .select2-container--default.select2-container--open .select2-selection--single,
.actions .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--bs-primary, #0d6efd);
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
}

#change-list-filters .select2-container--default .select2-selection--single .select2-selection__rendered,
#changelist .select2-container--default .select2-selection--single .select2-selection__rendered,
.change-list-actions .select2-container--default .select2-selection--single .select2-selection__rendered,
.actions .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0;
    padding-right: 0;
    line-height: 1.5;
    color: inherit;
}

#changelist .actions .select2-container {
    min-width: 12rem;
    max-width: min(100%, 28rem);
}

.select2-container--open .select2-dropdown--below,
.select2-dropdown {
    border-color: var(--bs-border-color, #dee2e6);
    border-radius: var(--bs-border-radius, 0.375rem);
    background-color: var(--bs-body-bg, #fff);
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.08);
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--bs-primary, #0d6efd);
    color: var(--bs-body-bg, #fff);
}

/* ==========================================================================
   Panel de control (admin/index): tarjetas + gráficos Chart.js
   ========================================================================== */
.academy-admin-index .academy-dash-stat-icon {
    font-size: 1.75rem;
    line-height: 1;
    opacity: 0.9;
}

.academy-dashboard-chart-wrap {
    position: relative;
    min-height: 220px;
    height: 240px;
}

.academy-dashboard-chart-wrap--wide {
    min-height: 260px;
    height: 300px;
}

.academy-dashboard-chart-section .card-header {
    min-height: 3.25rem;
    align-items: center;
}

.academy-dashboard-chart-section .card-header .h6 {
    font-size: 0.95rem;
    line-height: 1.3;
}

/* Ocultar nota “Usted va X horas por detrás/de más…” (DateTimeShortcuts.js del admin) */
.help.timezonewarning,
[id$="_timezone_warning_helptext"] {
    display: none !important;
}
