/* Port Arc `input`. Fokus hanya mengubah warna border; tinggi tidak pernah berubah. */
.arc-input { display: grid; min-width: 0; }
.arc-input__label { margin-bottom: var(--space-2); color: var(--foreground); font-size: var(--text-sm); font-weight: 500; line-height: var(--leading-body); }
.arc-input__control { width: 100%; min-height: var(--control-height-md); padding: 0 var(--space-3); border: 1px solid var(--border-strong); border-radius: var(--radius-control); background: var(--surface); color: var(--foreground); font: inherit; font-size: var(--text-base); line-height: var(--leading-body); letter-spacing: var(--tracking-body); outline: none; transition: border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard); }
.arc-input__control::placeholder { color: var(--text-muted); }
@media (hover: hover) and (pointer: fine) { .arc-input__control:hover:not(:disabled, [aria-invalid="true"]) { border-color: var(--foreground); } }
.arc-input__control:focus-visible { border-color: var(--foreground); outline: 2px solid var(--foreground); outline-offset: 1px; }
.arc-input__control[aria-invalid="true"] { border-color: var(--danger); }
.arc-input__control:disabled { cursor: not-allowed; opacity: .5; background: var(--surface-muted); }
.arc-input__description, .arc-input__error { display: block; padding-top: var(--space-2); font-size: var(--text-xs); line-height: var(--leading-body); }
.arc-input__description { color: var(--text-muted); }
.arc-input__error { color: var(--danger); animation: arc-message-in var(--duration-standard) var(--ease-enter); }
@keyframes arc-message-in { from { opacity: 0; transform: translateY(.35em); } }
@media (prefers-reduced-motion: reduce) { .arc-input__control { transition: none; } .arc-input__error { animation: none; } }
