input[name="cpf"],
input[name="llcustomercpf_cpf"],
input[name="llcustomercpf[cpf]"],
input[data-llcustomercpf-mask="1"] {
  max-width: 18rem;
}

.llcustomercpf-fallback-field {
  margin-top: 1rem;
}

.llcustomercpf-checkout-gate {
  margin: 0 0 1.25rem;
  padding: 1rem 1.15rem;
  border: 1px solid #e6d28a;
  border-left: 4px solid #e6bf45;
  background: #fffaf0;
}

.llcustomercpf-checkout-gate-content {
  max-width: 42rem;
}

.llcustomercpf-cart-gate {
  margin: 1rem 0;
}

.llcustomercpf-checkout-title {
  display: block;
  margin-bottom: 0.35rem;
  color: #222;
  font-size: 1rem;
}

.llcustomercpf-checkout-description {
  margin: 0 0 0.75rem;
  color: #666;
  font-size: 0.9rem;
}

.llcustomercpf-checkout-row {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}

.llcustomercpf-checkout-input {
  flex: 1 1 14rem;
}

.llcustomercpf-checkout-save {
  flex: 0 0 auto;
  white-space: nowrap;
}

.llcustomercpf-checkout-message {
  margin-top: 0.65rem;
  font-size: 0.875rem;
}

.llcustomercpf-checkout-message-error {
  color: #c0392b;
}

.llcustomercpf-checkout-message-success {
  color: #2e7d32;
}

.llcustomercpf-checkout-gate-saved {
  border-color: #b7d8b7;
  border-left-color: #2e7d32;
  background: #f6fff6;
}

.llcustomercpf-disabled-continue {
  opacity: 0.55;
  cursor: not-allowed;
}

@media (max-width: 767px) {
  .llcustomercpf-checkout-row {
    display: block;
  }

  .llcustomercpf-checkout-save {
    margin-top: 0.75rem;
  }
}
