/* FoodOS V9.9.8 — customer menu + material picker repair.
   1) customer document can never drift/zoom out into a blank horizontal gutter
   2) category filtering can truly hide cards even though cards use display:flex
   3) customer-facing text uses explicit dark ink on light surfaces
   4) recipe material confirmation is an unmistakable, readable button */

:root{
  --v998-ink:#172033;
  --v998-ink-soft:#475569;
  --v998-orange:#f97316;
  --v998-orange-dark:#9a3412;
  --v998-orange-soft:#fff3e8;
  --v998-orange-soft-2:#ffedd5;
}

/* ---------- Customer viewport containment ---------- */
html:has(body.public-body){
  width:100%;
  max-width:100%;
  overflow-x:clip!important;
  background:#f6f7f9;
}
body.public-body{
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  margin:0!important;
  overflow-x:clip!important;
  overscroll-behavior-x:none!important;
  color:var(--v998-ink)!important;
}
body.public-body.public-menu-page,
body.public-body.public-menu-page>header,
body.public-body.public-menu-page>main,
.v998-public-menu .public-menu-shell,
.v998-public-menu #publicOrderForm,
.v998-public-menu .public-menu-toolbar,
.v998-public-menu .public-products{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.v998-public-menu .public-menu-shell{margin-inline:auto!important;overflow-x:clip!important}
.v998-public-menu #publicOrderForm{overflow:visible!important}
.v998-public-menu .public-products{overflow:visible!important}

/* The author display:flex on product cards can override native [hidden] in Chromium.
   This rule is what makes Pizza/Burger/etc actually switch content. */
.v998-public-menu .public-product[hidden],
.v998-public-menu .v996-product-card[hidden]{display:none!important}

/* Category rail scrolls by itself; tapping a chip remains a normal click. */
.v998-public-menu .public-categories{
  width:auto!important;
  max-width:calc(100vw - 0px)!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
  touch-action:pan-x pan-y!important;
  overscroll-behavior-inline:contain!important;
  -webkit-overflow-scrolling:touch!important;
}

/* ---------- Explicit dark customer-menu typography ---------- */
.v998-public-menu .public-store-head,
.v998-public-menu .public-store-head *,
.v998-public-menu .public-welcome,
.v998-public-menu .public-welcome *,
.v998-public-menu .public-menu-toolbar,
.v998-public-menu .public-product,
.v998-public-menu .public-product *,
.v998-public-menu .public-checkout,
.v998-public-menu .public-checkout *,
.v998-public-menu .v99-customizer-card,
.v998-public-menu .v99-customizer-card *{
  color:var(--v998-ink);
}
.v998-public-menu .public-welcome h1{
  color:var(--v998-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
}
.v998-public-menu .public-welcome p{color:#c2410c!important}
.v998-public-menu .public-welcome>span{color:#596579!important}
.v998-public-menu .public-store-brand>span{
  background:var(--v998-orange-soft-2)!important;
  color:var(--v998-orange-dark)!important;
  border:1px solid #fdba74;
}
.v998-public-menu .public-categories button{
  color:#475569!important;
  background:#fff!important;
}
.v998-public-menu .public-categories button.active{
  color:var(--v998-orange-dark)!important;
  background:var(--v998-orange-soft)!important;
  border-color:#fb923c!important;
  box-shadow:0 6px 16px rgba(249,115,22,.10)!important;
}
.v998-public-menu .v996-product-add,
.v998-public-menu .v99-customizer-add,
.v998-public-menu .v9-public-footer #publicNext,
.v998-public-menu .v9-public-footer .public-submit{
  background:linear-gradient(135deg,#ffedd5,#fed7aa)!important;
  color:#7c2d12!important;
  border:1px solid #fb923c!important;
  box-shadow:0 7px 17px rgba(249,115,22,.13)!important;
}
.v998-public-menu .v996-product-card [data-public-count]{
  background:#fff7ed!important;
  color:#9a3412!important;
  border-color:#fb923c!important;
}
.v998-public-menu .public-cart-dock{
  background:#fffaf5!important;
  color:var(--v998-ink)!important;
  border:1px solid #fdba74!important;
  box-shadow:0 16px 38px rgba(15,23,42,.17)!important;
}
.v998-public-menu .public-cart-dock *{color:var(--v998-ink)!important}
.v998-public-menu .v9-public-total{
  background:#fff7ed!important;
  border:1px solid #fed7aa!important;
  color:var(--v998-ink)!important;
}
.v998-public-menu .v9-public-total span{color:#7c2d12!important}
.v998-public-menu .v996-undo-toast{
  background:#fffaf5!important;
  color:var(--v998-ink)!important;
  border-color:#fdba74!important;
}
.v998-public-menu .v996-undo-toast *{color:var(--v998-ink)!important}

/* ---------- Material picker: the orange area is a real, readable button ---------- */
.v930-sheet.open #v930ConfirmMaterial,
#v930ConfirmMaterial.v995-confirm-material{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:52px!important;
  padding:0 12px!important;
  border:2px solid var(--v998-orange)!important;
  border-radius:14px!important;
  background:#fff3e8!important;
  color:#7c2d12!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  font-size:11px!important;
  font-weight:950!important;
  line-height:1.4!important;
  white-space:normal!important;
  text-align:center!important;
  box-shadow:0 7px 18px rgba(249,115,22,.13)!important;
}
.v930-sheet.open #v930ConfirmMaterial:active{background:#ffedd5!important;transform:scale(.99)}
.v930-sheet.open #v995ConfirmAndClose{
  color:#334155!important;
  background:#f8fafc!important;
}

/* No white inherited heading in the pale recipe/customer surfaces. */
.v930-sheet-card,.v930-sheet-card *{text-shadow:none}

/* Keep the management shell legible without using pure-white text on its dark rail. */
.sidebar .brand,
.sidebar .sidebar-nav a.active,
.sidebar .sidebar-nav a:hover,
.sidebar .sidebar-collapse:hover{color:#d8cfc7!important}
.brand-mark{color:#2b211c!important}
.quick-sale,.button.primary,.button.success,.button.warning{color:#2b211c!important}

@media(max-width:720px){
  .v998-public-menu .public-menu-shell{padding-inline:10px!important}
  .v998-public-menu .public-menu-toolbar{margin-inline:-10px!important;padding-inline:10px!important}
  .v998-public-menu .public-products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v998-public-menu .public-categories{margin-inline:-10px!important;padding-inline:10px!important}
  .v930-sheet.open .v995-material-footer{
    grid-template-columns:minmax(0,1.35fr) minmax(120px,.65fr)!important;
    gap:8px!important;
  }
}

@media(max-width:380px){
  .v930-sheet.open .v995-material-footer{grid-template-columns:1fr!important}
  .v930-sheet.open #v930ConfirmMaterial,
  .v930-sheet.open #v995ConfirmAndClose{width:100%!important}
}
