/* The game's Arcade theme (mishmash_flutter/lib/src/theme/tokens/), shared
   by every page: its colours, font, ink outlines and hard shadows. */
@font-face {
  font-family: "Baloo Bhaijaan 2"; font-weight: 400; font-display: swap;
  src: url("/fonts/baloo-bhaijaan-2-regular.woff2") format("woff2");
}
@font-face {
  font-family: "Baloo Bhaijaan 2"; font-weight: 700; font-display: swap;
  src: url("/fonts/baloo-bhaijaan-2-bold.woff2") format("woff2");
}
@font-face {
  font-family: "Baloo Bhaijaan 2"; font-weight: 800; font-display: swap;
  src: url("/fonts/baloo-bhaijaan-2-extrabold.woff2") format("woff2");
}

/* AppColors.light() */
:root {
  color-scheme: light dark;
  --primary: #815AE4;
  --on-primary: #FFFFFF;
  --primary-container: #E4E0FF;
  --on-primary-container: #472D85;
  --secondary: #CD398E;
  --on-secondary: #FFFFFF;
  --secondary-container: #FFD8E9;
  --on-secondary-container: #74144D;
  --tertiary: #F9CC21;
  --on-tertiary: #1B172C;
  --tertiary-container: #FFE38C;
  --on-tertiary-container: #514000;
  --success: #00948E;
  --success-container: #B7F2ED;
  --on-success-container: #004D4A;
  --error-container: #FFDBD7;
  --on-error-container: #7C1117;
  --background: #F7F5FF;
  --surface: #FFFFFF;
  --surface-subtle: #F0EEFD;
  --text: #1B172C;
  --text-2: #4D4961;
  --outline: #201A35;
  --divider: #E8E6F1;
}
/* AppColors.dark() */
@media (prefers-color-scheme: dark) {
  :root {
    --primary: #B3A0FF;
    --on-primary: #120E22;
    --primary-container: #392F5D;
    --on-primary-container: #DED8FF;
    --secondary: #FF7FC0;
    --on-secondary: #120E22;
    --secondary-container: #55243E;
    --on-secondary-container: #FFCEE4;
    --tertiary: #FFD335;
    --on-tertiary: #120E22;
    --tertiary-container: #453600;
    --on-tertiary-container: #FFDB68;
    --success: #3ADFD7;
    --success-container: #00413F;
    --on-success-container: #5EF9F1;
    --error-container: #5A2522;
    --on-error-container: #FFD1CD;
    --background: #171227;
    --surface: #251F3A;
    --surface-subtle: #1D1930;
    --text: #F5F4FC;
    --text-2: #BEBBD0;
    --outline: #D1CBF6;
    --divider: #2C283E;
  }
}

* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--background);
  color: var(--text);
  font: 18px/1.55 "Baloo Bhaijaan 2", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
a { color: inherit; }
h1, h2, h3 { font-weight: 800; line-height: 1.1; }

header { padding: 20px 0; }
.brand {
  display: inline-flex; align-items: center; gap: 12px;
  font-weight: 800; font-size: 26px; text-decoration: none;
}
.brand img {
  width: 44px; height: 44px; border-radius: 12px;
  border: 2.5px solid var(--outline); box-shadow: 0 3px 0 var(--outline);
}

/* AppPushable: a button that stands on its shadow and sinks into it. */
.btn {
  --depth: 5px;
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 58px; padding: 4px 28px 0; border-radius: 16px;
  font: inherit; font-weight: 800; font-size: 20px; text-decoration: none;
  background: var(--surface); color: var(--text);
  border: 2.5px solid var(--outline);
  box-shadow: 0 var(--depth) 0 var(--outline);
  margin-bottom: var(--depth);
  transition: transform 60ms ease, box-shadow 60ms ease;
  -webkit-tap-highlight-color: transparent;
}
.btn:hover { filter: brightness(1.04); }
.btn:active { transform: translateY(var(--depth)); box-shadow: 0 0 0 var(--outline); }
.btn-primary { background: var(--primary); color: var(--on-primary); }
.btn-yellow { background: var(--tertiary); color: var(--on-tertiary); }
.btn svg { width: 22px; height: 22px; flex: none; margin-top: -4px; }
[hidden] { display: none !important; }

footer { padding: 0 0 40px; color: var(--text-2); font-size: 16px; }
footer .wrap { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; }
footer .links { display: flex; flex-wrap: wrap; gap: 8px 24px; }
footer a { font-weight: 700; }

@media (prefers-reduced-motion: reduce) {
  .btn { transition: none; }
}
