/* ══════════════════════════════════════════════════════════════
   SNKR Order Form — Maximum specificity + !important overrides
   Defeats WordPress / Elementor / theme stylesheet conflicts
   ══════════════════════════════════════════════════════════════ */

/* ── Box sizing reset ── */
#snkr-form-wrapper,
#snkr-form-wrapper *,
#snkr-form-wrapper *::before,
#snkr-form-wrapper *::after {
  box-sizing: border-box !important;
}

/* ── Wrapper ── */
#snkr-form-wrapper {
  font-family: 'Arial Black', 'Arial Bold', Arial, sans-serif !important;
  background: #ffffff !important;
  color: #000000 !important;
  max-width: 800px !important;
  margin: 0 auto !important;
  padding: 30px 20px 60px 20px !important;
}

/* ── Step titles ── */
#snkr-form-wrapper .snkr-step-title {
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #000000 !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  background: none !important;
  border: none !important;
}

#snkr-form-wrapper .snkr-subtitle {
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #000000 !important;
  margin: 16px 0 8px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
}

#snkr-form-wrapper .snkr-section-title {
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #000000 !important;
  margin: 22px 0 10px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
}

/* ══════════════════════════════════════════════
   ALL INPUT FIELDS — black bars, yellow border,
   bold white uppercase placeholder text
   ══════════════════════════════════════════════ */
#snkr-form-wrapper input.snkr-input,
#snkr-form-wrapper select.snkr-input,
#snkr-form-wrapper textarea.snkr-input {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 3px solid #feff66 !important;
  border-radius: 0 !important;
  padding: 0 18px !important;
  margin: 0 0 8px 0 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  outline: none !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  line-height: 52px !important;
  vertical-align: middle !important;
}

#snkr-form-wrapper input.snkr-input::placeholder,
#snkr-form-wrapper select.snkr-input::placeholder {
  color: #ffffff !important;
  opacity: 1 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
}

#snkr-form-wrapper input.snkr-input:focus,
#snkr-form-wrapper select.snkr-input:focus {
  border-color: #cb3232 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Red variant — Phone field and Brand dropdown */
#snkr-form-wrapper input.snkr-input--red,
#snkr-form-wrapper select.snkr-input--red {
  background: #cb3232 !important;
  background-color: #cb3232 !important;
  border: 3px solid #cb3232 !important;
  color: #ffffff !important;
}

#snkr-form-wrapper input.snkr-input--red::placeholder,
#snkr-form-wrapper select.snkr-input--red::placeholder {
  color: #ffffff !important;
  opacity: 1 !important;
}

#snkr-form-wrapper input.snkr-input--red:focus,
#snkr-form-wrapper select.snkr-input--red:focus {
  background: #a52828 !important;
  background-color: #a52828 !important;
  border-color: #feff66 !important;
}

/* Select arrow */
#snkr-form-wrapper select.snkr-input {
  cursor: pointer !important;
  padding-right: 40px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23ffffff' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
}

#snkr-form-wrapper select.snkr-input option {
  background: #000000 !important;
  color: #ffffff !important;
  font-family: Arial, sans-serif !important;
  font-weight: 700 !important;
}

/* Hidden custom brand input */
#snkr-form-wrapper input.snkr-custom-brand {
  display: none !important;
}
#snkr-form-wrapper input.snkr-custom-brand[style*="display: block"],
#snkr-form-wrapper input.snkr-custom-brand[style*="display:block"] {
  display: block !important;
}

/* ══════════════════════════════════════════════
   BUTTONS
   ══════════════════════════════════════════════ */
#snkr-form-wrapper button.snkr-btn,
#snkr-form-wrapper a.snkr-btn {
  display: block !important;
  width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  padding: 0 20px !important;
  margin-top: 10px !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  line-height: 56px !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  transition: filter 0.12s, transform 0.1s !important;
  vertical-align: middle !important;
}

#snkr-form-wrapper button.snkr-btn:hover,
#snkr-form-wrapper a.snkr-btn:hover {
  filter: brightness(1.12) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

