/* =============================================================================
   Hilo · app.css — v2 frontend (TBL-416)
   =============================================================================

   Bundle entry-point for the v2 component-model templates under
   internal/web/templates/v2/. TBL-477 split the original 4136-LOC file along
   its named-layer boundaries into layers/*.css; this file is now a thin
   manifest of @import rules in cascade order.

   Why @import (vs build-time concatenation): static assets are served from
   embed.FS (web.go::staticFS) via http.FileServer. The cost is N file reads
   at server startup, not N HTTP requests — Go embeds each file into the
   binary at compile time. The @import URLs resolve to /static/layers/*.css,
   which the same FileServer serves out of the same FS. No build hook
   required.

   Cascade order matters and is preserved verbatim from the pre-split file:

     1. TOKENS         — :root custom properties + .dir-shortwave +
                         .pal-ember palette. (layers/tokens.css)
     2. ELEMENTS       — element selectors, .h-main / .h-topbar / .h-footer
                         layout chrome, Hilo brand atoms (.h-thread,
                         .h-time, .h-mono, .h-brand). (layers/elements.css)
     3. ATOMS          — .btn, .field, .field-checkbox, .pill, .eyebrow.
                         (layers/atoms.css)
     4. MOLECULES      — .card, .form-card, .progress-steps, .stat,
                         .episode-row, .meta-grid, .empty-state, .alert.
                         (layers/molecules.css)
     5. ORGANISMS      — .agent-run-table-*, .agent-run-blob-*,
                         .recall-list-*, .recall-hit-*, .plan-card-*,
                         .plan-question-list-*, .cost-sparkline-*,
                         .api-token-table-*. (layers/organisms.css)
     6. PAGES          — split across four files by domain so each stays
                         under the FRONTEND_REVIEW ≤1000-LOC budget:
                         · layers/pages-public.css   — .landing-*,
                           .subscribe-*, .login-*, .submit-*.
                         · layers/pages-episodes.css — .episodes-*,
                           .episode-*, .audio-spotcheck-*,
                           .episode-debug-*, .plan-review-*,
                           .plan-review-questions-*.
                         · layers/pages-admin.css    — .admin-overview-*,
                           .admin-subpage-*, .admin-form-*, .admin-voices-*,
                           .voice-catalog-*, .admin-feed-*.
                         · layers/pages-admin-data.css — .admin-memory-*,
                           .memory-corpus-*, .admin-tokens-*, .api-token-*,
                           .admin-users-*, .user-table-*, .user-cell-*,
                           per-user cost-ceiling cells, .quota-* + the
                           /dev/kitchen-sink utility block.
     7. MOTION         — @keyframes hiloFadeIn, the details[open] reveal,
                         the prefers-reduced-motion overrides.
                         (layers/motion.css)
     8. PAGES-OVERRIDES — mobile @media foundation block + .settings-*
                         page family (alias layer over .admin-subpage-*).
                         Lives AFTER motion to preserve the pre-split
                         cascade — mobile overrides win over per-page
                         desktop rules; settings overrides inherit/extend
                         the admin shell. (layers/pages-overrides.css)

   Per FRONTEND_REVIEW §5 P1.1 + AC: each layer file ≤1000 LOC, no semantic
   change, existing v2 tests pass without template edits. TBL-461 (token
   declarations referenced ~1500 LOC away) is the regression category this
   split closes — co-locating :root declarations with the layer that owns
   them keeps the cognitive surface bounded.

   Drop choices (vs concept-explorer tokens.css):
     • Telegraph and Bobbin directions are NOT included (concept scaffolding,
       not production).
     • Among Shortwave palettes, only `.pal-ember` is kept — the production
       palette decision from TBL-321.
     • style.css (legacy Dale Tranqui beige look) was deleted in TBL-461
       once every active route had migrated to the v2 layout_shell. The
       v1 templates/_layout.html still exists in the tree as dead code
       pending the broader v1 cleanup in Phase 6 of TBL-415; the stale
       <link> to /static/style.css was stripped at the same time.

   Old tokens.css is preserved on disk for the design-system handoff docs
   (Documentation/design-system/) — not deleted in this issue.

   Naming: atomic classes (.btn, .field, .pill, .card, .form-card, etc.)
   are intentionally generic — they live in the .dir-shortwave palette
   context. The .h-* prefix is reserved for "Hilo brand atoms" that carry
   the wordmark identity even outside palette scope (.h-mono, .h-thread,
   .h-brand, .h-topbar, .h-footer).
   ========================================================================== */

@import url('layers/tokens.css');
@import url('layers/elements.css');
@import url('layers/atoms.css');
@import url('layers/molecules.css');
@import url('layers/organisms.css');
@import url('layers/pages-public.css');
@import url('layers/pages-episodes.css');
@import url('layers/pages-admin.css');
@import url('layers/pages-admin-data.css');
@import url('layers/motion.css');
@import url('layers/pages-overrides.css');
