/* Shared customer shell. Explicit saved theme overrides legacy page styles. */
html{--customer-bg:#fff;--customer-panel:#f7f7f7;--customer-ink:#111;--customer-muted:#666;--customer-line:#e7e7e7;color-scheme:light}
html[data-theme=dark]{--customer-bg:#080808;--customer-panel:#151515;--customer-ink:#f7f7f7;--customer-muted:#aaa;--customer-line:#303030;color-scheme:dark}
html body[class*=page-]{--account-ink:var(--customer-ink)!important;--account-copy:var(--customer-muted)!important;--account-muted:var(--customer-muted)!important;--account-line:var(--customer-line)!important;--account-surface:var(--customer-bg)!important;--account-canvas:var(--customer-panel)!important;background:var(--customer-bg)!important;color:var(--customer-ink)!important;font-family:Figtree,Arial,sans-serif}
html[data-theme=light] .page-account{--account-brand-text:#c44e00!important;--account-brand-soft:#fff0e6!important;color-scheme:light!important}
html[data-theme=dark] .page-account{--account-brand-text:#ff8a33!important;--account-brand-soft:#2b1606!important;color-scheme:dark!important}
body[class*=page-] .reference-consumer-header{position:sticky;top:0;z-index:100;height:auto;min-height:90px;display:flex;align-items:center;gap:22px;padding:18px max(24px,calc((100vw - 1400px)/2));background:var(--customer-bg)!important;color:var(--customer-ink)!important;border-bottom:1px solid var(--customer-line)!important}
body[class*=page-] .consumer-brand{flex:none;border-color:var(--customer-line)}
body[class*=page-] .brand-logo-dark{display:block!important;width:122px;height:auto;filter:none!important}
body[class*=page-] .brand-logo-light{display:none!important}
html[data-theme=dark] body[class*=page-] .brand-logo-dark{display:none!important}
html[data-theme=dark] body[class*=page-] .brand-logo-light{display:block!important;width:122px;height:auto}
body[class*=page-] .consumer-location{min-width:0;max-width:240px;color:var(--customer-ink)!important}
body[class*=page-] .consumer-location small{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--customer-muted)}
body[class*=page-] .header-pin,body[class*=page-] .header-search{background:var(--customer-panel)!important;border-color:var(--customer-line)!important;color:var(--customer-ink)!important}
body[class*=page-] .header-search{display:flex!important;flex:1;min-width:160px;max-width:450px;height:48px;border-radius:14px}
body[class*=page-] .header-search input{color:var(--customer-ink)!important}
body[class*=page-] .consumer-actions{margin-left:auto;display:flex;align-items:center;gap:22px;flex:none}
body[class*=page-] .header-icon-link,body[class*=page-] .cart-link,body[class*=page-] .consumer-account-menu>summary{color:var(--customer-ink)!important;background:transparent!important}
.header-language{display:none!important}
body[class*=page-] .cart-link{position:relative;display:flex;align-items:center;gap:8px;padding:8px 0!important;border:0!important}
body[class*=page-] .cart-link>span{position:relative;display:grid;place-items:center;width:28px;height:30px}
body[class*=page-] .cart-link>b{position:static!important;width:auto!important;height:auto!important;background:none!important;color:inherit!important}
body[class*=page-] .cart-link::before,body[class*=page-] .cart-link::after{content:none!important}
body[class*=page-] .cart-link>em{position:absolute;top:0;left:17px;right:auto;min-width:18px;height:18px;padding:0 4px;border-radius:20px;background:#ff6b00;color:#111;display:grid;place-items:center;font:800 11px Figtree;font-style:normal}
body[class*=page-] .consumer-account-popover{background:var(--customer-bg)!important;color:var(--customer-ink)!important;border-color:var(--customer-line)!important}
body[class*=page-] .consumer-account-popover>a,body[class*=page-] .consumer-account-popover>button{color:var(--customer-ink)!important}
body[class*=page-] .consumer-account-popover>a:hover,body[class*=page-] .consumer-account-popover>button:hover{background:var(--customer-panel)!important}
body[class*=page-] .consumer-footer{background:var(--customer-bg)!important;color:var(--customer-ink)!important;border-color:var(--customer-line)!important;max-width:1400px;margin:auto}
body[class*=page-] .consumer-footer .consumer-brand img{filter:invert(1)}
html[data-theme=dark] body[class*=page-] .consumer-footer .consumer-brand img{filter:none}
body[class*=page-] .footer-links a,body[class*=page-] .footer-brand p{color:var(--customer-muted)!important}
body[class*=page-] .footer-bottom{border-color:var(--customer-line)!important;color:var(--customer-muted)}
/* Inner pages retain their working forms and use the same surfaces/type scale. */
body[class*=page-] :is(.cart-main,.cart-summary-card,.checkout-card,.checkout-panel,.checkout-summary,.account-section,.account-overview,.support-conversation-card,.chat-thread,.chat-input,.confirmation-full-address){background:var(--customer-panel)!important;color:var(--customer-ink)!important;border:1px solid var(--customer-line)!important;box-shadow:none}
body[class*=page-] :is(.cart-page-heading h1,.cart-item-copy strong,.cart-line-total,.cart-unit-price,.cart-breadcrumb a,.cart-summary-card dd,.cart-summary-card .gst-details summary b,.summary-total-preview span){color:var(--customer-ink)!important;font-family:Figtree,Arial,sans-serif}
body[class*=page-] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--customer-bg);color:var(--customer-ink);border-color:var(--customer-line)}
body[class*=page-] :is(.checkout-button,.account-primary-button){background:#ff6b00!important;color:#111!important;border-radius:10px}
/* Directory reference: open cards, generous image, compact filter chips. */
.page-restaurants .restaurant-directory-page{width:min(1400px,calc(100% - 48px));padding:40px 0 80px}
.page-restaurants .restaurant-directory-hero{display:block;padding:0 0 24px;border:0}
.page-restaurants .restaurant-directory-hero h1{margin:0 0 8px;font-size:clamp(32px,4vw,52px);letter-spacing:-.045em;line-height:1.05}
.page-restaurants .restaurant-directory-hero p{color:var(--customer-muted)!important;margin:0;font-size:18px}
.directory-chipbar{display:flex;gap:10px;align-items:center;overflow-x:auto;padding:4px 0 22px;border-bottom:1px solid var(--customer-line);scrollbar-width:none}
.directory-chipbar::-webkit-scrollbar{display:none}
.directory-sort,.directory-chip span{display:flex;align-items:center;gap:8px;height:44px;padding:0 18px;border:1px solid var(--customer-line);border-radius:999px;white-space:nowrap;font-size:14px;font-weight:750;background:var(--customer-bg);cursor:pointer}
.directory-sort select{border:0;background:transparent!important;font:inherit;max-width:155px}
.directory-chip{position:relative;flex:none}.directory-chip input{position:absolute;opacity:0;width:1px;height:1px}.directory-chip input:checked+span{border-color:#ff6b00;background:#fff0e5;color:#b54800}.directory-chip input:focus-visible+span{outline:3px solid #ff6b00;outline-offset:2px}
.page-restaurants .restaurant-directory-heading{padding:24px 0 18px;color:var(--customer-muted)}
.page-restaurants .restaurant-store-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}
.page-restaurants .restaurant-store-card{display:block;border:0!important;background:transparent!important;border-radius:0;color:var(--customer-ink)!important;box-shadow:none!important}
.page-restaurants .restaurant-store-image{aspect-ratio:1.48;border-radius:20px;background:var(--customer-panel)}
.page-restaurants .restaurant-store-copy{padding:14px 0;gap:6px}
.page-restaurants .restaurant-store-title{align-items:center;gap:10px}.page-restaurants .restaurant-store-title h3{font-size:21px;line-height:1.15;margin:0}
.directory-rating,.directory-image-badge{padding:5px 9px;border-radius:8px;background:#111;color:#fff;font-size:13px;font-weight:800;white-space:nowrap}
.directory-image-badge{position:absolute;left:12px;top:12px}.directory-image-badge.veg{display:inline-flex;align-items:center;gap:7px;background:#126b3a;color:#fff;box-shadow:0 2px 8px #0003}.directory-image-badge.veg::before{content:"";width:12px;height:12px;box-sizing:border-box;border:1.5px solid currentColor;border-radius:2px;background:radial-gradient(circle,currentColor 0 3px,transparent 3.5px)}
.directory-offer{position:static!important;inset:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;transform:none!important;color:#c44e00;font-size:15px;font-weight:750;display:flex;gap:7px;align-items:center;line-height:1.3}.directory-offer span{font-size:20px}
html[data-theme=dark] .directory-offer{color:#ff9348}
.page-restaurants .restaurant-store-meta{gap:12px}.page-restaurants .restaurant-store-meta span{padding:0;background:none!important;color:var(--customer-ink)!important;font-size:13px;font-weight:700}
.page-restaurants .restaurant-store-cuisines,.directory-store-name{color:var(--customer-muted);font-size:14px}.directory-store-name{font-size:12px}
@media(max-width:1100px){.page-restaurants .restaurant-store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body[class*=page-] .consumer-actions{gap:14px}.header-veg{display:none!important}}
@media(max-width:820px){body[class*=page-] .reference-consumer-header{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:14px 18px;gap:14px;height:auto;min-height:72px;background:#000!important;color:#fff!important}body[class*=page-] .reference-consumer-header>.consumer-brand{display:none}body[class*=page-] .reference-consumer-header .consumer-location,body[class*=page-] .reference-consumer-header .cart-link,body[class*=page-] .reference-consumer-header .consumer-account-menu>summary{color:#fff!important}body[class*=page-] .consumer-location small{max-width:54vw;display:block!important}body[class*=page-] .consumer-actions{gap:18px;grid-column:2;grid-row:1}body[class*=page-] .header-search{grid-column:1/-1;grid-row:2;width:100%;max-width:none;min-width:0;background:#fff!important}body[class*=page-] .header-search input{color:#111!important}body[class*=page-] .orders-link,body[class*=page-] .cart-link>b,body[class*=page-] .consumer-account-menu>summary>b{display:none!important}.page-restaurants .restaurant-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.page-restaurants .restaurant-directory-page{width:calc(100% - 32px);padding-top:28px}.page-restaurants .restaurant-store-title h3{font-size:18px}}
@media(max-width:430px){.page-restaurants .restaurant-store-grid{grid-template-columns:1fr}.page-restaurants .restaurant-store-image{aspect-ratio:1.6}}
@media(max-width:820px){body[class*=page-] .reference-consumer-header .header-icon-link{color:#fff!important}body[class*=page-] .consumer-actions .cart-link{order:1}body[class*=page-] .consumer-actions .consumer-account-menu,body[class*=page-] .consumer-actions .header-icon-link:not(.orders-link){order:2}}
/* Match the homepage content measure and honour explicit appearance on older pages. */
@media(min-width:821px){body[class*=page-] .reference-consumer-header{padding-inline:max(32px,calc((100vw - 1240px)/2))}}
body[class*=page-] :is(.consumer-footer,.account-shell,.cart-page){max-width:1240px}
.page-restaurants .restaurant-directory-page{max-width:1240px}
body[class*=page-] :is(.account-heading,.account-panel,.account-sidebar,.chat-bubble,.summary-restaurant,.confirmation-card){background:var(--customer-panel)!important;color:var(--customer-ink)!important;border-color:var(--customer-line)!important}
body[class*=page-] :is(.chat-thread,.chat-input,.account-form input,.address-form input){background:var(--customer-bg)!important;color:var(--customer-ink)!important;border-color:var(--customer-line)!important}
body[class*=page-] :is(.account-heading h1,.account-panel h2,.chat-header h1,.chat-bubble p){color:var(--customer-ink)!important}
@media(max-width:820px){body[class*=page-] .reference-consumer-header .user-icon{display:grid!important;place-items:center;width:36px;height:36px;border-radius:50%;background:#ff6b00;color:#111!important}body[class*=page-] .reference-consumer-header .user-icon svg{width:20px;height:20px;stroke:#111!important;fill:none}}
