@use '../functions' as *;
@use '../utils/utilities' as util;

.pgh-mat {
  $br: var(--box-radius);

  .mat-accordion {
    display: block;

    &:not(:first-child) {
      margin-top: 1rem;
    }

    &:not(:last-child) {
      margin-bottom: 1rem;
    }

    > .mat-expansion-panel {
      border-radius: 0;

      &:first-child {
        border-radius: $br $br 0 0;
      }

      &:last-child {
        border-radius: 0 0 $br $br;
      }

      &:only-child {
        border-radius: $br;
      }
    }

    .mat-expansion-panel-spacing {
      border-radius: $br !important;
    }

    > pgh-form-expansion-panel {
      > .mat-expansion-panel {
        border-radius: 0;
      }

      &:first-child {
        > .mat-expansion-panel {
          border-radius: $br $br 0 0;
        }
      }

      &:last-child {
        > .mat-expansion-panel {
          border-radius: 0 0 $br $br;
        }
      }

      &:only-child {
        > .mat-expansion-panel {
          border-radius: $br;
        }
      }
    }
  }

  .mat-expansion-panel {
    border-radius: $br;
  }

  .mat-expansion-panel:not([class*='mat-elevation-z']) {
    box-shadow: var(--shadow);
  }

  .mat-expansion-panel-body {
    padding-block: 0.75rem 1rem;
    padding-inline: 1.5rem;
  }

  .mat-expansion-panel-header {
    height: 3.25rem;
  }

  .mat-expansion-panel-header-title {
    flex: 0 1 40%;
    @include util.font-weight-without-variable-support('bold');
    align-self: center;
  }

  .mat-expansion-panel-header-description {
    flex: 0 1 60%;
    overflow: hidden;
    @include util.font-weight-without-variable-support('normal');
    align-self: center;
  }
}
