body.route-checkout {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 0%, rgba(119, 48, 255, 0.18), transparent 30rem),
    radial-gradient(circle at 84% 100%, rgba(122, 56, 255, 0.12), transparent 36rem),
    #05050d;
  color: #f7f3ff;
}
body.route-checkout > #site-header,
body.route-checkout > main,
body.route-checkout > .site-footer,
body.route-checkout > #account-modal { display: none !important; }
.cradle-checkout-page[hidden] { display: none !important; }
.cradle-checkout-page { min-height: 100vh; padding: 24px; box-sizing: border-box; }
.cradle-checkout-shell { width: min(1180px, 100%); margin: 0 auto; }
.cradle-checkout-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.cradle-checkout-brand { display: inline-flex; align-items: center; gap: 11px; color: #fff; text-decoration: none; font-weight: 800; letter-spacing: .08em; }
.cradle-checkout-brand img { width: 34px; height: 34px; object-fit: contain; }
.cradle-checkout-secure { display: inline-flex; gap: 8px; align-items: center; color: #b8abc9; font-size: 13px; }
.cradle-checkout-sandbox { margin: 0 0 18px; padding: 11px 14px; border: 1px solid rgba(139, 76, 255, .45); background: rgba(93, 37, 185, .13); color: #d7c7ff; font-size: 13px; clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px)); }
.cradle-checkout-grid { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 18px; align-items: start; }
.cradle-checkout-card { position: relative; overflow: hidden; border: 1px solid rgba(133, 89, 215, .25); background: linear-gradient(180deg, rgba(12, 10, 25, .96), rgba(7, 7, 16, .98)); box-shadow: 0 18px 60px rgba(0, 0, 0, .34); }
.cradle-checkout-card::before { content: ""; position: absolute; inset: 0 auto auto 0; width: 110px; height: 1px; background: linear-gradient(90deg, #9b5cff, transparent); }
.cradle-checkout-payment { padding: 22px; min-height: 560px; }
.cradle-checkout-payment h1 { margin: 4px 0 5px; font-size: clamp(28px, 4vw, 42px); letter-spacing: -.03em; }
.cradle-checkout-payment > p { margin: 0 0 20px; color: #958ca9; }
.cradle-checkout-state { display: grid; gap: 8px; padding: 14px 15px; margin-bottom: 16px; border: 1px solid rgba(131, 78, 222, .22); background: rgba(92, 53, 157, .08); }
.cradle-checkout-state strong { font-size: 14px; }
.cradle-checkout-state span { color: #a79db7; font-size: 13px; line-height: 1.45; }
.cradle-checkout-state[data-tone="success"] { border-color: rgba(174, 123, 255, .52); box-shadow: inset 3px 0 0 #a562ff; }
.cradle-checkout-state[data-tone="danger"] { border-color: rgba(255, 112, 164, .35); box-shadow: inset 3px 0 0 #d65d9c; }
#cradle-stripe-checkout-mount { min-height: 390px; }
.cradle-checkout-summary { padding: 19px; }
.cradle-checkout-summary h2 { margin: 0 0 16px; font-size: 18px; }
.cradle-checkout-order-items { display: grid; gap: 12px; }
.cradle-checkout-order-item { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.cradle-checkout-order-item strong, .cradle-checkout-order-item span { display: block; }
.cradle-checkout-order-item strong { font-size: 14px; }
.cradle-checkout-order-item span { margin-top: 4px; color: #8f859d; font-size: 12px; }
.cradle-checkout-order-item b { display: block; margin-top: 8px; color: #d9c4ff; font-size: 15px; }
.cradle-checkout-totals { display: grid; gap: 9px; margin-top: 17px; font-size: 13px; }
.cradle-checkout-total-row { display: flex; justify-content: space-between; gap: 16px; color: #a59bad; }
.cradle-checkout-total-row.discount { color: #c2a2ff; }
.cradle-checkout-total-row.final { margin-top: 6px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.09); color: #fff; font-size: 17px; font-weight: 800; }
.cradle-checkout-total-row.final strong { color: #c99dff; font-size: 24px; }
.cradle-checkout-note { margin: 14px 0 0; color: #7f7689; font-size: 12px; line-height: 1.5; }
.cradle-checkout-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.cradle-checkout-actions a, .cradle-checkout-actions button { border: 1px solid rgba(147, 92, 255, .38); background: rgba(91, 46, 171, .16); color: #eadfff; padding: 10px 14px; text-decoration: none; cursor: pointer; font: inherit; }
.cradle-checkout-actions .primary { background: linear-gradient(100deg, #7041dc, #8c3cf0); border-color: #a566ff; color: #fff; box-shadow: 0 8px 24px rgba(109, 55, 220, .24); }
.cradle-checkout-order-ref { margin-top: 16px; color: #6e6579; font-size: 11px; word-break: break-all; }
@media (max-width: 860px) { .cradle-checkout-grid { grid-template-columns: 1fr; } .cradle-checkout-summary { order: -1; } }
@media (max-width: 560px) { .cradle-checkout-page { padding: 14px; } .cradle-checkout-header { align-items: flex-start; flex-direction: column; } .cradle-checkout-payment { padding: 16px; } }
