/* Nụ Cười Xinh · theme "Biển Sáng" (infographic-semiflat) · generated by web-theme/theme-build.mjs from design-system.json, palette "bien-sang".
   Every colour below comes from the DS. Edit the DS and rebuild — never edit by hand. */
:root {
  color-scheme: light;
  --color-primary: #0B6B73;
  --color-onPrimary: #FFFFFF;
  --color-secondary: #A8443A;
  --color-onSecondary: #FFFFFF;
  --color-bg: #F5FAF9;
  --color-surface: #FFFFFF;
  --color-fg: #12324A;
  --color-muted: #46606F;
  --color-border: #D3E6E4;
  --color-success: #1E7A4C;
  --color-warning: #8A5A00;
  --color-danger: #B3261E;
  --color-info: #2B5C8A;
  --color-focus: #2B5C8A;
  --font-sans: "Be Vietnam Pro", system-ui, sans-serif;
  --font-display: "Baloo 2", system-ui, sans-serif;
  --font-serif: Georgia, serif;
  --font-voice: "Be Vietnam Pro", system-ui, sans-serif;
  --voice-style: normal;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
  --text-xs: 12px;
  --text-sm: 14px;
  --text-base: 16px;
  --text-lg: 18px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 32px;
  --text-4xl: 40px;
  --text-5xl: 56px;
  --leading-tight: 1.15;
  --leading-normal: 1.6;
  --leading-relaxed: 1.75;
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 36px;
  --radius-full: 9999px;
  --shadow-sm: 0 1px 2px rgb(18 50 74 / .08);
  --shadow-md: 0 8px 24px rgb(18 50 74 / .10), inset 0 1px 0 rgb(255 255 255 / .6);
  --shadow-lg: 0 18px 44px rgb(18 50 74 / .16);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;
  --ease: cubic-bezier(.2,.9,.3,1.2);
  --touch: 44px;
  --maxw: 1280px;
}

[data-theme="dark"] {
  color-scheme: dark;
  --color-primary: #7DDCD3;
  --color-onPrimary: #0D2233;
  --color-secondary: #FF9F90;
  --color-onSecondary: #0D2233;
  --color-bg: #0D2233;
  --color-surface: #15314A;
  --color-fg: #F2FAF9;
  --color-muted: #A8C4CC;
  --color-border: #2C4C63;
  --color-success: #7FD6A5;
  --color-warning: #F0B44C;
  --color-danger: #FF8A80;
  --color-info: #93C0EA;
  --color-focus: #F0B44C;
}

@media (prefers-reduced-motion: reduce) {
  :root { --dur-fast: 0ms; --dur-base: 0ms; --dur-slow: 0ms; }
}
