/* Unified bundle for SPA shell (landing + library + articles). */
@import url('./fonts.css?v=20261025menu');
@import url('./tokens.css?v=20261025menu');
@import url('./site-theme.css?v=20261025menu');
@import url('./layout-and-chrome-1-base-mosaic.css?v=20261025menu');
@import url('./layout-and-chrome-2-mosaic-player.css?v=20261025menu');
@import url('./layout-and-chrome-3-mosaic-index.css?v=20261025menu');
@import url('./layout-and-chrome-4-filter-sidebar-a.css?v=20261025menu');
@import url('./layout-and-chrome-5-filter-sidebar-b.css?v=20261025menu');
@import url('./layout-and-chrome-6-chrome-misc.css?v=20261025menu');
@import url('./list-meta-cells.css?v=20261025menu');
@import url('./mosaic-artist-header.css?v=20261025menu');
@import url('./mosaic-entity-page.css?v=20261025menu');
@import url('./library-dataset.css?v=20261025menu');
@import url('./alias-photo-carousel.css?v=20261025menu');
@import url('./site-header.css?v=20261025menu');
@import url('./site-auth.css?v=20261025menu');
@import url('./site-consent.css?v=20261025menu');
@import url('./site-privacy.css?v=20261025menu');
@import url('./site-bootstrap.css?v=20261025menu');
@import url('./access-gate.css?v=20261025menu');
@import url('./entry-intro.css?v=20261025menu');
@import url('./site-route-transition.css?v=20261025menu');
@import url('./tooltips-mobile.css?v=20261025menu');
@import url('./mobile-library-pager.css?v=20261025menu');
@import url('./mobile-track-sheet.css?v=20261025menu');
@import url('./mobile-filter-sheet.css?v=20261025menu');
@import url('./site-landing.css?v=20261025menu');
@import url('./site-home.css?v=20261025menu');
@import url('./site-about.css?v=20261025menu');
@import url('./site-djs.css?v=20261025menu');
@import url('./site-you.css?v=20261025menu');
@import url('./site-achievements.css?v=20261025menu');
@import url('./track-comments.css?v=20261025menu');
@import url('./site-admin.css?v=20261025menu');
@import url('./player-profile.css?v=20261025menu');
@import url('./mobile-view-nav.css?v=20261025menu');
@import url('./toolbar-overflow.css?v=20261025menu');
@import url('./mobile-top-bar.css?v=20261025menu');
@import url('./set-name-dialog.css?v=20261025menu');

/*
 * Single brand UI face: use IBM Plex Sans's own spacing everywhere. This block
 * prevents legacy face-specific tracking from leaking into components.
 */
html,
html * {
  letter-spacing: normal !important;
}

/* SPA: inactive views stay in DOM but never capture layout/pointer events. */
.app-view[hidden] {
  display: none !important;
}

/* Let the active view's `.app` use existing layout rules (as if it were a direct body child). */
.app-view:not([hidden]) {
  display: contents;
}
