/* Full-width layout — always loaded by base.html, after styles.css.
 *
 * Kills the 900/1400/1540px max-width caps that styles.css sets on <main>,
 * so every authenticated page fills the viewport flush against the sidebar.
 * Uses !important so adding a per-page class (e.g. `main.script-main`,
 * `main.diagnostics-main`) in future CSS won't silently reintroduce a cap —
 * any <main> under body.has-sidebar stays full-width.
 *
 * GUTTER OWNERSHIP (2026-06 header/gutter standardization): the ONE
 * horizontal gutter between the sidebar and page content is owned by
 * `.page` (theme_br.css). <main> contributes zero side padding, and the
 * page-level wrappers below contribute zero width caps / centering, so the
 * sidebar→content gap is identical on every page instead of varying with
 * each page's legacy 720–1600px centered column.
 *
 * To revert, remove the <link> in templates/base.html that loads this file.
 */

body.has-sidebar main,
body.has-sidebar main[class] {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

/* Many pages put an INNER wrapper inside <main> that has its own
 * max-width + margin: auto (styles.css / theme_br.css legacy rules range
 * 720–1600px). Widening <main> alone isn't enough — the inner wrapper
 * pinches content back down and centers it, leaving page-dependent dead
 * space on both sides. Null every known page-level cap so the content
 * column tracks the viewport on all pages. */
body.has-sidebar .ks-shell,
body.has-sidebar .glossary-shell,
body.has-sidebar .au-shell,
body.has-sidebar .ab-page-shell,
body.has-sidebar .admin-user-shell,
body.has-sidebar .credentials-note-shell,
body.has-sidebar .credentials-note-page,
body.has-sidebar .alerts-page,
body.has-sidebar .function-page-shell,
body.has-sidebar .diagnostics-shell,
body.has-sidebar .purchase-panel-wide,
body.has-sidebar .keepa-panel-wide,
body.has-sidebar .platform-alerts-panel,
body.has-sidebar .sd-shell,
body.has-sidebar .sx-shell,
body.has-sidebar .kpa-shell,
body.has-sidebar .sab-page,
body.has-sidebar .s2a-board,
body.has-sidebar .purchase-bot-page-shell,
body.has-sidebar .admin-page-perf-shell,
body.has-sidebar .admin-users-shell,
body.has-sidebar .admin-user-edit-shell,
body.has-sidebar .profile-page,
body.has-sidebar .aws-details-page,
body.has-sidebar .vbc,
body.has-sidebar .contact-detail-shell,
body.has-sidebar .reports-page {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Plain (border-less, background-less) page wrappers whose own side
 * padding would stack on top of the `.page` gutter and re-widen the gap.
 * Panel-style wrappers with visible chrome (e.g. `.panel`) keep their
 * interior padding — only transparent layout shells are flattened. */
body.has-sidebar .s2a-board,
body.has-sidebar .sab-page,
body.has-sidebar .sd-shell,
body.has-sidebar .kpa-shell {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
