.modal .title {
  text-align: center;
  color: rgb(46, 63, 92);
  font-size: 24px;
  font-weight: 500;
  margin-top: 45px;
}

.priceInfo {
  text-align: center;
  color: rgb(38, 56, 86);
  font-size: 16px;
  margin-top: 20px;
  margin-bottom: 8px;
}

.iconWrapper {
  position: absolute;
  box-shadow: 3px 4px 10px 0 rgba(170, 185, 202, 0.28);
  background-color: rgb(232, 239, 248);
  border: 4px solid white;
  border-radius: 74px;
  top: -40px;
  left: 145px;
}

.icon {
  height: 74px;
  width: 74px;
}

.or {
  text-align: center;
  margin: 20px;
}

.paypalWrapper {
  margin: auto;
  width: 312px;
}

.StripeElement {
  border: 1px solid rgb(230, 235, 241);
  border-radius: 2px;
  padding: 12px;
  height: 40px;
  margin: 6px 0;
  background-color: white;
  width: 100%;
}

.StripeElement + .StripeElement {
  margin: 6px 0 6px 12px;
}

.formWrapper {
  width: initial;
  display: block;
  margin-top: 0;
}

.formFieldsWrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: rgb(246, 249, 252);
  height: 150px;
  margin: 24px -30px 40px -30px;
  border-top: 1px solid rgb(230, 235, 241);
  border-bottom: 1px solid rgb(230, 235, 241);
}

.formRow {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 312px;
}

.purchaseButton {
  color: white;
  border: 1px solid #ff7c11;
  background: #ff7c11;
  border-radius: 28px;
  min-height: 40px;
  width: 312px;
  font-size: 16px;
}

div[id$='card-errors'], div[id$='card-errors-saved-cards'] {
  margin-top: -20px;
  height: 17px;
  margin-bottom: 3px;
  color: red;
  text-align: center;
}

/* extra stuff for card storage */
.modal__store_payment__loading {
  min-width: 312px;
}

.modal__store_payment .formFieldsWrapper {
  height: 174px;
  margin-bottom: 24px;
}

.modal__store_payment .logo-loading {
  position: static;
}

.modal__new-card-button {
  margin-top: 10px;
  text-align: left;
  padding: 0 40px;
  width: 100%;
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #4582C9;
}

.modal__new-card-button span {
  cursor: pointer;
  display: flex;
  align-items: center;
}

.modal__new-card-button__plus {
  display: inline-block;
  vertical-align: middle;
  padding: 7px;
  background: #FFFFFF;
  border: 1px solid #C9D6E4;
  border-radius: 2px;
  cursor: pointer;
  margin-right: 8px;
}

.modal__new-card-button__plus svg {
  display: block;
}

.modal__card-dropdown {
  cursor: pointer;
  background: #FFFFFF;
  border: 1px solid #C9D6E4;
  border-radius: 2px;
  width: 100%;
  height: 40px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #263856;
}

.modal__card-dropdown img {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  margin-right: 10px;
  flex-shrink: 0;
}

.modal__card-dropdown .chevron {
  position: absolute;
  right: 48px;
  transition: 0.05s ease-in-out all;
}
.modal__cards_list.active .modal__card-dropdown .chevron {
  transform: rotateX(180deg);
}

.modal__cards_list {
  padding: 0 40px;
  width: 100%;
  position: relative;
}

.modal__cards_list .dropper {
  background: white;
  filter: drop-shadow(0px 4px 10px rgba(74, 93, 128, 0.26));
  border-radius: 2px;
  position: absolute;
  top: 42px;
  left: 40px;
  right: 40px;
  display: none;
  max-height: 120px;
  overflow-y: scroll;
}

.modal__cards_list.active .dropper {
  display: block;
}

.modal__cards_list .dropper .modal__cards_item {
  height: 40px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #263856;
}

.modal__cards_list .dropper .modal__cards_item label {
  cursor: pointer;
  display: flex;
  letter-spacing: -0.1px;
}

.modal__cards_list .dropper .modal__cards_item input {
  width: 0;
  height: 0;
  position: absolute;
  opacity: 0;
}

.modal__cards_list .dropper .modal__cards_item .delete {
  position: absolute;
  right: 8px;
  transition: 0.05s ease-in-out all;
  cursor: pointer;
}
.modal__cards_list .dropper .modal__cards_item .delete g {
  transition: 0.05s ease-in-out all;
}
.modal__cards_list .dropper .modal__cards_item .delete:hover g {
  fill: #FF7C11;
}

.modal__cards_item__round {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  border-radius: 18px;
  border: 0.75px solid #263856;
  transition: 0.25s ease-in-out all;
}

.modal__cards_item__round span {
  width: 0;
  height: 0;
  border-radius: 9px;
  transition: 0.15s ease-in-out all;
}

.modal__cards_item label {
  transition: 0.15s ease-in-out color;
}
.modal__cards_item label:hover .modal__cards_item__round {
  border: 0.75px solid #FF7C11;
}
.modal__cards_item label:hover {
  color: #FF7C11;
}

input:checked+label .modal__cards_item__round {
  border: 0.75px solid #FF7C11;
}

input:checked+label .modal__cards_item__round span {
  width: 9px;
  height: 9px;
  background: #FF7C11;
}

.modal__save_card {
  padding: 6px 0 !important;
  width: 100%;
  max-width: 312px;
  display: flex !important;
  align-items: center;
  font-style: normal;
  font-weight: 300;
  font-size: 14px;
  line-height: 20px;
  color: #6786AC;
  cursor: pointer;
}
.modal__save_card::before {
  display: none !important; 
}
.modal__save_card::after {
  display: none !important; 
}
.modal__save_card__checkbox {
  width: 24px;
  height: 24px;
  border: 2px solid #6786AC;
  border-radius: 3px;
  transition: 0.1s ease-in-out all;
  background-position: center;
  background-repeat: no-repeat;
  margin-right: 8px;
}
input:checked + .modal__save_card .modal__save_card__checkbox {
  border: 2px solid #FF7C11;
  background-color: #FF7C11;
  background-image: url("/static/img/common/icons/checkmark.3cce32875b0c.svg");
}


.cardRow .StripeElement {
  padding: 12px 12px 12px 42px;
  background-repeat: no-repeat;
  background-position: 8px 8px;
  background-image: url("/static/img/common/icons/payment-card-unchecked.01bd20799211.svg");
}
.cardRow .StripeElement.StripeElement--complete {
  padding: 12px 12px 12px 42px;
  background-image: url("/static/img/common/icons/payment-card-checked.8f924813e47f.svg");
}

.deleteButton {
  color: white;
  border: 1px solid #D52C43;
  background: #D52C43;
  border-radius: 28px;
  min-height: 40px;
  width: 312px;
  font-size: 16px;
  opacity: 1;
  transition: 0.25s ease-in all;
}
.deleteButton:hover {
  opacity: 0.85; 
}
.cancelButton {
  color: #263856;
  border: 1px solid rgba(38, 56, 86, 0.6);
  background: white;
  border-radius: 28px;
  min-height: 40px;
  width: 312px;
  font-size: 16px;
  opacity: 1;
  transition: 0.25s ease-in all;
}
.cancelButton:hover {
  opacity: 0.85; 
}