body[data-experience="bestellen"] { padding-bottom: 85px; }
.basket-bar { position: fixed; z-index: 5; bottom: 0; left: 0; right: 0; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 14px max(25px, calc((100vw - 1000px) / 2)) max(14px, env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--line); box-shadow: 0 -6px 28px #182a3c12; }
.basket-bar > div { display: flex; align-items: center; gap: 20px; }
.basket-bar span { color: var(--muted); font-size: 12px; }
.basket-bar strong { font-size: 18px; font-variant-numeric: tabular-nums; }
.basket-bar button, .checkout-submit { border: 0; border-radius: 3px; background: var(--navy); color: white; font: 600 13px/1.5 "Segoe UI", Arial, sans-serif; padding: 14px 24px; cursor: pointer; }
.basket-bar button span { color: #fff; margin-left: 18px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.dialog-open { overflow: hidden; }
.basket-dialog { width: min(590px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 0 28px 28px; border: 1px solid var(--line); border-radius: 6px; color: var(--navy); background: #fff; box-shadow: 0 20px 80px #0004; }
.basket-dialog::backdrop { background: #0a1b2bc4; }
.basket-header { position: sticky; top: 0; z-index: 1; background: #fff; display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 24px 0 17px; border-bottom: 1px solid var(--line); }
.basket-header h2 { font: 400 30px/1.2 Georgia, serif; margin: 0; }
.basket-header button { border: 0; background: #f4f1eb; color: var(--navy); width: 36px; height: 36px; border-radius: 50%; font-size: 25px; cursor: pointer; }
.basket-line { display: grid; grid-template-columns: minmax(0, 1fr) auto 78px; gap: 14px; align-items: center; border-bottom: 1px solid #eee9e0; padding: 17px 0; font-size: 13px; }
.basket-line > div:first-child span { display: block; color: var(--muted); font-size: 11px; margin-top: 4px; }
.basket-line > strong { text-align: right; white-space: nowrap; }
.basket-quantity { display: flex; align-items: center; gap: 10px; }
.basket-quantity button { width: 30px; height: 32px; border: 1px solid var(--line); background: #fff; font-size: 18px; color: var(--navy); cursor: pointer; }
.empty-basket { color: var(--muted); padding: 22px 0; font-size: 14px; }
.fulfillment { border: 1px solid var(--line); padding: 14px; margin: 24px 0; display: flex; gap: 28px; }
.fulfillment legend { font-size: 12px; color: var(--muted); padding: 0 7px; }
.fulfillment label { display: flex; align-items: center; gap: 7px; font-size: 14px; cursor: pointer; }
.fulfillment input { accent-color: var(--navy); }
.checkout-totals > div { display: flex; justify-content: space-between; gap: 15px; font-size: 13px; margin: 9px 0; }
.checkout-totals .grand-total { margin: 15px 0 24px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 18px; }
.checkout-fields { display: grid; gap: 15px; }
.checkout-fields label { display: block; font-size: 13px; }
.checkout-fields small { color: var(--muted); }
.checkout-fields input, .checkout-fields textarea { display: block; width: 100%; padding: 12px; border: 1px solid #c6ced3; border-radius: 3px; background: #fff; color: var(--navy); margin-top: 5px; font: 16px/1.5 "Segoe UI", Arial, sans-serif; }
.checkout-fields textarea { resize: vertical; }
.checkout-demo-note { font-size: 11px; line-height: 1.7; color: var(--muted); margin: 19px 0; }
.checkout-submit { width: 100%; }
.checkout-submit:disabled { opacity: .45; cursor: not-allowed; }
.order-confirmation { padding-top: 28px; }
.order-confirmation h3 { font: 400 30px/1.25 Georgia, serif; margin: 15px 0; }
.order-confirmation p { font-size: 14px; }
.order-confirmation ul { list-style: none; padding: 0; margin: 25px 0; }
.order-confirmation li { display: flex; justify-content: space-between; gap: 15px; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.order-confirmation li strong { white-space: nowrap; }
.confirmation-total { font-weight: 700; text-align: right; }
@media (max-width: 650px) {
 .experience-switch { padding: 14px 18px; }
 .experience-options { display: flex; }
 .experience-options a { flex: 1; padding: 11px 8px; font-size: 12px; }
 .dish-actions { gap: 10px; }
 .dish-add { width: 34px; height: 34px; }
 .basket-bar { padding: 12px 18px max(12px, env(safe-area-inset-bottom)); gap: 12px; }
 .basket-bar > div { flex-direction: column; align-items: flex-start; gap: 1px; }
 .basket-bar button { padding: 13px 15px; font-size: 12px; }
 .basket-bar button span { margin-left: 8px; }
 .basket-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); padding: 0 18px 22px; }
 .basket-header { padding-top: 18px; }
 .basket-header h2 { font-size: 27px; }
 .basket-line { grid-template-columns: minmax(0,1fr) auto; gap: 10px; }
 .basket-line > strong { grid-column: 1 / -1; font-size: 12px; }
}
