/*
 * Global styles for portal-admin.
 *
 * Same baseline as portal-shell — Tailwind CSS 4 (CSS-first config),
 * class-based dark mode, brand palette tokens shared from
 * `libs/shared/tokens`. The two apps wear the same visual chrome so
 * an APF user moving between portal and admin doesn't feel a context
 * switch in the design system itself; what differentiates the admin
 * surface is the data density and the "Admin" badge in the shell
 * (added once the admin shell PR ships).
 */

@import 'tailwindcss';

@custom-variant dark (&:where(.dark, .dark *));

/* Brand palette tokens — shared with portal-shell. */
@import '../../../libs/shared/tokens/src/brand-tokens.css';

/*
 * The admin shell is a "fills the viewport, never scrolls the body"
 * layout: <app-root> is locked at height: 100vh, and <main> owns its
 * own overflow-y. If anything inside the shell ever pushes content
 * past the viewport (a wide chart, a flex sizing bug, a third-party
 * iframe), we'd rather clip than show a phantom body scrollbar plus
 * the empty space below the footer that comes with it. The element-
 * level overflow on <main> still produces a real, scrollable region
 * for content that overflows by design.
 */
html,
body {
  overflow-y: hidden;
}
