/* student-hub.css — stylesheet entry for student_hub.html, served at /hub.
   The cross-track Student Hub (arch/student_hub_plan.md Sprint 3).

   NOT css/hub.css. That one dresses hub.html, the public marketing landing page served at "/",
   and it owns the `hub-` class prefix. This page owns `sh-`. Two different pages, two different
   audiences, one unfortunate word.

   This is a document-scrolling learner page: the shared tokens, base, components and learner
   features, then Hub-only features. layout.css is deliberately absent because it owns the fixed
   three-pane app shell and disables body scrolling. state.css arrives through components.css,
   which imports it - .load-error and .is-busy are load-bearing here and the contract test
   resolves @import chains transitively.

   lesson-output.css is intentionally absent. Sprint 5 adds the shared handout viewer and decides
   where its presentation lives; importing the teacher canvas now would be styling for markup that
   does not exist. */

@import "tokens.css";
@import "base.css";
@import "components.css";
@import "learner-features.css";
@import "student-hub-features.css";
@import "course-map-timeline.css";
