/*
 * oceanic is now token-driven via the shared base (index.css) — same
 * mechanism as clarity-poc/astro-cosmic/cosmosea. The block below layers
 * oceanic's own original identity (blue-violet primary, 0.375rem corner
 * radius, "Outfit" body font) as the fallback that's visible whenever a
 * tenant hasn't picked an explicit preset yet, since src/app/layout.tsx
 * falls back to data-primary-color="green" / data-corner-style="soft" /
 * data-font-body="inter" when tenant.theme.style is unset — without this
 * block, every live oceanic tenant without a saved theme.style would
 * silently flip to those shared defaults instead of keeping oceanic's
 * current look.
 *
 * This works because attribute-selector rules in index.css
 * (:root[data-primary-color="green"] etc.) are more specific than the plain
 * `:root` rule below, so they still win whenever a tenant explicitly picks
 * one of the 8 presets — only the *unmatched* fallback state (no
 * attribute-selector rule applies) falls through to oceanic's own values.
 *
 * "Outfit" was already oceanic's declared --font-sans before this file was
 * token-driven, but it was never actually loaded anywhere in the app, so it
 * silently fell back to the browser's default sans-serif. The @import below
 * fixes that (restores the originally-intended look) rather than
 * preserving the accidental fallback.
 */
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap");
@import url("./index.css");

:root {
    --primary-h: 276.0328;
    --primary-c: 0.2307;
    --primary-l: 0.5086;
    --primary-foreground: oklch(0.9846 0.0017 247.8389);

    --font-outfit: "Outfit", sans-serif;
    --font-sans: var(--font-outfit);
    --radius: 0.375rem;
}

:root.dark {
    /* same hue as light mode, brightened so the fallback blue-violet stays
   * legible on the shared dark background. */
    --primary-c: 0.18;
    --primary-l: 0.68;
    --primary-foreground: oklch(0.145 0 0);
}
