/**
 * CRM global typography — Inter, 14px base, consistent across all eazydezk-app pages.
 * Loaded after theme/layout; overrides Semantic UI (Lato) and stray page styles.
 */

:root {
    --crm-font-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --crm-font-size-base: 14px;
    --crm-font-size-sm: 13px;
    --crm-font-size-xs: 12px;
    --crm-font-size-lg: 16px;
    --crm-font-size-xl: 18px;
    --crm-line-height: 1.5;
    --crm-line-height-tight: 1.35;
}

body.eazydezk-app,
body.eazydezk-app #app {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-base) !important;
    line-height: var(--crm-line-height) !important;
    color: #1f2937;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Semantic UI — replace Lato */
body.eazydezk-app .ui,
body.eazydezk-app .ui.button,
body.eazydezk-app .ui.buttons .button,
body.eazydezk-app .ui.input > input,
body.eazydezk-app .ui.form input:not([type]),
body.eazydezk-app .ui.form input[type],
body.eazydezk-app .ui.form textarea,
body.eazydezk-app .ui.form select,
body.eazydezk-app .ui.selection.dropdown,
body.eazydezk-app .ui.search.dropdown,
body.eazydezk-app .ui.dropdown .menu > .item,
body.eazydezk-app .ui.table,
body.eazydezk-app .ui.table th,
body.eazydezk-app .ui.table td,
body.eazydezk-app .ui.menu,
body.eazydezk-app .ui.menu .item,
body.eazydezk-app .ui.header,
body.eazydezk-app .ui.label,
body.eazydezk-app .ui.message,
body.eazydezk-app .ui.segment,
body.eazydezk-app .ui.tab,
body.eazydezk-app .ui.modal,
body.eazydezk-app .ui.popup {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-base);
}

body.eazydezk-app .ui.button,
body.eazydezk-app .ui.label,
body.eazydezk-app .btn,
body.eazydezk-app button,
body.eazydezk-app input,
body.eazydezk-app select,
body.eazydezk-app textarea,
body.eazydezk-app .form-control,
body.eazydezk-app .form-input {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-base) !important;
    line-height: var(--crm-line-height-tight);
}

/* DataTables */
body.eazydezk-app table.dataTable,
body.eazydezk-app table.dataTable thead th,
body.eazydezk-app table.dataTable tbody td,
body.eazydezk-app .dataTables_wrapper,
body.eazydezk-app .dataTables_wrapper .dataTables_length,
body.eazydezk-app .dataTables_wrapper .dataTables_filter,
body.eazydezk-app .dataTables_wrapper .dataTables_info,
body.eazydezk-app .dataTables_wrapper .dataTables_paginate,
body.eazydezk-app .dataTables_wrapper .paginate_button {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-sm) !important;
}

body.eazydezk-app table.dataTable thead th {
    font-size: var(--crm-font-size-xs) !important;
    font-weight: 600;
}

/* Headings */
body.eazydezk-app h1,
body.eazydezk-app h2,
body.eazydezk-app h3,
body.eazydezk-app h4,
body.eazydezk-app h5,
body.eazydezk-app h6,
body.eazydezk-app .h1,
body.eazydezk-app .h2,
body.eazydezk-app .h3,
body.eazydezk-app .h4 {
    font-family: var(--crm-font-sans) !important;
    font-weight: 600;
    line-height: var(--crm-line-height-tight);
    color: #0f172a;
}

body.eazydezk-app h1,
body.eazydezk-app .h1 { font-size: 1.5rem !important; }
body.eazydezk-app h2,
body.eazydezk-app .h2 { font-size: 1.25rem !important; }
body.eazydezk-app h3,
body.eazydezk-app .h3 { font-size: 1.125rem !important; }
body.eazydezk-app h4,
body.eazydezk-app .h4 { font-size: var(--crm-font-size-lg) !important; }
body.eazydezk-app h5 { font-size: var(--crm-font-size-base) !important; }
body.eazydezk-app h6 { font-size: var(--crm-font-size-sm) !important; }

/* Tailwind-style text utilities — normalize to CRM scale */
body.eazydezk-app .text-xs { font-size: var(--crm-font-size-xs) !important; }
body.eazydezk-app .text-sm { font-size: var(--crm-font-size-sm) !important; }
body.eazydezk-app .text-base { font-size: var(--crm-font-size-base) !important; }
body.eazydezk-app .text-lg { font-size: var(--crm-font-size-lg) !important; }
body.eazydezk-app .text-xl { font-size: var(--crm-font-size-xl) !important; }

body.eazydezk-app p,
body.eazydezk-app li,
body.eazydezk-app td,
body.eazydezk-app th,
body.eazydezk-app label,
body.eazydezk-app .breadcrumb,
body.eazydezk-app .breadcrumb-item,
body.eazydezk-app .card,
body.eazydezk-app .card-body,
body.eazydezk-app .table,
body.eazydezk-app .table td,
body.eazydezk-app .table th {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

body.eazydezk-app label,
body.eazydezk-app .control-label,
body.eazydezk-app .form-group label {
    font-size: var(--crm-font-size-sm) !important;
    font-weight: 500;
}

/* Icon fonts — do not force Inter onto icon glyphs */
body.eazydezk-app .bx,
body.eazydezk-app [class^="bx-"],
body.eazydezk-app [class*=" bx-"] {
    font-family: 'boxicons' !important;
}

body.eazydezk-app .fa,
body.eazydezk-app .fas,
body.eazydezk-app .far,
body.eazydezk-app .fab {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands' !important;
}

/* Semantic UI (users icon, search icon, dropdown chevrons, etc.) */
body.eazydezk-app i.icon,
body.eazydezk-app i.icons,
body.eazydezk-app .ui.icon,
body.eazydezk-app .ui.button > .icon,
body.eazydezk-app .ui.dropdown > .dropdown.icon,
body.eazydezk-app .ui.search > .icon {
    font-family: Icons !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.eazydezk-app i.icon:before,
body.eazydezk-app .ui.icon:before {
    font-family: Icons !important;
}

/* Feature pages */
body.eazydezk-app .lead-marketing-page,
body.eazydezk-app .lead-view-wrapper,
body.eazydezk-app .lv-page,
body.eazydezk-app .view-con,
body.eazydezk-app .admin-dashboard-page,
body.eazydezk-app .tracking-dashboard {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-base);
}

body.eazydezk-app .swal2-popup,
body.eazydezk-app .swal2-title,
body.eazydezk-app .swal2-html-container {
    font-family: var(--crm-font-sans) !important;
    font-size: var(--crm-font-size-base) !important;
}
