/* fonte.css — Roboto servida LOCALMENTE.
 *
 * Nada de Google Fonts: a app roda em servidor na LAN do cliente, muitas vezes
 * sem saída para a internet (mesma razão pela qual o Cesium é servido de
 * /cesium em vez de CDN). Os arquivos vêm do pacote `@fontsource/roboto`,
 * montado em /fonts/roboto no server.js.
 *
 * Só o subset latin e os três pesos que a interface usa (400 corpo, 500
 * rótulos/labels, 700 títulos) — cada peso extra é mais um download no boot.
 * `font-display: swap` mostra o texto na fonte de fallback enquanto baixa, em
 * vez de deixar a tela em branco.
 */

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/roboto/files/roboto-latin-400-normal.woff2') format('woff2'),
       url('/fonts/roboto/files/roboto-latin-400-normal.woff') format('woff');
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/roboto/files/roboto-latin-500-normal.woff2') format('woff2'),
       url('/fonts/roboto/files/roboto-latin-500-normal.woff') format('woff');
}

@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/roboto/files/roboto-latin-700-normal.woff2') format('woff2'),
       url('/fonts/roboto/files/roboto-latin-700-normal.woff') format('woff');
}

/* Stack única da aplicação. O fallback continua sendo o sistema, para o caso de
 * a fonte não carregar. `--fonte-app` deixa as views declararem uma coisa só. */
:root {
  --fonte-app: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
