/* ============================================================================
   BunkerSafe — the universal stylesheet.

   This is the ONLY stylesheet the app links (see Components/App.razor). Every
   page and every component gets exactly this cascade, in exactly this order.
   Before it existed, App.razor linked 24 sheets and five pages injected extra
   ones through <HeadContent>, so "the same control" genuinely resolved to
   different rules depending on which page you were standing on.

   ── Rules of the road ──────────────────────────────────────────────────────

   1. New styles go in css/design-system/. Do not add a new top-level sheet.
      The files above the design-system block are legacy and are being drained
      into it; adding to them moves the app backwards.

   2. Order below IS the cascade, and it is not arbitrary — it reproduces the
      load order the browser was already using, measured off the running app
      (document.styleSheets) before the consolidation. Reordering these lines
      silently changes which rule wins in roughly 130 selectors that are
      defined in more than one file. Do not sort them.

   3. Page-specific sheets (homepage, courseBuilder) sit where Blazor's
      HeadOutlet used to place them: after the base sheets, BEFORE the
      Syncfusion theme and the design system. That is why a page sheet can
      never beat a design-system rule, which is the behaviour we want.

   4. CACHE: the ?v= token is the cache-buster for the imported files.
      @Assets[] fingerprints THIS file, but imports are plain relative URLs and
      are not fingerprinted. Bump every ?v= together (find/replace) whenever
      you edit any imported sheet, or browsers will serve a stale copy and your
      change will look like it did nothing.
      This includes BunkerSafe.styles.css, which nobody edits directly — it is
      regenerated from the *.razor.css files on every build. Touching any
      component's scoped stylesheet counts as editing this import: bump ?v= (or
      hard-reload) or the scoped change will not show up either.

   ── Not imported here, deliberately ────────────────────────────────────────

   • bootstrap-icons (CDN) — third-party, cross-origin.
   ========================================================================= */

/* ---- Base: framework reset, app shell, media player --------------------- */
@import url("../lib/bootstrap/dist/css/bootstrap.min.css?v=33");
@import url("site.css?v=33");
@import url("../app.css?v=33");
@import url("app-layout.css?v=33");
/* The compiler-generated scoped-component bundle (*.razor.css), imported at the
   exact position it occupied before this file existed. It is tempting to move
   it last on the theory that component styles should beat global ones — but
   scoped selectors already carry a [b-xxxxx] attribute that outranks the bare
   global selector, so moving it would change nothing we want and could flip any
   pair that happens to tie. Reordering the cascade is not part of consolidating
   it. Leave it here. */
@import url("../BunkerSafe.styles.css?v=33");
@import url("trainingPlayer.css?v=33");
@import url("../syncfusion-blazor-icons.css?v=33");

/* ---- Page sheets (formerly injected per page via <HeadContent>) --------- */
@import url("homepage.css?v=33");
@import url("courseBuilder.css?v=33");

/* ---- Syncfusion theme --------------------------------------------------- */
@import url("/_content/Syncfusion.Blazor.Themes/fluent2.css");

/* ---- Radzen theme --------------------------------------------------- */
@import url("/_content/Radzen.Blazor/css/standard-base.css");

/* ---- Legacy global layers (being drained into the design system) -------- */
@import url("portflow-modern.css?v=33");
@import url("bs-shared-ui.css?v=33");
@import url("BunkerSafe.GlobalStyles.css?v=33");
@import url("bs-courses-style.css?v=33");
@import url("bs-training-buttons.css?v=33");
@import url("portflow-global.css?v=33");
/* App.razor used to ask for "BunkerSafe-global.css" while the file on disk is
   bunkersafe-global.css. Windows served it case-insensitively so it worked by
   luck, but the fingerprint manifest missed it and it was never cache-busted.
   Spelled correctly here. */
@import url("bunkersafe-global.css?v=33");
@import url("crew.css?v=33");

/* ---- Design system: tokens first, then components ----------------------- */
@import url("design-system/tokens-fonts.css?v=33");
@import url("design-system/tokens-colors.css?v=33");
@import url("design-system/tokens-typography.css?v=33");
@import url("design-system/tokens-spacing.css?v=33");
@import url("design-system/tokens-radius.css?v=33");
@import url("design-system/tokens-elevation.css?v=33");
@import url("design-system/tokens-motion.css?v=33");
@import url("design-system/tokens-base.css?v=33");
@import url("design-system/bs-redesign-overrides.css?v=33");
@import url("design-system/bs-syncfusion-skin.css?v=33");
@import url("design-system/bs-radzen-skin.css?v=33");
@import url("design-system/bs-auth.css?v=33");
@import url("design-system/bs-ds-components.css?v=33");
@import url("design-system/bs-home-cards.css?v=33");
@import url("design-system/bs-topnav.css?v=33");
@import url("design-system/bs-authority.css?v=33");
@import url("design-system/bs-oilspill.css?v=33");
@import url("design-system/bs-wildlife.css?v=33");
/* LAST on purpose: the Round-2 split-design-system port overrides earlier
   layers by source order — nothing may load after it. */
@import url("design-system/bs-split-port.css?v=33");
