/*
 * Per-theme stylesheet — loaded by this theme's base.html.twig via
 * {{ theme_asset('css/theme.css') }}, AFTER the shared baseline (app.css).
 *
 * The default theme ships this empty: the baseline look already lives in
 * assets/app.css. Override or extend it here — anything you write wins over
 * the baseline by virtue of loading later. A theme can also take full control
 * by editing its own base.html.twig (it owns the <head>).
 */

/* ===========================================================================
   Boxed layout
   ---------------------------------------------------------------------------
   Opt-in via Settings → Appearance → "Layout width" = Boxed, which makes this
   theme's base.html.twig emit <html data-layout="boxed">. The whole public
   site is then centred in a fixed-width frame, with the page backdrop showing
   in the side gutters. The other two Layout-width values are handled elsewhere:
   "Wide" → data-layout="full" (app.css full-width container rule); "Centered"
   (the default) → no rule, app.css's standard centred container. Boxed only
   applies once the viewport is wide enough to leave a visible gutter, so narrow
   screens stay full-bleed. Tokens come from app.css and adapt to light/dark.
   Lives here (not app.css) so it survives a re-import of the design theme and
   stays scoped to the public site — admin/auth pages never load this file.
   =========================================================================== */
@media (min-width: 1320px) {
  html[data-layout="boxed"] {
    background-color: var(--app-bg-tertiary);
  }

  html[data-layout="boxed"] body {
    max-width: 1280px;
    margin-inline: auto;
    background-color: var(--app-bg-body);
    border-inline: 1px solid var(--app-border);
    box-shadow: var(--app-shadow-xl);
  }
}
