:root{--vx-bg:#f6f8fb;--vx-surface:#ffffffdb;--vx-surface-solid:#fff;--vx-border:#0f172a14;--vx-text:#0f172a;--vx-text-soft:#475569;--vx-muted:#64748b;--vx-shadow:0 18px 50px #0f172a14;--vx-radius-xl:24px;--vx-radius-lg:20px;--vx-radius-md:16px}.vx-viewer-card{background:var(--vx-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--vx-border);border-radius:var(--vx-radius-xl);box-shadow:var(--vx-shadow);overflow:hidden}.vx-viewer-card__header{background:linear-gradient(#ffffffe6,#f8fafccc);border-bottom:1px solid #0f172a0f;padding:1.1rem 1.25rem}.vx-viewer-card__header h3{color:var(--vx-text);margin:0;font-size:1.05rem;font-weight:700}.vx-image-preview-panel__body{background:radial-gradient(circle at 0 0,#6366f10f,#0000 26%),linear-gradient(#fbfcfe,#f4f7fb);justify-content:center;align-items:center;min-height:520px;padding:1.25rem;display:flex}.vx-image-preview-panel__body img{object-fit:contain;background:#fff;border:1px solid #0f172a0f;border-radius:16px;max-width:100%;max-height:680px;box-shadow:0 14px 36px #0f172a1f}.vx-text-result-tabs__body{background:linear-gradient(#fff,#fbfcff);min-height:520px;padding:1.25rem}.vx-plain-text{white-space:pre-wrap;word-break:break-word;color:var(--vx-text);background:#fcfdff;border:1px solid #0f172a0f;border-radius:18px;margin:0;padding:1.2rem 1.25rem;font-family:inherit;font-size:1.05rem;line-height:2}.vx-structured-blocks{flex-direction:column;gap:1rem;display:flex}.vx-structured-block{background:#fff;border:1px solid #0f172a12;border-radius:18px;padding:1rem;box-shadow:0 10px 22px #0f172a0a}.vx-structured-block h4{color:var(--vx-text-soft);margin:0 0 .85rem;font-size:.95rem;font-weight:700}.vx-structured-line{border-radius:14px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.85rem .95rem;transition:transform .2s,background .2s;display:flex}.vx-structured-line:hover{background:#f8fafc;transform:translateY(-1px)}.vx-structured-line+.vx-structured-line{border-top:1px solid #0f172a0d}.vx-structured-line p{color:var(--vx-text);flex:1;margin:0;font-size:1rem;line-height:1.9}.vx-structured-line span{text-align:right;color:#0f766e;background:#14b8a614;border-radius:999px;flex-shrink:0;min-width:60px;padding:.35rem .6rem;font-size:.88rem;font-weight:700}.vx-compare-panel{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.vx-compare-panel__image,.vx-compare-panel__text{background:linear-gradient(#fff,#f8fafc);min-height:580px;padding:1.25rem}.vx-compare-panel__image{justify-content:center;align-items:center;display:flex}.vx-compare-panel__image img{object-fit:contain;background:#fff;border-radius:16px;max-width:100%;max-height:700px;box-shadow:0 12px 28px #0f172a1a}.vx-compare-panel__text pre{white-space:pre-wrap;word-break:break-word;color:var(--vx-text);margin:0;font-family:inherit;font-size:1.05rem;line-height:2}@media (width<=1024px){.vx-compare-panel{grid-template-columns:1fr}.vx-image-preview-panel__body,.vx-text-result-tabs__body,.vx-compare-panel__image,.vx-compare-panel__text{min-height:420px}}:root{--ocr-bg:#f4f7fb;--ocr-surface:#ffffffe0;--ocr-surface-solid:#fff;--ocr-border:#0f172a14;--ocr-text:#0f172a;--ocr-text-soft:#475569;--ocr-muted:#64748b;--ocr-accent:#2563eb;--ocr-accent-soft:#2563eb14;--ocr-success:#059669;--ocr-shadow:0 20px 55px #0f172a14;--ocr-radius-xl:24px;--ocr-radius-lg:20px;--ocr-radius-md:16px;--ocr-max:1280px}*{box-sizing:border-box}.ocr-demo-page{min-height:100vh;color:var(--ocr-text);background:radial-gradient(circle at 0 0,#2563eb14,#0000 28%),radial-gradient(circle at 100% 0,#10b9810f,#0000 24%),linear-gradient(#f8fbff,#f3f6fb);border:1px solid #059669}.ocr-demo-container{justify-content:center;justify-items:center;margin:0 auto}.ocr-demo-hero{max-width:var(--ocr-max);margin:0 auto}.ocr-demo-hero__content{max-width:820px}.ocr-demo-pill{color:var(--ocr-text-soft);background:#0f172a0f;border-radius:999px;margin-bottom:1rem;padding:.45rem .85rem;font-size:.9rem;font-weight:700;display:inline-block}.ocr-demo-hero h1{letter-spacing:-.03em;margin:0 0 1rem;font-size:clamp(2.1rem,4vw,4rem);line-height:1.08}.ocr-demo-hero p{max-width:720px;color:var(--ocr-text-soft);margin:0;font-size:1.08rem;line-height:1.8}.ocr-demo-hero__meta{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.ocr-demo-hero__meta span{border:1px solid var(--ocr-border);color:var(--ocr-text-soft);background:#fffc;border-radius:999px;padding:.55rem .85rem;font-size:.92rem;font-weight:600}.ocr-card{background:var(--ocr-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--ocr-border);border-radius:var(--ocr-radius-xl);box-shadow:var(--ocr-shadow);margin-top:1%}.ocr-upload-panel,.ocr-review-panel,.ocr-processing-panel,.ocr-result-workspace{overflow:hidden}.ocr-upload-panel{width:var(--ocr-max);padding:2rem}.ocr-review-panel{grid-template-columns:1.25fr .35fr;width:80%;min-height:720px;padding:2rem;display:grid}.ocr-upload-panel__header{margin-bottom:1.5rem}.ocr-upload-panel__header h2,.ocr-review-panel__sidebar h2,.ocr-processing-panel__timeline h2,.ocr-result-topbar h2{margin:0 0 .6rem;font-size:1.55rem;line-height:1.2}.ocr-upload-panel__header p,.ocr-review-panel__sidebar p,.ocr-processing-panel__timeline p,.ocr-result-topbar p{color:var(--ocr-text-soft);margin:0;line-height:1.75}.ocr-dropzone{text-align:center;cursor:pointer;background:linear-gradient(#ffffffe6,#f8fafcf2);border:1.5px dashed #2563eb40;border-radius:22px;padding:2.5rem 1.25rem;transition:transform .2s,border-color .2s,box-shadow .2s}.ocr-dropzone:hover{border-color:#2563eb73;transform:translateY(-2px);box-shadow:0 14px 36px #2563eb14}.ocr-dropzone__inner h3{margin:0 0 .65rem;font-size:1.4rem}.ocr-dropzone__inner p{color:var(--ocr-muted);margin:0 0 1rem}.ocr-sample-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.4rem;display:grid}.ocr-sample-card{border:1px solid var(--ocr-border);text-align:left;min-height:88px;color:var(--ocr-text);cursor:pointer;background:#ffffffd1;border-radius:18px;padding:1rem;font-weight:700;transition:transform .2s,box-shadow .2s,border-color .2s}.ocr-sample-card:hover{border-color:#2563eb38;transform:translateY(-2px);box-shadow:0 12px 28px #0f172a0f}.ocr-processing-panel{grid-template-columns:1.25fr .95fr;min-height:720px;display:grid}.ocr-review-panel__preview,.ocr-processing-panel__preview{background:radial-gradient(circle at 0 0,#2563eb0d,#0000 26%),linear-gradient(#fcfdff,#f4f7fb);border-right:1px solid #0f172a0f;justify-content:center;align-items:center;padding:1.5rem;display:flex}.ocr-review-panel__preview img,.ocr-processing-panel__preview img{object-fit:contain;background:#fff;border-radius:16px;max-width:100%;max-height:680px;box-shadow:0 16px 38px #0f172a1f}.ocr-review-panel__sidebar,.ocr-processing-panel__timeline{padding:2rem}.ocr-file-meta{gap:.4rem;margin-top:1.4rem;display:grid}.ocr-file-meta>div{background:#f8fafce6;border:1px solid #0f172a0f;border-radius:16px;padding:.95rem 1rem}.ocr-file-meta span{color:var(--ocr-muted);margin-bottom:.35rem;font-size:.82rem;display:block}.ocr-file-meta strong{color:var(--ocr-text);font-size:.98rem}.ocr-action-row{flex-wrap:wrap;gap:.85rem;margin-top:1.5rem;display:flex}.btn-primary,.btn-secondary{appearance:none;cursor:pointer;border:none;border-radius:14px;padding:.85rem 1.15rem;font-size:.95rem;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s}.btn-primary:hover,.btn-secondary:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 14px 28px #2563eb40}.btn-secondary{color:var(--ocr-text);background:#ffffffd1;border:1px solid #0f172a14}.ocr-stage-list{flex-direction:column;gap:1rem;margin-top:1.6rem;display:flex}.ocr-stage-item{background:#ffffffb3;border:1px solid #0f172a0f;border-radius:18px;gap:1rem;padding:1rem;transition:transform .2s,border-color .2s,background .2s;display:flex}.ocr-stage-item.active{background:#2563eb0d;border-color:#2563eb40;transform:translateY(-1px)}.ocr-stage-item.complete{border-color:#05966929}.ocr-stage-item__dot{background:#cbd5e1;border-radius:999px;flex-shrink:0;width:14px;height:14px;margin-top:.35rem}.ocr-stage-item.active .ocr-stage-item__dot{background:var(--ocr-accent);box-shadow:0 0 0 6px #2563eb1f}.ocr-stage-item.complete .ocr-stage-item__dot{background:var(--ocr-success)}.ocr-stage-item strong{margin-bottom:.35rem;display:block}.ocr-stage-item p{color:var(--ocr-text-soft);margin:0;font-size:.94rem;line-height:1.7}.ocr-result-workspace{flex-direction:column;gap:1.25rem;display:flex}.ocr-result-topbar{background:var(--ocr-surface);border:1px solid var(--ocr-border);border-radius:var(--ocr-radius-xl);box-shadow:var(--ocr-shadow);align-items:flex-start;gap:1.25rem;padding:1.4rem 1.5rem;display:flex}.ocr-result-tabs{border:1px solid var(--ocr-border);background:#ffffffd1;border-radius:16px;gap:.6rem;width:fit-content;padding:.4rem;display:inline-flex}.ocr-result-tabs button{appearance:none;color:var(--ocr-text-soft);cursor:pointer;background:0 0;border:none;border-radius:12px;padding:.75rem 1rem;font-size:.94rem;font-weight:700}.ocr-result-tabs button.active{color:var(--ocr-text);background:#fff;box-shadow:0 8px 18px #0f172a0f}.ocr-result-grid{grid-template-columns:1.03fr 1fr;gap:1.5rem;display:grid}.ocr-signup-callout{border:1px solid var(--ocr-border);box-shadow:var(--ocr-shadow);background:linear-gradient(#ffffffeb,#f8fafcf5);border-radius:22px;padding:1.4rem 1.5rem}.ocr-signup-callout strong{margin-bottom:.45rem;font-size:1.05rem;display:block}.ocr-signup-callout p{color:var(--ocr-text-soft);margin:0 0 1rem;line-height:1.7}@media (width<=1024px){.ocr-review-panel,.ocr-processing-panel,.ocr-result-grid,.ocr-result-topbar{grid-template-columns:1fr;display:grid}.ocr-review-panel__preview,.ocr-processing-panel__preview{border-bottom:1px solid #0f172a0f;border-right:none}.ocr-sample-row{grid-template-columns:1fr}}@media (width<=720px){.ocr-demo-hero{padding-top:2.5rem}.ocr-upload-panel,.ocr-review-panel__sidebar,.ocr-processing-panel__timeline{padding:1.25rem}.ocr-result-topbar{padding:1.1rem}.ocr-action-row{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.ocr-error-text,.ocr-error-box p{color:#b91c1c}.ocr-error-box{margin-top:16px}.ocr-layout-note{color:#64748b;margin-top:8px;font-size:13px}.ocr-layout-review{flex-direction:column;gap:16px;display:flex}.ocr-layout-review__topbar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ocr-layout-review__body{grid-template-columns:minmax(0,1fr) 330px;gap:16px;display:grid}.ocr-layout-canvas-shell{background-color:#0000;background-image:linear-gradient(45deg,#94a3b814 25%,#0000 25%),linear-gradient(-45deg,#94a3b814 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#94a3b814 75%),linear-gradient(-45deg,#0000 75%,#94a3b814 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-repeat:repeat,repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;border:1px solid #e5e7eb;border-radius:18px;min-height:520px;max-height:78vh;position:relative;overflow:hidden}.ocr-layout-canvas-shell.pan-mode{cursor:grab}.ocr-layout-canvas-shell.pan-mode:active{cursor:grabbing}.ocr-layout-canvas-stage{transform-origin:0 0;transition:transform .12s;display:inline-block;position:relative}.ocr-layout-canvas-stage img{-webkit-user-select:none;user-select:none;pointer-events:none;width:min(900px,72vw);max-width:none;height:auto;display:block}.ocr-layout-svg{cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.ocr-layout-box{fill:#2563eb1f;stroke:#2563ebf2;stroke-width:2px;cursor:move}.ocr-layout-box.creating{fill:#22c55e26;stroke:#16a34a;stroke-width:2px;stroke-dasharray:6 4}.ocr-layout-resize-handle{fill:#fff;stroke:#0284c7;stroke-width:2px;cursor:nwse-resize}.ocr-layout-sidebar{flex-direction:column;gap:16px;display:flex}.ocr-layout-sidebar__section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.ocr-layout-sidebar__section h3{margin:0}.ocr-layout-sidebar__section label{color:#475569;flex-direction:column;gap:6px;font-size:13px;display:flex}.ocr-layout-sidebar__section input,.ocr-layout-sidebar__section select{border:1px solid #cbd5e1;border-radius:10px;padding:8px}.ocr-checkbox-row{align-items:center;flex-direction:row!important}.ocr-sidebar-hint{color:#64748b;margin:0;font-size:13px}.ocr-layout-region-list{flex-direction:column;gap:8px;max-height:380px;display:flex;overflow:auto}.ocr-layout-region-item{cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;gap:12px;padding:10px;display:flex}.ocr-layout-region-item.active{background:#eff6ff;border-color:#2563eb}.ocr-layout-region-item small{color:#64748b}.ocr-processing-scan-frame{background:#020617;border-radius:18px;position:relative;overflow:hidden}.ocr-processing-scan-frame img{filter:contrast(1.04)saturate(.95);width:100%;height:auto;display:block}.ocr-scan-overlay{pointer-events:none;background:linear-gradient(90deg,#0ea5e914,#0000 20% 80%,#0ea5e914);position:absolute;inset:0}.ocr-scan-line{background:linear-gradient(#0000,#38bdf829,#38bdf8d1,#38bdf829,#0000);height:9%;animation:2.1s ease-in-out infinite ocrScanDown;position:absolute;top:-12%;left:0;right:0;box-shadow:0 0 28px #38bdf8bf}.ocr-scan-glow{background:linear-gradient(#0ea5e91a,#0000 30% 70%,#0ea5e91a);animation:1.6s ease-in-out infinite ocrScanPulse;position:absolute;inset:0}.ocr-scan-status{color:#e0f2fe;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ac7;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;bottom:14px;left:14px}.ocr-scan-pulse{background:#38bdf8;border-radius:999px;width:9px;height:9px;animation:1.2s infinite ocrPulseDot;box-shadow:0 0 #38bdf8cc}.ocr-result-meta{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.ocr-result-meta span{color:#475569;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:5px 9px;font-size:12px}@keyframes ocrScanDown{0%{opacity:0;top:-12%}12%{opacity:1}50%{opacity:1}to{opacity:0;top:104%}}@keyframes ocrScanPulse{0%,to{opacity:.45}50%{opacity:.9}}@keyframes ocrPulseDot{0%{box-shadow:0 0 #38bdf8cc}70%{box-shadow:0 0 0 8px #38bdf800}to{box-shadow:0 0 #38bdf800}}@media (width<=980px){.ocr-layout-review__topbar,.ocr-layout-review__body{flex-direction:column;grid-template-columns:1fr}.ocr-layout-canvas-stage img{width:92vw}}[data-tooltip]{position:relative}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{content:attr(data-tooltip);z-index:60;color:#fff;pointer-events:none;background:#0f172af0;border-radius:10px;width:max-content;max-width:260px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.35;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 14px 30px #0f172a2e}.ocr-demo-page{border:none}.ocr-demo-container{width:100%;padding:0 1.25rem 4rem}.ocr-demo-hero{padding:1.6rem 1.25rem .85rem}.ocr-demo-hero h2{letter-spacing:-.035em;margin:0 0 .65rem;font-size:clamp(1.8rem,3.3vw,3.4rem);line-height:1.08}.ocr-review-panel--modern{background:linear-gradient(#ffffffeb,#f8fafcf5);grid-template-columns:minmax(0,1.18fr) minmax(360px,.62fr);width:min(1480px,100%);min-height:760px;padding:0}.ocr-review-panel__preview--canvas{justify-content:stretch;align-items:stretch;padding:1rem}.ocr-review-panel__sidebar--modern{background:#ffffffb8;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.ocr-review-heading h2{letter-spacing:-.02em;margin:0 0 .55rem;font-size:1.7rem}.ocr-file-meta--compact{grid-template-columns:1fr;margin-top:0}.ocr-file-meta--compact span{align-items:center;gap:6px;display:inline-flex}.ocr-mode-grid{gap:.85rem;display:grid}.ocr-mode-card{appearance:none;text-align:left;color:var(--ocr-text);cursor:pointer;background:radial-gradient(circle at 0 0,#2563eb1a,#0000 26%),#ffffffe6;border:1px solid #0f172a14;border-radius:20px;grid-template-columns:46px minmax(0,1fr);gap:.9rem;padding:1rem;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid}.ocr-mode-card:hover:not(:disabled){border-color:#2563eb4d;transform:translateY(-2px);box-shadow:0 18px 42px #0f172a1a}.ocr-mode-card:disabled{opacity:.64;cursor:not-allowed}.ocr-mode-card__icon{color:#1d4ed8;background:#2563eb1a;border-radius:16px;place-items:center;width:46px;height:46px;display:grid}.ocr-mode-card__body{gap:.38rem;min-width:0;display:grid}.ocr-mode-card__topline{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ocr-mode-card strong{font-size:1rem}.ocr-mode-card em{color:#0369a1;background:#0ea5e91c;border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800}.ocr-mode-card span,.ocr-mode-card small{line-height:1.45}.ocr-mode-card small{color:#1d4ed8;font-weight:800}.ocr-review-tip{color:var(--ocr-text-soft);background:#2563eb12;border:1px solid #2563eb1c;border-radius:16px;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;display:flex}.ocr-review-tip p{margin:0;font-size:.92rem;line-height:1.55}.ocr-action-row--sticky{margin-top:auto}.ocr-action-row--toolbar{flex-direction:column;align-items:center;display:flex}.ocr-action-row--toolbar,.ocr-action-row--tight{align-items:center;margin-top:0}.ocr-action-row--tight{gap:.5rem}.btn-primary,.btn-secondary{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.ocr-review-workspace{flex-direction:column;gap:1rem;width:min(1520px,100%);display:flex}.ocr-review-workspace__topbar{border-radius:var(--ocr-radius-xl);border:1px solid var(--ocr-border);background:var(--ocr-surface);box-shadow:var(--ocr-shadow);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.35rem 1.45rem;display:flex}.ocr-review-workspace__topbar h2{letter-spacing:-.02em;margin:0 0 .45rem;font-size:1.6rem}.ocr-review-workspace__topbar p{max-width:760px;color:var(--ocr-text-soft);margin:0;line-height:1.65}.ocr-review-workspace__body{grid-template-columns:minmax(0,1fr) 360px;gap:1rem;display:grid}.ocr-canvas-column{flex-direction:column;gap:.75rem;min-width:0;display:flex}.ocr-canvas-shell{isolation:isolate;touch-action:none;background-color:#f8fafc;background-image:linear-gradient(45deg,#94a3b817 25%,#0000 25%),linear-gradient(-45deg,#94a3b817 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#94a3b817 75%),linear-gradient(-45deg,#0000 75%,#94a3b817 75%),none;background-position:0 0,0 13px,13px -13px,-13px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:26px 26px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border:1px solid #0f172a17;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 22px 48px #0f172a14}.ocr-canvas-shell.pan-mode{cursor:grab}.ocr-canvas-shell.pan-mode:active{cursor:grabbing}.ocr-canvas-stage{transform-origin:0 0;transition:transform 80ms;position:absolute;top:0;left:0}.ocr-canvas-stage img{-webkit-user-select:none;user-select:none;pointer-events:none;background:#fff;border-radius:12px;width:100%;height:100%;display:block;box-shadow:0 16px 34px #0f172a24}.ocr-canvas-svg{cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.ocr-canvas-svg.is-pan-mode{pointer-events:none}.ocr-canvas-floating-controls{z-index:25;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem;display:inline-flex;position:absolute;top:14px;left:14px;box-shadow:0 14px 34px #0f172a1f}.ocr-icon-button,.ocr-tool-button{appearance:none;cursor:pointer;color:#334155;background:#ffffffe6;border:1px solid #0f172a14;place-items:center;transition:transform .16s,background .16s,color .16s,border-color .16s;display:inline-grid}.ocr-icon-button{border-radius:999px;width:34px;height:34px}.ocr-tool-button{border-radius:14px;width:40px;height:40px}.ocr-icon-button:hover,.ocr-tool-button:hover:not(:disabled),.ocr-tool-button.active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb47;transform:translateY(-1px)}.ocr-tool-button.danger:hover:not(:disabled){color:#b91c1c;background:#fef2f2;border-color:#b91c1c38}.ocr-tool-button:disabled{opacity:.45;cursor:not-allowed}.ocr-canvas-zoom-pill,.ocr-canvas-mode-pill{color:#475569;background:#f8fafceb;border:1px solid #0f172a0f;border-radius:999px;align-items:center;gap:.35rem;height:34px;padding:0 .6rem;font-size:12px;font-weight:800;display:inline-flex}.ocr-tool-strip{background:#ffffffdb;border:1px solid #0f172a14;border-radius:18px;align-items:center;gap:.45rem;width:fit-content;padding:.45rem;display:inline-flex;box-shadow:0 16px 34px #0f172a14}.ocr-tool-strip--inline{box-shadow:none;background:#f8fafce6}.ocr-tool-strip__divider{background:#0f172a1a;width:1px;height:28px}.ocr-layout-box{fill:#2563eb21;stroke:#2563ebf2;stroke-width:2px;cursor:move;vector-effect:non-scaling-stroke}.ocr-layout-box.ocr-disabled{fill:#94a3b824;stroke:#64748bd1;stroke-dasharray:8 5}.ocr-layout-box.selected{fill:#0ea5e92e;stroke:#0284c7;stroke-width:3px}.ocr-layout-box.creating{fill:#22c55e24;stroke:#16a34a;stroke-dasharray:8 5}.ocr-layout-label{fill:#0f172a;paint-order:stroke;stroke:#fffffff0;stroke-width:5px;stroke-linejoin:round;pointer-events:none;font-size:18px;font-weight:900}.ocr-layout-label.selected{fill:#fffffff0;stroke:#0284c7;stroke-width:3px}.ocr-layout-resize-handle{fill:#fff;stroke:#0284c7;stroke-width:2px;cursor:nwse-resize;vector-effect:non-scaling-stroke}.ocr-modern-sidebar{min-width:0}.ocr-sidebar-hero-card{flex-direction:row;align-items:center}.ocr-sidebar-hero-card svg{color:#1d4ed8}.ocr-line-polygon{fill:#10b98129;stroke:#059669eb;stroke-width:2px;cursor:move;vector-effect:non-scaling-stroke}.ocr-line-polygon.disabled{fill:#94a3b821;stroke:#64748bd1;stroke-dasharray:7 5}.ocr-line-polygon.selected{fill:#0ea5e92e;stroke:#0284c7;stroke-width:3px}.ocr-line-point-handle{fill:#fff;stroke:#0284c7;stroke-width:2px;cursor:grab;vector-effect:non-scaling-stroke}.ocr-line-label{font-size:16px}.ocr-line-draft-polyline,.ocr-line-brush-path{fill:none;stroke-width:3px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.ocr-line-draft-polyline{stroke:#2563eb;stroke-dasharray:8 5}.ocr-line-brush-path{stroke:#f97316;opacity:.9}.ocr-draft-toolbar{background:#eff6ffeb;border:1px solid #2563eb29;border-radius:16px;flex-wrap:wrap;align-items:center;gap:.65rem;padding:.7rem .85rem;display:flex}.ocr-draft-toolbar span{color:#1d4ed8;font-size:13px;font-weight:800}.ocr-result-topbar--modern,.ocr-result-tabs--modern{align-items:center}.ocr-result-tabs--modern button{align-items:center;gap:.45rem;display:inline-flex}.ocr-map-view{grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:1rem;display:grid}.ocr-map-view__canvas-panel,.ocr-map-view__text-panel{border:1px solid var(--ocr-border);min-width:0;box-shadow:var(--ocr-shadow);background:#ffffffdb;border-radius:24px;overflow:hidden}.ocr-map-toolbar,.ocr-map-text-header{border-bottom:1px solid #0f172a12;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.ocr-map-toolbar p,.ocr-map-text-header span{color:var(--ocr-text-soft);margin:.25rem 0 0;font-size:.9rem}.ocr-map-polygon{fill:#2563eb1c;stroke:#2563ebe6;stroke-width:2px;cursor:pointer;vector-effect:non-scaling-stroke;transition:fill .12s,stroke .12s}.ocr-map-polygon:hover,.ocr-map-polygon.active{fill:#f9731638;stroke:#ea580c;stroke-width:3px}.ocr-map-view__text-panel{flex-direction:column;max-height:780px;display:flex}.ocr-map-line-list{flex-direction:column;gap:.65rem;padding:.85rem;display:flex;overflow:auto}.ocr-map-line-card{appearance:none;text-align:left;cursor:pointer;background:#fff;border:1px solid #0f172a14;border-radius:16px;gap:.45rem;width:100%;padding:.85rem .95rem;transition:transform .12s,background .12s,border-color .12s,box-shadow .12s;display:grid}.ocr-map-line-card:hover,.ocr-map-line-card.active{background:#fff7ed;border-color:#ea580c4d;transform:translateY(-1px);box-shadow:0 12px 28px #ea580c1a}.ocr-map-line-card__meta{color:#64748b;font-size:12px;font-weight:800}.ocr-map-line-card__text{color:var(--ocr-text);font-size:1.02rem;line-height:1.65}.ocr-map-empty{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:16px;padding:1rem;line-height:1.55}@media (width<=1120px){.ocr-review-panel--modern,.ocr-review-workspace__body,.ocr-map-view{grid-template-columns:1fr}.ocr-review-panel__sidebar--modern{border-top:1px solid #0f172a0f}}@media (width<=720px){.ocr-review-workspace__topbar,.ocr-map-toolbar,.ocr-map-text-header{flex-direction:column;align-items:flex-start}.ocr-tool-strip{max-width:100%;overflow-x:auto}.ocr-canvas-floating-controls{max-width:calc(100% - 28px);overflow-x:auto}}.ocr-review-panel__preview--canvas{justify-content:stretch;align-items:stretch;min-width:0;display:flex}.ocr-review-panel__preview--canvas .ocr-canvas-shell{flex:auto;width:100%}.ocr-canvas-shell{width:100%;min-width:0}.ocr-canvas-stage img{object-fit:fill!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important}.ocr-canvas-shell{overscroll-behavior:contain;touch-action:none;overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none}.ocr-canvas-shell *{-webkit-user-select:none;user-select:none}.ocr-canvas-floating-controls{z-index:30;pointer-events:auto;-webkit-user-select:none;user-select:none;overflow:visible}.ocr-canvas-floating-controls button,.ocr-canvas-floating-controls span{-webkit-user-select:none;user-select:none}.ocr-canvas-floating-controls .ocr-icon-button{position:relative}.ocr-canvas-floating-controls .ocr-icon-button:after{content:attr(data-tooltip);z-index:9999;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;color:#fff;background:#0f172af5;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1;position:absolute;top:calc(100% + 10px);bottom:auto;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a38}.ocr-canvas-floating-controls .ocr-icon-button:before{content:"";z-index:9999;pointer-events:none;opacity:0;visibility:hidden;border-bottom:6px solid #0f172af5;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.ocr-canvas-floating-controls .ocr-icon-button:hover:after,.ocr-canvas-floating-controls .ocr-icon-button:hover:before,.ocr-canvas-floating-controls .ocr-icon-button:focus-visible:after,.ocr-canvas-floating-controls .ocr-icon-button:focus-visible:before{opacity:1;visibility:visible}.ocr-canvas-zoom-pill,.ocr-canvas-mode-pill{pointer-events:none}.ocr-line-top-tools{z-index:40;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex;position:relative}.ocr-line-padding-strip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:.55rem;min-height:42px;padding:.35rem .45rem .35rem .65rem;display:inline-flex;box-shadow:0 14px 30px #0f172a14}.ocr-line-padding-strip strong{color:#334155;margin-right:.1rem;font-size:.78rem}.ocr-line-padding-strip label{color:#64748b;align-items:center;gap:.3rem;font-size:.75rem;font-weight:800;display:inline-flex}.ocr-line-padding-strip input{color:#0f172a;background:#fff;border:1px solid #94a3b88c;border-radius:999px;outline:none;width:58px;height:30px;padding:0 .45rem;font-size:.78rem;font-weight:800}.ocr-line-padding-strip input:focus{border-color:#2563ebb3;box-shadow:0 0 0 3px #2563eb1f}.ocr-mini-action{appearance:none;color:#334155;cursor:pointer;background:#f8fafcf2;border:1px solid #0f172a14;border-radius:999px;min-height:30px;padding:0 .65rem;font-size:.75rem;font-weight:900}.ocr-mini-action.primary{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#0000}.ocr-mini-action:disabled{opacity:.45;cursor:not-allowed}.ocr-tool-button:disabled{opacity:.42;cursor:not-allowed;transform:none}.ocr-tool-button{position:relative}.ocr-tool-button:after,.ocr-mini-action:after{content:attr(data-tooltip);z-index:999;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;color:#fff;background:#0f172af5;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800;line-height:1;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a38}.ocr-tool-button:hover:after,.ocr-tool-button:focus-visible:after,.ocr-mini-action:hover:after,.ocr-mini-action:focus-visible:after{opacity:1;visibility:visible}@media (width<=920px){.ocr-line-padding-strip{border-radius:18px;flex-wrap:wrap}.ocr-line-padding-strip input{width:64px}}.ocr-review-workspace,.ocr-review-workspace__body,.ocr-canvas-column,.ocr-line-top-tools,.ocr-tool-strip,.ocr-line-padding-strip,.ocr-canvas-floating-controls{overflow:visible!important}.ocr-line-top-tools{z-index:300;position:relative}.ocr-tool-strip,.ocr-line-padding-strip{z-index:301;position:relative}.ocr-tool-button,.ocr-mini-action,.ocr-canvas-floating-controls .ocr-icon-button{position:relative}.ocr-tool-button:after,.ocr-mini-action:after,.ocr-canvas-floating-controls .ocr-icon-button:after,.ocr-tool-button:before,.ocr-mini-action:before,.ocr-canvas-floating-controls .ocr-icon-button:before{z-index:99999}.ocr-tool-button:after,.ocr-mini-action:after,.ocr-canvas-floating-controls .ocr-icon-button:after{white-space:nowrap;max-width:240px;left:50%;transform:translate(-50%);top:calc(100% + 10px)!important;bottom:auto!important}.ocr-tool-button:before,.ocr-mini-action:before,.ocr-canvas-floating-controls .ocr-icon-button:before{left:50%;transform:translate(-50%);border-top:none!important;border-bottom:6px solid #0f172af5!important;top:calc(100% + 4px)!important;bottom:auto!important}.ocr-canvas-shell{z-index:1;position:relative}.ocr-canvas-floating-controls{z-index:200}.ocr-processing-panel__timeline--ambient{background:radial-gradient(circle at 100% 0,#2563eb1a,#0000 30%),radial-gradient(circle at 0 100%,#10b98114,#0000 34%),linear-gradient(#fffffff5,#f8fafceb);position:relative;overflow:hidden}.ocr-processing-title-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.ocr-processing-title-row h2{margin-bottom:.65rem}.ocr-processing-spark{color:#2563eb;background:radial-gradient(circle at top,#2563eb2e,#0000 58%),#2563eb14;border:1px solid #2563eb24;border-radius:18px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 14px 34px #2563eb24}.ocr-processing-orb-card{color:#e5edff;background:linear-gradient(135deg,#0f172af5,#1e293beb),radial-gradient(circle at 100% 0,#38bdf847,#0000 34%);border:1px solid #0f172a14;border-radius:26px;align-items:center;gap:1.1rem;margin-top:1.65rem;padding:1.25rem;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 55px #0f172a2e}.ocr-processing-orb-card:before{content:"";background:linear-gradient(115deg,#0000 35%,#ffffff14,#0000 62%);animation:3.8s ease-in-out infinite ocrAmbientSweep;position:absolute;inset:-40%}.ocr-processing-orb{flex:none;place-items:center;width:104px;height:104px;display:grid;position:relative}.ocr-processing-orb__ring{border:1px solid #7dd3fc6b;border-radius:999px;position:absolute;inset:8px}.ocr-processing-orb__ring--one{border-top-color:#fffffff2;animation:8s linear infinite ocrOrbSpin}.ocr-processing-orb__ring--two{border-left-color:#34d399f2;animation:5.8s linear infinite ocrOrbSpinReverse;inset:20px}.ocr-processing-orb__core{color:#fff;z-index:2;background:radial-gradient(circle at 35% 25%,#ffffff57,#0000 38%),linear-gradient(135deg,#2563eb,#0f766e);border-radius:22px;place-items:center;width:58px;height:58px;display:grid;position:relative;box-shadow:0 0 0 8px #2563eb1a,0 18px 34px #0ea5e942}.ocr-processing-orb-card__copy{z-index:2;flex-direction:column;gap:.4rem;display:flex;position:relative}.ocr-processing-orb-card__copy strong{color:#fff;font-size:1.05rem}.ocr-processing-orb-card__copy span{color:#e2e8f0db;font-size:.94rem;line-height:1.65}.ocr-processing-progress{background:#ffffffbd;border:1px solid #0f172a12;border-radius:20px;margin-top:1.35rem;padding:1rem}.ocr-processing-progress__top{color:#475569;justify-content:space-between;align-items:center;margin-bottom:.7rem;font-size:.88rem;font-weight:800;display:flex}.ocr-processing-progress__top strong{color:#0f172a}.ocr-processing-progress__track{background:#94a3b838;border-radius:999px;height:10px;overflow:hidden}.ocr-processing-progress__fill{border-radius:inherit;background:linear-gradient(90deg,#2563eb,#06b6d4,#10b981);height:100%;transition:width .32s;box-shadow:0 0 24px #2563eb52}.ocr-abstract-flow{grid-template-columns:1fr;gap:.7rem;margin-top:1.1rem;display:grid}.ocr-abstract-flow__item{opacity:.68;background:#ffffff9e;border:1px solid #0f172a0f;border-radius:18px;align-items:center;gap:.85rem;padding:.85rem;transition:opacity .18s,transform .18s,border-color .18s,background .18s;display:flex}.ocr-abstract-flow__item.active{opacity:1;background:#2563eb12;border-color:#2563eb38;transform:translateY(-1px);box-shadow:0 12px 28px #2563eb14}.ocr-abstract-flow__item.complete{opacity:1}.ocr-abstract-flow__icon{color:#2563eb;background:#2563eb14;border-radius:16px;flex:none;place-items:center;width:42px;height:42px;display:grid}.ocr-abstract-flow__item.complete .ocr-abstract-flow__icon{color:#059669;background:#05966917}.ocr-abstract-flow__item div:last-child{flex-direction:column;gap:.18rem;display:flex}.ocr-abstract-flow__item strong{color:#0f172a;font-size:.95rem}.ocr-abstract-flow__item span{color:#64748b;font-size:.83rem;font-weight:700}.ocr-processing-soft-note{color:#475569;background:#f1f5f9bf;border-radius:18px;align-items:flex-start;gap:.75rem;margin-top:1.15rem;padding:.95rem 1rem;display:flex}.ocr-processing-soft-note p{margin:0;font-size:.9rem;line-height:1.65}.ocr-processing-soft-note__pulse{background:#2563eb;border-radius:999px;flex:none;width:10px;height:10px;margin-top:.43rem;animation:1.35s infinite ocrSoftPulse;box-shadow:0 0 #2563eb8c}@keyframes ocrAmbientSweep{0%{opacity:0;transform:translate(-35%)rotate(0)}35%{opacity:1}to{opacity:0;transform:translate(35%)rotate(8deg)}}@keyframes ocrOrbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ocrOrbSpinReverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes ocrSoftPulse{0%{box-shadow:0 0 #2563eb8c}70%{box-shadow:0 0 0 8px #2563eb00}to{box-shadow:0 0 #2563eb00}}@media (width<=720px){.ocr-processing-orb-card{align-items:flex-start}.ocr-processing-orb{width:86px;height:86px}.ocr-processing-orb__core{width:52px;height:52px}}.ocr-document-intel{background:#ffffffb8;border:1px solid #0f172a14;border-radius:16px;gap:10px;padding:14px;display:grid}.ocr-document-intel.compact{border-radius:14px;padding:12px}.ocr-document-intel__header{justify-content:space-between;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ocr-document-intel__header span{align-items:center;gap:7px;display:inline-flex}.ocr-document-intel__status{color:#64748b;font-size:12px}.ocr-document-intel__grid{grid-template-columns:minmax(90px,.8fr) minmax(0,1fr);align-items:center;gap:8px 10px;font-size:12px;display:grid}.ocr-document-intel__grid.horizontal{align-items:center;gap:10px;font-size:12px;display:flex}.ocr-document-intel__grid span{color:#64748b}.ocr-document-intel__grid strong{color:#0f172a;word-break:break-word;font-weight:700}.ocr-document-intel__grid select{background:#fff;border:1px solid #0f172a1f;border-radius:10px;width:100%;padding:7px 9px;font-size:12px}.ocr-mini-button{cursor:pointer;background:#ffffffe6;border:1px solid #0f172a1a;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.ocr-mini-button:disabled{opacity:.55;cursor:not-allowed}.ocr-inline-document-meta{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.ocr-inline-document-meta span{color:#334155;background:#0f172a0a;border:1px solid #0f172a14;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.ocr-review-panel__preview--canvas{position:relative;overflow:hidden}.ocr-document-analysis-overlay{z-index:5;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ad1;border-radius:18px;gap:5px;min-width:230px;padding:14px 16px;display:grid;position:absolute;top:18px;right:18px;box-shadow:0 18px 45px #0f172a47}.ocr-document-analysis-overlay strong{font-size:13px}.ocr-document-analysis-overlay small{color:#ffffffc2;font-size:11px}.ocr-document-analysis-overlay__scanner{background:#ffffff2e;border-radius:999px;width:100%;height:4px;overflow:hidden}.ocr-document-analysis-overlay__scanner span{border-radius:inherit;background:#ffffffeb;width:38%;height:100%;animation:1.2s ease-in-out infinite ocr-scan-slide;display:block}.ocr-document-analysis-progress{background:radial-gradient(circle at 20% 10%,#3b82f629,#0000 32%),#f8fafcf0;border:1px solid #2563eb24;border-radius:18px;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:14px;padding:16px;display:grid;position:relative;box-shadow:0 14px 34px #0f172a14}.ocr-document-analysis-progress strong{color:#0f172a;margin-bottom:4px;font-size:14px;display:block}.ocr-document-analysis-progress p{color:#64748b;margin:0;font-size:12px;line-height:1.45}.ocr-document-analysis-progress__visual{width:64px;height:78px;position:relative}.ocr-document-analysis-progress__page{background:#fff;border:1px solid #0f172a1f;border-radius:12px;position:absolute;inset:0;overflow:hidden;box-shadow:0 10px 24px #0f172a1a}.ocr-document-analysis-progress__scanline{background:#2563ebe6;height:3px;animation:1.35s ease-in-out infinite ocr-page-scan;position:absolute;top:8px;left:0;right:0;box-shadow:0 0 18px #2563eb9e}.ocr-document-analysis-progress__block{background:#2563eb29;border-radius:999px;height:8px;position:absolute;left:11px;right:11px}.ocr-document-analysis-progress__block.one{top:22px}.ocr-document-analysis-progress__block.two{top:38px;right:20px}.ocr-document-analysis-progress__block.three{top:54px;right:15px}.ocr-document-analysis-progress__pulse{border:1px solid #2563eb3d;border-radius:18px;animation:1.35s ease-in-out infinite ocr-analysis-pulse;position:absolute;inset:-8px}@keyframes ocr-page-scan{0%{opacity:.35;transform:translateY(0)}50%{opacity:1}to{opacity:.35;transform:translateY(58px)}}@keyframes ocr-scan-slide{0%{transform:translate(-110%)}50%{transform:translate(85%)}to{transform:translate(280%)}}@keyframes ocr-analysis-pulse{0%{opacity:.3;transform:scale(.96)}50%{opacity:.85;transform:scale(1.02)}to{opacity:.3;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.ocr-document-analysis-overlay__scanner span,.ocr-document-analysis-progress__scanline,.ocr-document-analysis-progress__pulse{animation:none}}.ocr-text-layer-toggle{background:#ffffffbf;border:1px solid #0f172a1f;border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.ocr-text-layer-toggle button{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.45rem .75rem;font-size:.8rem;font-weight:700}.ocr-text-layer-toggle button.active{color:#fff;background:#0f172a}.ocr-modal-backdrop{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.ocr-postprocess-modal{background:#fff;border-radius:24px;width:min(560px,100%);overflow:hidden;box-shadow:0 24px 80px #0f172a3d}.ocr-postprocess-modal__header{border-bottom:1px solid #0f172a14;justify-content:space-between;gap:1rem;padding:1.4rem 1.5rem;display:flex}.ocr-postprocess-modal__header h3{margin:.35rem 0}.ocr-postprocess-modal__header p{color:#64748b;margin:0;font-size:.9rem}.ocr-postprocess-close{cursor:pointer;background:#0f172a0f;border:none;border-radius:999px;width:34px;height:34px;font-size:1.25rem}.ocr-postprocess-form{gap:1rem;padding:1.5rem;display:grid}.ocr-postprocess-form label{color:#0f172a;gap:.45rem;font-weight:800;display:grid}.ocr-postprocess-form select,.ocr-correction-text-pair textarea{width:100%;font:inherit;background:#fff;border:1px solid #0f172a24;border-radius:12px;padding:.75rem .85rem}.ocr-postprocess-note{color:#334155;background:#3b82f614;border:1px solid #3b82f62e;border-radius:14px;padding:.85rem;font-size:.9rem}.ocr-postprocess-actions{justify-content:flex-end;gap:.75rem;display:flex}.ocr-postprocess-error{color:#991b1b;background:#fee2e2b3;border:1px solid #dc262638;border-radius:14px;margin:1rem 0;padding:.85rem 1rem}.ocr-correction-drawer{z-index:65;background:#fff;border-left:1px solid #0f172a14;flex-direction:column;width:min(460px,100vw);height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-20px 0 70px #0f172a2e}.ocr-correction-drawer__header{border-bottom:1px solid #0f172a14;justify-content:space-between;gap:1rem;padding:1.25rem;display:flex}.ocr-correction-drawer__header h3{margin:.35rem 0}.ocr-correction-drawer__header p{color:#64748b;margin:0;font-size:.9rem}.ocr-correction-summary{border-bottom:1px solid #0f172a14;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:1rem;display:grid}.ocr-correction-summary div{text-align:center;background:#f8fafc;border-radius:14px;padding:.7rem}.ocr-correction-summary strong{color:#0f172a;display:block}.ocr-correction-summary span{color:#64748b;font-size:.75rem}.ocr-correction-empty{color:#64748b;border:1px dashed #0f172a29;border-radius:16px;margin:1rem;padding:1rem}.ocr-correction-list{flex:1;gap:1rem;padding:1rem;display:grid;overflow:auto}.ocr-correction-card{background:#fff;border:1px solid #0f172a1a;border-radius:18px;padding:1rem}.ocr-correction-card--low{border-color:#22c55e47}.ocr-correction-card--medium{border-color:#f59e0b52}.ocr-correction-card--high{border-color:#ef444452}.ocr-correction-card__top{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.ocr-correction-line-link{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-weight:800}.ocr-correction-card__top span{color:#334155;background:#f1f5f9;border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:800}.ocr-correction-text-pair{gap:.75rem;display:grid}.ocr-correction-text-pair div{background:#f8fafc;border-radius:14px;padding:.75rem}.ocr-correction-text-label{color:#64748b;margin-bottom:.35rem;font-size:.75rem;font-weight:800;display:block}.ocr-correction-text-pair p{color:#0f172a;white-space:pre-wrap;margin:0;line-height:1.55}.ocr-correction-changes{gap:.4rem;margin-top:.75rem;display:grid}.ocr-correction-changes div{background:#0f172a0a;border-radius:12px;gap:.15rem;padding:.55rem;display:grid}.ocr-correction-changes strong{color:#475569;text-transform:capitalize;font-size:.72rem}.ocr-correction-changes span{color:#0f172a;font-size:.85rem}.ocr-correction-reason{color:#64748b;margin:.75rem 0 0;font-size:.85rem;line-height:1.45}.ocr-correction-card__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.9rem;display:flex}.ocr-correction-badge{border-radius:999px;width:fit-content;margin-top:.35rem;padding:.2rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.ocr-correction-badge--suggested{color:#1d4ed8;background:#3b82f61f}.ocr-correction-badge--approved{color:#15803d;background:#22c55e1f}.ocr-correction-badge--edited{color:#7e22ce;background:#a855f71f}.ocr-correction-badge--rejected{color:#475569;background:#64748b1f}.ocr-map-text-line--suggested{border-color:#3b82f659}.ocr-map-text-line--approved{border-color:#22c55e59}.ocr-map-active-line-correction{background:#0f172a0a;border-radius:14px;gap:.5rem;margin-bottom:.75rem;padding:.75rem;display:grid}.ocr-map-active-line-correction small{color:#64748b;font-weight:800}.ocr-map-active-line-correction p{white-space:pre-wrap;margin:0}.ocr-correction-card--active-line{border-color:#2563ebb8;transform:translateY(-1px);box-shadow:0 0 0 3px #2563eb21,0 18px 42px #0f172a1f}.ocr-correction-card--selected-line{background:linear-gradient(#3b82f60f,#3b82f60f),#fff}.ocr-correction-card__badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:inline-flex}.ocr-correction-card__badges span,.ocr-correction-view-badge{color:#334155;background:#f1f5f9;border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:800}.ocr-correction-view-badge{color:#1d4ed8!important;background:#2563eb1f!important}.ocr-map-refine-workspace{flex-direction:column;gap:.9rem;display:flex}.ocr-map-refine-toolbar{z-index:50;flex-wrap:wrap;align-items:center;gap:.7rem;display:flex;position:relative;overflow:visible}.ocr-map-refine-mode-toggle,.ocr-map-tool-strip,.ocr-map-padding-strip,.ocr-map-recognition-strip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:.45rem;min-height:42px;padding:.35rem;display:inline-flex;overflow:visible;box-shadow:0 14px 30px #0f172a14}.ocr-map-refine-mode-toggle button,.ocr-map-tool-button,.ocr-map-mini-action{appearance:none;color:#475569;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;min-height:32px;padding:0 .75rem;font-size:.8rem;font-weight:900;transition:background .16s,color .16s,transform .16s;display:inline-flex;position:relative}.ocr-map-tool-button{width:34px;padding:0}.ocr-map-refine-mode-toggle button.active,.ocr-map-tool-button.active{color:#0f172a;background:#fff;box-shadow:0 8px 18px #0f172a14}.ocr-map-tool-button.danger{color:#b91c1c}.ocr-map-tool-button:hover:not(:disabled),.ocr-map-mini-action:hover:not(:disabled){transform:translateY(-1px)}.ocr-map-tool-button:disabled,.ocr-map-mini-action:disabled{opacity:.45;cursor:not-allowed;transform:none}.ocr-map-tool-divider{background:#94a3b859;width:1px;height:20px}.ocr-map-padding-strip strong,.ocr-map-recognition-strip span{color:#475569;margin-left:.25rem;font-size:.76rem;font-weight:900}.ocr-map-padding-strip label{color:#64748b;align-items:center;gap:.25rem;font-size:.75rem;font-weight:900;display:inline-flex}.ocr-map-padding-strip input{color:#0f172a;border:1px solid #94a3b88c;border-radius:999px;outline:none;width:56px;height:30px;padding:0 .45rem;font-size:.78rem;font-weight:900}.ocr-map-padding-strip input:focus{border-color:#2563ebb8;box-shadow:0 0 0 3px #2563eb1f}.ocr-map-mini-action{color:#334155;background:#f8fafcf2;border:1px solid #0f172a14}.ocr-map-mini-action.primary{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#0000;box-shadow:0 12px 24px #2563eb2e}.ocr-map-refine-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.42fr);gap:1rem;display:grid}.ocr-map-refine-canvas-card,.ocr-map-refine-side-card{background:#ffffffdb;border:1px solid #0f172a14;border-radius:24px;overflow:hidden;box-shadow:0 18px 45px #0f172a14}.ocr-map-refine-canvas-card{min-width:0}.ocr-map-refine-canvas{border-radius:24px}.ocr-map-refine-side-card{flex-direction:column;gap:.85rem;max-height:760px;padding:1rem;display:flex}.ocr-map-refine-summary{background:radial-gradient(circle at 100% 0,#2563eb1a,#0000 36%),#f8fafcf2;border:1px solid #0f172a0f;border-radius:20px;flex-direction:column;gap:.3rem;padding:1rem;display:flex}.ocr-map-refine-summary span{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:900}.ocr-map-refine-summary strong{color:#0f172a;font-size:1.1rem}.ocr-map-refine-summary small{color:#475569;line-height:1.5}.ocr-map-active-line-card{background:#2563eb0f;border:1px solid #2563eb1f;border-radius:18px;padding:.9rem}.ocr-map-active-line-card span{color:#2563eb;margin-bottom:.35rem;font-size:.75rem;font-weight:900;display:block}.ocr-map-active-line-card p{color:#0f172a;margin:0;line-height:1.6}.ocr-map-text-line-list{flex-direction:column;gap:.45rem;padding-right:.2rem;display:flex;overflow:auto}.ocr-map-text-line{appearance:none;cursor:pointer;background:#f8fafcc7;border:1px solid #0f172a12;border-radius:16px;grid-template-columns:34px minmax(0,1fr);gap:.65rem;padding:.75rem;transition:background .16s,border-color .16s,transform .16s;display:grid}.ocr-map-text-line:hover,.ocr-map-text-line.hovered,.ocr-map-text-line.selected{background:#2563eb12;border-color:#2563eb38;transform:translateY(-1px)}.ocr-map-text-line span{color:#2563eb;background:#fff;border-radius:12px;place-items:center;width:30px;height:30px;font-size:.78rem;font-weight:900;display:grid}.ocr-map-text-line p{color:#0f172a;margin:0;font-size:.93rem;line-height:1.55}.ocr-map-region-polygon{fill:#2563eb21;stroke:#2563ebeb;stroke-width:3px;cursor:pointer;transition:fill .14s,stroke .14s,stroke-width .14s}.ocr-region-editor-overlay.is-editable .ocr-map-region-polygon{cursor:move}.ocr-map-region-group.hovered .ocr-map-region-polygon,.ocr-map-region-group.selected .ocr-map-region-polygon,.ocr-map-region-group.active .ocr-map-region-polygon{fill:#0ea5e930;stroke:#0284c7;stroke-width:5px}.ocr-map-region-group.disabled .ocr-map-region-polygon{fill:#94a3b81f;stroke:#64748bc7;stroke-dasharray:9 5}.ocr-map-region-handle{fill:#fff;stroke:#0284c7;stroke-width:2.5px;cursor:grab;filter:drop-shadow(0 5px 10px #0f172a2e)}.ocr-map-region-label{fill:#0f172a;paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round;pointer-events:none;font-size:17px;font-weight:900}.ocr-map-tool-button:after{content:attr(data-tooltip);z-index:99999;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;color:#fff;background:#0f172af5;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800;line-height:1;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a38}.ocr-map-tool-button:hover:after,.ocr-map-tool-button:focus-visible:after{opacity:1;visibility:visible}@media (width<=1080px){.ocr-map-refine-grid{grid-template-columns:1fr}.ocr-map-refine-side-card{max-height:none}}.ocr-map-text-line>span{transition:background .16s,color .16s,box-shadow .16s,transform .16s}.ocr-map-text-line.hovered>span,.ocr-map-text-line.active>span,.ocr-map-text-line.selected>span{color:#fff;background:#2563eb;transform:scale(1.04);box-shadow:0 0 0 4px #2563eb1f,0 10px 24px #2563eb38}.ocr-map-region-label{paint-order:stroke;stroke:#fffffff2;stroke-width:4px;stroke-linejoin:round;font-weight:900;transition:fill .16s,stroke .16s,transform .16s}.ocr-map-reocr-canvas-status{z-index:25;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172ae6;border:1px solid #ffffff24;border-radius:18px;align-items:center;gap:.75rem;max-width:min(360px,100% - 2rem);padding:.85rem 1rem;display:flex;position:absolute;top:1rem;left:1rem;box-shadow:0 20px 45px #0f172a47}.ocr-map-reocr-canvas-status strong{font-size:.9rem;line-height:1.25;display:block}.ocr-map-reocr-canvas-status small{color:#e2e8f0db;margin-top:.18rem;font-size:.78rem;font-weight:700;display:block}.ocr-map-reocr-spinner{border:2px solid #ffffff47;border-top-color:#fff;border-radius:999px;flex:none;width:16px;height:16px;animation:.8s linear infinite ocrMapReOcrSpin}.ocr-map-reocr-side-status{color:#1e3a8a;background:#2563eb14;border:1px solid #2563eb29;border-radius:16px;align-items:center;gap:.65rem;margin:.8rem 0;padding:.75rem .85rem;display:flex}.ocr-map-reocr-side-status p{margin:0;font-size:.84rem;font-weight:700;line-height:1.45}.ocr-map-reocr-side-status--done{color:#065f46;background:#05966914;border-color:#0596692e}.ocr-map-reocr-side-status--done>span{background:#10b981;border-radius:999px;flex:none;width:10px;height:10px;box-shadow:0 0 0 5px #10b9811f}.ocr-map-text-line__body{flex-direction:column;gap:.28rem;min-width:0;display:flex}.ocr-map-text-line__body p{margin:0}.ocr-map-text-line__status{color:#1d4ed8;letter-spacing:.01em;background:#2563eb1a;border-radius:999px;width:fit-content;padding:.22rem .5rem;font-size:.72rem;font-weight:900}.ocr-map-text-line__status--done{color:#047857;background:#0596691a}.ocr-map-text-line.reocr-running{background:linear-gradient(90deg,#2563eb1a,#ffffffdb);border-color:#2563eb47}.ocr-map-text-line.reocr-running>span{color:#fff;background:#2563eb;animation:1s ease-in-out infinite ocrMapIndexPulse}.ocr-map-text-line.reocr-done{border-color:#05966938}.ocr-map-text-line.reocr-done>span{color:#fff;background:#10b981;box-shadow:0 0 0 4px #10b98124,0 10px 24px #10b98133}.ocr-map-region-label-bg{fill:#ffffffeb;stroke:#0f172a2e;stroke-width:1.5px;filter:drop-shadow(0 8px 14px #0f172a38);transition:fill .16s,stroke .16s,transform .16s}.ocr-map-region-label{fill:#0f172a;stroke:none;dominant-baseline:central;font-size:15px;font-weight:950}.ocr-map-region-group.hovered .ocr-map-region-label-bg,.ocr-map-region-group.active .ocr-map-region-label-bg,.ocr-map-region-group.selected .ocr-map-region-label-bg{fill:#2563eb;stroke:#fffffff2}.ocr-map-region-group.hovered .ocr-map-region-label,.ocr-map-region-group.active .ocr-map-region-label,.ocr-map-region-group.selected .ocr-map-region-label{fill:#fff}.ocr-map-region-group.reocr-running .ocr-map-region-label-bg{fill:#2563eb;stroke:#fffffff2;animation:1s ease-in-out infinite ocrMapIndexPulse}.ocr-map-region-group.reocr-running .ocr-map-region-label{fill:#fff}.ocr-map-region-group.reocr-done .ocr-map-region-label-bg{fill:#10b981;stroke:#fffffff2}.ocr-map-region-group.reocr-done .ocr-map-region-label{fill:#fff}.ocr-map-region-label-spinner{fill:#2563eb;stroke:#fffffff2;stroke-width:3px;stroke-dasharray:28 18;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;animation:.9s linear infinite ocrMapReOcrSpinSvg}@keyframes ocrMapReOcrSpin{to{transform:rotate(360deg)}}@keyframes ocrMapReOcrSpinSvg{to{transform:rotate(360deg)}}@keyframes ocrMapIndexPulse{0%,to{filter:drop-shadow(0 0 #2563eb00);transform:scale(1)}50%{filter:drop-shadow(0 0 10px #2563eb8c);transform:scale(1.08)}}.ocr-region-editor-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.ocr-region-editor-mode-toggle{background:#ffffffd9;border:1px solid #0f172a1f;border-radius:999px;display:inline-flex;overflow:hidden}.ocr-region-editor-mode-toggle button{cursor:pointer;background:0 0;border:0;padding:.45rem .85rem}.ocr-region-editor-mode-toggle button.active{color:#fff;background:#111827}.ocr-region-tool-strip,.ocr-region-padding-strip,.ocr-region-recognition-strip,.ocr-region-draft-toolbar{flex-wrap:wrap;align-items:center;gap:.45rem;display:inline-flex}.ocr-region-tool-button{cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.ocr-region-tool-button.active{color:#fff;background:#111827}.ocr-region-tool-button.danger{color:#b91c1c}.ocr-region-tool-button:disabled,.ocr-region-mini-action:disabled{opacity:.45;cursor:not-allowed}.ocr-region-tool-divider{background:#0f172a1f;width:1px;height:24px}.ocr-region-padding-strip{background:#ffffffbf;border:1px solid #0f172a14;border-radius:12px;padding:.45rem .6rem}.ocr-region-padding-strip input{width:64px}.ocr-region-mini-action{cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:9px;padding:.4rem .65rem}.ocr-region-mini-action.primary{color:#fff;background:#111827}.ocr-region-recognition-strip{background:#0f172a0a;border-radius:12px;padding:.45rem .6rem}.ocr-region-draft-toolbar{background:#fffc;border:1px dashed #0f172a33;border-radius:12px;width:100%;padding:.55rem .7rem}.ocr-map-refine-canvas-card{position:relative}.ocr-map-overlay-controls{z-index:8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ab8;border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 28px);padding:7px;display:flex;top:14px;left:14px;box-shadow:0 14px 34px #0f172a2e}.ocr-map-overlay-chip{color:#ffffffd6;cursor:pointer;background:#ffffff1f;border:0;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700;transition:background .14s,color .14s,transform .14s}.ocr-map-overlay-chip:hover:not(:disabled){color:#fff;background:#fff3;transform:translateY(-1px)}.ocr-map-overlay-chip.active{color:#0f172a;background:#fff}.ocr-map-overlay-controls__divider{background:#ffffff38;width:1px;height:18px}.ocr-map-overlay-focus-hint{z-index:8;color:#475569;background:#fffffff0;border-radius:12px;max-width:260px;padding:8px 11px;font-size:12px;position:absolute;top:62px;left:18px;box-shadow:0 12px 28px #0f172a24}.ocr-line-region.dimmed{opacity:.12}.ocr-line-region.dimmed polygon,.ocr-line-region.dimmed path,.ocr-line-region.dimmed rect{stroke-width:1px}.ocr-line-region.focused polygon,.ocr-line-region.focused path,.ocr-line-region.focused rect,.ocr-line-region.active polygon,.ocr-line-region.active path,.ocr-line-region.active rect,.ocr-line-region.hovered polygon,.ocr-line-region.hovered path,.ocr-line-region.hovered rect{opacity:1;stroke-width:3px;filter:drop-shadow(0 0 8px #2563eb73)}.ocr-line-region__label{pointer-events:none}@media (width<=720px){.ocr-map-overlay-controls{background:#0f172adb;border-radius:14px;margin-bottom:10px;position:static}.ocr-map-overlay-focus-hint{margin:0 0 10px;position:static}}.ocr-map-region-group.dimmed{opacity:.14}.ocr-map-region-group.dimmed .ocr-map-region-polygon{stroke-width:1px}.ocr-map-region-group.focused .ocr-map-region-polygon,.ocr-map-region-group.active .ocr-map-region-polygon,.ocr-map-region-group.hovered .ocr-map-region-polygon{opacity:1;stroke-width:3px;filter:drop-shadow(0 0 8px #2563eb73)}.ocr-map-region-group.focused .ocr-map-region-label-group,.ocr-map-region-group.active .ocr-map-region-label-group,.ocr-map-region-group.hovered .ocr-map-region-label-group{opacity:1}.ocr-map-region-label-group{pointer-events:none}.ocr-correction-diff-text{white-space:normal;overflow-wrap:anywhere;unicode-bidi:plaintext;line-height:1.8}.ocr-correction-diff-word{display:inline}.ocr-correction-diff-token{border-radius:.35rem;padding:.05rem .18rem;font-weight:800}.ocr-correction-diff-token--removed{color:#991b1b;background:#ef444429;text-decoration:line-through;text-decoration-thickness:1.5px}.ocr-correction-diff-token--added{color:#166534;background:#22c55e2e}.ocr-correction-change-original,.ocr-correction-change-suggested{border-radius:999px;padding:.12rem .42rem;font-weight:800}.ocr-correction-change-original{color:#991b1b;background:#ef44441f;text-decoration:line-through}.ocr-correction-change-suggested{color:#166534;background:#22c55e24}.ocr-correction-change-arrow{color:#64748b;margin:0 .35rem;font-weight:900;display:inline-flex}.ocr-direction-rtl .ocr-correction-change-arrow{transform:scaleX(-1)}
