/* ---------- Basis & Variablen (nur falls nicht von Theme überschrieben) ---------- */
:root {
  --we-block-gap: 1.5rem;
  --we-font-menu: .875rem;
  --we-font-content: .875rem;
  --bs-body-font-size: .875rem;
}

/* ---------- Navigation ---------- */
.nav-main .nav-main-link {
  font-size: var(--we-font-menu);
  line-height: 1.35;
}

/* ---------- Dynamische View Mitte ---------- */
#dynamic-view {
  font-size: var(--we-font-content);
  line-height: 1.4;
  padding-bottom: var(--we-block-gap);
}

#dynamic-view .block {
  margin-bottom: var(--we-block-gap);
}

#dynamic-view .providers-overview-block,
#dynamic-view .providers-overview-block .block-content,
#dynamic-view .providers-overview-block table.providers-overview-table th,
#dynamic-view .providers-overview-block table.providers-overview-table td,
#dynamic-view .providers-overview-block p,
#dynamic-view .providers-overview-block .alert,
#dynamic-view .providers-overview-block .text-muted,
#dynamic-view .providers-overview-block .fs-sm {
  font-size: var(--we-font-content) !important;
  line-height: 1.4;
}

/* Neuer Abstand unter Tabellen-Wrapper */
#dynamic-view .providers-overview-block .table-responsive {
  margin-bottom: var(--we-block-gap);
}

/* Tabellenkopf */
#dynamic-view .providers-overview-block table.providers-overview-table thead th {
  font-weight: 600;
  background: var(--dm-body-bg, #f8f9fa);
  border-bottom: 2px solid var(--bs-border-color, #dee2e6);
}

/* Letzter Block zusätzlicher Abstand (Fallback) */
#dynamic-view .block:last-child {
  margin-bottom: calc(var(--we-block-gap) * 1.1);
}

/* ---------- Utility Klassen ---------- */
.we-font-menu { font-size: var(--we-font-menu) !important; }
.we-font-content { font-size: var(--we-font-content) !important; }
.we-mb-gap { margin-bottom: var(--we-block-gap) !important; }
.we-mt-gap { margin-top: var(--we-block-gap) !important; }
.we-no-select { user-select: none; }

/* ---------- Kompakte Varianten ---------- */
.block.block-compact .block-content {
  padding: .5rem .75rem;
}
.block.block-compact { margin-bottom: 1rem; }

/* ---------- Responsive Feinjustierung ---------- */
@media (max-width: 991.98px) {
  #dynamic-view { padding-bottom: 1.25rem; }
  #dynamic-view .block { margin-bottom: 1.25rem; }
}
@media (max-width: 575.98px) {
  .nav-main .nav-main-link { font-size: .7rem; }
  #dynamic-view { font-size: .82rem; }
}

/* ---------- Tabellen Helfer ---------- */
.table.we-table-tight th,
.table.we-table-tight td {
  padding: .4rem .6rem;
  vertical-align: middle;
  font-size: var(--we-font-content);
}

/* ---------- Badge Vereinheitlichung im Content ---------- */
#dynamic-view .badge {
  font-size: .65rem;
  letter-spacing: .25px;
}

/* ---------- Dark/Light neutrale Anpassungen (nur falls Theme Variablen fehlen) ---------- */
html.dark #dynamic-view .providers-overview-block table.providers-overview-table thead th {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.12);
}
html.light #dynamic-view .providers-overview-block table.providers-overview-table thead th {
  background: #f8f9fa;
}

/* ---------- Fokus / Interaktion ---------- */
#dynamic-view button:focus-visible,
#dynamic-view a:focus-visible {
  outline: 2px solid var(--bs-primary);
  outline-offset: 2px;
}

/* Platzhalter für weitere projektspezifische Overrides */

/* ---------- Header/Top-Right Dropdown Font Overrides ---------- */
#page-header-user-dropdown + .dropdown-menu,
#page-header-dark-mode-dropdown + .dropdown-menu,
#page-header-notifications-dropdown + .dropdown-menu,
#index-theme-dropdown + .dropdown-menu,
#langDropdown + .dropdown-menu,
.header-actions .dropdown-menu {
  font-size: var(--we-font-content) !important;
  line-height: 1.4;
}

#page-header-user-dropdown + .dropdown-menu .dropdown-item,
#page-header-dark-mode-dropdown + .dropdown-menu .dropdown-item,
#page-header-notifications-dropdown + .dropdown-menu .dropdown-item,
#index-theme-dropdown + .dropdown-menu .dropdown-item,
#langDropdown + .dropdown-menu .dropdown-item,
.header-actions .dropdown-menu .dropdown-item,
.header-actions .dropdown-menu .fs-sm {
  font-size: var(--we-font-content) !important;
  line-height: 1.4;
}

/* Kopfbereiche innerhalb der Dropdowns (z.B. .bg-primary-dark) */
#page-header-user-dropdown + .dropdown-menu .bg-primary-dark,
#page-header-notifications-dropdown + .dropdown-menu .bg-primary-dark {
  font-size: var(--we-font-content) !important;
  line-height: 1.4;
}

/* Badge in Dropdown etwas angleichen */
.header-actions .dropdown-menu .badge {
  font-size: .65rem;
  letter-spacing:.25px;
}
