/**
 * Gravity Forms — Theme Overrides
 *
 * Past het Orbital theme van Gravity Forms 2.9+ aan
 * op het design system van het Tabweb thema.
 *
 * @package Tabweb
 * @since   1.0.0
 */

/* ==========================================================================
   Custom Properties Override
   ========================================================================== */
.gform_wrapper.gform-theme { --gf-color-primary: var(--clr-secondary); --gf-color-primary-rgb: 44, 95, 78; --gf-color-primary-contrast: var(--clr-contrast); --gf-color-primary-darker: var(--clr-dark); --gf-color-primary-lighter: var(--clr-primary); --gf-color-in-ctrl-primary: var(--clr-secondary); --gf-color-in-ctrl-primary-rgb: 44, 95, 78; --gf-color-in-ctrl-primary-contrast: var(--clr-contrast); --gf-color-in-ctrl-primary-darker: var(--clr-dark); --gf-color-in-ctrl-primary-lighter: var(--clr-primary); --gf-radius: var(--tw-radius-sm); --gf-ctrl-border-color: var(--clr-border); --gf-ctrl-label-color-primary: var(--clr-heading); --gf-ctrl-label-color-secondary: var(--clr-text); }

/* ==========================================================================
   Labels
   ========================================================================== */
.gform_wrapper .gfield_label, .gform_wrapper .gform-field-label { font-weight: 600; font-size: 1.4rem; color: var(--clr-heading); }
.gform_wrapper .gform_required_legend { display: none !important; }
.gform_wrapper .gfield_validation_message { display: none !important; }
.gform_wrapper .gfield_required_text { color: var(--clr-highlight); }

/* ==========================================================================
   Inputs & Textarea
   ========================================================================== */
.gform_wrapper input[type="text"], .gform_wrapper input[type="email"], .gform_wrapper input[type="tel"], .gform_wrapper input[type="url"], .gform_wrapper input[type="number"], .gform_wrapper input[type="date"], .gform_wrapper select, .gform_wrapper textarea { font-size: 1.6rem; color: var(--clr-text); border: 1px solid var(--clr-border); border-radius: var(--tw-radius-sm); padding: 1.2rem 1.6rem; background: var(--clr-white); transition: border-color var(--ts-25) var(--ts-function), box-shadow var(--ts-25) var(--ts-function); width: 100%; }
.gform_wrapper input[type="text"]:focus, .gform_wrapper input[type="email"]:focus, .gform_wrapper input[type="tel"]:focus, .gform_wrapper input[type="url"]:focus, .gform_wrapper input[type="number"]:focus, .gform_wrapper input[type="date"]:focus, .gform_wrapper select:focus, .gform_wrapper textarea:focus { outline: none; border-color: var(--clr-secondary); box-shadow: 0 0 0 3px var(--clr-primary-20); }
.gform_wrapper textarea { min-height: 14rem; resize: vertical; }

/* ==========================================================================
   Submit Button
   ========================================================================== */
.gform_wrapper .gform_footer input[type="submit"], .gform_wrapper .gform_footer button, .gform_wrapper .gform_button { display: inline-flex; align-items: center; justify-content: center; min-height: 5.2rem; padding: 0 3.2rem; border-radius: var(--tw-radius-sm); font-weight: 600; font-size: 1.6rem; text-decoration: none; border: 2px solid var(--clr-secondary); cursor: pointer; background: var(--clr-secondary); color: var(--clr-contrast); transition: background var(--ts-25) var(--ts-function), color var(--ts-25) var(--ts-function), border-color var(--ts-25) var(--ts-function), transform var(--ts-15) ease; line-height: 1.4; letter-spacing: -0.01em; width: 100%; }
.gform_wrapper .gform_footer input[type="submit"]:hover, .gform_wrapper .gform_footer button:hover, .gform_wrapper .gform_button:hover { opacity: 0.85; transform: translateY(-1px); }
.gform_wrapper .gform_footer input[type="submit"]:active, .gform_wrapper .gform_footer button:active, .gform_wrapper .gform_button:active { transform: translateY(0); }

/* ==========================================================================
   Validation
   ========================================================================== */
.gform_wrapper .gfield_error input, .gform_wrapper .gfield_error textarea, .gform_wrapper .gfield_error select { border-color: var(--clr-highlight); }
.gform_wrapper .gfield_error input:focus, .gform_wrapper .gfield_error textarea:focus, .gform_wrapper .gfield_error select:focus { box-shadow: 0 0 0 3px rgba(212, 100, 154, 0.2); }
.gform_wrapper .validation_message, .gform_wrapper .gfield_description.validation_message { color: var(--clr-highlight); font-size: 1.3rem; }
.gform_wrapper .gform_validation_errors { border-color: var(--clr-highlight); border-radius: var(--tw-radius-sm); }

/* ==========================================================================
   Confirmation
   ========================================================================== */
.gform_confirmation_message { background: var(--clr-light); border-radius: var(--tw-radius); padding: 2.4rem; font-size: 1.6rem; color: var(--clr-text); }

/* ==========================================================================
   Spacing & Layout
   ========================================================================== */
.gform_wrapper .gform_fields { gap: 1.6rem; }
.gform_wrapper .gfield { margin-bottom: 0; }
.gform_wrapper .gform_footer { margin-top: 0.8rem; padding: 0; }
