#jamCookieOrderForm {
  max-width: 700px;
  margin: auto;
  background: #fff;
  padding: 25px;
  border-radius: 16px;
  box-shadow: 0 6px 20px rgba(0,0,0,.08);
}

#jamCookieOrderForm label {
  font-weight: 600;
  margin-top: 15px;
  display:block;
}

#jamCookieOrderForm input,
#jamCookieOrderForm select {
  width:100%;
  padding:10px;
  border-radius:8px;
  border:1px solid #ddd;
}

#jamCookieOrderForm button {
  margin-top:20px;
  width:100%;
  padding:14px;
  background:#ff7aa2;
  color:#fff;
  border:none;
  border-radius:10px;
  font-size:18px;
  font-weight:bold;
}
.jam-summary-card {
  max-width: 760px;
  margin: 20px auto;
  padding: 20px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

.jam-summary-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 12px 0 16px;
}

.jam-summary-table {
  width: 100%;
  border-collapse: collapse;
}

.jam-summary-table td {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.jam-summary-total {
  text-align: right;
  font-size: 18px;
  margin-top: 12px;
}

.jam-summary-banner {
  padding: 10px 12px;
  border-radius: 12px;
  margin-bottom: 12px;
}

.jam-paid {
  background: #f0fff5;
  border: 1px solid #bdeccf;
}

.jam-unpaid {
  background: #fff7ed;
  border: 1px solid #fed7aa;
}

.jam-button.is-loading {
  opacity: 0.8;
  cursor: wait;
}

.jam-button[disabled] {
  opacity: 0.75;
  cursor: not-allowed;
}

@media (max-width: 640px) {
  .jam-summary-grid {
    grid-template-columns: 1fr;
  }
}