
/* Bai Kotse View v3.0.0 — CLEAN MOBILE ARCHITECTURE
   This file is the ONLY stylesheet applied at <=900px.
   It intentionally does not inherit any historical mobile override layers.
*/

/* ---------- reset + tokens ---------- */
*,*::before,*::after{box-sizing:border-box}
html{
  width:100%;
  min-height:100%;
  margin:0;
  padding:0;
  background:var(--bk-site-bg-color,var(--bk-theme-bg));
  color-scheme:dark;
  -webkit-text-size-adjust:100%;
  scroll-behavior:auto;
}
body{
  width:100%;
  min-height:100%;
  margin:0;
  padding:0;
  overflow-x:hidden;
  overflow-y:auto;
  background:var(--bk-site-bg-color,var(--bk-theme-bg));
  color:var(--bk-theme-text);
  font-family:Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{max-width:100%}
[hidden]{display:none!important}

:root{
  --bk-m-safe-top:env(safe-area-inset-top,0px);
  --bk-m-safe-bottom:env(safe-area-inset-bottom,0px);
  --bk-m-header:58px;
  --bk-m-controls:132px;
  --bk-m-radius:8px;
  --bk-m-line:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent);
}

/* ---------- site wallpaper ---------- */
.site-backdrop{
  position:fixed;
  z-index:-2;
  inset:0;
  background-color:var(--bk-site-bg-color,var(--bk-theme-bg));
  background-image:var(--bk-site-bg-image,none);
  background-position:var(--bk-site-bg-x,50%) var(--bk-site-bg-y,50%);
  background-size:var(--bk-site-bg-size,cover);
  background-repeat:no-repeat;
}
.site-backdrop::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--bk-site-bg-overlay,var(--bk-theme-bg));
  opacity:var(--bk-site-bg-opacity,.28);
}

/* ---------- first-screen app ---------- */
.app{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-rows:calc(var(--bk-m-header) + var(--bk-m-safe-top)) minmax(0,1fr);
  width:100%;
  height:100svh;
  min-height:100svh;
  overflow:hidden;
  background:transparent;
}

/* ---------- always-visible top navigation inside first screen ---------- */
.topbar{
  position:relative;
  z-index:500;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  width:100%;
  height:calc(var(--bk-m-header) + var(--bk-m-safe-top));
  padding:
    var(--bk-m-safe-top)
    max(7px,env(safe-area-inset-right,0px))
    0
    max(7px,env(safe-area-inset-left,0px));
  background:color-mix(in srgb,var(--bk-theme-bg) 95%,black 5%);
  color:var(--bk-theme-text);
  border-bottom:1px solid var(--bk-m-line);
  box-shadow:0 4px 14px color-mix(in srgb,var(--bk-theme-bg) 36%,transparent);
}
.brand{
  display:flex;
  align-items:center;
  min-width:0;
  flex:0 0 auto;
}
.brand-mark,
.brand-logo{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  min-width:42px;
  overflow:hidden;
  border-radius:50%;
  border:1px solid var(--bk-m-line);
  background:var(--bk-theme-surface);
}
.brand-logo img,.brand-mark img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.brand-text{display:none}

.top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  min-width:0;
  flex:1;
}
.icon-btn,.lang-btn,.bk-ai-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:36px;
  min-height:36px;
  padding:0 8px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-surface) 92%,transparent);
  color:var(--bk-theme-text);
  box-shadow:none;
  font:700 10px/1 Arial,sans-serif;
}
.history-btn{max-width:72px}
#searchBtn{max-width:62px}
.lang-btn{
  width:34px;
  min-width:34px;
  padding:0;
  font-size:9px;
}
.lang-btn.active{
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
  border-color:var(--bk-theme-accent);
}
.bk-ai-btn{
  width:42px;
  min-width:42px;
  padding:0;
  gap:3px;
  border-color:color-mix(in srgb,var(--bk-theme-accent) 38%,transparent);
}
.bk-ai-spark{color:var(--bk-theme-accent);font-size:13px}
.bk-ai-label{display:inline;font:800 9px/1 Arial,sans-serif}
.bk-ai-btn.active{
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
  border-color:var(--bk-theme-accent);
}
.bk-ai-btn.active .bk-ai-spark{color:var(--bk-theme-bg)}
.progress{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:transparent;
}
.progress span{
  display:block;
  width:0;
  height:100%;
  background:var(--bk-theme-accent);
  transition:width .15s ease;
}

/* ---------- stage / single active page ---------- */
.stage{
  position:relative;
  min-width:0;
  min-height:0;
  width:100%;
  height:100%;
  padding:7px 7px calc(var(--bk-m-controls) + var(--bk-m-safe-bottom));
  overflow:hidden;
}
.book-shell{
  position:relative;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 26%,transparent);
  border-radius:10px;
  background:var(--bk-theme-bg);
  box-shadow:0 12px 30px color-mix(in srgb,var(--bk-theme-bg) 55%,transparent);
}
.page{
  position:absolute;
  inset:0;
  display:none;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border-radius:9px;
  background:var(--bk-theme-bg);
  color:var(--bk-theme-text);
}
.page.active{display:block}
.page[aria-hidden="true"]{display:none!important}
.paper-grain{
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  opacity:.05;
  background-image:
    repeating-linear-gradient(0deg,transparent 0 3px,color-mix(in srgb,var(--bk-theme-text) 10%,transparent) 4px);
}
.page-content{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  min-height:0;
  padding:17px 11px 15px;
  overflow-x:hidden;
  overflow-y:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
  -webkit-overflow-scrolling:touch;
}
.page-content::-webkit-scrollbar{display:none}

/* ---------- page typography ---------- */
.page-heading{
  margin:0 0 14px;
  text-align:center;
}
.page-kicker,.cover-eyebrow,.group-title,.trust-heading>span,.review-modal-kicker,.location-copy small,.public-map-head span{
  color:var(--bk-theme-accent);
  font:800 8px/1.25 Arial,sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.history-archive-head strong,
.trust-heading h2,
.location-copy strong,
.public-map-head strong,
.review-modal-card h2,
.drawer-head strong,
.drawer-brand-copy strong,
.waiter-top h2{
  margin:0;
  color:var(--bk-theme-heading);
  font-family:var(--bk-font-heading)!important;
  font-weight:400!important;
}
.page-heading h2{font-size:clamp(32px,10vw,45px);line-height:.95}
.page-heading p{
  margin:6px auto 0;
  color:var(--bk-theme-muted);
  font:500 10px/1.45 Arial,sans-serif;
}

/* ---------- cover: fit in one viewport, scroll fallback remains ---------- */
.page--cover .page-content{padding:0}
.cover-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:100%;
  padding:8px 12px;
  text-align:center;
}
.cover-logo{
  width:clamp(50px,8.5svh,72px);
  height:clamp(50px,8.5svh,72px);
  flex:0 0 auto;
  margin:0 0 5px;
  overflow:hidden;
  border-radius:50%;
}
.cover-logo img{width:100%;height:100%;object-fit:cover}
.cover-eyebrow{margin:2px 0 0}
.cover-inner h1{
  max-width:96%;
  margin:5px 0 2px;
  font-size:clamp(34px,min(10.5vw,7svh),53px);
  line-height:.89;
}
.ornament{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:min(150px,44%);
  margin:2px auto;
  color:var(--bk-theme-accent);
}
.ornament span{height:1px;flex:1;background:color-mix(in srgb,var(--bk-theme-accent) 45%,transparent)}
.ornament b{font-size:8px}
.cover-subtitle{
  margin:4px 0 0;
  color:var(--bk-theme-heading);
  font-family:var(--bk-font-heading)!important;
  font-size:clamp(17px,min(5.1vw,3.2svh),23px);
  line-height:1.05;
}
.cover-note{
  max-width:96%;
  margin:6px 0 0;
  color:var(--bk-theme-muted);
  font:700 clamp(7px,1.05svh,8px)/1.35 Arial,sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.cover-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  width:min(100%,400px);
  margin-top:8px;
}
.primary-btn,.secondary-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 10px;
  border-radius:7px;
  font:800 8px/1 Arial,sans-serif;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.primary-btn{
  border:1px solid var(--bk-theme-accent);
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
}
.secondary-btn{
  border:1px solid var(--bk-m-line);
  background:color-mix(in srgb,var(--bk-theme-surface) 90%,transparent);
  color:var(--bk-theme-text);
}
.page-footer{
  position:absolute;
  z-index:4;
  left:12px;
  right:12px;
  bottom:7px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:6px;
  border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 15%,transparent);
  color:var(--bk-theme-muted);
  font:700 8px/1 Arial,sans-serif;
}
.page-footer .graycape-credit{display:none!important}

