<commit_before>// Box
// Intended to replace simple-box, boxed-group, and table-list

.Box {
  background-color: var(--color-bg-canvas);
  border-color: var(--color-border-primary);
  border-style: $border-style;
  border-width: $border-width;
  border-radius: $border-radius;
}

// Box padding density options
.Box--condensed {
  line-height: $lh-condensed;

  .Box-header {
    padding: $spacer-2 $spacer-3;
  }

  .Box-body {
    padding: $spacer-2 $spacer-3;
  }

  .Box-footer {
    padding: $spacer-2 $spacer-3;
  }

  .Box-btn-octicon {
    &.btn-octicon {
      padding: $spacer-2 $spacer-3;
      // stylelint-disable-next-line primer/spacing
      margin: (-$spacer-2) (-$spacer-3);
      line-height: $lh-condensed;
    }
  }

  .Box-row {
    padding: $spacer-2 $spacer-3;
  }
}

.Box--spacious {
  .Box-header {
    padding: $spacer-4;
    line-height: $lh-condensed;
  }

  .Box-title {
    font-size: $h3-size;
  }

  .Box-body {
    padding: $spacer-4;
  }

  .Box-footer {
    padding: $spacer-4;
  }

  .Box-btn-octicon {
    &.btn-octicon {
      padding: $spacer-4;
      // stylelint-disable-next-line primer/spacing
      margin: (-$spacer-4) (-$spacer-4);
    }
  }

  .Box-row {
    padding: $spacer-4;
  }
}

.Box-header {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin: (-$border-width) (-$border-width) 0;
  background-color: var(--color-bg-tertiary);
  border-color: var(--color-border-primary);
  border-style: $border-style;
  border-width: $border-width;
  border-top-left-radius: $border-radius;
  border-top-right-radius: $border-radius;
}

.Box-title {
  font-size: $body-font-size;
  font-weight: $font-weight-bold;
}

.Box-body {
  padding: $spacer-3;
  border-bottom: $border-width $border-style var(--color-border-primary);

  // Ensures bottom-border doesn't poke out when .Box-body used without box-footer
  &:last-of-type {
    // stylelint-disable-next-line primer/spacing
    margin-bottom: -$border-width;
    border-bottom-right-radius: $border-radius;
    border-bottom-left-radius: $border-radius;
  }
}

// Box rows
.Box-row {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin-top: -1px;
  list-style-type: none; // To account for applying Box component to a list
  border-top-color: var(--color-border-primary);
  border-top-style: $border-style;
  border-top-width: $border-width;

  &:first-of-type {
    border-top-left-radius: $border-radius;
    border-top-right-radius: $border-radius;
  }

  &:last-of-type {
    border-bottom-right-radius: $border-radius;
    border-bottom-left-radius: $border-radius;
  }

  // Adds a blue vertical line to the left of the row
  // For indicating a row item is unread
  &.Box-row--unread,
  // .unread to be deprecated with .Box-row-unread
  &.unread {
    // stylelint-disable-next-line primer/box-shadow
    box-shadow: inset 2px 0 0 var(--color-border-info);
  }

  &.navigation-focus {
    // Focus styles for when drag icon
    .Box-row--drag-button {
      color: var(--color-text-link-primary);
      cursor: grab;
      opacity: 100;
    }

    // Grabbing while row is dragged
    &.is-dragging .Box-row--drag-button {
      cursor: grabbing;
    }

    // Row dragging styles
    &.sortable-chosen {
      background-color: var(--color-bg-secondary);
    }

    // Makes dragging row background gray
    &.sortable-ghost {
      background-color: var(--color-bg-tertiary);

      // Hides contents of row while dragging so row looks solid gray
      .Box-row--drag-hide {
        opacity: 0;
      }
    }
  }
}

.Box-row--focus-gray {
  &.navigation-focus {
    background-color: var(--color-bg-tertiary);
  }
}

.Box-row--focus-blue {
  &.navigation-focus {
    background-color: var(--color-box-row-blue-bg);
  }
}

.Box-row--hover-gray {
  &:hover {
    background-color: var(--color-bg-tertiary);
  }
}

.Box-row--hover-blue {
  &:hover {
    background-color: var(--color-box-row-blue-bg);
  }
}

// Optional link style
// Makes links on mobile blue since they don't have hover state,
// and links are dark-gray with blue hover on desktop.
.Box-row-link {
  @include breakpoint(md) {
    color: var(--color-text-primary);
    text-decoration: none;

    &:hover {
      color: var(--color-text-link-primary);
      text-decoration: none;
    }
  }
}

