/* ============================================================================
   Fonts - self-hosted. Zero third-party requests at runtime.

   One family, Google Sans, for everything: headings, body, UI and the admin.
   It replaced the Plus Jakarta Sans / Inter pairing the brief specified, and
   costs less than either of them did - 57KB for both subsets against 182KB for
   the four files it retired, because it is a single variable font covering
   400-700 rather than two.

   Google Fonts serves it, but it is shipped with the site rather than linked,
   for three reasons that outrank the convenience: the CSP only allows
   same-origin assets, hotlinking a font CDN discloses every visitor's IP
   address to a third party (a live GDPR problem for a site with EU readers),
   and a local file avoids a DNS lookup and a TLS handshake on the critical
   path.

   Only latin and latin-ext are shipped. The site is English-only, and the
   Cyrillic, Greek, Armenian, Bengali and Vietnamese subsets the family also
   offers would multiply the payload for glyphs no page ever renders.

   To refresh, re-download the woff2 files referenced by:
     https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;600;700
   and keep the unicode-range values below in step with that response. All four
   weights resolve to the same file per subset - it is one variable font, which
   is why font-weight below is a range rather than a value.

   Licence: SIL Open Font License 1.1, which permits self-hosting and
   redistribution with the software.
   ========================================================================= */

@font-face {
  font-family: "Google Sans";
  src: url("../fonts/GoogleSans-latin.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                 U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC,
                 U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Google Sans";
  src: url("../fonts/GoogleSans-latin-ext.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
                 U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F,
                 U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113,
                 U+2C60-2C7F, U+A720-A7FF;
}

/*
 * Tabular figures wherever numbers line up in a column - vote percentages,
 * market rates, scrub timings. Proportional digits make a column of figures
 * visibly ragged.
 */
.markets__value,
.player__time,
.poll__pct {
  font-variant-numeric: tabular-nums;
}
