/* Typography only; existing screen layout, hidden states and navigation are retained. */
.erp-theme {
  font-family: var(--erp-font-sans);
  font-size: var(--erp-text-body);
  line-height: var(--erp-line-body);
  color: var(--erp-color-text);
  background-color: var(--erp-color-canvas);
  -webkit-font-smoothing: antialiased;
}
.erp-theme :where(button, input, select, textarea) { font-family: inherit; }
.erp-theme :where(h1, h2, h3) { color: var(--erp-color-text); }
.erp-theme :is(.page-heading, .page-header, .erp-workspace-top, .qc-page-title, .approval-workspace-identity) h1 {
  font: 600 var(--erp-text-heading)/var(--erp-line-heading) var(--erp-font-serif);
  letter-spacing: -.02em;
}
.erp-theme :is(.card-heading, .erp-workspace-header, .erp-workspace-document-header) h2 {
  font-family: var(--erp-font-serif);
  font-weight: 600;
  color: var(--erp-color-text);
}
.erp-theme :is(code, kbd, samp, .erp-code) { font-family: var(--erp-font-mono); }
.erp-theme :is(.text-end, .amount, .numeric, .erp-number) { font-variant-numeric: tabular-nums; }
.erp-theme :is(.eyebrow-dark, .eyebrow) { color: var(--erp-color-accent-text); }
.erp-theme :is(a, button, input, select, textarea, summary, [tabindex], [contenteditable]):focus-visible {
  outline: var(--erp-focus-width) solid var(--erp-color-focus);
  outline-offset: var(--erp-focus-offset);
}
.erp-theme :is(.form-text, .text-muted, .text-secondary) { color: var(--erp-color-muted) !important; }
@media (prefers-reduced-motion: reduce) {
  .erp-theme :is(.btn, .nav-link, .form-control, .form-select, .fade, .collapsing, .modal-dialog, .offcanvas, .toast) {
    transition-duration: .001ms;
    animation-duration: .001ms;
  }
}

/* Home: retain both existing dashboard and tenant-onboarding branches. */
.erp-theme .erp-catalogue-home {
  min-height: calc(100vh - 52px);
  padding: clamp(16px, 3vw, 40px);
  padding-bottom: 80px;
  background-image: radial-gradient(var(--erp-color-dot) 1px, transparent 1px);
  background-size: 22px 22px;
}
.erp-theme .erp-catalogue-home .dashboard { padding: 0; max-width: 1440px; }
.erp-theme .erp-catalogue-home .welcome {
  padding: 12px 0 24px;
  background: transparent;
  color: var(--erp-color-text);
  border: 0;
  border-bottom: 1px solid var(--erp-color-border);
  border-radius: 0;
  box-shadow: none;
  gap: 16px;
}
.erp-theme .erp-catalogue-home .welcome small,
.erp-theme .erp-catalogue-home #onboarding-title + small,
.erp-theme .erp-catalogue-home > .card > div:first-child small {
  font-family: var(--erp-font-mono);
  color: var(--erp-color-accent-text);
  font-size: 11px;
  letter-spacing: .12em;
}
.erp-theme .erp-catalogue-home :is(.welcome h1, #onboarding-title) {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.2;
  margin: 10px 0;
  overflow-wrap: anywhere;
}
.erp-theme .erp-catalogue-home .welcome p,
.erp-theme .erp-catalogue-home :is(.cards small, .lower small, .empty) { color: var(--erp-color-muted); }
.erp-theme .erp-catalogue-home .welcome > i { color: var(--erp-color-primary); }
.erp-theme .erp-catalogue-home .cards { gap: 16px; margin: 28px 0; }
.erp-theme .erp-catalogue-home :is(.cards article, .lower article, .card) {
  background: var(--erp-color-surface);
  border: 1px solid var(--erp-color-card-border);
  border-radius: var(--erp-radius);
  box-shadow: none;
}
.erp-theme .erp-catalogue-home .cards article {
  padding: 20px;
  border-top: 3px solid var(--erp-color-primary);
}
.erp-theme .erp-catalogue-home .cards article.orange { border-top-color: var(--erp-color-accent); }
.erp-theme .erp-catalogue-home .cards article.green { border-top-color: var(--erp-color-success); }
.erp-theme .erp-catalogue-home .cards article.purple { border-top-color: var(--erp-color-info); }
.erp-theme .erp-catalogue-home .cards strong {
  font: 600 36px/1.3 var(--erp-font-serif);
  font-variant-numeric: tabular-nums;
  padding-block: 8px;
}
.erp-theme .erp-catalogue-home .lower h2 { font-size: 22px; }
.erp-theme .erp-catalogue-home > .card { max-width: 1440px; margin: 0 auto 16px; }
.erp-theme .erp-catalogue-home > .card > div:first-child { flex-wrap: wrap; }
.erp-theme .erp-catalogue-home > .card .bg-light {
  border-left: 3px solid var(--erp-color-accent);
  margin-left: 12px;
}


@media (max-width:575px) { .erp-theme .erp-catalogue-home .welcome > i { font-size:28px; } }

.erp-theme main > :is(h1,h2), .erp-theme :is(#login-title,#onboarding-title,.welcome h1) { font-family:var(--erp-font-serif); }
.erp-theme :is(.page-heading,.page-header) h1 { font-size:var(--erp-text-heading); }
