/* ── Objekt-Dialog ───────────────────────────────────────────────────────────
   1:1 zu ObjektDialog.xaml: Quellen-Leiste (BrBgDeep + Unterlinie), zwei
   RANDLOSE Panels (OBJEKTE | MENGENQUELLEN) mit 1px-Senkrechttrenner, Fuß mit
   Zusammenfassung links. Hülle (Titel/Trenner/Fuß/Knöpfe/Überschrift) kommt aus
   dialog-basis.css. Maße: Fenster 900×620 (min 700×480). */
.obj-dialog { width: 900px; height: 620px; max-width: 96vw; max-height: 92vh;
  display: flex; flex-direction: column; }

/* Quellen-Leiste (XAML Row0): BrBgDeep, Unterlinie, Padding 10/6. */
.obj-quellenleiste { display: flex; align-items: center; gap: 8px;
  background: var(--bg-tief); border-bottom: 1px solid var(--rand); padding: 6px 10px; }
.obj-quelle-lbl { font-size: 11px; color: var(--text-2); }
.obj-quelle { width: auto; min-width: 160px; height: 26px; }
.obj-viewer-btn { height: 26px; padding: 0 10px; }

/* 2-Panel-Bereich: 260 | 1px | Rest, füllt die Resthöhe (XAML Row1 *). */
.obj-spalten { flex: 1; display: grid; grid-template-columns: 260px 1px 1fr; min-height: 0; }
.obj-trenner { background: var(--rand); }

/* Panels: randlos, BrBgDeep; Kopfzeile mit Unterlinie, scrollender Inhalt. */
.obj-panel { background: var(--bg-tief); display: flex; flex-direction: column;
  min-width: 0; min-height: 0; }
.obj-panel-kopf { padding: 7px 10px; border-bottom: 1px solid var(--rand); }
.obj-panel-kopf .dlg-sektion { margin: 0; }
.obj-suchzeile { padding: 5px 8px; border-bottom: 1px solid var(--rand); }
.obj-suche { height: 26px; }
.obj-panel-inhalt { flex: 1; overflow-y: auto; padding: 6px; min-height: 0; }

/* Objektliste / Hierarchie-Baum (Bauteilgruppe → Typ), TreeViewItem = 11px. */
.obj-eintrag { display: flex; align-items: center; gap: 8px; padding: 6px 10px;
  cursor: pointer; font-size: 11px; }
.obj-eintrag:hover { background: var(--hover); }
.obj-eintrag.aktiv { background: var(--hover); box-shadow: inset 3px 0 0 var(--akzent); }
.obj-baum .obj-gruppe { font-weight: 600; }
.obj-baum .obj-gruppe .klapp { width: 14px; display: inline-block; color: var(--text-3); font-size: 8px; }
.obj-baum .obj-kind { padding-left: 28px; }
/* .obj-warn bleibt in kopf.css — es gehört zur Grid-Objektspalte, nicht zum Dialog. */

/* Mengenquellen-Karten (rechts). */
.obj-mengen { display: flex; flex-direction: column; gap: 6px; }
.obj-mengen-leer { margin: auto; text-align: center; color: var(--text-3); }
.mq-karte { border: 1px solid var(--rand); border-radius: 6px; padding: 8px 10px;
  cursor: pointer; background: color-mix(in srgb, var(--text) 3%, transparent); }
.mq-karte:hover { border-color: var(--akzent); }
.mq-karte.aktiv { border-color: var(--akzent); background: color-mix(in srgb, var(--akzent) 12%, transparent); }
.mq-kopf { display: flex; justify-content: space-between; gap: 8px; }
.mq-name { font-size: 12.5px; font-weight: 600; }
.mq-summe { font-size: 12.5px; font-variant-numeric: tabular-nums; }
.mq-sub { font-size: 10.5px; color: var(--text-3); margin-top: 1px; }
.mq-detail { font-size: 10.5px; color: var(--text-2); margin-top: 3px; }

/* Fuß: Zusammenfassung links (BrTextSecondary, gekürzt), Verknüpfung-lösen daneben. */
.obj-fuss .obj-zusammenfassung { font-size: 11px; color: var(--text-2);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 380px; }
.obj-entfernen { margin-left: 12px; flex: none; }

/* Ladeanzeige während der IFC-Parse läuft (großes Modell, Task.Run im Hintergrund) */
.obj-laedt { padding: 22px 14px; display: flex; flex-direction: column; gap: 10px; }

/* Mehrfachauswahl (Bausteine): Namenszeile mit Checkbox */
.obj-eintrag.obj-mehr { display: flex; align-items: center; gap: 9px; cursor: pointer; }
.obj-eintrag.obj-mehr input { margin: 0; flex: none; }
