/* ============================================================
   Nobar Delivery v21 — თანამედროვე დიზაინი + მუქი რეჟიმი
   იტვირთება style.css-ის შემდეგ: ცვლადებს აახლებს და კომპონენტებს აუმჯობესებს.
   თემა: <html data-theme="light|dark"> ; "auto" — მოწყობილობის პარამეტრი.
   ============================================================ */

:root {
  color-scheme: light;
  --brand: #ee4a2f;
  --brand-dark: #d13a20;
  --brand-light: #fff0ec;
  --brand-grad: linear-gradient(135deg, #ff6a3d 0%, #ee3f2c 100%);

  --ink: #0e1220;
  --ink-soft: #3b4154;
  --muted: #7b8196;
  --muted-2: #aab0c0;
  --bg: #f4f5f9;
  --bg-2: #eceef5;
  --card: #ffffff;
  --card-2: #f8f9fc;
  --border: #e7e9f1;
  --border-strong: #d9dce8;
  --header-bg: rgba(244, 245, 249, .82);
  --overlay: rgba(10, 12, 22, .55);

  --green: #12804a;   --green-bg: #e6f6ed;  --green-line: #bfe6d0;
  --blue: #2a58d4;    --blue-bg: #e9efff;   --blue-line: #cbd9fb;
  --orange: #b25c0c;  --orange-bg: #fff1dc; --orange-line: #f4d9a9;
  --gray: #646b80;    --gray-bg: #eceef4;
  --red: #c7301c;     --red-bg: #feebe7;    --red-line: #f6cdc6;

  --radius-sm: 12px; --radius: 18px; --radius-lg: 26px;
  --shadow-sm: 0 1px 2px rgba(16, 20, 40, .05), 0 1px 3px rgba(16, 20, 40, .04);
  --shadow: 0 12px 32px -14px rgba(16, 20, 40, .18);
  --shadow-lg: 0 30px 70px -24px rgba(16, 20, 40, .32);
  --ring: 0 0 0 3px rgba(238, 74, 47, .22);
}

/* მუქი თემა: ხელით არჩეული ან ავტომატური (მოწყობილობის პარამეტრი) */
:root[data-theme="dark"] { color-scheme: dark; }
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] { color-scheme: dark; }
}
:root[data-theme="dark"] {
  --brand: #ff6a4d; --brand-dark: #ff866c; --brand-light: rgba(255, 106, 77, .14);
  --ink: #eef0f7; --ink-soft: #c5cadb; --muted: #8d94aa; --muted-2: #626980;
  --bg: #0c0e15; --bg-2: #121520; --card: #151925; --card-2: #1a1f2e;
  --border: #252b3b; --border-strong: #323a50;
  --header-bg: rgba(12, 14, 21, .82); --overlay: rgba(0, 0, 0, .7);
  --green: #4ad28b; --green-bg: rgba(74, 210, 139, .12); --green-line: rgba(74, 210, 139, .3);
  --blue: #7ea2ff;  --blue-bg: rgba(126, 162, 255, .12); --blue-line: rgba(126, 162, 255, .3);
  --orange: #ffb055; --orange-bg: rgba(255, 176, 85, .12); --orange-line: rgba(255, 176, 85, .3);
  --gray: #a2a9be;  --gray-bg: #1f2434;
  --red: #ff8a76;   --red-bg: rgba(255, 106, 77, .13); --red-line: rgba(255, 106, 77, .32);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);
  --shadow: 0 14px 34px -14px rgba(0, 0, 0, .65);
  --shadow-lg: 0 30px 70px -20px rgba(0, 0, 0, .8);
  --ring: 0 0 0 3px rgba(255, 106, 77, .3);
}
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] {
    --brand: #ff6a4d; --brand-dark: #ff866c; --brand-light: rgba(255, 106, 77, .14);
    --ink: #eef0f7; --ink-soft: #c5cadb; --muted: #8d94aa; --muted-2: #626980;
    --bg: #0c0e15; --bg-2: #121520; --card: #151925; --card-2: #1a1f2e;
    --border: #252b3b; --border-strong: #323a50;
    --header-bg: rgba(12, 14, 21, .82); --overlay: rgba(0, 0, 0, .7);
    --green: #4ad28b; --green-bg: rgba(74, 210, 139, .12); --green-line: rgba(74, 210, 139, .3);
    --blue: #7ea2ff;  --blue-bg: rgba(126, 162, 255, .12); --blue-line: rgba(126, 162, 255, .3);
    --orange: #ffb055; --orange-bg: rgba(255, 176, 85, .12); --orange-line: rgba(255, 176, 85, .3);
    --gray: #a2a9be;  --gray-bg: #1f2434;
    --red: #ff8a76;   --red-bg: rgba(255, 106, 77, .13); --red-line: rgba(255, 106, 77, .32);
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);
    --shadow: 0 14px 34px -14px rgba(0, 0, 0, .65);
    --shadow-lg: 0 30px 70px -20px rgba(0, 0, 0, .8);
    --ring: 0 0 0 3px rgba(255, 106, 77, .3);
  }
}

