/* JNAT global readability standard — loaded last on every application surface. */
:root {
    --jnat-readable-xs: 12px;
    --jnat-readable-sm: 13px;
    --jnat-readable-md: 14px;
    --jnat-readable-lg: 16px;
}

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: var(--jnat-readable-md); }

/* Module shell and every feature page */
.module-shell { --feature-sidebar: 326px; }
.module-shell .feature-brand strong { font-size: 15px !important; }
.module-shell .feature-brand small,
.module-shell .feature-context p,
.module-shell .feature-context > span,
.module-shell .module-sidebar-profile strong,
.module-shell .module-sidebar-profile small { font-size: var(--jnat-readable-xs) !important; line-height: 1.45; }
.module-shell .feature-nav section > p { font-size: 10px !important; letter-spacing: 1.6px; }
.module-shell .feature-nav a { min-height: 48px; font-size: var(--jnat-readable-sm) !important; line-height: 1.4; }
.module-shell .topbar-path,
.module-shell .top-search,
.module-shell .module-user strong,
.module-shell .module-user small,
.module-shell .user-menu a,
.module-shell .user-menu button { font-size: var(--jnat-readable-xs) !important; }
.module-shell .module-eyebrow,
.module-shell .data-kicker { font-size: 11px !important; }
.module-shell .module-heading > div:first-child > p:last-child { font-size: var(--jnat-readable-md) !important; }
.module-shell .primary-action,
.module-shell .secondary-action,
.module-shell button,
.module-shell input,
.module-shell select,
.module-shell textarea { font-size: var(--jnat-readable-xs); }
.module-shell small { font-size: var(--jnat-readable-xs) !important; line-height: 1.45; }
.module-shell p { font-size: var(--jnat-readable-sm); line-height: 1.5; }
.module-shell .module-kpis header > span { font-size: var(--jnat-readable-sm) !important; }
.module-shell .module-kpis small,
.module-shell .metric-live { font-size: var(--jnat-readable-xs) !important; }
.module-shell .data-panel-heading p,
.module-shell .record-search input,
.module-shell .record-search button,
.module-shell .data-toolbar button { font-size: var(--jnat-readable-xs) !important; }
.module-shell .module-table-wrap table { font-size: var(--jnat-readable-sm) !important; }
.module-shell .module-table-wrap th { font-size: 11px !important; letter-spacing: 1px; }
.module-shell .module-table-wrap td { font-size: var(--jnat-readable-sm) !important; line-height: 1.5; }
.module-shell .table-status,
.module-shell .data-panel-footer,
.module-shell .data-panel-footer button,
.module-shell .data-panel-footer b { font-size: var(--jnat-readable-xs) !important; }
.module-shell .module-insights strong { font-size: var(--jnat-readable-sm) !important; }
.module-shell .module-insights p,
.module-shell .module-insights i,
.module-shell .module-footer { font-size: var(--jnat-readable-xs) !important; }

/* Enterprise Inventory, CRM, Lead, Product, and Customer workspaces */
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) p,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) small,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) em { font-size: var(--jnat-readable-xs) !important; line-height: 1.45; }
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) a,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) button,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) input,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) select,
.module-shell :is(.inventory-widget,.crm-widget,.lead-workbench,.customer-workbench,.product-workbench) textarea { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-table,.customer-table,.product-table) td { font-size: var(--jnat-readable-sm) !important; line-height: 1.45; }
.module-shell :is(.lead-table,.customer-table,.product-table) th { font-size: 11px !important; }
.module-shell :is(.lead-table,.customer-table,.product-table) strong { font-size: var(--jnat-readable-sm) !important; }
.module-shell :is(.lead-table,.customer-table,.product-table) small,
.module-shell :is(.lead-table,.customer-table,.product-table) em { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-stage,.lead-health,.customer-health,.table-status) { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-filters,.customer-filters,.product-filters) label > span,
.module-shell :is(.lead-form-grid,.customer-form-grid,.product-form-grid) label > span { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-filters,.customer-filters,.product-filters) input,
.module-shell :is(.lead-filters,.customer-filters,.product-filters) select,
.module-shell :is(.lead-form-grid,.customer-form-grid,.product-form-grid) input,
.module-shell :is(.lead-form-grid,.customer-form-grid,.product-form-grid) select,
.module-shell :is(.lead-form-grid,.customer-form-grid,.product-form-grid) textarea { font-size: var(--jnat-readable-sm) !important; }
.module-shell :is(.lead-workbench-heading,.customer-workbench-heading,.product-workbench-heading) p { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-bottom-grid,.customer-bottom-grid,.product-bottom-grid) strong { font-size: var(--jnat-readable-sm) !important; }
.module-shell :is(.lead-bottom-grid,.customer-bottom-grid,.product-bottom-grid) small { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-command-strip,.customer-command-strip,.crm-command-strip) strong { font-size: var(--jnat-readable-sm) !important; }
.module-shell :is(.lead-command-strip,.customer-command-strip,.crm-command-strip) small,
.module-shell :is(.lead-command-strip,.customer-command-strip,.crm-command-strip) p,
.module-shell :is(.lead-command-strip,.customer-command-strip,.crm-command-strip) a { font-size: var(--jnat-readable-xs) !important; }
.module-shell .crm-command-metrics span,
.module-shell .crm-command-metrics b,
.module-shell .crm-command-icon,
.module-shell .inventory-alert-strip,
.module-shell .alert-summary,
.module-shell .movement-day > span,
.module-shell .receiving-status,
.module-shell .category-rank,
.module-shell .widget-count { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-modal,.customer-modal,.product-modal) p,
.module-shell :is(.lead-modal,.customer-modal,.product-modal) small,
.module-shell :is(.lead-modal,.customer-modal,.product-modal) label > span,
.module-shell :is(.lead-modal,.customer-modal,.product-modal) button { font-size: var(--jnat-readable-xs) !important; }
.module-shell :is(.lead-modal,.customer-modal,.product-modal) input,
.module-shell :is(.lead-modal,.customer-modal,.product-modal) select,
.module-shell :is(.lead-modal,.customer-modal,.product-modal) textarea { font-size: var(--jnat-readable-sm) !important; }

