/* ============================================================
   T-Go Hub Font Scale Pass — UX/CSS ONLY
   Purpose: normalize typography across all modules without
   touching data, logic, flow, Supabase, or event handlers.
   Load last after all module CSS.
   ============================================================ */

:root{
  --tgo-font-base:14px;
  --tgo-font-table:13px;
  --tgo-font-control:13px;
  --tgo-font-small:12px;
  --tgo-font-tiny:11px;
  --tgo-font-section:16px;
  --tgo-font-page:22px;
  --tgo-font-kpi:24px;
  --tgo-line-base:1.42;
}

/* Global baseline */
html, body{
  font-size:var(--tgo-font-base)!important;
  line-height:var(--tgo-line-base)!important;
}
body,
button,
input,
select,
textarea{
  font-size:var(--tgo-font-base)!important;
  line-height:var(--tgo-line-base)!important;
}

/* App shell */
.sidebar,
.nav-item,
.nav-item-label,
.topbar,
.topbar-title,
.user-pill,
.content{
  font-size:var(--tgo-font-base)!important;
}
.topbar-search-input,
.form-input{
  font-size:var(--tgo-font-control)!important;
}

/* Page / module titles */
.hub-greeting,
.cs365-title,
.cf2-title,
.ta-title,
#temp-main .te-page-title,
#temp-main .font-display.text-xl,
.pt{
  font-size:var(--tgo-font-page)!important;
  line-height:1.22!important;
  font-weight:600!important;
}
.hub-subtitle,
.cs365-sub,
.cf2-sub,
.ta-subtitle,
.ps,
#temp-main .te-page-subtitle{
  font-size:var(--tgo-font-base)!important;
  line-height:1.45!important;
}

/* Section / panel titles */
.section-h,
.module-card-title,
.cs365-panel-title,
.cf2-panel-title,
.ta-panel-title,
#temp-main h3,
.ctit,
.ptit{
  font-size:var(--tgo-font-section)!important;
  line-height:1.3!important;
  font-weight:600!important;
}

/* Descriptions / metadata */
.module-card-desc,
.module-card-meta,
.csub,
.deal-customer,
.deal-date,
.cs365-note,
.cf2-meta,
.cf2-note,
.ta-meta,
#temp-main .text-sm{
  font-size:var(--tgo-font-small)!important;
  line-height:1.45!important;
}

/* Controls */
.btn,
.btn-s,
.btn-primary,
.btn-g,
.btn-t,
.cs365-btn,
.cf2-btn,
.ta-btn,
#temp-main .btn,
#temp-main .te-btn,
button{
  font-size:var(--tgo-font-control)!important;
  line-height:1.25!important;
}
.btn-s,
#temp-main .btn-sm{
  font-size:var(--tgo-font-small)!important;
}

/* Inputs */
input,
select,
textarea,
.sinp,
.te-input,
.te-select,
.te-textarea,
.cf2-input,
.cf2-select,
.tc-input,
.ta-input,
.ta-select{
  font-size:var(--tgo-font-control)!important;
  line-height:1.35!important;
}

/* Tables */
table,
.deal-table,
.cf2-table,
.tc-table,
.cs365-table,
.ta-table,
#temp-main table{
  font-size:var(--tgo-font-table)!important;
  line-height:1.38!important;
}
.deal-table tbody td,
.cf2-table tbody td,
.tc-table tbody td,
.cs365-table td,
.ta-table td,
#temp-main table tbody td{
  font-size:var(--tgo-font-table)!important;
  line-height:1.38!important;
}
.deal-table thead th,
.cf2-table thead th,
.tc-table thead th,
.cs365-table th,
.ta-table th,
#temp-main table thead th{
  font-size:var(--tgo-font-tiny)!important;
  line-height:1.3!important;
  font-weight:600!important;
}

/* Badges / pills / tags */
.badge,
.module-badge,
.nav-item-badge,
.deal-stage,
.cs365-badge,
.cf2-pill,
.ta-badge,
.user-tag,
.ws-users,
#temp-main .badge{
  font-size:var(--tgo-font-tiny)!important;
  line-height:1.25!important;
  font-weight:600!important;
}

/* KPI / stat cards */
.stat-card-value,
.cs-stat-value,
.cs365-card b,
.tc-kpis b,
.cf2-kpi b,
.ta-kpi-value,
#temp-main .te-kpi-value{
  font-size:var(--tgo-font-kpi)!important;
  line-height:1.12!important;
  font-weight:700!important;
}
.stat-card-label,
.cs-stat-label,
.cs365-card span,
.tc-kpis span,
.ta-kpi-label,
#temp-main .te-kpi-label{
  font-size:var(--tgo-font-small)!important;
  line-height:1.35!important;
}

/* T-Emp specific Tailwind utility normalization */
#temp-main,
#temp-main *{
  line-height:var(--tgo-line-base);
}
#temp-main .text-xs{font-size:var(--tgo-font-tiny)!important}
#temp-main .text-sm{font-size:var(--tgo-font-small)!important}
#temp-main .text-base{font-size:var(--tgo-font-base)!important}
#temp-main .text-lg{font-size:var(--tgo-font-section)!important}
#temp-main .text-xl{font-size:var(--tgo-font-page)!important}
#temp-main .text-2xl,
#temp-main .text-3xl{
  font-size:var(--tgo-font-kpi)!important;
}

/* Hub module cards */
.module-card-title .tagline{
  font-size:var(--tgo-font-small)!important;
  line-height:1.35!important;
}
.module-cta{
  font-size:var(--tgo-font-small)!important;
}

/* Login */
.login-heading{
  font-size:24px!important;
}
.login-intro,
.login-footer{
  font-size:var(--tgo-font-small)!important;
}
.quick-user-name{
  font-size:var(--tgo-font-small)!important;
}
.quick-user-role{
  font-size:var(--tgo-font-tiny)!important;
}

/* Responsive keeps same scale, only reduces big headers slightly */
@media(max-width:760px){
  :root{
    --tgo-font-page:20px;
    --tgo-font-kpi:22px;
  }
}