#snkr-form-wrapper button.snkr-btn:active {
  transform: translateY(1px) !important;
}

/* Red button */
#snkr-form-wrapper button.snkr-btn--red,
#snkr-form-wrapper a.snkr-btn--red {
  background: #cb3232 !important;
  background-color: #cb3232 !important;
  color: #ffffff !important;
  border: none !important;
}

/* Black button */
#snkr-form-wrapper button.snkr-btn--black,
#snkr-form-wrapper a.snkr-btn--black {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 3px solid #feff66 !important;
  height: 52px !important;
  line-height: 46px !important;
}

/* ── Pair nav row ── */
#snkr-form-wrapper .snkr-pair-nav {
  display: flex !important;
  gap: 8px !important;
  margin-top: 10px !important;
}
#snkr-form-wrapper .snkr-pair-nav button.snkr-btn {
  flex: 1 !important;
  margin-top: 0 !important;
}

/* ══════════════════════════════════════════════
   RADIO / CHECKBOX SERVICE SELECT
   ══════════════════════════════════════════════ */
#snkr-form-wrapper .snkr-service-select {
  border-left: 4px solid #feff66 !important;
  background: #f7f7f7 !important;
  background-color: #f7f7f7 !important;
  padding: 12px 16px !important;
  margin: 0 0 10px 0 !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
}

#snkr-form-wrapper .snkr-radio-label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  color: #000000 !important;
  margin: 7px 0 !important;
  cursor: pointer !important;
  line-height: 1.3 !important;
}

#snkr-form-wrapper .snkr-radio-label input[type="radio"],
#snkr-form-wrapper .snkr-radio-label input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  accent-color: #cb3232 !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  border: none !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ══════════════════════════════════════════════
   SNEAKER / CAP ENTRY SHOW/HIDE
   ══════════════════════════════════════════════ */
#snkr-form-wrapper .snkr-sneaker-entry {
  display: none !important;
}
#snkr-form-wrapper .snkr-sneaker-entry.active {
  display: block !important;
}
#snkr-form-wrapper .snkr-cap-entry {
  display: none !important;
}
#snkr-form-wrapper .snkr-cap-entry.active {
  display: block !important;
}

/* ══════════════════════════════════════════════
   ADD-ON ROWS
   ══════════════════════════════════════════════ */
#snkr-form-wrapper .snkr-addon-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: #f5f5f5 !important;
  background-color: #f5f5f5 !important;
  border-left: 4px solid #feff66 !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  padding: 13px 16px !important;
  margin-bottom: 8px !important;
  border-radius: 0 !important;
}

#snkr-form-wrapper .snkr-addon-label {
  flex: 1 !important;
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #000000 !important;
  min-width: 140px !important;
}

#snkr-form-wrapper .snkr-addon-price {
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #cb3232 !important;
  white-space: nowrap !important;
}

/* Qty control */
#snkr-form-wrapper .snkr-qty-control {
  display: flex !important;
  align-items: center !important;
  border: 2px solid #000000 !important;
  gap: 0 !important;
}

#snkr-form-wrapper button.snkr-qty-btn {
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border: none !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  border-radius: 0 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
#snkr-form-wrapper button.snkr-qty-btn:hover {
  background: #cb3232 !important;
  background-color: #cb3232 !important;
  transform: none !important;
}

#snkr-form-wrapper input.snkr-qty-input {
  width: 46px !important;
  height: 34px !important;
  min-height: 34px !important;
  text-align: center !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: none !important;
  border-left: 2px solid #000000 !important;
  border-right: 2px solid #000000 !important;
  border-top: none !important;
  border-bottom: none !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  padding: 0 !important;
  margin: 0 !important;
  -moz-appearance: textfield !important;
  outline: none !important;
  box-shadow: none !important;
}
#snkr-form-wrapper input.snkr-qty-input::-webkit-outer-spin-button,
#snkr-form-wrapper input.snkr-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* ══════════════════════════════════════════════
   ORDER SUMMARY
   ══════════════════════════════════════════════ */
