/* 7packs design tokens. Source of truth: the 7packs identity (packages/tokens in the 7packs repo).
   Components use only the semantic names (--bg, --text, --action…), never raw hex. */

@font-face {
  font-family: "Unbounded";
  src: url("/assets/fonts/Unbounded-800-latin.woff2") format("woff2");
  font-weight: 800;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/assets/fonts/Inter-400-600-latin.woff2") format("woff2");
  font-weight: 400 600;
  font-display: swap;
}

:root {
  color-scheme: dark;

  /* palette */
  --green-7packs: #82dd5a;
  --green-mid: #4fa03c;
  --green-deep: #2e6a26;
  --ink: #14281a;
  --glow: #f2ffe6;
  --background-deep: #14161e;
  --background: #181b26;
  --surface: #222635;
  --surface-raised: #2a2f40;
  --border: #343a4d;
  --foreground: #f4f6f0;
  --foreground-muted: #a7adbd;
  --paper: #f3f5ee;

  /* rarity (card frames, odds bars, filters) */
  --rarity-common: #a7adbd;
  --rarity-rare: #6ec3ff;
  --rarity-ultra: #82dd5a;
  --rarity-special: #f2ffe6;

  /* semantic */
  --bg: var(--background);
  --bg-deep: var(--background-deep);
  --bg-card: var(--surface);
  --bg-card-hover: var(--surface-raised);
  --line: var(--border);
  --text: var(--foreground);
  --text-muted: var(--foreground-muted);
  --action: var(--green-7packs);
  --action-pressed: var(--green-deep);
  --on-action: var(--ink);
  --highlight-bg: var(--ink);

  /* type */
  --font-display: "Unbounded", "Arial Black", sans-serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --text-display: clamp(2.25rem, 1.2rem + 4.4vw, 4.4rem);
  --text-h2: clamp(1.6rem, 1.15rem + 1.8vw, 2.5rem);
  --text-h3: 1.125rem;
  --text-body: 1rem;
  --text-small: 0.875rem;
  --text-label: 0.8125rem;

  /* space, radius, height */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px;
  --space-6: 24px; --space-8: 32px; --space-10: 40px; --space-12: 48px; --space-14: 56px;
  --radius-sm: 8px; --radius-md: 12px; --radius-lg: 20px; --radius-xl: 28px; --radius-pill: 9999px;
  --control-sm: 40px; --control-md: 48px; --control-lg: 56px;
  --container: 1280px;
  --gutter: clamp(16px, 4vw, 40px);
  --section: clamp(64px, 9vw, 120px);
  --header-h: 72px;

  /* motion */
  --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --focus-ring: 0 0 0 2px var(--bg), 0 0 0 4px var(--action);
}

@media (max-width: 760px) {
  :root { --header-h: 60px; }
}