html { background: var(--bg); transition: background-color .25s var(--ease); }
body { background: var(--bg); color: var(--ink); transition: background-color .25s var(--ease), color .25s var(--ease); }

/* ძველი ფიქსირებული ფერების გასწორება (ორივე თემაზე) */
.alert-error   { border-color: var(--red-line); }
.alert-success { border-color: var(--green-line); }
.alert-info    { border-color: var(--blue-line); }
.order-ticket.done { background: var(--card-2); }
.menu-card-photo { background: var(--card-2); }
.cart-item-remove:hover { border-color: var(--red-line); }
.icon-btn-danger:hover { border-color: var(--red-line); }
.limit-alert, .cart-limit-note { border-color: var(--red-line); }
input, select, textarea { background: var(--card); color: var(--ink); border-color: var(--border-strong); }
input::placeholder, textarea::placeholder { color: var(--muted-2); }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--brand); box-shadow: var(--ring); }
input[type=checkbox], input[type=radio] { accent-color: var(--brand); }
table.data-table, .data-table th, .data-table td { border-color: var(--border); }
.data-table thead th { background: var(--card-2); color: var(--muted); }
.btn { background: var(--brand-grad); border: 0; color: #fff !important; box-shadow: 0 8px 20px -10px rgba(238, 74, 47, .7); }
.btn:hover { filter: brightness(1.05); transform: translateY(-1px); }
.btn-outline { background: transparent !important; color: var(--ink) !important; border: 1.5px solid var(--border-strong); box-shadow: none; }
.btn-outline:hover { background: var(--gray-bg) !important; filter: none; }
.btn-danger { background: var(--red) !important; box-shadow: none; }
[data-theme="dark"] .btn-danger { color: #1b0c08 !important; }

/* ===================== Header (კომპაქტური, ჩამოსქროლვისას პატარავდება) ===================== */
.site-header {
  background: var(--header-bg);
  border-bottom-color: var(--border);
  transition: box-shadow .25s var(--ease), background-color .25s var(--ease);
}
.header-inner { padding: 12px 24px; gap: 10px; transition: padding .22s var(--ease); flex-wrap: nowrap; }
.logo-img { height: 46px; transition: height .22s var(--ease); }
[data-theme="dark"] .logo-img { filter: invert(1) hue-rotate(180deg); }
@media (prefers-color-scheme: dark) { [data-theme="auto"] .logo-img { filter: invert(1) hue-rotate(180deg); } }
.logo-sub { transition: opacity .2s var(--ease), max-width .22s var(--ease); max-width: 90px; overflow: hidden; white-space: nowrap; }
.site-header.is-compact { box-shadow: 0 8px 24px -16px rgba(0, 0, 0, .35); }
.site-header.is-compact .header-inner { padding-top: 6px; padding-bottom: 6px; }
.site-header.is-compact .logo-img { height: 30px; }
.site-header.is-compact .logo-sub { opacity: 0; max-width: 0; padding-left: 0; border-left-width: 0; }
.site-header.is-compact .cart-link { padding: 7px 14px !important; }
@media (max-width: 640px) {
  .header-inner { padding: 8px 16px; }
  .logo-img { height: 38px; }
  .site-header.is-compact .logo-img { height: 28px; }
}
.main-nav { gap: 8px; }
.cart-link { background: var(--ink) !important; color: var(--bg) !important; }
.cart-link:hover { background: var(--brand) !important; color: #fff !important; }

/* ენა და თემა — ჰედერის პატარა კონტროლები */
.hd-tools { display: flex; align-items: center; gap: 6px; }
.hd-btn {
  display: inline-flex; align-items: center; gap: 6px; height: 38px; min-width: 38px; padding: 0 11px; justify-content: center;
  border-radius: 999px; border: 1.5px solid var(--border-strong); background: var(--card); color: var(--ink);
  font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; transition: all .15s var(--ease);
}
.hd-btn:hover { border-color: var(--brand); color: var(--brand); }
.site-header.is-compact .hd-btn { height: 32px; min-width: 32px; }
.hd-menu { position: relative; }
.hd-pop {
  position: absolute; right: 0; top: calc(100% + 8px); min-width: 150px; padding: 6px; z-index: 80;
  background: var(--card); border: 1px solid var(--border); border-radius: 14px; box-shadow: var(--shadow-lg);
  display: none;
}
.hd-menu.open .hd-pop { display: block; animation: pop-in .14s var(--ease); }
@keyframes pop-in { from { opacity: 0; transform: translateY(-4px) scale(.98); } to { opacity: 1; transform: none; } }
.hd-pop a, .hd-pop button {
  display: flex; width: 100%; align-items: center; gap: 10px; padding: 9px 12px; border: 0; background: none; border-radius: 10px;
  color: var(--ink) !important; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; text-align: left; text-decoration: none;
}
.hd-pop a:hover, .hd-pop button:hover { background: var(--gray-bg); }
.hd-pop .is-current { color: var(--brand) !important; }
.hd-pop .is-current::after { content: "✓"; margin-left: auto; }
.theme-ic-dark, .theme-ic-light { display: none; }
[data-theme="dark"] .theme-ic-dark { display: inline-flex; }
[data-theme="light"] .theme-ic-light { display: inline-flex; }
:root:not([data-theme]) .theme-ic-light, :root[data-theme="auto"] .theme-ic-light { display: inline-flex; }
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] .theme-ic-light { display: none; }
  :root[data-theme="auto"] .theme-ic-dark { display: inline-flex; }
}
@media (max-width: 640px) { .hd-lang-label { display: none; } .main-nav .burger-btn { margin-left: 0; } }

/* ===================== Hero ===================== */
.hero {
  border-radius: var(--radius-lg);
  background:
    radial-gradient(circle at 88% -10%, rgba(255, 106, 61, .55) 0%, transparent 46%),
    radial-gradient(circle at 6% 120%, rgba(238, 63, 44, .28) 0%, transparent 42%),
    linear-gradient(150deg, #12131b 0%, #1d1f2c 62%, #171824 100%);
}
.hero-eyebrow { backdrop-filter: blur(6px); }
.area-pill { backdrop-filter: blur(8px); }

/* ===================== გაყინული ზოლი (ძებნა + კატეგორია) ===================== */
.sticky-controls {
  background: var(--header-bg);
  -webkit-backdrop-filter: blur(14px) saturate(1.4); backdrop-filter: blur(14px) saturate(1.4);
  margin: 14px -24px 18px; padding: 10px 24px; border-bottom: 1px solid var(--border); box-shadow: none;
  transition: padding .2s var(--ease);
}
.sticky-controls .menu-toolbar { display: flex; gap: 10px; align-items: center; }
.sticky-controls .menu-search { flex: 1 1 auto; margin: 0; }
.sticky-controls .category-drop { margin: 0; flex: 0 0 auto; }
.sticky-controls .category-select { width: auto; min-width: 150px; max-width: 220px; }
.sticky-controls .start-below { margin: 8px 0 0; }
.sticky-controls .start-below-btn { padding: 11px 26px; font-size: 15px; }
.sticky-controls.is-compact { padding-top: 6px; padding-bottom: 6px; }
.sticky-controls.is-compact .start-below { display: none; }
.sticky-controls.is-compact .menu-search input { padding-top: 8px; padding-bottom: 8px; }
.sticky-controls.is-compact .category-select { padding-top: 8px; padding-bottom: 8px; }
@media (max-width: 640px) {
  .sticky-controls { margin-left: -16px; margin-right: -16px; padding: 8px 16px; }
  .sticky-controls .menu-toolbar { flex-wrap: nowrap; }
  .sticky-controls .category-select { min-width: 0; max-width: 140px; }
}
.menu-search input { background: var(--card); border-radius: 999px; }

/* ===================== კერძის ბარათები ===================== */
.menu-card { background: var(--card); border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow-sm); transition: transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease); }
.menu-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); border-color: var(--border-strong); }
.menu-card .price { font-weight: 800; color: var(--ink); }
.btn-add-plus-only { background: var(--brand-grad); box-shadow: 0 8px 18px -8px rgba(238, 74, 47, .8); }
/* დროებით შეჩერებული კერძი */
.menu-card.is-paused { opacity: 1; }
.menu-card.is-paused .menu-card-photo img { filter: grayscale(1) brightness(.9); opacity: .55; }
.menu-card.is-paused .menu-card-body h3, .menu-card.is-paused .desc, .menu-card.is-paused .price { opacity: .55; }
.menu-card.is-paused:hover { transform: none; box-shadow: var(--shadow-sm); }
.paused-ribbon {
  position: absolute; left: 10px; top: 10px; z-index: 2; display: inline-flex; align-items: center; gap: 6px;
  background: rgba(14, 18, 32, .86); color: #fff; font-size: 11.5px; font-weight: 800; padding: 5px 10px; border-radius: 999px;
  backdrop-filter: blur(6px);
}
.menu-card.no-photo .paused-ribbon { position: static; margin: 14px 0 0 18px; align-self: flex-start; }
.paused-tag, .paused-note {
  display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: var(--orange);
  background: var(--orange-bg); border: 1px solid var(--orange-line); padding: 4px 10px; border-radius: 999px;
}
.menu-card-foot .paused-note { white-space: nowrap; }
.cart-item.is-paused { opacity: .75; border-color: var(--orange-line); }

