.scan-start-actions{display:grid;gap:10px;width:100%;margin-top:12px}.camera-scan-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px}.camera-scan-button span{font-size:1.2rem}.camera-availability{margin:10px 0 0;color:#8e9bac;font-size:.82rem;text-align:center}.camera-dialog{border:0;padding:0;background:transparent;width:min(100vw,720px);max-width:100vw;height:100dvh;max-height:100dvh}.camera-dialog::backdrop{background:rgba(0,0,0,.92);backdrop-filter:blur(12px)}.camera-shell{min-height:100dvh;background:#05070a;color:#fff;padding:max(18px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.camera-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.camera-header h2{margin:2px 0 0;font-size:1.55rem}.camera-close{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;font-size:1.8rem;line-height:1}.camera-preview-shell{position:relative;flex:1;min-height:360px;border-radius:24px;overflow:hidden;background:#111;box-shadow:0 20px 60px rgba(0,0,0,.55)}#camera-preview{width:100%;height:100%;min-height:360px;object-fit:cover;display:block}.camera-shade{position:absolute;background:rgba(0,0,0,.46);pointer-events:none}.shade-top{inset:0 0 auto;height:27%}.shade-bottom{inset:auto 0 0;height:27%}.shade-left{top:27%;bottom:27%;left:0;width:8%}.shade-right{top:27%;bottom:27%;right:0;width:8%}.camera-target{position:absolute;left:8%;right:8%;top:27%;bottom:27%;border:1px solid rgba(255,255,255,.22);border-radius:18px;pointer-events:none}.camera-target span{position:absolute;width:38px;height:38px;border-color:#5ce1e6}.camera-target span:nth-child(1){left:-2px;top:-2px;border-left:4px solid;border-top:4px solid;border-radius:14px 0 0 0}.camera-target span:nth-child(2){right:-2px;top:-2px;border-right:4px solid;border-top:4px solid;border-radius:0 14px 0 0}.camera-target span:nth-child(3){left:-2px;bottom:-2px;border-left:4px solid;border-bottom:4px solid;border-radius:0 0 0 14px}.camera-target span:nth-child(4){right:-2px;bottom:-2px;border-right:4px solid;border-bottom:4px solid;border-radius:0 0 14px 0}.camera-target i{position:absolute;left:6%;right:6%;top:50%;height:2px;background:linear-gradient(90deg,transparent,#ff4fc8,#5ce1e6,transparent);box-shadow:0 0 18px #5ce1e6;animation:cameraSweep 2.1s ease-in-out infinite}@keyframes cameraSweep{0%,100%{transform:translateY(-62px);opacity:.55}50%{transform:translateY(62px);opacity:1}}.camera-detected{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(32,190,120,.92);padding:12px 18px;border-radius:999px;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.45)}.camera-message{min-height:42px;margin:0;text-align:center;color:#c7d0dc}.camera-message[data-state=error]{color:#ff9aa8}.camera-message[data-state=success]{color:#86f7c2}.camera-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.camera-actions .secondary-button,.photo-scan-button{margin:0;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center}.photo-scan-button input{position:absolute;opacity:0;pointer-events:none}.camera-tip{margin:0;text-align:center;color:#788596;font-size:.78rem}.hidden{display:none!important}@media(max-width:520px){.camera-actions{grid-template-columns:1fr 1fr}.photo-scan-button{grid-column:1/-1}.camera-preview-shell,#camera-preview{min-height:330px}}
