/**
 * A heuristic that applies CSS to tablet
 * viewports.
 *
 * Usage:
 * @include tablet-viewport() {
 *   :host {
 *     background-color: green;
 *   }
 * }
 */
/**
 * A heuristic that applies CSS to mobile
 * viewports (i.e. phones, not tablets).
 *
 * Usage:
 * @include mobile-viewport() {
 *   :host {
 *     background-color: blue;
 *   }
 * }
 */
:host {
  /**
   * @prop --margin-top: Top margin of the divider
   * @prop --margin-bottom: Bottom margin of the divider
   * @prop --padding-end: Right padding if direction is left-to-right, and left padding if direction is right-to-left of the divider
   * @prop --padding-start: Left padding if direction is left-to-right, and right padding if direction is right-to-left of the divider
   */
  --margin-top: 0px;
  --margin-bottom: 0px;
  --padding-start: 0px;
  --padding-end: 0px;
  -webkit-padding-start: var(--padding-start);
  padding-inline-start: var(--padding-start);
  -webkit-padding-end: var(--padding-end);
  padding-inline-end: var(--padding-end);
  display: block;
  width: 100%;
}

:host hr {
  display: block;
  width: 100%;
  margin-top: var(--margin-top);
  margin-bottom: var(--margin-bottom);
  border: none;
}

:host hr {
  border-top: 1px solid #e0e0e0;
}

:host(.divider-inset) {
  --padding-start: 16px;
  --padding-end: 16px;
}

:host(.divider-spacing-xsmall) {
  --margin-top: 8px;
  --margin-bottom: 8px;
}

:host(.divider-spacing-small) {
  --margin-top: 12px;
  --margin-bottom: 12px;
}

:host(.divider-spacing-medium) {
  --margin-top: 16px;
  --margin-bottom: 16px;
}

:host(.divider-spacing-large) {
  --margin-top: 24px;
  --margin-bottom: 24px;
}

:host(.divider-spacing-xlarge) {
  --margin-top: 32px;
  --margin-bottom: 32px;
}

:host(.divider-spacing-xxlarge) {
  --margin-top: 40px;
  --margin-bottom: 40px;
}