/* ---------- menu dishes ---------- */
.dish-group{margin:0 0 16px}
.group-title{
  margin:0 0 7px;
  padding-bottom:5px;
  border-bottom:1px solid var(--bk-m-line);
}
.dish-list{display:grid;gap:8px}
.dish{
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  gap:10px;
  min-width:0;
  padding:8px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 86%,transparent);
}
.dish-thumb{
  position:relative;
  width:82px;
  height:74px;
  margin:0;
  overflow:hidden;
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-surface) 82%,black 18%);
}
.dish-thumb img{width:100%;height:100%;object-fit:cover}
.dynamic-placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  padding:6px;
  color:var(--bk-theme-muted);
  text-align:center;
  font:700 8px/1.3 Arial,sans-serif;
}
.dish-copy{min-width:0}
.dish-line{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:7px;
}
.dish-line h3{
  min-width:0;
  margin:0;
  color:var(--bk-theme-item);
  font-family:var(--bk-font-item)!important;
  font-size:16px;
  line-height:1.05;
  font-weight:400!important;
  overflow-wrap:anywhere;
}
.dish-meta{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  flex:0 0 auto;
  gap:2px;
}
.dish-weight{color:var(--bk-theme-muted);font:600 8px/1 Arial,sans-serif}
.dish-price{color:var(--bk-theme-text);font:800 11px/1 Arial,sans-serif}
.dish-desc{
  margin:5px 0 0;
  color:var(--bk-theme-muted);
  font:500 9px/1.38 Arial,sans-serif;
}
.dish-actions{margin-top:7px}
.add-to-order{
  min-height:31px;
  padding:0 9px;
  border:1px solid var(--bk-theme-accent);
  border-radius:6px;
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
  font:800 8px/1 Arial,sans-serif;
}
.dish.unavailable{opacity:.48}
.dish.unavailable .add-to-order{display:none}

/* category wallpaper */
.page--menu.has-category-bg{
  background-image:
    linear-gradient(rgba(13,7,4,var(--bk-category-overlay,.58)),rgba(13,7,4,var(--bk-category-overlay,.58))),
    var(--bk-category-bg)!important;
  background-position:center,var(--bk-category-x,50%) var(--bk-category-y,50%)!important;
  background-size:cover,var(--bk-category-size,cover)!important;
  background-repeat:no-repeat!important;
}
.page--menu.has-category-bg .paper-grain{opacity:.03}

/* ---------- history ---------- */
.history-editorial{width:100%;margin:0 auto}
.history-intro-grid{display:grid;grid-template-columns:1fr;gap:10px}
.history-gallery-item{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  overflow:hidden;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:var(--bk-theme-surface);
}
.history-gallery-item img{display:block;width:100%;height:auto;object-fit:contain}
.history-hero-image img{max-height:56svh}
.history-gallery-caption{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:16px 9px 8px;
  background:linear-gradient(transparent,rgba(0,0,0,.78));
  color:#fff;
  font:600 9px/1.3 Arial,sans-serif;
}
.story-copy{
  padding:14px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 86%,transparent);
}
.story-paragraph{
  margin:0 0 10px;
  color:var(--bk-theme-muted);
  font:500 11px/1.58 Arial,sans-serif;
}
.story-quote{
  margin:12px 0 0;
  padding:12px;
  border-left:2px solid var(--bk-theme-accent);
  background:color-mix(in srgb,var(--bk-theme-surface) 92%,transparent);
  color:var(--bk-theme-heading);
  font-family:var(--bk-font-heading)!important;
  font-size:18px;
  line-height:1.25;
}
.history-archive-head{
  display:grid;
  gap:4px;
  margin:22px 0 10px;
  padding-top:14px;
  border-top:1px solid var(--bk-m-line);
}
.history-archive-head strong{font-size:28px;line-height:1}
.history-archive-head small{color:var(--bk-theme-muted);font:600 9px/1.35 Arial,sans-serif}
.history-masonry{
  columns:2 130px;
  column-gap:7px;
}
.history-archive-photo{
  break-inside:avoid;
  margin:0 0 7px;
}
.history-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin:18px 0 35px;
}
.history-gallery-empty{padding:20px;text-align:center;color:var(--bk-theme-muted)}

/* ---------- contact ---------- */
.contact-inner{
  display:grid;
  gap:12px;
  width:100%;
  margin:0 auto;
  padding-bottom:30px;
  text-align:center;
}
.contact-logo{
  width:72px;
  height:72px;
  margin:0 auto;
  overflow:hidden;
  border-radius:50%;
}
.contact-logo img{width:100%;height:100%;object-fit:cover}
.contact-inner h2{font-size:38px;line-height:.95}
.contact-sub{color:var(--bk-theme-muted);font:500 11px/1.5 Arial,sans-serif}
.contact-cards{display:grid;gap:8px}
.contact-cards a{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:12px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 86%,transparent);
  color:var(--bk-theme-text);
  text-decoration:none;
}
.contact-cards small{color:var(--bk-theme-muted);font-size:8px}
.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.contact-thanks{color:var(--bk-theme-muted);font:500 10px/1.5 Arial,sans-serif}

/* ---------- bottom controls: three clean rows ---------- */
.menu-ribbon,
.order-fab,
.trust-scroll-cue,
.pager{
  position:absolute;
  z-index:300;
}

.trust-scroll-cue{
  left:7px;
  right:7px;
  bottom:calc(98px + var(--bk-m-safe-bottom));
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  height:31px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-surface) 94%,transparent);
  color:var(--bk-theme-muted);
  font:800 8px/1 Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.trust-scroll-cue b{color:var(--bk-theme-accent);font-size:13px}

.menu-ribbon{
  left:7px;
  bottom:calc(51px + var(--bk-m-safe-bottom));
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:calc(50% - 10px);
  height:40px;
  padding:0 8px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-surface) 94%,transparent);
  color:var(--bk-theme-text);
}
.ribbon-pulse{display:none}
.ribbon-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.ribbon-copy small{color:var(--bk-theme-muted);font:700 6px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.11em}
.ribbon-copy strong{color:var(--bk-theme-heading);font:800 8px/1 Arial,sans-serif;letter-spacing:.12em}
.ribbon-arrows{display:flex;color:var(--bk-theme-accent);font-size:11px}

.order-fab{
  right:7px;
  bottom:calc(51px + var(--bk-m-safe-bottom));
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:calc(50% - 10px);
  height:40px;
  padding:0 7px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  font:800 8px/1 Arial,sans-serif;
}
.order-fab b{
  display:grid;
  place-items:center;
  min-width:20px;
  height:20px;
  padding:0 4px;
  border-radius:5px;
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
}
#orderFabTotal{font-size:7px}

.pager{
  left:50%;
  bottom:max(5px,var(--bk-m-safe-bottom));
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  height:42px;
  padding:3px 5px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-bg) 94%,transparent);
}
.pager button{
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  padding:0;
  border:1px solid var(--bk-m-line);
  border-radius:6px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
}
.pager button:disabled{opacity:.28}
.page-count{
  min-width:60px;
  text-align:center;
  color:var(--bk-theme-text);
  font:800 8px/1 Arial,sans-serif;
}

