/* The knowledge base, compact (owner, 18.10.2026: «Базу знаний тоже компактнее надо сделать»): the hub's search list and filter
   panel (overrides of database.css, which every page of the site loads with its own ?v= and so stays as it is), the «Каталог»
   block of the hub, and the static list and section pages of catalog_pages.py.  Linked from those pages only: the hub with ?v=,
   the 680 list pages without (like entity.js on the record pages: max-age=600, a style change re-uploads this file alone).
   Font sizes stay the site's readable ones (13 px at least); only padding, line height and the row layout change. */

/* ---- hub: the search head and the rows */
.db-browser{overflow:hidden;overflow:clip}   /* clip (not hidden): the filter column can stick; an older browser keeps hidden */
.db-browser-top{padding:10px 16px;gap:16px}
.db-kind-tabs button{min-height:40px;padding:8px 12px}
.db-search input{min-height:42px;padding:8px 12px}
.db-browser-body{background:linear-gradient(90deg,var(--bg-2) 236px,var(--line) 236px 237px,transparent 237px)}
.db-filters{align-self:start;background:none;border-right:0}
.db-results-column{padding:10px 18px 14px}
.db-results-heading{padding-bottom:8px;gap:10px}
.db-results-heading>p{flex:1;min-width:0}
.db-permalink{margin:6px 0 0;font-size:.8125rem;color:var(--text-2)}
.db-permalink a{color:var(--accent-2)}
.db-result{min-height:0;padding:5px 0;gap:10px}
.db-result-icon img{width:28px;height:28px}
.db-result-main{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:0}
.db-result-main .db-name-en{margin:0}
.db-result-sub{margin:0;flex:1 1 220px;min-width:0}
.db-result-numbers{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;column-gap:10px;min-width:0}
.db-result-numbers small{margin:0}
.db-more-rows{display:flex;justify-content:center;width:100%;margin-top:12px}
.db-pagination{margin-top:10px}

/* ---- hub: the filter panel — tighter rows, the rarely used filters under «Ещё фильтры», in view while the rows scroll */
.db-filters{padding:14px 16px}
.db-filters h2{font-size:1.05rem;margin-bottom:10px}
.db-filters label:not(.db-check){margin-bottom:9px}
.db-filters label:not(.db-check)>span,.db-stat>label>span{margin-bottom:3px}
.db-filters select,.db-levels input,.db-stat input,.db-filters .dd-btn{min-height:36px}
.db-filters .db-check{margin-top:10px}
.db-filters #db-reset{margin-top:10px}
.db-filters .db-small{margin-top:4px;line-height:1.5}
.db-levels{margin:9px 0}
.db-presets{margin-bottom:8px}
.db-stat{margin-bottom:9px}
.db-more-filters{margin:2px 0 6px}
.db-more-filters>summary{cursor:pointer;color:var(--accent-2);font-size:.8125rem;padding:4px 0;list-style-position:inside}
.db-more-filters[open]>summary{margin-bottom:6px}
.db-more-filters>.db-check{margin-top:4px}
.db-browser.db-sticky .db-filters{position:sticky;top:12px}

/* ---- hub: «Каталог списками» */
.db-catalog h2{font-size:1.4rem;margin:0}
.db-catalog>.db-small{margin:6px 0 0;max-width:90ch}
.db-catalog-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,.75fr);gap:12px;margin-top:12px}
.db-catalog-col:nth-child(2) ul{columns:3 130px}
.db-catalog-col:nth-child(3) ul{columns:1}
.db-catalog-col,.dbl-group{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:12px 14px;min-width:0}
.db-catalog-col h3,.dbl-group h2{font-size:1.1rem;margin:0;line-height:1.35}
.db-catalog-col h3 span,.db-catalog-col li span,.dbl-group h2 span,.dbl-group li span{font:normal .8125rem var(--font);color:var(--text-3)}
.db-catalog-col ul,.dbl-group ul{list-style:none;margin:8px 0 0;padding:0;columns:2 150px;column-gap:16px}
.db-catalog-col li,.dbl-group li{padding:2px 0;font-size:.875rem;line-height:1.45;break-inside:avoid}
.db-catalog a,.dbl-group a,.dbl-siblings a{text-decoration:none}
.db-catalog a:hover,.dbl-group a:hover{text-decoration:underline}
.dbl-group p{margin:4px 0 0;font-size:.8125rem;color:var(--text-3)}

