/* Global Component Styles */
@import '~@hashicorp/react-global-styles/style.css';
@import '~@hashicorp/nextjs-scripts/prism/style.css';
@import '~@hashicorp/react-global-styles/custom-properties/color.css';
@import '~@hashicorp/react-global-styles/custom-properties/font.css';
@import '~@hashicorp/react-global-styles/_temporary-to-remove/layout.css';
@import '~@hashicorp/react-global-styles/_temporary-to-remove/tables.css';

@import '~@hashicorp/react-button/dist/style.css';
@import '~@hashicorp/react-consent-manager/dist/style.css';
@import '~@hashicorp/react-toggle/dist/style.css';
@import '~@hashicorp/react-section-header/dist/style.css';
@import '~@hashicorp/react-product-downloader/dist/style.css';
@import '~@hashicorp/react-vertical-text-block-list/dist/style.css';
@import '~@hashicorp/react-docs-sidenav/dist/style.css';
@import '~@hashicorp/react-content/dist/style.css';
@import '~@hashicorp/react-subnav/dist/style.css';
@import '~@hashicorp/react-tabs/dist/style.css';
@import '~@hashicorp/react-enterprise-alert/dist/style.css';
@import '~@hashicorp/react-mega-nav/style.css';
@import '~@hashicorp/react-docs-page/style.css';

/* Local Components */
@import '../components/footer/style.css';

/* Local Pages */
@import './downloads/style.css';
@import './home/style.css';

/* Print Styles */
@import './print.css';

/* Expand content so footer is always at the bottom */
.__next > .content {
  min-height: calc(100vh - 260px);
}

/*
 * About this selector:
 * `.g-subnav ~ *` finds all elements after the navigation.
 * `:target` finds the active permalink on the page.
 *
 * About this style:
 * `scroll-margin-top` adjusts the vertical scroll of a permalink.
 * `64px` adjusts the scroll to account for the navigation.
 * `0.5em` further adjusts the scroll to give the permalink breathing room.
 *
 * See: https://developer.mozilla.org/en-US/docs/Web/CSS/:target
 * See: https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-margin-top
 */
.g-subnav ~ * :target {
  scroll-margin-top: calc(64px + 0.5em);
}

/* Sticky Footer */
.content {
  overflow-y: auto;

  /* 100% height - nav - footer */
  min-height: calc(100vh - (64px + 77px));
}

/* Web Fonts */
@font-face {
  font-family: 'klavika-web';
  src: url('/fonts/klavika/medium.woff2') format('woff2'),
    url('/fonts/klavika/medium.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}

/* Display Font (Gilmer) */
@font-face {
  font-family: 'gilmer-web';
  src: url('/fonts/gilmer/light.woff2') format('woff2'),
    url('/fonts/gilmer/light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'gilmer-web';
  src: url('/fonts/gilmer/regular.woff2') format('woff2'),
    url('/fonts/gilmer/regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'gilmer-web';
  src: url('/fonts/gilmer/medium.woff2') format('woff2'),
    url('/fonts/gilmer/medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'gilmer-web';
  src: url('/fonts/gilmer/bold.woff2') format('woff2'),
    url('/fonts/gilmer/bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}

/* Body Font (Metro) */
@font-face {
  font-family: 'metro-web';
  src: url('/fonts/metro-sans/book.woff2') format('woff2'),
    url('/fonts/metro-sans/book.woff') format('woff');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'metro-web';
  src: url('/fonts/metro-sans/regular.woff2') format('woff2'),
    url('/fonts/metro-sans/regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'metro-web';
  src: url('/fonts/metro-sans/semi-bold.woff2') format('woff2'),
    url('/fonts/metro-sans/semi-bold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'metro-web';
  src: url('/fonts/metro-sans/bold.woff2') format('woff2'),
    url('/fonts/metro-sans/bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}

/* Code Font (Deja Vu) */
@font-face {
  font-family: 'dejavu-sans-mono-web';
  src: url('/fonts/dejavu/mono.woff2') format('woff2'),
    url('/fonts/dejavu/mono.woff') format('woff');
  font-style: normal;
  font-weight: 400;
}

/*
 * TODO, eventually remove:
 * Temporary Boundary Branding
 */
:root {
  --boundary: #f04e54;
}
.g-docs-sidenav {
  --highlight-color: var(--boundary);
}

.g-subnav {
  & a.variant-primary {
    border-color: var(--boundary);
    background-color: var(--boundary);
  }
  & .g-subnav-inner {
    & .style-menu-item {
      & .text::after {
        background: var(--boundary);
      }
    }
  }
}

.g-content {
  --highlight-color: var(--boundary);
}

.g-vertical-text-block-list {
  & .list {
    & .body-text {
      & a {
        color: var(--boundary) !important;
      }
    }
  }
}