/* ---------- categories full-screen overlay ---------- */
.drawer{
  position:fixed;
  z-index:20000;
  inset:0;
  width:100vw;
  height:100dvh;
  padding:
    calc(max(12px,var(--bk-m-safe-top)) + 4px)
    13px
    calc(max(14px,var(--bk-m-safe-bottom)) + 4px);
  overflow-x:hidden;
  overflow-y:auto;
  transform:translateX(-103%);
  transition:transform .18s ease;
  border:0;
  background:color-mix(in srgb,var(--bk-theme-bg) 98%,black 2%);
  color:var(--bk-theme-text);
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.drawer::-webkit-scrollbar{display:none}
.drawer.open{transform:translateX(0)}
.scrim{
  position:fixed;
  z-index:19990;
  inset:0;
  display:none;
  background:rgba(0,0,0,.58);
}
.scrim.open{display:block}
body.nav-open,body.order-open,body.review-modal-open,body.gallery-open{overflow:hidden!important}

.drawer-brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding-bottom:12px;
  border-bottom:1px solid var(--bk-m-line);
}
.drawer-brand-logo{
  width:44px;
  height:44px;
  min-width:44px;
  overflow:hidden;
  border-radius:50%;
}
.drawer-brand-logo img{width:100%;height:100%;object-fit:cover}
.drawer-brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.drawer-brand-copy strong{font-size:18px;line-height:1}
.drawer-brand-copy small{color:var(--bk-theme-muted);font:600 8px/1.3 Arial,sans-serif}
.drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:13px 0 10px;
}
.drawer-head strong{font-size:30px;line-height:1}
.drawer-head button,.order-close,.waiter-close,.review-modal-close,.history-lightbox-close{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  padding:0;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  font-size:20px;
}
.drawer-history-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  margin:0 0 12px;
  padding:11px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
  color:var(--bk-theme-text);
  text-align:left;
}
.drawer-history-copy{display:flex;flex-direction:column;gap:3px}
.drawer-history-copy strong{color:var(--bk-theme-heading);font-family:var(--bk-font-heading);font-size:16px}
.drawer-history-copy small{color:var(--bk-theme-muted);font-size:8px}
.drawer-history-arrow{color:var(--bk-theme-accent);font-size:9px}
.toc{display:grid;gap:4px}
.toc-section-label{
  margin:8px 0 3px;
  color:var(--bk-theme-accent);
  font:800 7px/1 Arial,sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.toc button{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:8px;
  align-items:center;
  width:100%;
  min-height:42px;
  padding:0 9px;
  border:0;
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent);
  background:transparent;
  color:var(--bk-theme-text);
  text-align:left;
}
.toc button span{color:var(--bk-theme-muted);font:700 8px/1 Arial,sans-serif}
.toc button b{font-family:var(--bk-font-heading);font-size:17px;font-weight:400}
.toc button.is-active{background:color-mix(in srgb,var(--bk-theme-accent) 10%,transparent)}
.drawer-note{margin:14px 0 0;color:var(--bk-theme-muted);font:600 9px/1.4 Arial,sans-serif}

/* ---------- search ---------- */
.search-panel{
  position:fixed;
  z-index:20100;
  top:calc(var(--bk-m-safe-top) + 62px);
  left:7px;
  right:7px;
  display:none;
  max-height:68dvh;
  padding:7px;
  overflow:hidden;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:var(--bk-theme-bg);
  box-shadow:0 18px 50px rgba(0,0,0,.42);
}
.search-panel.open{display:block}
.search-input{
  width:100%;
  height:44px;
  padding:0 12px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  outline:0;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  font-size:16px;
}
.search-results{
  display:grid;
  max-height:calc(68dvh - 58px);
  margin-top:6px;
  overflow-y:auto;
}
.search-results button{
  min-height:42px;
  padding:0 10px;
  border:0;
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent);
  background:transparent;
  color:var(--bk-theme-text);
  text-align:left;
  font-size:11px;
}

/* ---------- cart ---------- */
.order-drawer{
  position:fixed;
  z-index:20200;
  inset:0;
  display:flex;
  flex-direction:column;
  width:100vw;
  height:100dvh;
  transform:translateX(103%);
  transition:transform .18s ease;
  background:var(--bk-theme-bg);
  color:var(--bk-theme-text);
}
.order-drawer.open{transform:translateX(0)}
.order-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:calc(58px + var(--bk-m-safe-top));
  padding:var(--bk-m-safe-top) 12px 0;
  border-bottom:1px solid var(--bk-m-line);
}
.order-head strong{font-family:var(--bk-font-heading);font-size:22px;font-weight:400}
.order-items{
  flex:1;
  min-height:0;
  padding:8px 12px;
  overflow-y:auto;
}
.order-empty{padding:24px 8px;text-align:center;color:var(--bk-theme-muted);font-size:11px}
.order-line{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:8px 0;
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent);
}
.order-line img{width:48px;height:46px;object-fit:cover;border-radius:6px}
.order-line h4{margin:0;color:var(--bk-theme-item);font-family:var(--bk-font-item);font-size:14px;font-weight:400}
.qty{display:flex;align-items:center;gap:6px;margin-top:6px}
.qty button{
  width:28px;height:28px;
  border:1px solid var(--bk-m-line);
  border-radius:5px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
}
.order-price{font:800 10px/1 Arial,sans-serif}
.order-foot{
  padding:10px 12px calc(10px + var(--bk-m-safe-bottom));
  border-top:1px solid var(--bk-m-line);
}
.order-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.order-total strong{font-size:20px}
.order-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.order-actions button{
  min-height:42px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
}
.clear-order{background:var(--bk-theme-surface);color:var(--bk-theme-text)}
.show-waiter{background:var(--bk-theme-accent);color:var(--bk-theme-bg)}

/* ---------- waiter ---------- */
.waiter-modal{
  position:fixed;
  z-index:20400;
  inset:0;
  display:none;
  overflow-y:auto;
  background:var(--bk-theme-bg);
  color:var(--bk-theme-text);
}
.waiter-modal.open{display:block}
.waiter-card{
  min-height:100dvh;
  padding:calc(12px + var(--bk-m-safe-top)) 12px calc(12px + var(--bk-m-safe-bottom));
}
.waiter-top{display:flex;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--bk-m-line)}
.waiter-top h2{font-size:28px}
.waiter-top p{margin:5px 0 0;color:var(--bk-theme-muted);font-size:10px}
.waiter-list{margin-top:10px}
.waiter-row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--bk-m-line);font-size:13px}
.waiter-grand{display:flex;justify-content:space-between;margin-top:18px;padding-top:12px;border-top:2px solid var(--bk-m-line)}
.waiter-grand strong{font-size:24px}

/* ---------- history lightbox ---------- */
.history-lightbox{
  position:fixed;
  z-index:20500;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:50px 8px 18px;
  background:rgba(0,0,0,.92);
}
.history-lightbox.open{display:flex}
.history-lightbox-figure{
  display:flex;
  flex-direction:column;
  align-items:center;
  max-width:100%;
  max-height:100%;
  margin:0;
}
.history-lightbox-figure img{max-width:100%;max-height:76dvh;object-fit:contain}
.history-lightbox-figure figcaption{padding:8px 6px;color:#fff;font-size:10px;text-align:center}
.history-lightbox-close{position:absolute;top:calc(8px + var(--bk-m-safe-top));right:8px}
.history-lightbox-nav{
  position:absolute;
  top:50%;
  width:38px;height:46px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:7px;
  background:rgba(0,0,0,.5);
  color:#fff;
}
.history-lightbox-prev{left:6px}
.history-lightbox-next{right:6px}

/* ---------- below-fold reviews/location ---------- */
.site-trust-section{
  position:relative;
  z-index:1;
  width:100%;
  min-height:auto;
  padding:42px 10px 36px;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--bk-theme-bg) 72%,transparent),
      color-mix(in srgb,var(--bk-theme-bg) 95%,black 5%)
    ),
    var(--bk-site-bg-image,none);
  background-color:var(--bk-site-bg-color,var(--bk-theme-bg));
  background-position:var(--bk-site-bg-x,50%) var(--bk-site-bg-y,50%);
  background-size:cover;
  color:var(--bk-theme-text);
  border-top:1px solid var(--bk-m-line);
}
.site-trust-inner{width:100%;max-width:720px;margin:0 auto}
.trust-heading{margin:0 auto 18px;text-align:center}
.trust-heading h2{font-size:clamp(38px,12vw,52px);line-height:.95}
.trust-heading p{max-width:330px;margin:9px auto 0;color:var(--bk-theme-muted);font:500 11px/1.5 Arial,sans-serif}

.review-platform-grid{display:grid;grid-template-columns:1fr;gap:8px}
.review-platform-card{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  aspect-ratio:2.55/1;
  padding:0;
  overflow:hidden;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
}
.review-platform-card img{
  width:100%;
  height:100%;
  padding:12px;
  object-fit:contain;
  object-position:center;
}

