/* Kivolo design tokens — used by /, /parents, /cabinet/, /admin/. CC0. */

/* ── Self-hosted fonts (no external trackers) ────────────────────
   Fredoka has only Latin glyphs on fontsource — Cyrillic rendering falls back
   to Nunito 700 via unicode-range so both alphabets look consistent. */
@font-face {
  font-family: 'Fredoka'; font-style: normal; font-weight: 500; font-display: swap;
  src: url('/assets/fonts/Fredoka-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fredoka'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('/assets/fonts/Fredoka-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fredoka'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('/assets/fonts/Fredoka-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('/assets/fonts/Nunito-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('/assets/fonts/Nunito-400-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('/assets/fonts/Nunito-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('/assets/fonts/Nunito-600-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('/assets/fonts/Nunito-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('/assets/fonts/Nunito-700-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* ── Design tokens ───────────────────────────────────────────── */
/* Day 14: saturated primary palette derived directly from the new Kivolo logo
   letters (rocket + hat + balloons + rabbit wordmark). Legacy Day-11 aliases
   retained for /parents, /cabinet, /admin etc. that don't change.
   Day-14 additions below: tint variants for section "zones". */
:root {
  /* Saturated primaries (K4 — from logo) */
  --kv-coral:   #FF5B7F;  /* K letter */
  --kv-orange:  #FF9F1C;  /* letter block */
  --kv-yellow:  #FFD93D;  /* accents */
  --kv-green:   #6BCB77;  /* V letter */
  --kv-teal:    #4D96FF;  /* L letter */
  --kv-purple:  #9B5DE5;  /* O letter */
  --kv-ink:     #0B1E3F;
  --kv-cream:   #FFF8EC;

  /* Section zone tints (K5) — very light washes of accent colours */
  --kv-zone-featured: #FFF8EC;   /* cream — featured carousel */
  --kv-zone-videos:   #E3F5F8;   /* light teal */
  --kv-zone-games:    #FEE8EE;   /* light coral */
  --kv-zone-stories:  #F1E9FC;   /* light purple — used for trial banner too */
  --kv-zone-new:      #FFF7D9;   /* light yellow */
  --kv-zone-apps:     #E9F8EC;   /* light green */

  /* Day 11 legacy rainbow tokens (kept so other pages don't break) */
  --kv-red:     #E8353C;
  --kv-blue:    #4FA9E8;
  --kv-pink:    #F06292;

  /* Legacy gradient token kept for /parents etc.; Day-14 home does NOT use it. */
  --kv-hero-gradient: linear-gradient(135deg,
    #E8353C 0%, #FF8A3D 25%, #FFC14E 50%, #F06292 75%, #8E5CE8 100%);
  --kv-hero-overlay:  radial-gradient(ellipse at 30% 40%, rgba(11,30,63,0.18), transparent 60%);

  /* Legacy aliases (Day 8–10) — kept identical in tone, re-pointed at new hex */
  --kivolo-navy:     var(--kv-ink);
  --kivolo-sky:      var(--kv-blue);
  --kivolo-yellow:   var(--kv-yellow);
  --kivolo-coral:    var(--kv-red);
  --kivolo-mint:     var(--kv-green);
  --kivolo-lavender: var(--kv-purple);
  --kivolo-cream:    var(--kv-cream);
  --kivolo-pink-soft:#FFE8F0;

  --radius-card:     28px;
  --radius-round:    999px;
  --shadow-kid:       0 12px 30px rgba(11, 30, 63, 0.18);
  --shadow-kid-hover: 0 22px 46px rgba(11, 30, 63, 0.28);
  --shadow-sunset:    0 24px 60px rgba(232, 53, 60, 0.35);

  /* Typography */
  --font-display: 'Fredoka', 'Nunito', system-ui, sans-serif;
  --font-body:    'Nunito', system-ui, -apple-system, sans-serif;

  /* Base size — min 18px per accessibility guideline for kids-first content */
  --size-base: 18px;
}

html { font-size: var(--size-base); }
body { font-family: var(--font-body); color: var(--kivolo-navy); background: var(--kivolo-cream); }
h1, h2, h3, .kv-display { font-family: var(--font-display); font-weight: 700; letter-spacing: -0.015em; }

/* Palette-by-index utility (used in repeating tiles) */
.kv-bg-1 { background: var(--kivolo-sky); }
.kv-bg-2 { background: var(--kivolo-yellow); }
.kv-bg-3 { background: var(--kivolo-coral); }
.kv-bg-4 { background: var(--kivolo-mint); }
.kv-bg-5 { background: var(--kivolo-lavender); }
.kv-bg-6 { background: #FF9BB8; }
