/* =========================================================
   DaXPortal — DevExpress Fluent Theme Overrides
   Koppelt DevExpress-Controls an dax-theme.css Tokens.
   Bevorzugt --dxds-* Variablen (offizielle API v25.2).
   ========================================================= */

/* ── Schrift konsistent ─────────────────────────────────── */
.dxbl-grid, .dxbl-text-edit, .dxbl-form-layout, .dxbl-toolbar,
.dxbl-popup, .dxbl-dropdown, .dxbl-combobox, .dxbl-tagbox,
.dxbl-btn, .dxbl-upload, .dxbl-chart, .dxbl-drawer,
.dxbl-tab, .dxbl-accordion {
  font-family: "Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif !important;
}

/* ── Oberflächen & Borders an Tokens koppeln ────────────── */
.dxbl-fl-group,
.dxbl-grid,
.dxbl-popup-window,
.dxbl-dropdown-dialog {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  border-radius: var(--radius-card) !important;
  color: var(--ink) !important;
}

/* Grid-Header */
.dxbl-grid-header-row > .dxbl-grid-header-cell {
  background: var(--bg-soft) !important;
  color: var(--ink-subtle) !important;
  border-bottom-color: var(--border) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* Grid Zeilen */
.dxbl-grid-data-row > td {
  background: var(--surface) !important;
  border-bottom-color: var(--border-soft) !important;
  color: var(--ink) !important;
}
.dxbl-grid-data-row:hover > td {
  background: var(--bg-soft) !important;
}

/* Primär-Button */
.dxbl-btn-primary {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #fff !important;
  border-radius: var(--radius-ctrl) !important;
  font-weight: 600 !important;
}
.dxbl-btn-primary:hover {
  filter: brightness(0.9);
}

/* Sekundär-Button */
.dxbl-btn-secondary {
  background: transparent !important;
  border-color: var(--border) !important;
  color: var(--ink) !important;
  border-radius: var(--radius-ctrl) !important;
}
.dxbl-btn-secondary:hover {
  background: var(--bg-soft) !important;
}

/* Text-Inputs */
.dxbl-text-edit-input-container,
.dxbl-text-edit {
  background: var(--surface) !important;
  border-color: var(--input-border) !important;
  border-radius: var(--radius-input) !important;
  color: var(--ink) !important;
}
.dxbl-text-edit-input-container:focus-within,
.dxbl-text-edit:focus-within {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 2px rgba(209,19,26,0.15) !important;
}

/* FormLayout */
.dxbl-fl-cpt {
  color: var(--ink-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Popup */
.dxbl-popup-window {
  box-shadow: var(--shadow-md) !important;
}
.dxbl-popup-header {
  background: var(--bg-soft) !important;
  border-bottom-color: var(--border) !important;
  color: var(--ink) !important;
  font-weight: 700 !important;
}
.dxbl-popup-footer {
  background: var(--bg-soft) !important;
  border-top-color: var(--border) !important;
}

/* Dropdown / Combo */
.dxbl-listbox-item:hover,
.dxbl-combobox-dropdown-item:hover {
  background: var(--bg-soft) !important;
  color: var(--ink) !important;
}
.dxbl-listbox-item.dxbl-state-active,
.dxbl-combobox-dropdown-item.dxbl-state-active {
  background: var(--accent) !important;
  color: #fff !important;
}

/* Tag-Box Tags */
.dxbl-tag {
  background: var(--bg-soft) !important;
  border-color: var(--border) !important;
  color: var(--ink) !important;
  border-radius: var(--radius-pill) !important;
  font-size: 12px !important;
}

/* Tabs */
.dxbl-tabs-nav-item.dxbl-active .dxbl-tabs-nav-link {
  color: var(--accent) !important;
  border-bottom-color: var(--accent) !important;
}
.dxbl-tabs-nav-link {
  color: var(--ink-subtle) !important;
}
.dxbl-tabs-nav-link:hover {
  color: var(--ink) !important;
}

/* Toolbar */
.dxbl-toolbar {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}

/* Pager */
.dxbl-pager-page-button.dxbl-active {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #fff !important;
}

/* Upload */
.dxbl-upload {
  border-color: var(--border) !important;
  border-radius: var(--radius-card) !important;
  background: var(--bg-soft) !important;
}

/* ── Größen-Dichte (kompakt) ────────────────────────────── */
.dxbl-grid .dxbl-grid-data-row > td,
.dxbl-grid .dxbl-grid-header-cell {
  padding: 7px 12px !important;
}

/* ── Reporting Controls ──────────────────────────────────── */
.dxrp-report-preview,
.dxrp-document-viewer {
  background: var(--bg) !important;
}
