﻿/* Strict Global Font Enforcement
   Canonical stack: "Space Grotesk", "Inter", system-ui, sans-serif */

:root {
  --strict-global-font: "Space Grotesk", "Inter", system-ui, sans-serif;
}

html,
body,
button,
input,
select,
textarea,
optgroup,
label,
table,
thead,
tbody,
tfoot,
tr,
th,
td,
caption,
small,
span,
strong,
em,
b,
i,
u,
div,
section,
article,
aside,
header,
footer,
main,
nav,
ul,
ol,
li,
a,
p,
blockquote,
legend,
fieldset,
figcaption,
summary,
details,
.card,
.btn,
.badge,
.dropdown-item,
.nav-link,
.navbar,
.form-control,
.form-select,
.form-label,
.modal,
.modal-title,
.toast,
.alert {
  font-family: var(--strict-global-font) !important;
}

/* Keep icon glyph systems intact */
[class^="fa"]::before,
[class*=" fa-"]::before,
.fas::before,
.far::before,
.fab::before,
.fa-solid::before,
.fa-regular::before,
.fa-brands::before,
[class^="mdi-"]::before,
[class*=" mdi-"]::before,
[class^="ri-"]::before,
[class*=" ri-"]::before,
[class^="uil-"]::before,
[class*=" uil-"]::before,
.bi::before,
[class^="dripicons-"]::before,
[class*=" dripicons-"]::before {
  font-family: inherit;
}

/* Explicit icon-font families */
.fa,
.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands { font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands" !important; }
.mdi,
[class^="mdi-"],
[class*=" mdi-"] { font-family: "Material Design Icons" !important; }
.ri,
[class^="ri-"],
[class*=" ri-"] { font-family: "remixicon" !important; }
.uil,
[class^="uil-"],
[class*=" uil-"] { font-family: "unicons-line", "unicons-solid" !important; }
.bi,
[class^="bi-"],
[class*=" bi-"] { font-family: "bootstrap-icons" !important; }

/* Preserve intentional monospace blocks */
code,
kbd,
pre,
samp,
.monospace,
[class*="mono"],
[data-monospace="true"] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}
