/*
 * G Compliance styles on top of the Vuexy theme (vendor/css/core.css).
 * Prefer the theme's own classes in templates; this file holds the theme's
 * demo.css layout rules we rely on, and the few pieces the theme doesn't have.
 */

/* --- The theme's runtime layout rules --------------------------------------
 * helpers.js used to inject these in a <style> element (blocked by our CSP); our
 * patched helpers.js sets the two heights and the class instead. :where() keeps
 * each selector's specificity the same as the original.
 */
.layout-menu-fixed:where(.layout-inline-styles) .layout-navbar-full .layout-menu,
.layout-menu-fixed-offcanvas:where(.layout-inline-styles) .layout-navbar-full .layout-menu {
  top: var(--layout-navbar-height) !important;
}
:where(.layout-inline-styles) .layout-page {
  padding-top: var(--layout-navbar-height) !important;
}
:where(.layout-inline-styles) .content-wrapper {
  padding-bottom: var(--layout-footer-height) !important;
}

/* --- From the theme's demo.css ------------------------------------------- */

.menu .app-brand.demo {
  height: 64px;
}

.app-brand-logo.demo svg {
  width: 32px;
  height: 32px;
}

.app-brand-text.demo {
  font-size: 1.375rem;
}

/* For .layout-navbar-fixed, pad the page by the navbar's height. */
.layout-navbar-fixed .layout-wrapper:not(.layout-without-menu) .layout-page {
  padding-top: 64px !important;
}
.layout-navbar-fixed .layout-wrapper:not(.layout-horizontal):not(.layout-without-menu) .layout-page {
  padding-top: 72px !important;
}

.content-wrapper .navbar {
  z-index: auto;
}

/* --- Utilities the theme doesn't have ------------------------------------- */

.text-pre-line {
  white-space: pre-line;
}
