/* ==========================================================================
   Food theme — design tokens, layout & components (RTL, Vazirmatn). Light + dark.
   ========================================================================== */
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}

:root{
  --c-primary:#c2410c; --c-primary-600:#9a3412; --c-primary-700:#7c2d12; --c-primary-500:#ea580c;
  --c-primary-100:#ffedd5; --c-primary-50:#fff7ed;
  --c-accent:#b91c1c; --c-accent-600:#991b1b; --c-accent-50:#fef2f2;
  --c-gold:#f59e0b; --c-leaf:#15803d; --c-leaf-50:#ecfdf3;
  --c-ok:#0b7a43; --c-warn:#b45309; --c-danger:#be123c;
  --c-ink:#1c1410; --c-text:#3f3128; --c-muted:#6b5b50; --c-line:#eadfd4; --c-line-soft:#f3ebe2;
  --c-bg:#fbf6f0; --c-surface:#ffffff; --c-surface-2:#fff9f3; --c-overlay:#ffffff;
  --r-sm:.6rem; --r-md:.95rem; --r-lg:1.3rem; --r-pill:999px;
  --sh-1:0 1px 2px rgba(60,30,10,.05),0 1px 3px rgba(60,30,10,.07);
  --sh-2:0 6px 18px rgba(60,30,10,.09);
  --sh-3:0 14px 36px rgba(124,45,18,.18);
  --ease:cubic-bezier(.2,.7,.2,1); --t:.22s var(--ease);
  --header-h:68px;
  --skeleton-a:#f1e8de; --skeleton-b:#faf4ec;
  --hero-from:#7c2d12; --hero-to:#c2410c; --hero-ink:#fff;
  --bs-font-sans-serif:'Vazirmatn',Tahoma,sans-serif;
  --bs-body-font-family:var(--bs-font-sans-serif);
  --bs-primary:#c2410c; --bs-primary-rgb:194,65,12;
  --bs-link-color:#c2410c; --bs-link-color-rgb:194,65,12; --bs-link-hover-color:#7c2d12;
  --bs-body-color:var(--c-text); --bs-border-color:var(--c-line); --bs-border-radius:var(--r-sm);
  --bs-body-bg:#fbf6f0; --bs-body-bg-rgb:251,246,240;
  --bs-offcanvas-bg:#ffffff; --bs-offcanvas-color:var(--c-text);
  --bs-dropdown-bg:#ffffff; --bs-dropdown-color:var(--c-text); --bs-dropdown-link-color:var(--c-text);
  --bs-dropdown-link-hover-bg:var(--c-primary-50); --bs-dropdown-link-hover-color:var(--c-primary-600);
  --bs-modal-bg:#ffffff; --bs-modal-color:var(--c-text);
  --bs-backdrop-bg:#1c1410; --bs-backdrop-opacity:.6;
  color-scheme:light;
}
[data-theme=dark]{
  --c-primary:#fb923c; --c-primary-600:#fdba74; --c-primary-700:#fed7aa; --c-primary-500:#fb923c;
  --c-primary-100:#4a2410; --c-primary-50:#2d1a10;
  --c-accent:#f87171; --c-accent-600:#fca5a5; --c-accent-50:#3b1616;
  --c-gold:#fbbf24; --c-leaf:#4ade80; --c-leaf-50:#12301e;
  --c-ok:#4ade80; --c-warn:#fbbf24; --c-danger:#fb7185;
  --c-ink:#fdf2e9; --c-text:#e7d8cb; --c-muted:#b7a596; --c-line:#46362b; --c-line-soft:#352920;
  --c-bg:#17110d; --c-surface:#211812; --c-surface-2:#2a1f17; --c-overlay:#251b14;
  --sh-1:0 1px 2px rgba(0,0,0,.4); --sh-2:0 6px 18px rgba(0,0,0,.45); --sh-3:0 14px 36px rgba(0,0,0,.6);
  --skeleton-a:#2a1f17; --skeleton-b:#352920;
  --hero-from:#431407; --hero-to:#9a3412;
  --bs-primary:#fb923c; --bs-primary-rgb:251,146,60;
  --bs-link-color:#fb923c; --bs-link-color-rgb:251,146,60; --bs-link-hover-color:#fdba74;
  --bs-body-color:#e7d8cb; --bs-body-bg:#17110d; --bs-body-bg-rgb:23,17,13; --bs-border-color:#46362b;
  --bs-offcanvas-bg:#251b14; --bs-offcanvas-color:#e7d8cb;
  --bs-dropdown-bg:#251b14; --bs-dropdown-color:#e7d8cb; --bs-dropdown-link-color:#e7d8cb;
  --bs-dropdown-link-hover-bg:#352920; --bs-dropdown-link-hover-color:#fdba74;
  --bs-modal-bg:#251b14; --bs-modal-color:#e7d8cb;
  --bs-backdrop-bg:#000; --bs-backdrop-opacity:.7;
  color-scheme:dark;
}
*,*::before,*::after{-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 64px)}
body{font-family:var(--bs-font-sans-serif);background:var(--c-bg);color:var(--c-text);font-size:.94rem;line-height:1.75;transition:background-color .2s,color .2s}
a{text-decoration:none;transition:color var(--t)}
img{max-width:100%;height:auto}
h1,h2,h3,h4,h5,h6{color:var(--c-ink);font-weight:700}
:focus-visible{outline:3px solid rgba(var(--c-primary-rgb),.6);outline-offset:2px;border-radius:6px}
.skip-link{position:absolute;top:-60px;inset-inline-start:1rem;background:var(--c-primary);color:var(--c-on-primary);padding:.5rem 1rem;border-radius:var(--r-sm);z-index:3000;transition:top var(--t)}
.skip-link:focus{top:.75rem;color:var(--c-on-primary)}
.min-w-0{min-width:0}
.text-muted,.text-body-secondary{color:var(--c-muted)!important}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ---------- bootstrap tweaks ---------- */
.btn{border-radius:var(--r-sm);font-weight:600;transition:all var(--t)}
.btn-primary{--bs-btn-color:var(--c-on-primary);--bs-btn-bg:var(--c-primary);--bs-btn-border-color:var(--c-primary);--bs-btn-hover-color:var(--c-on-primary);--bs-btn-hover-bg:var(--c-primary-600);--bs-btn-hover-border-color:var(--c-primary-600);--bs-btn-active-bg:var(--c-primary-700);--bs-btn-active-border-color:var(--c-primary-700);--bs-btn-active-color:var(--c-on-primary);--bs-btn-disabled-bg:var(--c-primary);--bs-btn-disabled-border-color:var(--c-primary);--bs-btn-disabled-color:var(--c-on-primary);box-shadow:0 6px 16px rgba(var(--c-primary-rgb),.25)}
[data-theme=dark] .btn-primary{box-shadow:0 6px 16px rgba(0,0,0,.35)}
.btn-primary:hover{transform:translateY(-1px)}
.btn-outline-primary{--bs-btn-color:var(--c-primary);--bs-btn-border-color:var(--c-primary);--bs-btn-hover-bg:var(--c-primary);--bs-btn-hover-border-color:var(--c-primary);--bs-btn-hover-color:var(--c-on-primary);--bs-btn-active-bg:var(--c-primary-600);--bs-btn-active-border-color:var(--c-primary-600);--bs-btn-active-color:var(--c-on-primary)}
.btn-light{--bs-btn-bg:var(--c-surface-2);--bs-btn-border-color:var(--c-line);--bs-btn-color:var(--c-ink);--bs-btn-hover-bg:var(--c-primary-50);--bs-btn-hover-border-color:var(--c-line);--bs-btn-hover-color:var(--c-primary)}
.btn-outline-secondary{--bs-btn-color:var(--c-text);--bs-btn-border-color:var(--c-line);--bs-btn-hover-bg:var(--c-primary-50);--bs-btn-hover-color:var(--c-primary);--bs-btn-hover-border-color:var(--c-line)}
.text-primary{color:var(--c-primary)!important}.bg-primary{background:var(--c-primary)!important;color:var(--c-on-primary)!important}
.form-control,.form-select{border-radius:var(--r-sm);border-color:var(--c-line);padding:.55rem .85rem;background-color:var(--c-surface);color:var(--c-text)}
.form-control::placeholder{color:var(--c-muted);opacity:.7}
.form-control:focus,.form-select:focus{border-color:var(--c-primary-500);box-shadow:0 0 0 .22rem rgba(var(--c-primary-rgb),.18);background-color:var(--c-surface);color:var(--c-text)}
.form-check-input{background-color:var(--c-surface);border-color:var(--c-muted)}
.form-check-input:checked{background-color:var(--c-primary);border-color:var(--c-primary)}
.alert{border-radius:var(--r-md);border:0}
[data-theme=dark] .alert-success{background:#12301e;color:#bbf7d0}[data-theme=dark] .alert-danger{background:#3b1616;color:#fecaca}[data-theme=dark] .alert-info{background:#14263b;color:#bfdbfe}[data-theme=dark] .alert-warning{background:#3a2a0c;color:#fde68a}
.dropdown-menu{border-radius:var(--r-md);padding:.4rem;background-color:var(--bs-dropdown-bg);color:var(--c-text);border:1px solid var(--c-line-soft);box-shadow:var(--sh-3)}
.dropdown-item{border-radius:var(--r-sm);padding:.5rem .8rem}
.dropdown-divider{border-color:var(--c-line)}
.offcanvas{--bs-offcanvas-border-width:0;border:0;background-color:var(--c-overlay);color:var(--c-text);box-shadow:0 0 40px rgba(0,0,0,.3)}
.offcanvas:not(.show):not(.showing):not(.hiding){box-shadow:none}
.offcanvas-header{background:var(--c-overlay);border-bottom:1px solid var(--c-line-soft)}
.offcanvas-body{background:var(--c-overlay);color:var(--c-text)}
.offcanvas-backdrop,.modal-backdrop{background-color:var(--c-ink)}
.offcanvas-backdrop.show,.modal-backdrop.show{opacity:.6}
[data-theme=dark] .offcanvas-backdrop,[data-theme=dark] .modal-backdrop{background-color:#000}
.modal-content{background-color:var(--c-overlay);color:var(--c-text);border:0;border-radius:var(--r-lg);box-shadow:0 20px 60px rgba(0,0,0,.4)}
.modal-header,.modal-footer{border-color:var(--c-line-soft)}
.btn-close{filter:none}[data-theme=dark] .btn-close{filter:invert(1) grayscale(1)}
.card-surface{background:var(--c-surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);border:1px solid var(--c-line-soft);padding:1.1rem}
.pagination .page-link{border-radius:var(--r-sm)!important;border:1px solid var(--c-line);color:var(--c-text);background:var(--c-surface);min-width:2.4rem;text-align:center}
.pagination .active .page-link{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}
.table{--bs-table-color:var(--c-text);--bs-table-bg:transparent;--bs-table-border-color:var(--c-line)}
.site-main{min-height:60vh;padding-bottom:2.5rem}
.address-option:has(input:checked),.choice:has(input:checked){border-color:var(--c-primary)!important;background:var(--c-primary-50)}
.skeleton{background:linear-gradient(100deg,var(--skeleton-a) 30%,var(--skeleton-b) 50%,var(--skeleton-a) 70%);background-size:300% 100%;animation:shimmer 1.4s linear infinite}
@keyframes shimmer{from{background-position:100% 0}to{background-position:-100% 0}}

/* ---------- top bar + header ---------- */
.topbar{background:linear-gradient(90deg,var(--hero-from),var(--hero-to));color:var(--hero-soft);font-size:max(12px, .78rem);padding:.38rem 0}
.topbar a{color:var(--hero-soft)}.topbar a:hover{color:#fff}.topbar strong{color:#fff}
.topbar__sep{display:inline-block;width:1px;height:12px;background:rgba(255,255,255,.4);margin:0 .8rem;vertical-align:middle}
.site-header{position:sticky;top:0;z-index:1030;background:var(--c-surface);box-shadow:0 1px 0 var(--c-line),0 6px 20px rgba(60,30,10,.05);transition:box-shadow var(--t)}
.site-header.is-stuck{box-shadow:0 1px 0 var(--c-line),0 10px 28px rgba(60,30,10,.12)}
.site-header__row{display:flex;align-items:center;gap:.8rem;height:var(--header-h)}
.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--c-ink);font-weight:800;font-size:1.15rem;flex-shrink:0}
.brand:hover{color:var(--c-primary)}
.brand img{border-radius:12px;object-fit:cover}
.brand__name{white-space:nowrap}
.brand--footer{color:var(--f-strong,#fff);margin-bottom:.9rem}.brand--footer:hover{color:var(--f-strong,#fff)}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:var(--c-line-soft);color:var(--c-ink);border-radius:var(--r-md);font-size:1.25rem;transition:all var(--t);flex-shrink:0}
.icon-btn:hover{background:var(--c-primary-100);color:var(--c-primary)}
.icon-btn--sm{width:34px;height:34px;font-size:1rem;background:transparent;color:var(--c-muted)}
.icon-btn--sm:hover{background:var(--c-accent-50);color:var(--c-danger)}
.loc-chip{display:inline-flex;align-items:center;gap:.5rem;max-width:300px;min-width:0;background:var(--c-primary-50);border:1.5px solid var(--c-primary-100);color:var(--c-ink);border-radius:var(--r-md);padding:.3rem .8rem;height:46px;font-family:inherit;text-align:start;transition:all var(--t)}
.loc-chip:hover{border-color:var(--c-primary-500)}
.loc-chip>i{font-size:1.25rem;color:var(--c-primary);flex-shrink:0}
.loc-chip__txt{display:flex;flex-direction:column;min-width:0;line-height:1.35}
.loc-chip__txt small{font-size:max(12px, .68rem);color:var(--c-muted)}
.loc-chip__txt b{font-size:max(12px, .8rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.loc-chip__badge{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:var(--c-muted)}
.loc-chip.is-in .loc-chip__badge{background:var(--c-ok)}.loc-chip.is-out .loc-chip__badge{background:var(--c-danger)}
.search{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:stretch;background:var(--c-line-soft);border:2px solid transparent;border-radius:var(--r-md);height:46px;transition:all var(--t);max-width:560px}
.search:focus-within{background:var(--c-surface);border-color:var(--c-primary-500);box-shadow:0 0 0 4px rgba(var(--c-primary-rgb),.14)}
.search__input{flex:1;border:0;background:transparent;padding:0 1rem;min-width:0;outline:0;font-size:.92rem;color:var(--c-ink)}
.search__input::placeholder{color:var(--c-muted)}
.search__input::-webkit-search-cancel-button{display:none}
.search__btn{border:0;background:var(--c-primary);color:var(--c-on-primary);width:50px;font-size:1.05rem;border-radius:calc(var(--r-md) - 3px) 0 0 calc(var(--r-md) - 3px)}
.search--mobile{height:44px;max-width:none}
.search-suggest{position:absolute;top:calc(100% + .5rem);inset-inline:0;background:var(--c-overlay);border-radius:var(--r-md);box-shadow:var(--sh-3);border:1px solid var(--c-line);overflow:hidden;z-index:1060;max-height:70vh;overflow-y:auto}
.ss-title{padding:.55rem .9rem .2rem;font-size:max(12px, .72rem);font-weight:700;color:var(--c-muted)}
.ss-chips{display:flex;flex-wrap:wrap;gap:.4rem;padding:.3rem .9rem .7rem}
.ss-chip{background:var(--c-primary-50);color:var(--c-primary);border:1px solid var(--c-primary-100);border-radius:var(--r-pill);padding:.1rem .75rem;font-size:max(12px, .8rem);font-family:inherit;cursor:pointer}
.ss-chip:hover{background:var(--c-primary-100)}
.ss-item{display:flex;gap:.75rem;align-items:center;padding:.5rem .9rem;color:var(--c-ink)}
.ss-item:hover,.ss-item.is-active{background:var(--c-primary-50)}
.ss-item img,.ss-item .ss-ph{width:44px;height:44px;object-fit:cover;border-radius:.6rem;background:var(--c-line-soft);flex:none}
.ss-name{flex:1;font-size:max(12px, .85rem);line-height:1.5}.ss-name small{display:block;color:var(--c-muted);font-size:max(12px, .72rem)}
.ss-price{font-size:max(12px, .8rem);font-weight:700;white-space:nowrap}
.ss-empty{padding:1rem;color:var(--c-muted);text-align:center;font-size:max(12px, .85rem)}
.site-header__actions{display:flex;align-items:center;gap:.5rem;margin-inline-start:auto;flex-shrink:0}
.search ~ .site-header__actions{margin-inline-start:0}
.btn-login{display:inline-flex;align-items:center;gap:.4rem;border:1.5px solid var(--c-line);border-radius:var(--r-md);padding:.5rem 1rem;color:var(--c-ink);font-weight:600;font-size:.86rem;height:46px;white-space:nowrap;background:var(--c-surface)}
.btn-login:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-50)}
.btn-account{display:inline-flex;align-items:center;gap:.4rem;border:1.5px solid var(--c-line);background:var(--c-surface);border-radius:var(--r-md);padding:.5rem .9rem;height:46px;font-weight:600;color:var(--c-ink);position:relative}
.btn-account i{font-size:1.25rem;color:var(--c-primary)}
.cart-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:0;border-radius:var(--r-md);background:var(--c-primary);color:var(--c-on-primary);font-size:1.3rem;box-shadow:0 6px 14px rgba(var(--c-primary-rgb),.3)}
.cart-btn__badge{position:absolute;top:-7px;inset-inline-start:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--r-pill);background:var(--c-accent);color:var(--c-on-accent);font-size:max(12px, .7rem);font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--c-surface);line-height:1}
.cart-btn__badge.pop{animation:pop .45s var(--ease)}
@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.35)}100%{transform:scale(1)}}
.acc-dot-badge{position:absolute;top:4px;inset-inline-start:6px;width:9px;height:9px;background:var(--c-accent);border-radius:50%;border:2px solid var(--c-surface)}
.closed-bar{background:#7f1d1d;color:#fff;text-align:center;padding:.45rem 1rem;font-size:.86rem;font-weight:600}
.closed-bar i{margin-inline-end:.4rem}

/* ---------- mobile menu / bottom nav ---------- */
.mobile-menu{width:min(340px,88vw)}
.mobile-menu__title{font-size:max(12px, .78rem);color:var(--c-muted);font-weight:700;margin:.4rem 0 .5rem}
.mobile-menu__link{display:flex;align-items:center;gap:.7rem;padding:.7rem .2rem;color:var(--c-text);border-bottom:1px solid var(--c-line-soft)}
.mobile-menu__link i{color:var(--c-primary);font-size:1.1rem}
.bottom-nav{position:fixed;inset-inline:0;bottom:0;z-index:1035;display:grid;grid-template-columns:repeat(5,1fr);background:var(--c-surface);border-top:1px solid var(--c-line);padding:.3rem .2rem calc(.3rem + env(safe-area-inset-bottom));box-shadow:0 -6px 20px rgba(60,30,10,.08)}
.bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:.1rem;background:none;border:0;color:var(--c-muted);font-size:max(12px, .68rem);font-weight:500;padding:.3rem 0;font-family:inherit;border-radius:var(--r-sm)}
.bottom-nav__item i{font-size:1.35rem;line-height:1.1}
.bottom-nav__item.active,.bottom-nav__item:hover{color:var(--c-primary)}
.bottom-nav__item--hot{color:var(--c-accent)}
.bottom-nav .cart-btn__badge{top:-6px;inset-inline-start:-10px}
@media (max-width:991.98px){body{padding-bottom:70px}}

