| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289 | //// Base styles//.card {  position: relative;  display: flex;  flex-direction: column;  min-width: 0; // See https://github.com/twbs/bootstrap/pull/22740#issuecomment-305868106  word-wrap: break-word;  background-color: $card-bg;  background-clip: border-box;  border: $card-border-width solid $card-border-color;  @include border-radius($card-border-radius);  > hr {    margin-right: 0;    margin-left: 0;  }  > .list-group:first-child {    .list-group-item:first-child {      @include border-top-radius($card-border-radius);    }  }  > .list-group:last-child {    .list-group-item:last-child {      @include border-bottom-radius($card-border-radius);    }  }}.card-body {  // Enable `flex-grow: 1` for decks and groups so that card blocks take up  // as much space as possible, ensuring footers are aligned to the bottom.  flex: 1 1 auto;  padding: $card-spacer-x;  color: $card-color;}.card-title {  margin-bottom: $card-spacer-y;}.card-subtitle {  margin-top: -$card-spacer-y / 2;  margin-bottom: 0;}.card-text:last-child {  margin-bottom: 0;}.card-link {  @include hover {    text-decoration: none;  }  + .card-link {    margin-left: $card-spacer-x;  }}//// Optional textual caps//.card-header {  padding: $card-spacer-y $card-spacer-x;  margin-bottom: 0; // Removes the default margin-bottom of <hN>  color: $card-cap-color;  background-color: $card-cap-bg;  border-bottom: $card-border-width solid $card-border-color;  &:first-child {    @include border-radius($card-inner-border-radius $card-inner-border-radius 0 0);  }  + .list-group {    .list-group-item:first-child {      border-top: 0;    }  }}.card-footer {  padding: $card-spacer-y $card-spacer-x;  background-color: $card-cap-bg;  border-top: $card-border-width solid $card-border-color;  &:last-child {    @include border-radius(0 0 $card-inner-border-radius $card-inner-border-radius);  }}//// Header navs//.card-header-tabs {  margin-right: -$card-spacer-x / 2;  margin-bottom: -$card-spacer-y;  margin-left: -$card-spacer-x / 2;  border-bottom: 0;}.card-header-pills {  margin-right: -$card-spacer-x / 2;  margin-left: -$card-spacer-x / 2;}// Card image.card-img-overlay {  position: absolute;  top: 0;  right: 0;  bottom: 0;  left: 0;  padding: $card-img-overlay-padding;}.card-img {  width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch  @include border-radius($card-inner-border-radius);}// Card image caps.card-img-top {  width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch  @include border-top-radius($card-inner-border-radius);}.card-img-bottom {  width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch  @include border-bottom-radius($card-inner-border-radius);}// Card deck.card-deck {  display: flex;  flex-direction: column;  .card {    margin-bottom: $card-deck-margin;  }  @include media-breakpoint-up(sm) {    flex-flow: row wrap;    margin-right: -$card-deck-margin;    margin-left: -$card-deck-margin;    .card {      display: flex;      // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4      flex: 1 0 0%;      flex-direction: column;      margin-right: $card-deck-margin;      margin-bottom: 0; // Override the default      margin-left: $card-deck-margin;    }  }}//// Card groups//.card-group {  display: flex;  flex-direction: column;  // The child selector allows nested `.card` within `.card-group`  // to display properly.  > .card {    margin-bottom: $card-group-margin;  }  @include media-breakpoint-up(sm) {    flex-flow: row wrap;    // The child selector allows nested `.card` within `.card-group`    // to display properly.    > .card {      // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4      flex: 1 0 0%;      margin-bottom: 0;      + .card {        margin-left: 0;        border-left: 0;      }      // Handle rounded corners      @if $enable-rounded {        &:not(:last-child) {          @include border-right-radius(0);          .card-img-top,          .card-header {            // stylelint-disable-next-line property-blacklist            border-top-right-radius: 0;          }          .card-img-bottom,          .card-footer {            // stylelint-disable-next-line property-blacklist            border-bottom-right-radius: 0;          }        }        &:not(:first-child) {          @include border-left-radius(0);          .card-img-top,          .card-header {            // stylelint-disable-next-line property-blacklist            border-top-left-radius: 0;          }          .card-img-bottom,          .card-footer {            // stylelint-disable-next-line property-blacklist            border-bottom-left-radius: 0;          }        }      }    }  }}//// Columns//.card-columns {  .card {    margin-bottom: $card-columns-margin;  }  @include media-breakpoint-up(sm) {    column-count: $card-columns-count;    column-gap: $card-columns-gap;    orphans: 1;    widows: 1;    .card {      display: inline-block; // Don't let them vertically span multiple columns      width: 100%; // Don't let their width change    }  }}//// Accordion//.accordion {  > .card {    overflow: hidden;    &:not(:first-of-type) {      .card-header:first-child {        @include border-radius(0);      }      &:not(:last-of-type) {        border-bottom: 0;        @include border-radius(0);      }    }    &:first-of-type {      border-bottom: 0;      @include border-bottom-radius(0);    }    &:last-of-type {      @include border-top-radius(0);    }    .card-header {      margin-bottom: -$card-border-width;    }  }}
 |