/* ============================================================================
   THE SHELL'S STYLESHEET — one entry, every file in its layer.

   LAYER ORDER IS THE CASCADE. A rule in a later layer beats a rule in an earlier one at ANY specificity, so where a
   rule lives decides whether it can be overridden, not how many classes it has. The order below is the only place it
   is written; every file is imported INTO its layer, so no file declares a layer of its own.

     os.reset      the platform's defaults, levelled
     os.tokens     every value the system has a name for (nothing else may hold a raw colour, size or duration)
     os.base       bare elements: body, headings, links, focus, selection, scrollbars
     os.layout     the shell's frame: rail, main column, top bar, bottom nav
     os.components one block each: button, badge, avatar, field, table, filters, notifications…
     os.patterns   shared recipes that sit OVER components: the overlay box, the bottom sheet, the menu, motion
     os.effects    keyframes, entrances, the theme wipe
     os.views      a view may PLACE shared components; it never restyles one
     os.addons     a vendored surface and its glue (the PWA install sheets, D46): someone else's look on purpose, above
                   every layer that could reach its elements (docs/rules.md › Vendored)
     os.utilities  single-purpose helpers (sr-only, truncate)
     os.overrides  the last word: review switches, forced states

   Native @import with layer() — no build step. A bundler (Vite) keeps these as they are.
   ========================================================================== */
@layer os.reset, os.tokens, os.base, os.layout, os.components, os.patterns, os.effects, os.views, os.addons, os.utilities, os.overrides;

@import url("tokens/fonts.css") layer(os.tokens);
@import url("tokens/brand.css") layer(os.tokens);
@import url("tokens/core.css") layer(os.tokens);
@import url("tokens/density.css") layer(os.tokens);
@import url("tokens/themes.css") layer(os.tokens);
@import url("tokens/accents.css") layer(os.tokens);
@import url("tokens/tones.css") layer(os.tokens);

@import url("base/reset.css") layer(os.reset);
@import url("base/elements.css") layer(os.base);

@import url("layout/shell.css") layer(os.layout);
@import url("layout/topbar.css") layer(os.layout);
@import url("layout/bottom-nav.css") layer(os.layout);
@import url("layout/foyer.css") layer(os.layout);
@import url("layout/print.css") layer(os.layout);
@import url("layout/footer.css") layer(os.layout);

@import url("components/icon.css") layer(os.components);
@import url("components/button.css") layer(os.components);
@import url("components/badge.css") layer(os.components);
@import url("components/chip.css") layer(os.components);
@import url("components/eyebrow.css") layer(os.components);
@import url("components/surface.css") layer(os.components);
@import url("components/avatar.css") layer(os.components);
@import url("components/field.css") layer(os.components);
@import url("components/segmented.css") layer(os.components);
@import url("components/status.css") layer(os.components);
@import url("components/tabs.css") layer(os.components);
@import url("components/table.css") layer(os.components);
@import url("components/filters.css") layer(os.components);
@import url("components/notifications.css") layer(os.components);
@import url("components/launcher.css") layer(os.components);
@import url("components/check.css") layer(os.components);
@import url("components/disclosure.css") layer(os.components);
@import url("components/nav-editor.css") layer(os.components);
@import url("components/chat.css") layer(os.components);
@import url("components/alert.css") layer(os.components);
@import url("components/region.css") layer(os.components);
@import url("components/drawer.css") layer(os.components);
@import url("components/record.css") layer(os.components);
@import url("components/invoice.css") layer(os.components);
@import url("components/compose.css") layer(os.components);
@import url("components/navsheet.css") layer(os.components);
@import url("components/empty.css") layer(os.components);
@import url("components/skeleton.css") layer(os.components);
@import url("components/side-nav.css") layer(os.components);
@import url("components/settings.css") layer(os.components);
@import url("components/channel-matrix.css") layer(os.components);
@import url("components/database.css") layer(os.components);
@import url("components/palette.css") layer(os.components);
@import url("components/toast.css") layer(os.components);
@import url("components/tour.css") layer(os.components);
@import url("components/kpi.css") layer(os.components);
@import url("components/mark.css") layer(os.components);
@import url("components/divider.css") layer(os.components);
@import url("components/link.css") layer(os.components);
@import url("components/door.css") layer(os.components);
@import url("components/mail.css") layer(os.components);
@import url("components/chart.css") layer(os.components);
@import url("components/metric.css") layer(os.components);
@import url("components/board.css") layer(os.components);

@import url("patterns/glass.css") layer(os.patterns);
@import url("patterns/overlays.css") layer(os.patterns);
@import url("patterns/menu.css") layer(os.patterns);
@import url("patterns/page.css") layer(os.patterns);

@import url("effects/keyframes.css") layer(os.effects);
@import url("effects/motion.css") layer(os.effects);
@import url("effects/theme-wipe.css") layer(os.effects);

/* A view's own frame (never a component's look): after patterns, so it may space its own page. */
@import url("views/styleguide.css") layer(os.views);
@import url("views/invoice.css") layer(os.views);
@import url("views/emails.css") layer(os.views);
@import url("views/revenue.css") layer(os.views);

/* The PWA install sheets (D46): Sidecarr's skin, vendored, then the shell's glue for it. A plain import rather than
   Sidecarr's after-ready <link>: the shell has no build and no first-paint budget to protect. */
@import url("vendor/pwa-install.css") layer(os.addons);
@import url("addons/pwa-install.css") layer(os.addons);

@import url("base/utilities.css") layer(os.utilities);
@import url("base/overrides.css") layer(os.overrides);
