/*
 * Global styles — the plain-CSS half of the original app/globals.css.
 * (Theme tokens for Tailwind live in the <style type="text/tailwindcss">
 * block in app/views/layouts/app.php.)
 */

:root {
  --background: #ffffff;
  --foreground: #171717;

  /* Geist from Google Fonts, with metric-matched fallbacks (the same ones
     next/font generated) so text does not shift when the font arrives */
  --font-geist-sans: "Geist", "Geist Fallback";
  --font-geist-mono: "Geist Mono", "Geist Mono Fallback";
}

@font-face {
  font-family: "Geist Fallback";
  src: local("Arial");
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0%;
  size-adjust: 104.76%;
}

@font-face {
  font-family: "Geist Mono Fallback";
  src: local("Arial");
  ascent-override: 74.67%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  size-adjust: 134.59%;
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: var(--font-geist-sans), Arial, Helvetica, sans-serif;
  /* clip, not hidden: no sideways scrollbar, and sticky sections keep working */
  overflow-x: clip;
}

/*
 * Tailwind's browser build compiles CSS in the page, a moment after the
 * HTML arrives. Until it has (see the check at the end of the layout), the
 * page stays invisible so visitors never see it unstyled. If the CDN is
 * unreachable the page is revealed anyway after 3s.
 */
html[data-booting] body {
  opacity: 0;
  animation: app-reveal 0s linear 3s forwards;
}

@keyframes app-reveal {
  to {
    opacity: 1;
  }
}