/* ---- list pages: one table, compact rows */
.dbl{min-width:0}
.dbl-wrap{border:1px solid var(--line);border-radius:var(--radius,8px);background:var(--panel);overflow-x:auto}
.dbl-table{font-size:.875rem;line-height:1.35;margin:0}
.dbl-table caption{caption-side:top;text-align:left;padding:8px 12px;font-size:.8125rem;color:var(--text-2);border-bottom:1px solid var(--line)}
.dbl-table th,.dbl-table td{padding:5px 10px;vertical-align:middle}
.dbl-table th{white-space:nowrap}
.dbl-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.dbl-table .dbl-ic{width:36px;padding-right:0}
.dbl-table td.dbl-ic img{display:block;width:24px;height:24px;border:1px solid var(--line-2);border-radius:4px;object-fit:cover}
.dbl-table td.dbl-name{min-width:0}
.dbl-table td.dbl-name a{font-weight:500;text-decoration:none}
.dbl-table td.dbl-name a:hover{text-decoration:underline}
.dbl-table td.dbl-name a:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:3px}
.dbl-table tbody tr:last-child td{border-bottom:0}
.dbl-table tbody tr:hover td{background:#ffffff05}
.dbl-en,.dbl-rank{margin-left:8px;font-size:.8125rem;color:var(--text-3)}
.dbl-rank{color:var(--text-2)}
.dbl-flag{margin-left:8px;padding:0 6px;border:1px solid var(--line-2);border-radius:999px;font-size:.8125rem;color:var(--text-3);white-space:nowrap}
.dbl-type{color:var(--text-2)}
.dbl-idm{display:none}   /* the ID of a row whose name repeats in the list: the phone hides the ID column */
.dbl-table td.dbl-id{color:var(--text-3)}
.dbl-h1-page{font-weight:400;color:var(--text-2)}
.dbl-more{display:flex;justify-content:center;width:max-content;margin:12px auto 0}
.dbl-pages,.dbl-letters,.dbl-jumps{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-top:12px}
.dbl-pages a,.dbl-pages span[aria-current]{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:0 10px;border:1px solid var(--line-2);border-radius:6px;background:var(--panel);color:var(--text);text-decoration:none;font-size:.875rem}
.dbl-pages span[aria-current],.dbl-letters a[aria-current],.dbl-jumps a[aria-current]{border-color:var(--accent-dim);color:var(--accent-2);background:#e0b25b13}
.dbl-pages a:hover,.dbl-letters a:hover,.dbl-jumps a:hover{border-color:var(--accent-dim);color:var(--accent-2)}
.dbl-gap{color:var(--text-3);padding:0 2px}
.dbl-letters,.dbl-jumps{gap:4px;font-size:.8125rem;margin-top:8px}
.dbl-letters a,.dbl-jumps a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;padding:0 6px;border:1px solid var(--line);border-radius:5px;color:var(--text-2);text-decoration:none}
.dbl-jumps>span{color:var(--text-3);margin-right:4px}
.dbl-siblings{display:flex;flex-wrap:wrap;gap:6px}
.dbl-siblings a{display:inline-flex;gap:6px;align-items:baseline;padding:3px 10px;border:1px solid var(--line-2);border-radius:999px;background:var(--panel);color:var(--text-2);font-size:.8125rem;line-height:1.5}
.dbl-siblings a span{color:var(--text-3)}
.dbl-siblings a[aria-current]{color:var(--accent-2);border-color:var(--accent-dim)}
.dbl-siblings a:hover{color:var(--accent-2)}
.dbl-sections{columns:4 270px;column-gap:12px}
.dbl-sections>.dbl-group{break-inside:avoid;margin:0 0 12px}

/* ---- record pages (they link this file since patch B): a tighter card, the relations in columns where the column is wide */
.db-detail{gap:24px}
.db-item-column .db-card{padding:16px;line-height:1.5}
.db-item-column .db-card-head{margin-bottom:10px}
.db-item-column .db-card-row+.db-card-row{margin-top:2px}
.db-entity-actions{margin-top:12px;gap:8px}
.db-relation{margin-top:12px;padding:12px 16px}
.db-relation ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));column-gap:16px;margin-top:8px}
.db-relation li{padding:3px 0;min-width:0}
.db-relation li>a{min-width:0;overflow-wrap:anywhere}
.db-relation .db-more{margin-top:8px}
.db-technical{margin-top:16px}

@media(max-width:1000px){
  .db-browser-body{background:linear-gradient(90deg,var(--bg-2) 210px,var(--line) 210px 211px,transparent 211px)}
  .db-browser-top{padding:10px 14px}
  .db-search{margin-top:10px}
  .db-catalog-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .db-catalog-col:nth-child(2){grid-row:span 2}
  .db-catalog-col:nth-child(2) ul{columns:2 130px}
}
@media(max-width:760px){
  .db-browser-body{background:none}
  .db-browser:not(.db-filters-open) .db-filters{display:none}
  .db-filters{padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg-2)}
  .db-filters h2{display:none}
  .db-results-column{padding:8px 12px 12px}
  .db-results-heading{gap:8px}
  .db-results-heading .db-filters-toggle{margin:0;flex:none;padding-inline:8px}
  .db-results-heading>p{line-height:1.35}
  .db-share-tail{display:none}
  /* a row in three short lines, everything the wide row shows: the name and the main number; the English name; the
     description and «ур. пр. · #ID».  The name may take the width the number leaves, the English name the whole width. */
  .db-result{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;grid-template-areas:"ic name name num" "ic en en en" "ic sub meta meta";column-gap:10px;row-gap:0;align-items:baseline;padding:6px 0}
  .db-result-icon{grid-area:ic;align-self:center}
  .db-result-main,.db-result-numbers{display:contents}
  .db-result-name{grid-area:name;line-height:1.35}
  .db-result-main .db-name-en{grid-area:en;margin:0;line-height:1.35}
  .db-result-sub{grid-area:sub;display:block;line-height:1.4}
  .db-result-numbers>span{grid-area:num;text-align:right;white-space:nowrap;line-height:1.35}
  .db-result-numbers>small{grid-area:meta;margin:0;text-align:right;white-space:nowrap;line-height:1.4}
  .db-catalog-cols{grid-template-columns:minmax(0,1fr)}
  .dbl-table th,.dbl-table td{padding:6px 6px}
  .dbl-table .dbl-ic{width:30px}
  .dbl-table .dbl-type,.dbl-table .dbl-id,.dbl-en{display:none}
  .dbl-table .dbl-idm{display:inline;margin-left:6px;font-size:.8125rem;color:var(--text-3);white-space:nowrap}
  .dbl-table caption{padding:8px 10px}
  .dbl-siblings{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding:2px 16px}
  .dbl-siblings::-webkit-scrollbar{display:none}
  .dbl-siblings a{flex:none;white-space:nowrap}
}
