/* Custom styles for utility UI bits that don't fit into the minified bundle */

#page-loader {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(var(--ins-body-bg-rgb, 241, 242, 247), 0.9);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1100;
    opacity: 0;
    transition: opacity 0.2s ease;
    pointer-events: none;
}

#page-loader.is-visible {
    display: flex;
    opacity: 1;
    pointer-events: all;
}

#page-loader .loader-message {
    color: var(--ins-body-color);
}

@media (prefers-reduced-motion: reduce) {
    #page-loader {
        transition: none;
    }
}

/* SweetAlert2 global styling */
.swal2-popup {
    border-radius: 1.25rem !important;
    padding: 2rem 2.25rem !important;
    box-shadow: 0 2rem 4rem rgba(15, 23, 42, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: radial-gradient(circle at top, rgba(13, 110, 253, 0.95), #0f172a);
    color: #f8fafc;
}

html[data-bs-theme="light"] .swal2-popup {
    background: radial-gradient(circle at top, #eff4ff, #e0edff);
    color: #0f172a;
}

.swal2-title {
    font-weight: 700;
    margin-bottom: 0.5rem !important;
}

.swal2-html-container {
    font-size: 0.95rem !important;
    color: inherit !important;
}

.swal2-actions {
    margin-top: 1.5rem !important;
}

.swal2-styled.swal2-confirm {
    border-radius: 9999px !important;
    padding: 0.65rem 1.5rem !important;
    font-weight: 600;
}

/* Logo theming helpers for static pages */
.logo-dark,
.logo-light {
    display: inline-block;
}

html[data-bs-theme="light"] .logo-light {
    display: none;
}

html[data-bs-theme="dark"] .logo-dark {
    display: none;
}
