.menu-page .top-bar.ordering-topbar { padding: 8px 0; background: #fff; box-shadow: none; }
.menu-page .ordering-topbar > .ordering-toolbar {
    display: grid; grid-template-columns: minmax(32px,1fr) auto minmax(0,194px);
    align-items: center; min-height: 40px; gap: 14px; flex-wrap: nowrap;
}
.ordering-menu-button { width: 33px; height: 34px; border: 0; border-radius: 7px; background: var(--primary); color: #fff; display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 5px; cursor: pointer; }
.ordering-menu-button span { display: block; width: 100%; height: 2px; background: currentColor; border-radius: 2px; }
.menu-page .ordering-topbar .view-toggle { display: flex; gap: 0; border-radius: 999px; padding: 3px; background: var(--neutral-100); }
.menu-page .ordering-topbar .view-toggle button { width: 29px; height: 29px; padding: 0; border-radius: 50%; display: grid; place-items: center; }
.menu-page .ordering-topbar .delivery-toggle { width: 100%; padding: 3px; gap: 0; background: #dedede; border-radius: 999px; }
.menu-page .ordering-topbar .delivery-toggle button { flex: 1; min-width: 0; padding: 4px 8px; border-radius: 999px; background: transparent; border: 0; color: #626262; box-shadow: none; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; line-height: 1.1; }
.menu-page .ordering-topbar .delivery-toggle button > span { font-size: 12px; font-weight: 700; }
.menu-page .ordering-topbar .delivery-toggle button small { font-size: 9px; font-weight: 500; line-height: 1.2; white-space: normal; overflow-wrap: anywhere; }
.menu-page .ordering-topbar .delivery-toggle button.active { color: #fff; background: var(--primary); }
.menu-page .category-wrapper { top: var(--ordering-header-height,59px); }
.ordering-menu-drawer { position: fixed; inset: 0 auto 0 0; margin: 0; width: min(360px,calc(100vw - 24px)); max-width: none; height: 100dvh; max-height: 100dvh; padding: 22px; border: 0; background: #fffefa; color: var(--neutral-900); overflow-y: auto; box-shadow: 12px 0 40px #0002; }
.ordering-menu-drawer::backdrop { background: #0006; }
.ordering-drawer-header { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 22px; }
.ordering-drawer-header > button { width: 34px; height: 34px; border: 1px solid var(--neutral-200); border-radius: 50%; font-size: 26px; line-height: 1; background: #fff; color: var(--neutral-600); cursor: pointer; }
.menu-page #closeAddonBtn,.menu-page #closeCartModalBtn,.menu-page #closeOrderingMenu {
    display: grid; place-items: center; flex-shrink: 0; width: 34px; height: 34px;
    border: 1px solid var(--primary); border-radius: 7px; background: var(--primary);
    color: #fff; box-shadow: none; cursor: pointer;
}
.menu-page #closeAddonBtn:hover,.menu-page #closeCartModalBtn:hover,.menu-page #closeOrderingMenu:hover { background: var(--primary-dark); border-color: var(--primary-dark); color: #fff; }
.menu-page #closeAddonBtn:focus-visible,.menu-page #closeCartModalBtn:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.ordering-menu-drawer h2 { font: 700 25px/1.3 Georgia,serif; margin-bottom: 18px; }
.ordering-date { padding: 15px; border: 1px solid var(--neutral-200); border-radius: 10px; margin-bottom: 16px; }
.ordering-date label { display: block; font-size: 12px; font-weight: 700; margin-bottom: 6px; }
.ordering-date input { display: block; width: 100%; min-width: 0; padding: 9px; font: inherit; border: 1px solid var(--neutral-200); border-radius: 6px; background: #fff; color: inherit; }
.ordering-date p { margin-top: 7px; font-size: 11px; color: var(--neutral-500); }
.menu-page .ordering-menu-drawer .search-wrap { width: 100%; max-width: none; border-radius: 8px; margin-bottom: 14px; }
.ordering-menu-drawer nav { display: grid; }
.ordering-menu-drawer nav a { display: flex; justify-content: space-between; gap: 12px; padding: 13px 1px; border-bottom: 1px solid var(--neutral-200); color: inherit; text-decoration: none; font-size: 14px; }
.ordering-menu-drawer nav a:hover,.ordering-menu-drawer nav a[aria-current] { color: var(--primary); }
.ordering-menu-drawer a:focus-visible,.ordering-menu-drawer button:focus-visible,.ordering-topbar button:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
@media (max-width:700px) {
    .menu-page .cart-overlay > .checkout-btn { gap: 10px; }
    .menu-page .cart-overlay > .checkout-btn .btn-left { gap: 8px; flex-wrap: nowrap; }
    .menu-page .cart-overlay > .checkout-btn .delivery-pill { display: none; }
    .menu-page .cart-overlay > .checkout-btn .btn-right { white-space: nowrap; font-size: 12px; }
}
@media (max-width:360px) {
    .menu-page .ordering-topbar > .ordering-toolbar { grid-template-columns: 33px 60px minmax(0,1fr); gap: 8px; }
    .menu-page .ordering-topbar .view-toggle button { width: 27px; }
    .menu-page .ordering-topbar .delivery-toggle button { padding: 5px 3px; }
}
