/**
 * @file
 * Progress behavior.
 *
 * @see progress.js
 */

.progress {
  position: relative;
}
.progress__track {
  min-width: 100px;
  max-width: 100%;
  height: 16px;
  margin-top: 5px;
  border: 1px solid;
  background-color: #fff;
}
.progress__bar {
  width: 3%;
  min-width: 3%;
  max-width: 100%;
  height: 16px;
  background-color: #000;
}
.progress__description,
.progress__percentage {
  overflow: hidden;
  margin-top: 0.2em;
  color: #555;
  font-size: 0.875em;
}
.progress__description {
  float: left; /* LTR */
}
[dir="rtl"] .progress__description {
  float: right;
}
.progress__percentage {
  float: right; /* LTR */
}
[dir="rtl"] .progress__percentage {
  float: left;
}
.progress--small .progress__track {
  height: 7px;
}
.progress--small .progress__bar {
  height: 7px;
  background-size: 20px 20px;
}
/*
 * @file
 * Utility class to remove browser styles, especially for button.
 */

.reset-appearance {
  margin: 0;
  padding: 0;
  border: 0 none;
  background: transparent;
  line-height: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/**
 * @file
 * Resizable textareas.
 */

.resize-none {
  resize: none;
}
.resize-vertical {
  min-height: 2em;
  resize: vertical;
}
.resize-horizontal {
  max-width: 100%;
  resize: horizontal;
}
.resize-both {
  max-width: 100%;
  min-height: 2em;
  resize: both;
}
/**
 * @file
 * Table header behavior.
 *
 * @see tableheader.js
 */

table.sticky-header {
  z-index: 500;
  top: 0;
  margin-top: 0;
  background-color: #fff;
}
/**
 * @file
 * Styles for the system status counter component.
 */

.system-status-counter__status-icon {
  display: inline-block;
  width: 25px;
  height: 25px;
  vertical-align: middle;
}
.system-status-counter__status-icon:before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center 2px;
  background-size: 16px;
}

.system-status-counter__status-icon--error:before {
  background-image: url(core/misc/icons/e32700/error.svg);
}
.system-status-counter__status-icon--warning:before {
  background-image: url(core/misc/icons/e29700/warning.svg);
}
.system-status-counter__status-icon--checked:before {
  background-image: url(core/misc/icons/73b355/check.svg);
}
/**
 * @file
 * Styles for the system status report counters.
 */

.system-status-report-counters__item {
  width: 100%;
  margin-bottom: 0.5em;
  padding: 0.5em 0;
  text-align: center;
  white-space: nowrap;
  background-color: rgba(0, 0, 0, 0.063);
}

@media screen and (min-width: 60em) {
  .system-status-report-counters {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .system-status-report-counters__item--half-width {
    width: 49%;
  }
  .system-status-report-counters__item--third-width {
    width: 33%;
  }
}
/**
 * @file
 * Default styles for the System Status general info.
 */

.system-status-general-info__item {
  margin-top: 1em;
  padding: 0 1em 1em;
  border: 1px solid #ccc;
}

.system-status-general-info__item-title {
  border-bottom: 1px solid #ccc;
}
/**
 * @file
 * Table sort indicator.
 *
 * @see tablesort-indicator.html.twig
 */

.tablesort {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-size: 100%;
}
.tablesort--asc {
  background-image: url(core/misc/icons/787878/twistie-down.svg);
}
.tablesort--desc {
  background-image: url(core/misc/icons/787878/twistie-up.svg);
}
/**
 * @file
 * Visual styles for a nested tree child.
 */

div.tree-child {
  background: url(core/misc/tree.png) no-repeat 11px center; /* LTR */
}
div.tree-child-last {
  background: url(core/misc/tree-bottom.png) no-repeat 11px center; /* LTR */
}
[dir="rtl"] div.tree-child,
[dir="rtl"] div.tree-child-last {
  background-position: -65px center;
}
div.tree-child-horizontal {
  background: url(core/misc/tree.png) no-repeat -11px center;
}
.ajax-throbber.sk-folding-cube {
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
}

.ajax-throbber.sk-folding-cube .sk-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

.ajax-throbber.sk-folding-cube .sk-cube:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #333;
  -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
  animation: sk-foldCubeAngle 2.4s infinite linear both;
  -webkit-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.ajax-throbber.sk-folding-cube .sk-cube2 {
  -webkit-transform: scale(1.1) rotateZ(90deg);
  transform: scale(1.1) rotateZ(90deg);
}

.ajax-throbber.sk-folding-cube .sk-cube3 {
  -webkit-transform: scale(1.1) rotateZ(180deg);
  transform: scale(1.1) rotateZ(180deg);
}

.ajax-throbber.sk-folding-cube .sk-cube4 {
  -webkit-transform: scale(1.1) rotateZ(270deg);
  transform: scale(1.1) rotateZ(270deg);
}

.ajax-throbber.sk-folding-cube .sk-cube2:before {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.ajax-throbber.sk-folding-cube .sk-cube3:before {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.ajax-throbber.sk-folding-cube .sk-cube4:before {
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s;
}

@-webkit-keyframes sk-foldCubeAngle {
  0%,
  10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%,
  75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%,
  100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}

@keyframes sk-foldCubeAngle {
  0%,
  10% {
    -webkit-transform: perspective(140px) rotateX(-180deg);
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%,
  75% {
    -webkit-transform: perspective(140px) rotateX(0deg);
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%,
  100% {
    -webkit-transform: perspective(140px) rotateY(180deg);
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
.b-bfsa {
  margin-top: 24px;
  color: #919191;
}

.b-bfsa__link {
  display: inline-block;
  padding-right: .5em;
  padding-left: .5em;
  color: #011b9f;
  transition: border-bottom .5s ease;
  border-bottom: solid 1px transparent;
}

.b-bfsa__link:hover {
  border-bottom: solid 1px #011b9f;
  text-decoration: none;
}

.b-bfsa__link:hover .b-bfsa__blue {
  color: #011b9f;
}

.b-bfsa__link:hover .b-bfsa__fusion {
  color: #0b96e1;
}

.b-bfsa__blue {
  color: #0b96e1;
  transition: color .5s ease;
}

.b-bfsa__fusion {
  color: #011b9f;
  transition: color .5s ease;
}
/**
 * @file
 * Default theme implementation for Commerce Cart components
 *
 * Provides some sensible defaults when used with Bartik.
 */

.commerce-cart--cart-block .commerce-cart-block--contents a {
  color: inherit;
}
.commerce-cart--cart-block .commerce-cart-block--contents__item {
  clear: both;
  margin-bottom: 10px;
  border-bottom: 1px #eaeaea solid;
}
.commerce-cart-block--contents__quantity {
  float: left;
}
.commerce-cart-block--contents__price {
  float: right;
}
