/* Customer checkout shares the menu's paper, ink and restrained gold. */
.customer-order dialog.customer-checkout-modal{width:min(840px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border-radius:18px;color:#27362c;background:#faf8f2;box-shadow:0 28px 100px #10191055}
.customer-order .customer-checkout-modal>header{padding:22px 28px;background:#faf8f2;border-bottom:1px solid #e3e2d7;z-index:4}
.customer-order .customer-checkout-modal>header h2{font-family:'Fuzja Mincho',Georgia,serif;font-size:27px;font-weight:500;letter-spacing:-.5px}
.customer-order .customer-checkout-modal .close{width:40px;height:40px;border:1px solid #ddded4;border-radius:50%;background:transparent;color:#455046}
.customer-order .customer-checkout-modal .modal-body{padding:24px 28px 0}
.customer-order .customer-checkout-modal .checkout-form-premium{gap:24px}
.customer-order .customer-checkout-modal .checkout-sections{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 28px;align-items:start}
.customer-order .customer-checkout-modal .checkout-section{min-width:0}
.customer-order .customer-checkout-modal .checkout-section h3{display:flex;gap:11px;align-items:center;margin:0 0 17px;font-size:17px;font-weight:650;letter-spacing:-.2px;color:#27392c}
.customer-order .customer-checkout-modal .checkout-section h3>span{font-size:11px;font-weight:600;letter-spacing:1px;color:#857549}
.customer-order .customer-checkout-modal label{font-size:12px;line-height:1.5;font-weight:550;color:#556050}
.customer-order .customer-checkout-modal input:not([type=radio]),
.customer-order .customer-checkout-modal select,
.customer-order .customer-checkout-modal textarea{min-height:47px;padding:12px 13px;border:1px solid #d9ded2;border-radius:9px;background:#fff;color:#28392d;font-size:15px;line-height:1.4}
.customer-order .customer-checkout-modal input:not([type=radio]):focus,
.customer-order .customer-checkout-modal select:focus,
.customer-order .customer-checkout-modal textarea:focus{border-color:#637d66;outline:2px solid #d9e7d9;outline-offset:1px}
.customer-order .customer-checkout-modal #pickup-time-fields,
.customer-order .customer-checkout-modal #delivery-time-fields{margin-top:13px}
.customer-order .customer-checkout-modal #estimate{font-size:12px;margin:9px 0 0;line-height:1.55;color:#727869}
.customer-order .customer-checkout-modal .checkout-time-notice{grid-column:1/-1;background:#f1ead7;border:1px solid #e4d7b4;border-left:3px solid #b3934f;border-radius:9px;padding:13px 17px;color:#5e502f}
.customer-order .customer-checkout-modal .checkout-time-notice>strong{font-size:14px;font-weight:650}
.customer-order .customer-checkout-modal .checkout-time-notice p{font-size:12px;line-height:1.55;margin:4px 0 0;color:#72613d}
.customer-order .customer-checkout-modal .form-row{gap:12px;grid-template-columns:1fr 1fr}
.customer-order .customer-checkout-modal #delivery-fields{margin-top:15px;gap:13px}
.customer-order .customer-checkout-modal #delivery-fields>p{margin:0}
.customer-order .customer-checkout-modal .delivery-quote-panel{padding:13px;border:1px solid #d8e1d1;border-radius:9px;background:#eef3e9}
.customer-order .customer-checkout-modal .delivery-quote-panel p{margin-bottom:7px}
.customer-order .customer-checkout-modal .delivery-quote-panel p:last-child{margin-bottom:0}
.customer-order .customer-checkout-modal .delivery-quote-panel a{text-decoration:underline;text-underline-offset:2px}
.customer-order .customer-checkout-modal .checkout-notes{margin-top:15px;display:block}
.customer-order .customer-checkout-modal .checkout-notes small{font-size:11px;color:#85897f;font-weight:400;margin-left:5px}
.customer-order .customer-checkout-modal .checkout-notes textarea{display:block;margin-top:7px;min-height:76px}
.customer-order .customer-checkout-modal .checkout-payment{padding:0;border:0;background:none;border-radius:0}
.customer-order .customer-checkout-modal .checkout-payment legend{padding:0;margin:0 0 8px;font-size:12px;font-weight:550;color:#556050}
.customer-order .customer-checkout-modal .checkout-payment p{line-height:1.55;font-size:12px;margin:0 0 14px;color:#727869}
.customer-order .customer-checkout-modal .payment-options{gap:10px}
.customer-order .customer-checkout-modal .payment-option{min-height:56px;font-size:14px;padding:13px;gap:9px;border:1px solid #d9ded2;border-radius:10px;background:#fff;color:#3c503e}
.customer-order .customer-checkout-modal .payment-option:has(input:checked){background:#e7efe2;border-color:#6c876c;color:#284731;box-shadow:0 0 0 1px #6c876c}
.customer-order .customer-checkout-modal .payment-summary{font-size:12px;line-height:1.5;color:#65745c;font-weight:500;margin:13px 0 0}
.customer-order .customer-checkout-modal .checkout-submit-bar{position:sticky;bottom:0;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,auto);align-items:center;gap:8px 24px;margin:0 -28px;padding:18px 28px 14px;border-top:1px solid #dddfd3;background:#faf8f2;box-shadow:0 -8px 20px #faf8f2d9}
.customer-order .customer-checkout-modal .checkout-total{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:0;font-size:13px;font-weight:500;color:#6f7569}
.customer-order .customer-checkout-modal #checkout-total{font-size:26px;line-height:1.2;font-weight:650;letter-spacing:-.6px;color:#263d2c}
.customer-order .customer-checkout-modal .checkout-submit-bar>.primary{min-height:50px;padding:13px 20px;border-radius:9px;background:#283f32;border-color:#283f32;color:#fff;font-size:14px;font-weight:600}
.customer-order .customer-checkout-modal .checkout-submit-bar>.primary:hover:not(:disabled){background:#35583e;border-color:#35583e}
.customer-order .customer-checkout-modal .checkout-after-submit{grid-column:1/-1;margin:0;text-align:right;color:#818679;font-size:11px}
.customer-order .customer-checkout-modal #checkout-error{grid-column:1/-1;grid-row:1;margin:0 0 5px}
@media(max-width:650px){
 .customer-order dialog.customer-checkout-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:14px}
 .customer-order .customer-checkout-modal>header{padding:16px 18px}
 .customer-order .customer-checkout-modal>header h2{font-size:24px}
 .customer-order .customer-checkout-modal .modal-body{padding:20px 18px 0}
 .customer-order .customer-checkout-modal .checkout-sections{grid-template-columns:minmax(0,1fr);gap:21px}
 .customer-order .customer-checkout-modal .checkout-section h3{margin-bottom:11px;font-size:16px}
 .customer-order .customer-checkout-modal input:not([type=radio]),.customer-order .customer-checkout-modal select,.customer-order .customer-checkout-modal textarea{font-size:16px}
 .customer-order .customer-checkout-modal .checkout-form-premium{gap:22px}
 .customer-order .customer-checkout-modal .checkout-submit-bar{grid-template-columns:minmax(0,1fr);gap:9px;margin:0 -18px;padding:13px 18px max(13px,env(safe-area-inset-bottom))}
 .customer-order .customer-checkout-modal .checkout-total{flex-direction:row;align-items:center;justify-content:space-between;font-size:13px}
 .customer-order .customer-checkout-modal #checkout-total{font-size:24px}
 .customer-order .customer-checkout-modal .checkout-submit-bar>.primary{width:100%;font-size:14px;min-height:49px}
 .customer-order .customer-checkout-modal .checkout-after-submit{text-align:center;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.customer-order .customer-checkout-modal button{transition:none}}