/* ---------- cart drawer ---------- */
.cart-drawer{width:min(420px,94vw)}
.cart-drawer .offcanvas-body{display:flex;flex-direction:column}
.cart-drawer__list{padding:1rem;overflow-y:auto;flex:1}
.cart-drawer__item{display:flex;gap:.75rem;align-items:center;padding:.7rem 0;border-bottom:1px solid var(--c-line-soft)}
.cart-drawer__img{width:64px;height:64px;border-radius:var(--r-sm);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.cart-drawer__img img{width:100%;height:100%;object-fit:cover}
.cart-drawer__name{color:var(--c-ink);font-weight:600;font-size:.86rem;line-height:1.6;display:block}
.cart-drawer__meta{font-size:max(12px, .78rem);color:var(--c-muted)}
.cart-drawer__foot{border-top:1px solid var(--c-line);padding:1rem;background:var(--c-surface-2)}
.empty-state{text-align:center;padding:3rem 1rem;color:var(--c-muted)}
.empty-state>i{font-size:3.2rem;color:var(--c-primary-500);opacity:.6;display:block;margin-bottom:.5rem}
.nudge{display:flex;align-items:center;gap:.5rem;background:var(--c-leaf-50);color:var(--c-leaf);border:1px dashed var(--c-leaf);border-radius:var(--r-md);padding:.5rem .8rem;font-size:max(12px, .84rem);font-weight:600;margin-bottom:.6rem}
.disc-line{display:flex;justify-content:space-between;color:var(--c-leaf);font-size:.86rem}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;border-radius:0 0 var(--r-lg) var(--r-lg);color:var(--hero-ink);background:radial-gradient(90% 120% at 0% 0%,rgba(var(--c-accent-rgb),.35),transparent 55%),linear-gradient(135deg,var(--hero-from),var(--hero-to))}
.hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;padding:2.8rem 0}
.hero h1{color:#fff;font-size:clamp(1.8rem,3.6vw,3rem);font-weight:800;line-height:1.5;margin:0 0 .7rem}
.hero p{color:var(--hero-soft);font-size:1.05rem;max-width:34rem}
.hero__badges{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0}
.hero__badge{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:var(--r-pill);padding:.25rem .8rem;font-size:max(12px, .82rem)}
.hero__cta{display:flex;gap:.7rem;flex-wrap:wrap}
.btn-hero{background:#fff;color:var(--hero-from);font-weight:800;border-radius:var(--r-md);padding:.75rem 1.6rem;border:0;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.btn-hero:hover{background:var(--hero-soft);color:var(--hero-from);transform:translateY(-2px)}
.btn-hero-o{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7);border-radius:var(--r-md);padding:.7rem 1.4rem;font-weight:700}
.btn-hero-o:hover{background:rgba(255,255,255,.15);color:#fff}
.hero__art{position:relative;aspect-ratio:1/1;max-width:430px;justify-self:center;width:100%}
.hero__plate{position:absolute;inset:6%;border-radius:50%;background:rgba(255,255,255,.12);border:2px dashed rgba(255,255,255,.35)}
.hero__dish{position:absolute;border-radius:50%;object-fit:cover;box-shadow:0 18px 40px rgba(0,0,0,.35);border:5px solid #fff}
.hero__dish--a{width:62%;height:62%;inset-block-start:4%;inset-inline-end:4%}
.hero__dish--b{width:40%;height:40%;inset-block-end:2%;inset-inline-start:2%}
.hero__dish--c{width:30%;height:30%;inset-block-end:8%;inset-inline-end:6%}
.hero__open{display:inline-flex;align-items:center;gap:.4rem;font-size:max(12px, .82rem);font-weight:700;border-radius:var(--r-pill);padding:.2rem .8rem;background:#14532d;color:#dcfce7}
.hero__open.is-closed{background:#7f1d1d;color:#fee2e2}
@media (max-width:767.98px){
  .hero{padding:1.15rem .35rem .2rem}
  .hero__grid{grid-template-columns:1fr;padding:0 0 1.15rem;gap:1rem}
  .hero__art{max-width:240px}
}

/* ---------- category chips ---------- */
.chips{display:flex;gap:.6rem;overflow-x:auto;scrollbar-width:none;padding:.4rem 0}
.chips::-webkit-scrollbar{display:none}
.chip{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;flex:none;background:var(--c-surface);border:1.5px solid var(--c-line);color:var(--c-text);border-radius:var(--r-pill);padding:.4rem 1rem;font-weight:600;font-size:.88rem;font-family:inherit;transition:all var(--t)}
.chip i{color:var(--c-primary);font-size:1.05rem}
.chip:hover{border-color:var(--c-primary-500);color:var(--c-primary)}
.chip.is-on{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}.chip.is-on i{color:var(--c-on-primary)}
.chip-cat{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex:none;width:92px;color:var(--c-ink);font-weight:600;font-size:max(12px, .82rem);text-align:center}
.chip-cat__img{width:72px;height:72px;border-radius:50%;overflow:hidden;background:var(--c-primary-50);border:3px solid var(--c-surface);box-shadow:var(--sh-2);display:grid;place-items:center;font-size:1.8rem;color:var(--c-primary);transition:transform var(--t)}
.chip-cat__img img{width:100%;height:100%;object-fit:cover}
.chip-cat:hover .chip-cat__img{transform:translateY(-3px) scale(1.05)}
.chip-cat:hover{color:var(--c-primary)}

/* ---------- sections ---------- */
.section{padding:1.6rem 0 .4rem}
.section__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.section__title{font-size:1.2rem;font-weight:800;margin:0;display:flex;align-items:center;gap:.5rem}
.section__title i{color:var(--c-primary)}
.section__more{font-size:.86rem;font-weight:600}

/* ---------- menu cards ---------- */
.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1rem}
.mcard{position:relative;display:flex;gap:.9rem;background:var(--c-surface);border:1px solid var(--c-line-soft);border-radius:var(--r-lg);padding:.8rem;box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t),border-color var(--t);height:100%}
.mcard:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:var(--c-line)}
.mcard__img{position:relative;flex:none;width:118px;height:118px;border-radius:var(--r-md);overflow:hidden;background:var(--c-primary-50);display:grid;place-items:center;color:var(--c-primary);font-size:2.4rem}
.mcard__img img{width:100%;height:100%;object-fit:cover}
.mcard__body{display:flex;flex-direction:column;min-width:0;flex:1}
.mcard__title{font-size:1rem;font-weight:800;margin:0;line-height:1.5;color:var(--c-ink)}
.mcard__title a{color:inherit}
.mcard__desc{font-size:max(12px, .8rem);color:var(--c-muted);margin:.15rem 0 .4rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.7}
.mcard__meta{display:flex;flex-wrap:wrap;gap:.35rem;font-size:max(12px, .72rem);color:var(--c-muted);margin-bottom:.4rem}
.mcard__meta span{display:inline-flex;align-items:center;gap:.2rem}
.mcard__foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem}
.price{display:flex;flex-direction:column;line-height:1.35}
.price del{color:var(--c-muted);font-size:max(12px, .75rem)}
.price b{font-size:1.02rem;color:var(--c-ink)}.price b small{font-weight:500;color:var(--c-muted);font-size:max(12px, .7rem)}
.price__from{font-size:max(12px, .7rem);color:var(--c-muted)}
.add-btn{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;border:0;background:var(--c-primary);color:var(--c-on-primary);border-radius:var(--r-md);padding:.4rem .9rem;font-weight:700;font-size:max(12px, .84rem);font-family:inherit;min-height:38px;transition:all var(--t);box-shadow:0 4px 12px rgba(var(--c-primary-rgb),.25)}
[data-theme=dark] .add-btn{box-shadow:none}
.add-btn:hover{background:var(--c-primary-600);transform:translateY(-1px);color:var(--c-on-primary)}
.add-btn[disabled],.add-btn.is-off{background:var(--c-line);color:var(--c-muted);box-shadow:none;cursor:not-allowed;transform:none}
.mcard.is-off .mcard__img img{filter:grayscale(.9) opacity(.6)}
.mcard.is-off .mcard__title{color:var(--c-muted)}
.badges{position:absolute;top:6px;inset-inline-start:6px;display:flex;flex-direction:column;gap:3px;z-index:2}
.bdg{display:inline-flex;align-items:center;gap:2px;font-size:max(12px, .66rem);font-weight:800;border-radius:var(--r-pill);padding:.05rem .5rem;color:#fff;line-height:1.7}
.bdg--new{background:#15803d}.bdg--hot{background:#b91c1c}.bdg--best{background:var(--c-accent);color:var(--c-on-accent)}.bdg--off{background:#be123c}.bdg--veg{background:#166534}
.spicy{color:#dc2626;letter-spacing:normal}
[data-theme=dark] .spicy{color:#f87171}
.off-tag{position:absolute;bottom:6px;inset-inline-end:6px;z-index:2;background:#be123c;color:#fff;border-radius:var(--r-pill);padding:0 .5rem;font-size:max(12px, .72rem);font-weight:800}

/* ---------- menu page ---------- */
.menu-bar{position:sticky;top:var(--header-h);z-index:1020;background:var(--c-bg);border-bottom:1px solid var(--c-line);padding:.5rem 0;box-shadow:0 8px 16px -14px rgba(60,30,10,.3)}
.menu-bar .chips{padding:.15rem 0}
.menu-tools{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-bottom:.4rem}
.menu-tools .search{max-width:380px;height:42px}
@media (max-width:767.98px){
  .menu-bar{padding:.7rem 0 .45rem}
  .menu-tools .search{flex:1 0 100%;max-width:none;height:52px}
  .menu-tools .search__input{font-size:1rem}
}
.filter-chip{display:inline-flex;align-items:center;gap:.3rem;border:1.5px solid var(--c-line);background:var(--c-surface);color:var(--c-text);border-radius:var(--r-pill);padding:.2rem .85rem;font-size:max(12px, .82rem);font-weight:600;font-family:inherit}
.filter-chip.is-on{border-color:var(--c-primary);background:var(--c-primary-50);color:var(--c-primary)}
.menu-sec{padding-top:1.4rem;scroll-margin-top:calc(var(--header-h) + 118px)}
.menu-sec__head{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem}
.menu-sec__head h2{font-size:1.25rem;font-weight:800;margin:0}
.menu-sec__head small{color:var(--c-muted)}
.menu-sec__head::after{content:'';flex:1;height:1px;background:var(--c-line)}
.no-results{text-align:center;padding:2rem;color:var(--c-muted)}
.qr-banner{background:var(--c-primary-50);border:1px solid var(--c-primary-100);color:var(--c-primary-600);border-radius:var(--r-md);padding:.6rem 1rem;font-size:.86rem;display:flex;gap:.5rem;align-items:center}

/* ---------- item modal ---------- */
.item-modal .modal-dialog{max-width:920px}
.item-modal .modal-content{position:relative;overflow:hidden;padding:0;max-height:min(92vh,860px)}
.item-modal .modal-content > .im{display:flex;flex-direction:column;min-height:0;max-height:min(92vh,860px)}
.im-layout{display:grid;grid-template-columns:minmax(250px,38%) 1fr;min-height:0;flex:1}
.im-media{position:relative;min-height:280px;background:var(--c-primary-50);overflow:hidden}
.im-media img,.im-media__ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.im-media__ph{display:grid;place-items:center;font-size:4.2rem;color:var(--c-primary);background:radial-gradient(circle at 30% 20%,var(--c-primary-100),var(--c-primary-50))}
.im-media__shade{position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(transparent,rgba(28,20,16,.28));pointer-events:none}
.im-off{position:absolute;bottom:14px;inset-inline-start:14px;z-index:2;background:#be123c;color:#fff;border-radius:var(--r-pill);padding:.2rem .75rem;font-size:max(12px, .78rem);font-weight:800;box-shadow:var(--sh-2)}
.im-close{position:absolute;top:12px;inset-inline-end:12px;z-index:5;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:var(--c-ink);box-shadow:var(--sh-2);display:grid;place-items:center}
.im-close:hover{background:#fff}
.im-scroll{overflow:auto;padding:1.15rem 1.25rem 1rem;min-height:0}
.im-cat{margin:0 0 .15rem;font-size:max(12px, .75rem);font-weight:700;letter-spacing:normal;color:var(--c-primary)}
.im-scroll h2{font-size:1.45rem;font-weight:800;margin:0;line-height:1.45}
.im-price{display:flex;align-items:baseline;gap:.55rem;margin:.35rem 0 .7rem}
.im-price b{font-size:1.25rem;color:var(--c-ink);font-weight:800}
.im-price b small,.im-price del{font-size:max(12px, .78rem);font-weight:600;color:var(--c-muted)}
.im-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}
.im-facts span{display:inline-flex;align-items:center;gap:.25rem;background:var(--c-surface-2);border:1px solid var(--c-line-soft);border-radius:var(--r-pill);padding:.12rem .65rem;font-size:max(12px, .75rem);font-weight:600;color:var(--c-text)}
.im-desc{margin:0 0 .9rem;color:var(--c-text);font-size:.9rem;line-height:1.85}
.im-banner,.im-qr{display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;border-radius:var(--r-md);background:var(--c-accent-50);color:var(--c-accent);font-weight:700;padding:.7rem 1rem}
.im-group{border:0;margin:0 0 1rem;padding:0;min-inline-size:0}
.im-group__h{display:flex;justify-content:space-between;align-items:center;gap:.6rem;background:transparent;padding:0 0 .45rem;margin:0;font-weight:800;font-size:.92rem;color:var(--c-ink);width:100%;float:none}
.im-pills{display:inline-flex;gap:.3rem;flex-wrap:wrap}
.im-pill{font-weight:700;color:var(--c-muted);background:var(--c-surface-2);border:1px solid var(--c-line);border-radius:var(--r-pill);padding:.05rem .55rem;font-size:max(12px, .68rem)}
.im-pill--req{background:var(--c-accent-50);color:var(--c-accent);border-color:transparent}
.im-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.55rem}
.im-opt{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.45rem;margin:0;padding:.7rem .75rem .65rem;min-height:86px;border:1.5px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);box-shadow:var(--sh-1);cursor:pointer;transition:border-color var(--t),background var(--t),box-shadow var(--t),transform var(--t)}
.im-opt:hover{border-color:var(--c-primary-500);transform:translateY(-1px)}
.im-opt input{position:absolute;opacity:0;pointer-events:none}
.im-opt__mark{position:absolute;top:.55rem;inset-inline-end:.55rem;width:1.15rem;height:1.15rem;border-radius:50%;border:2px solid var(--c-line);display:grid;place-items:center;background:var(--c-surface)}
.im-opt:has(input[type=checkbox]) .im-opt__mark{border-radius:6px}
.im-opt--one .im-opt__mark{border-radius:50%}
.im-opt:has(input:checked){border-color:var(--c-primary);background:var(--c-primary-50);box-shadow:0 0 0 1px var(--c-primary)}
.im-opt:has(input:checked) .im-opt__mark{border-color:var(--c-primary);background:var(--c-primary)}
.im-opt:has(input:checked) .im-opt__mark::after{content:'';width:.55rem;height:.32rem;border:2px solid #fff;border-width:0 0 2px 2px;border-radius:1px;transform:rotate(-45deg) translate(1px,-1px)}
.im-opt__name{font-weight:800;color:var(--c-ink);line-height:1.45;padding-inline-end:1.4rem}
.im-opt__name small{display:block;color:var(--c-muted);font-weight:600;font-size:max(12px, .72rem)}
.im-opt__price{font-style:normal;display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;color:var(--c-ink);font-size:max(12px, .84rem)}
.im-opt__price del{color:var(--c-muted);font-size:max(12px, .72rem);font-weight:500}
.im-opt__price b{font-weight:800}
.im-opt__price small{color:var(--c-muted);font-weight:600;font-size:max(12px, .68rem)}
.im-opt.is-off{opacity:.55;cursor:not-allowed;transform:none}
.im-note{display:flex;justify-content:space-between;align-items:baseline;margin:.35rem 0 .35rem;font-weight:800;color:var(--c-ink);font-size:.9rem}
.im-note small{font-weight:600;color:var(--c-muted);font-size:max(12px, .75rem)}
.im-note__field{resize:vertical;min-height:68px}
.im-err{color:var(--c-danger);font-size:max(12px, .84rem);font-weight:700;min-height:1.2em;margin-top:.35rem}
.im-more{display:inline-flex;align-items:center;gap:.3rem;font-size:max(12px, .82rem);font-weight:700;color:var(--c-primary);margin-bottom:.2rem}
.im-foot{display:flex;gap:.75rem;align-items:center;padding:.85rem 1.15rem;border-top:1px solid var(--c-line);background:var(--c-overlay);box-shadow:0 -10px 24px rgba(28,20,16,.05)}
.im-cta{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:52px;border:0;border-radius:var(--r-md);background:var(--c-primary);color:var(--c-on-primary);font-family:inherit;font-weight:800;padding:.55rem 1rem;box-shadow:0 8px 18px rgba(var(--c-primary-rgb),.28);transition:transform var(--t),background var(--t)}
.im-cta:hover{background:var(--c-primary-600);color:var(--c-on-primary);transform:translateY(-1px)}
.im-cta:disabled{opacity:.7;transform:none;cursor:progress}
.im-cta__label{display:inline-flex;align-items:center;gap:.4rem}
.im-cta b{font-weight:800}
.qty{display:inline-flex;align-items:center;border:1.5px solid var(--c-line);border-radius:var(--r-md);overflow:hidden;background:var(--c-surface);flex:none}
.qty button{width:42px;height:48px;border:0;background:transparent;font-size:1.25rem;color:var(--c-primary);font-weight:700}
.qty button:hover{background:var(--c-primary-50)}
.qty input{width:42px;text-align:center;border:0;background:transparent;font-weight:800;color:var(--c-ink);font-family:inherit;font-size:1.05rem}
.qty input:focus{outline:0}
.qty--line button{width:34px;height:36px;font-size:1.15rem}
.qty--line button:disabled{color:var(--c-muted);opacity:.4;cursor:not-allowed}
.qty--line button:disabled:hover{background:transparent}
.qty--line input{width:30px;font-size:.95rem}
.im-skel{display:grid;grid-template-columns:38% 1fr;min-height:420px}
.im-skel__body{display:flex;flex-direction:column;gap:.7rem;padding:1.3rem}
.im-skel__line{display:block;height:16px;border-radius:8px;width:46%}
.im-skel__line--lg{width:78%;height:26px}
.im-skel__block{display:block;height:120px;border-radius:var(--r-md);margin-top:.4rem}
@media (max-width:767.98px){
  .im-layout,.im-skel{grid-template-columns:1fr}
  .im-media{min-height:230px;height:230px}
  .item-modal .modal-content,.item-modal .modal-content > .im{max-height:none;height:100%}
  .im-foot{border-radius:0}
}

/* ---------- toasts ---------- */
.toast-box{position:fixed;bottom:84px;inset-inline:0;display:flex;flex-direction:column;align-items:center;gap:.4rem;z-index:3100;pointer-events:none}
@media (min-width:992px){.toast-box{bottom:24px}}
.toast-item{background:var(--c-ink);color:var(--c-bg);border-radius:var(--r-md);padding:.6rem 1rem;box-shadow:var(--sh-3);display:flex;gap:.5rem;align-items:center;font-size:.88rem;animation:toastIn .3s var(--ease)}
.toast-item.ok i{color:#4ade80}.toast-item.err i{color:#fca5a5}

@keyframes toastIn{from{opacity:0;transform:translateY(10px)}}

/* ---------- location modal ---------- */
.loc-modal .modal-dialog{max-width:880px}
.loc-modal .modal-content{overflow:hidden}
.loc-wrap{display:grid;grid-template-columns:340px 1fr;min-height:560px}
.loc-side{padding:1.2rem;display:flex;flex-direction:column;gap:.8rem;border-inline-end:1px solid var(--c-line)}
.loc-side h2{font-size:1.2rem;margin:0}
.loc-map{position:relative;min-height:380px}
.loc-map #locMap{position:absolute;inset:0}
.loc-pin{position:absolute;left:50%;top:50%;z-index:500;transform:translate(-50%,-100%);font-size:2.6rem;color:var(--c-accent);pointer-events:none;filter:drop-shadow(0 4px 4px rgba(0,0,0,.35));transition:transform .15s}
.loc-pin.is-drag{transform:translate(-50%,-125%)}
.loc-status{border-radius:var(--r-md);padding:.65rem .9rem;font-weight:700;font-size:.9rem;display:flex;gap:.5rem;align-items:flex-start;background:var(--c-line-soft);color:var(--c-text)}
.loc-status.is-in{background:var(--c-leaf-50);color:var(--c-leaf)}
.loc-status.is-out{background:var(--c-accent-50);color:var(--c-danger)}
.loc-status small{display:block;font-weight:500;color:inherit;opacity:.9}
.loc-results{border:1px solid var(--c-line);border-radius:var(--r-md);max-height:200px;overflow:auto;background:var(--c-surface)}
.loc-results button{display:block;width:100%;text-align:start;border:0;background:transparent;padding:.55rem .8rem;font-size:max(12px, .84rem);color:var(--c-text);font-family:inherit;border-bottom:1px solid var(--c-line-soft)}
.loc-results button:hover{background:var(--c-primary-50)}
.loc-addr{font-size:.86rem;color:var(--c-muted);min-height:2.6em}
.loc-gps{position:absolute;bottom:16px;inset-inline-end:16px;z-index:600;box-shadow:var(--sh-2)}
.loc-saved{display:flex;flex-direction:column;gap:.3rem}
.loc-saved button{display:flex;gap:.5rem;align-items:center;text-align:start;border:1px solid var(--c-line);background:var(--c-surface);border-radius:var(--r-sm);padding:.4rem .7rem;font-size:max(12px, .82rem);font-family:inherit;color:var(--c-text)}
.loc-saved button:hover{border-color:var(--c-primary)}
@media (max-width:767.98px){
  .loc-modal .modal-dialog{margin:0;max-width:none;height:100%}
  .loc-modal .modal-content{height:100%;border-radius:0}
  .loc-wrap{grid-template-columns:1fr;grid-template-rows:minmax(300px,48vh) auto;min-height:0;height:100%;overflow:auto}
  .loc-map{order:-1}.loc-side{border-inline-end:0}
}

/* ---------- map generic ---------- */
.map-box{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--c-line);box-shadow:var(--sh-1);background:var(--c-primary-50)}
.leaflet-container{font-family:inherit;background:#e8e2d9}
[data-theme=dark] .leaflet-tile-pane{filter:brightness(.72) contrast(1.05) saturate(.85)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--c-overlay);color:var(--c-text)}
.marker-dot{width:18px;height:18px;border-radius:50%;background:var(--c-primary);border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.45)}
.marker-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;border:3px solid var(--c-primary);color:var(--c-primary);font-size:1.15rem;box-shadow:0 3px 10px rgba(0,0,0,.4)}
.marker-ico--rest{background:var(--c-primary);color:var(--c-on-primary)}.marker-ico--home{border-color:#15803d;color:#15803d}
.marker-ico--courier{border-color:#1d4ed8;color:#1d4ed8;transition:transform .1s linear}

/* ---------- cart / checkout ---------- */
.cart-line{display:flex;gap:.9rem;padding:.9rem 0;border-bottom:1px solid var(--c-line-soft);align-items:center}
.cart-line__img{width:84px;height:84px;border-radius:var(--r-md);overflow:hidden;flex:none;background:var(--c-primary-50);display:grid;place-items:center;color:var(--c-primary);font-size:1.8rem}
.cart-line__img img{width:100%;height:100%;object-fit:cover}
.cart-line__name{font-weight:700;color:var(--c-ink);display:block}
.cart-line__opts{font-size:max(12px, .78rem);color:var(--c-muted)}
.sum-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.92rem}
.sum-row.total{border-top:1px solid var(--c-line);margin-top:.4rem;padding-top:.7rem;font-weight:800;font-size:1.08rem;color:var(--c-ink)}
.sum-row.save{color:var(--c-leaf)}
.choice{display:flex;gap:.8rem;align-items:flex-start;border:1.5px solid var(--c-line);border-radius:var(--r-md);padding:.8rem 1rem;cursor:pointer;background:var(--c-surface);transition:border-color var(--t)}
.choice input{margin-top:.35rem;accent-color:var(--c-primary)}
.choice.is-blocked{opacity:.85;border-style:dashed}
.coverage-tag{display:inline-flex;align-items:center;gap:.3rem;font-size:max(12px, .76rem);font-weight:700;border-radius:var(--r-pill);padding:.05rem .6rem}
.coverage-tag.in{background:var(--c-leaf-50);color:var(--c-leaf)}.coverage-tag.out{background:var(--c-accent-50);color:var(--c-danger)}
.block-msg{background:var(--c-accent-50);color:var(--c-danger);border:1px solid var(--c-danger);border-radius:var(--r-md);padding:.7rem 1rem;font-weight:600;display:flex;gap:.5rem;align-items:center}

/* ---------- tracking ---------- */
.track-steps{display:flex;justify-content:space-between;gap:.2rem;list-style:none;padding:0;margin:1rem 0}
.track-steps li{flex:1;text-align:center;position:relative;font-size:max(12px, .76rem);color:var(--c-muted)}
.track-steps li::before{content:'';position:absolute;top:17px;inset-inline-start:50%;width:100%;height:4px;background:var(--c-line);z-index:0}
.track-steps li:last-child::before{display:none}
.track-steps .dot{width:36px;height:36px;border-radius:50%;background:var(--c-surface);border:3px solid var(--c-line);display:grid;place-items:center;margin:0 auto .3rem;position:relative;z-index:1;font-size:1rem}
.track-steps li.is-done .dot{background:var(--c-ok);border-color:var(--c-ok);color:#fff}
[data-theme=dark] .track-steps li.is-done .dot{color:#0b2a17}
.track-steps li.is-done::before{background:var(--c-ok)}
.track-steps li.is-current .dot{box-shadow:0 0 0 5px rgba(21,128,61,.25);animation:pulse 1.6s infinite}
.track-steps li.is-done .lbl,.track-steps li.is-current .lbl{color:var(--c-ink);font-weight:700}
@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(21,128,61,0)}}
.eta-box{display:flex;align-items:center;gap:1rem;background:linear-gradient(120deg,var(--hero-from),var(--hero-to));color:#fff;border-radius:var(--r-lg);padding:1rem 1.2rem}
.eta-box b{font-size:1.8rem;line-height:1.2;display:block}
.eta-box small{color:var(--hero-soft)}
.eta-bar{height:8px;border-radius:99px;background:rgba(255,255,255,.28);overflow:hidden;margin-top:.5rem}
.eta-bar span{display:block;height:100%;background:#fff;border-radius:99px;transition:width .6s var(--ease)}
.late-pill{background:#7f1d1d;color:#fff;border-radius:var(--r-pill);padding:0 .7rem;font-size:max(12px, .78rem);font-weight:700}

/* ---------- statuses (customer) ---------- */
.st-badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:99px;font-size:max(12px, .76rem);font-weight:700;background:var(--c-line-soft);color:var(--c-text);white-space:nowrap}
.st-pending{background:#fef3c7;color:#92400e}.st-new{background:#dbeafe;color:#1e40af}.st-accepted{background:#e0e7ff;color:#3730a3}.st-preparing{background:var(--c-primary-border);color:var(--c-primary-strong)}.st-ready{background:#fef9c3;color:#854d0e}.st-on_the_way{background:#cffafe;color:#155e75}.st-delivered{background:#dcfce7;color:#166534}.st-canceled{background:#ffe4e6;color:#9f1239}

/* ---------- pwa install banner ---------- */
.install-bar{position:fixed;top:calc(var(--header-h) + .6rem);left:50%;right:auto;bottom:auto;transform:translateX(-50%);z-index:1040;background:var(--c-overlay);color:var(--c-text);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--sh-3);padding:.8rem 1rem;display:none;gap:.8rem;align-items:center;justify-content:center;width:min(560px,calc(100% - 1.6rem));margin:0}
.install-bar.is-on{display:flex}

/* ---------- footer ---------- */
.site-footer{--f-bg:var(--c-ink);--f-text:#d6c7ba;--f-strong:#fff;--f-muted:#a8978a;--f-line:var(--c-line);--f-chip:#2d221a;--f-accent:var(--c-primary);background:var(--f-bg);color:var(--f-text);margin-top:2rem}
.footer-main{padding:2.4rem 0 1.2rem}
.site-footer a{color:var(--f-text)}.site-footer a:hover{color:var(--f-strong)}
.footer-title{color:var(--f-strong);font-size:1.2rem;margin-bottom:.8rem}
.footer-links li,.footer-contact li{margin-bottom:.4rem;display:flex;gap:.5rem;align-items:flex-start}
.footer-contact i{color:var(--f-accent)}
.footer-about{font-size:.88rem}
.footer-bottom{border-top:1px solid var(--f-line);padding:1rem 0;font-size:max(12px, .8rem);color:var(--f-muted);margin-top:1.5rem}
.demo-note{background:#3b2a12;border:1px dashed #f59e0b;color:#fde68a;border-radius:var(--r-md);padding:.6rem .8rem;font-size:max(12px, .8rem)}
.footer-social a{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--f-chip);margin-inline-end:.4rem}

/* ---------- misc ---------- */
.pcard-qr{display:none}
.theme-toggle .bi-sun{display:none}[data-theme=dark] .theme-toggle .bi-sun{display:inline}[data-theme=dark] .theme-toggle .bi-moon-stars{display:none}
.dir-ltr{direction:ltr;unicode-bidi:embed}

/* dark variants of status pills / alerts */
[data-theme=dark] .st-pending{background:#3a2a0c;color:#fde68a}[data-theme=dark] .st-new{background:#14263b;color:#bfdbfe}[data-theme=dark] .st-accepted{background:#1f1f4a;color:#c7d2fe}[data-theme=dark] .st-preparing{background:var(--c-primary-soft);color:var(--c-primary)}[data-theme=dark] .st-ready{background:#3a350c;color:#fde68a}[data-theme=dark] .st-on_the_way{background:#0c3340;color:#a5f3fc}[data-theme=dark] .st-delivered{background:#12301e;color:#bbf7d0}[data-theme=dark] .st-canceled{background:#3b1620;color:#fecdd3}
.hero__open{background:#14532d;color:#dcfce7}
.btn-hero{background:#fff;color:var(--hero-from)}
.install-bar .btn{white-space:nowrap}
.palette-note{font-size:max(12px, .8rem)}

/* checkout stepper */
.co-steps{display:flex;gap:.5rem;list-style:none;padding:0;margin:0 0 1rem;justify-content:center;flex-wrap:wrap}
.co-steps li{display:flex;align-items:center;gap:.45rem;font-size:max(12px, .85rem);color:var(--c-muted);padding:.3rem .8rem;border-radius:99px;background:var(--c-surface);border:1px solid var(--c-line)}
.co-steps li span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--c-line-soft);font-weight:700;font-size:max(12px, .78rem)}
.co-steps li.is-done span,.co-steps li.is-current span{background:var(--c-primary);color:var(--c-on-primary)}
.co-steps li.is-current{color:var(--c-ink);font-weight:700;border-color:var(--c-primary)}

/* PWA install bar */
.install-bar{position:fixed;top:calc(var(--header-h) + .6rem);left:50%;right:auto;bottom:auto;transform:translateX(-50%);z-index:1040;display:flex;align-items:center;justify-content:center;gap:.7rem;background:var(--c-overlay);color:var(--c-text);border:1px solid var(--c-line);border-radius:var(--r-md);padding:.6rem .9rem;box-shadow:var(--sh-3);width:min(560px,calc(100vw - 1.6rem));margin:0}
.install-bar[hidden]{display:none}.install-bar i.bi-phone{font-size:1.4rem;color:var(--c-primary);flex:none}.install-bar span{font-size:max(12px, .84rem);text-align:center}
@media (min-width:768px){.install-bar{top:calc(var(--header-h) + 2.5rem)}}

/* order countdowns */
.cd-line{display:flex;align-items:center;gap:.4rem;margin:.55rem 0 0;padding:.4rem .7rem;border-radius:var(--r-md);background:var(--c-primary-50);color:var(--c-primary-700);font-size:.88rem}
.cd-line b{font-variant-numeric:tabular-nums;margin-inline-start:auto;font-size:1rem}
.cd-line.is-late,.cd.is-late{color:var(--c-danger)}
.cd-line.is-late{background:color-mix(in srgb,var(--c-danger) 10%,var(--c-surface))}
.eta-box .eta-flash{animation:etaflash 1.6s ease 1}
@keyframes etaflash{0%,100%{background:transparent}30%{background:rgba(255,255,255,.28)}}
.eta-box.is-late{background:linear-gradient(120deg,#7f1d1d,#b91c1c)}

/* ---------- product page ---------- */
.pdp{padding:1.15rem 0 2.6rem}
.pdp-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0 0 1rem;font-size:max(12px, .82rem);color:var(--c-muted)}
.pdp-crumb a{color:var(--c-muted);font-weight:700}
.pdp-crumb a:hover{color:var(--c-primary)}
.pdp-crumb span{color:var(--c-ink);font-weight:700}
.pdp-hero{display:grid;grid-template-columns:minmax(280px,42%) minmax(0,1fr);gap:1.25rem;align-items:start}
.pdp-media{position:sticky;top:calc(var(--header-h) + 16px);aspect-ratio:1;border-radius:var(--r-lg);overflow:hidden;background:var(--c-primary-50);box-shadow:var(--sh-2)}
.pdp-media img,.pdp-media__ph{width:100%;height:100%;object-fit:cover}
.pdp-media__ph{display:grid;place-items:center;font-size:4.5rem;color:var(--c-primary);background:radial-gradient(circle at 30% 20%,var(--c-primary-100),var(--c-primary-50))}
.pdp-off{position:absolute;bottom:14px;inset-inline-start:14px;z-index:2;background:#be123c;color:#fff;border-radius:var(--r-pill);padding:.25rem .8rem;font-size:max(12px, .82rem);font-weight:800;box-shadow:var(--sh-2)}
.pdp-media .badges{top:14px;inset-inline-start:14px;gap:.35rem}
.pdp-media .bdg{font-size:max(12px, .74rem);padding:.12rem .65rem}
.pdp-panel{background:var(--c-surface);border:1px solid var(--c-line-soft);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:1.2rem 1.3rem .2rem;min-width:0}
.pdp-panel .im-cat a{color:inherit}
.pdp-panel .im-cat a:hover{color:var(--c-primary-600)}
.pdp-panel h1{font-size:1.75rem;font-weight:800;margin:0;line-height:1.4}
.pdp-choose{font-size:1rem;font-weight:800;margin:1.1rem 0 .8rem}
.pdp-foot{display:flex;gap:.75rem;align-items:center;margin:.6rem -1.3rem 0;padding:.9rem 1.3rem 1.05rem;background:var(--c-surface);border-top:1px solid var(--c-line);border-radius:0 0 var(--r-lg) var(--r-lg)}
.pdp-recs{margin-top:2.2rem}
@media (max-width:991.98px){
  .pdp-hero{grid-template-columns:1fr}
  .pdp-media{position:relative;top:auto;aspect-ratio:4/3;max-height:420px}
}

/* ==== 1.0.15 professional polish layer ==== */
body{letter-spacing:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,.section__title{letter-spacing:normal}
.btn{border-radius:var(--r-md);font-weight:700;transition:transform var(--t),box-shadow var(--t),background-color var(--t)}
.btn:active{transform:translateY(1px) scale(.99)}
.btn-lg{padding:.8rem 1.4rem}
:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.45);outline-offset:2px}
/* header */
.site-header{backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);box-shadow:0 1px 0 var(--c-line-soft),0 6px 20px rgba(60,30,10,.04)}
.brand__name{font-weight:900;letter-spacing:normal}
.topbar{font-size:max(12px, .78rem)}
/* hero */
.hero{border-radius:0 0 2rem 2rem}
.hero__grid{padding:3.4rem 0 3.8rem}
.hero h1{font-weight:900}
.hero p{line-height:1.9}
.hero__badge{backdrop-filter:blur(4px)}
.btn-hero{box-shadow:0 10px 24px rgba(0,0,0,.18)}
@media(max-width:767px){.hero__grid{grid-template-columns:1fr;padding:1.8rem 0 2.2rem;gap:1rem;text-align:center}.hero p{margin-inline:auto}.hero__badges,.hero__cta{justify-content:center}.hero__art{max-width:240px;order:-1}.hero__cta .btn{flex:1 1 100%}}
/* sections */
.section{margin-block:2.2rem}
.section__head{padding-bottom:.6rem;border-bottom:1px solid var(--c-line-soft)}
.section__title{font-size:1.25rem;font-weight:900}
.section__title i{width:2rem;height:2rem;border-radius:.7rem;display:inline-grid;place-items:center;background:var(--c-primary-50);font-size:1rem}
.section__more{font-weight:700;font-size:max(12px, .85rem)}
/* categories */
.chips{gap:.9rem;padding:.4rem .2rem 1rem;scroll-snap-type:x proximity}
.chip-cat{width:100px;scroll-snap-align:start;padding:.7rem .3rem;border-radius:var(--r-lg);background:var(--c-surface);border:1px solid var(--c-line-soft);box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.chip-cat:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.chip-cat__img{width:64px;height:64px;box-shadow:none;border:0}
/* menu cards */
.menu-grid{gap:1.1rem}
.mcard{border-radius:var(--r-lg)!important;border:1px solid var(--c-line-soft)!important;box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t),border-color var(--t)}
.mcard:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:var(--c-primary-100)!important}
.mcard__title{font-weight:800}
.mcard__desc{line-height:1.8}
.mcard .price b{font-size:1.05rem;font-weight:900;color:var(--c-ink)}
.add-btn{border-radius:var(--r-md)!important;font-weight:800;box-shadow:0 6px 14px rgba(var(--bs-primary-rgb),.22)}
/* pizza promo — 1.0.26 redesign: compact, theme-aware, WCAG on-primary */
.pzb-promo{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem 1.25rem;margin:1.4rem 0 1rem;padding:1.15rem 1.25rem;border-radius:1.4rem;text-decoration:none;color:var(--c-on-primary)!important;overflow:hidden;isolation:isolate;
 background:linear-gradient(125deg,var(--c-primary-strong) 0%,var(--c-primary) 55%,color-mix(in srgb,var(--c-accent) 70%,var(--c-primary)) 100%);box-shadow:var(--elev-fab,0 10px 28px rgba(var(--c-primary-rgb),.28));transition:transform .2s,box-shadow .2s}
.pzb-promo:hover{color:var(--c-on-primary)!important;transform:translateY(-2px);box-shadow:var(--elev-fab-hover,0 14px 32px rgba(var(--c-primary-rgb),.34))}
.pzb-promo:focus-visible{outline:3px solid var(--c-on-primary);outline-offset:3px}
.pzb-promo__glow{position:absolute;inset:-40% -20% auto auto;width:70%;height:140%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%);pointer-events:none;z-index:0}
.pzb-promo__art{position:relative;z-index:1;width:96px;height:96px;border-radius:24px;display:grid;place-items:center;background:color-mix(in srgb,var(--c-on-primary) 14%,transparent);color:var(--c-on-primary);font-size:2.6rem;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c-on-primary) 18%,transparent)}
.pzb-promo__art img{width:110%;height:110%;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.3));transition:transform .5s var(--ease)}
.pzb-promo:hover .pzb-promo__art img{transform:rotate(12deg) scale(1.05)}
.pzb-promo__txt{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0}
.pzb-promo__kicker{display:inline-flex;align-items:center;gap:.3rem;background:color-mix(in srgb,var(--c-on-primary) 16%,transparent);border:1px solid color-mix(in srgb,var(--c-on-primary) 28%,transparent);border-radius:999px;padding:.12rem .65rem;font-size:max(12px, .72rem);font-weight:800;color:var(--c-on-primary)}
.pzb-promo__txt b{font-size:1.22rem;font-weight:900;line-height:1.35;color:var(--c-on-primary)}
.pzb-promo__txt small{color:color-mix(in srgb,var(--c-on-primary) 82%,transparent);line-height:1.7;font-size:.86rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pzb-promo__tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.15rem}
.pzb-promo__tags em{font-style:normal;display:inline-flex;align-items:center;gap:.25rem;font-size:max(12px, .72rem);font-weight:700;padding:.15rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--c-on-primary) 14%,transparent);color:var(--c-on-primary)}
.pzb-promo__cta{display:inline-flex;align-items:center;gap:.4rem;margin-top:.45rem;padding:.45rem .95rem;border-radius:999px;background:var(--c-on-primary);color:var(--c-primary-strong)!important;font-weight:800;font-size:.88rem;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.pzb-promo:hover .pzb-promo__cta{filter:brightness(1.05)}
@media(max-width:576px){
  .pzb-promo{grid-template-columns:64px 1fr;padding:1rem;gap:.85rem;border-radius:1.2rem}
  .pzb-promo__art{width:64px;height:64px;border-radius:18px;font-size:1.7rem}
  .pzb-promo__txt b{font-size:1.05rem}
  .pzb-promo__txt small{-webkit-line-clamp:2;font-size:max(12px, .8rem)}
  .pzb-promo__cta{width:100%;justify-content:center;margin-top:.35rem}
}
@media(min-width:992px){
  .pzb-promo{padding:1.35rem 1.6rem;gap:1.4rem}
  .pzb-promo__art{width:120px;height:120px;font-size:3.2rem}
  .pzb-promo__txt b{font-size:1.45rem}
}
/* footer */
.site-footer{border-radius:2rem 2rem 0 0;margin-top:3rem}
.site-footer h2,.site-footer h3,.site-footer h4,.site-footer h5,.site-footer h6{font-weight:800;letter-spacing:normal}
/* forms + checkout */
.form-control,.form-select{border-radius:var(--r-md);padding:.65rem .9rem;border-color:var(--c-line)}
.form-control:focus,.form-select:focus{border-color:var(--c-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.15)}
.card-surface{border-radius:1.25rem;padding:1.25rem}
.page-checkout .card-surface{box-shadow:var(--sh-2)}
/* mobile */
@media(max-width:767px){.container{padding-inline:1rem}.section{margin-block:1.6rem}.section__title{font-size:1.08rem}.menu-grid{grid-template-columns:1fr;gap:.8rem}main{padding-bottom:4.5rem}}
.bottom-nav{box-shadow:0 -6px 24px rgba(60,30,10,.08);backdrop-filter:blur(10px)}

/* ==== 1.0.17 global size scale-down ==== */
html{font-size:15px}
@media(max-width:767px){html{font-size:14px}}
.btn{--bs-btn-padding-y:.42rem;--bs-btn-padding-x:.9rem;--bs-btn-font-size:.92rem}
.btn-lg{--bs-btn-padding-y:.6rem;--bs-btn-padding-x:1.1rem;--bs-btn-font-size:1rem;padding:.6rem 1.1rem}
.btn-sm{--bs-btn-padding-y:.25rem;--bs-btn-padding-x:.6rem;--bs-btn-font-size:max(12px, .8rem)}
.form-control,.form-select{padding:.5rem .8rem;font-size:.92rem}
.card-surface{padding:1rem}
.section{margin-block:1.8rem}
.hero__grid{padding:2.6rem 0 3rem}
.hero h1{font-size:clamp(1.5rem,3vw,2.5rem)}
@media(max-width:767px){.hero__grid{padding:1.4rem 0 1.8rem}.section{margin-block:1.3rem}.card-surface{padding:.85rem}.pzb-promo{padding:1.1rem 1rem}}

/* 1.0.20 custom-pizza recipe chips (cart + drawer) */
.pz-chips{direction:rtl;display:flex;flex-wrap:nowrap;gap:.35rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:.25rem 0 .3rem;margin:.2rem 0;max-width:100%;mask-image:linear-gradient(to left,#000 88%,transparent)}
.pz-chips::-webkit-scrollbar{display:none}
.pz-chip{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .5rem .18rem .3rem;border-radius:999px;background:var(--c-surface-2,var(--c-surface-2));border:1px solid rgba(0,0,0,.06);font-size:max(12px, .74rem);line-height:1.4;white-space:nowrap;color:inherit}
.pz-chip img{width:22px;height:22px;border-radius:50%;object-fit:cover;background:#fff}
.pz-chip>i{font-size:.45rem;color:var(--c-primary,var(--c-primary));margin-inline:.2rem}
.pz-chip__x{font-style:normal;font-size:max(12px, .62rem);font-weight:800;color:#fff;background:var(--c-primary,var(--c-primary));border-radius:999px;padding:0 .35rem}
.pz-chip__h{font-style:normal;font-size:max(12px, .62rem);color:var(--c-primary,var(--c-primary));border:1px solid currentColor;border-radius:999px;padding:0 .3rem}
[data-theme=dark] .pz-chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.1)}
.cart-line__body,.cart-drawer__body,.cart-drawer__info{min-width:0}
/* 1.0.22 location sheet */
.lm .modal-dialog{max-width:940px}
.lm .modal-content{border:0;border-radius:22px;overflow:hidden;box-shadow:0 30px 70px rgba(20,10,5,.3);direction:rtl;text-align:right}
.lm.fade .modal-dialog{transition:transform .28s cubic-bezier(.2,.9,.3,1),opacity .2s;transform:translateY(16px) scale(.98)}
.lm.show .modal-dialog{transform:none}
.lm-head{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border-bottom:1px solid var(--c-line);background:var(--c-surface)}
.lm-head__ic{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--c-primary);color:var(--c-on-primary);font-size:1.15rem}
.lm-head__t{flex:1;min-width:0;line-height:1.4}.lm-head__t h2{font-size:1.05rem;font-weight:800;margin:0}.lm-head__t small{font-size:max(12px, .74rem);color:var(--c-muted)}
.lm-close{flex:0 0 40px;height:40px;border-radius:50%;border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-text);display:grid;place-items:center;font-size:1.05rem;transition:background .2s,transform .15s}
.lm-close:hover{background:var(--c-line-soft)}.lm-close:active{transform:scale(.92)}
.lm .lm-body{display:grid;grid-template-columns:1fr 340px;min-height:540px}
.lm-map{position:relative;min-height:420px;background:#e8e4df}
.lm-map #locMap{position:absolute;inset:0}
.lm-search{position:absolute;top:12px;inset-inline:12px;z-index:700;display:flex;align-items:center;gap:.5rem;background:var(--c-surface);border-radius:14px;padding:0 .8rem;box-shadow:0 6px 18px rgba(0,0,0,.14);height:46px}
.lm-search>i{color:var(--c-muted)}
.lm-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:.9rem;height:100%;color:var(--c-text);direction:rtl;text-align:right}
.lm-results{position:absolute;top:52px;inset-inline:0;border:0;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.16);max-height:260px}
.lm-pin{position:absolute;left:50%;top:50%;z-index:500;pointer-events:none}
.lm .loc-pin{position:absolute;left:0;top:0;transform:translate(-50%,-100%);font-size:2.7rem;color:var(--c-primary);filter:drop-shadow(0 5px 5px rgba(0,0,0,.3));transition:transform .18s}
.lm .loc-pin.is-drag{transform:translate(-50%,-128%)}
.lm-pin__dot{position:absolute;left:0;top:0;width:10px;height:5px;border-radius:50%;background:rgba(0,0,0,.35);transform:translate(-50%,-50%)}
.lm-gps{position:absolute;bottom:16px;inset-inline-start:12px;z-index:600;display:flex;align-items:center;gap:.4rem;border:0;border-radius:999px;padding:.55rem .95rem;background:var(--c-surface);color:var(--c-primary);font:inherit;font-weight:700;font-size:max(12px, .82rem);box-shadow:0 6px 18px rgba(0,0,0,.16)}
.lm-gps i{font-size:1.05rem}
.lm .leaflet-control-zoom{margin-top:70px!important}
.lm-side{padding:1rem;display:flex;flex-direction:column;gap:.75rem;border-inline-start:1px solid var(--c-line);background:var(--c-surface);border-inline-end:0}
.lm-addr{display:flex;gap:.6rem;align-items:flex-start;padding:.75rem;border-radius:14px;background:var(--c-line-soft)}
.lm-addr>i{font-size:1.15rem;color:var(--c-primary);margin-top:.15rem}
.lm-addr small,.lm-label{display:block;font-size:max(12px, .7rem);color:var(--c-muted);margin-bottom:.15rem}
.lm .loc-addr{font-size:.88rem;color:var(--c-text);min-height:1.5em;line-height:1.7}
.lm .loc-status{border-radius:12px;font-size:max(12px, .84rem)}
.lm-saved{display:flex;flex-direction:column;gap:.35rem}
.lm-saved:empty{display:none}.lm-saved-wrap:has(.lm-saved:empty){display:none}
.lm-saved button{display:flex;gap:.5rem;align-items:center;width:100%;text-align:right;border:1px solid var(--c-line);background:var(--c-surface);border-radius:12px;padding:.5rem .7rem;font:inherit;font-size:max(12px, .8rem);color:var(--c-text);transition:border-color .2s}
.lm-saved button i{color:var(--c-primary)}.lm-saved button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lm-actions{margin-top:auto;display:flex;flex-direction:column;gap:.4rem;padding-top:.3rem}
.lm-confirm{height:48px;border-radius:14px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:.4rem}
.lm-clear{border:0;background:transparent;color:var(--c-muted);font:inherit;font-size:max(12px, .76rem);padding:.25rem}
.lm-clear:hover{color:var(--c-danger)}
body.modal-open .ai-fab{opacity:0;pointer-events:none}
@media(max-width:767.98px){
  .lm .modal-dialog{margin:0;max-width:none;height:100%;align-items:flex-end;display:flex}
  .lm.fade .modal-dialog{transform:translateY(100%)}.lm.show .modal-dialog{transform:none}
  .lm .modal-content{height:calc(100dvh - 8px);max-height:none;border-radius:22px 22px 0 0;display:flex;flex-direction:column}
  .lm .lm-body{display:flex;flex-direction:column;flex:1;min-height:0;grid-template-columns:none;overflow:hidden;height:auto}
  .lm-map{flex:1;min-height:0;order:0}
  .lm-side{flex:0 0 auto;border-inline-start:0;border-top:1px solid var(--c-line);padding:.8rem .9rem calc(.8rem + env(safe-area-inset-bottom));gap:.55rem;max-height:52%;overflow:auto;border-radius:18px 18px 0 0;margin-top:-14px;position:relative;z-index:800;box-shadow:0 -8px 20px rgba(0,0,0,.08)}
  .lm-saved{flex-direction:row;overflow-x:auto;scrollbar-width:none}.lm-saved button{flex:0 0 auto;width:auto;max-width:240px}
  .lm-actions{position:sticky;bottom:0;background:var(--c-surface)}
  .lm-gps span{display:none}.lm-gps{padding:.65rem;bottom:26px}
  .lm .leaflet-control-zoom{display:none}
}
[data-theme=dark] .lm-map{background:#222}
/* 1.0.22 full-screen app mode for /menu/ */
.app-top{position:sticky;top:0;z-index:1030;display:flex;align-items:center;gap:.6rem;height:52px;padding:0 .75rem;background:color-mix(in srgb,var(--c-bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--c-line)}
.app-top__title{flex:1;min-width:0;text-align:center;font-weight:800;font-size:.98rem;color:var(--c-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app-top__title i{color:var(--c-primary)}
.app-top__btn{position:relative;overflow:visible;width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink);font-size:1.05rem;text-decoration:none}
.app-top__btn .cart-btn__badge{position:absolute;top:-8px;left:-9px;right:auto;inset-inline-start:auto;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--c-primary);color:var(--c-on-primary);font-size:max(12px, .64rem);font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1.5px var(--c-bg);pointer-events:none}
.app-top__btn .cart-btn__badge[hidden]{display:none}
body.menu-app{--header-h:52px;padding-bottom:0!important}
.menu-app .site-main{padding-top:0!important;padding-bottom:1.5rem!important}
.menu-app .menu-bar{top:52px}
.menu-app .bottom-nav{display:none!important}
.menu-app .ai-fab{bottom:20px}

/* 1.0.22 light footer (theme-aware) */
:root .site-footer{--f-bg:var(--c-primary-soft);--f-text:var(--c-text);--f-strong:var(--c-ink);--f-muted:var(--c-muted);--f-line:var(--c-primary-border);--f-chip:var(--c-surface);--f-accent:var(--c-primary);border-top:1px solid var(--c-line)}
:root .site-footer .footer-social a{color:var(--f-strong);box-shadow:var(--sh-1)}
:root .site-footer .demo-note{background:#fff7e6;color:#7a4a05;border-color:#f0b54a}
[data-theme=dark] .site-footer{--f-bg:var(--c-surface);--f-text:var(--c-text);--f-strong:var(--c-ink);--f-muted:var(--c-muted);--f-line:var(--c-line);--f-chip:var(--c-surface-2);--f-accent:var(--c-primary);border-top:1px solid var(--c-line)}
[data-theme=dark] .site-footer .demo-note{background:#3b2a12;color:#fde68a;border-color:#f59e0b}

/* 1.0.22 dark readability: tokens now come from the generated palette */
[data-theme=dark] .text-muted,[data-theme=dark] .text-body-secondary,[data-theme=dark] small.text-muted{color:var(--c-muted)!important}
[data-theme=dark] .card,[data-theme=dark] .pcard,[data-theme=dark] .cart-line,[data-theme=dark] .cart-drawer__item,[data-theme=dark] .offcanvas,[data-theme=dark] .modal-content{border-color:var(--c-line)}
[data-theme=dark] .pcard,[data-theme=dark] .card{background:var(--c-surface);box-shadow:0 0 0 1px var(--c-line),0 6px 18px rgba(0,0,0,.35)}
[data-theme=dark] .form-control,[data-theme=dark] .form-select,[data-theme=dark] .search__input,[data-theme=dark] textarea,[data-theme=dark] input[type=search],[data-theme=dark] input[type=text],[data-theme=dark] input[type=tel],[data-theme=dark] input[type=email],[data-theme=dark] input[type=number],[data-theme=dark] input[type=password]{background:var(--c-bg);color:var(--c-ink);border-color:var(--c-line)}
[data-theme=dark] .form-control:focus,[data-theme=dark] .form-select:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px rgba(var(--c-primary-rgb),.25)}
[data-theme=dark] ::placeholder{color:var(--c-muted)!important;opacity:1}
[data-theme=dark] .btn-light{background:var(--c-surface-2);border-color:var(--c-line);color:var(--c-ink)}
[data-theme=dark] .btn-outline-secondary{color:var(--c-text);border-color:var(--c-line)}
[data-theme=dark] .btn-primary{--bs-btn-bg:var(--c-primary);--bs-btn-border-color:var(--c-primary);--bs-btn-hover-bg:var(--c-primary-hover);--bs-btn-hover-border-color:var(--c-primary-hover);--bs-btn-color:var(--c-on-primary);--bs-btn-hover-color:var(--c-on-primary);--bs-btn-disabled-bg:color-mix(in srgb,var(--c-primary) 45%,var(--c-surface));--bs-btn-disabled-border-color:color-mix(in srgb,var(--c-primary) 45%,var(--c-surface))}
[data-theme=dark] .pcard b,[data-theme=dark] .price,[data-theme=dark] .cart-line__price,[data-theme=dark] .js-line-total{color:var(--c-primary)}
[data-theme=dark] .chip,[data-theme=dark] .filter-chip{background:var(--c-surface-2);border-color:var(--c-line);color:var(--c-text)}
[data-theme=dark] .chip.is-on,[data-theme=dark] .chip.is-on i,[data-theme=dark] .chip.is-active,[data-theme=dark] .chip.active{background:var(--c-primary);color:var(--c-on-primary);border-color:var(--c-primary)}
[data-theme=dark] .badge,[data-theme=dark] .cart-btn__badge{color:var(--c-on-primary)}
[data-theme=dark] .cart-btn__badge{background:var(--c-primary)}
[data-theme=dark] .pz-chip{background:var(--c-surface-2);border-color:var(--c-line);color:var(--c-ink)}
[data-theme=dark] .menu-bar,[data-theme=dark] .app-top{background:color-mix(in srgb,var(--c-bg) 92%,transparent);border-color:var(--c-line)}
/* assistant + builder + modals in dark */
[data-theme=dark] .ai-panel{background:var(--c-surface);color:var(--c-ink)}
[data-theme=dark] .ai-msg--bot{background:var(--c-surface-2);color:var(--c-ink);border-color:var(--c-line)}
[data-theme=dark] .ai-msg--me,[data-theme=dark] .ai-head,[data-theme=dark] .ai-fab,[data-theme=dark] .ai-send,[data-theme=dark] .ai-btn--pri{background:var(--c-primary);color:var(--c-on-primary)}
[data-theme=dark] .ai-card__ttl small,[data-theme=dark] .ai-card__d{color:var(--c-muted)}
[data-theme=dark] .ai-card__price,[data-theme=dark] .ai-card__b b{color:var(--c-primary)}
[data-theme=dark] .ai-ing{background:var(--c-bg);border-color:var(--c-line);color:var(--c-ink)}
[data-theme=dark] .ai-btn--ghost{background:rgba(var(--c-primary-rgb),.14);color:var(--c-primary)}
[data-theme=dark] .ai-qr button{background:var(--c-surface);color:var(--c-primary);border-color:var(--c-primary)}
[data-theme=dark] .ai-qr button:hover{background:var(--c-primary);color:var(--c-on-primary)}
[data-theme=dark] .ai-form textarea{background:var(--c-bg);border-color:var(--c-line);color:var(--c-ink)}
[data-theme=dark] .lm-head,[data-theme=dark] .lm-side,[data-theme=dark] .lm-search,[data-theme=dark] .lm-gps,[data-theme=dark] .lm-close,[data-theme=dark] .lm-saved button{background:var(--c-surface);color:var(--c-ink);border-color:var(--c-line)}
[data-theme=dark] .lm-addr{background:var(--c-surface-2)}
[data-theme=dark] .lm-search input{color:var(--c-ink)}
[data-theme=dark] .pzb-top,[data-theme=dark] .pzb-bar{background:color-mix(in srgb,var(--c-surface) 94%,transparent);border-color:var(--c-line)}
[data-theme=dark] .pzb-top__btn{background:var(--c-surface-2);border-color:var(--c-line);color:var(--c-ink)}
[data-theme=dark] .filter-chip.is-on{background:rgba(var(--c-primary-rgb),.16);border-color:var(--c-primary);color:var(--c-primary)}
/* ---- 1.0.23 builder FAB (left, opposite the assistant) ---- */
.pzb-fab{position:fixed;left:16px;bottom:20px;z-index:1039;display:flex;align-items:center;gap:.45rem;border-radius:999px;padding:.4rem .45rem .4rem .95rem;color:var(--c-on-primary)!important;text-decoration:none;font-weight:800;font-size:.88rem;background:var(--c-primary);box-shadow:var(--elev-fab,0 6px 16px rgba(0,0,0,.25));transition:transform .2s,opacity .2s}
.pzb-fab:hover{transform:translateY(-2px)}
.pzb-fab__ic{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18)}
@media(max-width:991px){.pzb-fab{bottom:78px;padding:.4rem}.pzb-fab__t{display:none}}
.menu-app .pzb-fab{bottom:20px}
body.ai-open .pzb-fab,body.modal-open .pzb-fab,body.drawer-open .pzb-fab{opacity:0;pointer-events:none}
[data-theme=dark] .pzb-fab{background:var(--c-primary)}
/* ---- 1.0.23 دنگی دونگی ---- */
.dongi-wrap{max-width:640px;margin-inline:auto}
.dongi-head{display:flex;gap:.8rem;align-items:center;margin:.4rem 0 1rem}
.dongi-head__ic{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--c-primary);color:var(--c-on-primary,#fff);font-size:1.35rem}
.dongi-total{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:12px;background:var(--c-primary-50,var(--c-primary-soft));margin-bottom:1rem}
.dongi-total strong{font-size:1.15rem;color:var(--c-primary)}
.dongi-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:1rem}
.dongi-modes input{position:absolute;opacity:0}
.dongi-modes span{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem;border:1.5px solid var(--c-line);border-radius:12px;cursor:pointer;font-weight:700;font-size:.88rem}
.dongi-modes span i{font-size:1.15rem}
.dongi-modes input:checked+span{border-color:var(--c-primary);background:var(--c-primary);color:var(--c-on-primary,#fff)}
.dongi-modes input:focus-visible+span{outline:2px solid var(--c-primary);outline-offset:2px}
.dongi-count{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;font-weight:700}
.dongi-step{display:flex;align-items:center;gap:.6rem}
.dongi-step button{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--c-primary);background:transparent;color:var(--c-primary);font-size:1.2rem;line-height:1}
.dongi-step b{min-width:1.5rem;text-align:center;font-size:1.1rem}
.dongi-rows{display:grid;gap:.5rem}
.dongi-row{display:grid;grid-template-columns:34px 1fr 1fr;gap:.4rem;align-items:center;padding:.55rem;border:1px solid var(--c-line);border-radius:12px}
.dongi-row__n{grid-row:span 2;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--c-primary-50,var(--c-primary-soft));color:var(--c-primary);font-weight:800;font-size:max(12px, .8rem)}
.dongi-row__v{position:relative}.dongi-row__v small{position:absolute;left:.6rem;top:50%;transform:translateY(-50%);color:var(--c-muted);font-size:max(12px, .75rem)}
.dongi-row__v input{padding-left:3rem}
.dongi-row__amt{text-align:left;font-weight:800;color:var(--c-primary);font-size:.9rem;align-self:center}
.dongi-sum{margin-top:.7rem;padding:.55rem .8rem;border-radius:10px;background:rgba(22,163,74,.1);color:#15803d;font-weight:700;font-size:.88rem}
.dongi-sum.is-bad{background:rgba(220,38,38,.1);color:#b91c1c}
.dongi-alert{display:flex;gap:.5rem;align-items:center;padding:.75rem 1rem;border-radius:12px;margin-bottom:.8rem;font-weight:700}
.dongi-alert.is-ok{background:rgba(22,163,74,.12);color:#15803d}.dongi-alert.is-bad{background:rgba(220,38,38,.1);color:#b91c1c}
.dongi-bar{display:block;height:8px;border-radius:99px;background:var(--c-line);overflow:hidden}
.dongi-bar i{display:block;height:100%;background:#16a34a;border-radius:inherit;transition:width .4s}
.dongi-bar--lg{height:12px}
.dongi-list{display:grid;gap:.55rem}
.dongi-share{display:grid;grid-template-columns:40px 1fr auto;grid-template-areas:"av who amt" "av who act";gap:.2rem .6rem;align-items:center;padding:.75rem .85rem;border-radius:14px;background:var(--c-surface,#fff);border:1px solid var(--c-line)}
.dongi-share__av{grid-area:av;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--c-primary-50,var(--c-primary-soft));color:var(--c-primary);font-weight:800}
.dongi-share__who{grid-area:who;min-width:0}.dongi-share__who strong{display:block}.dongi-share__who small{color:var(--c-muted)}
.dongi-share__amt{grid-area:amt;text-align:left;color:var(--c-primary)}
.dongi-share>.btn,.dongi-share>.dongi-tag{grid-area:act;justify-self:end}
.dongi-share.is-paid{border-color:rgba(22,163,74,.45);background:rgba(22,163,74,.06)}
.dongi-share.is-paid .dongi-share__av{background:#15803d;color:#fff}
.dongi-share.is-res{border-style:dashed;border-color:#d97706}
.dongi-tag{display:inline-flex;gap:.3rem;align-items:center;font-size:max(12px, .78rem);font-weight:700;padding:.2rem .6rem;border-radius:99px}
.dongi-tag.is-ok{background:rgba(22,163,74,.14);color:#15803d}.dongi-tag.is-res{background:rgba(217,119,6,.14);color:#b45309}
.badge-soft{font-size:max(12px, .68rem);padding:.1rem .45rem;border-radius:99px;background:var(--c-primary-50,var(--c-primary-soft));color:var(--c-primary);font-weight:700}
.dongi-link{display:flex;gap:.4rem}
.dongi-sharebtns{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin-top:.6rem}
.dongi-sharebtns a,.dongi-sharebtns button{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem .2rem;border-radius:12px;border:1px solid var(--c-line);background:transparent;color:inherit;text-decoration:none;font-size:max(12px, .78rem);font-weight:700}
.dongi-sharebtns i{font-size:1.25rem}.is-wa i{color:#25d366}.is-tg i{color:#229ed9}.is-sms i{color:var(--c-primary)}
.dongi-opt{display:flex;gap:.6rem;align-items:center;margin-top:.4rem;padding:.7rem .8rem;border:1.5px dashed var(--c-primary);border-radius:12px;cursor:pointer}
.dongi-opt__ic{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--c-primary);color:var(--c-on-primary,#fff)}
.dongi-mini{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;padding:.6rem .8rem;border-radius:12px;border:1px solid var(--c-line);text-decoration:none;color:inherit;width:100%}
.dongi-mini .dongi-bar{flex-basis:100%}
@media(max-width:480px){.dongi-row{grid-template-columns:30px 1fr}.dongi-row__v,.dongi-row__amt{grid-column:2}.dongi-row input[name=phone]{grid-column:2}}
[data-theme=dark] .dongi-total,[data-theme=dark] .dongi-row__n,[data-theme=dark] .dongi-share__av,[data-theme=dark] .badge-soft{background:rgba(var(--c-primary-rgb),.14);color:var(--c-primary)}
[data-theme=dark] .dongi-total strong,[data-theme=dark] .dongi-share__amt,[data-theme=dark] .dongi-row__amt{color:var(--c-primary)}
[data-theme=dark] .dongi-sum,[data-theme=dark] .dongi-alert.is-ok,[data-theme=dark] .dongi-tag.is-ok{color:#4ade80}
[data-theme=dark] .dongi-sum.is-bad,[data-theme=dark] .dongi-alert.is-bad{color:#f87171}
[data-theme=dark] .dongi-modes input:checked+span,[data-theme=dark] .dongi-head__ic,[data-theme=dark] .dongi-opt__ic{background:var(--c-primary);color:var(--c-on-primary)}
.dongi-link .form-control{min-width:0;flex:1 1 auto;font-size:max(12px, .8rem)}.dongi-link .btn{flex:none;white-space:nowrap}.dongi-wrap .card-surface{min-width:0;overflow:hidden}.dongi-sharebtns{grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}
/* ---- 1.0.23 growth: free delivery bar, add-ons, packages, invite, promos ---- */
.fd-bar{padding:.6rem .75rem;border-radius:12px;background:var(--c-primary-50,var(--c-primary-soft));margin-bottom:.7rem}
.fd-bar__t{display:flex;gap:.4rem;align-items:center;font-size:.86rem;margin-bottom:.4rem}.fd-bar__t i{color:var(--c-primary);font-size:1.05rem}
.fd-bar__track{height:7px;border-radius:99px;background:rgba(0,0,0,.08);overflow:hidden}.fd-bar__track i{display:block;height:100%;background:var(--c-primary);border-radius:inherit;transition:width .4s}
.fd-bar.is-done{background:rgba(22,163,74,.1)}.fd-bar.is-done i{color:#16a34a}.fd-bar.is-done .fd-bar__track i{background:#16a34a}
.addons{margin:.8rem 0}.addons__h{font-weight:800;font-size:.92rem;margin-bottom:.45rem;display:flex;gap:.35rem;align-items:center}.addons__h i{color:var(--c-primary)}.addons__h small{color:var(--c-muted);font-weight:600}
.addons__row{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.3rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.addon{flex:0 0 118px;scroll-snap-align:start;position:relative;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem .4rem;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface,#fff);color:inherit;font:inherit;text-align:center}
.addon:hover{border-color:var(--c-primary)}
.addon__img{width:54px;height:54px;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:var(--c-primary-50,var(--c-primary-soft));color:var(--c-primary);font-size:1.3rem}.addon__img img{width:100%;height:100%;object-fit:cover}
.addon__n{font-size:max(12px, .78rem);font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.05em}
.addon__p{font-size:max(12px, .76rem);color:var(--c-primary);font-weight:800}.addon__p small{font-weight:600}
.addon__plus{position:absolute;top:6px;left:6px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--c-primary);color:var(--c-on-primary);font-size:max(12px, .75rem)}
.cart-drawer .addons{padding:0 1rem}
.pk-hero,.inv-hero{display:flex;gap:.9rem;align-items:center;margin:.5rem 0 1.1rem}
.pk-hero__ic,.inv-hero__ic{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--c-primary);color:var(--c-on-primary);font-size:1.4rem}
.pk-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.pk-card{border-radius:18px;overflow:hidden;background:var(--c-surface,#fff);border:1px solid var(--c-line);display:flex;flex-direction:column}
.pk-card__img{position:relative;aspect-ratio:16/9;background:var(--c-primary-50,var(--c-primary-soft));display:grid;place-items:center;color:var(--c-primary);font-size:2.6rem}.pk-card__img img{width:100%;height:100%;object-fit:cover}
.pk-save{position:absolute;top:10px;right:10px;background:#15803d;color:#fff;font-size:max(12px, .75rem);font-weight:800;padding:.2rem .6rem;border-radius:99px}
.pk-people{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.55);color:#fff;font-size:max(12px, .74rem);padding:.2rem .55rem;border-radius:99px;display:flex;gap:.25rem}
.pk-card__b{padding:.9rem;display:flex;flex-direction:column;flex:1}
.pk-list{list-style:none;padding:0;margin:0 0 .8rem;font-size:max(12px, .84rem);display:grid;gap:.2rem}.pk-list b{color:var(--c-primary)}
.pk-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem}
.pk-foot del{display:block;font-size:max(12px, .78rem);color:var(--c-muted)}.pk-saving{display:block;color:#15803d;font-weight:700;font-size:max(12px, .74rem)}
.inv-code{font-size:1.6rem;font-weight:900;letter-spacing:normal;text-align:center;padding:.5rem;border:2px dashed var(--c-primary);border-radius:12px;color:var(--c-primary)}
.inv-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--c-line);font-size:.86rem}.inv-row:last-child{border:0}
.inv-cp{font-size:max(12px, .8rem);color:var(--c-primary)}
.promo-row{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.promo-card{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:16px;background:var(--c-primary);color:var(--c-on-primary)!important;text-decoration:none}
.promo-card>span:nth-child(2){flex:1}.promo-card b{display:block}.promo-card small{opacity:.9;font-size:max(12px, .8rem)}
.promo-card__ic{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.18);display:grid;place-items:center;font-size:1.25rem}
.promo-card--alt{background:#15803d}
[data-theme=dark] .fd-bar,[data-theme=dark] .addon__img,[data-theme=dark] .pk-card__img{background:rgba(var(--c-primary-rgb),.12)}
[data-theme=dark] .fd-bar__track{background:rgba(255,255,255,.12)}
[data-theme=dark] .addon__p,[data-theme=dark] .pk-list b,[data-theme=dark] .inv-code,[data-theme=dark] .inv-cp{color:var(--c-primary)}
[data-theme=dark] .inv-code{border-color:var(--c-primary)}
[data-theme=dark] .promo-card,[data-theme=dark] .pk-hero__ic,[data-theme=dark] .inv-hero__ic,[data-theme=dark] .addon__plus{background:var(--c-primary)}
[data-theme=dark] .promo-card--alt{background:#166534}
[data-theme=dark] .pk-saving{color:#4ade80}

/* 1.0.25: elevation + WCAG auto-contrast text */
.pzb-fab:hover,.pzb-fab:focus-visible{box-shadow:var(--elev-fab-hover)}
.bottom-nav{box-shadow:0 -4px 16px rgba(0,0,0,.06)}
[data-theme=dark] .bottom-nav{box-shadow:0 -4px 16px rgba(0,0,0,.35);background:var(--c-surface-2)}
.bdg--new{color:var(--c-on-green)}.bdg--off,.off-tag,.im-off,.pdp-off{color:var(--c-on-red)}
.track-steps li.is-done .dot{color:var(--c-on-ok)}
.btn-primary,.btn-primary:hover,.btn-primary:focus{color:var(--c-on-primary)!important}
.badge.bg-primary,.cart-btn__badge{color:var(--c-on-primary)}
/* M3 tonal surface levels in dark */
[data-theme=dark] .card,[data-theme=dark] .menu-card,[data-theme=dark] .pk-card{background:var(--c-surface)}
[data-theme=dark] .modal-content,[data-theme=dark] .offcanvas,[data-theme=dark] .dropdown-menu{background:var(--c-surface-3);color:var(--c-text)}
[data-theme=dark] .site-header{background:var(--c-surface-2)}

/* ===== 1.0.25 /menu/ compact app header ===== */
.menu-app .app-top{transition:height .25s cubic-bezier(.2,.9,.3,1),box-shadow .25s}
.menu-app.menu-scrolled .app-top{height:44px;box-shadow:0 4px 14px -8px rgba(0,0,0,.25)}
.menu-app.menu-scrolled .menu-bar{top:44px}
.menu-app.menu-scrolled .app-top__btn{width:34px;height:34px}
.app-search{display:none;position:relative;flex:1;min-width:0}
.app-search__input{width:100%;height:36px;border:1.5px solid var(--c-primary-border);background:var(--c-surface);color:var(--c-ink);border-radius:999px;padding:0 .9rem;font:inherit;font-size:.9rem;outline:0}
.app-search__input:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px rgba(var(--c-primary-rgb),.18)}
.app-top.is-search .app-search{display:block;animation:aiIn .2s ease}
.app-top.is-search .app-top__title{display:none}
.app-search .search-suggest{position:absolute;top:calc(100% + 6px);inset-inline:0;z-index:1040}
.menu-app .menu-bar{padding:.3rem 0;border-bottom:1px solid var(--c-line-soft)}
.chips--one{gap:.4rem!important;padding:.15rem .75rem!important;scroll-snap-type:x proximity}
.chips--one .chip,.chips--one .filter-chip{padding:.22rem .75rem;font-size:max(12px, .82rem);border-width:1px;min-height:32px;scroll-snap-align:center}
.chips--one .chip.is-on{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}
.chips--one .filter-chip.is-on{background:var(--c-primary-soft);border-color:var(--c-primary);color:var(--c-primary-strong)}
.chips__sep{flex:none;width:1px;align-self:stretch;margin:.25rem .15rem;background:var(--c-line)}
.menu-app .menu-sec{scroll-margin-top:100px}
.menu-app .menu-sec__head{margin:1rem 0 .6rem}
/* compact product cards */
.menu-app .menu-grid{gap:.6rem}
.menu-app .mcard{padding:.6rem;gap:.7rem;align-items:stretch}
.menu-app .mcard__img{width:104px;height:104px;border-radius:14px}
.menu-app .mcard__img img{width:100%;height:100%;object-fit:cover}
.menu-app .mcard__title{font-size:.95rem;margin:0 0 .15rem}
.menu-app .mcard__desc{font-size:max(12px, .78rem);line-height:1.55;color:var(--c-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 .25rem}
.menu-app .mcard__meta{font-size:max(12px, .72rem);gap:.5rem}
.menu-app .mcard__foot{margin-top:auto;align-items:center}
.menu-app .badges .bdg{font-size:max(12px, .6rem)}
.mcard.is-off{opacity:.62}.mcard.is-off .mcard__img img{filter:grayscale(.85)}
.mcard.is-off .add-btn.is-off{background:var(--c-surface-2);color:var(--c-muted);box-shadow:none;font-size:max(12px, .72rem)}
/* inline stepper: "+" circle → "− n +" pill */
.mstep{display:inline-flex;align-items:center;border-radius:999px;background:transparent;transition:background .2s}
.mstep__b{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--c-primary);color:var(--c-on-primary);font-size:1rem;cursor:pointer;box-shadow:0 3px 10px rgba(var(--c-primary-rgb),.28);transition:transform .15s}
.mstep__b:active{transform:scale(.9)}
.mstep__minus,.mstep__n{display:none}
.mstep.has-qty{background:var(--c-primary-soft);border:1px solid var(--c-primary-border)}
.mstep.has-qty .mstep__minus,.mstep.has-qty .mstep__n{display:grid}
.mstep.has-qty .mstep__minus{background:transparent;color:var(--c-primary-strong);box-shadow:none}
.mstep__n{min-width:1.6rem;place-items:center;font-weight:800;color:var(--c-ink);font-size:.92rem}
.mstep.pop{animation:mstepPop .3s}
@keyframes mstepPop{50%{transform:scale(1.08)}}
.add-btn[data-item-open]{border-radius:999px!important;padding:.35rem .8rem}
/* sticky cart summary bar */
.mcart-bar{position:fixed;inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:1036;display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border-radius:16px;background:var(--c-primary);color:var(--c-on-primary)!important;text-decoration:none;box-shadow:var(--elev-fab);animation:aiIn .25s cubic-bezier(.2,.9,.3,1)}
.mcart-bar[hidden]{display:none}
.mcart-bar__n{min-width:28px;height:28px;border-radius:9px;display:grid;place-items:center;font-weight:800;background:color-mix(in srgb,var(--c-on-primary) 18%,transparent)}
.mcart-bar__t{flex:1;font-weight:800}
.mcart-bar__p{font-weight:800}.mcart-bar__p small{opacity:.85;font-weight:600}
@media(min-width:992px){.mcart-bar{inset-inline:auto;left:50%;transform:translateX(-50%);width:420px}}
body.has-mcart.menu-app .ai-fab,body.has-mcart.menu-app .pzb-fab{bottom:80px}
body.has-mcart.menu-app main{padding-bottom:5rem}
body.drawer-open .mcart-bar,body.modal-open .mcart-bar,body.ai-open .mcart-bar{opacity:0;pointer-events:none}
@media(min-width:768px){.menu-app .mcard__img{width:120px;height:120px}}

/* ===== 1.0.25 item sheet (same motion as assistant panel) ===== */
.im-sheet.fade{transition:opacity .2s linear}
.im-sheet .modal-dialog{transition:transform .3s cubic-bezier(.2,.9,.3,1),opacity .2s!important}
.im-sheet.fade .modal-dialog{transform:translateY(24px) scale(.98);opacity:0}
.im-sheet.show .modal-dialog{transform:none;opacity:1}
.im-sheet .modal-content{border:0;border-radius:22px;overflow:hidden;background:var(--c-surface);color:var(--c-text);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.im-grab{display:none}
.im-sheet .im-media{max-height:200px;aspect-ratio:auto;height:200px}
.im-sheet .im-media img{width:100%;height:100%;object-fit:cover}
@media(max-width:575.98px){
  .im-sheet .modal-dialog{margin:0;position:fixed;inset-inline:0;bottom:0;max-width:none;width:100%;min-height:0;height:auto;max-height:92dvh;align-items:flex-end}
  .im-sheet.fade .modal-dialog{transform:translateY(100%);opacity:1}
  .im-sheet.show .modal-dialog{transform:none}
  .im-sheet .modal-content{border-radius:22px 22px 0 0;max-height:92dvh}
  .im-grab{display:block;position:absolute;top:7px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:4px;background:rgba(255,255,255,.75);z-index:5;box-shadow:0 0 0 1px rgba(0,0,0,.1)}
  .im-sheet .im-media{height:160px}
}
.modal-backdrop.fade{transition:opacity .2s linear}
.im-sheet .im-layout{display:flex;flex-direction:column}
.im-sheet .im-scroll{padding:1rem 1.1rem .5rem;overflow-y:auto}
/* segmented size chips + checkable extra chips */
.im-group--seg .im-cards{display:flex;gap:.4rem;flex-wrap:wrap}
.im-group--seg .im-opt{flex:1 1 0;min-width:88px;flex-direction:column;align-items:center;text-align:center;padding:.5rem .4rem;border-radius:14px}
.im-group--seg .im-opt__mark{display:none}
.im-opt{display:flex;align-items:center;gap:.45rem;border:1.5px solid var(--c-line);background:var(--c-surface);color:var(--c-text);border-radius:999px;padding:.4rem .8rem;cursor:pointer;transition:border-color .15s,background .15s}
.im-group:not(.im-group--seg) .im-cards{display:flex;flex-wrap:wrap;gap:.4rem}
.im-opt input{position:absolute;opacity:0;pointer-events:none}
.im-opt:has(input:checked){border-color:var(--c-primary);background:var(--c-primary-soft);color:var(--c-primary-strong)}
.im-opt:has(input:focus-visible){outline:2px solid var(--c-primary);outline-offset:2px}
.im-opt__price{font-style:normal;font-size:max(12px, .76rem);color:var(--c-muted)}
.im-opt:has(input:checked) .im-opt__price{color:var(--c-primary-strong)}
.im-opt.is-off{opacity:.5;cursor:not-allowed}
.im-sheet .im-foot{position:sticky;bottom:0;display:flex;gap:.6rem;align-items:center;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:var(--c-surface);border-top:1px solid var(--c-line-soft);box-shadow:0 -6px 16px -10px rgba(0,0,0,.2)}
.im-sheet .im-cta{flex:1;display:flex;justify-content:space-between;align-items:center;border:0;border-radius:14px;padding:.7rem 1rem;background:var(--c-primary);color:var(--c-on-primary);font-weight:800;box-shadow:0 6px 14px rgba(var(--c-primary-rgb),.28)}
.im-sheet .im-close{position:absolute;top:10px;inset-inline-end:10px;z-index:6;width:36px;height:36px;border-radius:50%;border:0;display:grid;place-items:center;background:color-mix(in srgb,var(--c-surface) 85%,transparent);color:var(--c-ink);backdrop-filter:blur(6px);box-shadow:0 2px 8px rgba(0,0,0,.18)}
@media(prefers-reduced-motion:reduce){.im-sheet .modal-dialog,.menu-app .app-top{transition:none!important}}
.promo-card--alt,.promo-card--alt *{color:#fff!important}
.promo-card .promo-card__ic{background:color-mix(in srgb,currentColor 16%,transparent)}
.im-sheet .im-group:not(.im-group--seg) .im-opt{width:auto!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;border-radius:999px!important;flex-direction:row!important;padding:.4rem .85rem!important;text-align:start}
.im-sheet .im-group:not(.im-group--seg) .im-opt .im-opt__price{margin-inline-start:.2rem}
.im-sheet .im-group--seg .im-opt{border-radius:14px!important}
.im-sheet .im-foot .qty{display:inline-flex;align-items:center;border:1px solid var(--c-line);border-radius:999px;background:var(--c-surface-2);overflow:hidden}
.im-sheet .im-foot .qty button{width:36px;height:40px;border:0;background:transparent;color:var(--c-primary-strong);font-size:1.15rem;font-weight:800}
.im-sheet .im-foot .qty input{width:32px;border:0;background:transparent;color:var(--c-ink);text-align:center;font-weight:800}
.im-sheet .im-media__ph{height:100%;display:grid;place-items:center;background:var(--c-primary-soft);color:var(--c-primary);font-size:3rem}
/* 1.0.29 wallet */
.wallet-card__ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--c-primary-soft);color:var(--c-primary-strong,var(--c-primary));font-size:1.5rem}
.wallet-opt{margin-top:.75rem;padding:.75rem;border:1px dashed var(--c-primary-border,rgba(var(--c-primary-rgb),.35));border-radius:14px;background:var(--c-surface)}
.wallet-opt__amt{margin-top:.5rem}
.dongi-payer input{min-width:0}

/* 1.0.31 mobile: no zoom — no double-tap zoom, and ≥16px fields so iOS doesn't zoom on focus */
html,body{touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (pointer:coarse),(max-width:991.98px){
  input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.form-control,.form-select,.form-control-sm,.form-select-sm{font-size:16px!important}
}
/* 1.0.32 extras/options: mark | name | price in a grid, nothing absolutely positioned over the price */
.im-group:not(.im-group--seg) .im-cards{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.4rem}
.im-sheet .im-group:not(.im-group--seg) .im-opt,.im-group:not(.im-group--seg) .im-opt{position:relative;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:.45rem;width:100%!important;min-height:44px!important;padding:.45rem .65rem!important;border-radius:12px!important;text-align:start;flex-direction:row!important;transform:none}
.im-group:not(.im-group--seg) .im-opt__mark{position:static!important;inset:auto!important;flex:none;width:1.15rem;height:1.15rem}
.im-group:not(.im-group--seg) .im-opt__name{padding:0!important;min-width:0;font-size:max(12px, .85rem);line-height:1.35;overflow-wrap:anywhere}
.im-sheet .im-group:not(.im-group--seg) .im-opt .im-opt__price,.im-group:not(.im-group--seg) .im-opt__price{margin:0!important;white-space:nowrap;font-size:max(12px, .76rem);display:inline-flex;gap:.2rem;align-items:baseline}
@media(max-width:360px){.im-group:not(.im-group--seg) .im-cards{grid-template-columns:1fr}}
/* 1.0.48 impeccable: Persian type floors (UI>=12px, body>=13px), edge padding, heading scale */
small,.small{font-size:max(12px,.875em)}
p.small,.card-surface>p.text-muted.mb-0,.auth__legal,.site-footer-credit,#locStatus,#locStatus small,#mobileHint{font-size:max(13px,1em)}
p{text-wrap:pretty}
.container.hero__grid{padding-inline:1rem}
.chips{padding-inline:.75rem;scroll-padding-inline:.75rem}
.hero__badge{padding:.32rem .85rem}
.offcanvas-title.h5,.modal-title.h5{font-size:1.2rem}
.empty-state h1{font-size:1.5rem}
.pzb-promo__txt small{color:var(--c-on-primary)}
.pzb-promo{background:linear-gradient(125deg,var(--c-primary-strong) 0%,var(--c-primary) 100%)}
/* 1.0.51 cinematic hero video (poster-only on reduced-motion / Save-Data) */
.hero--video{background:#120c08}
.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
.hero__shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to left,rgba(10,6,4,.82) 0%,rgba(10,6,4,.6) 50%,rgba(10,6,4,.35) 100%),linear-gradient(to top,rgba(10,6,4,.55),transparent 45%)}
.hero--video .hero__grid{position:relative;z-index:2}
.hero--video .hero__art{display:none}
.hero--video .hero__grid{grid-template-columns:1fr;min-height:clamp(320px,42vw,460px)}
.hero--video h1,.hero--video p{text-shadow:0 1px 3px rgba(0,0,0,.55)}
.hero--video p{color:#f3ece6}
@media(max-width:767px){.hero--video .hero__grid{min-height:0}.hero__shade{background:rgba(10,6,4,.66)}}
/* 1.0.52 decluttered video hero + info strip below it */
.hero--video .hero__grid{min-height:clamp(300px,36vw,420px)}
.hero--video h1{margin:0 0 .4rem}
.hero__sub{color:#f3ece6!important;font-size:1.1rem!important;margin:0 0 1.1rem;max-width:30rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-info{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center;justify-content:center;padding-block:.7rem .2rem;font-size:13px;color:var(--c-text)}
.hero-info>span{display:inline-flex;align-items:center;gap:.35rem}
.hero-info .bi{color:var(--c-primary)}
@media(max-width:767px){.hero--video .hero__grid{min-height:260px;align-content:center;padding:1.4rem 0}.hero__sub{font-size:1rem!important;white-space:normal}.hero-info{gap:.3rem .8rem;justify-content:flex-start}}

/* 1.0.52: mobile — cart lives in the bottom nav; hide the header cart button there */
@media(max-width:991.98px){body:not(.menu-app):has(.bottom-nav) #cartBtn{display:none}}
/* 1.0.54 hero: site name only, centered, light overlay */
.hero--video .hero__grid{text-align:center;justify-items:center;align-content:center}
.hero__name{font-size:clamp(2.2rem,6vw,4.5rem)!important;font-weight:900;line-height:1.3!important;margin:0!important;color:#fff;letter-spacing:normal;text-shadow:0 2px 14px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.6)}
.hero--video .hero__shade{background:radial-gradient(70% 60% at 50% 50%,rgba(10,6,4,.5),rgba(10,6,4,.2) 75%),linear-gradient(to top,rgba(10,6,4,.35),transparent 40%)}
@media(max-width:767px){.hero--video .hero__grid{min-height:220px}}

/* 1.0.55: mobile header — no logo; location chip takes the free space */
@media(max-width:767.98px){.site-header .brand{display:none}.site-header .loc-chip{flex:1 1 auto;min-width:0;max-width:none}.site-header .loc-chip__txt{min-width:0}}
@media(max-width:767.98px){.site-header .loc-chip__txt{display:flex;flex-direction:column;overflow:hidden;flex:1 1 auto}.site-header .loc-chip__txt b{display:block;max-width:100%}}
/* 1.0.54 icon-only account / login buttons */
.btn-account--icon,.btn-login--icon{width:42px;height:42px;padding:0!important;justify-content:center;gap:0!important;font-size:1.35rem}
.btn-account--icon.dropdown-toggle::after{display:none}
.btn-account--icon{position:relative}
/* 1.0.54 search modal */
html.sm-open{overflow:hidden}
.sm-search{position:fixed;inset:0;z-index:2100;display:flex;align-items:flex-start;justify-content:center}
.sm-search[hidden]{display:none}
.sm-search__backdrop{position:absolute;inset:0;background:rgba(15,10,8,.5)}
.sm-search__panel{position:relative;width:min(640px,calc(100vw - 2rem));margin-top:8vh;max-height:80vh;display:flex;flex-direction:column;background:var(--c-surface,#fff);color:var(--c-text);border-radius:var(--r-lg,18px);box-shadow:0 24px 60px rgba(0,0,0,.25);overflow:hidden}
.sm-search__bar{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border-bottom:1px solid var(--c-line)}
.sm-search__bar>.bi{color:var(--c-muted);font-size:1.1rem}
.sm-search__input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:16px;padding:.5rem 0;color:inherit;outline:0}
.sm-search__close{border:0;background:var(--c-surface-2,#f4f4f4);color:inherit;width:40px;height:40px;border-radius:50%;display:grid;place-items:center}
.sm-search__close:focus-visible,.sm-add:focus-visible,.sm-link:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}
.sm-search__body{overflow-y:auto;overscroll-behavior:contain;padding:.4rem .6rem .8rem}
.sm-search__state{margin:1.2rem .4rem;text-align:center;color:var(--c-muted);font-size:14px}
.sm-search__list{list-style:none;margin:0;padding:0}
.sm-item{display:flex;align-items:center;gap:.5rem;border-radius:12px;padding:.35rem}
.sm-item[aria-selected=true],.sm-item:hover{background:var(--c-primary-50,rgba(0,0,0,.04))}
.sm-link{flex:1;min-width:0;display:flex;align-items:center;gap:.7rem;color:inherit;text-decoration:none}
.sm-link img,.sm-noimg{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;background:var(--c-surface-2,#f1f1f1);display:grid;place-items:center;color:var(--c-muted)}
.sm-txt{min-width:0;display:flex;flex-direction:column;line-height:1.5}
.sm-txt b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sm-txt small{font-size:12px;color:var(--c-muted)}
.sm-price{font-size:13px;font-weight:700;color:var(--c-primary-strong,var(--c-primary))}
.sm-price small{font-weight:400}
.sm-off{font-size:12px;color:#b91c1c}
.sm-add,.sm-go{flex:none;width:40px;height:40px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--c-primary);color:var(--c-on-primary,#fff);text-decoration:none}
.sm-go{background:transparent;color:var(--c-muted)}
.sm-add.is-done{background:#15803d;color:#fff}
@media(max-width:767.98px){.sm-search__panel{width:100%;height:100%;max-height:none;margin:0;border-radius:0}.sm-search__backdrop{display:none}}
/* 1.0.56 checkout: delivery / pickup switch */
.svc-switch{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.svc-opt{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:46px;border:1.5px solid var(--c-line);border-radius:var(--r-md,12px);color:var(--c-text);text-decoration:none;font-weight:700;font-size:14px;background:var(--c-surface)}
.svc-opt.is-on{border-color:var(--c-primary);background:var(--c-primary-50,rgba(0,0,0,.03));color:var(--c-primary-strong,var(--c-primary))}
.svc-opt:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}
/* 1.0.56: no native clear (×) in search inputs; our own close button is enough */
.sm-search__input::-webkit-search-cancel-button,.search__input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}
/* 1.0.58 checkout: no-address empty state */
.co-empty{display:flex;gap:.6rem;align-items:flex-start;padding:.7rem .8rem;border:1px dashed var(--bs-border-color,#d7dbe0);border-radius:.75rem;background:var(--bs-tertiary-bg,#f7f8fa)}
.co-empty>.bi{font-size:1.25rem;color:var(--bs-primary);line-height:1.2}
