/* PelicanBI v1.2.51 — Tabler Icons + escala tipográfica profissional */
:root{
  --font-body: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-display: "Plus Jakarta Sans", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
}
html{ text-rendering: geometricPrecision; }
body{
  font-family: var(--font-body);
  font-weight: var(--fw-regular);
  line-height: 1.5;
}
p,small,span,li,td,input,select,textarea,.muted,.helper,.desc,.ts,.card p,.card small,.notif-item small,.notif-item .desc,.toast span{
  line-height: 1.5;
}
:where(h1,h2,h3,h4,.topbar h2,.section-header h2,.card-header h3,.admin-hero h1,.login-copy h1,.card-head h2,.account-panel h2){
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  letter-spacing: -0.035em;
  line-height: 1.12;
}
:where(label,.field label,.admin-form label,.menu-btn,.menu-group-title,.badge,.eyebrow,.pill,.status-chip,.breadcrumb,.kpi-label,.link-btn,.link-action,.action-btn,.btn,.user-pill,th){
  font-weight: var(--fw-medium) !important;
}
:where(.kpi-card .value,.admin-card strong,.mini-grid strong,.footer-version,.sidebar-user-copy strong,.user-dropdown strong,.brand h1,.login-footer strong){
  font-weight: var(--fw-bold) !important;
}
:where(.topbar h2,.page-title,.section-title,.admin-hero h1,.login-copy h1,.card-head h2){
  font-weight: var(--fw-bold) !important;
}
.ti{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: 1.08em;
  min-width: 1em;
  vertical-align: -0.14em;
  flex: 0 0 auto;
}
.ti-spin{ animation: ti-spin 1s linear infinite; }
@keyframes ti-spin{ to{ transform: rotate(360deg); } }
.brand-logo{ display:block; object-fit:contain; }
.brand-logo-shell{ background: rgba(255,255,255,.96); }
.toast strong,.notif-head strong{ font-weight: var(--fw-bold) !important; }
.login-btn{ font-weight: var(--fw-bold) !important; }
.field-wrap input{ font-weight: var(--fw-medium) !important; }
.field-wrap span,.remember-check,.force-box,.whatsapp-btn{ font-weight: var(--fw-medium) !important; }
@media (max-width: 640px){
  :where(h1,h2,h3,.topbar h2,.login-copy h1){ letter-spacing: -0.025em; }
}