.location-card{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin-top:10px;
  padding:13px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
}
.location-pin{
  display:grid;place-items:center;
  width:42px;height:42px;
  border:1px solid var(--bk-m-line);
  border-radius:50%;
  color:var(--bk-theme-accent);
  font-size:22px;
}
.location-copy{display:flex;flex-direction:column;gap:2px}
.location-copy strong{font-size:clamp(22px,7.5vw,30px);line-height:1}
.location-copy span{color:var(--bk-theme-muted);font-size:10px}
.navigate-btn{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:7px;
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
  text-decoration:none;
  font:800 9px/1 Arial,sans-serif;
  text-transform:uppercase;
}
.public-map-block{margin-top:14px}
.public-map-head{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.public-map-head>div{display:flex;flex-direction:column;gap:3px}
.public-map-head strong{font-size:clamp(28px,9vw,38px);line-height:1}
.public-map-head a{
  display:flex;align-items:center;justify-content:center;
  min-height:42px;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  text-decoration:none;
  font:800 9px/1 Arial,sans-serif;
  text-transform:uppercase;
}
.public-map-frame{
  width:calc(100% + 20px);
  height:310px;
  margin-left:-10px;
  overflow:hidden;
  border-top:1px solid var(--bk-m-line);
  border-bottom:1px solid var(--bk-m-line);
  background:var(--bk-theme-surface);
}
.public-map-frame iframe{display:block;width:100%;height:100%;border:0}

/* ---------- true footer ---------- */
.site-footer{
  position:relative;
  z-index:1;
  width:100%;
  border-top:1px solid var(--bk-m-line);
  background:color-mix(in srgb,var(--bk-theme-bg) 94%,black 6%);
  color:var(--bk-theme-muted);
}
.site-footer-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:60px;
  padding:4px 0 max(5px,var(--bk-m-safe-bottom));
  font:600 10px/1.4 Arial,sans-serif;
}
.site-footer-heart{color:#d74b43;font-size:14px}
.site-footer a{color:var(--bk-theme-accent);font-weight:800;text-decoration:none}

/* ---------- review modal ---------- */
.review-modal{
  position:fixed;
  z-index:20600;
  inset:0;
  display:none;
  align-items:flex-end;
  padding:0;
  background:rgba(0,0,0,.78);
}
.review-modal.open{display:flex}
.review-modal-card{
  position:relative;
  width:100%;
  max-height:92dvh;
  padding:26px 15px calc(18px + var(--bk-m-safe-bottom));
  overflow-y:auto;
  border-top:1px solid var(--bk-m-line);
  border-radius:11px 11px 0 0;
  background:var(--bk-theme-bg);
  color:var(--bk-theme-text);
  text-align:center;
}
.review-modal-close{position:absolute;top:8px;right:8px}
.review-modal-card h2{padding:0 22px;font-size:clamp(30px,9vw,42px);line-height:1}
.review-modal-card p{margin:10px auto 0;color:var(--bk-theme-muted);font:500 11px/1.5 Arial,sans-serif}
.review-stars{
  display:flex;
  justify-content:space-between;
  gap:0;
  width:min(100%,330px);
  margin:20px auto 3px;
}
.review-stars button{
  min-width:50px;
  min-height:52px;
  padding:0;
  border:0;
  background:transparent;
  color:#765f4a;
  font-size:42px;
}
.review-stars button.preview,.review-stars button.selected{color:#f2b84b}
.review-private-form{display:grid;gap:10px;text-align:left}
.review-private-form h2,.review-private-form>p,.review-private-form>.review-modal-kicker{text-align:center}
.review-private-form textarea,.review-private-form input{
  width:100%;
  border:1px solid var(--bk-m-line);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  outline:0;
  font-size:16px;
}
.review-private-form textarea{min-height:120px;padding:12px;resize:vertical}
.review-private-form input{height:44px;padding:0 12px}
.review-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.review-form-actions{display:grid;gap:8px}
.review-form-actions .primary-btn{width:100%}
.review-form-actions a{color:var(--bk-theme-muted);text-align:center;font-size:9px}
.review-form-status{min-height:18px;color:var(--bk-theme-accent);text-align:center;font-size:10px}
.review-thanks{padding:24px 0}
.review-thanks>span{display:block;color:var(--bk-theme-accent);font-size:40px}

/* ---------- Aminos isolation ---------- */
.bk-ai-widget-hidden{display:none!important}
body.bk-ai-active .bk-ai-widget-root{
  z-index:22000!important;
  max-width:100vw!important;
  max-height:100dvh!important;
}
body.bk-ai-active .bk-ai-widget-root iframe{
  max-width:100vw!important;
  max-height:100dvh!important;
}
body.bk-ai-active .menu-ribbon,
body.bk-ai-active .order-fab,
body.bk-ai-active .pager,
body.bk-ai-active .trust-scroll-cue{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.bk-ai-active .topbar{z-index:23000}

/* ---------- performance / no expensive mobile effects ---------- */
.topbar,.drawer,.search-panel,.order-drawer,.review-modal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.page,.book-shell,.review-platform-card{filter:none!important}
.site-trust-section,.site-footer{will-change:auto}

/* ---------- narrow / short phones ---------- */
@media(max-width:370px){
  :root{--bk-m-header:54px}
  .brand-mark,.brand-logo{width:38px;height:38px;min-width:38px}
  .top-actions{gap:2px}
  .icon-btn,.lang-btn,.bk-ai-btn{height:33px;min-height:33px}
  .history-btn{max-width:60px;padding:0 6px;font-size:8px}
  #searchBtn{max-width:50px;padding:0 6px;font-size:8px}
  .bk-ai-btn{width:39px;min-width:39px}
  .lang-btn{width:30px;min-width:30px}
  .dish{grid-template-columns:74px minmax(0,1fr);gap:8px}
  .dish-thumb{width:74px;height:68px}
  .dish-line h3{font-size:14px}
  .cover-inner h1{font-size:clamp(30px,min(10vw,6.5svh),44px)}
}

@media(max-height:690px){
  :root{--bk-m-controls:118px}
  .trust-scroll-cue{bottom:calc(88px + var(--bk-m-safe-bottom));height:27px}
  .menu-ribbon,.order-fab{bottom:calc(46px + var(--bk-m-safe-bottom));height:35px}
  .pager{height:37px}
  .pager button{width:31px;height:31px}
  .cover-logo{width:42px;height:42px}
  .cover-inner h1{font-size:clamp(28px,6.4svh,40px)}
  .cover-subtitle{font-size:14px}
  .cover-note{font-size:6px;margin-top:3px}
  .cover-actions{margin-top:4px}
  .primary-btn,.secondary-btn{min-height:30px}
}

@media(orientation:landscape) and (max-height:520px){
  :root{--bk-m-header:48px;--bk-m-controls:86px}
  .brand-mark,.brand-logo{width:34px;height:34px;min-width:34px}
  .icon-btn,.lang-btn,.bk-ai-btn{height:30px;min-height:30px}
  .stage{padding-top:4px;padding-bottom:calc(var(--bk-m-controls) + var(--bk-m-safe-bottom))}
  .trust-scroll-cue{display:none}
  .menu-ribbon,.order-fab{bottom:calc(42px + var(--bk-m-safe-bottom));height:32px}
  .pager{bottom:max(3px,var(--bk-m-safe-bottom));height:34px}
  .pager button{width:28px;height:28px}
  .cover-inner{padding:2px 7px}
  .cover-logo{width:30px;height:30px}
  .cover-eyebrow{font-size:6px}
  .cover-inner h1{font-size:clamp(26px,8svh,34px);margin:1px 0}
  .ornament{width:90px;margin:0 auto}
  .cover-subtitle{font-size:12px;margin-top:1px}
  .cover-note{font-size:5px;margin-top:1px}
  .cover-actions{margin-top:3px}
  .primary-btn,.secondary-btn{min-height:27px;font-size:7px}
}

.dish-thumb{border:0;cursor:pointer}.dish-title-btn{display:block;max-width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.dish-title-btn span{font-family:var(--bk-font-item)!important;color:var(--bk-theme-item)}.dish-actions{display:flex;flex-wrap:wrap;gap:6px}.dish-more{min-height:31px;padding:0 9px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 28%,transparent);border-radius:6px;background:transparent;color:var(--bk-theme-muted);font:800 8px/1 Arial,sans-serif}.dish-mini-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.dish-mini-tags span,.dish-detail-tags span{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--bk-theme-accent) 12%,var(--bk-theme-surface));color:var(--bk-theme-muted);font:700 8px/1 Arial,sans-serif}.drawer-smart-card{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:0 0 11px;padding:11px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 25%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-accent) 8%,var(--bk-theme-surface));color:var(--bk-theme-text);text-align:left}.drawer-smart-card span{display:flex;flex-direction:column;gap:3px}.drawer-smart-card strong{font-family:var(--bk-font-heading);font-size:17px;font-weight:400}.drawer-smart-card small{color:var(--bk-theme-muted);font-size:8px}.drawer-smart-card b{color:var(--bk-theme-accent);font-size:20px}.smart-modal{position:fixed;z-index:24000;inset:0;display:none;align-items:center;justify-content:center;padding:14px;background:rgba(6,3,2,.78)}.smart-modal.open{display:flex}.smart-modal-card{position:relative;width:min(720px,100%);max-height:92dvh;overflow-y:auto;padding:24px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 28%,transparent);border-radius:10px;background:var(--bk-theme-bg);color:var(--bk-theme-text);box-shadow:0 28px 80px rgba(0,0,0,.5)}.smart-modal-close{position:absolute;z-index:3;top:9px;right:9px;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 25%,transparent);border-radius:7px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font-size:20px}body.smart-modal-open{overflow:hidden!important}.dish-detail-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:20px}.dish-detail-image-wrap{min-height:280px;overflow:hidden;border-radius:8px;background:var(--bk-theme-surface)}.dish-detail-image-wrap img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover}.dish-detail-copy{display:flex;flex-direction:column;align-items:flex-start}.dish-detail-category{color:var(--bk-theme-accent);font:800 8px/1 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}.dish-detail-copy h2,.chooser-card h2{margin:8px 0;color:var(--bk-theme-heading);font-family:var(--bk-font-heading)!important;font-size:clamp(34px,4vw,52px);font-weight:400;line-height:.95}.dish-detail-meta{display:flex;justify-content:space-between;width:100%;color:var(--bk-theme-muted);font-size:11px}.dish-detail-meta strong{color:var(--bk-theme-text);font-size:18px}#dishDetailDescription{color:var(--bk-theme-muted);font:500 12px/1.55 Arial,sans-serif}.dish-detail-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 12px}.dish-allergens{width:100%;margin-top:6px;padding:12px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-surface) 86%,transparent)}.dish-allergens>strong{display:block;margin-bottom:7px}.dish-allergens>div{display:grid;gap:5px}.dish-allergens span{display:flex;align-items:center;gap:7px;color:var(--bk-theme-muted);font-size:10px}.dish-allergens span b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--bk-theme-accent);color:var(--bk-theme-bg);font-size:8px}.dish-allergens small{display:block;margin-top:8px;color:var(--bk-theme-muted);font-size:9px}.dish-detail-actions{width:100%;margin-top:14px}.dish-detail-actions .primary-btn{width:100%}.chooser-card{width:min(650px,100%);text-align:center}.chooser-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:18px 0}.chooser-tags button{min-height:34px;padding:0 10px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);border-radius:999px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font:700 9px/1 Arial,sans-serif}.chooser-tags button.active{background:var(--bk-theme-accent);color:var(--bk-theme-bg)}.chooser-results{display:grid;gap:7px;text-align:left}.chooser-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;width:100%;padding:11px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);color:var(--bk-theme-text);text-align:left}.chooser-result strong{font-family:var(--bk-font-item);font-size:15px;font-weight:400;color:var(--bk-theme-item)}.chooser-result span{grid-column:1;color:var(--bk-theme-muted);font-size:9px}.chooser-result b{grid-column:2;grid-row:1/3;align-self:center;color:var(--bk-theme-accent)}.order-note{display:block;width:100%;max-width:310px;height:32px;margin-top:7px;padding:0 8px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:6px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font-size:10px}.order-line-main{min-width:0}.waiter-row small{display:block;margin-top:4px;color:var(--bk-theme-muted);font-size:10px}.waiter-table{margin:6px 0 12px;padding:10px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);border-radius:7px;color:var(--bk-theme-accent);font-weight:800;text-align:center}.order-table-label{display:block;margin-top:3px;color:var(--bk-theme-accent);font-size:9px}.history-chapter-head{display:flex;flex-direction:column;gap:3px;margin:20px 0 8px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)}.history-chapter-head span{color:var(--bk-theme-accent);font:800 8px/1 Arial,sans-serif;letter-spacing:.14em}.history-chapter-head strong{font-family:var(--bk-font-heading);font-size:30px;font-weight:400;color:var(--bk-theme-heading)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:900px){.smart-modal{align-items:flex-end;padding:0}.smart-modal-card{width:100%;max-height:92dvh;padding:25px 14px calc(16px + env(safe-area-inset-bottom,0px));border-left:0;border-right:0;border-bottom:0;border-radius:11px 11px 0 0}.dish-detail-card{display:block}.dish-detail-image-wrap{height:220px;min-height:220px;margin:-25px -14px 15px;border-radius:11px 11px 0 0}.dish-detail-image-wrap img{min-height:220px}.dish-detail-copy h2,.chooser-card h2{font-size:clamp(31px,9vw,43px)}.chooser-tags{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.chooser-tags::-webkit-scrollbar{display:none}.chooser-tags button{flex:0 0 auto}.order-note{max-width:100%;font-size:16px}.history-chapter-head strong{font-size:28px}}

