/* Modal Flickering Fix for Alpha Agency 752 Admin Panel */

/* 1. DISABLE HOVER EFFECTS WHEN MODAL IS OPEN */
.modal-open .card:hover,
.modal-open .btn:hover,
.modal-open .table-hover tbody tr:hover,
.modal-open .stat-card:hover,
.modal-open .feature-card:hover,
.modal-open .tool-card:hover {
    transform: none !important;
    box-shadow: inherit !important;
    border-color: inherit !important;
}

/* 2. STABILIZE MODAL POSITIONING */
.modal {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 9999 !important;
    pointer-events: none;
}

.modal.show {
    pointer-events: auto;
}

.modal-dialog {
    transform: none !important;
    transition: none !important;
    margin: 1.75rem auto !important;
    position: relative !important;
}

.modal-content {
    position: relative !important;
    background-clip: padding-box !important;
    border: 1px solid rgba(0,0,0,.2) !important;
    border-radius: 0.3rem !important;
    outline: 0 !important;
    background-color: #fff !important;
    pointer-events: auto !important;
}

/* 3. PREVENT TABLE ROW HOVER EFFECTS IN ADMIN PANEL */
.admin-content .table-hover tbody tr {
    transition: none !important;
}

.admin-content .table-hover tbody tr:hover {
    background-color: rgba(0,0,0,.075) !important;
    transform: none !important;
}

/* 4. DISABLE BUTTON HOVER ANIMATIONS DURING MODAL */
.modal-open .btn-group .btn:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* 5. FORCE MODAL BACKDROP TO STAY STABLE */
.modal-backdrop {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 9998 !important;
    width: 100vw !important;
    height: 100vh !important;
    background-color: #000 !important;
}

.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: 0.5 !important;
}

/* 6. STABILIZE ROLE CHANGE BUTTONS */
.btn[data-bs-toggle="modal"] {
    position: relative !important;
    z-index: 1 !important;
}

.btn[data-bs-toggle="modal"]:hover {
    transform: none !important;
    z-index: 2 !important;
}

/* 7. PREVENT TRANSFORM ANIMATIONS ON MODAL ELEMENTS */
.modal .form-select,
.modal .form-control,
.modal .btn {
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
    transform: none !important;
}

/* 8. ADMIN PANEL SPECIFIC FIXES */
.admin-content .btn-group {
    position: relative !important;
}

.admin-content .btn-group .btn {
    position: static !important;
}

/* 9. DISABLE PROBLEMATIC ANIMATIONS */
@keyframes none {
    0%, 100% { transform: none; }
}

.modal-open * {
    animation: none !important;
}

/* 10. ENSURE MODAL STAYS IN VIEWPORT */
.modal-dialog-centered {
    display: flex !important;
    align-items: center !important;
    min-height: calc(100% - 1rem) !important;
}

/* 11. SPECIFIC FIX FOR ROLE MODAL FLICKERING */
.modal[id^="roleModal"] {
    --bs-modal-zindex: 9999 !important;
}

.modal[id^="roleModal"] .modal-dialog {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    max-width: 500px !important;
    width: 90% !important;
}

/* 12. FORCE STABLE RENDERING */
.modal-open .container,
.modal-open .row,
.modal-open .col-12 {
    transform: none !important;
    transition: none !important;
}
