/* Events phase 1 – Verwaltung › Strecken & Fahrzeuge (portal-catalog.js). Nachtschicht building blocks
   from portal-round4.css; this file only adds the catalog list, origin badges, review cards and dialogs. */
.catalog-grid{align-items:start}
.catalog-list-panel .r4-ph{padding:14px 18px 0}
.catalog-tabs{padding:0 12px}
.catalog-filters{padding:12px 18px 4px}
.catalog-search{flex:1 1 260px}
.catalog-check{cursor:pointer}
.catalog-check input{width:auto;height:auto;min-height:0;margin:0}
.catalog-table{margin-top:6px}
.catalog-table td.full{width:1%;white-space:nowrap}
.catalog-table tr.cat-open td{background:rgb(240 178 74/.05)}
.catalog-table tr.cat-open td:first-child{box-shadow:inset 3px 0 var(--r4-warn)}
.catalog-legend{padding:10px 18px 14px;margin:0;line-height:1.7}
.cat-name b{display:block;overflow-wrap:anywhere}
.cat-raw{overflow-wrap:anywhere}
.cat-name .cat-mini{margin:4px 4px 0 0}
.cat-badges{display:inline-flex;gap:4px;flex-wrap:wrap;align-items:center}
.cat-mini{font-size:10.5px;padding:1px 7px}
.cat-cc{font-variant-numeric:tabular-nums;letter-spacing:.04em}
.cat-usage{color:var(--muted);font-size:12px;white-space:nowrap}
.cat-inline{display:inline!important;font-size:11.5px}
.cat-actions{justify-content:flex-end;flex-wrap:nowrap}
.cat-src{font-size:10.5px;font-weight:700;border-radius:5px;padding:1px 6px;border:1px solid var(--line);color:var(--muted);white-space:nowrap;letter-spacing:.02em}
.cat-src.seed{color:#b9dcff;border-color:#24476b}
.cat-src.collector{color:#9ee3b1;border-color:#2d6b3f}
.cat-src.manual{color:#ffd58a;border-color:#6b4f14}
.cat-src.import{color:#dcc3ff;border-color:#4b2f73}
.catalog-side .r4-panel{padding:14px 16px}
.catalog-merge-card{display:grid;gap:8px;padding:10px 12px;border:1px solid #6b4f14;border-radius:12px;background:#1f1a0e;font-size:13px;margin-bottom:8px;min-width:0}
.cat-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}
.cat-line b{overflow-wrap:anywhere;min-width:0}
.cat-sub{color:var(--muted);font-size:12px}
.cat-sub b{color:var(--text)}
.cat-sub .cat-usage{margin-left:auto}
.catalog-merge-card .r4-btns{gap:6px}
.catalog-merge-card .r4-btns .r4-btn{flex:0 1 auto;height:28px;font-size:12px;padding:0 9px}
.catalog-seed-row b{font-size:13px}
.catalog-sources{margin-top:10px;font-size:12px;color:var(--muted)}
.catalog-sources summary{cursor:pointer;color:#d5d9e1}
.catalog-sources p{margin:6px 0 0;line-height:1.5}
.catalog-api{opacity:.85}
.catalog-api p{margin:0 0 10px;line-height:1.5}
.catalog-api .r4-btn{white-space:normal;max-width:100%;min-width:0}
.catalog-dialog{width:min(620px,calc(100vw - 24px))}
.catalog-dialog form{max-height:calc(100vh - 60px);overflow:auto}
.catalog-dialog .check-row{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--text)}
.catalog-dialog .check-row input{width:auto;min-height:0}
.cat-field{display:grid;gap:6px}
.cat-label{font-size:12px;color:var(--muted)}
.cat-class-chips .r4-chip{cursor:pointer}
.cat-chip-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.cat-class-chips .r4-chip:focus-within{outline:2px solid var(--red);outline-offset:1px}
.catalog-dialog select[size]{min-height:150px}
.catalog-preview{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--bg);display:grid;gap:6px}
.cat-effects{margin:0;padding-left:18px;font-size:12.5px;color:#d5d9e1;display:grid;gap:4px}
@media(max-width:699px){
 .catalog-list-panel .r4-ph{padding:13px 14px 0}
 .catalog-tabs{padding:0 6px}
 .catalog-filters{padding:10px 14px 4px}
 .catalog-filters .catalog-check{grid-column:1/-1}
 .catalog-table td.full{width:auto;white-space:normal}
 /* Stacked rows: the name cell holds long technical ids – block layout lets them wrap. */
 .catalog-table td.cat-name{display:block;min-width:0}
 .catalog-table td.cat-name::before{display:block;margin-bottom:2px}
 .cat-raw{overflow-wrap:anywhere;word-break:break-word}
 .cat-actions{justify-content:flex-start;flex-wrap:wrap}
 .cat-actions .r4-btn{flex:1 1 auto;justify-content:center}
 .catalog-legend{padding:10px 14px 12px}
 .catalog-side .r4-panel{padding:13px 14px}
 .cat-usage{white-space:normal}
 .cat-sub .cat-usage{margin-left:0}
}
