/**
 * Fluent Forms Styling
 *
 * @package ASP_Nevada
 */

/* ==========================================================================
   Submit Button Styling
   ========================================================================== */

/* Base button styling */
.fluentform .ff-btn-submit {
    background-color: var(--wp--preset--color--primary) !important;
    color: #ffffff !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: var(--wp--preset--font-size--small) !important;
    font-weight: 400 !important;
    padding: 10px 23px !important;
    border: none !important;
    border-radius: 4px !important;
    min-width: 150px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s ease, opacity 0.2s ease;
    position: relative;
    overflow: hidden;
}

/* Hover state */
.fluentform .ff-btn-submit:hover {
    background-color: #333333 !important;
}

/* ==========================================================================
   Loading State
   ========================================================================== */

/* Hide the default progress bar animation */
.fluentform .ff-btn.ff-working:after {
    display: none !important;
    animation: none !important;
}

/* Disabled/Loading state styling */
.fluentform .ff-btn-submit.ff-working,
.fluentform .ff-btn-submit.disabled,
.fluentform .ff-btn-submit:disabled,
.ff_submitting .ff-btn-submit {
    background-color: #999999 !important;
    color: #ffffff !important;
    cursor: not-allowed !important;
    pointer-events: none;
}

/* Loading spinner for submit button */
.fluentform .ff-btn-submit.ff-working::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 8px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: ff-spinner 0.7s linear infinite;
    vertical-align: middle;
}

/* Spinner animation */
@keyframes ff-spinner {
    to {
        transform: rotate(360deg);
    }
}

/* ==========================================================================
   Success Message Styling
   ========================================================================== */

/* Success message container */
.ff-message-success {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border: 2px solid #86efac;
    border-radius: 8px;
    padding: 32px 24px;
    margin: 40px 0;
    box-shadow: 0 4px 12px rgba(34, 197, 94, 0.1);
    position: relative;
    text-align: center;
    animation: fadeInSlide 0.4s ease-out;
}

/* Remove default paragraph margins */
.ff-message-success p {
    margin: 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.6;
    color: #166534;
    font-weight: 500;
}

/* Add checkmark icon before message using CSS */
.ff-message-success::before {
    content: '✓';
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 48px;
    font-size: 28px;
    font-weight: bold;
    color: #ffffff;
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
    border-radius: 50%;
    margin: 0 auto 16px;
    box-shadow: 0 4px 8px rgba(34, 197, 94, 0.3);
}

/* Success message fade-in and slide animation */
@keyframes fadeInSlide {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive adjustments for mobile */
@media (max-width: 767px) {
    .ff-message-success {
        padding: 24px 20px;
        margin: 30px 0;
    }

    .ff-message-success p {
        font-size: 16px;
    }

    .ff-message-success::before {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 24px;
    }
}