//
// Copyright IBM Corp. 2024, 2025
//
// This source code is licensed under the Apache-2.0 license found in the
// LICENSE file in the root directory of this source tree.
//

// Standard imports.
@use '@carbon/styles/scss/spacing' as *;
@use '@carbon/styles/scss/type' as *;
@use '@carbon/styles/scss/theme' as *;
@use '@carbon/styles/scss/config' as carbon-config;

@use '../../global/styles/project-settings' as c4p-settings;
@use '../../global/styles/mixins';

// The block part of our conventional BEM class names (blockClass__E--M).
$block-class: #{c4p-settings.$pkg-prefix}--description-list;
$carbon-block-class: #{carbon-config.$prefix}--structured-list;

.#{$block-class} .#{$carbon-block-class} {
  margin-block-end: $spacing-07;
}

// ROW /////////////////////////
.#{$block-class} .#{$block-class}__body .#{$block-class}__row {
  border-block-end-width: 0;
  border-block-start-width: 0;
}

.#{$block-class}
  .#{$carbon-block-class}
  .#{$block-class}__body
  .#{$block-class}__row:first-child {
  border-block-start-width: 0;
}
.#{$block-class}
  .#{$carbon-block-class}
  .#{$block-class}__body
  .#{$block-class}__row:last-child {
  border-block-end-width: 0;
}

.#{$block-class}--bordered .#{$block-class}__body .#{$block-class}__row {
  border-block-start-width: 1px;
}

// CELL /////////////////////////
.#{$block-class} .#{$block-class}__body .#{$block-class}__cell {
  @include type-style('body-01');

  padding: $spacing-03 $spacing-06 $spacing-03 $spacing-03;
}

.#{$block-class} .#{$block-class}__body .#{$block-class}__cell:first-of-type {
  inline-size: 1%;
  padding-inline-start: 0;
  white-space: nowrap;
}

.#{$block-class} .#{$block-class}__body .#{$block-class}__cell:last-of-type {
  color: $text-primary;
  padding-inline-end: 0;
}

.#{$block-class}
  .#{$block-class}__body
  .#{$block-class}__row:first-of-type
  > .#{$block-class}__cell {
  padding-block-start: 0;
}

.#{$block-class}
  .#{$block-class}__body
  .#{$block-class}__row:last-of-type
  > .#{$block-class}__cell {
  padding-block-end: 0;
}

.#{$block-class} .#{$block-class}__body .#{$block-class}__cell ul {
  list-style: none;
}

.#{$block-class} .#{$block-class}__body .#{$block-class}__cell ul > li {
  margin-block-end: $spacing-03;
}

// LG SIZE /////////////////////////
.#{$block-class}--lg .#{$block-class}__body .#{$block-class}__cell {
  padding: $spacing-05 $spacing-06 $spacing-05 $spacing-05;
}

// SM SIZE /////////////////////////
.#{$block-class}--sm .#{$block-class}__body .#{$block-class}__cell {
  padding: $spacing-02 $spacing-06 $spacing-02 $spacing-02;
}

// XS SIZE /////////////////////////
.#{$block-class}--xs .#{$block-class}__body .#{$block-class}__cell {
  padding: $spacing-02;
}

.#{$block-class} .#{$carbon-block-class}-row--focused-within {
  outline: none;
}
