/* On-device scan review: source photographs, never catalog artwork. */
.ai-scan-buttons{flex-wrap:wrap;justify-content:flex-end;max-width:480px}
.ai-scan-controls .local-scan-progress{color:#f5df9f;font-size:12px;overflow-wrap:anywhere}
.batch-photo-file .local-photo-progress{color:#425f40}
.ai-review-row{grid-template-columns:minmax(0,1fr) minmax(150px,.6fr);align-items:center}
.ai-review-fields{grid-template-columns:minmax(0,1fr) auto 80px;align-items:end;min-width:0}
.ai-review-fields .scan-view-button{min-height:42px;white-space:nowrap}
.ai-review-status{min-width:0}.ai-review-actions{justify-content:flex-end;align-self:end}
.ai-review-fields label{min-width:0}.ai-review-row .ai-candidate-select{grid-column:1}
.ai-review-footer>.danger{margin-right:auto}
.scan-privacy-footnote{color:#a8c3d3;font-size:11px;line-height:1.55;margin:16px 0 0}
.scan-source-dialog{box-sizing:border-box;width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid #b39a60;border-radius:12px;background:#102c35;color:#e5eef1;box-shadow:0 24px 90px #000a;overflow:auto}
.scan-source-dialog::backdrop{background:#071015d9;backdrop-filter:blur(4px)}
.scan-source-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.scan-source-dialog>header span{font-size:11px;letter-spacing:.15em;color:#e1c47c;font-weight:700}
.scan-source-dialog h2{margin:6px 0;color:#f4e8bc;font:400 28px/1.2 Georgia,serif;overflow-wrap:anywhere}
.scan-source-dialog>p{color:#b8cbd2;line-height:1.55;font-size:13px;margin:10px 0 20px;max-width:680px}
.scan-dialog-close{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #b39a607a;border-radius:8px;background:#163d45;color:#f7e9c2;font-size:28px;cursor:pointer}
.scan-dialog-close:hover{background:#24505a}.scan-dialog-close:focus-visible{outline:3px solid #f4d784;outline-offset:3px}
.scan-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px}
.scan-source-figure{margin:0;min-width:0;padding:16px;border:1px solid #7897a666;border-radius:8px;background:#09232c}
.scan-source-figure figcaption{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;overflow-wrap:anywhere}
.scan-source-figure figcaption strong{color:#efd99a;font-size:14px}.scan-source-figure figcaption span{color:#a2bdc5;font-size:11px}
.scan-crop{display:flex;justify-content:center;align-items:center;min-height:120px;padding:12px;border:1px solid #8eaaaf40;border-radius:6px;background:#020b10}
.scan-crop img{display:block;max-width:100%;width:auto;max-height:420px;object-fit:contain;image-rendering:auto}
.scan-image-note{color:#bfd0d3;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.scan-image-note strong{color:#f3e6bd}
.scan-source-context{margin-top:14px}.scan-source-context summary{padding:10px 0;color:#d8e3e5;cursor:pointer;font-size:12px;font-weight:600}
.scan-source-image{position:relative;border:1px solid #7897a666;border-radius:5px;overflow:hidden;background:#020b10;line-height:0}
.scan-source-image img{display:block;width:100%;height:auto;max-height:none}
.scan-source-image svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.scan-source-image polygon{fill:#f8d57422;stroke:#ffe08a;stroke-width:4;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.scan-source-dialog>footer{display:flex;align-items:center;gap:20px;margin-top:24px;padding-top:18px;border-top:1px solid #7897a644}.scan-source-dialog>footer .button{flex:0 0 auto;min-height:44px}.scan-source-dialog>footer small{font-size:11px;line-height:1.55;color:#a9c0c7}
@media(max-width:760px){.ai-scan-buttons{max-width:none;justify-content:stretch}.ai-review-row{grid-template-columns:minmax(0,1fr)}.ai-review-fields{grid-template-columns:minmax(0,1fr) 76px;gap:10px}.ai-review-fields>.scan-view-button{grid-row:2;grid-column:1;justify-self:start}.ai-review-fields>label:last-child{grid-row:1;grid-column:2}.ai-review-actions{justify-content:flex-start}.ai-review-footer>.danger{margin-right:0}.scan-source-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px}.scan-source-dialog h2{font-size:24px}.scan-source-dialog>footer{align-items:stretch;flex-direction:column;gap:12px}.scan-source-figure{padding:12px}.scan-source-grid{grid-template-columns:1fr}}