/* ===================== მოდალები ===================== */
.modal-overlay { background: var(--overlay); }
.modal-card { background: var(--card); color: var(--ink); border: 1px solid var(--border); border-radius: 26px; box-shadow: var(--shadow-lg); }
.modal-close { color: var(--muted); }
.modal-sub, .form-note { color: var(--muted); }

/* ===================== მისამართის არჩევა (ახალი სტილი) ===================== */
.village-list { display: grid; gap: 8px; max-height: 280px; overflow: auto; padding: 2px; margin: 0 -2px; }
.village-opt { position: relative; display: block; cursor: pointer; }
.village-opt input { position: absolute; opacity: 0; pointer-events: none; }
.village-opt-body {
  display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px;
  border: 1.5px solid var(--border-strong); background: var(--card); transition: all .15s var(--ease);
}
.village-opt-ic { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--brand-light); color: var(--brand); flex: none; }
.village-opt-name { font-weight: 700; flex: 1; min-width: 0; }
.village-opt-eta { font-size: 12.5px; color: var(--muted); font-weight: 700; white-space: nowrap; }
.village-opt input:checked + .village-opt-body { border-color: var(--brand); background: var(--brand-light); box-shadow: var(--ring); }
.village-opt:hover .village-opt-body { border-color: var(--brand); }
.village-opt.is-paused { cursor: not-allowed; }
.village-opt.is-paused .village-opt-body { background: var(--card-2); border-style: dashed; }
.village-opt.is-paused .village-opt-name, .village-opt.is-paused .village-opt-ic { opacity: .5; }
.village-opt.is-paused .village-opt-ic { background: var(--gray-bg); color: var(--muted); }
.village-search { margin-bottom: 8px; }
.village-search input { width: 100%; border-radius: 999px; padding: 10px 16px; }