/* =====================================================================
   v3.1.3 — CART VISIBILITY / AI MODE FIX
   Keep My Order reachable while Aminos is active and make it more visible.
   ===================================================================== */
.order-fab{
  z-index:520!important;
  height:48px!important;
  min-height:48px!important;
  padding:0 11px!important;
  gap:7px!important;
  border:2px solid color-mix(in srgb,var(--bk-theme-accent) 64%,transparent)!important;
  border-radius:10px!important;
  background:color-mix(in srgb,var(--bk-theme-surface) 91%,black 9%)!important;
  color:var(--bk-theme-heading)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.32),0 0 0 1px color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
}
.order-fab b{
  min-width:26px!important;
  height:26px!important;
  padding:0 6px!important;
  border-radius:7px!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:0 3px 10px rgba(0,0,0,.20)!important;
}
.order-fab #orderFabTotal{
  font-size:10px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

/* Earlier versions deliberately hid the cart in AI mode. v3.1.3 reverses that. */
body.bk-ai-active .order-fab{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  display:flex!important;
  z-index:23020!important;
}

/* If My Order is opened while AI is active, the order UI must sit above Aminos. */
body.bk-ai-active .order-drawer{
  z-index:24000!important;
}
body.bk-ai-active .waiter-modal{
  z-index:24100!important;
}

/* Keep the cart readable on very narrow phones without colliding with Categories. */
@media(max-width:370px){
  .order-fab{
    height:44px!important;
    min-height:44px!important;
    padding:0 7px!important;
    gap:5px!important;
    font-size:8px!important;
  }
  .order-fab b{min-width:23px!important;height:23px!important;font-size:10px!important}
  .order-fab #orderFabTotal{font-size:9px!important}
}

/* =====================================================================
   v3.1.4 — CART OVERLAY CONSISTENCY
   ===================================================================== */
