/* Shared corporate typography: local fonts keep every portal fast and consistent. */
:root {
  --font-body: "Segoe UI", "Helvetica Neue", Arial, sans-serif !important;
  --font-display: var(--font-body) !important;
  --font-mono: var(--font-body) !important;
  --track-tight: -0.015em;
  --track-eyebrow: 0.04em;
}
body {
  font-family: var(--font-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-variant-numeric: lining-nums tabular-nums;
}
button, input, select, textarea { font-family: var(--font-body); }
h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
  font-family: var(--font-body);
  font-weight: 600 !important;
  letter-spacing: -0.015em;
  line-height: 1.3;
}
p, .lead { line-height: 1.6; }
.lbl, .stat .k, .cg-k, .cfilter-l, .measbar > span, .nav-k {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.035em;
  line-height: 1.4;
}
.side-brand .b-role, .login-brand .lb-sub, .chead-sub {
  font-size: 11px;
  letter-spacing: 0.04em;
  line-height: 1.35;
}
.pill { font-size: 11px; font-weight: 600; letter-spacing: 0.025em; }
table { font-variant-numeric: lining-nums tabular-nums; }
.tbl thead th { font-size: 12px; font-weight: 600; letter-spacing: 0.025em; line-height: 1.4; }
.tbl .sub, .tbl .ccode { font-size: 12px; line-height: 1.45; }
.tbl .num { font-size: 13px; font-weight: 600; }
.stat .v, .daily-date-strip b { font-weight: 600; letter-spacing: -0.02em; }
.qty { font-variant-numeric: tabular-nums; font-weight: 500; }
@media (max-width: 700px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea {
    font-size: 16px;
  }
}
@media print {
  #print-sheet { font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif; }
  #print-sheet .ph h1, #print-sheet .prodhead { font-weight: 600; }
}
