sc-stripe-element {
  display: block;
  --focus-ring: 0 0 0 var(--sc-focus-ring-width) var(--sc-focus-ring-color-primary);
}

sc-stripe-element sc-input {
  --sc-input-height-medium: auto;
}

.sc-stripe * {
  font-family: var(--sc-input-font-family);
  font-weight: var(--sc-input-font-weight);
  font-size: var(--sc-input-font-size);
}

.sc-stripe-element {
  border-radius: var(--sc-input-border-radius-medium);
  font-size: var(--sc-input-font-size-medium);
  height: var(--sc-input-height-medium);
  width: 100%;
  box-sizing: border-box !important;
  background-color: var(--sc-input-background-color);
  border: solid 1px var(--sc-input-border-color, var(--sc-input-border));
  box-shadow: var(--sc-input-box-shadow);
  transition: var(--sc-input-transition, var(--sc-transition-medium)) color, var(--sc-input-transition, var(--sc-transition-medium)) border, var(--sc-input-transition, var(--sc-transition-medium)) box-shadow;
}
.sc-stripe-element:hover {
  background-color: var(--sc-input-background-color-hover);
  border-color: var(--sc-input-border-color-hover);
}
.sc-stripe-element.StripeElement--focus {
  background-color: var(--sc-input-background-color-focus);
  border-color: var(--sc-input-border-color-focus);
  box-shadow: var(--focus-ring);
}

.sc-stripe fieldset {
  margin: 0 15px 20px;
  padding: 0;
  border-style: none;
  background-color: #7795f8;
  box-shadow: 0 6px 9px rgba(50, 50, 93, 0.06), 0 2px 5px rgba(0, 0, 0, 0.08), inset 0 1px 0 #829fff;
  border-radius: 4px;
}

.sc-stripe .row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 15px;
}

.sc-stripe .row + .row {
  border-top: 1px solid #819efc;
}

.sc-stripe label {
  width: 15%;
  min-width: 70px;
  padding: 11px 0;
  color: #c4f0ff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sc-stripe input,
.sc-stripe button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border-style: none;
}

.sc-stripe input:-webkit-autofill {
  -webkit-text-fill-color: #fce883;
  transition: background-color 100000000s;
  -webkit-animation: 1ms void-animation-out;
}

.sc-stripe .StripeElement--webkit-autofill {
  background: transparent !important;
}

.sc-stripe .StripeElement {
  width: 100%;
  padding: var(--sc-input-spacing-small);
}

.sc-stripe input {
  width: 100%;
  padding: 11px;
  color: #fff;
  background-color: transparent;
  -webkit-animation: 1ms void-animation-out;
}

.sc-stripe input::-webkit-input-placeholder {
  color: #87bbfd;
}

.sc-stripe input::-moz-placeholder {
  color: #87bbfd;
}

.sc-stripe input:-ms-input-placeholder {
  color: #87bbfd;
}

.sc-stripe button {
  display: block;
  width: calc(100% - 30px);
  height: 40px;
  margin: 40px 15px 0;
  background-color: #f6a4eb;
  box-shadow: 0 6px 9px rgba(50, 50, 93, 0.06), 0 2px 5px rgba(0, 0, 0, 0.08), inset 0 1px 0 #ffb9f6;
  border-radius: 4px;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

.sc-stripe button:active {
  background-color: #d782d9;
  box-shadow: 0 6px 9px rgba(50, 50, 93, 0.06), 0 2px 5px rgba(0, 0, 0, 0.08), inset 0 1px 0 #e298d8;
}

.sc-stripe .error svg .base {
  fill: #fff;
}

.sc-stripe .error svg .glyph {
  fill: #6772e5;
}

.sc-stripe .error .message {
  color: #fff;
}

.sc-stripe .success .icon .border {
  stroke: #87bbfd;
}

.sc-stripe .success .icon .checkmark {
  stroke: #fff;
}

.sc-stripe .success .title {
  color: #fff;
}

.sc-stripe .success .message {
  color: #9cdbff;
}

.sc-stripe .success .reset path {
  fill: #fff;
}