/* VIN scan: webcam window + homepage strip status (shared) */
.ft-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;padding:0!important;margin:-1px!important}
.ft-cam{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.82);backdrop-filter:blur(4px)}
.ft-cam-card{width:min(720px,100%);padding:16px;border:1px solid #2a3038;border-radius:18px;background:#121417;box-shadow:0 30px 80px rgba(0,0,0,.7)}
.ft-cam-view{position:relative;overflow:hidden;border-radius:12px;background:#000;aspect-ratio:16/9}
.ft-cam-view video{width:100%;height:100%;object-fit:cover;display:block}
.ft-cam-aim{position:absolute;left:10%;right:10%;top:32%;bottom:32%;border:2px solid #0499f7;border-radius:10px;box-shadow:0 0 0 2000px rgba(0,0,0,.35),0 0 18px rgba(4,153,247,.6)}
.ft-cam-aim::after{content:"";position:absolute;left:4%;right:4%;top:50%;height:2px;background:#5cc0ff;box-shadow:0 0 10px #0499f7;animation:ftCamLine 1.6s ease-in-out infinite alternate}
@keyframes ftCamLine{from{transform:translateY(-28px)}to{transform:translateY(28px)}}
.ft-cam-msg{margin:12px 2px;color:#c9ced4;font-size:14px}
.ft-cam-msg.err{color:#ff8a80}
.ft-cam-actions{display:flex;gap:10px;justify-content:flex-end}
.ft-cam-actions button{height:44px;padding:0 20px;border-radius:10px;font:700 15px/1 Inter,Arial,sans-serif;cursor:pointer}
.ft-cam-snap{border:0;background:#0566d1;color:#fff}
.ft-cam-snap:disabled{opacity:.4;cursor:default}
.ft-cam-close{border:1px solid #3d434a;background:transparent;color:#f5f6f7}
@media (prefers-reduced-motion:reduce){.ft-cam-aim::after{animation:none}}
.ft-cam-up{border:1px solid #3d434a;background:transparent;color:#5cc0ff;margin-right:auto}
.ft-strip-scan{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:12px;font-weight:800;font-size:16px;cursor:pointer;transition:background .2s,border-color .2s}
.ft-strip-scan:focus-visible{outline:2px solid #5cc0ff;outline-offset:3px}
.ft-strip-status{position:relative;grid-column:1/-1;margin:0;color:#5cc0ff;font-size:14px}
.ft-strip-status:empty{display:none}
.ft-strip-status.ft-scan-err{color:#ff8a80}
@media (max-width:900px){.ft-strip-scan{flex:1;padding:0 12px;font-size:15px}}