/* Executive dashboard */
.app-shell { --sidebar-width: 326px; }
.app-shell .workspace-copy strong { font-size: var(--jnat-readable-md) !important; }
.app-shell .workspace-copy small,
.app-shell .profile-copy strong,
.app-shell .profile-copy small { font-size: var(--jnat-readable-xs) !important; line-height: 1.45; }
.app-shell .nav-section-label { font-size: 10px !important; letter-spacing: 1.7px; }
.app-shell .nav-link { min-height: 48px; font-size: var(--jnat-readable-md) !important; }
.app-shell .breadcrumb,
.app-shell .global-search,
.app-shell .topbar-user strong,
.app-shell .topbar-user small { font-size: var(--jnat-readable-xs) !important; }
.app-shell main p,
.app-shell main small { font-size: var(--jnat-readable-xs); line-height: 1.5; }
.app-shell main button,
.app-shell main input,
.app-shell main select,
.app-shell main textarea,
.app-shell main a { font-size: var(--jnat-readable-xs); }
.app-shell main table { font-size: var(--jnat-readable-sm) !important; }
.app-shell main th { font-size: 11px !important; }
.app-shell main td { font-size: var(--jnat-readable-sm) !important; line-height: 1.5; }
.app-shell :is(.eyebrow,.panel-kicker,.kpi-label,.kpi-foot,.target-copy,.order-pills,.chart-legend,.chart-summary span,.pipeline-list>div,.inventory-overview,.stock-health span,.attendance-list>div,.activity-item p,.activity-value,.approval-list,.dashboard-footer,.command-content,.command-palette footer) { font-size: var(--jnat-readable-xs) !important; line-height: 1.45; }
.app-shell :is(.period-control span,.period-control select,.button,.quick-menu a,.text-button,.filter-button,.view-all-button,.dropdown-heading button,.dropdown-footer,.notification-empty) { font-size: var(--jnat-readable-xs) !important; }
.app-shell :is(.product-cell strong,.activity-item strong,.approval-list strong,.command-content strong,.notification-menu a strong) { font-size: var(--jnat-readable-sm) !important; }
.app-shell :is(.product-cell small,.activity-item small,.approval-list small,.command-content small,.notification-menu a small,.donut-chart small,.attendance-ring small,.attendance-metrics small) { font-size: var(--jnat-readable-xs) !important; }
.app-shell :is(.status-pill,td>button,.hr-note p,.hr-note a,.approval-list button) { font-size: var(--jnat-readable-xs) !important; }

/* Authentication */
.login-shell p,
.login-shell small,
.login-shell footer,
.login-shell .system-capabilities span,
.login-shell .login-options,
.login-shell .login-help { font-size: var(--jnat-readable-sm) !important; line-height: 1.55; }
.login-shell label > span,
.login-shell input,
.login-shell button { font-size: var(--jnat-readable-md) !important; }

/* Public pages: preserve display type while raising small supporting copy. */
.site-shell small,
.site-shell footer,
.site-shell button,
.site-shell input,
.site-shell select,
.site-shell textarea { font-size: max(var(--jnat-readable-xs), 1em); }

@media (max-width: 760px) {
    .module-shell { --feature-sidebar: min(92vw, 326px); }
    .module-shell .feature-nav a { font-size: var(--jnat-readable-md) !important; }
    .module-shell .module-content { padding-inline: 16px; }
    .app-shell { --sidebar-width: min(92vw, 326px); }
}
