/* =========================================================================
   brand-kit.css - the single source of TRA brand tokens for EVERY family
   (Desktop/Ops, Calendar, Mobile PWAs, Guest, Public, login and error pages).
   Loaded once by each family's base template. S273-B2 (DA273.10).

   Contains only the universal brand identity: the wordmark/UI typefaces, the raw
   brand marks (--brand-navy, --brand-blue), the wordmark font, and the asset
   variables for the logo, wordmark, lockup (light, dark and currentcolor),
   favicons, app icons and social images. No component, no interactive accent, no
   spacing/radius/shadow/motion scale: those stay per family (Desktop:
   tokens-desktop.css; Calendar: tokens-calendar.css; Mobile: tokens-mobile.css;
   Public: public-tokens.css).

   Paths are root-relative (/static/brand/...) on purpose: a relative url() held in a
   CSS variable resolves against the stylesheet that USES the variable, which differs
   per family. Machine-readable equivalent for non-CSS consumers: brand/manifest.json.

   Navy: #001B3A is the canonical value (BRANDKIT-ROLLOUT, commit 3efb8596). The
   Brand Kit v2 CSS shipped #001F3F; the repo token wins (DA273.10).
   ========================================================================= */

/* ---- Wordmark script face ----
   Verbatim source values from tokens-desktop.css. Calendar's own
   --font-brand: 'Allura', cursive (tokens-calendar.css) already points at
   the same face — this is the one place that @font-face should live so
   both families load it once instead of duplicating or silently omitting
   the declaration. */