/* მანქანის არჩევა — სუფთა სეგმენტები, ხატულების გარეშე */
.vehicle-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.vehicle-opt { position: relative; cursor: pointer; display: block; }
.vehicle-opt input { position: absolute; opacity: 0; pointer-events: none; }
.vehicle-opt-body {
  display: flex; flex-direction: column; gap: 2px; align-items: flex-start; padding: 12px 14px; border-radius: 14px;
  border: 1.5px solid var(--border-strong); background: var(--card); transition: all .15s var(--ease); min-height: 62px; justify-content: center;
}
.vehicle-opt-title { font-weight: 800; font-size: 14.5px; }
.vehicle-opt-sub { font-size: 12.5px; color: var(--muted); font-weight: 600; line-height: 1.3; }
.vehicle-opt input:checked + .vehicle-opt-body { border-color: var(--brand); background: var(--brand-light); box-shadow: var(--ring); }
.vehicle-opt input:checked + .vehicle-opt-body .vehicle-opt-title { color: var(--brand); }
.vehicle-opt:hover .vehicle-opt-body { border-color: var(--brand); }

/* ===================== დანარჩენი ბარათები ===================== */
.summary-card, .form-card, .cart-item, .cart-summary, .order-ticket, .card-row, .pay-option, .pay-method {
  background: var(--card); border-color: var(--border); color: var(--ink);
}
.footer-note, .site-footer { color: var(--muted); }
.site-footer { border-top-color: var(--border); }
.toast { background: var(--ink); color: var(--bg); }
.burger-panel { background: var(--card); color: var(--ink); }
.burger-links a { color: var(--ink); }
.burger-links a:hover { background: var(--gray-bg); }
.burger-drawer { background: var(--overlay); }
.burger-tools { display: flex; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
.burger-tools .seg { flex: 1; }

/* სეგმენტური გადამრთველი (ენა/თემა მენიუში) */
.seg { display: inline-flex; background: var(--gray-bg); border-radius: 12px; padding: 3px; gap: 2px; }
.seg-btn {
  appearance: none; border: 0; background: transparent; color: var(--ink-soft); font: inherit; font-size: 13px; font-weight: 700;
  padding: 7px 14px; border-radius: 9px; cursor: pointer; transition: all .15s var(--ease); display: inline-flex; gap: 6px; align-items: center; justify-content: center; flex: 1;
}
.seg-btn:hover { color: var(--ink); }
.seg-btn.is-active { background: var(--card); color: var(--ink); box-shadow: var(--shadow-sm); }

/* ===================== მცირე ანიმაციები ===================== */
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }

