.tracking-scan-actions{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:10px;max-width:500px;margin:0 0 10px}
.tracking-scan-actions button{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:50px;margin:0;padding:11px 14px;font-size:12px;line-height:1.25}
.tracking-scan-actions .tracking-scan-start{justify-content:center}
.tracking-scan-actions .tracking-scan-start svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tracking-scan-actions .tracking-scan-image{background:#fff;color:var(--forest);border-color:#c9ccc3}
.tracking-scan-note{max-width:500px;margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.55}
.tracking-scanner{max-width:500px;margin:0 0 22px;border:1px solid var(--line);background:#fff}
.tracking-camera-frame{position:relative;aspect-ratio:4/3;overflow:hidden;background:#101713}
.tracking-camera-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tracking-camera-target{position:absolute;left:50%;top:50%;width:min(68%,270px);aspect-ratio:1;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 999px #0002;pointer-events:none}
.tracking-scanner-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px}
.tracking-scanner-footer p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.tracking-scanner-footer button{flex:none;min-height:40px;margin:0;padding:9px 12px;background:#fff;color:var(--forest);border-color:#c9ccc3;font-size:11px}
@media(max-width:380px){.tracking-scan-actions{grid-template-columns:1fr}.tracking-scan-actions button{min-height:46px}}
@media(max-width:420px){.tracking-scanner-footer{align-items:stretch;flex-direction:column}.tracking-scanner-footer button{width:100%}}

.tracking-scanner{width:min(460px,calc(100% - 32px));max-width:460px;max-height:calc(100dvh - 32px);margin:auto;padding:16px;border:1px solid #e0e5df;border-radius:18px;background:#fff;box-shadow:0 24px 90px #07120db3;color:var(--ink)}
.tracking-scanner::backdrop{background:#101a14b8;backdrop-filter:blur(3px)}
.tracking-scanner-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.tracking-scanner-heading .tracking-eyebrow{margin:0 0 4px;font-size:9px}
.tracking-scanner-heading h2{margin:0;font:24px/1.1 var(--serif);color:var(--ink)}
.tracking-panel .tracking-scanner-heading button{width:42px;height:42px;min-height:42px;flex:none;margin:0;padding:0;border:1px solid #e0e5df;border-radius:50%;background:#fff;color:var(--forest);font:26px/1 var(--sans)}
.tracking-camera-frame{border-radius:12px;aspect-ratio:4/3}
.tracking-scanner-footer{padding:12px 2px 0}
.tracking-scanner-footer p{font-size:12px}
.tracking-scanner.is-reading .tracking-camera-frame{display:none}
.tracking-scanner.is-reading .tracking-scanner-footer{min-height:58px;justify-content:flex-start}
.tracking-scanner.is-reading .tracking-scanner-footer:before{content:"";width:20px;height:20px;flex:none;border:2px solid #dbe5dd;border-top-color:var(--forest);border-radius:50%;animation:tracking-spin .8s linear infinite}
@keyframes tracking-spin{to{transform:rotate(360deg)}}
@media(max-width:560px){.tracking-scanner{padding:14px;border-radius:16px}.tracking-scanner-heading h2{font-size:21px}.tracking-camera-frame{aspect-ratio:1}.tracking-scanner-footer{align-items:flex-start;flex-direction:row}.tracking-scanner-footer p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.tracking-scanner.is-reading .tracking-scanner-footer:before{animation:none}}
