.etlam-form-wrap { width: 100%; }
.etlam-form { box-sizing: border-box; }
.etlam-form *, .etlam-form *::before, .etlam-form *::after { box-sizing: border-box; }

.etlam-field-col { flex: 0 0 auto; }
.etlam-field { position: relative; }
.etlam-required { color: #d63638; }

.etlam-field-inline-wrap { display: flex; align-items: center; gap: 8px; }
.etlam-field-inline-wrap .etlam-field-label { margin-bottom: 0; }

.etlam-field-desc { font-size: 12px; color: #777; margin-top: 4px; }
.etlam-desc-above { margin-bottom: 6px; margin-top: 0; }

.etlam-field-tooltip {
	display: inline-flex; align-items: center; justify-content: center;
	width: 16px; height: 16px; border-radius: 50%; background: #ccc; color: #fff;
	font-size: 11px; margin-left: 6px; cursor: help;
}

.etlam-stepper { display: flex; align-items: stretch; }
.etlam-stepper-btn { border: 1px solid #ccc; background: #f5f5f5; cursor: pointer; padding: 0 12px; }
.etlam-stepper-input { text-align: center; }

.etlam-phone-wrap { display: flex; gap: 6px; }
.etlam-country-code { flex: 0 0 auto; }

.etlam-choice-group.etlam-layout-horizontal { display: flex; flex-wrap: wrap; gap: 12px; }
.etlam-choice-group.etlam-layout-vertical { display: flex; flex-direction: column; gap: 6px; }
.etlam-choice-option { display: flex; align-items: center; gap: 6px; font-weight: normal; cursor: pointer; }

.etlam-image-select { display: flex; flex-wrap: wrap; gap: 10px; }
.etlam-image-option { cursor: pointer; text-align: center; }
.etlam-image-option img { width: 90px; height: 90px; object-fit: cover; border-radius: 4px; border: 2px solid transparent; display: block; }
.etlam-image-option input:checked + img { border-color: #2271b1; }

.etlam-field-error { display: none; }
.etlam-field.etlam-has-error .etlam-field-error { display: block; }
.etlam-field.etlam-has-error .etlam-input { outline: 1px solid #d63638; }

.etlam-form-message { padding: 10px 14px; border-radius: 4px; margin-bottom: 16px; }
.etlam-form-message.etlam-success { background: #edfaef; color: #1e6b2f; border: 1px solid #b6e6bd; }
.etlam-form-message.etlam-error { background: #fbeaea; color: #8a1f1f; border: 1px solid #f1c0c0; }

.etlam-submit-btn[disabled] { opacity: .6; cursor: not-allowed; }
