.qr-scanner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a;z-index:100;display:flex;flex-direction:column}.qr-scanner-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid #334155;flex-shrink:0}.qr-scanner-header-text{min-width:0;flex:1}.qr-scanner-header h3{margin:0;font-size:1.1rem;color:#e2e8f0}.qr-scanner-hint{margin:.5rem 0 0;font-size:.82rem;line-height:1.35;color:#94a3b8;max-width:36rem}.qr-scanner-close{padding:.5rem 1rem;background:#334155;border:1px solid #475569;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:.95rem}.qr-scanner-close:hover{background:#475569}.qr-scanner-error{padding:1.5rem;color:#fecaca;text-align:center}.qr-scanner-error-hint{margin-top:.5rem;font-size:.9rem;color:#94a3b8}.qr-scanner-stage{flex:1;min-height:0;position:relative;background:#000}.qr-scanner-reader{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}#qr-reader{width:100%;height:100%}#qr-reader__scan_region{width:100%;height:100%;background:#000}.qr-scanner-reticle{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;display:flex;align-items:center;justify-content:center}.qr-scanner-reticle-square{box-sizing:border-box;width:min(76vmin,100%);max-width:calc(100% - 1.5rem);max-height:calc(100% - 1.5rem);aspect-ratio:1 / 1;height:auto;border-radius:18px;border:3px solid rgba(255,255,255,.92);box-shadow:0 0 0 9999px #00000080}.app{min-height:100vh;padding:1rem;max-width:480px;margin:0 auto}.app-header{margin-bottom:1.5rem}.app-header h1{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;color:#f1f5f9}.home-title-link{color:inherit;text-decoration:none}.home-title-link:hover{text-decoration:underline;text-underline-offset:.12em}.app-subtitle{margin:0;font-size:.9rem;color:#94a3b8}.app-main{display:flex;flex-direction:column;gap:1.5rem}.section{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:1.25rem}.section-error{color:#fecaca}.section-error .hint{margin-top:.75rem;font-size:.85rem;color:#94a3b8}.section-error code{background:#334155;padding:.15rem .4rem;border-radius:4px}.status{padding:.75rem 1rem;border-radius:8px;font-size:.95rem}.status-success{background:#064e3b;color:#a7f3d0}.status-error{background:#7f1d1d;color:#fecaca}.check-type-toggle{display:flex;width:100%;border-radius:8px;overflow:hidden;border:1px solid #475569}.check-type-btn{flex:1;padding:.65rem .75rem;border:none;background:#0f172a;color:#94a3b8;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.check-type-btn+.check-type-btn{border-left:1px solid #475569}.check-type-btn:hover:not(.active){background:#1e293b;color:#cbd5e1}.check-type-btn.active.check-type-in{background:#15803d;color:#f0fdf4}.check-type-btn.active.check-type-out{background:#c2410c;color:#fff7ed}.label{display:block;font-size:.8rem;font-weight:600;color:#94a3b8;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.03em}.job-name-new-label{margin-top:.75rem}.input{width:100%;padding:.65rem .75rem;border-radius:8px;border:1px solid #475569;background:#0f172a;color:#e2e8f0;font-size:1rem}.input:focus{outline:none;border-color:#3b82f6}.box-id-display{padding:.65rem .75rem;background:#0f172a;border:1px solid #475569;border-radius:8px;font-family:ui-monospace,monospace;font-size:1.1rem;font-weight:600;color:#e2e8f0}.field-hint{margin:.35rem 0 0;font-size:.8rem;color:#f59e0b}.form-field{margin-bottom:1rem}.form-field:last-of-type{margin-bottom:0}.form-actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.form-actions .btn-primary{flex:1;min-width:120px}.btn{padding:.65rem 1.25rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;border:1px solid transparent}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#2563eb;color:#fff;border-color:#1d4ed8}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{background:#334155;color:#e2e8f0;border-color:#475569}.btn-secondary:hover:not(:disabled){background:#475569}.btn-full{width:100%}.box-meta-loading{margin:0 0 1rem;font-size:.9rem;color:#94a3b8}.init-banner,.profile-banner,.legacy-banner{border-radius:8px;padding:.85rem 1rem;margin-bottom:1.15rem;font-size:.88rem;line-height:1.45}.init-banner{background:#1e3a8a73;border:1px solid #3b82f6;color:#e2e8f0}.init-banner strong{display:block;margin-bottom:.35rem;color:#bfdbfe}.init-banner p{margin:0 0 .75rem;color:#cbd5e1}.profile-banner{background:#16653459;border:1px solid #22c55e;color:#dcfce7}.profile-banner strong{display:block;margin-bottom:.25rem}.profile-banner p{margin:0}.profile-cap{color:#86efac}.legacy-banner{background:#713f1259;border:1px solid #f59e0b;color:#fef3c7}.legacy-banner strong{display:block;margin-bottom:.25rem}.legacy-banner p{margin:0;font-size:.85rem}.footage-context{margin:.5rem 0 0;font-size:.88rem;color:#a5b4fc;line-height:1.4}.footage-context-type{font-weight:600;color:#c7d2fe}.footage-context-sep{font-weight:400;opacity:.8}.footage-context-pct{color:#94a3b8;font-size:.82rem}.field-hint.subtle{color:#64748b;font-size:.78rem}.warehouse-location-display{color:#86efac;font-weight:600}.retired-banner{background:#7f1d1d66;border:1px solid #f87171;color:#fecaca;border-radius:8px;padding:.85rem 1rem;margin-bottom:1rem}.retired-banner strong{display:block;margin-bottom:.35rem;color:#fecaca;font-size:1.05rem}.retired-banner p{margin:0;font-size:.88rem;line-height:1.4;color:#fecaca}.retired-banner-meta{margin-top:.5rem!important;color:#fca5a5!important;font-weight:600}.last-scan-panel{background:#1e3a8a59;border:1px solid #60a5fa;color:#dbeafe;border-radius:8px;padding:.85rem 1rem;margin-bottom:1rem}.last-scan-panel--out{background:#78350f66;border-color:#fbbf24;color:#fef3c7}.last-scan-panel strong{display:block;margin-bottom:.35rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.9}.last-scan-panel-main{margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.last-scan-panel-meta{margin:.35rem 0 0;font-size:.85rem;opacity:.9}.last-scan-panel-warn{margin:.55rem 0 0;font-size:.88rem;font-weight:600;line-height:1.35}.check-type-btn:disabled{opacity:.45;cursor:not-allowed}.box-meta-loading{margin:0 0 .75rem;color:#94a3b8;font-size:.9rem}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0f172a;color:#e2e8f0;min-height:100vh}#root{min-height:100vh}button,input{font-family:inherit}
