
/* Deliberate, full-size camera capture. */
body.scan-page .scan-dialog{width:min(100%,980px);height:auto;min-height:calc(100dvh - 40px);margin:20px auto;overflow:visible;border:1px solid #ffffff25;border-radius:24px;background:#080808}
.scan-page .dialog-top{border-color:#ffffff20;background:#080808;border-radius:24px 24px 0 0;padding:18px 26px}
.scan-page .panel-top{padding:22px 24px 18px}.scan-page .panel-top h2{font-size:24px;letter-spacing:-.045em}.scan-page .panel-top>span{color:#a1a1aa}
.scan-page .viewfinder{flex:none;height:clamp(380px,64dvh,760px);min-height:380px;margin:0 18px;border:1px solid #ffffff29;border-radius:20px;background:#131315}
.scan-page .viewfinder:after{inset:7% 12%;border:1px solid #ffffff50;border-radius:16px;box-shadow:none}
.scan-page .viewfinder video,.scan-page #snapshot{width:100%;height:100%;object-fit:contain}
.scan-page .frame img{height:200px;opacity:.72;transform:rotate(-5deg)}.scan-page #camera-placeholder p{font-size:14px;color:#aaaab2}
.scan-page .scan-controls{grid-template-columns:1fr 1fr;padding:18px 24px 0;gap:12px;max-width:650px;width:100%;margin:0 auto}
.scan-page #capture,.scan-page #start{grid-column:1/-1;min-height:72px;border-radius:999px;background:#f5f5f7;color:#080808;border:1px solid #f5f5f7;font-size:18px;font-weight:650;letter-spacing:-.025em}
.scan-page #capture:before{content:'';display:inline-block;width:24px;height:24px;vertical-align:middle;margin-right:12px;border:2px solid #080808;border-radius:50%;box-shadow:inset 0 0 0 4px #f5f5f7;background:#080808}
.scan-page #capture:hover,.scan-page #start:hover{background:#dedee2}.scan-page #stop{min-height:44px;border:1px solid #ffffff28;background:#19191b;border-radius:12px;color:#b7b7bf;font-size:13px}
.scan-page .file-button{grid-column:auto;min-height:44px;padding:12px;color:#b7b7bf;border:1px solid #ffffff28;border-radius:12px;font-size:13px;display:flex;align-items:center;justify-content:center}.scan-page #stop[hidden]+.file-button{grid-column:1/-1}
.scan-page .privacy{margin:0;font-size:10px;line-height:1.6;color:#888891;text-align:center}.scan-page #status{padding:14px 26px 22px;min-height:48px;text-align:center;color:#b0b0b8;font-size:13px;line-height:1.65}.scan-page #status.error{color:#ffc8a4}
.scan-page #capture-notice{background:#f5f5f7;color:#151515;border-radius:999px;bottom:18px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:90%;padding:11px 20px}
.scan-page .scan-nav{background:#101011;border-color:#ffffff20;border-radius:0 0 24px 24px}
@media(max-width:760px){body.scan-page .scan-dialog{margin:0 0 calc(76px + env(safe-area-inset-bottom));width:100%;min-height:calc(100dvh - 76px);height:auto;border:0;border-radius:0}.scan-page .dialog-top{padding:calc(12px + env(safe-area-inset-top)) 18px 12px;border-radius:0}.scan-page .dialog-top small{display:none}.scan-page .panel-top{padding:16px 18px 12px}.scan-page .panel-top h2{font-size:20px}.scan-page .viewfinder{margin:0 8px;border-radius:18px;height:60dvh;min-height:350px}.scan-page .viewfinder:after{inset:7% 7%}.scan-page .frame img{height:185px}.scan-page .scan-controls{padding:14px 16px 0;gap:9px}.scan-page #capture,.scan-page #start{min-height:72px;font-size:17px}.scan-page .privacy{display:block}.scan-page #status{font-size:12px;padding:12px 22px 16px}.scan-page .scan-nav{display:none}}
