.layout {
  position: relative;
  width: var(--layout-width);
  font-size: calc(1em * var(--layout-size));
  flex-wrap: nowrap;
}

.is-layout-direction-vertical .layout {
  display: flex;
}

.is-layout-direction-vertical.is-layout-order-headerlink .layout {
  flex-direction: column;
}

.is-layout-direction-vertical.is-layout-order-linkheader .layout {
  flex-direction: column-reverse;
}

.is-layout-direction-horizontal .layout {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.is-layout-direction-horizontal.is-layout-order-headerlink .layout {
  flex-direction: row;
}

.is-layout-direction-horizontal.is-layout-order-linkheader .layout {
  flex-direction: row-reverse;
}

.is-layout-alignment-horizontal-left body {
  align-items: flex-start;
}

.is-layout-alignment-horizontal-center body {
  align-items: center;
}

.is-layout-alignment-horizontal-right body {
  align-items: flex-end;
}

.is-layout-alignment-vertical-top body {
  justify-content: flex-start;
}

.is-layout-alignment-vertical-center body {
  justify-content: center;
}

.is-layout-alignment-vertical-bottom body {
  justify-content: flex-end;
}

html.is-layout-scrollbars-auto,
.is-layout-scrollbars-auto body,
.is-layout-scrollbars-auto * {
  scrollbar-width: auto;
}

html.is-layout-scrollbars-thin,
.is-layout-scrollbars-thin body,
.is-layout-scrollbars-thin * {
  scrollbar-width: thin;
}

html.is-layout-scrollbars-none,
.is-layout-scrollbars-none body,
.is-layout-scrollbars-none * {
  scrollbar-width: none;
}

.is-layout-scrollbars-none ::-webkit-scrollbar {
  display: none;
}
