| .dw-field { |
| display: flex; |
| flex-direction: column; |
| gap: var(--space-2); |
| } |
|
|
| .dw-field__label { |
| font-size: var(--text-sm); |
| font-weight: 500; |
| color: var(--color-text-secondary); |
| } |
|
|
| .dw-field__control { |
| display: flex; |
| align-items: center; |
| gap: var(--space-2); |
| background: var(--color-surface); |
| border: 1px solid var(--color-border-strong); |
| border-radius: var(--radius-md); |
| padding: 0 var(--space-3); |
| outline: none; |
| transition: border-color var(--transition-fast); |
| } |
|
|
| .dw-field__control:focus-within { |
| border-color: var(--color-border-strong); |
| } |
|
|
| .dw-field__control:has(input:focus-visible) { |
| box-shadow: var(--focus-ring); |
| } |
|
|
| .dw-field__control--error { |
| border-color: var(--color-danger); |
| } |
| .dw-field__control--error:focus-within { |
| box-shadow: 0 0 0 3px var(--color-danger-soft); |
| } |
|
|
| .dw-field__control input { |
| flex: 1; |
| height: 38px; |
| background: transparent; |
| border: none; |
| outline: none; |
| color: var(--color-text-primary); |
| font-size: var(--text-sm); |
| } |
|
|
| .dw-field__control input:focus-visible { |
| box-shadow: none; |
| } |
|
|
| .dw-field__control input::placeholder { |
| color: var(--color-text-muted); |
| } |
|
|
| .dw-field__icon { |
| display: inline-flex; |
| color: var(--color-text-muted); |
| } |
|
|
| .dw-field__message { |
| font-size: var(--text-xs); |
| color: var(--color-text-muted); |
| } |
|
|
| .dw-field__message--error { |
| color: var(--color-danger); |
| } |
|
|
|
|