/* v1.39: checkout typography and touch controls, with the existing two-column layout. */
.checkout .order-items{padding:0 clamp(10px,1.05cqw,19px);scrollbar-width:thin;scrollbar-color:#c9a65c #0d141e;touch-action:pan-y;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.checkout .order-items::-webkit-scrollbar{width:8px}
.checkout .order-items::-webkit-scrollbar-track{background:#0d141e}
.checkout .order-items::-webkit-scrollbar-thumb{background:#c9a65c;border-radius:4px}
.checkout .order-row{padding:clamp(10px,1.1cqw,20px) 0;gap:clamp(8px,1cqw,18px)}
.checkout .order-name{min-width:0;flex:1;font-size:clamp(18px,1.55cqw,28px);line-height:1.2;overflow-wrap:anywhere}
.checkout .order-name small{font-size:clamp(14px,1.15cqw,21px);line-height:1.25;color:#dde7ef;margin-top:8px}
.checkout .quantity{flex:none;gap:clamp(7px,.8cqw,14px);font-size:clamp(20px,1.7cqw,30px);font-weight:700;font-variant-numeric:tabular-nums}
.checkout .quantity span{min-width:1.3em;text-align:center}
.checkout .quantity button{width:clamp(44px,3.6cqw,64px);height:clamp(44px,3.6cqw,64px);border:1px solid #af9457;border-radius:10px;background:linear-gradient(#25374a,#182738);color:#ffe2a0;font-size:clamp(28px,2.2cqw,40px);font-weight:700;padding:0;touch-action:manipulation}
.checkout .quantity button:active{background:#514024;border-color:#ffe2a0}
.checkout .order-summary{padding:clamp(8px,1.15cqw,21px);gap:clamp(5px,.8cqw,14px);overflow:hidden}
.checkout .order-summary>*{flex-shrink:0}
.checkout .order-summary h3{font-size:clamp(17px,1.45cqw,26px);line-height:1.1}
.checkout .order-summary p{font-size:clamp(12px,1.05cqw,19px);line-height:1.2;color:#e0e8f0}
.checkout .order-total{padding-top:clamp(5px,.8cqw,14px);font-size:clamp(19px,1.6cqw,29px);gap:5px;line-height:1.1}
.checkout .order-total b{font-size:clamp(29px,2.65cqw,48px);line-height:1.1;letter-spacing:-.025em;white-space:nowrap}
.checkout .order-summary .order-button{font-size:clamp(16px,1.35cqw,24px);min-height:clamp(44px,3.9cqw,70px);padding:8px 5px;white-space:normal;line-height:1.15;touch-action:manipulation}
.checkout .menu-footer{min-height:clamp(44px,3.4cqw,60px)}
.checkout .menu-footer .menu-back{font-size:clamp(15px,1.2cqw,22px);min-height:clamp(44px,3.4cqw,60px);padding:7px clamp(10px,1cqw,18px);touch-action:manipulation}
@container(max-width:1000px){.checkout .order-summary{gap:4px}.checkout .order-total{font-size:17px}.checkout .order-total b{font-size:27px}.checkout .order-summary .order-button{font-size:14px;padding:5px}.checkout .order-name{font-size:17px}.checkout .order-name small{font-size:13px}.checkout .quantity{gap:5px;font-size:18px}.checkout .quantity span{min-width:1em}}

@container(max-width:950px){.checkout .order-summary h3{display:none}}
/* Payment selection (Bistro /api/payments), same palette as the menu tabs and order summary. */
.checkout .pay-panel{display:flex;flex-direction:column;padding:clamp(10px,1.05cqw,19px)}
.pay-panel>.empty-order{flex:1}
.pay-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:clamp(8px,1cqw,16px);align-content:start}
.pay-method{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:clamp(8px,.9cqw,14px);row-gap:4px;align-items:center;text-align:left;min-height:clamp(72px,6cqw,108px);padding:clamp(10px,1.1cqw,20px);border:1px solid #39404a;border-radius:12px;background:#111821;color:#e3e8ee;touch-action:manipulation;transition:border-color .15s,background-color .15s}
.pay-method strong{font-size:clamp(17px,1.45cqw,26px);color:#fff}
.pay-method small{grid-column:2;font-size:clamp(13px,1cqw,18px);color:#c0ccd7}
.pay-check{grid-row:span 2;width:clamp(22px,1.7cqw,30px);height:clamp(22px,1.7cqw,30px);border:2px solid #7d8794;border-radius:50%}
.pay-method.selected{border-color:#dfb75f;background:#30291b}
.pay-method.selected strong{color:#ffe2a0}
.pay-method.selected .pay-check{border-color:#ffe2a0;background:radial-gradient(circle,#ffe2a0 45%,transparent 50%)}
@media(prefers-reduced-motion:reduce){.pay-method{transition:none}}
