.ui-textfield-field{gap:var(--spacing-xs);flex-direction:column;width:100%;display:flex}.ui-textfield__label{font-size:var(--font-size-xs);font-family:var(--font-main);color:var(--text-muted);font-weight:600;display:block}.ui-textfield__error{font-size:var(--font-size-xs);font-family:var(--font-main);color:var(--error);margin:0}.ui-textfield__hint{font-size:var(--font-size-xs);font-family:var(--font-main);color:var(--text-muted);margin:0}.ui-textfield{box-sizing:border-box;border-radius:var(--radius-sm);width:100%;font-family:var(--font-main);color:var(--text-main);touch-action:manipulation;transition:border-color var(--dur-fast) var(--steps-snap), background-color var(--dur-fast) var(--steps-snap), box-shadow var(--dur-fast) var(--steps-snap), color var(--dur-fast) var(--steps-snap);border:1px solid #0000}.ui-textfield::placeholder{color:var(--text-muted);opacity:.7}.ui-textfield:focus{border-color:var(--accent)}.ui-textfield:focus-visible{border-color:var(--accent);box-shadow:2px 2px 0 var(--ui-ink);outline:none}.ui-textfield:disabled{opacity:.5;cursor:not-allowed}.ui-textfield[aria-invalid=true]{border-color:var(--error)}.ui-textfield[aria-invalid=true]:focus-visible{border-color:var(--error);box-shadow:2px 2px 0 var(--error);outline:none}.ui-textfield--glass{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--glass-shadow);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md)}.ui-textfield--outline{height:var(--control-lg);padding:0 var(--spacing-ms);border-color:var(--glass-border-strong);font-size:var(--font-size-base);background:0 0}.ui-textfield--search{background:var(--subtle-tint);border-color:var(--glass-border);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md)}@media (hover:hover){.ui-textfield--glass:hover:not(:disabled):not(:focus-visible),.ui-textfield--search:hover:not(:disabled):not(:focus-visible){border-color:var(--glass-border-strong)}.ui-textfield--outline:hover:not(:disabled):not(:focus-visible){border-color:var(--text-muted)}}@media (prefers-reduced-motion:reduce){.ui-textfield{transition:none}}
