@layer elements{fieldset{border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;padding:var(--space-6)}legend{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wider);padding-inline:var(--space-2);text-transform:uppercase}label{color:var(--color-text);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-block-end:var(--space-2)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=reset]):not([type=button]),select,textarea{appearance:none;-webkit-appearance:none;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);display:block;font-family:var(--font-family-base);font-size:var(--font-size-base);padding-block:var(--space-3);padding-inline:var(--space-4);transition:border-color var(--duration-fast) var(--ease-default);width:100%}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--color-accent);outline:none}textarea{line-height:var(--line-height-base);min-height:140px;resize:vertical}::placeholder{color:var(--color-text-muted);opacity:1}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent);cursor:pointer;height:1rem;width:1rem}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#ef4444}.form-error{color:#ef4444;display:block;font-size:var(--font-size-sm);margin-block-start:var(--space-1)}}