/* Chocodew Premium — richer app navigation and discovery layer */
.favourites-panel{position:fixed;inset:0;z-index:2000;pointer-events:none;opacity:0;transition:opacity .2s ease}
.favourites-panel.open{pointer-events:auto;opacity:1}
.favourites-backdrop{position:absolute;inset:0;background:rgba(25,8,3,.68);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.favourites-sheet{position:absolute;left:50%;bottom:0;width:min(760px,100%);max-height:min(88vh,760px);overflow:auto;transform:translate(-50%,105%);background:linear-gradient(180deg,#fffaf3,#f4e6d5);border:1px solid rgba(185,101,47,.18);border-radius:30px 30px 0 0;box-shadow:0 -28px 80px rgba(25,8,3,.32);padding:22px 18px calc(28px + env(safe-area-inset-bottom));transition:transform .28s cubic-bezier(.2,.8,.2,1);z-index:2001}
.favourites-panel.open .favourites-sheet{transform:translate(-50%,0)}
.favourites-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.favourites-head span{display:block;color:#b9652f;font-size:10px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}
.favourites-head h2{margin:4px 0 0;font-family:'Playfair Display',serif;font-size:30px;color:#2b1710}
.favourites-close{width:42px;height:42px;border-radius:50%;background:#2b1710;color:#fff7ed;font-size:25px;line-height:1;box-shadow:0 8px 22px rgba(43,23,16,.18)}
.favourites-empty{text-align:center;padding:22px 18px 20px;border:1px solid rgba(185,101,47,.16);border-radius:22px;background:rgba(255,255,255,.55);box-shadow:0 12px 30px rgba(72,35,21,.07)}
.favourites-empty-icon{width:62px;height:62px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#f2b26e,#b9652f);color:#fff;font-size:32px;box-shadow:0 12px 25px rgba(185,101,47,.25)}
.favourites-empty h3{margin:0 0 6px;font-family:'Playfair Display',serif;font-size:22px}
.favourites-empty p{max-width:430px;margin:0 auto 16px;color:#806d60;font-size:13px;line-height:1.65}
.favourites-explore{padding:11px 18px;border-radius:999px;background:#351307;color:#fff4e7;font-weight:800;font-size:12px;box-shadow:0 8px 20px rgba(53,19,7,.2)}
.favourites-section-title{margin:22px 2px 10px;color:#806d60;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.favourites-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.favourites-grid .card{margin:0;box-shadow:0 10px 26px rgba(72,35,21,.09)}
.favourites-grid .card-image{aspect-ratio:1.1/1}
.favourites-grid .card-info{padding:10px 11px 6px}
.favourites-grid .card h3{font-size:14px}
.favourites-grid .add{margin:0 10px 10px;width:calc(100% - 20px)}

/* Brighter, richer menu rhythm */
.menu-section:nth-of-type(3n+1){background:linear-gradient(180deg,rgba(255,250,243,.94),rgba(248,237,222,.55))}
.section-head h2{letter-spacing:-.35px}
.card{border:1px solid rgba(185,101,47,.09);background:linear-gradient(180deg,#fffdf9,#fff8f0)}
.card .add{background:linear-gradient(135deg,#7f3515,#3a1308);box-shadow:0 8px 20px rgba(61,20,7,.14)}
.card .add:hover{filter:brightness(1.08);transform:translateY(-1px)}
.sticky-nav{background:rgba(255,250,243,.94)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

/* Keep personal/service numbers out of the visual UI; the service action remains callable. */
.support-button strong{display:none!important}
.support-button{position:relative;overflow:hidden}
.support-button:after{content:'Available for table & service help';display:block;margin-top:3px;color:#9b7a68;font-size:10px}
.footer-grid > div:nth-child(2) > a[href^="tel:"]{display:none!important}
.footer-grid > div:nth-child(2) .footer-label:after{content:'Customer service';margin-left:7px;color:#b9652f;font-size:10px;font-weight:800;letter-spacing:.4px}

@media(max-width:600px){
  .favourites-sheet{width:100%;max-height:91vh;border-radius:27px 27px 0 0;padding-left:14px;padding-right:14px}
  .favourites-head h2{font-size:26px}
  .favourites-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .favourites-grid .card h3{font-size:12px}
  .support-button:after{font-size:9px}
}
@media(min-width:761px){.favourites-sheet{bottom:24px;border-radius:28px}}
@media(prefers-reduced-motion:reduce){.favourites-panel,.favourites-sheet{transition:none}}

/* Favourites modal isolation: page controls must disappear behind the open sheet. */
body:has(.favourites-panel.open){overflow:hidden!important}
body:has(.favourites-panel.open) .hero-search,
body:has(.favourites-panel.open) .search-suggestions,
body:has(.favourites-panel.open) .feedback-fab,
body:has(.favourites-panel.open) .feedback-button,
body:has(.favourites-panel.open) .top,
body:has(.favourites-panel.open) .mobile-order-bar,
body:has(.favourites-panel.open) .mobile-bottom-nav,
body:has(.favourites-panel.open) .floating-category-wheel,
body:has(.favourites-panel.open) .floating-category-nav,
body:has(.favourites-panel.open) .sticky-nav,
body:has(.favourites-panel.open) .chef-picks{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
@supports not selector(body:has(.favourites-panel.open)){
  .favourites-panel{z-index:2000!important}
}
