/* Basket-only presentation; existing forms and payment endpoints are preserved. */
.store-panel .basket-page { background:#f4f6fb; }
.basket-page .basket-hero { position:relative; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:34px 38px; border-radius:24px; background:linear-gradient(120deg,#14233e,#244775); overflow:hidden; }
.basket-page .basket-hero::after { content:''; position:absolute; right:-65px; top:-100px; width:330px; height:330px; border:1px solid #ffffff15; border-radius:50%; pointer-events:none; }
.basket-page .basket-hero h1 { color:white; font-size:clamp(28px,3.6vw,43px); line-height:1.2; letter-spacing:-1.3px; margin:12px 0 16px; }
.basket-page .basket-hero p { color:#c2d3ed; margin:0; font-size:13px; }
.basket-page .basket-hero .basket-eyebrow { color:#a8c5fb; font-size:10px; letter-spacing:2px; font-weight:750; }
.basket-page .basket-hero-icon { position:relative; z-index:1; display:grid; place-items:center; width:100px; height:100px; flex-shrink:0; border:1px solid #ffffff25; background:#ffffff0c; color:#d8e6ff; border-radius:26px; font-size:46px; transform:rotate(-8deg); }
.basket-page .basket-steps { display:flex; justify-content:space-between; gap:16px; padding:20px 8px; margin:0 0 4px; list-style:none; }
.basket-page .basket-steps li { display:flex; align-items:center; gap:10px; color:#738099; font-size:12px; font-weight:650; }
.basket-page .basket-steps li > span { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:#e4eaf5; color:#63748f; }
.basket-page .basket-steps .is-current,.basket-page .basket-steps .is-complete { color:#2455d6; }
.basket-page .basket-steps .is-current > span,.basket-page .basket-steps .is-complete > span { background:#2455d6; color:white; }
.basket-page .basket-policy { display:flex; flex-wrap:wrap; gap:12px 24px; margin:0 0 24px; padding:12px 16px; background:#eaf0fa; border-radius:11px; }
.basket-page .basket-policy span { display:flex; align-items:center; gap:7px; font-size:11px; color:#536b91; }
.basket-page .basket-policy i { font-size:15px; color:#2455d6; }
.basket-page .basket-workspace { display:grid; grid-template-columns:minmax(0,1fr) 350px; align-items:start; gap:24px; }
.basket-page .basket-workspace > .checkout-layout { grid-column:1; grid-row:1; display:flex; flex-direction:column; gap:24px; }
.basket-page .basket-workspace > .checkout-layout > section { width:100%; }
.basket-page .basket-summary { grid-column:2; grid-row:1; position:sticky; top:calc(var(--ui-header-height,76px) + 20px); border-color:#d5dff1; }
.basket-page .basket-summary h2 { font-size:23px; margin-bottom:24px; }
.basket-page .basket-summary .basket-eyebrow { color:#6c81a4; font-size:10px; font-weight:750; letter-spacing:1.6px; margin:0 0 8px; }
.basket-page .basket-price-lines { display:flex; flex-direction:column; gap:14px; margin:0 0 22px; }
.basket-page .basket-price-lines > div { display:flex; justify-content:space-between; gap:12px; font-size:13px; }
.basket-page .basket-price-lines dt { font-weight:400; color:#65738a; }
.basket-page .basket-price-lines dd { margin:0; font-weight:650; color:#263b5c; text-align:right; }
.basket-page .basket-grand-total { padding:20px 0 0; border-top:1px dashed #cbd7ec; }
.basket-page .basket-grand-total span { display:block; color:#61718b; font-size:12px; }
.basket-page .basket-grand-total strong { display:block; margin-top:6px; font-size:32px; color:#183b88; letter-spacing:-1px; line-height:1.3; overflow-wrap:anywhere; }
.basket-page .basket-shipping-note { font-size:11px; color:#78869d; margin:12px 0 20px; }
.store-panel .basket-page .btn { max-width:100%; min-width:0; height:auto; min-height:46px; white-space:normal; overflow-wrap:anywhere; line-height:1.4; text-align:center; }
.basket-page .basket-summary .mp-help { margin:0; padding:14px; border-radius:10px; background:#f0f4fb; color:#65738a; font-size:12px; }
.basket-page .basket-section-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; }
.basket-page .basket-section-heading h2 { font-size:23px; margin:0; }
.basket-page .basket-section-heading a { padding:8px 12px; border-radius:9px; background:#edf3ff; font-size:12px; font-weight:650; white-space:nowrap; }
.basket-page .checkout-item { position:relative; padding:22px 0 22px 66px; min-height:93px; }
.basket-page .basket-item-icon { position:absolute; top:22px; left:0; width:48px; height:48px; display:grid; place-items:center; background:#f0f4fb; border:1px solid #e1e8f3; border-radius:12px; color:#5378bc; font-size:23px; }
.basket-page .checkout-item > a { display:block; font-size:15px; font-weight:650; line-height:1.5; color:#263b5c; }
.basket-page .checkout-item > p { font-size:13px; margin:8px 0 0; color:#65738a; }
.basket-page .basket-quantity { display:inline-block; padding:2px 8px; margin-right:4px; background:#edf3ff; border-radius:6px; color:#365c9c; font-size:11px; }
.basket-page .checkout-item form { margin-top:14px; }
.basket-page .basket-section-description { color:#71809a; font-size:12px; margin-top:-8px; margin-bottom:22px; }
.basket-page .basket-empty { text-align:center; padding:36px 12px; }
.basket-page .basket-empty > i { display:block; color:#8da9db; font-size:42px; margin-bottom:16px; }
.basket-page .basket-empty h3 { font-size:21px; }
.basket-page .basket-empty p { font-size:13px; }
@media(max-width:991px) {
 .basket-page .basket-workspace { grid-template-columns:minmax(0,1fr) 310px; gap:18px; }
 .basket-page .basket-hero { padding:30px; }
 .basket-page .basket-summary .card-body { padding:22px; }
}
@media(max-width:767px) {
 .basket-page .basket-workspace { grid-template-columns:1fr; }
 .basket-page .basket-summary { grid-column:1; grid-row:2; position:static; }
 .basket-page .basket-workspace > .checkout-layout { gap:18px; }
 .basket-page .basket-hero { padding:26px 22px; border-radius:18px; }
 .basket-page .basket-hero-icon { width:64px; height:64px; font-size:30px; border-radius:19px; }
 .basket-page .basket-steps { gap:8px; padding:18px 0; }
 .basket-page .basket-steps li { font-size:10px; gap:6px; }
 .basket-page .basket-steps li > span { width:24px; height:24px; flex-shrink:0; }
 .basket-page .basket-policy { gap:9px 14px; margin-bottom:18px; }
}
@media(max-width:420px) {
 .basket-page .basket-hero-icon { display:none; }
 .basket-page .basket-hero h1 { font-size:29px; }
 .basket-page .basket-policy span { font-size:10px; }
 .basket-page .basket-section-heading h2 { font-size:21px; }
}

/* Keep every grid child within the available width, including long names and prices. */
.basket-page .basket-workspace > *, .basket-page .checkout-layout > *, .basket-page .card-body { min-width:0; }
.store-panel .basket-page .card { border-radius:18px; border:1px solid #dce4f1; box-shadow:0 6px 24px #183b8806; overflow:hidden; }
.basket-page .checkout-item + .checkout-item { border-top:1px solid #e7edf5; }
.basket-page .checkout-item > a, .basket-page .checkout-item > p, .basket-page .mp-help { overflow-wrap:anywhere; }
.basket-page .basket-price-lines dd { min-width:0; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.basket-page .basket-grand-total { background:#f0f5ff; padding:18px; border:1px solid #dce6f8; border-radius:12px; }
.basket-page .basket-grand-total strong { font-size:clamp(24px,3vw,30px); font-variant-numeric:tabular-nums; }
.basket-page .basket-payment-note { text-align:center; color:#536b91; font-size:12px; margin:12px 0 0; }
.basket-page .basket-delivery-link { margin-top:14px; }
.basket-page .basket-delivery { scroll-margin-top:calc(var(--ui-header-height,76px) + 20px); }
.basket-page .basket-delivery-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.basket-page .basket-delivery-form .form-group { margin:0; min-width:0; }
.basket-page .basket-delivery-form .form-group:nth-last-of-type(-n+2), .basket-page .basket-delivery-form > button { grid-column:1 / -1; }
.basket-page .basket-delivery-form label { font-size:13px; font-weight:600; margin-bottom:7px; }
.basket-page .basket-delivery-form .form-control { width:100%; min-width:0; font-size:16px; }
.basket-page .basket-delivery-form textarea { min-height:108px; resize:vertical; }
.basket-page .basket-edit { gap:8px; }
.basket-page .basket-edit [data-basket-line-total] { display:none; }
.basket-page :is(a,button,input,textarea):focus-visible { outline:3px solid #7ba4ff; outline-offset:3px; }
@media(max-width:575px) {
 .store-panel .basket-page .card-body { padding:20px 16px; }
 .basket-page .basket-delivery-form { grid-template-columns:minmax(0,1fr); }
 .basket-page .checkout-item { padding-left:0; padding-top:18px; padding-bottom:18px; }
 .basket-page .basket-item-icon { display:none; }
 .basket-page .basket-steps li { flex:1; align-items:flex-start; line-height:1.5; }
 .basket-page .basket-section-heading { flex-wrap:wrap; }
 .basket-page .basket-hero h1 { letter-spacing:-.7px; }
}