// Optional drag icon styles for reordering items
// Focus styles included in .Box-row above
.Box-row--drag-button {
  opacity: 0;
}

.Box-footer {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin-top: -1px; // prevents double border when used with .Box-body
  border-top-color: var(--color-border-primary);
  border-top-style: $border-style;
  border-top-width: $border-width;
}

// Option for a box with scrolling content
.Box--scrollable {
  max-height: 324px;
  overflow: scroll;
}

// Box themes

.Box--blue {
  border-color: var(--color-box-blue-border);

  .Box-header {
    background-color: var(--color-bg-info);
    border-color: var(--color-box-blue-border);
  }

  .Box-body {
    border-color: var(--color-box-blue-border);
  }

  .Box-row {
    border-color: var(--color-box-blue-border);
  }

  .Box-footer {
    border-color: var(--color-box-blue-border);
  }
}

// Applies and red border to the outside of the box,
// but not to the border separating rows.
.Box--danger {
  border-color: var(--color-border-danger);

  .Box-row {
    &:first-of-type {
      border-color: var(--color-border-danger);
    }
  }

  .Box-body {
    &:last-of-type {
      border-color: var(--color-border-danger);
    }
  }
}

.Box-header--blue {
  background-color: var(--color-box-header-blue-bg);
  border-color: var(--color-box-header-blue-border);
}

// Box row highlight themes

.Box-row--yellow {
  background-color: var(--color-box-row-yellow-bg);
}

.Box-row--blue {
  background-color: var(--color-box-row-blue-bg);
}

.Box-row--gray {
  background-color: var(--color-bg-tertiary);
}

//Box with btn-octicon
.Box-btn-octicon {
  // Increase specificity when btn-octicon is used because comes after .Box in the cascade
  &.btn-octicon {
    padding: $spacer-3 $spacer-3;
    // stylelint-disable-next-line primer/spacing
    margin: (-$spacer-3) (-$spacer-3);
    line-height: $lh-default; // override btn-octicon line-height
  }
}
<commit_msg>Update box.scss<commit_after>// Box
// Intended to replace simple-box, boxed-group, and table-list

.Box {
  background-color: var(--color-bg-primary);
  border-color: var(--color-border-primary);
  border-style: $border-style;
  border-width: $border-width;
  border-radius: $border-radius;
}

// Box padding density options
.Box--condensed {
  line-height: $lh-condensed;

  .Box-header {
    padding: $spacer-2 $spacer-3;
  }

  .Box-body {
    padding: $spacer-2 $spacer-3;
  }

  .Box-footer {
    padding: $spacer-2 $spacer-3;
  }

  .Box-btn-octicon {
    &.btn-octicon {
      padding: $spacer-2 $spacer-3;
      // stylelint-disable-next-line primer/spacing
      margin: (-$spacer-2) (-$spacer-3);
      line-height: $lh-condensed;
    }
  }

  .Box-row {
    padding: $spacer-2 $spacer-3;
  }
}

.Box--spacious {
  .Box-header {
    padding: $spacer-4;
    line-height: $lh-condensed;
  }

  .Box-title {
    font-size: $h3-size;
  }

  .Box-body {
    padding: $spacer-4;
  }

  .Box-footer {
    padding: $spacer-4;
  }

  .Box-btn-octicon {
    &.btn-octicon {
      padding: $spacer-4;
      // stylelint-disable-next-line primer/spacing
      margin: (-$spacer-4) (-$spacer-4);
    }
  }

  .Box-row {
    padding: $spacer-4;
  }
}

.Box-header {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin: (-$border-width) (-$border-width) 0;
  background-color: var(--color-bg-tertiary);
  border-color: var(--color-border-primary);
  border-style: $border-style;
  border-width: $border-width;
  border-top-left-radius: $border-radius;
  border-top-right-radius: $border-radius;
}

.Box-title {
  font-size: $body-font-size;
  font-weight: $font-weight-bold;
}

.Box-body {
  padding: $spacer-3;
  border-bottom: $border-width $border-style var(--color-border-primary);

  // Ensures bottom-border doesn't poke out when .Box-body used without box-footer
  &:last-of-type {
    // stylelint-disable-next-line primer/spacing
    margin-bottom: -$border-width;
    border-bottom-right-radius: $border-radius;
    border-bottom-left-radius: $border-radius;
  }
}

