
/* Keep wide content inside its own scroll area, including grid and flex children. */
.page,.panel,.table-wrap { min-width:0; max-width:100%; }
.two > *, .grid-2 > *, .relationship-layout > * { min-width:0; }
.table-wrap { width:100%; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:var(--gold) var(--panel); }
.table-wrap:focus-visible { outline:2px solid var(--gold); outline-offset:-2px; }
.table-scroll-tools { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 14px; border-bottom:1px solid var(--line); background:var(--panel); }
.table-scroll-tools[hidden] { display:none; }
.table-scroll-tools > div { display:flex; gap:8px; }
.table-scroll-tools .btn { padding:6px 10px; }
.table-scroll-tools .btn:disabled { opacity:.35; cursor:default; }
.registry-sort { display:flex; align-items:center; gap:10px; margin:-4px 0 14px; }
.registry-sort select { width:190px; }
.registry-table { table-layout:fixed; }
.registry-table th:first-child { width:29%; }.registry-table th:nth-child(2) { width:14%; }.registry-table th:nth-child(3) { width:13%; }.registry-table th:nth-child(4) { width:14%; }.registry-table th:nth-child(5) { width:17%; }.registry-table th:last-child { width:13%; }
.registry-table td { overflow-wrap:anywhere; }.registry-table td .small { margin-top:5px; line-height:1.5; }
.registry-table .badge { max-width:100%; white-space:normal; }
.registry-family { display:flex; gap:10px; align-items:center; }.registry-family > div { min-width:0; }
.registry-table .tier { white-space:nowrap; font:inherit; }
@media(max-width:1100px) { .registry-table th,.registry-table td { padding:12px 10px; } }
@media(max-width:750px) {
 .page { padding-left:16px; padding-right:16px; }
 .filters { min-width:0; }.filters > .input { min-width:0!important; max-width:100%; }
 .page-head > div { min-width:0; }.page-head .actions { margin-left:0; max-width:100%; }
 .registry-table thead { display:none; }.registry-table,.registry-table tbody { display:block; width:100%; }
 .registry-table tr:not(.fold-row) { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:16px; border-bottom:1px solid var(--line); }
 .registry-table tr:not(.fold-row) td { padding:0; border:0; min-width:0; }
 .registry-table tr:not(.fold-row) td:first-child { grid-column:1/-1; }
 .registry-table td[data-label]:not(:first-child)::before { content:attr(data-label); display:block; font-size:11px; color:var(--muted); margin-bottom:6px; }
 .registry-table .fold-row { display:block; }.registry-table .fold-row td { display:block; }
 .table-scroll-tools { flex-wrap:wrap; }
 .subtabs { max-width:100%; overflow-x:auto; flex-wrap:wrap; }
}
