////
///
/// Form Validation Classes
/// ===========================================================================
///
/// Foundation Abide-style form validation utility classes.
///
/// @group Classes.BodyMolecules.Forms
/// @author Scape Agency
/// @link https://scape.style
/// @since 0.1.0 initial release
/// @access public
///
////

// ============================================================================
// Use
// ============================================================================

@use "../../../mixins/body_molecules/forms/validation" as *;

// ============================================================================
// Utility Classes
// ============================================================================

.form-error {
    @include validation-error;
}

.form-error.is-visible {
    @include validation-error--visible;
}

.form-success {
    @include validation-success;
}

.form-field {
    @include form-field--validated;
}

.form-field--icons {
    @include form-field--with-icon;
}

.form-field--native {
    @include form-field--native-validation;
}

.form--validated {
    @include form--validated;
}

.label--required {
    @include label--required;
}

.label--optional {
    @include label--optional;
}

// Input state classes
.input--invalid,
input.is-invalid,
textarea.is-invalid,
select.is-invalid {
    @include validation-input--invalid;
}

.input--valid,
input.is-valid,
textarea.is-valid,
select.is-valid {
    @include validation-input--valid;
}

.input--warning,
input.is-warning,
textarea.is-warning,
select.is-warning {
    @include validation-input--warning;
}
