/* Dukaribu CRM — Fullscreen Modal Styles */

/* Force all modals to cover the entire viewport */
.modal {
    padding: 0 !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1050;
}

.modal .modal-dialog {
    max-width: 100% !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    top: 0;
    left: 0;
}

.modal .modal-content {
    min-height: 100% !important;
    height: 100% !important;
    border: none !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff;
}

.modal .modal-header {
    flex-shrink: 0;
    border-radius: 0;
    background: #fff;
    z-index: 1;
}

.modal .modal-body {
    overflow-y: auto !important;
    flex: 1 1 auto !important;
    padding-bottom: 80px;
}

.modal .modal-footer {
    flex-shrink: 0;
    border-radius: 0;
    background: #fff;
    z-index: 1;
}

/* White backdrop to completely hide the page behind */
.modal-backdrop,
.modal-backdrop.show,
.modal-backdrop.fade.show {
    opacity: 1 !important;
    background-color: #fff !important;
}

/* ===== Exceptions: keep small modals normal ===== */
.modal .modal-dialog.modal-sm {
    max-width: 400px !important;
    width: auto !important;
    height: auto !important;
    margin: 5% auto !important;
    position: relative;
    top: auto;
    left: auto;
}

.modal .modal-dialog.modal-sm .modal-content {
    min-height: auto !important;
    height: auto !important;
    border-radius: 6px !important;
}

/* Hide ALL sidebar/setup badges — then re-show only those with real content */
#menu .badge,
#menu span.badge,
.nav-second-level .badge,
#sidebar .badge,
#setup-menu .badge,
#setup-menu-wrapper .badge {
    display: none !important;
}
#menu .badge.bg-warning,
#menu .badge.bg-danger,
#menu .badge.menu-badge,
#setup-menu .badge.bg-warning,
#setup-menu .badge.bg-danger,
#setup-menu .badge.menu-badge {
    display: inline-block !important;
}

/* Ensure page content is visible even when JS errors occur */
.page-layout,
.page-content,
.panel-body,
#wrapper,
.main-content {
    visibility: visible !important;
    opacity: 1 !important;
}
