/* Checkout page specific styles for ToyGaragee */

/* Hero */
.checkout-hero {
  display: grid;
  gap: var(--space-6);
  grid-template-columns: 1.2fr 1fr;
  align-items: center;
}
.checkout-hero-text p { max-width: 46ch; }
.checkout-hero-media img { width: 100%; height: auto; }

@media (max-width: 960px) {
  .checkout-hero { grid-template-columns: 1fr; }
}

/* Layout */
.checkout-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--space-8);
  margin-top: var(--space-8);
}
.aside-stack { display: grid; gap: var(--space-6); align-self: start; }

@media (max-width: 1080px) {
  .checkout-grid { grid-template-columns: 1fr; }
}

/* Form grids */
.field-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, 1fr);
  margin-top: var(--space-4);
}
.field { display: flex; flex-direction: column; gap: 6px; }
.field label { font-weight: 600; }
.field-span-2 { grid-column: span 2; }

@media (max-width: 720px) {
  .field-grid { grid-template-columns: 1fr; }
  .field-span-2 { grid-column: auto; }
}

/* Shipping & payment options */
.shipping-options, .payment-options { display: grid; gap: var(--space-3); margin-top: var(--space-3); }
.shipping-option, .payment-option {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}
.shipping-option input, .payment-option input { margin-inline: var(--space-1); }
.shipping-info { display: flex; flex-direction: column; }
.shipping-cost { font-weight: 700; }

/* Promo */
.promo-controls { display: grid; grid-template-columns: 1fr auto; gap: var(--space-3); margin-top: var(--space-2); }
#promoFeedback { min-height: 1.5rem; }

/* Order list table tweaks */
.order-list table tfoot td { font-weight: 700; }
.order-list table tfoot tr:nth-last-child(1) td { font-size: var(--fs-lg); }

/* Trust */
.trust-points { padding-left: 1rem; }
.trust-points li { list-style: disc; }
.trust-visual img { width: 100%; height: auto; }

/* Confirmation */
#orderConfirmation ul { padding-left: 1rem; }
#orderConfirmation li { list-style: circle; }

/* Minor helpers */
.place-order { display: flex; flex-direction: column; align-items: flex-start; }

/* Accessibility / states */
#discountValue { color: var(--color-success); }
.text-success { color: var(--color-success); }
