.diff-editors{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.diff-editor{min-width:0}.diff-editor label{padding:14px 18px;margin:0;background:#f1f5f3;border-bottom:1px solid var(--border)}
.diff-editor textarea{display:block;resize:vertical;width:100%;min-height:300px;border:0;padding:18px;font:14px/1.7 Consolas,monospace;color:#263b30;background:white;tab-size:4}
.diff-editor textarea:focus{outline:2px solid #167451;outline-offset:-2px}
.diff-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.diff-actions .primary{width:auto;margin:0;padding:12px 24px}
.diff-actions button:not(.primary),.diff-navigation button{background:white;border:1px solid #cbd9d0;border-radius:6px;padding:9px 14px;color:#345c44;font-size:14px}
.diff-status{margin:22px 0;color:#4c6b57;font-size:14px}
.diff-result-toolbar{padding:18px;display:flex;align-items:center;flex-wrap:wrap;gap:14px}
#diff-summary{font:13px Consolas,monospace;color:#586f61}.diff-navigation{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#diff-position{font-size:12px;color:#62786a}
.diff-result-scroll{overflow:auto;max-height:650px}
.diff-column-headings,.diff-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:620px}
.diff-column-headings{position:sticky;top:0;z-index:1;background:#eef3ef;border-block:1px solid #d6e1d9}
.diff-column-headings strong{padding:12px 16px;font-size:14px}
.diff-row{border-bottom:1px solid #eef1ef}
.diff-cell{display:flex;align-items:stretch;min-width:0;font:13px/1.8 Consolas,monospace}
.diff-cell:first-child{border-right:1px solid #ccd9d0}
.diff-number{width:44px;flex-shrink:0;padding:3px 7px;text-align:right;color:#78877e;background:#00000004;user-select:none}
.diff-sign{width:20px;flex-shrink:0;padding-top:3px;text-align:center;user-select:none}
.diff-cell code{padding:3px 8px 3px 2px;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;tab-size:4}
.diff-cell.removed{background:#fff0ef;color:#7f2222}.diff-cell.added{background:#eaf8ed;color:#225e35}
.diff-cell.gap{background:repeating-linear-gradient(135deg,#f2f4f3,#f2f4f3 5px,#e9eeeb 5px,#e9eeeb 6px)}
.diff-cell mark{color:inherit;border-radius:2px}.removed mark{background:#f7bbbb}.added mark{background:#afe3bb}
.diff-empty{font-style:italic;opacity:.7;font-size:12px}.current-change{outline:2px solid #547caa;outline-offset:-2px}
@media(max-width:650px){.diff-editors{gap:10px}.diff-editor label{padding:12px 10px;font-size:13px}.diff-editor textarea{padding:10px;font-size:13px;min-height:240px}.diff-result-toolbar{padding:14px}}
