/* The AIpocalypse: shared by the game and the hall of fame.

   Fonts, self-hosted (Fontsource woff2, SIL Open Font License).
   Replaces the Google Fonts <link> of the original bundle: our CSP only allows
   fonts from 'self', and Google would receive every player's IP. */
@font-face {
  font-family: 'Press Start 2P';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('/fonts/press-start-2p-latin-ext-400-normal.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: 'Press Start 2P';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('/fonts/press-start-2p-latin-400-normal.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: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('/fonts/ibm-plex-mono-latin-ext-400-normal.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: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('/fonts/ibm-plex-mono-latin-400-normal.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: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('/fonts/ibm-plex-mono-latin-ext-600-normal.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: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('/fonts/ibm-plex-mono-latin-600-normal.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;
}

/* R3: the site cookie banner (shared/CookieBanner.astro), restyled for the
   game pages, which do not load the site's Tailwind sheet. It never shows while
   the game is running, so it cannot sit on the touch pad; on a finger-driven screen
   on the game page it docks at the top, clear of the form and the end-screen
   buttons. */
#cookie-banner{position:fixed; left:12px; right:12px; bottom:12px; z-index:50;
  max-width:24rem; margin-left:auto; padding:14px 16px;
  background:#161a22; color:#e8dfc8; border:2px solid #2c3444;
  box-shadow:0 0 0 2px #000, 0 6px 0 0 #000; font-size:12px; line-height:1.6}
#cookie-banner[hidden],
body[data-scene="act1"] #cookie-banner, body[data-scene="dialog"] #cookie-banner,
body[data-scene="heal"] #cookie-banner, body[data-scene="sweep"] #cookie-banner{display:none}
#cookie-banner p{margin:0; max-width:none; font-size:12px}
#cookie-banner strong{font-weight:600; color:#1fa0f0}
#cookie-banner div{display:flex; justify-content:flex-end; margin-top:10px}
#cookie-accept{font-family:"Press Start 2P",monospace; font-size:9px; letter-spacing:1px;
  background:#1fa0f0; color:#04121c; border:0; padding:12px 14px; min-height:44px;
  cursor:pointer; box-shadow:0 0 0 2px #000, 0 6px 0 0 #000}
#cookie-accept:hover{background:#6ac4fa}
#cookie-accept:focus-visible{outline:2px solid #1fa0f0; outline-offset:3px}
/* body[data-scene] exists on the game page only: the hall of fame keeps the
   banner at the bottom, below its table */
@media (pointer:coarse){
  body[data-scene] #cookie-banner{bottom:auto; top:calc(8px + env(safe-area-inset-top,0px)); max-width:none}
}
