/* Shared Vitrio typography: self-hosted Inter for marketing, authentication and workspace UI.
   SIL OFL licence: static/marketing/fonts/INTER-OFL.txt. Technical values retain Plex Mono. */
@font-face { font-family: 'Inter'; font-weight: 100 900; font-style: normal; font-display: swap; src: url('../../marketing/fonts/inter-variable.woff2') format('woff2'); }
@font-face { font-family: 'Vitrio Mono'; font-weight: 400; font-style: normal; font-display: swap; src: url('../fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Vitrio Mono'; font-weight: 500; font-style: normal; font-display: swap; src: url('../fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2'); }

:root {
  --vi-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  --vi-font-head: var(--vi-font-body);
  --bs-font-sans-serif: var(--vi-font-body);
  --vi-font-mono: 'Vitrio Mono', 'IBM Plex Mono', SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
}
body, button, input, select, textarea, .form-control, .form-select, .btn, .dropdown-menu, .modal, .tooltip, .popover { font-family: var(--vi-font-body) !important; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .card-title, .modal-title, .vi-head {
  font-family: var(--vi-font-head) !important; font-weight: 600; letter-spacing: -.02em;
}
/* Read-by-character values get the mono face with a slashed zero so 0 and O are never confused on a label or a
   chain-of-custody record. Opt in with .vi-mono; <code>/<kbd>/<samp> get it automatically. */
code, kbd, samp, pre, .vi-mono, .font-monospace { font-family: var(--vi-font-mono) !important; font-feature-settings: "zero" 1; }
/* Numbers line up in every table, stat tile and badge. */
table, .stat, .badge, .vi-num, .small-box, .info-box-number { font-variant-numeric: tabular-nums; }

/* Leaderboard ranks: a quiet numbered mark in metal tones instead of medal emoji. */
.vi-rank { display: inline-grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; font-size: .78rem; font-weight: 700; font-variant-numeric: tabular-nums; border: 1px solid currentColor; }
.vi-rank-1 { color: #9A7B1F; background: rgba(201, 162, 39, .14); }
.vi-rank-2 { color: #6B7280; background: rgba(107, 114, 128, .12); }
.vi-rank-3 { color: #8A5A36; background: rgba(176, 112, 62, .12); }
