#historicalSimilarity { margin:12px 0; padding:16px; min-width:0; color:var(--text); background:var(--surface); }
#historicalSimilarity.hidden { display:none; }
#historicalSimilarity * { box-sizing:border-box; }
#historicalSimilarity .similarity-heading { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:8px; }
#historicalSimilarity h2 { font-size:1.1rem; font-weight:750; }
#historicalSimilarity h3 { font-size:.95rem; font-weight:750; min-width:0; }
#historicalSimilarity p, #historicalSimilarity li, #historicalSimilarity dd, #historicalSimilarity h3 { overflow-wrap:anywhere; }
#historicalSimilarity p { margin:6px 0; font-size:.8rem; }
#historicalSimilarity .similarity-controls { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:12px 0; }
#historicalSimilarity label { display:flex; align-items:center; gap:6px; font-size:.8rem; min-height:44px; min-width:0; }
#historicalSimilarity label:first-child { display:grid; flex:1 1 260px; }
#historicalSimilarity input[type=checkbox] { flex:0 0 auto; width:20px; height:20px; }
#historicalSimilarity select { width:100%; min-width:0; max-width:100%; min-height:44px; }
#historicalSimilarity button, #historicalSimilarity summary { min-height:44px; padding:10px 12px; cursor:pointer; }
#historicalSimilarity button { border:1px solid var(--border-strong); border-radius:7px; background:var(--surface-raised,var(--surface)); color:var(--text); font-size:.8rem; }
#historicalSimilarity button:focus-visible, #historicalSimilarity summary:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
#historicalSimilarity .similarity-result { margin:12px 0; padding:12px; border:1px solid var(--border-strong); border-radius:10px; min-width:0; }
#historicalSimilarity .similarity-result > .similarity-heading > span { font-size:.75rem; color:var(--teal); }
#historicalSimilarity .similarity-match-status { font-weight:650; }
#historicalSimilarity .similarity-badges { display:flex; flex-wrap:wrap; gap:4px 8px; min-width:0; font-size:.7rem; }
#historicalSimilarity .similarity-badges > span { padding:3px 6px; border:1px solid var(--border-strong); border-radius:6px; overflow-wrap:anywhere; max-width:100%; }
#historicalSimilarity .similarity-reasons { list-style:none; padding-left:0; margin:8px 0; display:grid; gap:3px; }
#historicalSimilarity details { border-top:1px solid var(--border-strong); margin:6px 0; font-size:.8rem; }
#historicalSimilarity ul { padding-left:20px; font-size:.8rem; }
#historicalSimilarity dl > div { display:grid; grid-template-columns:minmax(100px,1fr) minmax(0,2fr); gap:8px; padding:4px 0; }
#historicalSimilarity dt { font-weight:650; overflow-wrap:anywhere; }
#historicalSimilarity dd { margin:0; min-width:0; }
#historicalSimilarity .similarity-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
#historicalSimilarity .similarity-actions button { flex:1 1 160px; }
#historicalSimilarity .similarity-session-report { min-width:0; max-width:100%; overflow-x:auto; }
@media(max-width:430px) {
    #historicalSimilarity { padding:10px; }
    #historicalSimilarity .similarity-result { padding:9px; }
    #historicalSimilarity dl > div { grid-template-columns:minmax(0,1fr); gap:2px; }
    #historicalSimilarity .similarity-controls > label { width:100%; }
}
