/* Plot Day types itself.

   Baloo 2 and Nunito used to arrive from the Google Fonts CDN on every load,
   which made the game's own title a network request that could fail — and the
   service worker deliberately skips cross-origin requests (`url.origin !==
   location.origin`), so the app never held an offline copy of either face.
   When that request didn't land, `"Baloo 2", cursive` fell through to whatever
   handwriting font the DEVICE happened to ship: Segoe Script on Windows, a
   script face on Android. The title, the signs and every button changed
   character, and the app had no say in it. (Owner caught it 8-14; the shed
   nameplate was rendering in the phone's cursive.)

   Both faces now ship with the app and precache with the shell, so the
   typography is as offline-proof as the artwork and never differs by device.

   Both files are VARIABLE — one face per family covers the whole weight
   range, which is why 700 and 800 point at the same URL. Latin and latin-ext
   stay split on unicode-range exactly as Google served them, so a page of
   plain English only ever pulls the smaller file.

   Baloo 2 and Nunito are both SIL Open Font License 1.1 — see
   assets/fonts/OFL.txt. Self-hosting is expressly permitted; the license text
   must ship with the fonts, which is what that file is for. */

/* THE WEIGHT RANGES ARE DELIBERATELY NARROW. Do not widen them.

   These files are variable and could serve Baloo 2 from 400 and Nunito from
   200 — but the CDN link only ever requested `Baloo+2:wght@700;800` and
   `Nunito:ital,wght@0,400;0,600;0,700;0,800;1,400`, and the whole app was
   drawn against exactly that. Fifteen rules name Baloo 2 with NO font-weight,
   so they resolve to 400; with only 700 and 800 available, CSS font matching
   snapped every one of them up to 700. Publishing a genuine 400 made all of
   them render light — the "‹ Back" sign went spindly next to a "Your cottage"
   sign that had an explicit 700 and didn't move (owner spotted it, 8-14).
   Headings hid it, because a UA default of bold kept them at 700.

   So each face is pinned to the span the CDN actually served, and the old
   snapping still happens. Nunito's italic is pinned at 400 alone for the same
   reason: Google shipped one italic, so `.ledgerbook .cap` at italic 600 was
   the 400 face plus synthetic bold, and it should stay that way.

   Want lighter Baloo somewhere? Widen the range AND set an explicit
   font-weight on every rule that currently omits one, in the same commit. */

/* ---- Baloo 2: display. Titles, signs, buttons, tally and purse numbers. ---- */
@font-face {
  font-family: 'Baloo 2';
  font-style: normal;
  font-weight: 700 800;
  font-display: swap;
  src: url(assets/fonts/baloo2-latin.woff2) format('woff2');
  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: 'Baloo 2';
  font-style: normal;
  font-weight: 700 800;
  font-display: swap;
  src: url(assets/fonts/baloo2-latin-ext.woff2) format('woff2');
  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;
}

/* ---- Nunito: body. Labels, stats, the ledger, the shipping tags. ---- */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(assets/fonts/nunito-latin.woff2) format('woff2');
  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: 'Nunito';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(assets/fonts/nunito-latin-ext.woff2) format('woff2');
  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;
}
@font-face {
  font-family: 'Nunito';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/nunito-italic-latin.woff2) format('woff2');
  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: 'Nunito';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/nunito-italic-latin-ext.woff2) format('woff2');
  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;
}