/* ===================== დამატებითი დეტალები ===================== */
.area-pill-change { margin-left: 10px; border: 0; background: rgba(255,255,255,.16); color: #fff; font: inherit; font-size: 12px; font-weight: 800; padding: 4px 10px; border-radius: 999px; cursor: pointer; }
.area-pill-change:hover { background: rgba(255,255,255,.28); }
.burger-avatar { font-weight: 800; font-size: 18px; color: var(--brand); }
.modal-title { font-size: 22px; margin: 0 0 14px; }
.area-unavailable-inline { text-align: center; padding: 6px 0 14px; }
.vehicle-opt-body { text-align: left; }
.village-opt-body { flex-wrap: wrap; }
.village-opt.is-paused .village-opt-name { flex: 1 1 120px; }
.menu-card.is-paused .menu-card-foot .paused-note { margin-left: auto; }
@media (max-width: 640px) { .sticky-controls .category-select { font-size: 13px; padding-left: 10px; padding-right: 28px; text-overflow: ellipsis; max-width: 150px; } }
.site-header.is-compact .burger-btn { width: 34px; height: 34px; }
.site-header.is-compact .cart-link { padding: 5px 13px !important; }
.site-header.is-compact .hd-btn { height: 30px; min-width: 30px; padding: 0 9px; }
.burger-btn, .cart-link, .hd-btn, .header-inner { transition: all .2s var(--ease); }
.sticky-controls { background: var(--bg); -webkit-backdrop-filter: none; backdrop-filter: none; }
[data-theme="auto"] .sticky-controls { background: var(--bg); }
.floating-cart { background: var(--brand-grad) !important; color: #fff !important; box-shadow: 0 16px 36px -12px rgba(238, 74, 47, .65); }
.floating-cart * { color: #fff; }
.floating-cart-count { background: rgba(255,255,255,.22) !important; }

/* ===== v21 fixes: მობილური ჰედერი ერთ ხაზზე + ბნელი რეჟიმი (კალათა, გადახდა) ===== */
@media (max-width: 640px) {
  .header-inner { flex-wrap: nowrap; gap: 6px; padding-left: 12px; padding-right: 12px; }
  .main-nav { flex-wrap: nowrap; gap: 5px; margin-left: auto; }
  .logo-sub { display: none; }
  .hd-btn { height: 36px; min-width: 36px; padding: 0 9px; }
  .cart-link { padding: 8px 12px !important; }
}
@media (max-width: 380px) { .logo-img { height: 32px; } .hd-btn { min-width: 34px; padding: 0 7px; } }
.cart-item-qtybadge { background: var(--brand-soft, rgba(255, 107, 53, .14)); color: var(--brand); }
.cart-item-media { background: var(--card-2, var(--bg)); }
[data-theme="dark"] .cart-item-media img { background: transparent; }
[data-theme="dark"] .secure-note { background: rgba(52, 199, 120, .10); color: #8fe0b0; border-color: rgba(52, 199, 120, .28); }
@media (prefers-color-scheme: dark) {
  [data-theme="auto"] .secure-note { background: rgba(52, 199, 120, .10); color: #8fe0b0; border-color: rgba(52, 199, 120, .28); }
}
.site-header.is-compact .hd-btn { height: 32px; min-width: 32px; }
.site-header.is-compact .burger-btn { width: 36px; height: 36px; }

/* ===== ჩაკეცვადი კატეგორიები ===== */
[data-collapse] { cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent; display: flex; align-items: center; gap: 10px; }
[data-collapse] .ct-label { flex: 1 1 auto; min-width: 0; display: inline-flex; align-items: center; gap: 8px; }
[data-collapse] .ct-count { flex: 0 0 auto; font-size: 12px; font-weight: 800; color: var(--muted); background: var(--gray-bg); border-radius: 999px; padding: 2px 9px; }
[data-collapse] .chev { flex: 0 0 auto; color: var(--muted); transition: transform .22s var(--ease); }
[data-collapse][aria-expanded="false"] .chev { transform: rotate(-90deg); }
[data-collapse]:hover .chev, [data-collapse]:focus-visible .chev { color: var(--brand); }
[data-collapse]:focus-visible { outline: 2px solid var(--brand); outline-offset: 4px; border-radius: 8px; }
.category-block.is-collapsed > .menu-grid, .kind-section.is-collapsed > .category-block { display: none; }
.category-block.is-collapsed { margin-bottom: 10px; }
.category-title { margin-bottom: 14px; }
.category-block.is-collapsed .category-title { margin-bottom: 0; }
.kind-section.is-collapsed > .kind-section-title { margin-bottom: 0; }

/* ===== ძებნა და კატეგორია — ტელეფონზე ცალ-ცალკე ხაზზე ===== */
@media (max-width: 640px) {
  .sticky-controls .menu-toolbar { flex-direction: column; align-items: stretch; gap: 8px; }
  .sticky-controls .menu-search, .sticky-controls .category-drop { width: 100%; flex: 0 0 auto; }
  .sticky-controls .category-select { width: 100%; max-width: none; min-width: 0; font-size: 15px; padding-top: 11px; padding-bottom: 11px; text-overflow: ellipsis; }
  .sticky-controls .menu-search input { font-size: 16px; padding-top: 11px; padding-bottom: 11px; }
  .sticky-controls.is-compact { padding-top: 6px; padding-bottom: 6px; }
  .sticky-controls.is-compact .menu-toolbar { gap: 5px; }
  .sticky-controls.is-compact .menu-search input, .sticky-controls.is-compact .category-select { padding-top: 7px; padding-bottom: 7px; font-size: 14px; }
}

/* ===== v22: კატეგორია ზევით, ძებნა ქვემოთ; „შეკვეთის დაწყება" ქვემოთ მიყვება ეკრანს ===== */
.sticky-controls .start-below { display: none !important; }
.sticky-controls .category-drop { order: 1; }
.sticky-controls .menu-search { order: 2; }
.start-fab {
  position: fixed; left: 0; right: 0; bottom: max(16px, env(safe-area-inset-bottom)); z-index: 60;
  display: flex; justify-content: center; padding: 0 16px; pointer-events: none;
}
.start-fab.with-cart { bottom: calc(max(16px, env(safe-area-inset-bottom)) + 70px); }
.start-fab .start-below-btn {
  pointer-events: auto; width: 100%; max-width: 420px; justify-content: center; padding: 15px 26px; font-size: 16px; border-radius: 999px;
  box-shadow: 0 16px 36px -12px rgba(238, 74, 47, .65);
}
body:has(.start-fab:not([style*="display:none"]):not([style*="display: none"])) .site-footer { padding-bottom: 90px; }
@media (max-width: 700px) {
  .sticky-controls .menu-toolbar { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 8px; }
  .sticky-controls .menu-search, .sticky-controls .category-drop { width: 100% !important; max-width: none !important; flex: 0 0 auto !important; }
  .sticky-controls .category-select { width: 100% !important; max-width: none !important; }
}

/* ===== v23: მომზადების დრო (მომხმარებლის მხარე) ===== */
.prep-chip { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; font-size: 12px; font-weight: 700; color: var(--muted); background: var(--gray-bg); border-radius: 999px; padding: 3px 9px; vertical-align: middle; }
.prep-chip .ic { color: var(--brand); }
.eta-card { background: var(--green-bg, rgba(52,199,120,.12)); border: 1px solid rgba(52,199,120,.28); border-radius: var(--radius-sm, 14px); padding: 14px 16px; margin: 0 0 16px; text-align: left; }
.eta-card-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-weight: 700; flex-wrap: wrap; }
.eta-card-head span { display: inline-flex; align-items: center; gap: 8px; }
.eta-card-head strong { font-size: 20px; color: var(--green, #1a8a3a); }
.eta-steps { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.eta-steps span { font-size: 13px; color: var(--ink-soft, var(--muted)); background: var(--card); border: 1px solid var(--border); border-radius: 999px; padding: 4px 12px; }
.eta-steps i { font-style: normal; font-weight: 800; color: var(--ink); margin-left: 3px; }

/* ===== v25: სტატუსის საფეხურები, კურიერის თანხა, რუკა ===== */
.ostep{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:14px 0 6px}
.ostep-i{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;font-size:12.5px;line-height:1.25;color:var(--muted,#7a8190)}
.ostep-i i{width:16px;height:16px;border-radius:50%;background:var(--line,#dfe2f3);border:3px solid var(--card,#fff);box-shadow:0 0 0 2px var(--line,#dfe2f3);position:relative;z-index:1}
.ostep-i::before{content:"";position:absolute;top:8px;right:50%;width:100%;height:3px;background:var(--line,#dfe2f3)}
.ostep-i:first-child::before{display:none}
.ostep-i.done i{background:#16a34a;box-shadow:0 0 0 2px #16a34a}
.ostep-i.done::before,.ostep-i.active::before{background:#16a34a}
.ostep-i.active i{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b,0 0 0 7px rgba(245,158,11,.22)}
.ostep-i.done b,.ostep-i.active b{color:var(--ink,#15192b)}
.ostep-i b{font-weight:700}
.ostep-note{margin:2px 0 8px;font-size:13px;font-weight:700;color:#2563eb}
.ostep-compact{margin:8px 0 2px;gap:2px}.ostep-compact .ostep-i{font-size:10.5px}.ostep-compact .ostep-i i{width:12px;height:12px}.ostep-compact .ostep-i::before{top:6px;height:2px}
.track-btn,.trk-btn{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line,#dfe2f3);background:var(--card,#fff);color:var(--ink,#15192b);border-radius:999px;padding:5px 12px;font:700 13px inherit;cursor:pointer}
.track-btn{margin:6px 0 4px;color:#2563eb;border-color:#bfd2ff}
.track-btn:hover,.trk-btn:hover{background:var(--tint,#eef1fb)}
.fee-card{margin:14px 0;padding:14px 16px;border-radius:16px;background:#fff7e6;border:1px solid #f5d38a;color:#5b4108}
.fee-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;font-weight:800}
.fee-card p{margin:6px 0 0;font-size:14px}
[data-theme="dark"] .fee-card{background:#2b2210;border-color:#6b5217;color:#f3dca2}
.fee-note-inline{margin:8px 2px 0;font-size:13px;color:var(--muted,#6b7280)}
.village-opt-fee{margin-left:auto;font-size:12.5px;font-weight:700;color:#92400e;background:#fef3c7;border-radius:999px;padding:2px 9px}
.order-fee b{color:#92400e}
.order-fee small{opacity:.75}
/* რუკის ფანჯარა */
.trk{position:fixed;inset:0;z-index:200;background:rgba(8,10,20,.55);display:flex;align-items:flex-end;justify-content:center;padding:12px}
.trk-card{width:min(460px,100%);background:var(--card,#fff);color:var(--ink,#15192b);border-radius:20px;overflow:hidden;box-shadow:0 24px 60px -20px #000;display:flex;flex-direction:column}
.trk-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 10px 16px}
.trk-head span{display:flex;gap:6px}
.trk-map{height:240px;position:relative}
.trk.big{align-items:stretch;padding:0}.trk.big .trk-card{width:100%;border-radius:0}.trk.big .trk-map{flex:1;height:auto}
@media(min-width:700px){.trk{align-items:center}.trk.big{align-items:stretch}}
.trk-info{padding:10px 16px 14px;font-size:14px}.trk-eta{font-size:16px}.trk-sub{color:var(--muted,#6b7280);margin-top:2px;font-size:13px}
.tm{position:relative;overflow:hidden;background:#e5e7eb;touch-action:none;cursor:grab;user-select:none}
.tm-tiles img{position:absolute;width:256px;height:256px;max-width:none;pointer-events:none}
.tm-mk{position:absolute;inset:0;pointer-events:none}
.tm-pin{position:absolute;width:0;height:0}
.tm-pin span{position:absolute;left:-13px;top:-13px;width:26px;height:26px;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.45)}
.tm-pin.pin-c span{background:#2563eb;animation:tmp 1.8s infinite}.tm-pin.pin-d span{background:#dc2626}
.tm-pin em{position:absolute;left:-10px;top:-32px;font-style:normal;font-size:18px}
@keyframes tmp{0%{box-shadow:0 0 0 0 rgba(37,99,235,.6)}100%{box-shadow:0 0 0 16px rgba(37,99,235,0)}}
.tm-zoom{position:absolute;right:8px;top:8px;display:flex;flex-direction:column;gap:4px}
.tm-zoom button{width:32px;height:32px;border-radius:8px;border:0;background:#fff;color:#111;font-size:20px;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.35);cursor:pointer}
.tm-attr{position:absolute;right:4px;bottom:3px;font-size:10px;background:rgba(255,255,255,.8);color:#333;padding:1px 5px;border-radius:4px;text-decoration:none}

/* ===== v29: მსუბუქი რუკა (nbmap.js) ===== */
.nbm{position:relative;overflow:hidden;background:#dfe3ea;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;border-radius:14px}
.nbm-tiles img{position:absolute;width:256px;height:256px;max-width:none;pointer-events:none}
.nbm-svg{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}
.nbm-mk{position:absolute;inset:0;pointer-events:none}
.nbm-pin{position:absolute;width:0;height:0;pointer-events:auto}
.nbm-pin>span{position:absolute;left:-12px;top:-12px;width:24px;height:24px;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.45);background:#2563eb;display:grid;place-items:center;font-size:13px}
.nbm-pin.drag,.nbm-pin.clk{cursor:pointer}
.nbm-vtx>span{left:-7px;top:-7px;width:14px;height:14px;background:#fff;border:3px solid #111;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.nbm-rest>span{left:-16px;top:-16px;width:32px;height:32px;background:#111827;font-size:16px}
.nbm-dest>span{background:#dc2626}
.nbm-me>span{background:#2563eb;animation:nbmp 1.8s infinite}
.nbm-ord>span{left:-15px;top:-15px;width:30px;height:30px;background:#dc2626;color:#fff;font-weight:800;font-size:11px}
.nbm-ord.ready>span{background:#f59e0b}
@keyframes nbmp{0%{box-shadow:0 0 0 0 rgba(37,99,235,.6)}100%{box-shadow:0 0 0 16px rgba(37,99,235,0)}}
.nbm-ctl{position:absolute;right:8px;top:8px;display:flex;flex-direction:column;gap:4px;z-index:2}
.nbm-ctl button{width:34px;height:34px;border-radius:9px;border:0;background:#fff;color:#111;font-size:19px;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.35);cursor:pointer}
.nbm-attr{position:absolute;right:4px;bottom:3px;font-size:10px;background:rgba(255,255,255,.85);color:#333;padding:1px 5px;border-radius:4px;text-decoration:none;z-index:2}
/* მიტანის ფასი (მომხმარებელი) */
.dq-box{margin-top:10px;padding:12px 14px;border-radius:14px;background:var(--tint,#eef1fb);border:1px solid var(--line,#dfe2f3);font-size:14px}
.dq-box b{font-size:16px}
.dq-box .dq-zone{display:inline-flex;align-items:center;gap:6px;font-weight:700}
.dq-box .dq-zone i{width:10px;height:10px;border-radius:50%;display:inline-block}
.dq-box small{color:var(--muted,#6b7280)}
.dq-box.err{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.dq-line{display:flex;justify-content:space-between;gap:10px}
.geo-map{height:270px!important}
@media(max-width:600px){.geo-map{height:240px!important}}
.req{color:#dc2626}
.geo-need{color:#dc2626!important;font-weight:700}
.dlv-line{color:var(--muted,#6b7280)}
.nbm.nbm-full{position:fixed!important;inset:0!important;z-index:5000;border-radius:0!important;height:auto!important;width:auto!important;margin:0!important}
.nbm-ctl button[data-full],.nbm-ctl button[data-locate]{font-size:16px}
.nbm-vill>span{left:-8px;top:-8px;width:16px;height:16px;background:#16a34a}
.nbm-vill>em{position:absolute;left:10px;top:-9px;white-space:nowrap;font-style:normal;font-weight:800;font-size:12px;background:rgba(255,255,255,.92);color:#111;padding:1px 6px;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.3)}