.order-drawer{z-index:24000!important}
.waiter-modal{z-index:24100!important}
body.order-open .order-fab{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.order-foot{
  position:sticky!important;
  bottom:0!important;
  z-index:4!important;
  flex:0 0 auto!important;
}
.show-waiter{
  font-weight:900!important;
}

/* v3.1.5 — static translated Google review showcase */
.google-review-showcase{
  margin-top:14px;
  padding:14px 12px;
  border:1px solid var(--bk-m-line);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
}
.google-review-summary{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--bk-m-line)}
.google-review-summary-copy{display:flex;flex-direction:column;gap:3px}
.google-review-label{width:max-content;padding:4px 8px;border-radius:999px;background:#fff;color:#252525;font:800 9px/1 Arial,sans-serif}
.google-review-summary strong{font-size:clamp(28px,8.5vw,38px);line-height:1}
.google-review-summary small{color:var(--bk-theme-muted);font:700 10px/1.4 Arial,sans-serif}
.google-review-stars{display:flex;gap:2px;color:var(--bk-theme-accent);font-size:18px;line-height:1}
.google-review-stars .half{opacity:.58}
.google-review-grid{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}
.google-review-card{padding:13px;border:1px solid var(--bk-m-line);border-radius:7px;background:color-mix(in srgb,var(--bk-theme-bg) 52%,transparent);cursor:default}
.google-review-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.google-review-card-head strong{font:800 12px/1.2 Arial,sans-serif;color:var(--bk-theme-heading)}
.google-review-card-head span{font-size:11px;color:var(--bk-theme-accent);letter-spacing:.04em;white-space:nowrap}
.google-review-card p{margin:0;color:var(--bk-theme-text);font:500 11px/1.55 Arial,sans-serif}
.google-review-card>small{display:block;margin-top:9px;color:var(--bk-theme-muted);font:700 8px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em}
.google-review-note{margin:10px 1px 0;color:var(--bk-theme-muted);font:500 8px/1.45 Arial,sans-serif;text-align:center;opacity:.78}

/* =====================================================================
   v3.2.2 — MOBILE STABILITY REBUILD
   Re-based on the proven v3.1.5 mobile architecture. Premium styling is
   deliberately limited to safe visual/layout changes; app logic is unchanged.
   ===================================================================== */
body.bk-premium-v320{
  --bk-m-header:58px;
  --bk-m-chipbar:48px;
  --bk-m-controls:126px;
  --bk-m-radius:16px;
  --bk-m-line:color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);
  background:var(--bk-site-bg-color,var(--bk-theme-bg));
}

/* The premium mobile app has exactly three rows: header, categories, stage. */
body.bk-premium-v320 .app{
  grid-template-rows:calc(var(--bk-m-header) + var(--bk-m-safe-top)) var(--bk-m-chipbar) minmax(0,1fr);
  height:100svh;
  min-height:100svh;
  overflow:hidden;
}

