/*** Spinner Start ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
    background: linear-gradient(135deg, rgba(255,255,255,0.95) 0%, rgba(245,247,250,0.95) 100%) !important;
}

#spinner.show {
    opacity: 1;
    visibility: visible;
    transition: opacity .5s ease-out, visibility 0s linear 0s;
}

.spinner-border {
    width: 3rem; height: 3rem;
} 
/* Custom SNC spinner to avoid underline issues */
.snc-spinner {
    width: 3rem !important;
    height: 3rem !important;
    border: 4px solid rgba(46, 125, 50, 0.2) !important;
    border-top: 4px solid #2E7D32 !important;
    border-radius: 50% !important;
    animation: snc-spin 1s linear infinite !important;
    box-shadow: 0 4px 15px rgba(46, 125, 50, 0.15) !important;
    text-decoration: none !important;
    display: block !important;
    position: relative !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: visible !important;
}

/* Custom spin animation */
@keyframes snc-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Completely hide the screen reader text to eliminate any visual artifacts */
#spinner .sr-only {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    white-space: nowrap !important;
    border: 0 !important;
    display: block !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    color: transparent !important;
    text-decoration: none !important;
    visibility: hidden !important;
    left: -9999px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* Additional safeguards against any potential underlines */
#spinner *,
#spinner *:before,
#spinner *:after {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-color: none !important;
    text-underline-position: none !important;
    text-decoration-skip-ink: none !important;
    -webkit-text-decoration: none !important;
    -webkit-text-decoration-line: none !important;
    -moz-text-decoration: none !important;
    -moz-text-decoration-line: none !important;
    border-bottom: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
/*** Spinner End ***/