/* ==========================================================================
   Dritella — Gravity Forms
   Works with the "Gravity Forms 2.5 Theme" (recommended: Forms → Settings →
   Default Form Theme) and maps Orbital's variables to theme tokens if Orbital
   is used instead. Loaded only when Gravity Forms is active.
   ========================================================================== */

/* Orbital: map variables, let the rules below handle the rest. */
.gform-theme--orbital {
	--gf-color-primary: var(--wp--preset--color--honey);
	--gf-color-primary-rgb: 148, 98, 31;
	--gf-color-primary-contrast: #fff;
	--gf-color-primary-darker: var(--wp--custom--color--honey-deep);
	--gf-radius: var(--wp--custom--radius--small);
	--gf-font-family-base: var(--wp--preset--font-family--body);
	--gf-ctrl-border-color: var(--wp--preset--color--line);
}

.gform_wrapper { font-family: var(--wp--preset--font-family--body); }
.gform_wrapper .gform_fields { row-gap: 0.9rem !important; }
.gform_wrapper .gfield { margin: 0; }

/* Labels */
.gform_wrapper .gfield_label,
.gform_wrapper .gform-field-label {
	color: var(--dt-ink);
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 600 !important;
	margin-bottom: 0.35rem !important;
}
.gform_wrapper .gfield_required { color: var(--dt-rose); font-size: inherit; font-weight: 400; margin-left: 0.15em; }
.gform_wrapper .gfield_required .gfield_required_text { font-size: 0.8em; font-style: italic; }
.gform_wrapper .gfield_description,
.gform_wrapper .gform_fileupload_rules,
.gform_wrapper .ginput_counter {
	color: var(--dt-soft);
	font-size: var(--wp--preset--font-size--x-small) !important;
	line-height: 1.5;
	padding-top: 0.35rem !important;
}

/* Inputs (theme base styles use :where() — GF's own rules would win otherwise) */
.gform_wrapper input:is([type="text"], [type="email"], [type="tel"], [type="number"], [type="url"]),
.gform_wrapper select,
.gform_wrapper textarea {
	background: var(--dt-card) !important;
	border: 1px solid var(--dt-line) !important;
	border-radius: var(--dt-r-s) !important;
	box-shadow: none !important;
	color: var(--dt-ink) !important;
	font: inherit !important;
	font-size: var(--wp--preset--font-size--small) !important;
	min-height: 46px;
	padding: 0.65rem 0.85rem !important;
}
.gform_wrapper textarea { min-height: 160px; resize: vertical; }
.gform_wrapper textarea.large { height: 180px; }
.gform_wrapper :is(input, select, textarea):focus {
	border-color: var(--dt-honey) !important;
	box-shadow: 0 0 0 3px rgba(148, 98, 31, 0.15) !important;
	outline: none !important;
}

/* Multi-file upload */
.gform_wrapper .gform_drop_area {
	align-items: center;
	background: var(--dt-paper) !important;
	border: 1.5px dashed var(--dt-honey-light) !important;
	border-radius: var(--dt-r-m) !important;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1.5rem 1rem !important;
	text-align: center;
	transition: border-color var(--dt-ease), background var(--dt-ease);
}
.gform_wrapper .gform_drop_area:hover,
.gform_wrapper .gform_drop_area.hover { background: var(--dt-card) !important; border-color: var(--dt-honey) !important; }
.gform_wrapper .gform_drop_instructions { color: var(--dt-ink); font-size: var(--wp--preset--font-size--small); font-weight: 600; margin: 0 !important; }
.gform_wrapper .gform_drop_area::before { display: none !important; } /* Orbital cloud icon */
.gform_wrapper .gform_preview,
.gform_wrapper .ginput_preview { font-size: var(--wp--preset--font-size--x-small); }

/* Buttons: submit, select files, next/previous */
.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer { margin-top: 1.25rem !important; padding: 0 !important; }
.gform_wrapper :is(.gform_button, .gform_next_button, .gform_previous_button, .gform_button_select_files, input[type="submit"], button[type="submit"]) {
	-webkit-appearance: none;
	appearance: none;
	background: var(--dt-ink) !important;
	border: 1.5px solid var(--dt-ink) !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	color: var(--dt-paper) !important;
	cursor: pointer;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	min-height: 0 !important;
	padding: 0.85em 1.8em !important;
	transition: background var(--dt-ease), border-color var(--dt-ease);
	width: auto !important;
}
.gform_wrapper :is(.gform_button, .gform_next_button, input[type="submit"], button[type="submit"]):hover {
	background: var(--dt-honey) !important;
	border-color: var(--dt-honey) !important;
}
.gform_wrapper .gform_drop_area .gform_button_select_files,
.gform_wrapper .gform_page_footer .gform_previous_button {
	background: transparent !important;
	border-color: var(--dt-honey) !important;
	color: var(--dt-honey) !important;
	font-size: var(--wp--preset--font-size--x-small) !important;
	padding: 0.55em 1.3em !important;
}
.gform_wrapper .gform_drop_area .gform_button_select_files:hover,
.gform_wrapper .gform_page_footer .gform_previous_button:hover { background: var(--dt-honey) !important; color: #fff !important; }
.gform_wrapper :is(button, input[type="submit"]):focus-visible { box-shadow: var(--dt-focus) !important; outline: none !important; }

/* Consent / checkboxes / radios */
.gform_wrapper .ginput_container_consent,
.gform_wrapper .gchoice { align-items: flex-start; display: flex; gap: 0.6rem; }
.gform_wrapper input:is([type="checkbox"], [type="radio"]) {
	accent-color: var(--dt-honey);
	flex: 0 0 auto;
	height: 1.1rem;
	margin: 0.25rem 0 0 !important;
	width: 1.1rem;
}
.gform_wrapper .gfield_consent_label,
.gform_wrapper .gchoice label { font-size: var(--wp--preset--font-size--small); font-weight: 400 !important; margin: 0 !important; }
.gform_wrapper .gfield--type-consent .gfield_label { display: none; }
.gform_wrapper .gfield--type-consent .gfield_required { display: inline; }

/* Validation + confirmation */
.gform_wrapper .gform_validation_errors {
	background: var(--dt-card) !important;
	border: 1px solid var(--dt-line) !important;
	border-left: 4px solid var(--dt-rose) !important;
	border-radius: var(--dt-r-s) !important;
	box-shadow: none !important;
	margin-bottom: 1.25rem !important;
	padding: 0.85rem 1rem !important;
}
.gform_wrapper .gform_validation_errors > h2 { color: var(--dt-ink) !important; font-family: var(--wp--preset--font-family--body); font-size: var(--wp--preset--font-size--small) !important; font-weight: 600; margin: 0 !important; }
.gform_wrapper .gform_validation_errors > h2 .gform-icon { display: none; }
.gform_wrapper .gfield_error :is(input, select, textarea) { border-color: var(--dt-rose) !important; }
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
	background: none !important;
	border: 0 !important;
	color: var(--dt-rose) !important;
	font-size: var(--wp--preset--font-size--x-small) !important;
	margin-top: 0.35rem !important;
	padding: 0 !important;
}
.gform_confirmation_message {
	background: var(--dt-blush);
	border-radius: var(--dt-r-m);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--large);
	padding: var(--wp--preset--spacing--40);
}
.gform_wrapper .gform_ajax_spinner { margin-left: 0.75rem; vertical-align: middle; }

/* "* tähistab kohustuslikku välja" legend — the asterisks speak for themselves. */
.gform_wrapper .gform_required_legend { display: none !important; }
