html {
  box-sizing: border-box;
}

body {
  margin: 0;
}

*,
*:before,
*:after {
  box-sizing: inherit;
  -webkit-tap-highlight-color: transparent;
}

:host {
  font-family: var(--c-font-family);
}

::-ms-reveal {
  display: none;
}

:host(c-main) {
  /**
   * @prop --c-main-background-color: Background color
   * @prop --c-main-text-color: Text color
   */
  --_c-main-background-color: var(--c-main-background-color, var(--c-primary-200));
  --_c-main-text-color: var(--c-main-text-color, var(--c-text-body));
  background: var(--_c-main-background-color);
  color: var(--_c-main-text-color);
  display: flex;
  flex-direction: column;
  height: 100vh;
}
:host(c-main) ::slotted(*) {
  color: var(--_c-main-text-color);
}
:host(c-main) main.dashboard {
  display: grid;
  grid-template: "toolbar toolbar" auto "sidenav page" 1fr/auto 1fr;
  gap: 0;
}
:host(c-main) main.dashboard ::slotted(c-toolbar) {
  grid-area: toolbar;
}
:host(c-main) main.dashboard ::slotted(c-page) {
  grid-area: page;
}
:host(c-main) main.dashboard ::slotted(c-side-navigation) {
  grid-area: sidenav;
}

*,
::after,
::before,
body {
  box-sizing: border-box;
  margin: 0;
}