/**
 * Forms: native fields and WPForms inside the theme's containers.
 *
 * Colors come from colors.css. GeneratePress prints the field and button
 * colors from the same variables (includes/setup/palette.php maps its
 * Customizer form settings to the palette), so buttons.css and this file only
 * add layout. WPForms runs with "Base styling only" and modern markup; its
 * base CSS sets no colors, so the theme's field and button rules apply.
 */

input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="url"],
input[type="tel"],
input[type="search"],
textarea,
select {
    border-color: var(--border-clr);
    border-radius: var(--radius);
    color: var(--font-clr);
}

::placeholder {
    color: var(--placeholder-clr);
    opacity: 1;
}

/* WPForms */
.grid-container .wpforms-container.wpforms-block {
    margin: 0;
}

.grid-container .wpforms-container {
    margin-top: 0;
}

.grid-container .wpforms-container:last-child {
    margin-bottom: 0;
}

.grid-container .wpforms-container .wpforms-field {
    padding-top: 0;
}

div.wpforms-container-full :is(input, textarea, select)::placeholder {
    color: var(--placeholder-clr);
    opacity: 1;
}

.wpforms-container .wpforms-field-label {
    color: var(--heading-clr);
    font-weight: 600;
}

.wpforms-container .wpforms-field-sublabel,
.wpforms-container .wpforms-field-description {
    color: var(--placeholder-clr);
}

.wpforms-container .wpforms-submit-container {
    margin-top: 20px;
}

div.wpforms-container-full .wpforms-form button[type=submit] {
    padding: var(--button-padding);
    border: 0;
}

/* Radio and checkbox choices: WPForms on "Base styling only" prints them as a
   plain list, so drop the bullets and the list indent. */
.wpforms-container .wpforms-field-radio ul,
.wpforms-container .wpforms-field-checkbox ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wpforms-container .wpforms-field-radio li,
.wpforms-container .wpforms-field-checkbox li {
    display: flex;
    align-items: center;
    gap: 0.5em;
    margin: 0 0 0.35em;
}