#snkr-form-wrapper #snkr-summary-lines {
  border-top: 3px solid #000000 !important;
  border-bottom: 3px solid #000000 !important;
  border-left: none !important;
  border-right: none !important;
  padding: 4px 0 !important;
  margin: 14px 0 !important;
  background: none !important;
}

#snkr-form-wrapper .snkr-summary-line {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 9px 4px !important;
  border-bottom: 1px solid #e0e0e0 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  background: none !important;
  margin: 0 !important;
}
#snkr-form-wrapper .snkr-summary-line:last-child {
  border-bottom: none !important;
}

/* Total row */
#snkr-form-wrapper .snkr-total-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: #000000 !important;
  background-color: #000000 !important;
  color: #feff66 !important;
  padding: 16px 20px !important;
  margin: 4px 0 16px 0 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  border: none !important;
  border-radius: 0 !important;
}

/* ── Coupon row ── */
#snkr-form-wrapper .snkr-coupon-row {
  display: flex !important;
  gap: 8px !important;
  margin: 16px 0 4px 0 !important;
  align-items: stretch !important;
}
#snkr-form-wrapper .snkr-coupon-row input.snkr-coupon-input {
  flex: 1 !important;
  margin-bottom: 0 !important;
}
#snkr-form-wrapper button.snkr-coupon-btn {
  width: auto !important;
  margin-top: 0 !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 20px !important;
  font-size: 13px !important;
  flex-shrink: 0 !important;
  line-height: 52px !important;
}

#snkr-form-wrapper #snkr-coupon-msg {
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  min-height: 20px !important;
  padding: 4px 0 !important;
  background: none !important;
  border: none !important;
}
#snkr-form-wrapper #snkr-coupon-msg.snkr-success { color: #1a7a1a !important; }
#snkr-form-wrapper #snkr-coupon-msg.snkr-error   { color: #cb3232 !important; }

/* ── Delivery options ── */
#snkr-form-wrapper .snkr-delivery-options {
  border-left: 4px solid #cb3232 !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  background: #f7f7f7 !important;
  background-color: #f7f7f7 !important;
  padding: 12px 16px !important;
  margin: 10px 0 16px 0 !important;
  border-radius: 0 !important;
}

/* ── Stripe card element ── */
#snkr-form-wrapper .snkr-card-element {
  background: #000000 !important;
  background-color: #000000 !important;
  border: 3px solid #feff66 !important;
  padding: 16px 18px !important;
  margin: 0 0 10px 0 !important;
  min-height: 52px !important;
  border-radius: 0 !important;
}

/* ── Errors ── */
#snkr-form-wrapper .snkr-error-msg {
  color: #cb3232 !important;
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  min-height: 18px !important;
  margin-bottom: 8px !important;
  background: none !important;
  border: none !important;
}

#snkr-form-wrapper #snkr-payment-status,
#snkr-form-wrapper #snkr-lookup-status {
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  min-height: 18px !important;
  margin: 5px 0 !important;
  background: none !important;
  border: none !important;
}
#snkr-form-wrapper .snkr-lookup-found { color: #1a7a1a !important; }
#snkr-form-wrapper .snkr-lookup-new   { color: #555555 !important; }

/* ── Confirm summary box ── */
#snkr-form-wrapper .snkr-confirm-summary {
  border-left: 4px solid #feff66 !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  background: #f5f5f5 !important;
  background-color: #f5f5f5 !important;
  padding: 14px 18px !important;
  margin-bottom: 20px !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
}

#snkr-form-wrapper .snkr-confirm-msg {
  font-family: Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.65 !important;
  color: #000000 !important;
  margin-bottom: 12px !important;
  text-transform: uppercase !important;
  background: none !important;
  border: none !important;
}

/* ── Field group ── */
#snkr-form-wrapper .snkr-field-group {
  margin-bottom: 0 !important;
}