/* Header — compact and guaranteed to fit narrow phones. */
body.bk-premium-v320 .topbar{
  height:calc(var(--bk-m-header) + var(--bk-m-safe-top));
  padding:var(--bk-m-safe-top) max(7px,env(safe-area-inset-right,0px)) 0 max(7px,env(safe-area-inset-left,0px));
  gap:6px;
  background:linear-gradient(180deg,rgba(25,12,8,.98),rgba(36,17,10,.96));
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);
  box-shadow:0 8px 20px rgba(0,0,0,.22);
}
body.bk-premium-v320 .brand{min-width:0;flex:0 1 auto}
body.bk-premium-v320 .brand-mark,
body.bk-premium-v320 .brand-logo{
  width:42px;height:42px;min-width:42px;
  background:#fff7e9;border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent);
}
body.bk-premium-v320 .brand-text{display:none}
body.bk-premium-v320 .top-actions{gap:4px;min-width:0;flex:1 1 auto}
body.bk-premium-v320 .icon-btn,
body.bk-premium-v320 .lang-btn,
body.bk-premium-v320 .bk-ai-btn{
  height:36px;min-height:36px;
  padding:0 8px;
  border-radius:10px;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);
  background:rgba(255,255,255,.045);
  color:#f6ead9;
  font-size:9px;
  box-shadow:none;
}
body.bk-premium-v320 .history-btn{max-width:58px}
body.bk-premium-v320 #searchBtn{max-width:50px}
body.bk-premium-v320 .bk-ai-btn{width:40px;min-width:40px;padding:0}
body.bk-premium-v320 .lang-btn{width:32px;min-width:32px;padding:0;font-size:9px}
body.bk-premium-v320 .lang-btn.active,
body.bk-premium-v320 .bk-ai-btn.active{
  background:linear-gradient(180deg,#d9a354,#b87630);
  color:#1b1009;border-color:transparent;
}
body.bk-premium-v320 .bk-ai-btn.active .bk-ai-spark{color:#1b1009}
body.bk-premium-v320 .progress span{background:linear-gradient(90deg,#b87530,#efc780,#b87530)}

/* Horizontal category strip. It scrolls only horizontally and never changes page scroll. */
body.bk-premium-v320 .category-strip{
  position:relative;z-index:450;
  min-width:0;height:var(--bk-m-chipbar);
  padding:6px 8px 7px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(19,9,6,.95),rgba(28,13,8,.88));
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
}
body.bk-premium-v320 .category-strip-inner{
  display:flex;align-items:center;gap:7px;
  width:100%;height:100%;
  overflow-x:auto;overflow-y:hidden;
  scrollbar-width:none;-ms-overflow-style:none;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x proximity;
}
body.bk-premium-v320 .category-strip-inner::-webkit-scrollbar{display:none}
body.bk-premium-v320 .category-chip{
  flex:0 0 auto;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 15%,transparent);
  background:rgba(255,255,255,.045);
  color:#ead8c0;
  font:700 10px/1 Arial,sans-serif;
  white-space:nowrap;
  scroll-snap-align:center;
}
body.bk-premium-v320 .category-chip.active{
  background:linear-gradient(180deg,#d9a354,#b87630);
  color:#1b1009;border-color:transparent;
  box-shadow:0 6px 14px rgba(0,0,0,.18);
}
/* The chip strip replaces the old mobile category ribbon. Drawer remains available from Open menu. */
body.bk-premium-v320 .menu-ribbon{display:none!important}

/* Stage — keep a predictable reserved zone for cart/reviews/pager. */
body.bk-premium-v320 .stage{
  width:100%;height:100%;min-height:0;
  padding:7px 7px calc(var(--bk-m-controls) + var(--bk-m-safe-bottom));
  overflow:hidden;
  background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--bk-theme-accent) 5%,transparent),transparent 38%);
}
body.bk-premium-v320 .book-shell{
  width:100%;height:100%;min-height:0;
  overflow:hidden;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
body.bk-premium-v320 .page{
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.055),transparent 30%),
    linear-gradient(145deg,color-mix(in srgb,var(--bk-theme-surface) 93%,#140a06 7%),color-mix(in srgb,var(--bk-theme-bg) 97%,#100704 3%));
  color:var(--bk-theme-text);
  box-shadow:0 12px 26px rgba(0,0,0,.18);
}
body.bk-premium-v320 .page-content{
  padding:16px 11px 18px;
  scroll-padding-bottom:18px;
}
body.bk-premium-v320 .page-footer{
  margin:0 11px 9px;
  padding-top:9px;
  border-top-color:color-mix(in srgb,var(--bk-theme-accent) 13%,transparent);
  color:#c3a98b;
}
body.bk-premium-v320 .page-footer b{color:#e8b96f}
body.bk-premium-v320 .page-heading{text-align:left;margin:0 0 13px;padding:0 0 11px;border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent)}
body.bk-premium-v320 .page-heading h2{font-size:clamp(31px,9.2vw,43px);color:#fff1dc;line-height:.96;overflow-wrap:anywhere}
body.bk-premium-v320 .page-heading p{margin-top:6px;color:#d3b99a;font-size:10px;line-height:1.45}
body.bk-premium-v320 .page-kicker,
body.bk-premium-v320 .cover-eyebrow,
body.bk-premium-v320 .group-title{color:#dca75d}

/* Cover scales to the available viewport instead of forcing large premium sizes. */
body.bk-premium-v320 .page--cover .page-content{padding:0}
body.bk-premium-v320 .cover-inner{min-height:100%;padding:8px 10px 12px;justify-content:center}
body.bk-premium-v320 .cover-logo{width:clamp(52px,9svh,78px);height:clamp(52px,9svh,78px);margin-bottom:7px;background:#fff7e9}
body.bk-premium-v320 .cover-eyebrow{font-size:clamp(7px,1.05svh,9px)}
body.bk-premium-v320 .cover-inner h1{max-width:100%;margin:5px 0 3px;font-size:clamp(34px,min(11vw,7svh),52px);line-height:.90;color:#fff2df;overflow-wrap:anywhere}
body.bk-premium-v320 .ornament{width:min(190px,54%);margin:2px auto}
body.bk-premium-v320 .cover-subtitle{margin:5px 0 0;font-size:clamp(16px,min(5vw,3svh),22px);line-height:1.12;color:#dec5a6}
body.bk-premium-v320 .cover-note{max-width:96%;margin:7px auto 0;font-size:clamp(6px,1svh,8px);line-height:1.35;letter-spacing:.10em;color:#cdb293}
body.bk-premium-v320 .cover-actions{display:grid;grid-template-columns:1fr 1fr;width:min(100%,390px);gap:7px;margin-top:9px}
body.bk-premium-v320 .primary-btn,
body.bk-premium-v320 .secondary-btn{min-height:38px;border-radius:11px}
body.bk-premium-v320 .primary-btn{background:linear-gradient(180deg,#d9a354,#b87630);color:#1b1009;border-color:transparent;font-weight:800}
body.bk-premium-v320 .secondary-btn{background:rgba(255,255,255,.045);color:#f3e4cf;border-color:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent)}

/* Menu cards: explicitly reset the old compact 82px thumbnail geometry. */
body.bk-premium-v320 .dish-group{margin:0 0 16px}
body.bk-premium-v320 .group-title{margin:0 0 9px;padding-bottom:7px}
body.bk-premium-v320 .dish-list{display:grid;grid-template-columns:1fr;gap:11px}
body.bk-premium-v320 .dish{
  display:grid;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden;
  border-radius:15px;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 14%,transparent);
  background:rgba(255,255,255,.035);
  box-shadow:0 8px 18px rgba(0,0,0,.12);
}
body.bk-premium-v320 .dish-thumb{
  position:relative;
  display:block;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/8.6;
  margin:0!important;
  border-radius:0!important;
  border:0!important;
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent)!important;
  background:#21120b;
  overflow:hidden;
}
body.bk-premium-v320 .dish-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body.bk-premium-v320 .dish-copy{min-width:0;padding:12px 12px 13px!important}
body.bk-premium-v320 .dish-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}
body.bk-premium-v320 .dish-title-btn{display:block;min-width:0;max-width:100%;padding:0;border:0;background:transparent;text-align:left;overflow:hidden}
body.bk-premium-v320 .dish-title-btn span{
  display:block;
  color:#f0bd67!important;
  font-family:var(--bk-font-item)!important;
  font-size:clamp(22px,6.6vw,29px);
  line-height:.94;
  overflow-wrap:anywhere;
}
body.bk-premium-v320 .dish-meta{align-items:flex-end;gap:4px}
body.bk-premium-v320 .dish-weight{font-size:8px;color:#cbb18f}
body.bk-premium-v320 .dish-price{font-size:16px;line-height:1;color:#fff1dc;padding:4px 6px;border-radius:7px;background:rgba(0,0,0,.13)}
body.bk-premium-v320 .dish-desc{margin:7px 0 0;color:#d8c0a4;font-size:10px;line-height:1.48;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
body.bk-premium-v320 .dish-mini-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
body.bk-premium-v320 .dish-mini-tags span{min-height:22px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid color-mix(in srgb,var(--bk-theme-accent) 10%,transparent);color:#d8c4ac;font-size:8px}
body.bk-premium-v320 .dish-actions{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:7px;margin-top:10px;padding:0}
body.bk-premium-v320 .add-to-order,
body.bk-premium-v320 .dish-more{width:100%;min-height:36px;border-radius:10px;font-size:9px;font-weight:800}
body.bk-premium-v320 .add-to-order{background:linear-gradient(180deg,#d9a354,#b87630);color:#1b1009;border-color:transparent}
body.bk-premium-v320 .dish-more{background:rgba(255,255,255,.035);color:#f1dfc8;border-color:color-mix(in srgb,var(--bk-theme-accent) 14%,transparent)}
body.bk-premium-v320 .add-to-order.is-added{animation:bk322Added .55s ease}
@keyframes bk322Added{0%{transform:scale(1)}40%{transform:scale(1.025);filter:brightness(1.12)}100%{transform:scale(1);filter:brightness(1)}}

/* Bottom controls. Pager/review cue are inside stage; cart is in document root. */
body.bk-premium-v320 .trust-scroll-cue{
  left:7px;right:7px;
  bottom:calc(94px + var(--bk-m-safe-bottom));
  height:28px;
  border-radius:9px;
  background:rgba(35,17,11,.96);
  border-color:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
  color:#d6bd9e;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}
body.bk-premium-v320 .pager{
  left:50%;right:auto;
  bottom:max(5px,var(--bk-m-safe-bottom));
  transform:translateX(-50%);
  height:39px;
  padding:3px 5px;
  border-radius:11px;
  background:rgba(31,15,10,.97);
  border-color:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}
body.bk-premium-v320 .pager button{width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.055);color:#f4e4cd;border-color:color-mix(in srgb,var(--bk-theme-accent) 13%,transparent)}
body.bk-premium-v320 .page-count{min-width:66px;color:#f2e4d0;font-size:8px}
body.bk-premium-v320 .order-fab{
  position:absolute;
  left:7px!important;right:7px!important;
  bottom:calc(47px + var(--bk-m-safe-bottom))!important;
  width:auto!important;max-width:none!important;
  height:42px!important;min-height:42px!important;
  justify-content:center;
  border-radius:11px!important;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 30%,transparent)!important;
  background:linear-gradient(180deg,rgba(41,19,11,.98),rgba(31,14,9,.98))!important;
  color:#fff0dc!important;
  box-shadow:0 10px 22px rgba(0,0,0,.25)!important;
  font-size:9px!important;
  letter-spacing:.02em!important;
  z-index:520!important;
}
body.bk-premium-v320 .order-fab b{background:linear-gradient(180deg,#d9a354,#b87630)!important;color:#1b1009!important}
body.bk-premium-v320 .order-fab #orderFabTotal{font-size:9px!important}
body.order-open.bk-premium-v320 .order-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

/* Search sits below header + category strip and cannot overflow the viewport. */
body.bk-premium-v320 .search-panel{
  top:calc(var(--bk-m-safe-top) + var(--bk-m-header) + var(--bk-m-chipbar) + 4px);
  left:7px;right:7px;
  max-height:calc(100dvh - var(--bk-m-safe-top) - var(--bk-m-header) - var(--bk-m-chipbar) - 18px);
  border-radius:13px;
  background:#21110b;
  border-color:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
}
body.bk-premium-v320 .search-results{max-height:calc(100dvh - var(--bk-m-safe-top) - var(--bk-m-header) - var(--bk-m-chipbar) - 82px)}

/* Full-screen overlays: safe areas, sticky footers, no content hidden under controls. */
body.bk-premium-v320 .drawer,
body.bk-premium-v320 .order-drawer{width:100vw;max-width:100vw;height:100dvh;background:linear-gradient(180deg,#1b0e09,#28140d);color:#f7e9d5}
body.bk-premium-v320 .drawer{padding:calc(max(12px,var(--bk-m-safe-top)) + 3px) 12px calc(max(14px,var(--bk-m-safe-bottom)) + 4px)}
body.bk-premium-v320 .drawer-brand-copy strong,
body.bk-premium-v320 .drawer-head strong,
body.bk-premium-v320 .order-head strong{color:#fff0dc}
body.bk-premium-v320 .drawer-history-card,
body.bk-premium-v320 .drawer-smart-card{border-radius:13px;background:rgba(255,255,255,.04);border-color:color-mix(in srgb,var(--bk-theme-accent) 14%,transparent)}
body.bk-premium-v320 .toc button{min-height:44px;border-radius:9px;color:#f0dec8}
body.bk-premium-v320 .toc button.is-active{background:rgba(255,255,255,.06)}
body.bk-premium-v320 .order-head{position:sticky;top:0;z-index:6;background:#1b0e09;padding-left:12px;padding-right:12px}
body.bk-premium-v320 .order-items{min-height:0;padding:8px 12px 16px}
body.bk-premium-v320 .order-line{grid-template-columns:52px minmax(0,1fr) auto;gap:8px;padding:10px 0}
body.bk-premium-v320 .order-line img{width:52px;height:52px;border-radius:9px}
body.bk-premium-v320 .order-line h4{font-size:15px;color:#efbd69}
body.bk-premium-v320 .order-note{max-width:100%;height:38px;font-size:16px;border-radius:9px;background:rgba(255,255,255,.045);color:#f7ead8}
body.bk-premium-v320 .order-foot{position:sticky!important;bottom:0!important;z-index:7!important;padding:10px 12px calc(10px + var(--bk-m-safe-bottom));background:#1f100a;border-top-color:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent)}
body.bk-premium-v320 .order-actions{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7px}
body.bk-premium-v320 .order-actions button{min-height:44px;border-radius:10px}
body.bk-premium-v320 .show-waiter{background:linear-gradient(180deg,#d9a354,#b87630);color:#1b1009;border-color:transparent;font-weight:900!important}
body.bk-premium-v320 .clear-order{background:rgba(255,255,255,.045);color:#f3e3ce}
body.bk-premium-v320 .waiter-card{min-height:100dvh;padding:calc(10px + var(--bk-m-safe-top)) 11px calc(12px + var(--bk-m-safe-bottom))}

/* Dish details / chooser: bottom-sheet on phones, never a cramped desktop grid. */
body.bk-premium-v320 .smart-modal{align-items:flex-end;padding:0}
body.bk-premium-v320 .smart-modal-card{width:100%;max-width:100%;max-height:92dvh;padding:22px 13px calc(15px + var(--bk-m-safe-bottom));border-radius:16px 16px 0 0;background:#21110b;color:#f6e8d5;border-color:color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)}
body.bk-premium-v320 .dish-detail-card{display:block}
body.bk-premium-v320 .dish-detail-image-wrap{width:auto;height:min(32dvh,245px);min-height:170px;margin:-22px -13px 14px;border-radius:16px 16px 0 0}
body.bk-premium-v320 .dish-detail-image-wrap img{width:100%;height:100%;min-height:0;object-fit:cover}
body.bk-premium-v320 .dish-detail-copy h2,
body.bk-premium-v320 .chooser-card h2{font-size:clamp(30px,9vw,42px);color:#fff0dc;overflow-wrap:anywhere}
body.bk-premium-v320 .chooser-tags{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
body.bk-premium-v320 .chooser-tags::-webkit-scrollbar{display:none}
body.bk-premium-v320 .chooser-tags button{flex:0 0 auto}

/* Reviews/location remain document content and are not covered by app controls. */
body.bk-premium-v320 .site-trust-section{padding:20px 10px calc(28px + var(--bk-m-safe-bottom));background:linear-gradient(180deg,rgba(17,8,5,.97),rgba(27,13,8,.99))}
body.bk-premium-v320 .site-trust-inner{gap:14px}
body.bk-premium-v320 .review-platform-card,
body.bk-premium-v320 .location-card,
body.bk-premium-v320 .public-map-card,
body.bk-premium-v320 .google-review-showcase{border-radius:14px;background:rgba(255,255,255,.035);border-color:color-mix(in srgb,var(--bk-theme-accent) 14%,transparent)}
body.bk-premium-v320 .google-review-card{border-radius:12px;background:rgba(255,255,255,.03)}

/* Mobile-only visibility state: controls are gone once the below-app trust section enters. */
body.bk-premium-v320.site-scrolled .order-fab,
body.bk-premium-v320.trust-section-visible .order-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

/* Small / short devices. */
@media(max-width:370px){
  body.bk-premium-v320{--bk-m-header:54px;--bk-m-chipbar:44px;--bk-m-controls:116px}
  body.bk-premium-v320 .brand-mark,body.bk-premium-v320 .brand-logo{width:38px;height:38px;min-width:38px}
  body.bk-premium-v320 .icon-btn,body.bk-premium-v320 .lang-btn,body.bk-premium-v320 .bk-ai-btn{height:32px;min-height:32px}
  body.bk-premium-v320 .history-btn{max-width:51px;padding:0 5px;font-size:8px}
  body.bk-premium-v320 #searchBtn{max-width:44px;padding:0 5px;font-size:8px}
  body.bk-premium-v320 .bk-ai-btn{width:36px;min-width:36px}
  body.bk-premium-v320 .lang-btn{width:28px;min-width:28px}
  body.bk-premium-v320 .category-strip{padding:5px 6px 6px}
  body.bk-premium-v320 .category-chip{min-height:31px;padding:0 10px;font-size:9px}
  body.bk-premium-v320 .dish-title-btn span{font-size:22px}
  body.bk-premium-v320 .dish-desc{font-size:9px}
  body.bk-premium-v320 .trust-scroll-cue{bottom:calc(86px + var(--bk-m-safe-bottom));height:26px}
  body.bk-premium-v320 .order-fab{bottom:calc(44px + var(--bk-m-safe-bottom))!important;height:38px!important;min-height:38px!important}
  body.bk-premium-v320 .pager{height:36px}
  body.bk-premium-v320 .pager button{width:29px;height:29px}
}
@media(max-height:700px){
  body.bk-premium-v320{--bk-m-controls:108px}
  body.bk-premium-v320 .trust-scroll-cue{display:none!important}
  body.bk-premium-v320 .order-fab{bottom:calc(43px + var(--bk-m-safe-bottom))!important;height:37px!important;min-height:37px!important}
  body.bk-premium-v320 .pager{height:35px}
  body.bk-premium-v320 .pager button{width:28px;height:28px}
  body.bk-premium-v320 .cover-logo{width:clamp(38px,7svh,52px);height:clamp(38px,7svh,52px);margin-bottom:3px}
  body.bk-premium-v320 .cover-inner h1{font-size:clamp(28px,min(10vw,6svh),40px);margin:2px 0}
  body.bk-premium-v320 .cover-subtitle{font-size:clamp(13px,3svh,17px);margin-top:2px}
  body.bk-premium-v320 .cover-note{font-size:6px;margin-top:3px}
  body.bk-premium-v320 .cover-actions{margin-top:5px;gap:5px}
  body.bk-premium-v320 .cover-actions .primary-btn,body.bk-premium-v320 .cover-actions .secondary-btn{min-height:31px;font-size:8px}
  body.bk-premium-v320 .dish-thumb{aspect-ratio:2.15/1}
}
@media(orientation:landscape) and (max-height:520px){
  body.bk-premium-v320{--bk-m-header:48px;--bk-m-chipbar:39px;--bk-m-controls:82px}
  body.bk-premium-v320 .brand-mark,body.bk-premium-v320 .brand-logo{width:34px;height:34px;min-width:34px}
  body.bk-premium-v320 .icon-btn,body.bk-premium-v320 .lang-btn,body.bk-premium-v320 .bk-ai-btn{height:30px;min-height:30px}
  body.bk-premium-v320 .category-strip{padding:4px 6px}
  body.bk-premium-v320 .category-chip{min-height:28px;padding:0 9px;font-size:8px}
  body.bk-premium-v320 .stage{padding:4px 6px calc(var(--bk-m-controls) + var(--bk-m-safe-bottom))}
  body.bk-premium-v320 .trust-scroll-cue{display:none!important}
  body.bk-premium-v320 .order-fab{bottom:calc(39px + var(--bk-m-safe-bottom))!important;height:32px!important;min-height:32px!important;width:min(320px,calc(100vw - 14px))!important;left:auto!important;right:7px!important}
  body.bk-premium-v320 .pager{height:32px;bottom:max(3px,var(--bk-m-safe-bottom))}
  body.bk-premium-v320 .pager button{width:25px;height:25px}
  body.bk-premium-v320 .dish{grid-template-columns:112px minmax(0,1fr)!important;gap:0!important}
  body.bk-premium-v320 .dish-thumb{width:112px!important;height:100%!important;min-height:112px!important;aspect-ratio:auto;border-bottom:0!important;border-right:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent)!important}
  body.bk-premium-v320 .dish-copy{padding:9px 10px!important}
  body.bk-premium-v320 .dish-title-btn span{font-size:20px}
  body.bk-premium-v320 .dish-desc{-webkit-line-clamp:2;font-size:8px}
  body.bk-premium-v320 .dish-actions{margin-top:6px}
  body.bk-premium-v320 .add-to-order,body.bk-premium-v320 .dish-more{min-height:30px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  body.bk-premium-v320 .add-to-order.is-added{animation:none!important}
  body.bk-premium-v320 .category-strip-inner{scroll-behavior:auto!important}
}

/* Overlay ordering: Aminos sits at 22000; native app overlays must remain usable above it. */
body.bk-premium-v320 .scrim{z-index:23490}
body.bk-premium-v320 .drawer,
body.bk-premium-v320 .search-panel{z-index:23500}
body.bk-premium-v320 .order-drawer{z-index:24000!important}
body.bk-premium-v320 .waiter-modal{z-index:24100!important}
body.bk-premium-v320 .review-modal{z-index:24200}
body.bk-premium-v320 .smart-modal{z-index:24300}
body.bk-premium-v320 .history-lightbox{z-index:24400}
