/* ***************************************************************
   T.E.R.I. Assistant v5 — Avada-Proof Tactical UI
   This stylesheet FORCE-OVERRIDES Avada/Fusion Builder defaults.
**************************************************************** */

/* Form container */
form.teri-form {
    background: #191b1a !important;
    color: #e3e7e2 !important;
    padding: 24px !important;
    border-radius: 10px !important;
    border: 1px solid #323632 !important;
    max-width: 650px !important;
    margin: 24px auto !important;
    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.65) !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    box-sizing: border-box !important;
}

/* Heading */
form.teri-form h3 {
    margin: 0 0 18px !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #d3f8c7 !important;
    border-bottom: 2px solid #2d332e !important;
    padding-bottom: 6px !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

/* Labels */
form.teri-form label {
    display: block !important;
    font-weight: 600 !important;
    margin: 14px 0 6px !important;
    color: #c6e2bf !important;
    font-size: 14px !important;
}

/* Inputs, selects, textareas */
form.teri-form input[type="text"],
form.teri-form input[type="email"],
form.teri-form input[type="number"],
form.teri-form select,
form.teri-form textarea {
    width: 100% !important;
    padding: 10px 12px !important;
    border-radius: 6px !important;
    border: 1px solid #3c403b !important;
    background: #252826 !important;
    color: #f0f5ef !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
    line-height: 1.4 !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

/* Placeholder */
form.teri-form ::placeholder {
    color: #818782 !important;
}

/* Focus state */
form.teri-form input:focus,
form.teri-form select:focus,
form.teri-form textarea:focus {
    outline: none !important;
    border-color: #72ff98 !important;
    box-shadow: 0 0 0 1px rgba(114, 255, 152, 0.35) !important;
    background: #262b27 !important;
}

/* Textarea */
form.teri-form textarea {
    min-height: 90px !important;
}

/* Submit button */
form.teri-form button {
    margin-top: 20px !important;
    width: 100% !important;
    padding: 14px !important;
    background: #4caf50 !important;
    border: none !important;
    border-radius: 7px !important;
    color: #101610 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.06s ease !important;
}

form.teri-form button:hover {
    background: #68d36f !important;
    box-shadow: 0 0 12px rgba(104, 211, 111, 0.45) !important;
}

form.teri-form button:active {
    transform: translateY(1px) !important;
    background: #3a8c3f !important;
}

/* Message box */
#teriSignupResult,
#teriArrowOrderResult {
    margin-top: 16px !important;
    padding: 10px 14px !important;
    border-radius: 5px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}

/* Success/error styles */
.teri-success {
    background: #143d1a !important;
    color: #72ff98 !important;
    border: 1px solid #2e6635 !important;
}
.teri-error {
    background: #3d1414 !important;
    color: #ffb3b3 !important;
    border: 1px solid #7e2e2e !important;
}

/* Loading overlay */
form.teri-form.loading {
    opacity: 0.55 !important;
    pointer-events: none !important;
}
form.teri-form.loading::after {
    content: "Processing…" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(9, 12, 9, 0.7) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #d3f8c7 !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

/* Responsive */
@media (max-width: 600px) {
    form.teri-form {
        margin: 16px 12px !important;
        padding: 18px !important;
        /* League dropdown capacity styling */
#teri_league_select option.teri-league-full {
    color: #999;
}

#teri_league_select option[disabled] {
    color: #999;
    font-style: italic;
}

    }
}