/* MESA 6.1.0 R4.1.3.5 — tipografia Geist
   Camada final exclusivamente visual. Não altera rotas, IDs, eventos ou contratos de API. */
:root{
  --font-sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:"Geist Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
}

html,
body,
button,
input,
select,
textarea,
optgroup,
option{
  font-family:var(--font-sans)!important;
}

body{
  font-weight:400;
  font-synthesis:none;
  font-optical-sizing:auto;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Títulos e hierarquia principal */
h1,h2,h3,h4,h5,h6,
.page-title,
.page-heading h2,
.page-identification h1,
.ux-home-heading h2,
.card-header h3,
.modal h2,
.drawer h2,
.login-card h2,
.login-copy h1{
  font-family:var(--font-sans)!important;
  font-weight:600!important;
  letter-spacing:-.025em;
}

.sidebar-brand strong,
.login-brand strong,
.user-button b,
.cell-title b,
.compact-main b,
.ux-lead-main b,
.ux-lead-source b,
.ux-sla-owner-row .compact-main b{
  font-family:var(--font-sans)!important;
  font-weight:600!important;
}

/* Navegação: grupos com presença, itens subordinados mais leves */
.nav-group-toggle{
  font-family:var(--font-sans)!important;
  font-weight:600!important;
  letter-spacing:.035em!important;
}
.nav-item,
.nav-group .nav-item{
  font-family:var(--font-sans)!important;
  font-weight:500!important;
  letter-spacing:-.01em;
}

/* Rótulos pequenos e KPIs */
.eyebrow,
.ux-metric-kicker,
.metric-card-top>span:not(.metric-icon):not(.badge),
.ux-client-filters .filter-bar label,
.r413-filter-grid label,
.r413-report-filter label,
.r413-deleted-filters .filter-bar>label,
.ux-client-table th,
.data-table th,
.funnel-detail-table th,
.development-spec span,
.login-feature-grid b{
  font-family:var(--font-sans)!important;
  font-weight:600!important;
  letter-spacing:.05em;
}

.ux-metric-kicker{
  font-size:10px!important;
  line-height:1.2;
  letter-spacing:.055em!important;
}
.ux-metric-card>span,
.metric-card>span{
  font-weight:600!important;
}

/* Números isolados e métricas — Geist Mono */
.ux-metric-card>strong,
.metric-card>strong,
.r413-funnel-chain article strong,
.development-price strong,
.development-spec b,
.date-box b,
.notification-count,
.nav-item em,
.compact-avatar[data-count],
.overdue-days{
  font-family:var(--font-mono)!important;
  font-weight:600!important;
  font-variant-numeric:tabular-nums lining-nums;
  font-feature-settings:"tnum" 1,"lnum" 1;
}

.ux-metric-card>strong,
.metric-card>strong{
  font-size:28px;
  line-height:1;
  letter-spacing:-.045em;
}

/* Dados dinâmicos: números estáveis, sem transformar textos corridos em monospace */
.badge,
.status-chip,
.login-version,
.sidebar-footer,
.ux-lead-time,
.ux-filter-note,
.compact-queue-item,
.queue-card,
.data-table,
.ux-client-table,
.funnel-detail-table,
.r413-pagination,
.r413-buckets,
.agenda-grid,
.upcoming-item,
.development-spec,
.development-price,
input[type="number"],
input[type="date"],
input[type="datetime-local"],
input[type="month"],
input[type="time"]{
  font-variant-numeric:tabular-nums lining-nums;
  font-feature-settings:"tnum" 1,"lnum" 1;
}

/* Contadores e prazos isolados podem usar Mono sem contaminar o texto do badge */
.badge[data-count],
.status-chip b,
#nav-task-count,
#nav-communicator-count,
#notification-count,
.ux-lead-time b,
.queue-card-footer span,
.r413-pagination b,
.r413-buckets b{
  font-family:var(--font-mono)!important;
  font-weight:600!important;
  font-variant-numeric:tabular-nums lining-nums;
}

/* Campos, botões e controles */
button,
.primary-button,
.secondary-button,
.text-button,
.icon-button,
input,
select,
textarea{
  font-weight:500;
}
label,
.form-field>span,
.password-wrap+small{
  font-weight:500;
}

/* Redução dos pesos sintetizados/duros da camada antiga */
.ux-today-chip,
.ux-filter-note b,
.r413-tabs button,
.r413-funnel-chain article span,
.ux-lead-management-action>span,
.ux-multi-filter summary,
.business-message-card.is-legacy:before,
.business-message-card.is-system:before,
.ux-lead-avatar,
.ux-client-table td:before{
  font-weight:600!important;
}

/* Ajustes de legibilidade em ambas as aparências */
html[data-theme="dark"] body{
  -webkit-font-smoothing:antialiased;
}
html[data-theme="light"] body{
  -webkit-font-smoothing:antialiased;
}

@media(max-width:620px){
  .ux-metric-kicker{font-size:9px!important}
  .ux-metric-card>strong,.metric-card>strong{font-size:26px}
}
