/* Form Loading Overlay and Spinner */
.form-loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:rgba(0, 14, 47, 0.43);
    z-index: 1000;
    display: none;
    border-radius: 4px;
}

.form-loading-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    display: none;
}

.form-loading-spinner::after {
    content: '';
    width: 32px;
    height: 32px;
    border: 3px solid rgb(118, 115, 115);;
    border-top: 3px solidrgb(55, 57, 58);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Alternative text-based loading indicator */
.form-loading-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    display: none;
    background:rgb(118, 115, 115);
    color: white;
    padding: 10px 20px;
    border-radius: 4px;
    font-weight: bold;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Disabled submit button styling */
form [type="submit"]:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

/* Form container positioning for overlay */
form {
    position: relative;
}
