/* BUN FRY v17 — menu UX, Arabic category strip, Google reviews, developer credit */

/* Keep the category strip centered exactly like FR / EN, including Arabic */
.menu-category-nav{
  width:min(1500px,calc(100% - 48px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.menu-category-strip{min-width:0!important;flex:1 1 auto!important}
html[dir="rtl"] body.customer-page .menu-category-nav{
  direction:ltr!important;
  flex-direction:row!important;
  width:min(1500px,calc(100% - 48px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  inset-inline:auto!important;
  transform:none!important;
  justify-content:center!important;
}
html[dir="rtl"] body.customer-page .menu-category-strip{
  direction:ltr!important;
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
}
html[dir="rtl"] body.customer-page .menu-category-strip .filter-btn{
  direction:rtl!important;
  unicode-bidi:plaintext;
  text-align:center!important;
}
html[dir="rtl"] body.customer-page .menu-scroll-btn{direction:ltr!important}
@media(max-width:760px){
  .menu-category-nav,
  html[dir="rtl"] body.customer-page .menu-category-nav{
    width:calc(100% - 24px)!important;
  }
}

/* Meal side choices: visible selectable cards, not a dropdown */
.bf-meal-side-block{margin:18px 0 14px}
.bf-meal-side-title{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-weight:900}
.bf-side-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bf-side-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:72px;padding:13px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035);cursor:pointer;transition:.2s ease}
.bf-side-choice:hover{transform:translateY(-2px);border-color:rgba(255,166,0,.6);background:rgba(255,166,0,.06)}
.bf-side-choice input{position:absolute;opacity:0;pointer-events:none}
.bf-side-check{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.28);display:grid;place-items:center;flex:0 0 auto;font-size:12px;color:#111}
.bf-side-choice input:checked + .bf-side-check{background:#ffa600;border-color:#ffa600}
.bf-side-choice input:checked + .bf-side-check::after{content:'✓';font-weight:950}
.bf-side-choice:has(input:checked){border-color:#ffa600;background:linear-gradient(135deg,rgba(255,166,0,.15),rgba(255,166,0,.04));box-shadow:0 8px 24px rgba(255,166,0,.10)}
.bf-side-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.bf-side-copy strong{font-size:14px}.bf-side-copy small{color:#ffa600;font-weight:900}
html[dir="rtl"] .bf-side-choice{direction:rtl;text-align:right}

/* Google Reviews — matches the supplied card reference, but remains live/dynamic */
.bf-google-reviews{margin:76px auto 42px;max-width:1500px;padding:0 30px;color:#fff}
.bf-reviews-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:38px}
.bf-reviews-kicker{color:#f7a711;letter-spacing:.32em;text-transform:uppercase;font-size:13px;font-weight:900;margin-bottom:20px}
.bf-reviews-title{font-family:'Playfair Display',serif;font-size:clamp(54px,6vw,92px);font-weight:500;line-height:.95;letter-spacing:-.035em;margin:0;color:#fff}
.bf-reviews-title strong{font-weight:600;color:#fff}
.bf-reviews-stars{font-size:34px;letter-spacing:5px;color:#f7a711;white-space:nowrap;line-height:1;padding-bottom:12px}
.bf-review-scroller-wrap{position:relative}
.bf-review-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 16px;scrollbar-width:none;overscroll-behavior-inline:contain}
.bf-review-scroller::-webkit-scrollbar{display:none}
.bf-review-card{scroll-snap-align:start;min-height:246px;padding:28px 30px 26px;border-radius:38px;border:1px solid rgba(255,255,255,.16);background:#242424;box-shadow:none;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;display:flex;flex-direction:column;box-sizing:border-box}
.bf-review-card:hover{transform:translateY(-7px);border-color:rgba(247,167,17,.58);box-shadow:0 20px 46px rgba(0,0,0,.24)}
.bf-review-stars{color:#f7a711;letter-spacing:3px;font-size:20px;margin-bottom:20px;line-height:1}
.bf-review-text{font-size:17px;line-height:1.55;color:#f5f5f5;flex:1;font-weight:550}
.bf-review-author{margin-top:28px;font-size:16px;font-weight:900;color:#fff}
.bf-review-date{font-size:12px;color:#aaa;margin-top:5px}
.bf-review-controls{display:flex;gap:9px;margin-top:10px;justify-content:flex-end}
.bf-review-arrow{width:44px;height:44px;border-radius:50%;border:1px solid rgba(247,167,17,.36);background:#141414;color:#f7a711;cursor:pointer;transition:.2s ease;font-size:22px}
.bf-review-arrow:hover{background:#f7a711;color:#111;transform:scale(1.06)}
.bf-google-link{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:#f7a711;text-decoration:none;font-weight:900}
.bf-review-status{padding:25px 28px;border:1px dashed rgba(247,167,17,.38);border-radius:24px;color:#bbb;text-align:center;background:#1d1d1d;margin-bottom:16px}

/* Developer logo only — preserve the footer text/layout exactly as it was */
.bf-dev-credit{position:relative!important;text-align:center}
.bf-dev-credit .bf-dev-logo{display:block;width:104px;height:62px;object-fit:contain;margin:0 auto 7px;filter:drop-shadow(0 7px 14px rgba(0,0,0,.22));transition:transform .25s ease}
.bf-dev-credit:hover .bf-dev-logo{transform:translateY(-2px) scale(1.03)}

@media(max-width:980px){
 .bf-review-scroller{grid-auto-columns:calc((100% - 18px)/2)}
}
@media(max-width:760px){
 .bf-side-choice-grid{grid-template-columns:1fr}
 .bf-google-reviews{padding:0 16px;margin-top:52px}
 .bf-reviews-head{align-items:flex-start;flex-direction:column;margin-bottom:26px}
 .bf-reviews-title{font-size:clamp(44px,13vw,66px)}
 .bf-reviews-stars{font-size:26px;padding-bottom:0}
 .bf-review-scroller{grid-auto-columns:86%}
 .bf-review-card{min-height:226px;padding:24px;border-radius:30px}
 .bf-dev-credit .bf-dev-logo{width:92px;height:54px}
}


/* ===== BUN FRY v19 FINAL OVERRIDES ===== */
/* Category bar: viewport-independent centering in FR / EN / AR */
body.customer-page .customer-main{margin-left:auto!important;margin-right:auto!important}
body.customer-page .menu-category-nav,
html[dir="rtl"] body.customer-page .menu-category-nav{
  width:100%!important;
  max-width:1180px!important;
  margin:22px auto 0!important;
  direction:ltr!important;
  flex-direction:row!important;
  justify-self:center!important;
  align-self:center!important;
  left:auto!important;right:auto!important;transform:none!important;
}
html[dir="rtl"] body.customer-page .menu-category-nav > *,
html[dir="rtl"] body.customer-page .menu-category-strip{direction:ltr!important}
html[dir="rtl"] body.customer-page .menu-category-strip .filter-btn{direction:rtl!important;text-align:center!important}
@media(max-width:620px){
 body.customer-page .menu-category-nav,
 html[dir="rtl"] body.customer-page .menu-category-nav{
   width:100%!important;max-width:none!important;margin:22px auto 0!important;
 }
}

/* Google reviews: match supplied reference card composition */
.bf-google-reviews{
  width:min(1400px,calc(100% - 48px));max-width:1400px;margin:74px auto 48px!important;
  padding:44px 32px 38px!important;background:#0b0b0b!important;color:#fff!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
.bf-reviews-head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:30px!important;margin-bottom:52px!important}
.bf-reviews-kicker{margin:0 0 28px!important;color:#f5a623!important;font-size:13px!important;font-weight:900!important;letter-spacing:.34em!important;text-transform:uppercase!important}
.bf-reviews-title{margin:0!important;color:#fff!important;font-family:'Playfair Display',serif!important;font-size:clamp(58px,6.1vw,94px)!important;line-height:.92!important;font-weight:600!important;letter-spacing:-.045em!important}
.bf-reviews-stars{color:#f5a623!important;font-size:36px!important;letter-spacing:4px!important;padding:0 0 12px!important;white-space:nowrap!important}
.bf-review-scroller{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:calc((100% - 66px)/4)!important;gap:22px!important;padding:0 0 12px!important}
.bf-review-card{min-height:248px!important;padding:30px 31px 28px!important;background:#242424!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:38px!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;scroll-snap-align:start!important}
.bf-review-card:hover{transform:translateY(-6px)!important;border-color:rgba(245,166,35,.55)!important;box-shadow:0 18px 36px rgba(0,0,0,.28)!important}
.bf-review-stars{color:#f5a623!important;font-size:22px!important;letter-spacing:2px!important;margin-bottom:23px!important}
.bf-review-text{color:#f4f4f4!important;font-size:17px!important;line-height:1.52!important;font-weight:650!important;flex:1!important}
.bf-review-author{margin-top:24px!important;color:#fff!important;font-size:16px!important;font-weight:900!important}
.bf-review-date{display:none!important}
.bf-review-controls{justify-content:flex-end!important;margin-top:14px!important}
.bf-review-unavailable{grid-column:auto!important;min-width:290px!important}
@media(max-width:980px){.bf-review-scroller{grid-auto-columns:calc((100% - 22px)/2)!important}}
@media(max-width:760px){
 .bf-google-reviews{width:calc(100% - 24px)!important;padding:34px 18px 28px!important;margin-top:52px!important}
 .bf-reviews-head{align-items:flex-start!important;flex-direction:column!important;margin-bottom:30px!important}
 .bf-reviews-kicker{margin-bottom:18px!important}.bf-reviews-stars{font-size:28px!important;padding:0!important}
 .bf-review-scroller{grid-auto-columns:86%!important}.bf-review-card{min-height:226px!important;padding:25px!important;border-radius:30px!important}
}


/* ===== BUN FRY v24 — modal close buttons + free delivery progress ===== */

.bf-customize-modal,
.order-modal-content,
.modal-content,
.glass-modal,
.bf-modal,
[role="dialog"]{
  position:relative;
}

.bf-modal-x,
.modal-close,
.close-modal,
.order-modal-close,
button[aria-label="Close"],
button[aria-label="Fermer"],
button[aria-label="إغلاق"]{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  left:auto!important;
  margin:0!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  line-height:1!important;
  font-size:30px!important;
  font-weight:500!important;
  z-index:9999!important;
  transform:none!important;
  box-sizing:border-box!important;
}

html[dir="rtl"] .bf-modal-x,
html[dir="rtl"] .modal-close,
html[dir="rtl"] .close-modal,
html[dir="rtl"] .order-modal-close,
html[dir="rtl"] button[aria-label="Close"],
html[dir="rtl"] button[aria-label="Fermer"],
html[dir="rtl"] button[aria-label="إغلاق"]{
  right:18px!important;
  left:auto!important;
}

@media(max-width:760px){
  .bf-modal-x,
  .modal-close,
  .close-modal,
  .order-modal-close,
  button[aria-label="Close"],
  button[aria-label="Fermer"],
  button[aria-label="إغلاق"]{
    top:12px!important;
    right:12px!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    font-size:27px!important;
  }
}

.bf-free-delivery-progress{
  margin:18px 0 4px;
  padding:16px 18px;
  border:1px solid rgba(245,166,35,.35);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(245,166,35,.09),rgba(255,255,255,.025));
}
.bf-free-delivery-progress.is-free{
  border-color:rgba(72,199,116,.55);
  background:linear-gradient(135deg,rgba(72,199,116,.12),rgba(255,255,255,.025));
}
.bf-free-delivery-text{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  font-size:14px;
  font-weight:800;
}
.bf-free-delivery-text strong{color:#f5a623}
.bf-free-delivery-progress.is-free .bf-free-delivery-text strong{color:#48c774}
.bf-free-delivery-track{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.10);
}
.bf-free-delivery-fill{
  height:100%;
  width:0;
  border-radius:inherit;
  background:linear-gradient(90deg,#f5a623,#ffbf42);
  transition:width .3s ease;
}
.bf-free-delivery-progress.is-free .bf-free-delivery-fill{
  background:linear-gradient(90deg,#48c774,#82e3a4);
}

}
/* Final modal X centering */
.bf-modal-x{
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  text-align:center!important;
  text-indent:0!important;
  font-family:Arial,sans-serif!important;
}
.bf-modal-x{
  padding-bottom:4px!important;
}

/* Exact X centering - final */
.bf-modal-x{
  padding:0!important;
  font-size:0!important;
  line-height:1!important;
  position:absolute!important;
}

.bf-modal-x::before{
  content:"×";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-54%);
  font-family:Arial,sans-serif;
  font-size:30px;
  font-weight:700;
  line-height:1;
  color:#000;
  pointer-events:none;
}

@media(max-width:760px){
  .bf-modal-x::before{
    font-size:27px;
  }
}

/* BUN FRY elegant close button */
.bf-modal-x{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid rgba(0,0,0,.06)!important;
  border-radius:50%!important;
  background:#f3f3f3!important;
  font-size:0!important;
  position:absolute!important;
  cursor:pointer!important;
  transition:background .2s ease, transform .2s ease!important;
}

.bf-modal-x::before,
.bf-modal-x::after{
  content:""!important;
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  width:18px!important;
  height:2px!important;
  background:#111!important;
  border-radius:2px!important;
  transform-origin:center!important;
}

.bf-modal-x::before{
  transform:translate(-50%,-50%) rotate(45deg)!important;
}

.bf-modal-x::after{
  transform:translate(-50%,-50%) rotate(-45deg)!important;
}

.bf-modal-x:hover{
  background:#f5a000!important;
  transform:scale(1.06)!important;
}

