/* Split-view layout used in scan entry */
.split-view { display: flex; height: calc(100vh - 64px); overflow: hidden; }
.split-left  { flex: 0 0 50%; overflow: auto; background: #1a1a1a; position: relative; }
.split-right { flex: 0 0 50%; overflow-y: auto; padding: 1.5rem; }

/* Scan image zoom/pan */
#scan-img-wrap { overflow: hidden; width: 100%; height: 100%; cursor: grab; }
#scan-img-wrap.grabbing { cursor: grabbing; }
#scan-img { transform-origin: 0 0; transition: none; display: block; max-width: none; }

/* Flash messages */
.flash-success { background:#d1fae5; border-left:4px solid #10b981; padding:.75rem 1rem; margin-bottom:1rem; border-radius:4px; }
.flash-error   { background:#fee2e2; border-left:4px solid #ef4444; padding:.75rem 1rem; margin-bottom:1rem; border-radius:4px; }
