/* Kebab Haus checkout: compact review, clear steps, local API and own delivery. */
dialog:has(.checkout-flow){width:min(720px,calc(100% - 28px));max-height:92dvh;border-radius:22px;background:#191613}
dialog:has(.checkout-flow) .modal-head{padding:22px 28px 17px;border-bottom:1px solid #4c4032;background:#191613}
dialog:has(.checkout-flow) .modal-head h2{font-size:28px;letter-spacing:-.035em}
dialog:has(.checkout-flow) .modal-body{padding:0 28px 20px}
dialog:has(.checkout-flow) .modal-sticky{padding:16px 28px 20px;background:#191613;border-top:1px solid #4c4032}
.checkout-flow{color:#f6efdf}.checkout-flow .field{margin-bottom:17px}.checkout-flow .field input,.checkout-flow .field select,.checkout-flow .field textarea{background:#25211c;border-color:#4c4032;color:#f6efdf}
.checkout-steps{display:flex;list-style:none;gap:16px;padding:23px 0;margin:0 0 15px;border-bottom:1px solid #4c4032}
.checkout-steps li{display:flex;align-items:center;gap:8px;flex:1;font-size:12px;font-weight:700;color:#c5b9a7;white-space:nowrap}
.checkout-steps li span{display:grid;place-items:center;width:25px;height:25px;border:1px solid #4c4032;border-radius:50%;font-size:11px;flex:none}
.checkout-steps li.active{color:#efc646}.checkout-steps li.active span{background:#c8192f;color:#fff7ed;border-color:#c8192f}.checkout-steps li.complete{color:#dcc487}.checkout-steps li.complete span{background:#332b1c;border-color:#806b37;color:#efc646}
.checkout-step-panel{border:0;min-width:0;padding:0;margin:0}.checkout-legend{padding:0;font-size:26px;line-height:1.2;letter-spacing:-.03em;font-weight:800;margin:2px 0 8px}
.checkout-intro{font-size:12px;color:#c5b9a7;line-height:1.6;margin-bottom:18px}.checkout-item{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:start;gap:14px;padding:20px 0;border-bottom:1px solid #4c4032}
.checkout-item>img{width:62px;height:62px;border-radius:12px;object-fit:cover}.checkout-item-info{min-width:0}.checkout-item-info h3{font-family:inherit!important;font-size:15px;letter-spacing:-.015em;line-height:1.3;margin:0 0 5px;text-transform:none!important}.checkout-item-info>strong{font-size:14px}.checkout-item-info p{font-size:11px;color:#c5b9a7;line-height:1.5;margin:7px 0 4px;overflow-wrap:anywhere}
.checkout-edit,.checkout-return,.checkout-add-more,.checkout-back{border:0;background:transparent;color:#efc646;font-size:12px;font-weight:700;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.checkout-return{margin:0 0 20px}.checkout-edit:hover,.checkout-add-more:hover,.checkout-back:hover{color:#ffdc79}.checkout-add-more{display:block;width:100%;text-align:center;padding:18px 0;margin:0;text-decoration:none;border-bottom:1px solid #4c4032;font-size:13px}
.checkout-quantity.qty-picker{border:1px solid #4c4032;background:#25211c;border-radius:28px;padding:3px;gap:1px;margin-top:4px}.checkout-quantity.qty-picker button{width:30px;height:30px;border:0;background:transparent;color:#f6efdf;border-radius:50%;font-size:19px}.checkout-quantity.qty-picker button:hover{background:#3b3024}.checkout-quantity.qty-picker output{min-width:21px;font-size:12px;font-weight:750}
.checkout-optional{border-bottom:1px solid #4c4032;padding:17px 0;margin:0 0 15px}.checkout-optional summary{font-size:12px;font-weight:700;cursor:pointer;color:#f0dec0}.checkout-optional[open] summary{margin-bottom:15px}.checkout-optional .field:last-of-type{margin-bottom:0}.checkout-optional-label{font-size:10px;color:#c5b9a7;font-weight:400}
.checkout-methods{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:18px 0 22px}.checkout-methods label{display:flex;align-items:center;gap:10px;position:relative;min-width:0;border:1px solid #4c4032;background:#25211c;padding:18px 14px;border-radius:13px;cursor:pointer}.checkout-methods label:has(input:checked){border-color:#bd172b;box-shadow:inset 0 0 0 1px #bd172b;background:#342020}.checkout-methods input{accent-color:#bd172b;width:16px;height:16px;flex:none}.checkout-methods span{min-width:0}.checkout-methods strong{display:block;font-size:13px;margin-bottom:5px}.checkout-methods small{display:block;font-size:10px;line-height:1.5;color:#c5b9a7}.checkout-methods b{margin-left:auto;color:#efc646;font-size:22px}.checkout-flow .segmented{margin-bottom:20px}.checkout-flow .segmented label:has(input:checked){color:#efc646;background:#33281e;border-color:#9c7546}.checkout-flow .segmented input{accent-color:#efc646}.checkout-flow .checkout-section-title{font-size:17px;margin:26px 0 13px}.checkout-flow .two-col{gap:15px}.checkout-flow .checkout-note{color:#c5b9a7;font-size:11px}.checkout-flow .checkout-note a{color:#efc646;text-decoration:underline}
.checkout-review-items{border-top:1px solid #4c4032;margin:17px 0 22px}.checkout-review-items>div{padding:13px 0;border-bottom:1px solid #4c4032}.checkout-review-items strong{display:block;font-size:13px;line-height:1.5}.checkout-review-items span{display:block;font-size:11px;line-height:1.55;color:#c5b9a7;margin-top:4px}.checkout-review-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.checkout-review-facts>div,.checkout-review-note{min-width:0;overflow-wrap:anywhere}.checkout-review-facts span,.checkout-review-note>span{display:block;font-size:10px;color:#c5b9a7;letter-spacing:.06em;text-transform:uppercase;font-weight:750;margin-bottom:6px}.checkout-review-facts strong{font-size:13px;line-height:1.5}.checkout-review-facts p,.checkout-review-note p{font-size:12px;line-height:1.6;color:#c5b9a7;margin:3px 0 0}.checkout-review-note{margin:22px 0}.checkout-confirm-note{font-size:11px;line-height:1.7;background:#29231b;border-radius:10px;padding:12px 15px;margin:23px 0 17px;color:#e2ceb0}.checkout-consent{margin:0 0 18px;align-items:flex-start;line-height:1.65;font-size:11px}.checkout-consent input{flex:none;margin-top:3px}.checkout-consent a{text-decoration:underline}
.checkout-quote{border-top:1px solid #4c4032;margin:10px 0 15px;padding-top:13px}.checkout-quote .quote-line{font-size:12px;line-height:1.5}.checkout-quote .quote-total{font-size:22px;margin-bottom:0;padding-top:15px;border-color:#4c4032}.checkout-quote .quote-total strong{font-size:26px}.checkout-discount{color:#efc646}.checkout-local{font-size:10px;line-height:1.65;color:#c5b9a7;margin:16px 0 0}.checkout-footer{display:flex;align-items:center;gap:18px;width:100%}.checkout-back{white-space:nowrap;flex:none;color:#d4c4af;text-decoration:none;padding:12px 0}.checkout-primary.btn{flex:1;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:56px;text-align:left;padding:15px 18px;font-size:13px;line-height:1.4;border-radius:13px;letter-spacing:0}.checkout-primary strong{padding-left:14px;border-left:1px solid #ffffff55;white-space:nowrap;font-size:14px}.checkout-empty>span{display:block;font-size:45px;color:#efc646;line-height:1;margin:0 0 25px}.checkout-empty b{font-size:24px}.checkout-empty p{font-size:13px}
@media(max-width:540px){dialog:has(.checkout-flow){width:calc(100% - 12px);max-height:95dvh;border-radius:18px}dialog:has(.checkout-flow) .modal-head{padding:18px 18px 14px}dialog:has(.checkout-flow) .modal-head h2{font-size:25px}dialog:has(.checkout-flow) .modal-body{padding:0 18px 17px}dialog:has(.checkout-flow) .modal-sticky{padding:12px 14px max(15px,env(safe-area-inset-bottom))}.checkout-steps{gap:10px;padding:19px 0;margin-bottom:20px}.checkout-steps li{gap:6px;font-size:11px}.checkout-steps li span{width:22px;height:22px;font-size:10px}.checkout-legend{font-size:24px}.checkout-intro{font-size:11px}.checkout-item{grid-template-columns:50px minmax(0,1fr) auto;gap:10px;padding:18px 0}.checkout-item>img{width:50px;height:50px;border-radius:9px}.checkout-item-info h3{font-size:13px}.checkout-item-info>strong{font-size:12px}.checkout-item-info p{font-size:10px;margin-top:6px}.checkout-quantity.qty-picker{gap:0;padding:2px}.checkout-quantity.qty-picker button{width:25px;height:28px;font-size:18px}.checkout-quantity.qty-picker output{min-width:19px;font-size:11px}.checkout-edit{font-size:11px}.checkout-methods{gap:9px}.checkout-methods label{padding:13px 10px;gap:8px;align-items:flex-start}.checkout-methods input{margin-top:2px;width:14px;height:14px}.checkout-methods strong{font-size:12px}.checkout-methods small{font-size:9px}.checkout-methods b{display:none}.checkout-flow .two-col{grid-template-columns:1fr;gap:0}.checkout-review-facts{gap:17px 15px}.checkout-review-facts strong{font-size:12px}.checkout-review-facts p{font-size:11px}.checkout-footer{gap:12px}.checkout-back{font-size:11px}.checkout-primary.btn{font-size:12px;padding:14px 13px;min-height:54px;gap:10px}.checkout-primary strong{font-size:12px;padding-left:10px}.checkout-local{font-size:9px}.checkout-time label{font-size:11px}}

/* Dark surfaces stay continuous with the rest of the charcoal site. */
dialog:has(.checkout-flow),dialog:has(.checkout-empty){color:#f6efdf;background:#191613;border-color:#4c4032;color-scheme:dark}
dialog:has(.checkout-flow) .modal-body,dialog:has(.checkout-empty) .modal-head,dialog:has(.checkout-empty) .modal-body{color:#f6efdf;background:#191613}
dialog:has(.checkout-flow) .modal-head h2,.checkout-flow h3,.checkout-legend,.checkout-item-info>strong,.checkout-review-items strong,.checkout-review-facts strong,.checkout-quote .quote-line strong{color:#f6efdf}
.checkout-flow .field,.checkout-flow .check,.checkout-flow .segmented label{color:#f6efdf}
.checkout-flow .field input::placeholder,.checkout-flow .field textarea::placeholder{color:#a99b87;opacity:1}
.checkout-flow .field input:focus,.checkout-flow .field select:focus,.checkout-flow .field textarea:focus{border-color:#b5904d;outline-color:#efc646}
.checkout-flow .field small{color:#c5b9a7}
.checkout-flow .segmented{background:#25211c;border-color:#4c4032}
.checkout-flow .segmented label{background:#25211c;border-color:#4c4032}
.checkout-flow .segmented label:has(input:checked){background:#33281e;color:#efc646;border-color:#9c7546}
.checkout-flow .notice{background:#29231b;color:#ecd3a4;border-color:#6b5336}
.checkout-flow .notice.warn{background:#342a1a;color:#f0d58d;border-color:#8c6b37}
.checkout-flow .form-error{color:#ffaaa2}
.checkout-flow .checkout-confirm-note{border:1px solid #4c4032}
.checkout-flow .checkout-consent a{color:#efc646}
.checkout-quantity.qty-picker output{color:#f6efdf}
.checkout-primary.btn.orange{background:#c8192f;color:#fff7ed;border-color:#df3547}
.checkout-primary.btn.orange:hover{background:#ac1327;color:#fff7ed}
.checkout-primary.btn.orange:disabled{background:#682631;border-color:#773442;color:#d4bbb9;opacity:1}
.checkout-primary strong{color:inherit}
.checkout-quote .quote-total strong{color:#efc646}
