.kt-sidebar-collapse .kt-sidebar:not(:hover) #sidebar_footer {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

.kt-sidebar-collapse .kt-sidebar:not(:hover) #sidebar_footer .sidebar-footer-text {
    display: none !important;
}

.kt-sidebar-collapse .kt-sidebar:not(:hover) #sidebar_footer a i {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.kt-form-message {
    font-size: 0.775rem;
    color: var(--destructive, #ef4444) !important;
    margin-top: 0.35rem;
}

[aria-invalid="true"],
.kt-input[aria-invalid="true"],
.kt-select[aria-invalid="true"],
.kt-textarea[aria-invalid="true"],
textarea[aria-invalid="true"],
.kt-textarea.is-invalid,
textarea.is-invalid,
[data-kt-select-wrapper][aria-invalid="true"],
[data-kt-select-wrapper][aria-invalid="true"] .kt-select,
[data-kt-select-display][aria-invalid="true"],
.select2-container [aria-invalid="true"],
.select2-selection[aria-invalid="true"],
.kt-image-input[aria-invalid="true"] .kt-image-input-placeholder,
.kt-image-input[aria-invalid="true"] .kt-image-input-preview,
.kt-image-input[aria-invalid="true"] [data-kt-file-input-placeholder],
.kt-file-input[aria-invalid="true"],
.kt-file-input[aria-invalid="true"] .kt-image-input-placeholder,
.kt-file-input[aria-invalid="true"] .kt-file-input-placeholder,
.kt-file-input[aria-invalid="true"] [data-kt-file-input-placeholder],
.kt-file-input[aria-invalid="true"] .kt-file-input-preview,
.kt-form-item.is-invalid .kt-input,
.kt-form-item.is-invalid .kt-select,
.kt-form-item.is-invalid .kt-textarea,
.kt-form-item.is-invalid textarea,
.kt-form-item.is-invalid [data-kt-select-wrapper],
.kt-form-item.is-invalid [data-kt-select-wrapper] .kt-select,
.kt-form-item.is-invalid [data-kt-select-display],
.kt-form-item.is-invalid .select2-selection,
.kt-form-item.is-invalid .kt-image-input .kt-image-input-placeholder,
.kt-form-item.is-invalid .kt-image-input .kt-image-input-preview,
.kt-form-item.is-invalid .kt-image-input [data-kt-file-input-placeholder],
.kt-form-item.is-invalid .kt-file-input,
.kt-form-item.is-invalid .kt-file-input .kt-image-input-placeholder,
.kt-form-item.is-invalid .kt-file-input .kt-file-input-placeholder,
.kt-form-item.is-invalid .kt-file-input [data-kt-file-input-placeholder],
.kt-form-item.is-invalid .kt-file-input-placeholder,
.kt-form-item.is-invalid [data-kt-file-input-placeholder] {
    border-color: var(--destructive, #ef4444) !important;
}

.kt-textarea[aria-invalid="true"]:focus,
.kt-textarea[aria-invalid="true"]:focus-visible,
.kt-textarea.is-invalid:focus,
.kt-textarea.is-invalid:focus-visible,
.kt-form-item.is-invalid .kt-textarea:focus,
.kt-form-item.is-invalid .kt-textarea:focus-visible {
    border-color: var(--destructive, #ef4444) !important;
    --tw-ring-color: var(--destructive, #ef4444) !important;
}


table.kt-table {
    width: 100% !important;
}

table.kt-table th,
table.kt-table td {
    white-space: nowrap !important;
    vertical-align: middle !important;
}

.kt-scrollable-x-auto {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

/* Drawer Syarat MBKM & SortableJS */
.hidden-by-search {
    display: none !important;
}

.sortable-ghost {
    opacity: 0.35 !important;
    background-color: var(--muted, #f1f5f9) !important;
    border: 2px dashed var(--primary, #3b82f6) !important;
}

.sortable-chosen {
    cursor: grabbing !important;
}

.drag-handle {
    cursor: grab;
}

.drag-handle:active {
    cursor: grabbing;
}

/* Button color variants for Metronic 9 */
.kt-btn.kt-btn-success,
.kt-btn-success {
    background-color: #10b981 !important;
    color: #ffffff !important;
    border-color: #10b981 !important;
}

.kt-btn.kt-btn-success:hover,
.kt-btn-success:hover {
    background-color: #059669 !important;
    border-color: #059669 !important;
    color: #ffffff !important;
}

.kt-btn.kt-btn-warning,
.kt-btn-warning {
    background-color: #f59e0b !important;
    color: #ffffff !important;
    border-color: #f59e0b !important;
}

.kt-btn.kt-btn-warning:hover,
.kt-btn-warning:hover {
    background-color: #d97706 !important;
    border-color: #d97706 !important;
    color: #ffffff !important;
}

/* Metronic 9 KTUI Alert Support & Contrast Enhancements */
.kt-alert.kt-alert-light {
    border-radius: 0.75rem !important;
    padding: 0.875rem 1rem !important;
}

.kt-alert-light .kt-alert-icon {
    display: flex;
    align-items: flex-start;
    padding-top: 0.125rem;
}

.kt-alert-light.kt-alert-primary .kt-alert-icon i {
    color: var(--primary, #3b82f6) !important;
}

.kt-alert-light.kt-alert-success .kt-alert-icon i {
    color: #10b981 !important;
}

.kt-alert-light.kt-alert-warning .kt-alert-icon i {
    color: #f59e0b !important;
}

.kt-alert-light.kt-alert-destructive .kt-alert-icon i {
    color: var(--destructive, #ef4444) !important;
}

.kt-alert-light.kt-alert-info .kt-alert-icon i {
    color: #8b5cf6 !important;
}

.kt-alert-light .kt-alert-title {
    color: var(--foreground) !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    letter-spacing: -0.01em;
    margin-bottom: 0.25rem !important;
}

.kt-alert-light .kt-alert-description {
    color: var(--muted-foreground, #64748b) !important;
    font-size: 0.8125rem !important;
    line-height: 1.5 !important;
}

.kt-alert-light .kt-alert-description strong {
    color: var(--foreground) !important;
    font-weight: 600 !important;
}

/* ApexCharts Donut Status Legend 2-Column Alignment */
#chart_user_status .apexcharts-legend,
#chart_dosen_status .apexcharts-legend {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px 14px !important;
    padding: 0 10px !important;
    width: 100% !important;
    max-width: 270px !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: auto !important;
    right: auto !important;
    inset: auto auto 2px 50% !important;
    justify-items: start !important;
    max-height: none !important;
    z-index: 2;
}

#chart_user_status .apexcharts-legend-series,
#chart_dosen_status .apexcharts-legend-series {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    white-space: nowrap !important;
    cursor: pointer;
}

#chart_user_status .apexcharts-legend-marker,
#chart_dosen_status .apexcharts-legend-marker {
    margin-right: 7px !important;
    flex-shrink: 0 !important;
}

#chart_user_status .apexcharts-legend-text,
#chart_dosen_status .apexcharts-legend-text {
    font-size: 11px !important;
    font-weight: 500 !important;
    color: var(--foreground, #334155) !important;
    font-family: inherit !important;
}


