.passcode{display:flex;align-items:center;gap:var(--space-2)}.passcode__cell{width:48px;height:var(--control-h-lg);padding:0;border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);color:var(--text-primary);font-size:var(--type-title-4);font-weight:600;font-variant-numeric:tabular-nums;text-align:center;caret-color:var(--focus-ring);appearance:textfield;transition:border-color var(--duration-fast, .15s) var(--ease-out, ease-out),box-shadow var(--duration-fast, .15s) var(--ease-out, ease-out)}.passcode__cell:hover{border-color:var(--control-border-hover)}.passcode__cell:focus{border-color:var(--focus-ring);outline:none;box-shadow:var(--control-ring)}.passcode__cell.is-filled{border-color:var(--border-strong);background:var(--surface-soft)}.passcode__dash{flex-shrink:0;width:10px;height:2px;border-radius:var(--radius-pill);background:var(--border-strong)}.passcode.is-error .passcode__cell{border-color:var(--status-danger-line);animation:passcode-shake .3s var(--ease-out, ease-out)}.passcode.is-error .passcode__cell:focus{border-color:var(--focus-ring)}@keyframes passcode-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media(max-width:479.98px){.passcode{gap:6px}.passcode__cell{width:40px;height:var(--control-h)}}@media(prefers-reduced-motion:reduce){.passcode.is-error .passcode__cell{animation:none}}
