/* INPUTS */ .input-group { margin-bottom: var(--space-5); position: relative; } .label { display: block; margin-bottom: var(--space-2); font-family: var(--font-mono); font-size: var(--text-xs); text-transform: uppercase; color: var(--color-void-500); letter-spacing: 0.1em; font-weight: 700; } .input { width: 100%; height: 48px; padding: 0 var(--space-4); background: var(--color-void-50); border: 1px solid var(--color-void-200); border-radius: var(--radius-md); color: var(--color-void-900); font-family: var(--font-body); font-size: var(--text-sm); transition: all 0.2s; appearance: none; } .input:hover { border-color: var(--color-void-400); } .input:focus { outline: none; border-color: var(--color-cyan-500); background: var(--color-void-100); box-shadow: 0 0 0 4px rgba(0, 219, 245, 0.1); } .input::placeholder { color: var(--color-void-400); opacity: 1; } .input-error { border-color: var(--color-error); } .input-code { font-family: var(--font-mono); background: #000; border-color: var(--color-void-300); color: var(--color-lime-500); } /* FLOATING LABEL INPUTS */ .input-floating { position: relative; margin-bottom: var(--space-5); } .input-floating .input { height: 56px; padding-top: 24px; padding-bottom: 8px; } .input-floating label { position: absolute; top: 18px; left: 16px; font-size: var(--text-sm); color: var(--color-void-500); transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); pointer-events: none; font-family: var(--font-mono); text-transform: uppercase; letter-spacing: 0.05em; line-height: 1; } .input-floating .input:focus~label, .input-floating .input:not(:placeholder-shown)~label { top: 10px; font-size: 10px; color: var(--color-cyan-500); font-weight: 700; }