/* =====================================================================================================================
   Sunrise design tokens — shared by the public site (public.css) and the admin portal (admin.css).
   Palette, radii and shadows are copied from CALC CMS's Sunrise Campus theme (same owner) so both sites look like one
   family. See design-system/educe/MASTER.md for the rules. Fonts are self-hosted: the CSP allows no font CDN.
   ===================================================================================================================== */

/* Outfit (headings) and Nunito (body): variable fonts, SIL OFL 1.1 — licences in /site/fonts/OFL-*.txt. */
@font-face {
    font-family: "Outfit";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../site/fonts/outfit-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Outfit";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../site/fonts/outfit-latin-ext.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Nunito";
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url("../site/fonts/nunito-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, 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 800;
    font-display: swap;
    src: url("../site/fonts/nunito-latin-ext.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
    /* Sun (primary) */
    --sun-50: #FFF7EC;
    --sun-100: #FFE8CC;
    --sun-200: #FFD595;
    --sun-300: #FFC266;
    --sun-400: #FFA53D;
    --sun-500: #FF8C1A; /* buttons and large surfaces: ink text on top */
    --sun-600: #F07400;
    --sun-700: #B34700; /* orange text on white or pastel (AA) */
    /* Sky (secondary) */
    --sky-50: #F1F5FF;
    --sky-100: #DCE7FF;
    --sky-500: #3B6BF0;
    --sky-600: #2152D9; /* white text on top: 6.4:1 */
    --sky-700: #1A3FB8;
    --sky-900: #14296F;
    /* Neutrals */
    --ink: #1D1A39;
    --body: #474863;
    --muted: #62637A;
    --line: #EEEDF4;
    --line-2: #DFDDEA;
    --paper: #FFFFFF;
    --cream: #FFFAF2;
    /* Pastel tile pairs (background / icon) */
    --mint-100: #D5F5E6;
    --mint-700: #0B7A50;
    --lilac-100: #ECE3FF;
    --lilac-700: #6034C8;
    --rose-100: #FFE1E6;
    --rose-700: #C42A45;
    --lemon-100: #FFF2BD;
    --lemon-700: #8A5E00;
    /* Type */
    --font-head: "Outfit", "Poppins", ui-rounded, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
    --font-body: "Nunito", ui-rounded, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
    /* Hindi text: Nunito and Outfit have no Devanagari, so name the system Devanagari fonts explicitly. */
    --font-hindi: "Nirmala UI", "Mangal", "Noto Sans Devanagari", var(--font-body);
    /* Space, radius, elevation */
    --s-2: 8px;
    --s-3: 12px;
    --s-4: 16px;
    --s-5: 24px;
    --r-sm: 12px;
    --r-md: 18px;
    --r-lg: 28px;
    --r-xl: 44px;
    --r-pill: 999px;
    --shadow-sm: 0 2px 8px rgba(29, 26, 57, .06);
    --shadow-md: 0 14px 32px -14px rgba(29, 26, 57, .22);
    --shadow-lg: 0 34px 64px -28px rgba(29, 26, 57, .35);
    --shadow-sun: 0 14px 26px -12px rgba(240, 116, 0, .65);
    --shadow-sky: 0 14px 26px -12px rgba(33, 82, 217, .6);
    /* Motion (decision: subtle). Durations collapse to 0 under reduced motion, below. */
    --dur-fast: 150ms;
    --dur-base: 220ms;
    --dur-reveal: 420ms;
    --ease-out: cubic-bezier(.2, .7, .2, 1);
    /* Focus ring: visible on every surface (sky on light, sun on dark). */
    --focus-ring: 0 0 0 3px var(--paper), 0 0 0 5px var(--sky-600);
}

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

:lang(hi) {
    font-family: var(--font-hindi);
}

/* ---------------------------------------------------------------------------------------------------------------------
   Indigo & Coral — the public site's palette (owner's choice). The ramps keep their names so every component rule
   keeps its pairing logic: "sun" is still the warm ramp (now coral) and "sky" the cool one (now indigo). What changed
   is which ramp leads: indigo carries the main buttons, the header strip, the footer and the big panels; coral is the
   accent — highlighted words, links, decorative shapes. Those few role swaps live in public.css, next to the rules.
   Scoped to the public site, so the admin portal keeps the Sunrise colours until it is decided separately.

   Contrast, checked: white on --sky-600 6.3:1 and on --sky-700 7.9:1; --sun-600 as text on white 5.2:1 and white on
   it 5.2:1; --sun-700 as text 7.3:1; --ink on --sun-500 5.7:1. --sun-400 and lighter are for shapes, never for text.
   --------------------------------------------------------------------------------------------------------------------- */
body.public-site {
    /* Coral (warm) */
    --sun-50: #FFF5F2;
    --sun-100: #FFE6DF;
    --sun-200: #FFCBBD;
    --sun-300: #FDA48F;
    --sun-400: #FC8A70;
    --sun-500: #F96A4A; /* surfaces with --ink text on top: 5.7:1 */
    --sun-600: #C2410C; /* coral text on white, or white text on it: 5.2:1 */
    --sun-700: #9A3412; /* coral text on white or pastel: 7.3:1 */
    /* Indigo (cool, and now the lead) */
    --sky-50: #F6F5FF;
    --sky-100: #E6E3FF;
    --sky-500: #6366F1;
    --sky-600: #4F46E5; /* white text on top: 6.3:1 */
    --sky-700: #4338CA; /* white text on top: 7.9:1 */
    --sky-900: #1E1B4B; /* header strip, footer, Login */
    --cream: #F6F5FF;
    --shadow-sun: 0 14px 26px -12px rgba(249, 106, 74, .55);
    --shadow-sky: 0 14px 26px -12px rgba(79, 70, 229, .55);
    /* Re-declared, not inherited: a custom property built from var() resolves where it is declared, so the :root
       ring would stay Sunrise blue. */
    --focus-ring: 0 0 0 3px var(--paper), 0 0 0 5px var(--sky-600);
}
