.scan-dialog{border-radius:var(--radius-xl);width:min(96vw,1100px);height:min(96vh,900px);max-height:96vh;box-shadow:var(--shadow-xl);background:var(--color-surface);color:var(--color-text);border:none;flex-direction:column;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.scan-dialog[open]{display:flex}.scan-dialog::backdrop{background:#00000080}.scan-dialog [hidden]{display:none!important}.scan-dialog-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:13px 18px;display:flex}.scan-title-group{color:var(--color-text);flex:1;align-items:center;gap:7px;display:flex}.scan-title-group h2{margin:0;font-size:.9375rem;font-weight:600}.scan-title-group svg{color:var(--color-text-muted);flex-shrink:0}.scan-step-dots{align-items:center;gap:5px;display:flex}.scan-dot{background:var(--color-surface-alt);width:22px;height:22px;color:var(--color-text-muted);border:1.5px solid var(--color-border);-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;font-size:.68rem;font-weight:700;transition:background .2s,border-color .2s,color .2s;display:flex}.scan-dot.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.scan-dot.done{background:var(--color-success);color:#fff;border-color:var(--color-success)}.scan-dot-line{background:var(--color-border);border-radius:1px;width:18px;height:2px}.scan-step-body{flex:auto;min-height:0;padding:16px 20px;position:relative;overflow-y:auto}.scan-step-review{flex-direction:column;gap:16px;max-height:60vh;display:flex}.scan-review-hint{color:var(--color-text-muted);margin:0;font-size:.8rem}.scan-review-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 6px;font-size:.75rem;font-weight:600}.scan-review-scroll{overflow-x:auto}.scan-review-table{border-collapse:collapse;width:100%;font-size:.8rem}.scan-review-table th{text-align:left;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:3px 6px;font-weight:600}.scan-review-table td{border-bottom:1px solid var(--color-border);padding:2px 4px}.scan-review-table input{width:100%;font:inherit;color:inherit;background:0 0;border:none;min-width:40px;padding:1px 2px}.scan-review-table input:focus,.scan-review-table select:focus{outline:2px solid var(--color-primary);background:var(--color-surface);border-radius:3px}.scan-review-table select{font:inherit;color:inherit;background:0 0;border:none;padding:1px 2px}.scan-review-table--layers th,.scan-review-table--layers td{white-space:nowrap}.scan-review-table--layers input{min-width:36px}.scan-review-table input.rv{border-bottom:2px solid #0000;transition:background .15s}.scan-review-table input.rv-hi{border-bottom-color:#d1fae5}.scan-review-table input.rv-mid{background:#fbbf2414;border-bottom-color:#fde68a}.scan-review-table input.rv-lo{background:#dc26260f;border-bottom-color:#fecaca}.rv-raw{color:var(--color-text-muted);font-family:monospace;font-size:.7rem}.rv-cropcell{padding:2px!important}.rv-crop{border:1px solid var(--color-border);cursor:zoom-in;background:#fff;border-radius:3px;max-width:100%;max-height:28px;transition:transform .15s,max-height .15s,max-width .15s,box-shadow .15s,z-index 0s linear .15s;display:block}.rv-crop:hover{transform-origin:0;z-index:10;transition-delay:0s;position:relative;transform:scale(3);box-shadow:0 4px 16px #0000004d}.rv-crop-cell{cursor:zoom-in;max-width:48px;max-height:22px;margin-bottom:2px}.rv-crop-cell:hover{transform-origin:0 0;transform:scale(4)}tr.rv-air td{background:var(--color-surface-alt);font-weight:600}tr.rv-air td:last-child{font-weight:400}.scan-pages-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;display:grid}@media (width<=720px){.scan-pages-grid{grid-template-columns:1fr}}.scan-page-card{border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition);overflow:hidden}.scan-page-card.scan-page-uploaded{border-color:var(--color-success)}.scan-page-header{background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);align-items:center;gap:6px;padding:7px 10px;font-size:.72rem;font-weight:600;display:flex}.scan-page-preview{flex-direction:column;align-items:center;gap:6px;padding:8px;display:flex}.scan-page-preview img{object-fit:contain;border-radius:var(--radius-sm);width:100%;max-height:160px}.scan-drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;color:var(--color-text-muted);transition:border-color var(--transition), background var(--transition);flex-direction:column;align-items:center;gap:8px;padding:32px 20px;display:flex}.scan-drop-zone:hover,.scan-drop-zone.drag-over{border-color:var(--color-primary);background:#2563eb0a}.scan-drop-title{color:var(--color-text);font-size:.9rem;font-weight:500}.scan-drop-sub{font-size:.78rem}.scan-drop-zone--half{border:none;border-top:2px dashed var(--color-border);border-radius:0;padding:20px 10px}.scan-drop-zone--half .scan-drop-title{font-size:.78rem}#scan-step-process:not([hidden]){flex-direction:column;align-items:center;gap:16px;padding:44px 20px;display:flex}.scan-ring{display:block}.scan-ring-track{stroke:var(--color-surface-alt)}.scan-ring-fill{stroke:var(--color-primary);transition:stroke-dashoffset .3s}.scan-progress-label{color:var(--color-text-muted);margin:0;font-size:.875rem}[data-theme=dark] .scan-drop-zone.drag-over{background:#3b82f614}
