/* 模板审核区样式：原文优先、局部高亮、规则按需展开；只负责视觉布局，不改变审核或取值规则。 */
.analysis-panel{padding:22px 0 0;background:transparent;border:0}
.analysis-heading{align-items:center;margin-bottom:18px}.analysis-heading h2{font-size:19px}
.analysis-warnings{max-height:120px;overflow:auto}
.review-workspace{grid-template-columns:minmax(0,1.35fr) minmax(340px,1fr);gap:24px;align-items:start}
#review-source{border:0;border-top:3px solid #457883;background:#fff;min-width:0}
#review-source .document-preview{max-height:76vh;padding:20px 24px 28px;scrollbar-gutter:stable}
#review-source .section-title{margin-bottom:2px}#document-summary{margin:4px 0 16px}
.selection-toolbar{position:sticky;top:-20px;z-index:2;background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0;margin-bottom:16px}
.selection-line{display:flex;align-items:center;gap:8px;min-height:30px;margin-bottom:7px}
#selection-text{flex:1;min-width:0;font-size:12px;color:#53707a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.selection-line .icon-button{width:28px;height:28px;min-height:28px;padding:5px}
.selection-actions{display:flex;gap:8px;align-items:center}.selection-actions button{min-height:34px;font-size:12px;padding:6px 10px}
.selection-actions #undo-rule{margin-left:auto;width:34px;height:34px}
.document-block{padding:15px 0;border-color:#edf1f2}.document-block-meta{font-size:10px;color:#8a989e}
.document-block-meta:has(.source-table-action){display:flex;align-items:center;justify-content:space-between}.source-table-action{width:30px;height:30px;min-height:30px;padding:5px}
.source-text{white-space:pre-wrap;user-select:text;line-height:1.9}.source-text:empty::before{content:" ";white-space:pre}
.review-mark{border:0;border-bottom:2px solid #ce9c34;background:#fff0c6;color:inherit;cursor:pointer;border-radius:2px;padding:1px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.review-mark.confirmed{border-color:#31967b;background:#e5f3ee}.review-mark.fixed{border-color:#adbac3;background:#edf1f4}
.review-mark:focus-visible{outline:2px solid #34899a;outline-offset:2px}.review-flash{outline:2px solid #72b0b8;outline-offset:3px}
.review-source-active{outline:2px solid #227c68;outline-offset:2px;background:#d9eee7!important;scroll-margin:65px}
.review-rule-active>.rule-summary{box-shadow:inset 3px 0 #227c68}
.rule-comparison,.column-comparison{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.rule-sample,.column-sample,.rule-binding{min-width:0}
.rule-sample h4,.column-sample h4{font-size:11px;line-height:1.6;color:#697b84;font-weight:400;margin:0 0 7px}
.rule-binding{display:flex;flex-direction:column;gap:12px}
.rule-sample .rule-actions{flex-wrap:wrap;margin-top:10px}.rule-fixed-content .rule-binding{margin-top:12px}
.rule-evidence textarea{min-height:64px!important;resize:vertical}.rule-location{font:11px/1.6 Consolas,monospace;color:#758890;overflow-wrap:anywhere}
.erp-binding-reference{display:flex;flex-direction:column;gap:4px;min-width:0;border-left:2px solid #b7c8cf;padding-left:9px}
.erp-binding-heading{font-size:11px;line-height:1.5;color:#52666e;font-weight:600}
.erp-binding-path{font-size:12px;line-height:1.7;color:#516a72;overflow-wrap:anywhere}
.erp-description-heading{margin-top:4px}.erp-binding-description{font-size:12px;line-height:1.7;color:#516a72;overflow-wrap:anywhere}
.column-sample .rule-quote{margin-bottom:7px}
@media(min-width:1280px){.rule-comparison,.column-comparison{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr)}}
.table-owned{background:#edf7f4!important}.preview-table-wrap th{background:#f0f4f6}
.review-decisions{max-height:76vh;padding:0 6px 16px 0;scrollbar-gutter:stable}
.review-decisions .document-type-field{margin:0 0 18px;grid-template-columns:68px minmax(0,1fr)}
.review-group{margin-top:17px;padding-top:15px}.review-group h3{font-size:13px;margin-bottom:10px;color:#41555e}
.review-group h3 span{font-variant-numeric:tabular-nums;color:#77878e}
.review-decisions .rule-item{display:block;background:transparent;border:0;border-bottom:1px solid #dfe5e7;padding:0;margin:0}
.rule-summary,.column-summary{display:flex;align-items:center;gap:10px;min-height:64px;padding:12px 8px;cursor:pointer;list-style:none}
.rule-summary::-webkit-details-marker,.column-summary::-webkit-details-marker{display:none}
.rule-summary::after,.column-summary::after{content:"";width:7px;height:7px;border-right:1.5px solid #788a91;border-bottom:1.5px solid #788a91;transform:rotate(-45deg);flex-shrink:0;margin:0 4px}
.rule-item[open]>.rule-summary::after,.column-disclosure[open]>.column-summary::after{transform:rotate(45deg)}
.rule-item[open]>.rule-summary,.column-disclosure[open]>.column-summary{color:#156954;background:#f1f7f5}
.rule-summary:hover,.column-summary:hover{background:#f5f8f8}
.rule-summary:focus-visible,.column-summary:focus-visible{outline:2px solid #34899a;outline-offset:-2px}
.rule-number{color:#95a2a8;font-size:11px;font-variant-numeric:tabular-nums;width:20px;flex-shrink:0}
.rule-caption,.column-caption{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.rule-title,.column-name{font-size:13px;line-height:1.6;min-width:0;overflow-wrap:anywhere;font-weight:600}
.rule-mapping,.column-mapping{font-size:12px;line-height:1.6;color:#647980;overflow-wrap:anywhere}
.rule-status{font-size:10px;flex-shrink:0}
.rule-summary>.rule-status{background:transparent;border:0;padding:0;color:#94651c}
.rule-summary>.rule-status.passed{color:#26735e}.rule-summary>.rule-status.neutral{color:#72818a}
.rule-body{display:flex;flex-direction:column;gap:12px;padding:0 6px 18px 34px;min-width:0}
.rule-quote{margin:0;padding:10px 12px;border-left:2px solid #b7c8cf;background:#f1f5f6;color:#415a65;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;max-height:110px;overflow:auto}
.rule-body .anchor-state{font-size:11px;color:#758890;margin:0}
.rule-actions{display:flex;gap:6px;border-bottom:1px dashed #dfe5e7;padding-bottom:10px}
.rule-actions button:last-child{margin-left:auto;color:#a75b51}
.rule-body .review-field{gap:6px}.rule-body .review-field>span{font-size:11px;color:#697b84}
.rule-body input,.rule-body select{height:38px;font-size:13px}.rule-body textarea{font-size:13px;min-height:76px}
.rule-body .review-approval input{height:16px;width:16px}.rule-body .review-approval{font-size:12px;line-height:1.6}
.mapping-choice{display:flex;flex-direction:column;gap:7px}.mapping-choice select{width:100%}
.erp-field-picker{display:flex;flex-direction:column;gap:10px;min-width:0}
.erp-search-results{border:1px solid #cbdcda;background:#fff;border-radius:4px;overflow:hidden}
.erp-search-status{margin:0!important;padding:8px 10px;background:#edf5f3;color:#486961!important;font-size:12px!important}
.erp-result-list{max-height:224px;overflow:auto;overscroll-behavior:contain}
.erp-search-result{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #edf0f1;border-radius:0;text-align:left;white-space:normal;min-height:58px;overflow-wrap:anywhere}
.erp-search-result strong{font-size:13px;line-height:1.5}.erp-search-result span,.erp-search-result small{font-size:11px;color:#6a7c83;line-height:1.5}.erp-search-result[aria-pressed=true]{background:#eaf5ef}
.mapping-search.has-selection{border-color:#8caea3;background:#fbfdfc;color:#365d50}
.review-empty{margin:0;padding:15px 0;color:#8a989e;font-size:12px;border-bottom:1px solid var(--border)}
.table-rule-item{display:block;border-bottom:1px solid var(--border);padding:0}
.table-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;line-height:1.7;padding:12px 6px;cursor:pointer;overflow-wrap:anywhere}
.table-summary .rule-status{flex-shrink:0}.table-rule-item.review-pending>.table-summary{border-left:3px solid #c28a2c;padding-left:10px;color:#75551f}
.table-rule-body{padding:0 6px 16px}.table-editor-host{display:flex;flex-direction:column;gap:12px}
.template-form{background:#fff;padding:20px 24px 0;margin-top:22px;border-top:1px solid var(--border)}
.template-form .form-actions{padding:16px 0;margin-bottom:0}.template-form .template-boundary{margin-bottom:0}
.review-provenance{margin:14px 0}.review-workspace .badge{white-space:normal}
.table-review-nav{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;padding:8px 0;background:#fff}
.table-review-nav button{min-height:34px;max-width:100%;padding:6px 9px;font-size:12px;border-radius:4px;white-space:normal;overflow-wrap:anywhere}
.table-review-nav button[aria-expanded=true]{border-color:#427f71;background:#edf7f3}
.table-review-nav button.pending{border-bottom:3px solid #c28a2c}
.table-original-preview{min-width:0;margin-bottom:12px}.table-original-preview h4{font-size:12px;margin:8px 0}
.table-original-scroll{overflow:auto;max-height:240px;border:1px solid var(--border)}
.table-original-scroll table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:12px}
.table-original-scroll td,.table-original-scroll th{padding:7px;border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere}
.table-original-scroll th{width:32px;background:#f1f4f5;color:#71818a;font-weight:400;text-align:center}
.table-original-scroll .goods-region td{background:#e9f5ef}
.table-field-links{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.table-field-links button{font-size:12px;min-height:32px}
.table-analysis-actions,.table-candidate-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.table-analysis-actions button,.table-candidate-actions button{font-size:12px;min-height:34px}
.table-analysis-issue{margin:10px 0;font-size:12px;line-height:1.7;color:#955b13;overflow-wrap:anywhere}
.xlsx-validation-item{padding:12px 0;border-bottom:1px solid var(--border);font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.xlsx-validation-item strong{font-size:12px}.xlsx-validation-item p{margin:5px 0 10px;color:#955b13}
.xlsx-validation-item input{width:16px;height:16px;flex-shrink:0}
.table-candidate{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0;margin-bottom:12px}
.table-candidate h4{font-size:13px;margin:0 0 8px}.table-candidate p,.table-candidate li{font-size:12px;overflow-wrap:anywhere}
.product-column-list{border-top:1px solid var(--border)}
.product-column{display:block;border:0;border-bottom:1px solid var(--border);padding:0;margin:0;position:relative}
.product-column .column-legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.column-status{font-size:11px;color:#26735e;flex-shrink:0}.column-pending .column-status{color:#94651c}
.product-column-body{display:flex;flex-direction:column;gap:12px;padding:14px 12px 18px 38px;min-width:0;background:#fbfcfc}
.product-column-body>.review-field>span{font-size:11px;color:#697b84}
.product-column-body input,.product-column-body select{height:38px;font-size:13px}
.product-column-body textarea{font-size:13px;min-height:76px}
.product-column-body .review-approval{font-size:12px;line-height:1.6}
.product-column-body .review-approval input{width:16px;height:16px;flex-shrink:0}
@media(max-width:1050px){.review-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);gap:16px}#review-source .document-preview{padding:16px}.rule-body{padding-left:15px}.selection-toolbar{top:-16px}}
@media(max-width:760px){.review-workspace{grid-template-columns:minmax(0,1fr);gap:18px}#review-source .document-preview{max-height:480px}.review-decisions{max-height:none;overflow:visible;padding:0}.rule-summary,.column-summary{gap:8px;padding-left:4px;padding-right:4px}.rule-body,.product-column-body{padding-left:12px}.rule-body input,.rule-body select,.rule-body textarea,.product-column-body input,.product-column-body select,.product-column-body textarea{font-size:16px}.template-form{padding:18px 14px 0}.analysis-heading{align-items:flex-start;gap:10px;flex-direction:column}#review-summary{white-space:normal}.selection-actions button{min-height:38px}.product-row-range{gap:8px}}