// Box rows
.Box-row {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin-top: -1px;
  list-style-type: none; // To account for applying Box component to a list
  border-top-color: var(--color-border-primary);
  border-top-style: $border-style;
  border-top-width: $border-width;

  &:first-of-type {
    border-top-left-radius: $border-radius;
    border-top-right-radius: $border-radius;
  }

  &:last-of-type {
    border-bottom-right-radius: $border-radius;
    border-bottom-left-radius: $border-radius;
  }

  // Adds a blue vertical line to the left of the row
  // For indicating a row item is unread
  &.Box-row--unread,
  // .unread to be deprecated with .Box-row-unread
  &.unread {
    // stylelint-disable-next-line primer/box-shadow
    box-shadow: inset 2px 0 0 var(--color-border-info);
  }

  &.navigation-focus {
    // Focus styles for when drag icon
    .Box-row--drag-button {
      color: var(--color-text-link-primary);
      cursor: grab;
      opacity: 100;
    }

    // Grabbing while row is dragged
    &.is-dragging .Box-row--drag-button {
      cursor: grabbing;
    }

    // Row dragging styles
    &.sortable-chosen {
      background-color: var(--color-bg-secondary);
    }

    // Makes dragging row background gray
    &.sortable-ghost {
      background-color: var(--color-bg-tertiary);

      // Hides contents of row while dragging so row looks solid gray
      .Box-row--drag-hide {
        opacity: 0;
      }
    }
  }
}

.Box-row--focus-gray {
  &.navigation-focus {
    background-color: var(--color-bg-tertiary);
  }
}

.Box-row--focus-blue {
  &.navigation-focus {
    background-color: var(--color-box-row-blue-bg);
  }
}

.Box-row--hover-gray {
  &:hover {
    background-color: var(--color-bg-tertiary);
  }
}

.Box-row--hover-blue {
  &:hover {
    background-color: var(--color-box-row-blue-bg);
  }
}

// Optional link style
// Makes links on mobile blue since they don't have hover state,
// and links are dark-gray with blue hover on desktop.
.Box-row-link {
  @include breakpoint(md) {
    color: var(--color-text-primary);
    text-decoration: none;

    &:hover {
      color: var(--color-text-link-primary);
      text-decoration: none;
    }
  }
}

// Optional drag icon styles for reordering items
// Focus styles included in .Box-row above
.Box-row--drag-button {
  opacity: 0;
}

.Box-footer {
  padding: $spacer-3;
  // stylelint-disable-next-line primer/spacing
  margin-top: -1px; // prevents double border when used with .Box-body
  border-top-color: var(--color-border-primary);
  border-top-style: $border-style;
  border-top-width: $border-width;
}

// Option for a box with scrolling content
.Box--scrollable {
  max-height: 324px;
  overflow: scroll;
}

// Box themes

.Box--blue {
  border-color: var(--color-box-blue-border);

  .Box-header {
    background-color: var(--color-bg-info);
    border-color: var(--color-box-blue-border);
  }

  .Box-body {
    border-color: var(--color-box-blue-border);
  }

  .Box-row {
    border-color: var(--color-box-blue-border);
  }

  .Box-footer {
    border-color: var(--color-box-blue-border);
  }
}

// Applies and red border to the outside of the box,
// but not to the border separating rows.
.Box--danger {
  border-color: var(--color-border-danger);

  .Box-row {
    &:first-of-type {
      border-color: var(--color-border-danger);
    }
  }

  .Box-body {
    &:last-of-type {
      border-color: var(--color-border-danger);
    }
  }
}

.Box-header--blue {
  background-color: var(--color-box-header-blue-bg);
  border-color: var(--color-box-header-blue-border);
}

// Box row highlight themes

.Box-row--yellow {
  background-color: var(--color-box-row-yellow-bg);
}

.Box-row--blue {
  background-color: var(--color-box-row-blue-bg);
}

.Box-row--gray {
  background-color: var(--color-bg-tertiary);
}

//Box with btn-octicon
.Box-btn-octicon {
  // Increase specificity when btn-octicon is used because comes after .Box in the cascade
  &.btn-octicon {
    padding: $spacer-3 $spacer-3;
    // stylelint-disable-next-line primer/spacing
    margin: (-$spacer-3) (-$spacer-3);
    line-height: $lh-default; // override btn-octicon line-height
  }
}

{'fraction_non_alphanumeric': 0.16623026263588034, 'fraction_numerical': 0.006665079742918353, 'mean_word_length': 2.50403113705866, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1826208', 'n_tokens_mistral': 4741, 'n_tokens_neox': 4598, 'n_words': 901}