.cam-scanner-page{min-width:0}.cam-scanner-actions{background:var(--color-surface);border:1px solid var(--color-ink);border-radius:.65rem;flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:1rem;padding:.85rem;display:flex}.cam-scanner-actions .button,.cam-dialog-actions .button,.cam-rotate-actions .button{text-align:center;justify-content:center;align-items:center;gap:.4rem;min-height:44px;display:inline-flex}.cam-scanner-actions .studio-action-icon,.cam-rotate-actions .studio-action-icon{width:20px;height:20px}.cam-export-controls{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.cam-export-controls select,.cam-settings select{background:var(--color-surface);min-height:44px;color:var(--color-ink);border:1px solid var(--color-ink);border-radius:.45rem;padding:.45rem}.cam-scanner-layout{grid-template-columns:minmax(0,1fr) minmax(220px,260px);align-items:start;gap:1rem;display:grid}.cam-sheet,.cam-settings,.cam-page-section{border:1px solid var(--color-ink);background:var(--color-surface);border-radius:.65rem;min-width:0;padding:.95rem}.cam-sheet-heading,.cam-pages-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;margin-bottom:.75rem;display:flex}.cam-sheet-heading h2,.cam-settings h2,.cam-pages-heading h2{margin:0;font-size:1.05rem}.cam-sheet-heading p,.cam-pages-heading p,.cam-settings>p{color:var(--color-muted);margin:0;font-size:.85rem}.cam-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.cam-canvas-frame{background:#ebe8e0;border:1px solid #adaca7;border-radius:.45rem;min-width:0;overflow:hidden}.cam-canvas-frame h3{background:var(--color-surface);border-bottom:1px solid #d6d0c5;margin:0;padding:.45rem .65rem;font-size:.9rem}.cam-canvas-frame canvas{object-fit:contain;background:#fff;width:100%;max-width:100%;height:auto;max-height:min(52vh,490px);display:block}.cam-canvas-frame canvas:not([data-ready]){visibility:hidden;height:170px}.cam-empty{color:var(--color-muted);margin:.7rem 0;font-size:.9rem}.cam-sheet .tool-status{min-height:1.5em;margin-top:.65rem}.cam-settings{gap:.55rem;display:grid}.cam-settings>label{justify-content:space-between;gap:1rem;font-size:.89rem;font-weight:650;display:flex}.cam-settings input[type=range]{width:100%;accent-color:var(--color-accent);min-height:28px;display:block}.cam-settings output{font-variant-numeric:tabular-nums;font-weight:450}.cam-rotate-actions{flex-wrap:wrap;gap:.45rem;display:flex}.cam-settings .cam-settings-note{margin-top:.5rem;line-height:1.5}.cam-page-section{margin-top:1rem}.cam-page-list{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.6rem;margin:0;padding-left:0;list-style:none;display:grid}.cam-page-list li{background:var(--color-bg);border:1px solid #bcb6a9;border-radius:.45rem;grid-template-columns:minmax(0,1fr);gap:.3rem;min-width:0;padding:.55rem;display:grid}.cam-page-list li[data-selected=true]{outline:2px solid var(--color-accent);outline-offset:-2px}.cam-page-list li>button[data-cam-page-select]{box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;color:inherit;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:.82rem;display:block;overflow:hidden}.cam-page-list li>button[data-cam-page-select] img{box-sizing:border-box;object-fit:contain;background:#fff;border:1px solid #ccc4b7;width:100%;min-width:0;max-width:100%;height:110px;margin-bottom:.3rem;display:block}.cam-page-order{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;min-width:0;display:grid}.cam-page-order button{width:100%;min-width:0;min-height:38px;padding:.35rem}.cam-page-order button:last-child{grid-column:1/-1}.cam-page-order button:disabled{opacity:.4;cursor:not-allowed}.cam-camera-dialog,.cam-corners-dialog{color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-ink);border-radius:.6rem;width:min(94vw,850px);max-height:92vh;padding:1rem;overflow-y:auto}.cam-camera-dialog::backdrop,.cam-corners-dialog::backdrop{background:#0f0d09b3}.cam-dialog-title{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.cam-dialog-title h2{margin:0;font-size:1.15rem}.cam-camera-dialog video{object-fit:contain;background:#111;border-radius:.4rem;width:100%;max-height:63vh;display:block}.cam-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.8rem;display:flex}.cam-corners-dialog>p{margin:.5rem 0;font-size:.9rem}.cam-corners-dialog .ite-scan-stage{width:calc(100% - 44px);margin:22px;line-height:0;position:relative}.cam-corners-dialog .ite-scan-stage canvas[data-ite-scan-canvas]{width:100%;height:auto;display:block}.cam-corners-dialog .ite-scan-stage canvas[data-ite-scan-overlay]{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cam-corners-dialog button[data-ite-scan-corner]{z-index:2;background:var(--color-accent);touch-action:none;cursor:grab;border:3px solid #fff;border-radius:50%;width:30px;height:30px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 3px #2229}.cam-corners-dialog button[data-ite-scan-corner]:focus-visible{outline-offset:2px;outline:3px solid #1367c3}.cam-corners-dialog button[data-ite-scan-corner]:active{cursor:grabbing}@media (width<=780px){.cam-scanner-layout{grid-template-columns:minmax(0,1fr)}.cam-sheet-heading{flex-direction:column;align-items:flex-start}.cam-export-controls{width:100%;margin-left:0}.cam-pair{gap:.4rem}}@media (width<=390px){.cam-scanner-actions{gap:.4rem;padding:.55rem}.cam-scanner-actions .button{flex:auto}.cam-canvas-frame h3{padding:.35rem}.cam-page-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cam-camera-dialog,.cam-corners-dialog{padding:.65rem}}
