#rebuy-cart .rebuy-cart__flyout {
  background-color: #fff !important;

  /* Header */
  [data-rebuy-cart-header-top] {
    &::before {
      content: '';
      width: 24px;
    }

    [data-rebuy-cart-header-top-inner] {
      justify-content: center;
    }

    [data-rebuy-component=title-bar] {
      text-transform: none;
      letter-spacing: normal;
      font-size: 20px;
    }
  }

  /* Announcement Bar */
  [data-rebuy-component="announcement-bar"] {
    text-transform: uppercase;
    background-color: #FFF789;
    padding-top: 0;

    .message {
      padding-top: 6px;
    }
  }

  /* Progress Bar */
  [data-rebuy-component=progress-bar] {
    .rebuy-cart__progress-step-icon {
      background-color: #ECE9DE !important;
      color: #262626 !important;
      width: 32px !important;
      height: 32px !important;
      border-radius: 50px !important;

      path {
        fill: #262626;
      }
    }
    .rebuy-cart__progress-step.complete .rebuy-cart__progress-step-icon {
      background-color: #262626 !important;
      color: #fff !important;

      path {
        fill: #fff;
      }
    }
    .rebuy-cart__progress-bar-meter {
      border: none;
      background-color: #D5D5D5;
      order: revert;
    }
    .rebuy-cart__progress-bar-meter-fill {
      background-color: #262626;
      border-radius: 10px 0 0 10px;
    }
  }

  /* Cart item styling */
  [data-rebuy-component="cart-items"] {
    border: none !important;

    [data-smartcart-items] {
      margin-bottom: 0;
    }
    .rebuy-cart__flyout-item {
      padding-bottom: 16px;
    }

    .rebuy-cart__flyout-item-info-container {
      padding-right: 16px;
      flex: 1 1 auto;
      flex-flow: row wrap;
      display: flex;
      gap: 6px;
    }

    .rebuy-cart__flyout-item-tagline,
    .rebuy-cart__flyout-item-tagline h4 {
      font-family: Typewriter,sans-serif;
      font-size: 12px;
      font-weight: 400;
      text-transform: none;
      color: #262626;
      margin-bottom: 0;
    }

    .rebuy-cart__flyout-item-variant-title {
      font-size: 14px;
      font-weight: 500;
      color: #262626;
    }

    .rebuy-cart__flyout-item-quantity-widget {
      border-color: #262626;
      border-radius: 6px;
      height: 30px;

      .rebuy-cart__flyout-item-quantity-widget-label {
        border: none;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
      }

      .rebuy-cart__flyout-item-quantity-widget-button {
        background: none;
        width: auto;
        padding: 0 8px;
        height: 100%;
      }
    }

    .rebuy-cart__flyout-item-discount-message-container {
      display: block;
      width: 100%;
    }
    .rebuy-cart__flyout-item-discount-message {
      background-color: #FFF789;
      padding: 4px 6px;
      font-weight: 600;
      font-size: 12px;
      color: #262626;
      width: auto;
      display: inline;
    }

    .rebuy-cart__flyout-item-subscription {
      .rebuy-select {
        background-color: #ECE9DE !important;
        padding-top: 14px;
        padding-bottom: 14px;
      }
      .rebuy-button {
        border: 1px solid #262626;
        padding: 14px 24px;
        line-height: 1;

        &:hover {
          width: 100%;
          margin-top: 0;
        }
      }
      .rebuy-button > span {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #262626;
        gap: 8px;
        font-size: 16px;
      }
      .rebuy-button > span::before {
        background: url(/cdn/shop/files/subscribe-icon.svg?v=1755034752) no-repeat 50%;
        height: 15px;
        width: 16px;
        margin-right: 0;
      }
    }

    .rebuy-cart__flyout-item-price {
      & > div {
        display: flex;
        justify-content: end;
        gap: 8px;
      }
      .rebuy-money {
        font-size: 16px;
        color: #262626;

        &.compare-at,
        &.compare-at span {
          color: #5B5E61 !important;
        }
      }
    }
  }

  /* Cross-sell Widget */
  [data-rebuy-component="cross-sell-widget"] {
    background-color: #ECE9DE;

    .rebuy-widget {
      background-color: #ECE9DE;
      padding: 24px 0 !important;
    }

    .primary-title {
      text-align: center;
      font-weight: 700;
      font-size: 20px;
      padding: 0 !important;
      margin: 0 !important;

      @media (min-width: 768px) {
        font-size: 24px;
      }
    }

    .rebuy-product-actions .rebuy-button {
      padding: 14px 24px;
      min-width: 142px;
      border-color: #262626;
      border-width: 1px;
      color: #262626 !important;
      background-color: #FAFAF8 !important;
      line-height: 1;
      height: auto !important;

      &:hover {
        color: #FAFAF8 !important;
        background-color: #262626 !important;
        border-color: #262626;
      }

      &::after {
        height: 0;
        background-color: transparent;
      }
    }
  }

  /* Footer Summary Area */
  [data-rebuy-cart-anchor="footer"] {
    padding-top: 10px;

    .rebuy-cart__discount-form {
      #rebuy-cart__discount-input {
        background-color: #fff;
      }

      .rebuy-button {
        height: 46px;
        line-height: 1;
      }
    }

    .rebuy-cart__discount-form {
      .rebuy-input {
        border-color: #6D6D6D;
        border-width: 1px;
        color: #262626;
        font-size: 16px;

        &::placeholder {
          text-transform: none;
          color: #6D6D6D;
        }
      }
      .rebuy-button {
        background-color: #6D6D6D;
        border: none;
        color: #fff;
      }
    }

    route-protect-widget .pw-route-protection {
      padding: 0 16px;

      .pw-variant-optimal-container,
      .pw-container {
        max-width: unset;
      }
      .pw-variant-optimal {
        gap: 8px;
      }
      .pw-logo {
        display: flex;
        align-items: center;
      }
      .pw-title,
      .pw-quote {
        font-weight: 400;
        font-size: 16px;
        font-family: 'BASIS REGULAR', sans-serif;
      }
      .pw-info-icon svg {
        height: 18px !important;
        width: 18px !important;
      }
    }

    .rebuy-cart__checkout-button {
      background-color: #262626;
      color: #fff;
      border: none;
      padding-top: 16px;
      padding-bottom: 16px;
      height: auto;
      line-height: 1;

      &:hover {
        background-color: #262626;
      }

      span {
        font-weight: 700;
        font-size: 16px;
        line-spacing: 5%;
      }
    }
  }

  /* Empty Cart */
  .rebuy-cart__flyout-empty-cart {
    h4 {
      text-transform: none;
      font-family: 'Basis Bold', sans-serif;
      font-size: 18px;
    }
    p {
      font-family: Typewriter, sans-serif;
      margin-bottom: 10px;
    }
    a {
      color: #262626;
      border-color: #262626;
      border-width: 1px;
      line-height: 1;
      padding: 14px 24px;
      font-size: 16px;
      height: auto;
      font-family: 'Basis Medium', sans-serif;
    }
  }
}


/* Rebuy Modal (cart error messages) */
#rebuy-modal .rebuy-notification-dialog {
  .rebuy-button {
    border-color: #6D6D6D;
    border-width: 1px;
    color: #262626;
    font-size: 16px;
    padding: 14px 24px;
    line-height: 1;

    &:hover {
      height: auto;
    }
  }
}