/* ══════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════ */
@media (max-width: 540px) {
  #snkr-form-wrapper { padding: 16px 12px 40px !important; }
  #snkr-form-wrapper button.snkr-btn { font-size: 13px !important; letter-spacing: 1px !important; }
  #snkr-form-wrapper .snkr-total-row { font-size: 18px !important; }
  #snkr-form-wrapper .snkr-addon-row { flex-wrap: wrap !important; }
  #snkr-form-wrapper .snkr-pair-nav  { flex-direction: column !important; }
  #snkr-form-wrapper .snkr-coupon-row { flex-direction: column !important; }
  #snkr-form-wrapper button.snkr-coupon-btn { width: 100% !important; }
}

/* ══════════════════════════════════════════════
   ACCORDION CARDS — Sneaker Pairs & Caps
   ══════════════════════════════════════════════ */

/* The card wrapper */
#snkr-form-wrapper .snkr-card {
  border: 3px solid #feff66 !important;
  margin-bottom: 10px !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

/* Collapsed card gets a lighter border so active one stands out */
#snkr-form-wrapper .snkr-card:not(.active) {
  border-color: #d0d0d0 !important;
  opacity: 0.85;
}

/* Card header — the clickable collapsed bar */
#snkr-form-wrapper .snkr-card-header {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: #000000 !important;
  background-color: #000000 !important;
  padding: 14px 18px !important;
  cursor: pointer !important;
  user-select: none !important;
  border: none !important;
  margin: 0 !important;
  transition: background 0.15s !important;
}

#snkr-form-wrapper .snkr-card-header:hover {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
}

/* Active card header goes red so it's clearly open */
#snkr-form-wrapper .snkr-card.active .snkr-card-header {
  background: #cb3232 !important;
  background-color: #cb3232 !important;
}

/* "PAIR 1" / "CAP 1" label */
#snkr-form-wrapper .snkr-card-label {
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  color: #ffffff !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* Summary text — "Nike · Sz 10 · 1 pair · $10" */
#snkr-form-wrapper .snkr-card-summary {
  flex: 1 !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: rgba(255,255,255,0.75) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Chevron arrow */
#snkr-form-wrapper .snkr-card-chevron {
  font-size: 11px !important;
  color: #feff66 !important;
  flex-shrink: 0 !important;
  transition: transform 0.2s !important;
}

/* Card body — the expandable content */
#snkr-form-wrapper .snkr-card-body {
  padding: 16px 16px 8px 16px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-top: 2px solid #feff66 !important;
  display: none; /* JS controls show/hide via slideDown */
}

/* First card starts open */
#snkr-form-wrapper .snkr-card.active .snkr-card-body {
  display: block !important;
}

/* ── "Add another pair / cap" — styled as proper black buttons matching the design ── */
#snkr-form-wrapper #snkr-next-sneaker,
#snkr-form-wrapper #snkr-next-cap {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 3px solid #feff66 !important;
  border-radius: 0 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  line-height: 46px !important;
  text-align: center !important;
  cursor: pointer !important;
  margin-top: 8px !important;
  padding: 0 20px !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
#snkr-form-wrapper #snkr-next-sneaker:hover,
#snkr-form-wrapper #snkr-next-cap:hover {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  border-color: #feff66 !important;
  transform: translateY(-1px) !important;
  filter: none !important;
}

/* ── Back button — slim, sits at top of each step ── */
#snkr-form-wrapper button.snkr-back-btn {
  height: 40px !important;
  min-height: 40px !important;
  line-height: 34px !important;
  font-size: 12px !important;
  letter-spacing: 1.5px !important;
  padding: 0 16px !important;
  width: auto !important;
  display: inline-block !important;
  margin-bottom: 16px !important;
  margin-top: 0 !important;
}

/* Override the sneaker/cap entry show/hide — cards handle this now */
#snkr-form-wrapper .snkr-sneaker-entry,
#snkr-form-wrapper .snkr-cap-entry {
  display: block !important;
}

/* ══════════════════════════════════════════════
   "GOT MORE SNEAKERS?" — right-aligned add button
   ══════════════════════════════════════════════ */
/* .snkr-add-pair-wrap and .snkr-btn-add-pair are no longer used —
   #snkr-next-sneaker and #snkr-next-cap are styled directly as black buttons */
