/*
 * DO NOT EDIT THIS FILE.
 * See the following change record for more information,
 * https://www.drupal.org/node/3084859
 * @preserve
 */

/**
 * @file
 * Fieldset styles.
 */

.fieldset {
  min-width: 0;
  margin: var(--space-m) 0;
  padding: 0;
  color: var(--color-text);
  border: var(--details-border-size) solid var(--details-border-color);
  border-radius: var(--base-border-radius);
  background-color: var(--color-white);
  box-shadow: var(--details-box-shadow);

  &:not(.fieldgroup) {
    padding-block-start: var(--gin-spacing-xs);
    color: var(--gin-color-text-light);
    border-color: var(--gin-border-color);
    border-radius: var(--gin-border-m);
    background: transparent;
    box-shadow: none;
    padding-inline: 0;

    > legend {
      inset-block-start: 1.25rem;
    }

    > .fieldset-wrapper {
      margin-block-start: 1.25rem;
    }

    &.error {
      border: 2px solid var(--gin-color-danger);
    }
  }
}

.fieldset--group {
  color: inherit;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

/**
 * Fieldset legend.
 */

.fieldset__legend {
  display: contents; /* For Firefox. */
  float: left; /* iOS Safari, Android Chrome, Edge. */
  width: 100%; /* iOS Safari, Android Chrome, Edge. */
  margin-block-end: var(--space-m);
  color: var(--color-gray-800);
  font-weight: bold;

  @media screen and (min-width: 48em) {
    margin-bottom: var(--space-l);
  }
}

.fieldset__legend--composite {
  float: none;
  width: auto;
  margin-block: calc(var(--space-xs) / 2); /* 4px */
  color: inherit;
  font-size: var(--font-size-s); /* 14px */
  line-height: calc(18rem / 16); /* 18px */
}

/* This is used only on install configure form. */

.fieldset__legend--group {
  text-transform: uppercase;
  color: inherit;
}

.fieldset__label {
  display: block;
  margin-block-start: 0;
  margin-block-end: var(--gin-spacing-xs);
  padding: var(--space-m);
  color: var(--gin-color-title);
  font-size: var(--gin-font-size-s);
  font-weight: var(--gin-font-weight-semibold);
  line-height: var(--space-m);

  &.is-disabled {
    color: var(--input--disabled-fg-color);
  }

  &.has-error {
    color: var(--input--error-color);
  }

  @media screen and (min-width: 48em) {
    padding-inline: var(--space-l);
  }
}

.fieldset__label--group {
  margin-block-start: 0;
  margin-block-end: var(--gin-spacing-xs);
  padding: 0;
  color: var(--gin-color-title);
  font-size: var(--gin-font-size-s);
  font-weight: var(--gin-font-weight-semibold);
  line-height: inherit;

  @media screen and (min-width: 48em) {
    padding: 0;
  }
}

.fieldset__description {
  max-width: var(--gin-max-line-length);
  color: var(--gin-color-text-light);
  font-size: var(--font-size-xs); /* ~13px */
  line-height: calc(17rem / 16); /* 17px */
  margin-block: calc(6rem / 16); /* 6px */

  &.is-disabled {
    color: var(--input--disabled-fg-color);
  }
}

/* Error message (Inline form errors). */

.fieldset__error-message {
  margin-block: calc(6rem / 16); /* 6px */
  color: var(--input--error-color);
  font-size: var(--font-size-xs); /* ~13px */
  font-weight: normal;
  line-height: calc(17rem / 16); /* 17px */
}

.fieldset__wrapper {
  margin: var(--space-m);

  /**
   * Remove the extra padding of container-inline wrapper if it's used inside a fieldset
   */
  & > .container-inline {
    padding: 0;
  }

  @media screen and (min-width: 48em) {
    margin: var(--space-l) var(--space-l) calc(var(--space-m) + var(--space-s));
  }
}

.fieldset__legend--visible ~ .fieldset__wrapper {
  margin-block-start: 0;
}

.fieldset__wrapper--group {
  margin: 0;
}
