:root{font-family:Inter,system-ui,sans-serif;color:#203146;background:#f5f7fb;font-size:15px;--accent:#2558bc;--border:#d9e0eb}*{box-sizing:border-box}body{margin:0}header{height:66px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:24px;padding:0 26px}.brand{font-weight:700;margin-right:auto}.muted{color:#67758a;font-size:.88rem;line-height:1.5}h1{font-size:1.5rem;margin:0 0 10px}h2{font-size:1rem;margin:0 0 12px}p{line-height:1.5}button,input,select,textarea{font:inherit}button{background:white;color:#203146;border:1px solid var(--border);border-radius:7px;padding:9px 13px;cursor:pointer}button:hover{border-color:var(--accent);color:var(--accent)}button:disabled{opacity:.5;cursor:default}button.primary,button[type=submit],#upload,#assign{background:var(--accent);color:white;border-color:var(--accent)}button.danger{color:#b83838}label{display:block;margin:0 0 13px}input:not([type=checkbox]),select{width:100%;padding:10px;border:1px solid var(--border);border-radius:6px;background:white;margin-top:6px}textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:6px;background:white;margin-top:6px;resize:vertical;line-height:1.4}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #9bbcff;outline-offset:2px}#login{max-width:440px;margin:90px auto;background:white;padding:30px;border:1px solid var(--border);border-radius:12px}#workspace{display:grid;grid-template-columns:290px minmax(0,1fr);min-height:calc(100vh - 66px)}[hidden]{display:none!important}aside{border-right:1px solid var(--border);background:white;padding:22px;overflow:auto}aside section{margin-bottom:26px}.file-label{font-size:.88rem}aside input[type=file]{font-size:.78rem}aside button.row{display:block;width:100%;text-align:left;margin-bottom:7px;overflow-wrap:anywhere}.row.active{border-color:var(--accent);background:#edf3ff}.row small{display:block;margin-top:4px;color:#67758a;font-size:.77rem}article{padding:26px;min-width:0}#case-header{margin-bottom:20px;overflow-wrap:anywhere}.pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.pill{background:#edf1f8;border-radius:5px;padding:5px 8px;font-size:.8rem}.pill.warning{background:#fff0d9;color:#84590a}.pill.good{background:#e4f3ec;color:#226846}.actions{display:flex;gap:8px;flex-wrap:wrap}#tabs{display:flex;gap:8px;margin:20px 0 15px;flex-wrap:wrap}#tabs button.active{background:var(--accent);color:white;border-color:var(--accent)}.document-bar{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.document-bar select{flex:1;min-width:160px;margin:0}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:20px}.scan-pane,.fields-pane{background:white;border:1px solid var(--border);border-radius:10px;padding:20px;min-width:0}.scan-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.scan-wrap{background:#eef1f6;min-height:380px;display:flex;align-items:center;justify-content:center;border-radius:6px;overflow:auto}.scan-wrap img{width:100%;object-fit:contain;max-height:680px}.scan-wrap p{padding:24px}.field-label{font-weight:600;font-size:.88rem}.field-meta{display:block;color:#67758a;font-size:.78rem;margin-top:5px;line-height:1.4}.field-meta.problem{color:#976214}.evidence{font-size:.78rem;color:#67758a;line-height:1.4;overflow-wrap:anywhere}.notice-box{padding:14px;background:#fff3de;border:1px solid #ebd2a5;border-radius:8px;margin-bottom:14px;line-height:1.5}.empty{padding:40px;border:1px dashed var(--border);border-radius:8px;background:white}.issues{color:#84590a;font-size:.85rem}.source-label{overflow-wrap:anywhere;font-size:.8rem;color:#67758a;margin-top:12px}#notice{position:fixed;bottom:22px;right:22px;max-width:440px;background:#203146;color:white;padding:13px 18px;border-radius:8px;display:none;z-index:10;box-shadow:0 4px 24px #0002}dialog{width:min(800px,94vw);max-height:90vh;border:1px solid var(--border);border-radius:12px;padding:24px}dialog::backdrop{background:#17253b66}.close{float:right}#page-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.page-choice{padding:10px;border:1px solid var(--border);border-radius:7px;font-size:.8rem;overflow-wrap:anywhere}.page-choice img{display:block;width:100%;height:160px;object-fit:contain;margin:8px 0}.page-choice input{margin-right:6px}@media(max-width:1100px){#workspace{grid-template-columns:250px minmax(0,1fr)}article{padding:20px}.split{grid-template-columns:1fr}.scan-wrap{min-height:280px}.scan-wrap img{max-height:520px}}@media(max-width:620px){header{height:auto;min-height:60px;padding:14px;gap:10px;flex-wrap:wrap}header .muted{display:none}#workspace{display:block}aside{border-right:0;border-bottom:1px solid var(--border);padding:16px}aside section{margin-bottom:18px}#cases,#batches{max-height:180px;overflow:auto}article{padding:16px}.scan-pane,.fields-pane{padding:14px}#login{margin:35px 14px;padding:24px}#page-choices{grid-template-columns:repeat(2,minmax(0,1fr))}#notice{left:14px;right:14px;bottom:14px}}

:root[data-theme="dark"]{color-scheme:dark;--theme-page:#101820;--theme-surface:#182331;--theme-surface-alt:#253244;--theme-viewer:#202d3d;--theme-text:#e5edf6;--theme-muted:#a0aec0;--theme-border:#374457;--theme-accent:#7fa8ff;--theme-highlight:#233759;--theme-warning-bg:#45361f;--theme-warning-text:#f5ce83;--theme-warning-border:#66512c;--theme-success-bg:#1c3b30;--theme-success-text:#9be0bd;--theme-danger:#ff9292;--theme-notice-bg:#dce8f6;--theme-notice-text:#101820;color:var(--theme-text);background:var(--theme-page)}
:root[data-theme="dark"] body{color:var(--theme-text);background:var(--theme-page)}
:root[data-theme="dark"] header,:root[data-theme="dark"] aside,:root[data-theme="dark"] #login,:root[data-theme="dark"] .scan-pane,:root[data-theme="dark"] .fields-pane,:root[data-theme="dark"] .empty,:root[data-theme="dark"] dialog{background:var(--theme-surface);color:var(--theme-text);border-color:var(--theme-border)}
:root[data-theme="dark"] button,:root[data-theme="dark"] input:not([type=checkbox]),:root[data-theme="dark"] select,:root[data-theme="dark"] textarea,:root[data-theme="dark"] .page-choice{background:var(--theme-surface);color:var(--theme-text);border-color:var(--theme-border)}
:root[data-theme="dark"] button.primary,:root[data-theme="dark"] button[type=submit],:root[data-theme="dark"] #upload,:root[data-theme="dark"] #assign,:root[data-theme="dark"] #tabs button.active{background:var(--theme-accent);color:#101820;border-color:var(--theme-accent)}
:root[data-theme="dark"] button:hover{border-color:var(--theme-accent);color:var(--theme-accent)}
:root[data-theme="dark"] .muted,:root[data-theme="dark"] .row small,:root[data-theme="dark"] .field-meta,:root[data-theme="dark"] .evidence,:root[data-theme="dark"] .source-label{color:var(--theme-muted)}
:root[data-theme="dark"] .row.active{background:var(--theme-highlight);border-color:var(--theme-accent)}
:root[data-theme="dark"] .pill{background:var(--theme-surface-alt);color:var(--theme-text)}
:root[data-theme="dark"] .pill.warning,:root[data-theme="dark"] .notice-box{background:var(--theme-warning-bg);color:var(--theme-warning-text);border-color:var(--theme-warning-border)}
:root[data-theme="dark"] .pill.good{background:var(--theme-success-bg);color:var(--theme-success-text)}
:root[data-theme="dark"] .field-meta.problem,:root[data-theme="dark"] .issues{color:var(--theme-warning-text)}
:root[data-theme="dark"] button.danger{color:var(--theme-danger)}
:root[data-theme="dark"] .scan-wrap{background:var(--theme-viewer);color:var(--theme-text)}
:root[data-theme="dark"] #notice{background:var(--theme-notice-bg);color:var(--theme-notice-text)}
:root[data-theme="dark"] dialog::backdrop{background:#000a}
.rotation-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rotation-controls .primary{margin-left:auto}
.scan-preview{display:block;max-width:100%;max-height:680px;object-fit:contain}
@media(max-width:1100px){.scan-preview{max-height:520px}}
.field-editor{margin:0 0 13px}.field-editor label{margin:0}.field-status-toggle{padding:6px 9px;font-size:.8rem;margin-top:7px;max-width:100%;white-space:normal;text-align:left}
.full-image-open-row{display:flex;justify-content:flex-end;margin:0 0 10px}.full-image-dialog:not([open]){display:none}.full-image-dialog[open]{display:flex;flex-direction:column;gap:12px}.full-image-dialog{width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;inset:0;border-radius:0;padding:16px}.full-image-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.full-image-header h2{margin:0}.full-image-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.full-image-controls span{min-width:5ch;text-align:center;font-variant-numeric:tabular-nums}.full-image-viewport{flex:1;min-height:0;overflow:auto;display:flex;align-items:flex-start;justify-content:flex-start;background:#eef1f6;border-radius:8px}.full-image-canvas{display:block;flex:none;margin:auto;max-width:none;max-height:none}.full-image-dialog::backdrop{background:#000c}
:root[data-theme="dark"] .full-image-viewport{background:var(--theme-viewer)}
@media(max-width:620px){.full-image-dialog{padding:10px}.full-image-header{align-items:flex-start}.full-image-controls{gap:5px}.full-image-controls button{padding:7px 9px}}
