/* =========================================================
   GOODSTREAM GLOBAL FONT SYSTEM
   Keeps dashboard/header/tables/modals/forms using one font
   ========================================================= */

/*
  If Dubai is installed on the user's device, this will use it.
  If not, it falls back to clean system fonts.
*/
:root {
  --gs-font-main: "Dubai", "Inter", "Segoe UI", Roboto, Arial, sans-serif;
}

/* Global app font */
html,
body {
  font-family: var(--gs-font-main) !important;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Make all normal dashboard elements inherit the same font */
body,
body * {
  font-family: var(--gs-font-main) !important;
}

/* Form controls do not always inherit cleanly in browsers */
button,
input,
select,
textarea,
option {
  font-family: var(--gs-font-main) !important;
}

/* Header / nav / search / profile */
.crm-header,
.crm-header *,
.nav-section,
.nav-section *,
.header-actions,
.header-actions *,
.search-bar,
.profile-menu,
.logout-pill {
  font-family: var(--gs-font-main) !important;
}

/* Dashboard hero/title/buttons */
.dashboard-container,
.dashboard-container *,
.hero-section,
.hero-section *,
.hero-title,
.hero-title *,
.toggle-buttons,
.toggle-buttons *,
.table-tab-button {
  font-family: var(--gs-font-main) !important;
}

/* Dynamic tables */
.data-table,
.data-table *,
.data-table table,
.data-table th,
.data-table td,
.table-meta-row,
.table-meta-row *,
.table-meta-bar,
.table-meta-bar *,
.table-meta-title,
.table-meta-filters,
.gs-table-filter,
.contact-cell,
.contact-name,
.contact-info,
.custom-dropdown,
.custom-dropdown *,
.row-action-btn {
  font-family: var(--gs-font-main) !important;
}

/* Manager dashboard cards/data displays */
.manager-dashboard-view,
.manager-dashboard-view *,
.manager-card,
.manager-card *,
.manager-panel,
.manager-panel *,
.manager-card-label,
.manager-panel-title,
.manager-card-value,
.manager-activity-item,
.manager-activity-empty {
  font-family: var(--gs-font-main) !important;
}

/* Modals, record details, tabs, workflow, notes, files, messages */
.modal,
.modal *,
.modal-content,
.modal-content *,
.lead-details-header,
.lead-details-header *,
#leadDetailsTabs,
#leadDetailsTabs *,
#leadDetailsPanels,
#leadDetailsPanels *,
.tab-content,
.tab-content *,
.gs-workflow,
.gs-workflow *,
.gs-action-btn,
.gs-muted,
.lead-details-drawer,
.lead-details-drawer * {
  font-family: var(--gs-font-main) !important;
}

/* Mapbox address field uses its own classes, so force it too */
.mapboxgl-ctrl-geocoder,
.mapboxgl-ctrl-geocoder *,
.gs-mapbox-address-host,
.gs-mapbox-address-host * {
  font-family: var(--gs-font-main) !important;
}