.form-group { display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px; }
.form-label { font-size: 14px; font-weight: 600; color: var(--color-text); }
.form-control { width: 100%; padding: 12px 16px; font-family: 'Inter', sans-serif; font-size: 15px; color: var(--color-text); background-color: var(--color-surface); border: 1px solid var(--color-border); border-radius: 4px; outline: none; transition: border-color 0.2s, box-shadow 0.2s; }
.form-control:focus { border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(27, 94, 59, 0.1); }
textarea.form-control { resize: vertical; min-height: 120px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 24px; }
.form-row .form-group { margin-bottom: 0; }
.form-error { color: var(--color-danger); font-size: 13px; margin-top: 4px; }
.form-success { color: var(--color-success); font-size: 13px; margin-top: 4px; }
.form-message { padding: 16px; border-radius: 4px; font-size: 14px; margin-bottom: 24px; }
.checkbox-group, .radio-group { display: flex; align-items: center; gap: 8px; cursor: pointer; }
.checkbox-group input, .radio-group input { width: 16px; height: 16px; accent-color: var(--color-primary); cursor: pointer; }