@font-face {
  font-family: "Allura";
  src: url("/static/brand/fonts/Allura-Regular.06c41c8927d5.woff2") format("woff2"),
       url("/static/brand/fonts/Allura-Regular.ec47de04a5f2.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ---- Primary sans face ----
   Verbatim source values from tokens-desktop.css. Both Desktop
   (--font-sans) and Calendar (--font-body) name "Inter" first in their
   font stacks; only Desktop currently loads it via @font-face in the
   supplied files — Calendar's own tokens-calendar.css never does.
   FLAGGED, not assumed (see audit §7): this project cannot confirm
   whether Calendar's page shell loads Inter some other way (e.g. a
   template-level <link>). If it does not, Calendar is silently falling
   back past "Inter" today. Consuming this @font-face costs nothing either
   way and removes the ambiguity going forward. */
@font-face {
  font-family: "Inter";
  src: url("/static/brand/fonts/Inter-Variable-latin.260c81a4759b.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ---- Devanagari-script fallback face ----
   Verbatim source values from tokens-desktop.css. Per that file's own
   comment this face is already in live use on the public/guest-facing
   site (static/public/css/tra.css) under this identical 6-face split —
   genuinely cross-family (Desktop + Public Website), not Desktop-only,
   hence its promotion here rather than staying Desktop-local. */
@font-face {
  font-family: "Mukta";
  src: url("/static/brand/fonts/Mukta-400-devanagari.0177c1af85b0.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
  font-family: "Mukta";
  src: url("/static/brand/fonts/Mukta-400-latin.5fd54c8638ba.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  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: "Mukta";
  src: url("/static/brand/fonts/Mukta-600-devanagari.cd9e14260735.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
  font-family: "Mukta";
  src: url("/static/brand/fonts/Mukta-600-latin.f1c753473335.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  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: "Mukta";
  src: url("/static/brand/fonts/Mukta-700-devanagari.aa0e47f3623e.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
@font-face {
  font-family: "Mukta";
  src: url("/static/brand/fonts/Mukta-700-latin.a4069cc51529.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  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;
}

/* ---- Logo mark assets ----
   Canonical paths for the TRA mark. Every family's Tier-3 module reads
   these vars instead of hardcoding a path — one place to repoint if the
   asset location ever moves. Machine-readable equivalent (for non-CSS
   consumers: app manifests, favicon build steps, store listings) lives in
   static/brand/manifest.json — keep both in sync if paths change.
   Paths are relative to THIS file's own location (static/ops/) — one
   level up to static/brand/, matching the @font-face src convention
   above, NOT relative to the project root the source mockup assumed. */
:root {
  /* Full mark: double ring + monogram. Use on light backgrounds. */
  --brand-logo-light: url("/static/brand/logo/logo-mark-light.5b4c370c12b5.svg");
  /* Full mark, ink inverted to white. Use on dark/navy backgrounds. */
  --brand-logo-dark: url("/static/brand/logo/logo-mark-dark.4624cb938aae.svg");
  /* Icon + "the raveesh" wordmark side by side. */
  --brand-lockup-light: url("/static/brand/logo/lockup-light.4455dc6dee48.svg");
  --brand-lockup-dark: url("/static/brand/logo/lockup-dark.b2630c77b8cb.svg");
  /* Wordmark only, no icon. */
  --brand-wordmark-light: url("/static/brand/logo/wordmark-light.3d122cbac37f.svg");
  --brand-wordmark-dark: url("/static/brand/logo/wordmark-dark.e8b1367d38af.svg");
  /* Tintable variants: as an <img> they render in the SVG's own ink; use them
     inline or as a CSS mask when the colour is set by CSS. */
  --brand-logo-currentcolor: url("/static/brand/logo/logo-mark-currentcolor.27d9ed493f5e.svg");
  --brand-lockup-currentcolor: url("/static/brand/logo/lockup-currentcolor.4b8fe105dc41.svg");
  --brand-wordmark-currentcolor: url("/static/brand/logo/wordmark-currentcolor.90bb2632df1c.svg");

  /* Browser tab / bookmark favicons. 16px uses a simplified single-ring
     mark (the full double-ring + fine monogram detail does not survive
     rendering at literal 16×16) — every other size uses the full mark. */
  --brand-favicon-16: url("/static/brand/favicon/favicon-16.bf9ee3e86bfe.png");
  --brand-favicon-32: url("/static/brand/favicon/favicon-32.56a6d7294402.png");
  --brand-favicon-48: url("/static/brand/favicon/favicon-48.47a40eb7dfc8.png");
  --brand-favicon-64: url("/static/brand/favicon/favicon-64.4fa63a81e3c2.png");
  --brand-apple-touch-icon: url("/static/brand/favicon/apple-touch-icon-180.f998f9732fdf.png");
  --brand-android-chrome-192: url("/static/brand/favicon/android-chrome-192.4e93c821fdb5.png");
  --brand-android-chrome-512: url("/static/brand/favicon/android-chrome-512.a3ac06196c79.png");
  --brand-maskable-icon-512: url("/static/brand/favicon/maskable-icon-512.a285beea3378.png");

  /* Native app store / home-screen icons, opaque (no alpha). */
  --brand-app-icon-light: url("/static/brand/mobile/app-icon-1024-light.64798421f3fa.png");
  --brand-app-icon-dark: url("/static/brand/mobile/app-icon-1024-dark.26bb773d7e64.png");

  /* Link-preview / social ratio images. */
  --brand-og-image-light: url("/static/brand/social/og-image-1200x630-light.592d34862b2e.png");
  --brand-og-image-dark: url("/static/brand/social/og-image-1200x630-dark.81ed95f29a7b.png");
  --brand-social-square-light: url("/static/brand/social/social-square-1080-light.d1b3bff948fd.png");
  --brand-social-square-dark: url("/static/brand/social/social-square-1080-dark.6fafca94a945.png");

  /* Non-CSS consumers (site <link>/<meta>, PWA manifest, app store config):
     see static/brand/manifest.json and static/brand/README.md for the
     literal paths and the ready-to-paste HTML head snippet. */
}

:root {
  /* ---- Brand identity marks ----
     Raw hex, for the wordmark/logo mark ONLY — not a functional UI accent
     scale. Desktop's tokens-desktop.css --theme-primary/--theme-accent
     independently declare the same two values today (fixed brand anchor,
     per that file's own header) — this is the single canonical source if
     a future pass chooses to alias them; that aliasing is NOT performed
     here (would mean editing tokens-desktop.css, out of this phase's
     scope — ARCHITECTURE_AUDIT_PHASE1.md §8). Calendar's own accent is
     deliberately independent and does not consume these.
     */
  /* The repo token is the source: this must equal --theme-primary in static/ops/tokens-desktop.css
     (#001B3A). A test compares the two; change the token there first, never here alone. */
  --brand-navy: oklch(22.3% 0.069 253.2); /* #001B3A */
  --brand-blue: oklch(49.9% 0.099 250.4); /* #336699 */

  /* ---- Wordmark typography identity ----
     Both families already carry an equivalent token pointing at this
     same value (Desktop's --theme-wordmark-font, Calendar's --font-brand)
     — this is the shared source of truth behind both, not a replacement
     for either. */
  --brand-wordmark-font: "Allura", "Brush Script MT", cursive;
}
