*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif;color:#1f2937;background:#f5f6f8}.app{display:flex;flex-direction:column;height:100vh}header{padding:10px 14px;background:#1f3a5f;color:#fff}.muted{color:#9aa7b4}header .muted{color:#cbd5e1}.toolbar{display:flex;gap:14px;align-items:end;padding:10px 14px;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.toolbar label{display:flex;flex-direction:column;font-size:12px;color:#6b7280;gap:3px}.toolbar input,.toolbar select{padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px}.toolbar button{padding:7px 12px;border:0;border-radius:6px;background:#1f3a5f;color:#fff;cursor:pointer}.toolbar button:disabled{background:#9aa7b4;cursor:not-allowed}.external-chip{align-self:center;display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:12px;font-weight:650;white-space:nowrap}.external-chip.ok{border-color:#16a34a;background:#ecfdf5;color:#166534}.external-chip.missing{border-color:#dc2626;background:#fff1f2;color:#991b1b}.external-chip.unknown{border-color:#94a3b8;background:#f8fafc;color:#475569}.long-op{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid #fed7aa;background:#fff7ed;color:#7c2d12;font-size:13px}.long-op-spinner{width:17px;height:17px;flex:0 0 auto;border:2px solid #fdba74;border-top-color:#9a3412;border-radius:50%;animation:long-op-spin .8s linear infinite}.long-op-copy{min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.long-op-copy b{color:#7c2d12}.long-op-copy span{font-variant-numeric:tabular-nums;color:#9a3412}.long-op-copy em{font-style:normal;color:#92400e;overflow-wrap:anywhere}@keyframes long-op-spin{to{transform:rotate(360deg)}}.msg{padding:6px 14px;background:#eef2ff;color:#3730a3;font-size:13px;border-bottom:1px solid #e0e7ff}.external-gate{padding:10px 14px;border-bottom:1px solid #fecaca;background:#fff7f7;color:#7f1d1d;font-size:13px}.external-gate-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.external-gate-head button{padding:5px 10px;border:1px solid #dc2626;border-radius:6px;background:#fff;color:#991b1b;cursor:pointer;font-size:12px;font-weight:700}.external-gate-head button:disabled{color:#9aa7b4;border-color:#e2e8f0;cursor:not-allowed}.external-gate p{margin:6px 0 0;color:#991b1b;line-height:1.35}.external-gate-warn{font-weight:700}.external-gate ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:5px}.external-gate li{display:flex;align-items:center;gap:8px;min-width:0}.external-gate li span{flex:0 0 auto;min-width:78px;padding:2px 6px;border-radius:10px;background:#fee2e2;color:#7f1d1d;text-align:center;font-size:11px;font-weight:700}.external-gate code{min-width:0;color:#1f2937;font-size:12px;overflow-wrap:anywhere;white-space:normal}.worklist{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 14px;background:#fff;border-bottom:1px solid #e5e7eb}.worklist .wl-title{font-size:12px;color:#6b7280;margin-right:4px}.wl-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-family:ui-monospace,monospace;font-size:12px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;color:#1f2937;cursor:pointer}.wl-chip:hover{border-color:#94a3b8}.wl-chip.cur{border-color:#1f3a5f;background:#eef2ff;color:#1f3a5f}.wl-chip .wl-x{color:#9aa7b4;font-size:13px}.wl-chip .wl-x:hover{color:#dc2626}.wl-add{width:90px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px}.wl-file{display:inline-flex;align-items:center;font-size:12px;padding:4px 10px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#1f3a5f;cursor:pointer}.wl-file:hover{background:#eef2ff;border-color:#94a3b8}.wl-hint{padding:5px 14px;background:#f8fafc;color:#475569;font-size:12px;border-bottom:1px solid #eef2f7}.main{display:flex;flex:1;overflow:hidden}.canvas-col{flex:1;overflow:auto;padding:14px}.placeholder{color:#6b7280;padding:40px;text-align:center}.page-wrap{position:relative;box-shadow:0 1px 6px #0003;background:#fff}.page-img{position:absolute;top:0;left:0;-webkit-user-select:none;user-select:none}.overlay{position:absolute;top:0;left:0}.overlay .word{fill:transparent;stroke:transparent}.overlay .word-active{stroke:#2563eb59;stroke-width:1;cursor:pointer}.overlay .word-active:hover{fill:#2563eb2e}.overlay .word-sel{fill:#d977064d;stroke:#d97706;stroke-width:1.4;cursor:pointer}.overlay .gap-column rect{fill:#0e749024;stroke:#0e7490;stroke-width:1.2;cursor:pointer}.overlay .gap-column.sel rect{fill:#b4530938;stroke:#b45309;stroke-width:1.8}.overlay .gap-column text{pointer-events:none;fill:#0f172a;stroke:#fff;stroke-width:3px;paint-order:stroke;font:700 12px system-ui,sans-serif}.overlay .barcode-hit rect{fill:#a855f71a;stroke:#7c3aed;stroke-width:1.4;stroke-dasharray:6 3}.overlay .barcode-hit.active rect{fill:#a855f733;cursor:pointer}.overlay .barcode-hit.active:hover rect{fill:#a855f74d;stroke-width:2}.overlay .barcode-hit text{pointer-events:none;fill:#5b21b6;stroke:#fff;stroke-width:3px;paint-order:stroke;font:700 10px system-ui,sans-serif}.overlay .marked,.overlay .cover{pointer-events:none}.overlay .marked.value{fill:#10b98138;stroke:#059669;stroke-width:1.2}.overlay .marked.area{fill:#14b8a62e;stroke:#0f766e;stroke-width:1.3;stroke-dasharray:7 3}.overlay .marked.barcode{fill:#a855f72e;stroke:#7c3aed;stroke-width:1.3;stroke-dasharray:6 3}.overlay .marked.column{fill:#ea580c26;stroke:#ea580c;stroke-width:1.2}.overlay .marked.table_area{fill:#6366f114;stroke:#6366f1;stroke-dasharray:4 3}.overlay .marked.list{fill:#0d948829;stroke:#0d9488;stroke-width:1.2;stroke-dasharray:5 3}.overlay .drag{fill:#2563eb26;stroke:#2563eb;stroke-dasharray:4 2}.overlay .cover{fill:#fff;stroke:none}.panel{width:340px;background:#fff;border-left:1px solid #e5e7eb;padding:12px 14px;overflow:auto}.resizer{flex:0 0 6px;cursor:col-resize;background:#e5e7eb}.resizer:hover{background:#94a3b8}.main.dock-bottom{flex-direction:column}.main.dock-bottom .panel{width:auto!important;border-left:none;border-top:1px solid #e5e7eb}.main.dock-bottom .resizer,.resizer-bottom{cursor:row-resize}.dock-toggle{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:12px}.dock-toggle button{padding:3px 9px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#374151;cursor:pointer;font-size:12px}.dock-toggle button.on{background:#1f3a5f;color:#fff;border-color:#1f3a5f}.zone{border:1px solid #e5e7eb;border-radius:8px;margin:0 0 8px;overflow:hidden;background:#fff}.zone>summary{list-style:none;cursor:pointer;padding:7px 10px;font-size:12px;font-weight:600;color:#475569;background:#f8fafc;-webkit-user-select:none;user-select:none}.zone>summary::-webkit-details-marker{display:none}.zone>summary:before{content:"▸";margin-right:6px;color:#94a3b8}.zone[open]>summary:before{content:"▾"}.zone>*:not(summary){margin-left:10px;margin-right:10px}.zones{display:flex;flex-direction:column}.zones .zone{flex:0 0 auto}.zsplit{display:none}.main.dock-bottom .zones{flex-direction:row;align-items:stretch;height:calc(100% - 64px)}.main.dock-bottom .zones .zone{flex-grow:var(--zg, 1);flex-shrink:1;flex-basis:0;margin:0;min-width:0;overflow:auto}.main.dock-bottom .zsplit{display:block;flex:0 0 6px;align-self:stretch;cursor:col-resize;background:#cbd5e1;border-radius:3px;margin:0 2px}.main.dock-bottom .zsplit:hover{background:#94a3b8}[data-theme=dark] .main.dock-bottom .zsplit{background:#48484a}.theme-toggle{margin-left:12px;padding:4px 10px;border:1px solid rgba(255,255,255,.4);border-radius:6px;background:transparent;color:#fff;cursor:pointer;font-size:12px}.theme-toggle:hover{background:#ffffff1f}[data-theme=dark] body{background:#1e1e1f;color:#e8e8e6}[data-theme=dark] .toolbar,[data-theme=dark] .worklist{background:#262627;border-bottom-color:#3a3a3c}[data-theme=dark] .toolbar label,[data-theme=dark] .worklist .wl-title,[data-theme=dark] .only-testata,[data-theme=dark] .hint,[data-theme=dark] .placeholder,[data-theme=dark] .muted{color:#a6a6a3}[data-theme=dark] .toolbar input,[data-theme=dark] .toolbar select,[data-theme=dark] .wl-add,[data-theme=dark] .rules-label select,[data-theme=dark] .rule-term select{background:#2e2e30;border-color:#48484a;color:#e8e8e6}[data-theme=dark] .main .canvas-col,[data-theme=dark] .app.tone-fields .canvas-col,[data-theme=dark] .app.tone-anchors .canvas-col,[data-theme=dark] .app.tone-table .canvas-col,[data-theme=dark] .app.tone-forms .canvas-col,[data-theme=dark] .app.tone-rules .canvas-col,[data-theme=dark] .app.tone-summary .canvas-col{background:#1b1b1c!important}[data-theme=dark] .resizer{background:#3a3a3c}[data-theme=dark] .resizer:hover{background:#5a5a5c}[data-theme=dark] .panel{background:#262627;border-left-color:#3a3a3c}[data-theme=dark] .main.dock-bottom .panel{border-top-color:#3a3a3c}[data-theme=dark] .panel h3{color:#e8e8e6}[data-theme=dark] .zone{background:#2d2d2f;border-color:#3a3a3c}[data-theme=dark] .zone>summary{background:#1f1f21;color:#a6a6a3}[data-theme=dark] .dock-toggle button{background:#2e2e30;color:#cfcfcc;border-color:#48484a}[data-theme=dark] .dock-toggle button.on{background:#57575c;color:#fff;border-color:#6a6a6f}[data-theme=dark] .msg{background:#2d2d2f;color:#d4d4d1;border-bottom-color:#3a3a3c}[data-theme=dark] .long-op{background:#302824;border-bottom-color:#5c3a20;color:#fed7aa}[data-theme=dark] .long-op-spinner{border-color:#7c4a1e;border-top-color:#fdba74}[data-theme=dark] .long-op-copy b,[data-theme=dark] .long-op-copy span,[data-theme=dark] .long-op-copy em{color:#fed7aa}[data-theme=dark] .wl-chip{background:#2e2e30;border-color:#48484a;color:#e8e8e6}[data-theme=dark] .wl-chip.cur{background:#34363b;color:#dcdcd9;border-color:#6a6a6f}[data-theme=dark] .wl-file,[data-theme=dark] .wl-hint{background:#2e2e30;color:#cfcfcc;border-color:#48484a}[data-theme=dark] .field-card{background:#262627;border-color:#3a3a3c}[data-theme=dark] .field-card-head{background:#2d2d2f;border-bottom-color:#3a3a3c}[data-theme=dark] .field-card-head b,[data-theme=dark] .field-card dd{color:#e8e8e6}[data-theme=dark] .field-card-head span,[data-theme=dark] .field-card dt,[data-theme=dark] .field-card dd small{color:#a6a6a3}[data-theme=dark] .field-card-badge{background:#2e2e30;border-color:#48484a;color:#cfcfcc}[data-theme=dark] .date-conv-editor,[data-theme=dark] .inherit-editor{background:#2e2e30;border-top-color:#3a3a3c}[data-theme=dark] .date-conv-editor label,[data-theme=dark] .inherit-editor label{color:#a6a6a3}[data-theme=dark] .date-conv-editor select,[data-theme=dark] .inherit-editor select{background:#262627;border-color:#48484a;color:#e8e8e6}[data-theme=dark] .fields li:hover{background:#2d2d2f}[data-theme=dark] .fields li.sel{background:#34363b;border-color:#6a6a6f}[data-theme=dark] .fields .lbl{color:#e8e8e6}[data-theme=dark] .fields .code{color:#8a8a87}[data-theme=dark] .fields .field-group-label{background:#1f1f20;color:#a6a6a3;border-bottom-color:#3a3a3c}[data-theme=dark] .rules-panel{background:#2b2828;border-color:#45393b}[data-theme=dark] .rules-preview,[data-theme=dark] .rules-list li{background:#262627;border-color:#45393b;color:#e8e8e6}[data-theme=dark] .rules-list span{color:#e8e8e6}.panel h3{margin:4px 0 6px}.hint{font-size:12px;color:#6b7280;margin:0 0 10px}.field-card{margin:8px 0 12px;border:1px solid #dbe4ee;border-radius:8px;background:#f8fafc;overflow:hidden}.field-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #e5edf5;background:#fff}.field-card-head>div{min-width:0;display:flex;flex-direction:column;gap:2px}.field-card-head b{font-size:13px;color:#1f2937;line-height:1.2;overflow-wrap:anywhere}.field-card-head span{font-size:11px;color:#64748b;overflow-wrap:anywhere}.field-card-kicker{text-transform:uppercase;font-weight:700;letter-spacing:.04em;color:#475569!important}.field-card-loading{flex:0 0 auto;padding:2px 7px;border-radius:10px;background:#eef2ff;color:#3730a3!important;font-size:10px!important}.field-card dl{margin:0;padding:2px 10px 8px}.field-card-row{display:grid;grid-template-columns:74px minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid #edf2f7}.field-card-row:last-child{border-bottom:0}.field-card dt{font-size:10px;line-height:1.35;color:#64748b;text-transform:uppercase;font-weight:700}.field-card dd{margin:0;min-width:0;display:flex;flex-direction:column;gap:4px;font-size:12px;line-height:1.35;color:#1f2937;overflow-wrap:anywhere}.field-card dd small{color:#64748b;font-size:11px;line-height:1.35}.field-card-badge{align-self:flex-start;padding:2px 7px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:10px;line-height:1.2}.date-conv-editor{padding:8px 10px 10px;border-top:1px solid #e5edf5;background:#fff}.date-conv-editor label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;text-transform:uppercase;color:#64748b}.date-conv-editor select{width:100%;min-height:30px;padding:4px 7px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#1f2937;font-size:12px}.rules-panel{margin:8px 0 12px;padding:10px;border:1px solid #e3c4ca;border-radius:8px;background:#fff8fa;display:flex;flex-direction:column;gap:9px}.rules-head,.rules-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rules-head b,.rules-list-head b{color:#7f1d1d;font-size:13px}.rules-head span{color:#9f1239;font-size:11px}.rules-toggle{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px}.rules-toggle button,.rules-primary,.rules-secondary,.rules-refresh,.term-sign,.term-remove,.rules-list button{min-height:30px;border:1px solid #e3c4ca;background:#fff;color:#7f1d1d;border-radius:7px;cursor:pointer;font-size:12px}.rules-toggle button.on{background:#ffe4e6;border-color:#be123c;font-weight:700}.rules-toggle button:disabled,.rules-primary:disabled,.rules-secondary:disabled,.rules-refresh:disabled,.term-remove:disabled{color:#9aa7b4;background:#f8fafc;border-color:#e2e8f0;cursor:not-allowed}.rules-label{display:flex;flex-direction:column;gap:4px;color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase}.rules-label select,.rule-term select{min-width:0;width:100%;min-height:30px;padding:4px 7px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#1f2937;font-size:12px}.rules-terms{display:flex;flex-direction:column;gap:6px}.rule-term{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:5px;align-items:center}.term-sign,.term-remove{width:30px;padding:0;justify-content:center;font-weight:800}.rules-secondary{align-self:flex-start;padding:0 10px}.rules-primary{width:100%;background:#9f1239;color:#fff;border-color:#9f1239;font-weight:700}.rules-primary:hover{background:#881337}.rules-preview{min-height:32px;padding:8px 9px;border:1px solid #fecdd3;border-radius:7px;background:#fff;color:#1f2937;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.rules-alert{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 9px;border:1px solid #fca5a5;border-radius:7px;background:#fff1f2;color:#7f1d1d;font-size:12px;line-height:1.35}.rules-alert span{min-width:0;overflow-wrap:anywhere}.rules-alert button{min-height:28px;padding:0 10px;border:1px solid #be123c;border-radius:7px;background:#fff;color:#9f1239;font-size:12px;font-weight:700;cursor:pointer}.rules-alert button:disabled{color:#9aa7b4;border-color:#e2e8f0;background:#f8fafc;cursor:not-allowed}.rules-refresh{min-height:24px;padding:0 8px;font-size:11px}.rules-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.rules-list li{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:6px;align-items:center;padding:7px;border:1px solid #f1d2d8;border-radius:7px;background:#fff}.rules-list span{min-width:0;color:#1f2937;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.rules-list button{min-height:28px;width:28px;padding:0;font-weight:800}.rules-empty{margin:0;color:#64748b;font-size:12px;line-height:1.35}.fields{list-style:none;margin:0;padding:0}.fields li{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:6px;cursor:pointer;border:1px solid transparent}.fields .field-group-label{position:sticky;top:0;z-index:1;justify-content:space-between;margin-top:4px;padding:6px 8px 4px;border-radius:0;border:0;border-bottom:1px solid #e5e7eb;background:#fff;color:#64748b;cursor:default;text-transform:uppercase;font-size:10px;font-weight:800}.fields .field-group-label:hover{background:#fff}[data-theme=dark] .fields .field-group-label:hover{background:#1f1f20}.fields .field-group-label small{font-size:10px;color:inherit;font-weight:700}.fields li:hover{background:#f3f4f6}.fields li.sel{border-color:#2563eb;background:#eff6ff}.fields li.done .fn{color:#059669}.fields .fn{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.fields .lbl{font-size:13px;color:#1f2937}.fields .code{font-family:ui-monospace,monospace;font-size:10px;color:#9aa7b4}.only-testata{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;margin:0 0 8px;cursor:pointer}.only-testata input{width:auto}.markmode{display:flex;align-items:center;gap:6px;margin:0 0 8px}.markmode .mm-label{font-size:12px;color:#6b7280}.markmode .mm-sep{font-size:11px;color:#94a3b8;margin-left:6px;text-transform:uppercase;letter-spacing:.04em}.markmode.anchorrole{margin-top:-4px}.markmode.anchorrole button.on{background:#b45309;border-color:#b45309}.markmode button{padding:3px 10px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;cursor:pointer;color:#1f2937}.markmode button.on{background:#1f3a5f;color:#fff;border-color:#1f3a5f}.suggest{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 14px;background:#fef9e7;color:#7a5c00;font-size:13px;border-bottom:1px solid #f6e6b3}.suggest button{padding:3px 10px;border:1px solid #caa53a;background:#fff;border-radius:6px;font-size:12px;cursor:pointer;color:#7a5c00}.suggest .hint2{color:#a98b3a;font-size:11px}.v2-modebar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:#f8fafc;border-bottom:1px solid #dbe4ee}.family-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.family-tab-wrap{display:inline-flex;align-items:center;gap:3px}.family-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:8px;font-size:12px;cursor:pointer}.family-tabs button:hover{border-color:#64748b}.family-tabs button.on{border-color:#1f3a5f;background:#e8edf5;color:#1f3a5f;font-weight:650}.family-tabs button:disabled{color:#94a3b8;background:#f1f5f9;cursor:not-allowed}.family-tabs .family-help{justify-content:center;gap:0;width:26px;min-width:26px;min-height:30px;padding:0;border-radius:8px;color:#475569;font-weight:800}.family-tabs .family-help:hover{border-color:#64748b;background:#f8fafc;color:#1f3a5f}.family-tabs .family-help:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.family-icon,.chip-icon{font-family:ui-monospace,monospace;font-weight:800}.mode-chip{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:5px 10px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:12px;white-space:nowrap}.mode-chip .chip-field{max-width:260px;overflow:hidden;text-overflow:ellipsis;color:#64748b;border-left:1px solid #cbd5e1;padding-left:8px}.mode-chip.tone-fields{border-color:#059669;background:#ecfdf5;color:#065f46}.mode-chip.tone-anchors{border-color:#b45309;background:#fff7ed;color:#7c2d12}.mode-chip.tone-table{border-color:#0891b2;background:#ecfeff;color:#155e75}.mode-chip.tone-forms{border-color:#7c3aed;background:#f5f3ff;color:#5b21b6}.mode-chip.tone-rules{border-color:#be123c;background:#fff1f2;color:#9f1239}.mode-chip.tone-summary{border-color:#475569;background:#f1f5f9;color:#334155}.app.tone-fields .canvas-col{background:#eef8f3}.app.tone-anchors .canvas-col{background:#fff6eb}.app.tone-table .canvas-col{background:#ebf9fb}.app.tone-forms .canvas-col{background:#f6f2ff}.app.tone-rules .canvas-col{background:#fff1f3}.app.tone-summary .canvas-col{background:#eef2f7}.page-wrap.mode-anchor .overlay{cursor:copy}.page-wrap.mode-table_area .overlay,.page-wrap.mode-column .overlay,.page-wrap.mode-value .overlay,.page-wrap.mode-area .overlay,.page-wrap.mode-barcode .overlay{cursor:crosshair}.page-wrap.mode-footer .overlay{cursor:pointer}.page-wrap.mode-forms .overlay,.page-wrap.mode-rules .overlay,.page-wrap.mode-summary .overlay{cursor:default}.overlay .intent{pointer-events:none;fill:#0f172a0d;stroke:#0f172a;stroke-width:2;stroke-dasharray:7 4}.overlay .intent.value{fill:#10b9811f;stroke:#059669}.overlay .intent.area{fill:#14b8a61f;stroke:#0f766e}.overlay .intent.barcode{fill:#a855f71f;stroke:#7c3aed}.overlay .intent.column{fill:#0891b21f;stroke:#0891b2}.overlay .intent.table_area{fill:#6366f114;stroke:#4f46e5}.overlay .intent.list{fill:#0d94881f;stroke:#0d9488}.fields .form{font-size:11px;color:#6b7280}.fields .form.inferred{color:#b45309}.fields .form.confirmed{color:#059669}.fields .form.inherited{color:#2563eb}.btn-forms{margin-left:8px;font-size:11px;padding:2px 8px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;cursor:pointer;color:#1f3a5f}.btn-forms:hover{background:#eef2ff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:#fff;border-radius:10px;width:min(920px,94vw);max-height:88vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb}.modal-head button{padding:5px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;cursor:pointer}.modal-hint{margin:0;padding:10px 16px;font-size:12px;color:#475569;background:#f8fafc;border-bottom:1px solid #eef2f7}.forms-wrap{overflow:auto;padding:8px 16px 16px}.forms-tbl{width:100%;border-collapse:collapse;font-size:13px}.forms-tbl th{text-align:left;color:#6b7280;font-weight:600;font-size:11px;padding:6px 8px;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff}.forms-tbl td{padding:5px 8px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.forms-tbl td.mono{font-family:ui-monospace,monospace;font-size:11px;color:#64748b}.gap-tool{margin:8px 0 12px;padding:10px;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;display:flex;flex-direction:column;gap:8px}.gap-tool-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:#7c2d12}.gap-tool-actions,.gap-cols,.gap-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.gap-tool button{border:1px solid #fdba74;border-radius:7px;background:#fff;color:#7c2d12;padding:5px 8px;font-size:12px;cursor:pointer}.gap-tool button.on,.gap-tool .gap-save{background:#b45309;border-color:#b45309;color:#fff}.gap-tool button:disabled{background:#f1f5f9;border-color:#cbd5e1;color:#94a3b8;cursor:not-allowed}.gap-form label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#7c2d12}.gap-form input{width:86px;padding:5px 6px;border:1px solid #fdba74;border-radius:6px;font-size:12px}.gap-note,.gap-empty,.gap-source{margin:0;font-size:11px;line-height:1.35;color:#7c2d12}.forms-tbl select{padding:4px 6px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px}.forms-tbl .src{font-size:11px;padding:2px 7px;border-radius:10px}.forms-tbl .src.ok{background:#ecfdf5;color:#059669}.forms-tbl .src.inf{background:#fff7ed;color:#b45309}.forms-tbl .src.inherit{background:#eff6ff;color:#2563eb}.btn-confirm{padding:4px 10px;border:0;border-radius:6px;background:#1f3a5f;color:#fff;cursor:pointer;font-size:12px}.btn-confirm:disabled{background:#9aa7b4;cursor:not-allowed}.fields .badge{font-size:11px;color:#059669}.fields .anchor-tag{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#1f3a5f;background:#eef2ff;border:1px solid #dbe3f4;border-radius:10px;padding:1px 4px 1px 6px;max-width:150px}.fields .anchor-tag{overflow:hidden}.fields .anchor-x{border:0;background:transparent;color:#6b7280;cursor:pointer;font-size:12px;line-height:1;padding:0 1px}.fields .anchor-x:hover{color:#dc2626}.fields .fld-reset{border:0;background:transparent;color:#9aa7b4;cursor:pointer;font-size:14px;padding:0 2px;line-height:1}.fields .fld-reset:hover{color:#dc2626}.fields .fld-reset-all{border:1px solid #f0c9c9;background:#fff5f5;color:#b91c1c;cursor:pointer;font-size:10px;padding:1px 6px;border-radius:10px;line-height:1.4}.fields .fld-reset-all:hover{background:#dc2626;color:#fff;border-color:#dc2626}
