:root {
  color-scheme: light;
  --font: "Manrope", "Segoe UI", sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --bg: #f8f7f5;
  --surface: #ffffff;
  --elevated: #ffffff;
  --muted-bg: #f1f0ed;
  --text: #171d29;
  --muted: #5c6570;
  --border: #e7e3df;
  --primary: #0759c8;
  --primary-hover: #034baa;
  --on-primary: #ffffff;
  --success: #1f7a45;
  --warning: #8a5a10;
  --error: #b42318;
  --typed: #8b93a1;
  --heat: #d85a3a;
  --shadow: 0 10px 30px rgba(23, 29, 41, 0.06);
  --radius: 22px;
  --radius-sm: 14px;
  --space-1: 0.35rem;
  --space-2: 0.7rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2.25rem;
  --hero: clamp(2.6rem, 4vw, 4rem);
  --h1: clamp(2rem, 3vw, 3rem);
  --h2: clamp(1.6rem, 2.2vw, 2.15rem);
  --h3: clamp(1.2rem, 1.5vw, 1.45rem);
  --body: clamp(0.98rem, 0.4vw + 0.9rem, 1.08rem);
  --meta: 0.82rem;
  --lessons: #e8f0ff;
  --speed: #fff0e4;
  --weak: #e7f5ea;
  --games: #f0ebff;
  --wave: #d7e6ff;
  --key-bg: #ffffff;
  --key-text: #171d29;
  --finger-lp: #c45c42;
  --finger-lr: #b8862d;
  --finger-lm: #1f8a58;
  --finger-li: #2f6eab;
  --finger-ri: #5b4cc4;
  --finger-rm: #b14e7c;
  --finger-rr: #b06d22;
  --finger-rp: #2f7f7a;
  --finger-th: #6f675e;
  --hand: #f0c9a0;
  --focus: #0759c8;
  --max: 1120px;
  --practice-w: 60rem;
  --mod-start: #d7e6ff;
  --mod-home: #ffe0c2;
  --mod-top: #d4f1f8;
  --mod-bottom: #d9f3cf;
  --mod-signs: #ffe7a8;
  --mod-caps: #e6dcff;
  --mod-texts: #ffd6e4;
  --sticker-ink: #14234b;
  --sticker-edge: #ffffff;
  --sticker-gold: #e0b43a;
}

html[data-mode="child"][data-theme="light"] {
  --bg: #fff9f2;
  --surface: #ffffff;
  --elevated: #fffdf9;
  --muted-bg: #fff1e2;
  --text: #14234b;
  --muted: #4e5970;
  --border: #e8e5e1;
  --primary: #075fcb;
  --primary-hover: #054e98;
  --success: #3d8f2a;
  --warning: #b86a12;
  --error: #c2410c;
  --typed: #8d97ab;
  --radius: 28px;
  --lessons: #e7f1ff;
  --speed: #fff0e0;
  --weak: #e9f8df;
  --games: #f3ecff;
  --wave: #ffe7c8;
  --orange: #ff8734;
  --yellow: #e0a51a;
  --green: #5eaf38;
  --purple: #7c5ce0;
  --key-bg: #fffdfb;
  --key-text: #14234b;
  --focus: #075fcb;
}

html[data-mode="adult"][data-theme="dark"] {
  color-scheme: dark;
  --bg: #11151c;
  --surface: #1c222c;
  --elevated: #252c38;
  --muted-bg: #1a2029;
  --text: #f4f6fa;
  --muted: #b7c0ce;
  --border: #343b47;
  --primary: #428bff;
  --primary-hover: #6aa4ff;
  --on-primary: #08111f;
  --success: #7dcea5;
  --warning: #e3b56a;
  --error: #ff8d84;
  --typed: #8e98a8;
  --heat: #ff8a6a;
  --shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
  --lessons: #1a2740;
  --speed: #3a2a22;
  --weak: #1a3028;
  --games: #2a2340;
  --wave: #1b3358;
  --key-bg: #252c38;
  --key-text: #f4f6fa;
  --finger-lp: #f0a090;
  --finger-lr: #f0cc78;
  --finger-lm: #7dcea5;
  --finger-li: #8eb8ef;
  --finger-ri: #c3b6ff;
  --finger-rm: #f0a8c8;
  --finger-rr: #f0c48a;
  --finger-rp: #8ed4cf;
  --finger-th: #c5bdb2;
  --hand: #e2b48a;
  --focus: #8eb8ff;
  --sticker-edge: #fff8ee;
  --sticker-gold: #ffd56a;
}

html[data-mode="child"][data-theme="dark"] {
  color-scheme: dark;
  --bg: #1a1424;
  --surface: #261c33;
  --elevated: #312444;
  --muted-bg: #22182e;
  --text: #f7f1ff;
  --muted: #d2c6e4;
  --border: #463858;
  --primary: #7eb6ff;
  --primary-hover: #a5ccff;
  --on-primary: #10182c;
  --success: #b6e89a;
  --warning: #ffd27a;
  --error: #ffb4a8;
  --typed: #b3a8c6;
  --heat: #ff9b7a;
  --shadow: 0 12px 32px rgba(0, 0, 0, 0.32);
  --radius: 28px;
  --lessons: #24345a;
  --speed: #4a301f;
  --weak: #24361c;
  --games: #3a2c58;
  --wave: #3a2a18;
  --orange: #ffb068;
  --yellow: #ffd56a;
  --green: #b6e89a;
  --purple: #d2c0ff;
  --key-bg: #312444;
  --key-text: #f7f1ff;
  --finger-lp: #ffb3a4;
  --finger-lr: #ffe0a0;
  --finger-lm: #b6e89a;
  --finger-li: #a9d0ff;
  --finger-ri: #d7cbff;
  --finger-rm: #ffc2dc;
  --finger-rr: #ffd7a8;
  --finger-rp: #b7efe8;
  --finger-th: #ddd4ea;
  --hand: #f0c8a4;
  --focus: #b9d6ff;
  --sticker-edge: #fff8ee;
  --sticker-gold: #ffd56a;
}
