.terminal-fingerprint-status{--fingerprint-color:#687b9e;display:flex;align-items:center;gap:.8rem;width:min(100%,32rem);min-height:4.1rem;margin:.7rem auto .8rem;padding:.55rem 1rem;border:1px solid #dfe3ee;border-radius:1rem;background:rgba(255,255,255,.7);box-shadow:0 8px 25px rgba(39,48,72,.05);color:#28354c;transition:background .25s,border-color .25s}
.terminal-fingerprint-visual{position:relative;display:grid;place-items:center;flex:0 0 2.8rem;width:2.8rem;height:2.8rem;border-radius:50%;background:#edf2fa;color:var(--fingerprint-color)}
.terminal-fingerprint-visual svg{position:relative;z-index:1;width:2rem;height:2rem;overflow:visible}
.terminal-fingerprint-visual::after{content:"";position:absolute;inset:-.17rem;border:1px solid currentColor;border-radius:50%;opacity:0}
.fingerprint-base{opacity:.3}
.fingerprint-trace path{opacity:0;stroke-dasharray:105;stroke-dashoffset:105}
.terminal-fingerprint-copy{display:flex;flex-direction:column;gap:.15rem;min-width:0;text-align:left}
.terminal-fingerprint-copy strong{font-size:.86rem;font-weight:650;line-height:1.25}
.terminal-fingerprint-copy small{font-size:.73rem;line-height:1.2;color:#78849a}
.terminal-fingerprint-status[data-scan-phase="running"]{--fingerprint-color:#227fac;border-color:#b9dce9;background:#f4fbff}
.terminal-fingerprint-status[data-scan-phase="running"] .terminal-fingerprint-visual{background:#e4f4fb}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path{opacity:1;animation:fingerprint-read 2.8s ease-in-out infinite}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(2){animation-delay:.12s}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(3){animation-delay:.24s}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(4){animation-delay:.36s}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(5){animation-delay:.48s}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(6){animation-delay:.6s}
.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path:nth-child(7){animation-delay:.72s}
.terminal-fingerprint-status[data-scan-phase="running"] .terminal-fingerprint-visual::after{animation:fingerprint-halo 2.8s ease-out infinite}
.terminal-fingerprint-status[data-scan-phase="matched"]{--fingerprint-color:#248b69;border-color:#b8decf;background:#f2fbf6}
.terminal-fingerprint-status[data-scan-phase="matched"] .terminal-fingerprint-visual{background:#def5e9}
.terminal-fingerprint-status[data-scan-phase="matched"] .fingerprint-trace path{opacity:1;stroke-dashoffset:0}
.terminal-fingerprint-status[data-scan-phase="retry"]{--fingerprint-color:#ae7922;border-color:#ead7af;background:#fffaf1}
.terminal-fingerprint-status[data-scan-phase="retry"] .terminal-fingerprint-visual{background:#fff0cf}
.terminal-fingerprint-status[data-scan-phase="offline"]{--fingerprint-color:#a64747;border-color:#ebcaca;background:#fff7f6}
.terminal-fingerprint-status[data-scan-phase="offline"] .terminal-fingerprint-visual{background:#fbe6e4}
@keyframes fingerprint-read{0%{stroke-dashoffset:105;opacity:.25}35%,65%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-105;opacity:.25}}
@keyframes fingerprint-halo{0%{transform:scale(.82);opacity:.45}75%,100%{transform:scale(1.4);opacity:0}}
@media (prefers-reduced-motion:reduce){.terminal-fingerprint-status,.fingerprint-trace path{transition:none!important;animation:none!important}.terminal-fingerprint-status[data-scan-phase="running"] .fingerprint-trace path{stroke-dashoffset:0}.terminal-fingerprint-status[data-scan-phase="running"] .terminal-fingerprint-visual::after{animation:none}}
.terminal-fingerprint-dialog{width:min(92vw,30rem);border:1px solid #d9dbe4;border-radius:1rem;padding:1.5rem;background:#fff;color:#202635;box-shadow:0 1rem 3rem rgba(22,28,45,.2)}
.terminal-fingerprint-dialog::backdrop{background:rgba(19,25,39,.58)}
.terminal-fingerprint-dialog h2{font-size:1.3rem;margin:0 0 1rem}
.terminal-fingerprint-dialog p{margin:.65rem 0}
.terminal-fingerprint-dialog [data-fingerprint-person]{font-weight:700}
.terminal-fingerprint-choices{display:grid;gap:.55rem;margin:1rem 0 0;padding:0;border:0}
.terminal-fingerprint-choices legend{margin-bottom:.55rem;font-size:.85rem;font-weight:650;color:#59657b}
.terminal-fingerprint-choices label{display:flex;align-items:flex-start;gap:.7rem;padding:.75rem;border:1px solid #d8dce6;border-radius:.7rem;cursor:pointer;background:#fff}
.terminal-fingerprint-choices label:has(input:checked){border-color:#4291b4;background:#eef8fc;box-shadow:0 0 0 2px rgba(66,145,180,.1)}
.terminal-fingerprint-choices input{flex:0 0 auto;margin-top:.2rem;accent-color:#247fa7}
.terminal-fingerprint-choices label span{display:flex;flex-direction:column;gap:.2rem}
.terminal-fingerprint-choices label strong{font-size:.9rem}
.terminal-fingerprint-choices label small{font-size:.78rem;color:#65718a;line-height:1.3}
.terminal-fingerprint-error{color:#a32828}
.terminal-fingerprint-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.4rem}
.terminal-fingerprint-actions button{border:1px solid #c6cad5;border-radius:.55rem;background:#f5f6f9;color:#202635;padding:.55rem .8rem}
.terminal-fingerprint-actions [data-fingerprint-confirm]{background:#263652;color:white;border-color:#263652}
.terminal-fingerprint-actions button:disabled{opacity:.6}
