/* Explain: Theme tokens defining the color palette and typography. */
:root {
    --primary-color: #0B5CFF;
    --primary-hover: #0040D6;
    --secondary-color: #0A0E1A;
    --accent-color: #0A2E6E;
    --accent-ink: #FFFFFF;
    --accent-on-dark: #5B8DEF;
    --logo-subtitle-color: #5A6478;
    --button-color: #0B5CFF;
    --background-color: #FFFFFF;
    --surface-color: #FFFFFF;
    --footer-bg: #0A0E1A;
    --text-color: #0A0E1A;
    --text-muted: #5A6478;
    --border-color: rgba(10, 14, 26, 0.10);
    --glass-bg: rgba(255, 255, 255, 0.85);
    --glass-border: rgba(10, 14, 26, 0.10);
    --nav-bg: rgba(255, 255, 255, 0.90);
    --field-bg: rgba(10, 14, 26, 0.04);
    --sage-soft: rgba(11, 92, 255, 0.10);
    --sage-dark: #0B5CFF;
    --terracotta-soft: rgba(10, 46, 110, 0.12);
    --shadow-soft: 0 24px 70px rgba(10, 14, 26, 0.14);
    --shadow-button: 0 18px 40px rgba(11, 92, 255, 0.32);
    --font-heading: 'Rubik', 'Cairo', 'Noto Sans SC', sans-serif;
    --font-body: 'Heebo', 'Rubik', 'Cairo', 'Noto Sans SC', sans-serif;
    --font-logo: 'Secular One', 'Rubik', sans-serif;
}