#snkr-form-wrapper .snkr-add-pair-wrap,
#snkr-form-wrapper .snkr-add-cap-wrap {
  display: none !important;
}

/* ══════════════════════════════════════════════
   BASEBALL CAP ADDON TOGGLE BUTTON
   ══════════════════════════════════════════════ */
#snkr-form-wrapper #snkr-cap-addon-wrap {
  margin-top: 20px !important;
}

#snkr-form-wrapper button.snkr-cap-toggle {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 2px solid #000000 !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  height: 50px !important;
  min-height: 50px !important;
  line-height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}
#snkr-form-wrapper button.snkr-cap-toggle:hover {
  background: #f7f7f7 !important;
  background-color: #f7f7f7 !important;
}
#snkr-form-wrapper button.snkr-cap-toggle--open {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border-color: #feff66 !important;
}
#snkr-form-wrapper button.snkr-cap-toggle--open:hover {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
}

#snkr-form-wrapper .snkr-cap-toggle-icon {
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}

#snkr-form-wrapper #snkr-caps-section {
  border-left: 3px solid #feff66 !important;
  padding-left: 14px !important;
  margin-top: 8px !important;
}

/* ══════════════════════════════════════════════
   VALIDATION ERROR MESSAGES
   ══════════════════════════════════════════════ */
#snkr-form-wrapper .snkr-field-error,
#snkr-form-wrapper .snkr-card-error {
  background: #fff0f0 !important;
  border-left: 4px solid #cb3232 !important;
  color: #cb3232 !important;
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  padding: 10px 14px !important;
  margin-bottom: 10px !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
}

/* ══════════════════════════════════════════════
   ORDER SUMMARY — grouped breakdown
   ══════════════════════════════════════════════ */

/* Clear the old simple border style */
#snkr-form-wrapper #snkr-summary-lines {
  border-top: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  margin: 14px 0 !important;
}

/* Group container (SNEAKER CLEANING / BASEBALL CAPS / ADD-ONS) */
#snkr-form-wrapper .snkr-summary-group {
  margin-bottom: 12px !important;
  border: 2px solid #000000 !important;
  border-radius: 0 !important;
}

#snkr-form-wrapper .snkr-summary-group-title {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #feff66 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  padding: 7px 14px !important;
  border: none !important;
  margin: 0 !important;
}

/* Individual line within a group */
#snkr-form-wrapper .snkr-summary-line {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  padding: 9px 14px !important;
  border-bottom: 1px solid #eeeeee !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  background: #ffffff !important;
  margin: 0 !important;
}
#snkr-form-wrapper .snkr-summary-line:last-child {
  border-bottom: none !important;
}

#snkr-form-wrapper .snkr-summary-line-label {
  font-family: Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  color: #000000 !important;
  flex: 1 !important;
}

#snkr-form-wrapper .snkr-summary-detail {
  font-weight: 400 !important;
  font-size: 11px !important;
  color: #666666 !important;
  text-transform: none !important;
  margin-left: 6px !important;
}

#snkr-form-wrapper .snkr-summary-line-price {
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #000000 !important;
  white-space: nowrap !important;
  margin-left: 16px !important;
}

/* Subtotal row */
#snkr-form-wrapper .snkr-summary-subtotal {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 10px 14px !important;
  border-top: 2px solid #000000 !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  margin-top: 4px !important;
  background: #f5f5f5 !important;
  font-family: 'Arial Black', Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #000000 !important;
}

/* Discount/coupon row */
#snkr-form-wrapper .snkr-summary-discount {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 8px 14px !important;
  background: #f0fff0 !important;
  border-top: none !important;
  border-left: 4px solid #1a7a1a !important;
  border-right: none !important;
  border-bottom: none !important;
  font-family: Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #1a7a1a !important;
  margin-top: 4px !important;
}

/* Override old .snkr-summary-line styles that might bleed in from the old CSS */
#snkr-form-wrapper .snkr-summary-group .snkr-summary-line {
  border-bottom: 1px solid #eeeeee !important;
}
