.ac30-thread,
.ac30-payment,
.ac30-checkout {
  color: var(--wow-ink, #102a48);
  font-family: inherit;
  font-size: var(--app-type-body, 1rem);
  line-height: 1.55;
}

.ac30-thread,
.ac30-payment {
  padding: 1rem;
  border: 1px solid #dce4ee;
  border-radius: .75rem;
  background: #f8fafc;
  min-width: 0;
}

.ac30-thread {
  flex: 1 0 100%;
  overflow-wrap: anywhere;
}

.ac30-thread summary {
  cursor: pointer;
  font-size: var(--app-type-control, .9375rem);
  font-weight: 650;
}

.ac30-payment h5,
.ac30-checkout-title {
  margin: 0 0 .5rem;
  font-weight: 650;
  line-height: 1.25;
}

.ac30-payment h5 {
  font-size: var(--app-type-card, 1.125rem);
}

.ac30-checkout-title {
  font-size: var(--app-type-page, 1.5rem);
}

.ac30-thread p,
.ac30-payment p,
.ac30-checkout p {
  margin: .5rem 0;
}

.ac30-status:empty {
  display: none;
}

.ac30-status[data-tone="error"] {
  color: #a0342b;
}

.ac30-thread-items {
  margin: .75rem 0;
}

.ac30-message {
  padding: .65rem 0;
  border-top: 1px solid #dce4ee;
}

.ac30-message-header {
  display: flex;
  flex-wrap: wrap;
  gap: .2rem 1rem;
  align-items: baseline;
}

.ac30-message p {
  white-space: pre-wrap;
}

.ac30-message time,
.ac30-checkout-note {
  font-size: var(--app-type-meta, .875rem);
  color: #465d72;
}

.ac30-form {
  display: grid;
  gap: .7rem;
  min-width: 0;
}

.ac30-form[hidden] {
  display: none;
}

.ac30-form label {
  display: block;
  font-weight: 600;
}

.ac30-form :is(input, textarea),
.ac30-actions input {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin-top: .25rem;
  padding: .55rem .7rem;
  border: 1px solid #a8b9cb;
  border-radius: .45rem;
  color: inherit;
  background: white;
  font-family: inherit;
  font-size: var(--app-type-input, 1rem);
  font-weight: 400;
}

.ac30-form textarea {
  resize: vertical;
}

.ac30-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: .75rem;
}

.ac30-payment-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
  gap: .55rem;
  margin: .5rem 0;
}

.ac30-payment-facts dt {
  color: #465d72;
  font-size: var(--app-type-meta, .875rem);
}

.ac30-payment-facts dd {
  margin: 0;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.ac30-policy,
.ac30-sandbox,
.ac30-confirmation {
  padding: .6rem .75rem;
  border-radius: .4rem;
  background: #eef3f8;
}

.ac30-policy p {
  margin: .2rem 0 0;
}

.ac30-confirmation {
  margin-top: .75rem;
  border: 1px solid #dce4ee;
}

.ac30-approved {
  color: #216148;
  font-weight: 650;
}

.ac30-checkout {
  box-sizing: border-box;
  width: min(32rem, calc(100% - 1.25rem));
  max-height: calc(100dvh - 1.25rem);
  padding: clamp(.9rem, 4vw, 1.4rem);
  border: 1px solid #dce4ee;
  border-radius: .85rem;
  background: white;
  overflow: auto;
}

.ac30-checkout::backdrop {
  background: #091d35a8;
}

.ac30-checkout-total {
  font-size: var(--app-type-subheading, 1.25rem);
  font-weight: 650;
}

.ac30-card-field {
  box-sizing: border-box;
  width: 100%;
  min-height: 2.75rem;
  padding: .65rem;
  border: 1px solid #a8b9cb;
  border-radius: .45rem;
}

.ac30-control {
  display: inline-block;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  margin-top: .45rem;
  padding: .55rem .8rem;
  border: 1px solid #a8b9cb;
  border-radius: .45rem;
  color: #102a48;
  background: white;
  font-family: inherit;
  font-size: var(--app-type-control, .9375rem);
  font-weight: 650;
  line-height: 1.45;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
}

.ac30-control:disabled {
  cursor: default;
  opacity: .65;
}

.ac30-primary {
  color: white;
  border-color: #102a48;
  background: #102a48;
}
