/* Native server-rendered application additions. Colour follows the shared theme tokens. */
.table-scroll {overflow-x:auto; max-inline-size:100%; margin-block:1.5rem;}
.table-scroll table {border-collapse:collapse; inline-size:100%; font-size:.9rem;}
.table-scroll th,.table-scroll td {text-align:start; padding:.75rem; border-block-end:1px solid var(--line); vertical-align:top;}
.table-scroll th {font-weight:600;}
.registry-facts code,.research-digest {overflow-wrap:anywhere;}
.research-cards {display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:1.25rem; margin-block:1.5rem;}
.research-card {padding:1.5rem; border:1px solid var(--line); border-radius:12px;}
.research-card h2,.research-card h3 {font-size:1.3rem; margin-block:0 .75rem;}
.research-card p {font-size:.95rem;}
.app-chart {inline-size:100%; block-size:auto; max-block-size:460px; color:var(--ink); overflow:visible;}
.app-chart .axis {fill:none; stroke:currentColor; opacity:.45;}
.app-chart .data-line {fill:none; stroke:var(--accent); stroke-width:2.5;}
.app-chart .data-point {fill:var(--accent);}
.app-chart .second-line {fill:none; stroke:currentColor; stroke-width:1.5; stroke-dasharray:4 4;}
.app-chart text {fill:currentColor; font-family:inherit; font-size:12px;}
.app-chart .strata {fill:var(--accent); opacity:.18; stroke:currentColor; stroke-width:.4;}
.app-chart .strata:nth-of-type(even) {opacity:.35;}
.app-figure {margin:2rem 0;}
.app-figure figcaption {margin-block-start:1rem; font-size:.9rem;}
.key-points {padding:1.25rem; border:1px solid var(--line); margin-block:1.5rem;}
.key-points h2 {font-size:1.2rem;}
.key-points li {margin-block:.6rem;}
.intel-source-card {overflow-wrap:anywhere;}
.registry-map {min-block-size:380px;}
@media (max-width:600px) {.table-scroll th,.table-scroll td{padding:.6rem;} .app-chart text{font-size:14px;} .research-card{padding:1rem;}}
@media print {.app-chart{color:#111;} .table-scroll{overflow:visible;} }
/* WebKit otherwise includes the unwrapped native selection text in page overflow. */
.registry-filters select {white-space:normal;}

.research-gaps table {min-inline-size:52rem;}
.research-gaps th:first-child,.research-gaps td:first-child {min-inline-size:14rem;}
.research-gaps .table-scroll:focus-visible {outline:2px solid currentColor;outline-offset:2px;}
