/* Canonical form controls. Labels remain explicit in markup. */
.rs-field{display:grid;gap:var(--rs-space-2);min-width:0}.rs-label{color:var(--rs-text-primary);font-size:var(--rs-text-sm);font-weight:var(--rs-weight-semibold)}.rs-input,.rs-select,.rs-search{box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:.55rem .75rem;border:1px solid var(--rs-border-default);border-radius:var(--rs-radius-md);color:var(--rs-text-primary);background:var(--rs-surface-2);font:inherit}.rs-input::placeholder,.rs-search::placeholder{color:var(--rs-text-muted)}.rs-input:hover,.rs-select:hover,.rs-search:hover{border-color:var(--rs-border-strong)}.rs-input:focus-visible,.rs-select:focus-visible,.rs-search:focus-visible{outline:2px solid var(--rs-border-focus);outline-offset:1px;box-shadow:var(--rs-glow-focus)}.rs-input:disabled,.rs-select:disabled,.rs-search:disabled{cursor:not-allowed;opacity:.52}.rs-field__help{color:var(--rs-text-muted);font-size:var(--rs-text-xs)}.rs-field--error .rs-input,.rs-field--error .rs-select,.rs-field--error .rs-search{border-color:var(--rs-danger)}@media(pointer:coarse){.rs-input,.rs-select,.rs-search{min-height:var(--rs-touch-target)}}
