.tom-order-location{box-sizing:border-box;max-width:100%;padding:.75rem;border:1px solid #e4e7ec;border-radius:.6rem;background:#fff;color:#222}.tom-order-location *{box-sizing:border-box}.tom-order-location h2{font-size:1.2rem;margin:0 0 .5rem}.tom-order-location p{font-size:.875rem;line-height:1.4;margin:.5rem 0}.tom-order-location label{display:block;margin-bottom:.5rem}.tom-order-location label span{font-size:.85em}.tom-location-input,.tom-location-routes{display:flex;flex-wrap:wrap;gap:.6rem}.tom-location-input input{flex:0 1 15rem;min-width:0;width:100%;padding:.5rem .65rem;font:inherit;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#101828;min-height:38px}/* Reuse the storefront service-banner action primitive, including on pages
   where the full menu stylesheet is not enqueued. */
.tom-order-availability__action{box-sizing:border-box;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 15px;border:1px solid currentColor;border-radius:9px;color:inherit;font-size:13px;font-weight:700;text-decoration:none}
.tom-order-location .tom-order-availability__action{width:auto;max-width:100%;margin:0;appearance:none;background:#fff;color:#101828;border-color:#98a2b3;box-shadow:none;font-family:inherit;line-height:1.25;white-space:normal;cursor:pointer}
.tom-order-location .tom-order-availability__action:hover:not(:disabled){background:#f8fafb;border-color:#101828}
.tom-order-location .tom-order-availability__action[aria-pressed=true]:not(:disabled){background:#101828;color:#fff;border-color:#101828}
.tom-order-location .tom-order-availability__action:disabled{background:#f8fafb;color:#667085;border-color:#d0d5dd;cursor:not-allowed;opacity:1}
@media(pointer:coarse){.tom-order-location .tom-order-availability__action,.tom-location-input input{min-height:44px}}
.tom-order-location :focus-visible{outline:3px solid #1264a3;outline-offset:3px}.tom-order-context-control{box-sizing:border-box;width:100%;max-width:100%;margin:0 0 1rem;background:#fff;color:#222;padding:.35rem .75rem;border:1px solid #ddd;border-radius:.5rem}.tom-order-context-control[hidden],#tom-context-selector[hidden]{display:none!important}.tom-order-context-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.25rem 1rem;min-height:44px;font-size:1rem}.tom-order-context-row [data-location-summary]{min-width:0;overflow-wrap:anywhere}.tom-order-context-row button{font:inherit;min-height:44px;padding:.4rem .3rem;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer}.tom-order-context-row button:focus-visible{outline:3px solid #1264a3;outline-offset:2px}#tom-context-selector{margin:.5rem 0}.tom-order-context-control:has(+.tom-order-availability){grid-column:1 / -1;flex-basis:100%}
.tom-order-location.is-compact h2{font-size:1rem}

.tom-clear-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.tom-clear-actions button{min-height:44px;padding:.65rem 1rem;font:inherit;border-radius:.4rem;border:1px solid #999;cursor:pointer}.tom-clear-actions [data-tom-clear-confirmed]{color:#a12622;background:#fff;border-color:#a12622}.tom-clear-actions [data-tom-clear-cancel]{background:#111827;color:#fff;border-color:#111827}#tom-clear-basket-dialog h2{font-size:1.4rem;margin:0}#tom-clear-basket-dialog :focus-visible{outline:3px solid #1264a3;outline-offset:3px}#tom-clear-basket-dialog .tom-driver-modal-card{max-height:calc(100dvh - 36px);overflow:auto;color:#222}

/* Compact context editor; preserve shared controls and touch target sizes. */
.tom-order-location{padding:.6rem .75rem;min-height:0}
.tom-order-location h2{margin:0 0 .25rem;line-height:1.3}
.tom-order-location p{margin:.3rem 0}
.tom-order-location label{margin-bottom:.25rem;font-size:.875rem;line-height:1.4}
.tom-location-input{gap:.4rem;align-items:center}
.tom-location-input input{flex:1 1 6rem;width:auto;max-width:15rem;font-size:.875rem;line-height:1.4}
.tom-location-routes{gap:.4rem}
#tom-context-selector{margin:.25rem 0}
.tom-order-location .tom-postcode-geography{margin:.3rem 0 0;color:#667085;font-size:.8125rem}

/* Centre only the expanded customer editor, not the context summary row. */
.tom-order-location{text-align:center}
.tom-order-location .tom-location-input,.tom-order-location .tom-location-routes{justify-content:center}
.tom-order-location .tom-location-input input{flex:0 1 15rem}
