.kp-legacy-checkout,
.kp-legacy-checkout * {
  box-sizing: border-box;
}

.kp-legacy-checkout {
  color: var(--kp-text-color);
  font-size: 16px;
  line-height: 1.5;
}

.kp-legacy-checkout img {
  display: block;
  max-width: 100%;
}

.kp-legacy-checkout__button,
.kp-legacy-checkout__input {
  font: inherit;
}

.kp-legacy-checkout__input {
  width: 100%;
  height: 52px;
  padding: 0 14px;
  border: 1px solid var(--kp-hair);
  border-radius: var(--kp-radius-md);
  background: var(--kp-input-color);
  color: var(--kp-text-color);
  box-shadow: var(--kp-raise-sm), var(--kp-bevel);
  transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

/* Multi-line / auto-height fields (textarea-style usage) keep vertical padding. */
textarea.kp-legacy-checkout__input {
  height: auto;
  padding: 0.85rem 14px;
}

.kp-legacy-checkout__input:focus {
  outline: none;
  border-color: var(--kp-button-color);
  box-shadow: var(--kp-ring), var(--kp-bevel);
}

.kp-legacy-checkout__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 52px;
  padding: 0 1.25rem;
  border: 0;
  border-radius: var(--kp-radius-lg);
  background: var(--kp-button-color);
  color: var(--kp-on-brand);
  cursor: pointer;
  box-shadow: var(--kp-raise), var(--kp-bevel-on);
  transition: transform 120ms ease, opacity 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.kp-legacy-checkout__button:active {
  transform: translateY(1px);
}

.kp-legacy-checkout__button.disabled,
.kp-legacy-checkout__button:disabled:not([aria-busy="true"]) {
  background: var(--kp-hair-2);
  color: var(--kp-muted-color);
  cursor: not-allowed;
  opacity: 1;
  transform: none;
  box-shadow: none;
}

.kp-legacy-checkout__button[aria-busy="true"] {
  opacity: 0.7;
  cursor: wait;
  transform: none;
}

.kp-legacy-checkout__button--secondary {
  background: var(--kp-surface-color);
  border: 1px solid var(--kp-hair);
  color: var(--kp-text-color);
  box-shadow: var(--kp-raise), var(--kp-bevel);
}

.kp-legacy-checkout__muted,
.kp-legacy-checkout__status,
.kp-legacy-checkout__signed-in {
  margin: 0;
  color: var(--kp-muted-color);
}

.kp-legacy-checkout__error {
  margin: 0;
  color: var(--kp-error-color);
}

.kp-legacy-checkout__status {
  color: var(--kp-success-color);
}
