:root {
  --ink: #0c3c73;
  --sea: #1d6db2;
  --teal: #33b8c8;
  --sun: #f6b52d;
  --sun-deep: #f29a1c;
  --muted: #5c6c82;
  --text: #11243d;
  --border: #dde7f4;
  --shadow: 0 16px 40px rgba(12,60,115,0.16);
  --radius: 18px;
}

/* Reset old order form floats so new grid works */
#order-standard_cart .cart-sidebar,
#order-standard_cart .cart-body,
#order-standard_cart .secondary-cart-body { float: none !important; width: auto !important; }

.checkout-v2 {
  padding: 0 0 30px;
  font-size: 14px;
}

.checkout-hero {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 22px 24px;
  margin-bottom: 18px;
}

.checkout-hero h1 { margin: 6px 0; font-weight: 800; color: var(--ink); }
.checkout-hero .muted { color: var(--muted); }

.hero-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }

.checkout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

@media (min-width: 992px) {
  .checkout-grid { grid-template-columns: minmax(0, 1fr) 320px; }
}

.checkout-main .block,
.checkout-aside .block { margin-bottom: 18px; }

.card.block {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 16px;
}

.cart-main-card { padding: 12px 14px 18px; }

.aurora-header {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin: 0 0 12px;
  padding: 8px 0;
  border-bottom: 1px solid var(--border);
  color: var(--ink);
}

.view-cart-items .item {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px;
  margin-bottom: 10px;
  box-shadow: 0 12px 30px rgba(12,60,115,0.12);
}

.item-title { font-weight: 700; color: var(--text); display: block; }
.item-group, .item-domain { color: var(--muted); display: block; }

.view-cart-empty {
  text-align: center;
  padding: 22px;
  border: 1px dashed var(--border);
  border-radius: 14px;
  color: var(--muted);
  font-weight: 600;
}

/* Actions card (Ações) */
.checkout-actions .panel {
  border-radius: var(--radius);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  background: #fff;
}
.checkout-actions .panel-heading {
  background: linear-gradient(135deg, var(--ink), var(--sea)) !important;
  color: #fff !important;
  border-radius: var(--radius) var(--radius) 0 0;
}
.checkout-actions .panel-heading * { color: #fff !important; }
.checkout-actions .panel-title {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .03em;
}
.checkout-actions .list-group { background: #fff; }
.checkout-actions .list-group-item {
  border: none;
  background: #fff !important;
  color: var(--text) !important;
  padding: 12px 14px;
}
.checkout-actions .list-group-item-action { background: #fff !important; color: var(--text) !important; }
.checkout-actions .list-group-item:hover,
.checkout-actions .list-group-item:focus {
  background: rgba(29,109,178,0.08);
  color: var(--ink);
}
.checkout-actions .list-group-item i { color: var(--sea); }

/* Summary */
.checkout-summary .panel-heading {
  background: linear-gradient(135deg, var(--ink), var(--sea)) !important;
  color: #fff !important;
  border-radius: var(--radius) var(--radius) 0 0;
}
.checkout-summary .panel-heading * { color: #fff !important; }
.checkout-summary .summary-container { padding: 6px 2px; color: var(--text); }
.total-due-today .amt { color: var(--ink); font-weight: 800; font-size: 22px; }

/* Tabs and promo (fix misaligned tab pill) */
.promo-card .nav-tabs {
  border-bottom: 1px solid var(--border);
  margin: 0 0 12px;
}
.promo-card .nav-tabs > li > a {
  border-radius: 12px;
  border: 1px solid var(--border);
  color: var(--muted);
  background: #fff;
}
.promo-card .nav-tabs > li.active > a {
  background: var(--sea);
  color: #fff;
  border-color: var(--sea);
}
.promo-card .tab-content {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px;
}

/* Buttons */
.btn-checkout {
  background: linear-gradient(135deg, var(--sun), var(--sun-deep)) !important;
  border: none !important;
  color: #1f1400 !important;
  box-shadow: 0 12px 24px rgba(242,154,28,.24);
}
.btn-checkout:hover { background: linear-gradient(135deg, #ffba4f, var(--sun)) !important; color: #1f1400 !important; }

.pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  font-weight: 700;
  text-decoration: none;
}
.pill.ghost { background: transparent; }
.pill.primary { background: linear-gradient(135deg, var(--sun), var(--sun-deep)); color: #1f1400; border-color: transparent; }

@media (max-width: 991px) {
  .hero-content { flex-direction: column; align-items: flex-start; }
  .checkout-hero { padding: 18px; }
}
