.comparison-scroll {overflow-x:auto; max-width:100%; margin-top:1rem;}
.comparison-scroll table {border-collapse:collapse; min-width:820px; width:100%; font-size:14px; text-align:left;}
.comparison-scroll caption {text-align:left; padding:12px 0; color:#485466;}
.comparison-scroll th,.comparison-scroll td {border:1px solid #dce2e9; padding:12px; vertical-align:top; min-width:120px; overflow-wrap:anywhere;}
.comparison-scroll thead {background:#eef4f8;}
.comparison-scroll th p {font-weight:normal;}
.comparison-panel input {display:block; width:100%; box-sizing:border-box; padding:12px; border:1px solid #a8b5c5; border-radius:8px; font:inherit; margin-top:8px;}
.comparison-panel [hidden] {display:none!important;}
.comparison-filters {display:flex; flex-wrap:wrap; gap:12px 20px; margin-top:16px; padding:12px; border:1px solid #dce2e9; border-radius:8px;}
.comparison-filters label {display:flex; align-items:center; gap:8px; min-height:44px;}
.comparison-filters input[type="checkbox"] {width:20px; height:20px; margin:0; padding:0;}
.comparison-filters button {min-height:44px; padding:8px 14px; border:1px solid #a8b5c5; border-radius:8px; background:#fff; color:#165a4b; font:inherit; cursor:pointer;}
.comparison-help {font-size:13px; color:#485466; line-height:1.7;}
.visit-story-section {margin:24px 0; max-width:72ch;}
.visit-story-section h3 {font-size:18px; line-height:1.5; word-break:keep-all;}
.visit-story p {line-height:1.9; overflow-wrap:anywhere;}
.visit-story-details {border-top:1px solid #dce2e9; padding-top:16px;}
.visit-story-details summary {cursor:pointer; padding:8px 0; font-weight:700;}
.visit-story-details [data-source-fact] {padding:8px 0; border-bottom:1px solid #edf0f3;}
.comparison-panel a:focus-visible {outline:3px solid #246aa1; outline-offset:3px;}
/* Public coverage report: horizontal scroll stays inside the table. */
.report-table-scroll { overflow-x: auto; max-width: 100%; }
.report-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.report-table caption { text-align: left; padding: 12px 0; }
.report-table th, .report-table td { padding: 10px 8px; border-bottom: 1px solid #dde3e8; text-align: left; }
.report-table-scroll:focus-visible { outline: 2px solid #23664a; outline-offset: 3px; }
