/* Existing three-column tables retain their original metrics and order. */
:root{--s-equal:#18483b;--s-equal-line:#5bbf95;--s-blue:#203f60;--s-red:#562c35;--s-grad-mid:#3c4d3b;--s-gold:#564623;--s-gray:#253844;--s-good-text:#b9f2d5;--s-warn-text:#ffe2a2;--s-chip-bg:var(--surface,#122330)}
:root[data-theme=light]{--s-equal:#e1f2e8;--s-equal-line:#328263;--s-blue:#dfecfc;--s-red:#fbe3df;--s-grad-mid:#e7eddd;--s-gold:#ffedc5;--s-gray:#e8edf2;--s-good-text:#175b3b;--s-warn-text:#835000}
.s-color-comparison tr.s-compare-match td{background:var(--s-equal);box-shadow:inset 0 -2px var(--s-equal-line)}
.s-color-comparison tr.s-compare-different td:nth-child(2){background:var(--s-blue);box-shadow:inset 0 -2px #598bc0}
.s-color-comparison tr.s-compare-different td:nth-child(3){background:var(--s-red);box-shadow:inset 0 -2px #cb777a}
.s-color-comparison tr.s-compare-partial td:nth-child(2){background:linear-gradient(90deg,var(--s-blue),var(--s-grad-mid))}
.s-color-comparison tr.s-compare-partial td:nth-child(3){background:linear-gradient(90deg,var(--s-grad-mid),var(--s-gold))}
.s-color-comparison tr.s-compare-normalized td:nth-child(2){background:linear-gradient(90deg,var(--s-blue),var(--s-grad-mid))}
.s-color-comparison tr.s-compare-normalized td:nth-child(3){background:linear-gradient(90deg,var(--s-grad-mid),var(--s-equal))}
.s-color-comparison tr.s-compare-unknown td{background:var(--s-gray)}
.s-compare-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.s-confidence{display:inline-block;font-size:11px;line-height:1.45;border-radius:4px;padding:1px 6px;border:1px solid var(--line,#526878);color:var(--ink,inherit);max-width:100%;white-space:nowrap}
.s-confidence-high{background:var(--s-equal);color:var(--s-good-text)}
.s-confidence-check{background:var(--s-gold);color:var(--s-warn-text)}
.s-confidence-missing,.s-confidence-hold{background:var(--s-gray)}
.s-confidence-excluded{background:var(--s-red)}
.s-spare-row[data-confidence=high]{box-shadow:inset 2px 0 var(--s-equal-line)}
.s-spare-row[data-confidence=check]{box-shadow:inset 2px 0 #c99f46}
.s-spare-row[data-confidence=missing]{box-shadow:inset 2px 0 #8294a2}
.s-spare-filters{margin:8px 0 10px;padding:8px;border:1px solid var(--line,#536575);border-radius:7px;color:inherit;min-width:0;max-width:100%;background:var(--s-chip-bg);font-size:12px;line-height:1.45}
.s-filter-heading{display:flex;align-items:center;gap:10px;margin-bottom:5px;flex-wrap:wrap}
.s-filter-heading>strong{font-size:12px;margin-right:auto}
.s-filter-text{border:0;background:transparent;padding:3px 0;color:var(--muted,inherit);font:inherit;font-size:11px;cursor:pointer}
.s-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.s-filter-chip{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;gap:2px;min-height:49px;min-width:0;padding:5px 8px;border:1px solid var(--line,#526878);border-radius:5px;background:transparent;color:var(--ink,inherit);font:inherit;font-size:13px;line-height:1.35;cursor:pointer;touch-action:manipulation}
.s-filter-chip::after{content:'↻';position:absolute;right:5px;top:4px;font-size:13px;line-height:1;color:inherit;opacity:.65;pointer-events:none}
.s-filter-chip.is-changed{background:var(--s-gold)}
.s-filter-label{font-size:13px;font-weight:650;color:var(--ink,inherit);padding-right:14px;max-width:100%;box-sizing:border-box;white-space:nowrap}
.s-filter-value{font-size:13px;font-weight:750;color:var(--ink,inherit);display:block;width:100%;white-space:nowrap}
.s-filter-notes-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:7px;color:var(--ink,inherit);font-size:13px;font-weight:600}
.s-filter-notes-line>span{flex:none}
.s-filter-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:7px}
.s-filter-query,.s-filter-notes{font:inherit;font-size:13px;padding:5px 7px;min-width:0;border:1px solid var(--line,#526878);border-radius:5px;background:transparent;color:inherit;flex:1;width:100%;box-sizing:border-box}
.s-filter-query{width:auto;min-width:120px;max-width:100%}
.s-filter-confidence{display:flex;gap:4px;flex-wrap:wrap}
.s-filter-confidence-button{font:inherit;font-size:11px;border:1px solid var(--line,#526878);border-radius:4px;min-height:29px;padding:3px 7px;background:transparent;color:inherit;cursor:pointer}
.s-filter-confidence-button[aria-pressed=true]{background:var(--surface-raised,#294352);box-shadow:inset 0 -2px currentColor}
.s-filter-confidence-button.s-confidence-high{color:var(--s-good-text)}.s-filter-confidence-button.s-confidence-check{color:var(--s-warn-text)}
.s-spare-filters .s-filter-status{font-size:11px;line-height:1.5;margin:6px 0 0;color:var(--muted,inherit);overflow-wrap:anywhere}
.s-live-snapshot{font-size:11px;color:var(--muted,inherit);margin:3px 0}
.s-spare-filters button:focus-visible,.s-spare-filters input:focus-visible{outline:2px solid var(--accent,#bc601d);outline-offset:2px}
.s-spare-filters [hidden]{display:none!important}
.k-content .s-filter-query,.k-content .s-filter-notes{min-height:32px;padding:5px 7px;font-size:13px;border-radius:5px;background:transparent;color:inherit}
.k-compare-row.s-compare-match .k-compare-values>div{background:var(--s-equal)}
.k-compare-row.s-compare-different .k-compare-values>div:first-child{background:var(--s-blue)}
.k-compare-row.s-compare-different .k-compare-values>div:last-child{background:var(--s-red)}
.k-compare-row:is(.s-compare-partial,.s-compare-normalized) .k-compare-values>div:first-child{background:linear-gradient(90deg,var(--s-blue),var(--s-grad-mid))}
.k-compare-row.s-compare-partial .k-compare-values>div:last-child{background:linear-gradient(90deg,var(--s-grad-mid),var(--s-gold))}
.k-compare-row.s-compare-normalized .k-compare-values>div:last-child{background:linear-gradient(90deg,var(--s-grad-mid),var(--s-equal))}
.k-compare-row.s-compare-unknown .k-compare-values>div{background:var(--s-gray)}
@media(max-width:600px){.s-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.s-filter-chip{min-height:49px;padding:5px 6px}.s-filter-query,.s-filter-notes,.k-content .s-filter-query,.k-content .s-filter-notes{font-size:16px}.s-filter-confidence{width:100%}.s-filter-confidence-button{flex:1;min-height:34px}.s-filter-heading{gap:8px}}
@media print{.s-spare-filters{display:none}.s-color-comparison{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
