@charset "UTF-8";
:root {
  --bg: #f9f7f2;
  --bg-elevated: #ffffff;
  --surface: rgba(255, 255, 255, 0.95);
  --surface-strong: #ffffff;
  --border: rgba(26, 26, 26, 0.08);
  --text: #1a1a1a;
  --muted: #666666;
  --primary: #c59d5f;
  --primary-dark: #9a7a3c;
  --primary-glow: rgba(197, 157, 95, 0.28);
  --success: #22c55e;
  --warning: #f59e0b;
  --danger: #ef4444;
  --radius: 18px;
  --radius-sm: 12px;
  --shadow: 0 24px 80px rgba(0, 0, 0, 0.45);
  --font: "Segoe UI", system-ui, -apple-system, sans-serif;
}

/* WhatsApp Asistan secure pairing */
.assistant-link-card { position: relative; overflow: hidden; }
.assistant-link-card [hidden] { display: none !important; }
.assistant-link-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg, #25d366, #34b7f1, #8b5cf6); }
.assistant-link-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.assistant-link-head .card-title { margin: .45rem 0 .25rem; }
.assistant-link-head p { margin: 0; }
.assistant-link-status { padding: .35rem .7rem; border-radius: 999px; font-size: .75rem; font-weight: 800; white-space: nowrap; border: 1px solid var(--border-color, rgba(255,255,255,.12)); }
.assistant-link-status.is-on { color: #86efac; border-color: rgba(37,211,102,.35); background: rgba(37,211,102,.1); }
.assistant-link-status.is-off { color: var(--muted); background: rgba(255,255,255,.03); }
.assistant-link-body { margin-top: 1rem; }
.assistant-link-steps { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.assistant-link-steps > div { display: flex; align-items: center; gap: .7rem; padding: .85rem; border: 1px solid var(--border-color, rgba(255,255,255,.1)); border-radius: 14px; background: rgba(255,255,255,.02); }
.assistant-link-steps span { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 10px; background: rgba(37,211,102,.12); color: #86efac; font-weight: 800; }
.assistant-link-steps p { margin: 0; font-size: .86rem; line-height: 1.45; }
.assistant-link-code { margin-top: .85rem; padding: 1rem; border-radius: 16px; text-align: center; border: 1px solid rgba(37,211,102,.35); background: rgba(37,211,102,.07); }
.assistant-link-code > span, .assistant-link-code > small { display: block; }
.assistant-link-code strong { display: block; margin: .4rem 0; font-size: clamp(1.25rem, 3vw, 2rem); letter-spacing: .16em; color: #86efac; }
.assistant-link-actions { display: flex; align-items: center; gap: .65rem; flex-wrap: wrap; margin-top: .9rem; }
@media (max-width: 720px) { .assistant-link-head { flex-direction: column; } .assistant-link-steps { grid-template-columns: 1fr; } }

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font);
  background: var(--bg);
  color: var(--text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; display: block; }

.container {
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
}

.glass {
  background: var(--surface);
  border: 1px solid var(--border);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 22px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 600;
  cursor: pointer;
  transition: transform .2s, box-shadow .2s, background .2s;
  text-decoration: none;
}
.btn:hover { transform: translateY(-1px); text-decoration: none; }
.btn-primary {
  background: linear-gradient(135deg, var(--primary), #dbad52);
  color: #fff;
  box-shadow: 0 12px 32px var(--primary-glow);
}
.btn-primary:hover { box-shadow: 0 16px 40px var(--primary-glow); }
.btn-ghost {
  background: transparent;
  border-color: var(--border);
  color: var(--text);
}
.btn-block { width: 100%; }
.btn-sm { padding: 10px 16px; font-size: 14px; }

.badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  background: rgba(255, 107, 44, 0.12);
  color: #ffb48a;
  border: 1px solid rgba(255, 107, 44, 0.25);
}

.muted { color: var(--muted); }
.section { padding: 88px 0; }
.section-title {
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.15;
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}
.section-subtitle {
  color: var(--muted);
  font-size: 18px;
  max-width: 640px;
  margin: 0 0 40px;
}

/* Landing */
.landing-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(16px);
  background: rgba(7, 11, 20, 0.78);
  border-bottom: 1px solid var(--border);
}
.landing-nav .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
}
.logo {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 700;
  font-size: 18px;
  color: var(--text);
  text-decoration: none;
}
.logo-mark {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--primary), #ff9a5c);
  color: #111;
  font-weight: 800;
}
.nav-links { display: flex; gap: 12px; align-items: center; }

.hero {
  padding: 72px 0 40px;
  position: relative;
  overflow: hidden;
}
.hero::before {
  content: "";
  position: absolute;
  inset: -20% auto auto 50%;
  width: 600px;
  height: 600px;
  transform: translateX(-50%);
  background: radial-gradient(circle, rgba(255,107,44,.18), transparent 65%);
  pointer-events: none;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 48px;
  align-items: center;
}
.hero h1 {
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.05;
  margin: 16px 0 20px;
  letter-spacing: -0.03em;
}
.hero-lead {
  font-size: 20px;
  color: var(--muted);
  margin-bottom: 28px;
}
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 28px; }
.hero-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.stat-card {
  padding: 16px;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.03);
  border: 1px solid var(--border);
}
.stat-card strong { display: block; font-size: 22px; }
.stat-card span { color: var(--muted); font-size: 13px; }

.phone-mockup {
  position: relative;
  padding: 18px;
  border-radius: 32px;
  background: linear-gradient(160deg, #1a2238, #0c111f);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: var(--shadow);
}
.phone-screen {
  border-radius: 22px;
  overflow: hidden;
  background: #0d1322;
  min-height: 420px;
  border: 1px solid rgba(255,255,255,.06);
}
.mock-header {
  padding: 16px;
  background: rgba(255,107,44,.12);
  border-bottom: 1px solid var(--border);
}
.mock-menu-item {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(255,255,255,.04);
}
.mock-menu-item span:last-child { color: var(--primary); font-weight: 700; }

.chat-bubble {
  padding: 14px 18px;
  border-radius: 18px;
  margin-bottom: 12px;
  max-width: 90%;
  font-size: 15px;
}
.chat-bubble.in {
  background: #12261a;
  border: 1px solid rgba(34,197,94,.2);
  margin-right: auto;
}
.chat-bubble.out {
  background: #1a2740;
  border: 1px solid var(--border);
  margin-left: auto;
}
.chat-bubble.system {
  background: rgba(255,107,44,.1);
  border: 1px solid rgba(255,107,44,.25);
  margin: 0 auto;
  text-align: center;
  color: #ffc9a8;
}

.panel-preview {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 0;
  overflow: hidden;
  min-height: 360px;
}
.panel-sidebar {
  background: rgba(0,0,0,.25);
  padding: 20px 16px;
  border-right: 1px solid var(--border);
}
.panel-sidebar .item {
  padding: 10px 12px;
  border-radius: 10px;
  color: var(--muted);
  font-size: 14px;
  margin-bottom: 4px;
}
.panel-sidebar .item.active {
  background: rgba(255,107,44,.15);
  color: #ffb48a;
}
.panel-main { padding: 24px; }
.metric-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.metric {
  padding: 16px;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.03);
  border: 1px solid var(--border);
}
.metric strong { font-size: 24px; display: block; }

.features-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.feature-card {
  padding: 24px;
  border-radius: var(--radius);
  background: var(--surface);
  border: 1px solid var(--border);
  transition: border-color .2s, transform .2s;
}
.feature-card:hover {
  border-color: rgba(255,107,44,.35);
  transform: translateY(-2px);
}
.feature-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(255,107,44,.12);
  color: var(--primary);
  font-size: 20px;
  margin-bottom: 16px;
}
.feature-card h3 { margin: 0 0 8px; font-size: 18px; }
.feature-card p { margin: 0; color: var(--muted); font-size: 14px; }

.steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.step-card {
  padding: 28px;
  position: relative;
}
.step-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--primary);
  color: #111;
  font-weight: 800;
  margin-bottom: 16px;
}

.pricing-card {
  max-width: 520px;
  margin: 0 auto;
  padding: 36px;
  text-align: center;
}
.price-tag {
  font-size: 48px;
  font-weight: 800;
  margin: 12px 0;
  letter-spacing: -0.03em;
}
.price-tag small { font-size: 18px; color: var(--muted); font-weight: 500; }
.pricing-features {
  text-align: left;
  margin: 28px 0;
  padding: 0;
  list-style: none;
}
.pricing-features li {
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
  color: var(--muted);
}
.pricing-features li::before {
  content: "✓";
  color: var(--success);
  margin-right: 10px;
  font-weight: 700;
}

.cta-band {
  text-align: center;
  padding: 64px 32px;
  background: linear-gradient(135deg, rgba(255,107,44,.15), rgba(255,107,44,.04));
  border: 1px solid rgba(255,107,44,.2);
  border-radius: var(--radius);
}

.contact-form {
  display: grid;
  gap: 14px;
  max-width: 520px;
  margin: 0 auto;
}
.contact-form input,
.contact-form textarea,
.auth-form input,
.panel-form input,
.panel-form select,
.panel-form textarea {
  width: 100%;
  padding: 14px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--border);
  background: rgba(0,0,0,.25);
  color: var(--text);
  font: inherit;
}
.contact-form textarea { min-height: 120px; resize: vertical; }
label span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 14px; }

.site-footer {
  padding: 40px 0;
  border-top: 1px solid var(--border);
  color: var(--muted);
  text-align: center;
  font-size: 14px;
}

/* Auth — landing ile uyumlu */
.auth-page {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: #faf8f4;
}
.auth-card {
  width: min(440px, 100%);
  padding: 40px 36px;
  text-align: center;
  background: #fff;
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 24px;
  box-shadow: 0 24px 64px rgba(0,0,0,.08);
}
.brand-mark {
  width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 16px;
  display: grid; place-items: center; font-size: 24px; font-weight: 800;
  background: linear-gradient(135deg, #c8952e, #dbad52);
  color: #fff;
}
.auth-page .btn-primary {
  background: linear-gradient(135deg, #c8952e, #dbad52);
  color: #fff;
  box-shadow: 0 10px 28px rgba(200,149,46,.28);
}
.auth-page h1 { color: #1a1a1a; font-size: 24px; }
.auth-page .muted { color: #5c5c5c; }
.auth-form input {
  background: #faf8f4; border-color: rgba(26,26,26,.1); color: #1a1a1a;
}
.auth-page .alert-error { color: #991b1b; background: #fee2e2; border-color: #fecaca; }
.auth-form { text-align: left; margin-top: 24px; display: grid; gap: 14px; }
.auth-footer { margin-top: 20px; font-size: 14px; }
.auth-demo-box {
  margin-top: 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #faf8f4;
  border: 1px solid rgba(197, 157, 95, .24);
  text-align: left;
  font-size: 12px;
  line-height: 1.55;
}
.auth-demo-box strong {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  color: #5c4a2a;
}
.auth-demo-box ul {
  margin: 0;
  padding-left: 18px;
}
.auth-demo-box li { margin: 4px 0; }
.auth-demo-box code {
  font-size: 11px;
  word-break: break-all;
}
.alert {
  padding: 12px 16px;
  border-radius: var(--radius-sm);
  margin: 16px 0;
  font-size: 14px;
}
.alert-error {
  background: rgba(239,68,68,.12);
  border: 1px solid rgba(239,68,68,.3);
  color: #fecaca;
}
.alert-success {
  background: rgba(34,197,94,.12);
  border: 1px solid rgba(34,197,94,.3);
  color: #bbf7d0;
}

/* Menu (customer) — referans uyumlu açık tema */
.menu-app {
  min-height: 100vh;
  background: var(--home-cream, #faf8f4);
  padding-bottom: 100px;
  color: var(--home-text, #1a1a1a);
}
.menu-header {
  position: sticky; top: 0; z-index: 40;
  padding: 16px 20px;
  background: rgba(250, 248, 244, 0.94);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(26,26,26,.08);
}
.menu-header h1 { margin: 0; font-size: 22px; color: #1a1a1a; }
.menu-header p, .menu-subtitle { margin: 4px 0 0; color: #5c5c5c; font-size: 14px; }
.menu-header-inner { display: flex; justify-content: space-between; align-items: center; gap: 12px; max-width: 720px; margin: 0 auto; }
.table-badge {
  padding: 8px 14px; border-radius: 999px; font-size: 12px; font-weight: 600;
  background: rgba(200,149,46,.12); color: #a67c1e; border: 1px solid rgba(200,149,46,.25);
}
.category-tabs {
  display: flex; gap: 8px; overflow-x: auto; padding: 12px 16px;
  max-width: 720px; margin: 0 auto; scrollbar-width: none;
}
.category-tab {
  flex: 0 0 auto; padding: 10px 18px; border-radius: 999px;
  border: 1px solid rgba(26,26,26,.1); background: #fff;
  color: #5c5c5c; cursor: pointer; font: inherit; font-weight: 500;
}
.category-tab.active {
  background: #c8952e; border-color: #c8952e; color: #fff; font-weight: 700;
}
.menu-items {
  padding: 0 16px; display: grid; gap: 14px; max-width: 720px; margin: 0 auto;
}
@media (min-width: 768px) {
  .menu-items { max-width: 960px; grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .category-tabs, .menu-header-inner, #campaigns .campaign-banner { max-width: 960px; }
}
.success-icon {
  width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%;
  background: linear-gradient(135deg, #c8952e, #dbad52); color: #fff;
  display: grid; place-items: center; font-size: 28px; font-weight: 800;
}
.menu-item-card {
  display: grid; grid-template-columns: 96px 1fr; gap: 14px;
  padding: 16px; border-radius: 20px;
  background: #fff; border: 1px solid rgba(26,26,26,.07);
  box-shadow: 0 10px 32px rgba(0,0,0,.05);
}
.menu-item-thumb {
  width: 96px; height: 96px; border-radius: 16px; overflow: hidden; flex-shrink: 0;
}
.menu-item-thumb img { width: 100%; height: 100%; object-fit: cover; }
.menu-item-placeholder {
  display: grid; place-items: center; font-weight: 800; font-size: 28px;
  background: linear-gradient(135deg, rgba(200,149,46,.25), rgba(200,149,46,.08));
  color: #a67c1e; border: 1px solid rgba(200,149,46,.2);
}
.menu-item-body { min-width: 0; }
.menu-item-top { display: flex; justify-content: space-between; gap: 8px; align-items: flex-start; }
.menu-item-card h3 { margin: 0 0 4px; font-size: 16px; color: #1a1a1a; }
.menu-item-desc { margin: 0 0 6px; color: #5c5c5c; font-size: 13px; line-height: 1.45; }
.menu-item-meta { margin: 0; font-size: 11px; color: #888; }
.menu-item-price { font-weight: 800; color: #c8952e; font-size: 17px; white-space: nowrap; }
.popular-badge {
  display: inline-block; margin-left: 6px; padding: 2px 8px; border-radius: 999px;
  font-size: 10px; font-weight: 700; background: rgba(200,149,46,.15); color: #a67c1e;
}
.menu-app .cart-bar {
  background: #fff;
  border: 1px solid rgba(26,26,26,.1);
  box-shadow: 0 16px 48px rgba(0,0,0,.12);
  color: #1a1a1a;
}
.menu-app .cart-panel {
  background: #fff;
  color: #1a1a1a;
  border-top: 1px solid rgba(26,26,26,.08);
  box-shadow: 0 -12px 48px rgba(0,0,0,.08);
}
.menu-app .cart-field input,
.menu-app .cart-field textarea,
.menu-app .cart-field select {
  background: #faf8f4;
  border-color: rgba(26,26,26,.1);
  color: #1a1a1a;
}
.menu-app .cart-panel-actions {
  background: linear-gradient(to top, #fff 78%, rgba(255,255,255,0));
}
.menu-app .cart-panel .btn-primary {
  background: linear-gradient(135deg, #c49a4c, #dbad52);
  color: #fff;
}
.menu-app .campaign-banner {
  background: rgba(196,154,76,.1);
  border-color: rgba(196,154,76,.22);
  color: #8b6914;
}
.order-success { background: rgba(26,26,26,.45); }
.order-success-card { background: #fff; color: #1a1a1a; }
.campaign-banner {
  margin: 12px 16px; max-width: 688px; margin-inline: auto;
  background: rgba(200,149,46,.1); border-color: rgba(200,149,46,.25); color: #8b6914;
}
.menu-item-actions {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
}
.qty-control {
  display: flex;
  align-items: center;
  gap: 10px;
}
.qty-control button {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.04);
  color: var(--text);
  cursor: pointer;
  font-size: 18px;
}
.stock-badge {
  font-size: 11px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(239,68,68,.12);
  color: #991b1b;
  border: 1px solid rgba(239,68,68,.25);
}
.campaign-banner {
  margin: 12px 16px;
  padding: 14px 16px;
  border-radius: var(--radius-sm);
  background: rgba(255,107,44,.1);
  border: 1px solid rgba(255,107,44,.25);
  color: #ffc9a8;
  font-size: 14px;
}
.cart-bar {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  border-radius: 999px;
  background: rgba(15,22,40,.95);
  border: 1px solid var(--border);
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
}
.cart-drawer {
  position: fixed;
  inset: 0;
  z-index: 60;
  background: rgba(0,0,0,.6);
  display: none;
  align-items: flex-end;
}
.cart-drawer.open { display: flex; }
.cart-panel {
  width: 100%;
  max-height: 85vh;
  max-height: 85dvh;
  overflow: auto;
  background: var(--bg-elevated);
  border-radius: 24px 24px 0 0;
  padding: 24px 16px calc(24px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid var(--border);
  -webkit-overflow-scrolling: touch;
}
.cart-field {
  display: block;
  margin-bottom: 12px;
}
.cart-field span {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  color: var(--muted);
}
.cart-field input,
.cart-field textarea,
.cart-field select {
  width: 100%;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: rgba(0,0,0,.25);
  color: var(--text);
  font: inherit;
  box-sizing: border-box;
}
.cart-field textarea { resize: vertical; min-height: 72px; }
#order-msg.alert-error { color: #fecaca; }
#order-msg.alert-success { color: #86efac; }
.cart-panel-actions {
  position: sticky;
  bottom: 0;
  z-index: 2;
  padding-top: 12px;
  margin-top: 4px;
  background: linear-gradient(to top, var(--bg-elevated) 75%, rgba(0,0,0,0));
}
@media (min-width: 768px) {
  .cart-drawer.open {
    align-items: center;
    justify-content: center;
    padding: 24px;
  }
  .cart-panel {
    max-width: 480px;
    border-radius: 24px;
    border: 1px solid var(--border);
    max-height: 90vh;
  }
}
.cart-line {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}

/* Panel */
.panel-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  min-height: 100vh;
}
.panel-side {
  background: #0a1020;
  border-right: 1px solid var(--border);
  padding: 24px 16px;
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: auto;
  width: 240px;
  display: flex;
  flex-direction: column;
}
.panel-side-footer {
  margin-top: auto;
  padding-top: 20px;
  border-top: 1px solid rgba(26,26,26,.08);
}
.panel-nav {
  display: flex;
  flex-direction: column;
  gap: 18px;
  flex: 1;
}
.panel-nav-group {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.panel-nav-group-label {
  padding: 0 14px;
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
  opacity: .7;
}
.panel-nav button,
.panel-nav a {
  display: block;
  width: 100%;
  text-align: left;
  padding: 11px 14px;
  margin-bottom: 0;
  border: none;
  border-radius: 12px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  font: inherit;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.panel-nav button.active,
.panel-nav a.active {
  background: rgba(255,107,44,.14);
  color: #ffb48a;
  box-shadow: inset 2px 0 0 #ff6b2c;
}
.panel-content { padding: 28px; }
.panel-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.panel-top-start {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
.panel-sidebar-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  padding: 10px;
  border: 1px solid rgba(26,26,26,.12);
  border-radius: 12px;
  background: #fff;
  cursor: pointer;
}
.panel-sidebar-toggle span {
  display: block;
  height: 2px;
  width: 100%;
  background: #1a1a1a;
  border-radius: 999px;
}
.panel-sidebar-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.35);
  z-index: 999;
}
.panel-top h1 { margin: 0; font-size: 28px; }
.tab-panel { display: none; }
.tab-panel.active { display: block; }
.data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.data-table th,
.data-table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
  text-align: left;
}
.data-table th { color: var(--muted); font-weight: 600; }
.status-pill {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
}
.status-pending { background: rgba(245,158,11,.15); color: #fcd34d; }
.status-confirmed { background: rgba(59,130,246,.15); color: #93c5fd; }
.status-preparing { background: rgba(168,85,247,.15); color: #d8b4fe; }
.status-ready { background: rgba(34,197,94,.15); color: #86efac; }
.status-delivered { background: rgba(34,197,94,.2); color: #4ade80; }
.status-cancelled { background: rgba(239,68,68,.15); color: #fca5a5; }

.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.card { padding: 20px; border-radius: var(--radius-sm); background: var(--surface); border: 1px solid var(--border); }
.panel-form { display: grid; gap: 12px; max-width: 480px; }

@media (max-width: 1024px) {
  .hero-grid, .features-grid, .steps { grid-template-columns: 1fr; }
  .panel-preview { grid-template-columns: 1fr; }
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .hero-stats, .metric-grid { grid-template-columns: 1fr; }
  .panel-layout { grid-template-columns: 1fr; }
  .panel-sidebar-toggle { display: inline-flex; }
  .panel-side {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1000;
    height: 100vh;
    transform: translateX(-105%);
    transition: transform .25s ease;
    box-shadow: 8px 0 32px rgba(0,0,0,.12);
  }
  .panel-side.is-open { transform: translateX(0); }
  .panel-nav { flex-direction: column; gap: 8px; }
  .panel-nav button, .panel-nav a { width: 100%; }
  .grid-2 { grid-template-columns: 1fr; }
  .nav-links .btn-ghost { display: none; }
  .menu-manager { grid-template-columns: 1fr !important; }
  .form-row-2 { grid-template-columns: 1fr !important; }
}

@media (max-width: 600px) {
  .features-grid { grid-template-columns: 1fr; }
  .section { padding: 56px 0; }
}

/* MVP enhancements */
.card-title { margin: 0 0 16px; font-size: 18px; }
.stack-list { display: grid; gap: 10px; margin-top: 16px; }
.stack-item {
  padding: 14px;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.03);
  border: 1px solid var(--border);
}
.stack-item-main { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.stack-item-actions { margin-top: 10px; }
.check-row { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); }
.panel-select, .panel-form input, .panel-form select, .panel-form textarea {
  width: 100%; padding: 12px 14px; border-radius: var(--radius-sm);
  border: 1px solid var(--border); background: rgba(0,0,0,.25); color: var(--text); font: inherit;
}
.item-editor { border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 12px; margin-bottom: 10px; background: rgba(255,255,255,.02); }
.item-editor summary { cursor: pointer; display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.item-preview-thumb { width: 72px; height: 72px; object-fit: cover; border-radius: 10px; }

.icon-svg {
  background: linear-gradient(135deg, rgba(255,107,44,.2), rgba(255,107,44,.05));
  border: 1px solid rgba(255,107,44,.25);
  font-size: 14px; font-weight: 800; color: #ffb48a;
}
.icon-zero { font-size: 16px; }
.phone-mockup-premium { padding-top: 28px; position: relative; }
.phone-notch {
  position: absolute; top: 10px; left: 50%; transform: translateX(-50%);
  width: 72px; height: 6px; border-radius: 999px; background: rgba(255,255,255,.12);
}
.mock-header-premium { display: flex; align-items: center; gap: 12px; }
.mock-brand-dot {
  width: 36px; height: 36px; border-radius: 10px;
  background: linear-gradient(135deg, var(--primary), #ff9a5c);
}

.menu-header-inner { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.menu-subtitle { margin: 4px 0 0; color: var(--muted); font-size: 14px; }
.table-badge {
  padding: 8px 14px; border-radius: 999px; font-size: 13px; font-weight: 700;
  background: rgba(255,107,44,.15); color: #ffb48a; border: 1px solid rgba(255,107,44,.3); white-space: nowrap;
}
.menu-item-card {
  display: grid; grid-template-columns: 72px 1fr; gap: 14px; padding: 16px;
  border-radius: var(--radius-sm); background: var(--surface-strong);
  border: 1px solid var(--border); margin-bottom: 12px;
}
.menu-item-card.is-disabled { opacity: .72; }
.menu-item-thumb img { width: 72px; height: 72px; object-fit: cover; border-radius: 14px; }
.menu-item-body { min-width: 0; }
.menu-item-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.menu-item-top h3 { margin: 0; font-size: 17px; line-height: 1.3; }
.menu-item-desc, .menu-item-meta { margin: 6px 0 0; color: var(--muted); font-size: 13px; }
.popular-badge {
  display: inline-block; margin-left: 6px; font-size: 10px; padding: 3px 8px; border-radius: 999px;
  background: rgba(255,107,44,.18); color: #ffb48a; vertical-align: middle;
}
.empty-state { text-align: center; padding: 48px 24px; color: var(--muted); }
.empty-icon { font-size: 40px; margin-bottom: 12px; opacity: .5; }
.cart-total-line { border-top: 1px solid var(--border); margin-top: 8px; padding-top: 12px; }

/* Gel-Al/Paket seçim ekranı (#pickup-kind-overlay) — restoranın seçtiği menü
   temasının (--dm-shell/--dm-text/--dm-accent/--dm-btn-from/-to) CSS
   değişkenlerini kullanır, böylece her temada (koyu/açık, hangi renk paleti
   olursa olsun) otomatik uyumlu görünür; sabit siyah/turuncu renk kullanılmaz. */
.pickup-kind-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, .75);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.pickup-kind-card {
  background: var(--dm-shell, #1a1a1a);
  border-radius: 16px;
  padding: 28px 22px;
  max-width: 340px;
  width: 100%;
  text-align: center;
  border: 1px solid var(--dm-border, rgba(255,255,255,.1));
}
.pickup-kind-image {
  display: block;
  width: 100%;
  max-height: 180px;
  object-fit: cover;
  border-radius: 12px;
  margin: 0 0 16px;
}
.pickup-kind-title {
  color: var(--dm-text, #fff);
  font-size: 1.15rem;
  margin: 0 0 6px;
}
.pickup-kind-subtitle {
  color: var(--dm-muted, rgba(255,255,255,.6));
  font-size: .85rem;
  margin: 0 0 20px;
}
.pickup-kind-actions {
  display: flex;
  gap: 10px;
  align-items: stretch;
}
.pickup-kind-btn {
  flex: 1 1 0;
  min-width: 0;
  padding: 14px 10px;
  border-radius: 10px;
  font-weight: 700;
  font-size: .95rem;
  white-space: nowrap;
  cursor: pointer;
}
.pickup-kind-btn--primary {
  border: none;
  background: linear-gradient(135deg, var(--dm-btn-from, #e2711d), var(--dm-btn-to, #e2711d));
  color: #fff;
}
.pickup-kind-btn--outline {
  border: 1px solid var(--dm-border, rgba(255,255,255,.25));
  background: transparent;
  color: var(--dm-text, #fff);
}

/* Gel-Al / Paket otomatik indirim — seçim ekranındaki tanıtım şeridi. Restoranın
   tema vurgu rengini (--dm-accent) kullanır, böylece her temada uyumlu görünür;
   yavaş bir parlama geçişiyle dikkat çeker (prefers-reduced-motion'da otomatik durur). */
.pickup-promo {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  padding: 12px 14px;
  border-radius: 12px;
  text-align: left;
  background: linear-gradient(135deg, color-mix(in srgb, var(--dm-accent, #e2711d) 28%, transparent), color-mix(in srgb, var(--dm-accent, #e2711d) 10%, transparent));
  border: 1px solid color-mix(in srgb, var(--dm-accent, #e2711d) 45%, transparent);
  box-shadow: 0 8px 22px color-mix(in srgb, var(--dm-accent, #e2711d) 20%, transparent);
  animation: pickupPromoIn .45s ease both .1s;
}
.pickup-promo-badge {
  flex: none;
  display: grid;
  place-items: center;
  min-width: 44px;
  height: 38px;
  padding: 0 8px;
  border-radius: 10px;
  background: var(--dm-accent, #e2711d);
  color: #1a1208;
  font-weight: 800;
  font-size: 1rem;
  letter-spacing: -.02em;
  box-shadow: 0 4px 12px color-mix(in srgb, var(--dm-accent, #e2711d) 40%, transparent);
}
.pickup-promo-text {
  color: var(--dm-text, #ffe9d6);
  font-size: .84rem;
  font-weight: 600;
  line-height: 1.4;
}
.pickup-promo-shine {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 42%;
  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .22), transparent);
  animation: pickupPromoShine 3.4s ease-in-out infinite;
  pointer-events: none;
}
@keyframes pickupPromoIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes pickupPromoShine {
  0% { left: -50%; }
  60%, 100% { left: 115%; }
}

/* Sepetteki indirim satırı — müşteri indirimin gerçekten işlediğini görsün. */
.cart-line.cart-discount-line { color: #34d399; font-weight: 700; }
.cart-line.cart-discount-line strong { color: #34d399; }
.menu-theme-light .cart-line.cart-discount-line,
.menu-theme-light .cart-line.cart-discount-line strong { color: #047857; }

.order-success[hidden] {
  display: none !important;
}
.order-success:not([hidden]) {
  position: fixed; inset: 0; z-index: 80; display: grid; place-items: center;
  background: rgba(0,0,0,.7); padding: 24px;
}
.order-success-card { max-width: 360px; width: 100%; padding: 32px 24px; text-align: center; }
.success-icon {
  width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 50%;
  display: grid; place-items: center; background: rgba(34,197,94,.15);
  color: #86efac; font-size: 28px; font-weight: 800;
}

@media (max-width: 600px) {
  .menu-item-card { grid-template-columns: 72px 1fr; }
  .menu-item-thumb img, .menu-item-placeholder { width: 72px; height: 72px; }
}

/* MVP final */
.menu-item-placeholder, .item-preview-thumb.menu-item-placeholder {
  display: grid; place-items: center;
  width: 72px; height: 72px; border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,107,44,.25), rgba(255,107,44,.08));
  border: 1px solid rgba(255,107,44,.3);
  font-size: 24px; font-weight: 800; color: #ffb48a;
}
.panel-toolbar {
  display: flex; justify-content: space-between; align-items: center;
  gap: 12px; flex-wrap: wrap; margin-bottom: 16px;
}
.panel-form-inline { display: grid; gap: 10px; max-width: none; }
.row-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.badge-muted { background: rgba(255,255,255,.08); color: var(--muted); }
.item-editor.is-archived { opacity: .85; border-style: dashed; }
.order-detail { padding: 8px 0; }
.order-items-list { margin: 8px 0 0; padding-left: 18px; font-size: 14px; }
.order-detail-row td { background: rgba(0,0,0,.15); border-top: none; }
.orders-table { width: 100%; }
.contact-form label span { display: block; margin-bottom: 6px; font-size: 14px; color: var(--muted); }
.contact-form input, .contact-form textarea {
  width: 100%; padding: 12px 14px; border-radius: var(--radius-sm);
  border: 1px solid var(--border); background: rgba(0,0,0,.2); color: var(--text); font: inherit;
}
.campaign-banner {
  margin: 12px 16px; padding: 14px 16px; border-radius: var(--radius-sm);
  background: linear-gradient(135deg, rgba(255,107,44,.2), rgba(255,107,44,.08));
  border: 1px solid rgba(255,107,44,.35); font-size: 14px; line-height: 1.5;
}
.campaign-banner strong { display: block; margin-bottom: 4px; }
.panel-form .btn { justify-self: start; }
.panel-content .data-table td, .panel-content .data-table th { padding: 12px; text-align: left; vertical-align: top; }
.panel-content .data-table { width: 100%; border-collapse: collapse; }
.panel-content .data-table th { font-size: 13px; color: var(--muted); border-bottom: 1px solid var(--border); }
.panel-content .data-table td { border-bottom: 1px solid var(--border); }

/* ============================================================
   LANDING PAGE — Praticore Menü OS (referans-kurgu, özgün asset)
   ============================================================ */
.landing-page {
  --lp-bg: #f7f8fc;
  --lp-bg-dark: #070b14;
  --lp-surface: #ffffff;
  --lp-text: #0f172a;
  --lp-muted: #5b6478;
  --lp-border: rgba(15, 23, 42, 0.08);
  background: var(--lp-bg);
  color: var(--lp-text);
}
.landing-page a { color: var(--primary); }
.landing-page .landing-nav {
  background: rgba(255, 255, 255, 0.88);
  border-bottom: 1px solid var(--lp-border);
}
.landing-page .logo { color: var(--lp-text); }
.landing-page .nav-links a:not(.btn) {
  color: var(--lp-muted);
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  padding: 8px 10px;
}
.landing-page .nav-links a:not(.btn):hover { color: var(--lp-text); }
.landing-page .btn-ghost {
  border-color: var(--lp-border);
  color: var(--lp-text);
  background: #fff;
}
.landing-page .btn-lg { padding: 16px 28px; font-size: 16px; }

/* Hero */
.lp-hero {
  padding: 56px 0 80px;
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(255, 107, 44, 0.1), transparent),
    linear-gradient(180deg, #fff 0%, var(--lp-bg) 100%);
  overflow: hidden;
}
.lp-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 40px;
  align-items: center;
}
.lp-hero-copy h1 {
  font-size: clamp(38px, 5.5vw, 64px);
  line-height: 1.04;
  letter-spacing: -0.035em;
  margin: 20px 0 18px;
  color: var(--lp-text);
}
.lp-pill {
  display: inline-flex;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  background: rgba(255, 107, 44, 0.1);
  color: #c2410c;
  border: 1px solid rgba(255, 107, 44, 0.2);
}
.lp-lead {
  font-size: clamp(17px, 2.2vw, 21px);
  line-height: 1.55;
  color: var(--lp-muted);
  max-width: 520px;
  margin: 0 0 28px;
}
.lp-hero-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 32px; }
.lp-trust-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  max-width: 420px;
}
.lp-trust-item {
  padding: 14px 16px;
  border-radius: 14px;
  background: var(--lp-surface);
  border: 1px solid var(--lp-border);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}
.lp-trust-item strong { display: block; font-size: 22px; color: var(--lp-text); }
.lp-trust-item span { font-size: 12px; color: var(--lp-muted); }

/* Hero visual cluster */
.lp-hero-visual {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lp-wa-floats {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
}
.lp-wa-bubble {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 16px;
  font-size: 13px;
  font-weight: 600;
  max-width: 220px;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
  animation: lp-float 6s ease-in-out infinite;
}
.lp-wa-out {
  background: #fff;
  color: var(--lp-text);
  border: 1px solid var(--lp-border);
}
.lp-wa-in {
  background: #e8f8ee;
  color: #166534;
  border: 1px solid rgba(34, 197, 94, 0.25);
}
.lp-wa-icon {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #25d366;
  flex-shrink: 0;
  position: relative;
}
.lp-wa-icon::after {
  content: "";
  position: absolute;
  inset: 4px;
  border: 2px solid #fff;
  border-radius: 50%;
  border-top-color: transparent;
  border-left-color: transparent;
  transform: rotate(35deg);
}
.lp-wa-check {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #22c55e;
  flex-shrink: 0;
  position: relative;
}
.lp-wa-check::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 3px;
  width: 5px;
  height: 9px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}
.lp-wa-floats .lp-wa-bubble:nth-child(1) { position: absolute; top: 4%; left: 0; }
.lp-wa-floats .lp-wa-bubble:nth-child(2) { position: absolute; top: 22%; left: 6%; }
.lp-wa-floats .lp-wa-bubble:nth-child(3) { position: absolute; top: 42%; left: 0; }
.lp-wa-floats .lp-wa-bubble:nth-child(4) { position: absolute; top: 58%; left: 10%; }
.lp-wa-floats .lp-wa-bubble:nth-child(5) { position: absolute; bottom: 8%; left: 4%; }
.delay-1 { animation-delay: 0s; }
.delay-2 { animation-delay: 0.6s; }
.delay-3 { animation-delay: 1.2s; }
.delay-4 { animation-delay: 1.8s; }
.delay-5 { animation-delay: 2.4s; }
@keyframes lp-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

/* Phone mockup */
.lp-phone {
  position: relative;
  z-index: 2;
  width: min(300px, 88vw);
  padding: 14px;
  border-radius: 36px;
  background: linear-gradient(160deg, #1a2238, #0a0f1a);
  border: 2px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 40px 100px rgba(15, 23, 42, 0.28);
}
.lp-phone-lg { width: min(320px, 90vw); transform: scale(1.05); }
.lp-phone-sm { width: min(240px, 70vw); opacity: 0.92; }
.lp-phone-notch {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  z-index: 4;
}
.lp-phone-screen {
  border-radius: 26px;
  overflow: hidden;
  background: #0d1322;
  color: #f4f7ff;
  min-height: 480px;
  display: flex;
  flex-direction: column;
}
.lp-mock-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 28px 14px 12px;
  background: rgba(255, 107, 44, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.lp-mock-header strong { display: block; font-size: 14px; }
.lp-mock-header span { font-size: 11px; color: #9aa8c7; }
.lp-mock-logo {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--primary), #ff9a5c);
  flex-shrink: 0;
}
.lp-mock-tabs {
  display: flex;
  gap: 6px;
  padding: 10px 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.lp-mock-tabs span {
  flex: 0 0 auto;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 11px;
  color: #9aa8c7;
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.lp-mock-tabs .active {
  background: var(--primary);
  color: #111;
  border-color: var(--primary);
  font-weight: 700;
}
.lp-mock-campaign {
  margin: 0 12px 8px;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(255, 107, 44, 0.15);
  border: 1px solid rgba(255, 107, 44, 0.3);
  color: #ffb48a;
}
.lp-mock-card {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 10px;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  align-items: center;
}
.lp-mock-thumb {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 16px;
  background: linear-gradient(135deg, rgba(255, 107, 44, 0.3), rgba(255, 107, 44, 0.08));
  color: #ffb48a;
  border: 1px solid rgba(255, 107, 44, 0.25);
}
.lp-mock-card-body { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.lp-mock-card-body strong { font-size: 12px; line-height: 1.3; }
.lp-mock-price { color: var(--primary); font-weight: 800; font-size: 12px; white-space: nowrap; }
.lp-mock-cart {
  margin-top: auto;
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: rgba(255, 255, 255, 0.04);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  font-size: 11px;
}
.lp-mock-cart strong { color: var(--primary); font-size: 11px; }

/* QR card */
.lp-qr-card {
  position: absolute;
  z-index: 4;
  bottom: 6%;
  right: 2%;
  width: 148px;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--lp-border);
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.16);
}
.lp-qr-card-lg { position: relative; bottom: auto; right: auto; width: 200px; }
.lp-qr-pattern {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
  padding: 8px;
  background: #fff;
  border: 2px solid #0f172a;
  border-radius: 8px;
}
.lp-qr-card-lg .lp-qr-pattern { grid-template-columns: repeat(9, 1fr); }
.lp-qr-pattern span {
  aspect-ratio: 1;
  background: #f1f5f9;
  border-radius: 1px;
}
.lp-qr-pattern span.on { background: #0f172a; }
.lp-qr-meta { margin-top: 10px; }
.lp-qr-meta strong { display: block; font-size: 13px; color: var(--lp-text); }
.lp-qr-meta span { font-size: 11px; color: var(--lp-muted); word-break: break-all; }

/* Sections */
.lp-section { padding: 96px 0; }
.lp-section-alt { background: #fff; }
.lp-section-dark {
  background: var(--lp-bg-dark);
  color: #f4f7ff;
}
.lp-section-dark .lp-section-label { color: #ffb48a; }
.lp-section-dark h2 { color: #fff; }
.lp-section-dark .lp-section-desc { color: #9aa8c7; }
.lp-section-head { text-align: center; margin-bottom: 48px; }
.lp-section-head h2 {
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.12;
  letter-spacing: -0.03em;
  margin: 12px 0 0;
  color: var(--lp-text);
}
.lp-section-head-light h2 { color: #fff; }
.lp-section-label {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--primary);
}
.lp-section-desc {
  font-size: 18px;
  line-height: 1.6;
  color: var(--lp-muted);
  max-width: 600px;
  margin: 16px 0 0;
}
.lp-section-desc-center { margin-left: auto; margin-right: auto; text-align: center; }
.lp-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
}
.lp-split-reverse { direction: rtl; }
.lp-split-reverse > * { direction: ltr; }
.lp-split-copy h2 {
  font-size: clamp(26px, 3.5vw, 38px);
  line-height: 1.15;
  letter-spacing: -0.03em;
  margin: 12px 0 16px;
}
.lp-checklist {
  margin: 24px 0;
  padding: 0;
  list-style: none;
}
.lp-checklist li {
  padding: 10px 0 10px 28px;
  position: relative;
  color: var(--lp-muted);
  border-bottom: 1px solid var(--lp-border);
}
.lp-checklist li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  border: 2px solid #22c55e;
}
.lp-checklist li::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 17px;
  width: 4px;
  height: 7px;
  border: 2px solid #22c55e;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}

.lp-qr-showcase { position: relative; display: grid; place-items: center; padding: 32px; }
.lp-scan-line {
  position: absolute;
  width: 220px;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--primary), transparent);
  animation: lp-scan 3s ease-in-out infinite;
}
@keyframes lp-scan {
  0%, 100% { transform: translateY(-80px); opacity: 0; }
  50% { transform: translateY(80px); opacity: 1; }
}

.lp-chat-demo { margin-top: 24px; display: grid; gap: 10px; max-width: 380px; }
.lp-command-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.lp-command-card {
  padding: 20px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--lp-border);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06);
}
.lp-command-card code {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: var(--lp-text);
  margin-bottom: 8px;
}
.lp-command-card span { font-size: 13px; color: var(--lp-muted); }

.lp-center-block { text-align: center; max-width: 760px; margin: 0 auto; }
.lp-order-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 40px;
}
.lp-order-type {
  padding: 28px 20px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--lp-border);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}
.lp-order-type svg {
  width: 36px;
  height: 36px;
  color: var(--primary);
  margin-bottom: 14px;
}
.lp-order-type strong { display: block; font-size: 18px; margin-bottom: 6px; }
.lp-order-type span { font-size: 14px; color: var(--lp-muted); }

.lp-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.lp-step-card {
  padding: 32px 28px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--lp-border);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.05);
}
.lp-step-num {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--primary);
  color: #111;
  font-weight: 800;
  margin-bottom: 18px;
}
.lp-step-card h3 { margin: 0 0 10px; font-size: 20px; }
.lp-step-card p { margin: 0; color: var(--lp-muted); font-size: 15px; line-height: 1.55; }

.lp-preview-phones {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 32px;
  margin: 48px 0 40px;
  flex-wrap: wrap;
}
.lp-center-cta { text-align: center; }

.lp-wa-preview {
  padding: 0;
  overflow: hidden;
  max-width: 400px;
  margin: 0 auto;
  background: #fff !important;
  border: 1px solid var(--lp-border) !important;
}
.lp-wa-preview-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 18px;
  background: #075e54;
  color: #fff;
}
.lp-wa-preview-header strong { display: block; font-size: 14px; }
.lp-wa-preview-header span { font-size: 12px; opacity: 0.8; }
.lp-wa-preview-body {
  padding: 18px;
  background: #e5ddd5;
  display: grid;
  gap: 10px;
  min-height: 320px;
}
.lp-wa-preview .lp-wa-out { background: #fff; }
.lp-wa-preview .lp-wa-in { margin-left: auto; }

.lp-panel-mock {
  display: grid;
  grid-template-columns: 200px 1fr;
  overflow: hidden;
  min-height: 380px;
  background: #fff !important;
  border: 1px solid var(--lp-border) !important;
}
.lp-panel-side {
  background: #0a1020;
  padding: 20px 14px;
  color: #9aa8c7;
  font-size: 13px;
}
.lp-panel-side div { padding: 10px 12px; border-radius: 8px; margin-bottom: 4px; }
.lp-panel-side .active { background: rgba(255, 107, 44, 0.15); color: #ffb48a; }
.lp-panel-logo {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 20px;
  padding: 0 8px;
}
.lp-panel-logo span {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  background: var(--primary);
  color: #111;
  font-size: 13px;
}
.lp-panel-main { padding: 24px; }
.lp-panel-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}
.lp-panel-metrics div {
  padding: 16px;
  border-radius: 12px;
  background: #f7f8fc;
  border: 1px solid var(--lp-border);
}
.lp-panel-metrics strong { display: block; font-size: 22px; color: var(--lp-text); }
.lp-panel-metrics span { font-size: 12px; color: var(--lp-muted); }
.lp-panel-table { margin-bottom: 20px; }
.lp-panel-row {
  display: grid;
  grid-template-columns: 60px 1fr 1fr 1fr;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--lp-border);
  font-size: 13px;
}
.lp-panel-row.head { color: var(--lp-muted); font-weight: 600; }
.lp-status {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(168, 85, 247, 0.12);
  color: #7c3aed;
}
.lp-status.ready { background: rgba(34, 197, 94, 0.12); color: #16a34a; }

.lp-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.lp-feature {
  padding: 28px 24px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--lp-border);
  transition: transform 0.2s, box-shadow 0.2s;
}
.lp-feature:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.08);
}
.lp-feature-icon {
  width: 44px;
  height: 44px;
  color: var(--primary);
  margin-bottom: 16px;
}
.lp-feature h3 { margin: 0 0 8px; font-size: 17px; }
.lp-feature p { margin: 0; font-size: 14px; color: var(--lp-muted); line-height: 1.5; }

.lp-pricing {
  max-width: 480px;
  margin: 0 auto;
  padding: 40px 36px;
  text-align: center;
  background: #fff !important;
}
.lp-price {
  font-size: 52px;
  font-weight: 800;
  letter-spacing: -0.03em;
  margin: 16px 0;
  color: var(--lp-text);
}
.lp-price small { font-size: 18px; font-weight: 500; color: var(--lp-muted); }
.lp-pricing-list {
  list-style: none;
  padding: 0;
  margin: 28px 0;
  text-align: left;
}
.lp-pricing-list li {
  padding: 12px 0 12px 28px;
  position: relative;
  color: var(--lp-muted);
  border-bottom: 1px solid var(--lp-border);
  font-size: 15px;
}
.lp-pricing-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.15);
  border: 2px solid #22c55e;
}
.lp-pricing-list li::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 19px;
  width: 4px;
  height: 7px;
  border: 2px solid #22c55e;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}

.lp-cta-section {
  background: linear-gradient(135deg, rgba(255, 107, 44, 0.08), rgba(255, 107, 44, 0.02));
}
.lp-cta-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}
.lp-cta-copy h2 {
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.12;
  margin: 0 0 16px;
}
.lp-cta-copy p { color: var(--lp-muted); font-size: 17px; margin: 0 0 24px; }
.lp-cta-links { display: flex; gap: 12px; flex-wrap: wrap; }
.lp-contact-form {
  max-width: none;
  padding: 32px !important;
  background: #fff !important;
}
.lp-footer {
  background: var(--lp-bg-dark);
  color: #9aa8c7;
  border-top: none;
}
.lp-footer-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.lp-footer .logo { color: #fff; }

/* Landing responsive */
@media (max-width: 1024px) {
  .lp-hero-grid,
  .lp-split,
  .lp-cta-grid { grid-template-columns: 1fr; }
  .lp-split-reverse { direction: ltr; }
  .lp-hero-visual { min-height: 480px; margin-top: 24px; }
  .lp-wa-floats .lp-wa-bubble { font-size: 11px; max-width: 160px; }
  .lp-features { grid-template-columns: repeat(2, 1fr); }
  .lp-panel-mock { grid-template-columns: 1fr; }
  .lp-panel-side { display: none; }
}
@media (max-width: 720px) {
  .lp-section { padding: 64px 0; }
  .lp-trust-row,
  .lp-steps,
  .lp-order-types,
  .lp-command-grid,
  .lp-features { grid-template-columns: 1fr; }
  .lp-qr-card { width: 120px; padding: 10px; bottom: 2%; right: 0; }
  .lp-wa-floats .lp-wa-bubble:nth-child(4),
  .lp-wa-floats .lp-wa-bubble:nth-child(5) { display: none; }
  .landing-page .nav-links a:not(.btn) { display: none; }
  .lp-preview-phones { gap: 16px; }
  .lp-phone-lg { transform: none; }
  .lp-footer-inner { flex-direction: column; text-align: center; }
}

/* HOME LAYOUT — referans yakın krem/altın sistem */
.landing-page.home-layout.ref-light,
.landing-page.home-layout {
  --home-bg: #f7f4ee;
  --home-cream: #f9f7f2;
  --home-surface: #ffffff;
  --home-text: #1a1a1a;
  --home-muted: #666666;
  --home-border: rgba(26, 26, 26, 0.07);
  --home-gold: #c59d5f;
  --home-gold-dark: #9a7a3c;
  --home-gold-glow: rgba(197, 157, 95, 0.32);
  --home-primary: #c8952e;
  --home-primary-glow: var(--home-gold-glow);
  --home-green: #25d366;
  --home-green-dark: #075e54;
  --home-dark: #111111;
  --home-radius: 24px;
  --home-radius-sm: 16px;
  --home-shadow: 0 24px 64px rgba(26, 26, 26, 0.1);
  background: var(--home-cream);
  color: var(--home-text);
  overflow-x: clip;
}

html.home-theme-dark .landing-page.home-layout {
  --home-bg: #101014;
  --home-cream: #121218;
  --home-surface: #1a1a22;
  --home-text: #f4f1ea;
  --home-muted: #a8a29e;
  --home-border: rgba(255, 255, 255, 0.1);
  --home-gold: #d4b06a;
  --home-gold-dark: #e0c488;
  --home-gold-glow: rgba(212, 176, 106, 0.22);
  --home-primary: #c8952e;
  --home-dark: #f4f1ea;
  --home-shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
}

/* Koyu modda tüm ana bölüm arka planlarını hero ile aynı tona sabitler
   (önceden .home-section-soft / .home-marquee-wrap / .home-section-pricing / .home-apply
   daha açık --home-surface, .home-section-loyalty ise ayrı bir #141414 tonu kullanıyordu). */
html.home-theme-dark .landing-page.home-layout .home-marquee-wrap,
html.home-theme-dark .landing-page.home-layout .home-section-pricing,
html.home-theme-dark .landing-page.home-layout .home-apply {
  background: var(--home-cream);
}
html.home-theme-dark .home-section-loyalty {
  background: var(--home-cream) !important;
}

html.home-theme-dark .landing-page.home-layout .home-lead { color: var(--home-muted); }
html.home-theme-dark .landing-page.home-layout .home-hero h1 em { color: var(--home-gold); }
html.home-theme-dark .landing-page.home-layout .home-nav {
  background: rgba(18, 18, 24, 0.82);
}
html.home-theme-dark .landing-page.home-layout .home-nav.is-scrolled {
  background: rgba(18, 18, 24, 0.96);
  box-shadow: 0 6px 24px rgba(0,0,0,.28);
}
html.home-theme-dark .landing-page.home-layout .home-lang-switch,
html.home-theme-dark .landing-page.home-layout .home-theme-toggle {
  background: rgba(255,255,255,.06);
}
html.home-theme-dark .landing-page.home-layout .home-nav-links a:not(.home-btn):hover {
  background: rgba(255,255,255,.06);
}
html.home-theme-dark .landing-page.home-layout .home-card,
html.home-theme-dark .landing-page.home-layout .home-btn-outline {
  background: var(--home-surface);
}
html.home-theme-dark .landing-page.home-layout .home-form input,
html.home-theme-dark .landing-page.home-layout .home-form textarea,
html.home-theme-dark .landing-page.home-layout .home-form-compact input,
html.home-theme-dark .landing-page.home-layout .home-form-compact textarea {
  background: #14141b;
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-section-soft {
  background: var(--home-cream);
}
html.home-theme-dark .landing-page.home-layout .home-layout .alert-success {
  background: rgba(34, 197, 94, .15);
  color: #86efac;
}
html.home-theme-dark .landing-page.home-layout .home-layout .alert-error {
  background: rgba(239, 68, 68, .15);
  color: #fca5a5;
}
html.home-theme-dark .landing-page.home-layout .home-benefit-card {
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
}
html.home-theme-dark .landing-page.home-layout .home-wa-window-body {
  background: #1a1a24;
}
html.home-theme-dark .landing-page.home-layout .home-wa-msg.in {
  background: var(--home-surface);
  color: var(--home-text);
  box-shadow: 0 1px 3px rgba(0, 0, 0, .28);
}
html.home-theme-dark .landing-page.home-layout .home-wa-msg.out {
  background: rgba(37, 211, 102, .14);
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-wa-action-btn {
  background: var(--home-surface);
  border-color: var(--home-border);
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-wa-action-btn.primary {
  background: var(--home-green);
  border-color: var(--home-green);
  color: #fff;
}

/* Landing — dark mode kart/panel düzeltmeleri */
html.home-theme-dark .landing-page.home-layout .home-section-head h2,
html.home-theme-dark .landing-page.home-layout .home-split-copy h2 {
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-doc {
  background: linear-gradient(165deg, #252530 0%, #1e1e28 48%, #1a1a24 100%);
  border-color: var(--home-border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 28px rgba(0, 0, 0, .28);
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-doc.has-photo {
  background: #1e1e28;
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-panel,
html.home-theme-dark .landing-page.home-layout .home-pipeline-step,
html.home-theme-dark .landing-page.home-layout .home-compare-card,
html.home-theme-dark .landing-page.home-layout .home-metric-row div,
html.home-theme-dark .landing-page.home-layout .home-system-card,
html.home-theme-dark .landing-page.home-layout .home-press-card,
html.home-theme-dark .landing-page.home-layout .home-faq-item,
html.home-theme-dark .landing-page.home-layout .home-benefit-card {
  box-shadow: 0 10px 32px rgba(0, 0, 0, .22);
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-menu-list li {
  background: rgba(255, 255, 255, .05);
  border: 1px solid var(--home-border);
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-ai-feed li {
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-pipeline-ai-feed em {
  color: var(--home-gold);
}
html.home-theme-dark .landing-page.home-layout .home-pricing-split {
  box-shadow: 0 24px 64px rgba(0, 0, 0, .35);
}
html.home-theme-dark .landing-page.home-layout .home-pricing-includes-title {
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-pricing-feature-box {
  background: rgba(212, 176, 106, .1);
  border-color: rgba(212, 176, 106, .22);
}
html.home-theme-dark .landing-page.home-layout .home-btn-demo {
  background: var(--home-surface);
  border-color: var(--home-border);
  color: var(--home-text);
  -webkit-text-fill-color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-btn-demo:hover {
  background: var(--home-surface);
  color: var(--home-text);
  -webkit-text-fill-color: var(--home-text);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}
html.home-theme-dark .landing-page.home-layout .home-btn-outline {
  background: transparent;
  border-color: var(--home-border);
  color: var(--home-text);
}
html.home-theme-dark .landing-page.home-layout .home-press-btn:hover {
  background: rgba(255, 255, 255, .08);
}
html.home-theme-dark .landing-page.home-layout .home-system-card:hover {
  box-shadow: 0 16px 40px rgba(0, 0, 0, .28);
}
html.home-theme-dark .landing-page.home-layout .home-form-compact {
  box-shadow: 0 12px 40px rgba(0, 0, 0, .28);
}
.home-wrap {
  width: min(1140px, 100%);
  margin-inline: auto;
  padding-inline: clamp(20px, 5vw, 72px);
  box-sizing: border-box;
}
.landing-page [id] { scroll-margin-top: 92px; }
.home-btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 12px 22px; border-radius: 999px; font-weight: 600; font-size: 14px;
  border: 1px solid transparent; cursor: pointer; text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.home-btn-primary {
  background: linear-gradient(135deg, #7a5f1a 0%, #a67c1e 55%, #c59d5f 100%);
  color: #fff;
  border-color: #6b5418;
  box-shadow: 0 12px 32px var(--home-gold-glow);
  text-shadow: 0 1px 0 rgba(0,0,0,.12);
}
.home-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 40px var(--home-gold-glow);
  text-decoration: none;
  color: #fff;
  background: linear-gradient(135deg, #6b5418 0%, #8f6f1a 55%, #b8894a 100%);
}
.home-btn-primary span { color: #fff; opacity: 1; }
.home-btn-dark { background: var(--home-dark); color: #fff; }
.home-btn-dark:hover { background: #2a2a2a; text-decoration: none; transform: translateY(-1px); }
.home-btn-demo { background: #fff; border: 1px solid rgba(26,26,26,.12); color: #1a1a1a; gap: 10px; font-weight: 600; }
.home-btn-demo:hover { background: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.08); text-decoration: none; color: #1a1a1a; }
.home-btn-sm { padding: 10px 18px; font-size: 13px; }
.home-btn-ghost { background: transparent; border-color: var(--home-border); color: var(--home-text); }
.home-btn-outline { background: var(--home-surface); border-color: var(--home-border); color: var(--home-text); }
.home-btn-lg { padding: 16px 32px; font-size: 15px; font-weight: 700; }
.home-btn-block { width: 100%; }
.home-card {
  background: var(--home-surface); border: 1px solid var(--home-border);
  border-radius: var(--home-radius); box-shadow: 0 10px 36px rgba(26,26,26,.05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.home-card:hover { transform: translateY(-3px); box-shadow: 0 20px 52px rgba(26,26,26,.09); border-color: rgba(200,149,46,.18); }

/* Nav */
.home-nav {
  position: sticky; top: 0; z-index: 300;
  background: rgba(249, 247, 242, 0.78);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid transparent;
  transition: background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.home-nav.is-scrolled {
  background: rgba(249, 247, 242, 0.96);
  border-bottom-color: var(--home-border);
  box-shadow: 0 6px 24px rgba(0,0,0,.04);
}
.home-nav-inner { position: relative; display: flex; align-items: center; justify-content: space-between; padding: 12px 0; gap: 12px; min-height: 56px; }
.home-nav .home-nav-inner { width: min(1320px, 100%); padding-inline: clamp(20px, 4vw, 40px); }
.home-nav-right { flex-wrap: nowrap; }
.home-nav-tools {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  z-index: 2;
}
.home-nav-right {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  min-width: 0;
}
.home-lang-switch {
  display: inline-flex;
  align-items: center;
  position: relative;
}
.pm-lang-switch {
  position: relative;
  z-index: 40;
}
.pm-lang-trigger {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 12px 0 10px;
  border-radius: 999px;
  border: 1px solid var(--home-border, rgba(15, 23, 42, .12));
  background: rgba(255, 255, 255, .72);
  color: var(--home-text, #0f172a);
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  backdrop-filter: blur(10px) saturate(1.1);
  -webkit-backdrop-filter: blur(10px) saturate(1.1);
}
.pm-lang-trigger:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .08);
}
.pm-lang-flag {
  font-size: 15px;
  line-height: 1;
}
.pm-lang-code {
  min-width: 1.6em;
  text-align: center;
}
.pm-lang-chevron {
  font-size: 10px;
  opacity: .55;
  transition: transform .2s ease;
}
.pm-lang-switch.is-open .pm-lang-chevron {
  transform: rotate(180deg);
}
.pm-lang-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 196px;
  margin: 0;
  padding: 6px;
  list-style: none;
  border-radius: 16px;
  border: 1px solid var(--home-border, rgba(15, 23, 42, .1));
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 50px rgba(15, 23, 42, .14);
  backdrop-filter: blur(18px) saturate(1.2);
  -webkit-backdrop-filter: blur(18px) saturate(1.2);
}
.pm-lang-menu li {
  margin: 0;
}
.pm-lang-option {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--home-text, #0f172a);
  cursor: pointer;
  text-align: left;
  transition: background .18s ease, color .18s ease;
}
.pm-lang-option:hover {
  background: rgba(124, 92, 255, .08);
}
.pm-lang-option.is-active {
  background: linear-gradient(135deg, rgba(124, 92, 255, .14), rgba(197, 157, 95, .12));
  box-shadow: inset 0 0 0 1px rgba(124, 92, 255, .16);
}
.pm-lang-option-label {
  font-size: 13px;
  font-weight: 600;
}
.pm-lang-option-code {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--home-muted, #64748b);
}
.pm-lang-option.is-active .pm-lang-option-code {
  color: var(--home-text, #0f172a);
}
.home-lang-btn {
  min-width: 38px;
  padding: 6px 10px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--home-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
.home-lang-btn.is-active {
  background: var(--home-surface);
  color: var(--home-text);
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
}
.panel-app .pm-lang-trigger,
.panel-app .pm-lang-menu {
  border-color: var(--v3-border, var(--panel-border, rgba(15, 23, 42, .12)));
}
.panel-app .pm-lang-trigger {
  background: rgba(255, 255, 255, .72);
  color: var(--v3-text, var(--panel-text, #0f172a));
}
.panel-app .pm-lang-menu {
  background: rgba(255, 255, 255, .98);
}
html.panel-theme-dark .pm-lang-trigger,
html.home-theme-dark .pm-lang-trigger {
  background:var(--panel-surface, rgba(255, 255, 255, .06)) !important;
  border-color:var(--panel-border, rgba(255, 255, 255, .12)) !important;
  color:var(--panel-text, #f1f5f9) !important;
}
html.panel-theme-dark .pm-lang-menu,
html.home-theme-dark .pm-lang-menu {
  background:var(--panel-surface-solid, #1a1b26) !important;
  border-color:var(--panel-border, rgba(255, 255, 255, .12)) !important;
  box-shadow:0 18px 50px rgba(0, 0, 0, .35) !important;
}
html.panel-theme-dark .pm-lang-option,
html.home-theme-dark .pm-lang-option {
  color:var(--panel-text, #f1f5f9) !important;
}
html.panel-theme-dark .pm-lang-option-code,
html.home-theme-dark .pm-lang-option-code {
  color:var(--panel-muted, #94a3b8) !important;
}
html.panel-theme-dark .pm-lang-option.is-active,
html.home-theme-dark .pm-lang-option.is-active {
  background:rgba(197, 157, 95, .16) !important;
  box-shadow:inset 0 0 0 1px rgba(197, 157, 95, .24) !important;
}
html[dir="rtl"] .pm-lang-menu {
  right: auto;
  left: 0;
}
html[dir="rtl"] .pm-lang-option {
  text-align: right;
}
html[dir="rtl"] .home-nav-inner,
html[dir="rtl"] .panel-top-actions,
html[dir="rtl"] .panel-prefs-tools {
  direction: rtl;
}
.home-theme-toggle {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid var(--home-border);
  background: rgba(255,255,255,.55);
  color: var(--home-text);
  cursor: pointer;
  display: inline-grid;
  place-items: center;
  position: relative;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.home-theme-toggle:hover { transform: translateY(-1px); }
.home-theme-icon {
  position: absolute;
  font-size: 16px;
  line-height: 1;
  transition: opacity .2s ease, transform .2s ease;
  pointer-events: none;
}
.home-theme-toggle .home-theme-icon-sun,
.panel-theme-toggle .home-theme-icon-sun {
  opacity: 1;
  transform: scale(1);
}
.home-theme-toggle .home-theme-icon-moon,
.panel-theme-toggle .home-theme-icon-moon,
.home-theme-icon-moon {
  opacity: 0;
  transform: scale(.85);
}
html.home-theme-dark .home-theme-toggle .home-theme-icon-sun,
html.panel-theme-dark .panel-theme-toggle .home-theme-icon-sun,
html.panel-theme-dark .home-theme-toggle .home-theme-icon-sun {
  opacity:0 !important;
  transform:scale(.85) !important;
}
html.home-theme-dark .home-theme-toggle .home-theme-icon-moon,
html.panel-theme-dark .panel-theme-toggle .home-theme-icon-moon,
html.panel-theme-dark .home-theme-toggle .home-theme-icon-moon {
  opacity:1 !important;
  transform:scale(1) !important;
}
.home-logo { display: flex; align-items: center; gap: 10px; font-weight: 700; color: var(--home-text); text-decoration: none; z-index: 2; font-size: 15px; flex-shrink: 0; }
.home-logo span { white-space: nowrap; }
.home-logo-text em { font-style: normal; color: var(--home-gold); font-weight: 600; }
.home-logo-mark {
  width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center;
  background: linear-gradient(135deg, var(--home-gold), #d4ad62); color: #fff; font-weight: 800; font-size: 15px;
}
.home-nav-links { display: flex; align-items: center; gap: 2px; flex-wrap: nowrap; }
.home-nav-links a:not(.home-btn) {
  color: var(--home-muted); text-decoration: none; font-size: 14px; font-weight: 500;
  padding: 8px 11px; border-radius: 999px; transition: color .2s, background .2s; white-space: nowrap;
}
.home-nav .home-btn-sm { padding: 9px 15px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.home-nav-links a:not(.home-btn):hover { color: var(--home-text); background: rgba(0,0,0,.04); }
.home-nav .home-btn-primary { color: #fff; }
.home-nav-toggle {
  display: none; background: transparent; border: none;
  color: var(--home-text); cursor: pointer; width: 40px; height: 40px;
  border-radius: 8px; z-index: 2; padding: 0;
  flex-direction: column; align-items: center; justify-content: center; gap: 5px;
}
.home-nav-toggle span {
  display: block; width: 20px; height: 2px; border-radius: 2px;
  background: var(--home-text); transition: transform .2s ease, opacity .2s ease;
}
.home-nav-backdrop {
  display: none; position: fixed; inset: 0; background: rgba(20, 20, 20, 0.35);
  backdrop-filter: blur(3px); z-index: 250;
}

/* Nav: linkler yalnızca geniş ekranda tek satıra sığdığından, altında hamburger menüye geç */
@media (max-width: 1200px) {
  .home-nav-toggle { display: flex; }
  .home-nav-right { margin-left: auto; }
  .home-nav-links {
    display: none; position: fixed; top: 72px; left: 14px; right: 14px;
    flex-direction: column; align-items: stretch; gap: 4px;
    background: var(--home-surface); padding: 16px;
    border: 1px solid var(--home-border); border-radius: 20px;
    box-shadow: 0 28px 72px rgba(0,0,0,.12); z-index: 260;
    max-height: calc(100vh - 96px); overflow-y: auto;
  }
  .home-nav-links.open { display: flex; }
  .home-nav-backdrop.is-visible { display: block; }
  .home-nav-links a:not(.home-btn) { padding: 12px 14px; border-radius: 12px; }
  .home-nav-links .home-btn { width: 100%; margin-top: 6px; }
  body.home-nav-open { overflow: hidden; }
}

/* Hero */
.home-hero {
  position: relative;
  padding: clamp(48px, 5.5vw, 80px) 0 clamp(44px, 5vw, 68px);
  background: var(--home-cream);
  color: var(--home-text);
}
.home-hero-grid {
  position: relative; width: 100%;
  display: grid; grid-template-columns: minmax(0, 480px) minmax(0, 400px);
  gap: clamp(24px, 3vw, 44px); align-items: center; justify-content: center;
}
.home-hero-copy { max-width: 540px; min-width: 0; width: 100%; padding-inline: 4px; }
.home-badge {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 7px 14px; border-radius: 999px; font-size: 10px; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  background: rgba(197,157,95,.1); color: var(--home-gold-dark); border: 1px solid rgba(197,157,95,.22);
}
.home-badge-dot {
  width: 6px; height: 6px; border-radius: 50%; background: var(--home-gold);
  box-shadow: 0 0 0 3px rgba(197,157,95,.2);
}
.home-hero h1 {
  font-size: clamp(34px, 4.2vw, 64px); line-height: 1.08; letter-spacing: -0.01em;
  margin: 20px 0 18px; font-weight: 800; color: var(--home-text);
  overflow-wrap: break-word; max-width: 100%;
}
.home-hero h1 em { font-style: normal; color: #9a7a3c; display: inline-block; }
.home-lead { font-size: clamp(16px, 1.9vw, 17px); line-height: 1.7; color: #555; max-width: 460px; margin: 0 0 28px; }
.home-hero-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.home-live-dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--home-green);
  box-shadow: 0 0 0 4px rgba(37,211,102,.2); flex-shrink: 0;
}
.home-trust-list {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-wrap: wrap; gap: 12px 28px;
}
.home-trust-list li {
  font-size: 14px; color: var(--home-muted); padding-left: 22px; position: relative;
}
.home-trust-list li::before {
  content: "✓"; position: absolute; left: 0; color: var(--home-gold); font-weight: 800;
}

/* Mockup stage — referans tipi beyaz telefon */
.home-mockup-stage {
  position: relative; display: flex; flex-direction: column; align-items: center;
  padding: 0 12px 32px; justify-self: center; width: 100%; max-width: 400px; margin-inline: auto;
  box-sizing: border-box;
}
.home-phone-light.home-phone-hero {
  width: min(360px, 100%);
  max-width: 100%;
  transform: translateY(0);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 32px 64px rgba(0,0,0,.1),
    0 12px 28px rgba(0,0,0,.05);
}

/* Premium phone mock — canlı dark menü referansı */
.home-phone-premium.home-phone-hero {
  width: min(360px, 100%);
  max-width: 100%;
  transform: translateY(0);
}
.home-phone-premium {
  width: min(340px, 88vw);
  padding: 10px;
  border-radius: 44px;
  background: linear-gradient(168deg, #1a1f1c 0%, #0c1210 55%, #070b09 100%);
  border: 1px solid rgba(255,255,255,.1);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 40px 80px rgba(0,0,0,.35),
    0 16px 36px rgba(7,23,16,.45);
}
.home-phone-notch-dark {
  background: #050807;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.06);
}
.home-phone-screen-premium {
  --hm-shell: #071710;
  --hm-card: #10251b;
  --hm-text: #f4f7f2;
  --hm-muted: #9fb1a7;
  --hm-accent: #d8a943;
  --hm-border: rgba(255,255,255,.08);
  --hm-search: #1f5b42;
  border-radius: 36px;
  overflow: hidden;
  background: var(--hm-shell);
  min-height: 600px;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(255,255,255,.06);
  color: var(--hm-text);
}
.home-phone-statusbar-dark {
  color: rgba(244,247,242,.72);
  padding: 10px 18px 2px;
}
.home-phone-statusbar-dark .home-phone-signal i {
  background: rgba(244,247,242,.55);
}
.home-phone-premium-hero {
  position: relative;
  min-height: 118px;
  padding: 8px 14px 12px;
  overflow: hidden;
}
.home-phone-premium-hero-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(31,91,66,.45) 0%, transparent 70%),
    linear-gradient(180deg, #0c2419 0%, #071710 100%);
}
.home-phone-premium-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(7,23,16,.88) 100%);
}
.home-phone-premium-hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 2px;
}
.home-phone-premium-logo {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.88);
  box-shadow: 0 10px 24px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.2);
  background: rgba(255,255,255,.06);
  overflow: hidden;
  display: grid;
  place-items: center;
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 800;
  color: var(--hm-accent);
}
.home-phone-premium-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.home-phone-premium-hero-inner strong {
  display: block;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #fff;
  text-shadow: 0 1px 8px rgba(0,0,0,.35);
}
.home-phone-premium-hero-inner span {
  font-size: 9px;
  font-weight: 600;
  color: rgba(244,247,242,.72);
}
.home-phone-premium-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 12px 8px;
  padding: 9px 12px;
  border-radius: 14px;
  background: var(--hm-search);
  color: rgba(200,230,216,.9);
  font-size: 11px;
  font-weight: 600;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.home-phone-premium-search-icon {
  font-size: 13px;
  opacity: .85;
  line-height: 1;
}
.home-phone-premium-toolbar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px 4px;
}
.home-phone-premium-back {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: rgba(255,255,255,.06);
  color: var(--hm-muted);
  font-size: 16px;
  line-height: 1;
  flex-shrink: 0;
}
.home-phone-premium-tabs {
  display: flex;
  gap: 5px;
  overflow: hidden;
  flex: 1;
}
.home-phone-premium-tabs span {
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  color: var(--hm-muted);
  background: rgba(255,255,255,.04);
  border: 1px solid var(--hm-border);
  white-space: nowrap;
}
.home-phone-premium-tabs .on {
  background: linear-gradient(135deg, #1f5b42, #2a7a58);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 6px 14px rgba(31,91,66,.35);
}
.home-phone-premium-cathead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 2px 14px 6px;
}
.home-phone-premium-cathead strong {
  font-size: 14px;
  font-weight: 800;
  color: var(--hm-text);
}
.home-phone-premium-cathead em {
  font-style: normal;
  font-size: 9px;
  font-weight: 600;
  color: var(--hm-muted);
}
.home-phone-grid-premium {
  gap: 8px;
  padding: 0 10px 8px;
}
.home-phone-product-premium {
  background: var(--hm-card);
  border: 1px solid var(--hm-border);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.28);
}
.home-phone-product-premium.is-featured {
  border-color: rgba(216,169,67,.35);
  box-shadow: 0 12px 28px rgba(0,0,0,.32), 0 0 0 1px rgba(216,169,67,.12);
}
.home-phone-product-premium .home-product-tag {
  background: linear-gradient(135deg, #d8a943, #b8892e);
  box-shadow: 0 4px 10px rgba(216,169,67,.35);
}
.home-phone-product-premium .home-phone-product-img.food-hero-photo.has-photo {
  background-color: #0a1812;
}
.home-phone-product-premium .home-phone-product-body strong {
  color: var(--hm-text);
  font-size: 9.5px;
}
.home-phone-product-premium .home-phone-product-body small {
  color: var(--hm-muted);
}
.home-phone-product-premium .home-phone-product-body em {
  color: var(--hm-accent);
  font-size: 10.5px;
}
.home-phone-premium-nav {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: end;
  gap: 4px;
  margin-top: auto;
  padding: 8px 10px 14px;
  border-top: 1px solid var(--hm-border);
  background: linear-gradient(180deg, rgba(7,23,16,.2), rgba(7,23,16,.95));
}
.home-phone-premium-nav > span {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  font-size: 8px;
  font-weight: 700;
  color: var(--hm-muted);
}
.home-phone-premium-nav > span i {
  font-style: normal;
  font-size: 13px;
  line-height: 1;
  opacity: .8;
}
.home-phone-premium-nav > span.on {
  color: var(--hm-accent);
}
.home-phone-premium-nav > span.on i {
  opacity: 1;
}
.home-phone-premium-nav-center {
  width: 44px;
  height: 44px;
  margin-bottom: 2px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, #1f5b42, #d8a943);
  box-shadow: 0 10px 22px rgba(0,0,0,.35), 0 0 0 3px rgba(216,169,67,.18);
  color: #fff;
  overflow: hidden;
}
.home-phone-premium-nav-center.has-logo {
  background: #0c1f17;
  border: 2px solid rgba(216,169,67,.55);
}
.home-phone-premium-nav-center img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.home-phone-premium-nav-center i {
  font-style: normal;
  font-size: 16px;
}
.home-phone-light {
  width: min(340px, 88vw); padding: 10px; border-radius: 44px;
  background: linear-gradient(168deg, #ffffff 0%, #f6f6f6 55%, #ececec 100%);
  border: 1px solid #dcdcdc;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 56px 110px rgba(0,0,0,.11),
    0 16px 36px rgba(0,0,0,.05);
}
.home-phone-screen-light {
  border-radius: 36px; overflow: hidden; background: #fafafa;
  min-height: 560px; display: flex; flex-direction: column;
  border: 1px solid #e4e4e4;
}
.home-phone-statusbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 10px 18px 4px; font-size: 10px; font-weight: 600; color: #888;
}
.home-phone-signal { display: flex; gap: 2px; align-items: flex-end; height: 10px; }
.home-phone-signal i {
  display: block; width: 3px; border-radius: 1px; background: #bbb;
}
.home-phone-signal i:nth-child(1) { height: 4px; }
.home-phone-signal i:nth-child(2) { height: 6px; }
.home-phone-signal i:nth-child(3) { height: 9px; }
.home-phone-appbar {
  padding: 8px 16px 14px; text-align: center; border-bottom: 1px solid #f0f0f0;
}
.home-phone-appbar-ref {
  display: grid; grid-template-columns: 28px 1fr 28px; align-items: center;
  padding: 6px 12px 10px; text-align: center; border-bottom: 1px solid #f0f0f0;
}
.home-phone-menu-icon { font-size: 14px; color: #888; line-height: 1; }
.home-phone-menu-spacer { visibility: hidden; }
.home-phone-appbar-title strong { display: block; font-size: 13px; color: var(--home-text); letter-spacing: -.01em; }
.home-phone-appbar-title span { display: block; font-size: 9px; color: var(--home-muted); margin-top: 1px; }
.home-phone-appbar strong { display: block; font-size: 15px; color: var(--home-text); }
.home-phone-appbar span { font-size: 11px; color: var(--home-muted); }
.home-phone-tabs-light {
  display: flex; gap: 6px; padding: 10px 12px; overflow-x: auto;
  border-bottom: 1px solid #f5f5f5;
}
.home-phone-tabs-light span {
  padding: 6px 12px; border-radius: 999px; font-size: 10px; color: var(--home-muted);
  border: 1px solid #eee; white-space: nowrap; flex-shrink: 0;
}
.home-phone-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px; flex: 1;
}
.home-phone-tabs-ref .on {
  background: #1a1a1a; color: #fff; border-color: #1a1a1a; font-weight: 700;
}
.home-phone-product {
  position: relative; background: #fff; border: 1px solid #ececec; border-radius: 12px;
  padding: 0; overflow: hidden; box-shadow: 0 4px 14px rgba(0,0,0,.05);
  display: flex; flex-direction: column;
}
.home-phone-product.is-featured { border-color: rgba(197,157,95,.28); }
.home-product-tag {
  position: absolute; top: 6px; left: 6px; z-index: 3;
  padding: 3px 7px; border-radius: 999px; font-size: 6px; font-weight: 800;
  letter-spacing: .05em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--home-gold), #d4ad62); color: #fff;
}
.home-phone-product-img {
  aspect-ratio: 4/3; border-radius: 0; margin: 0; overflow: hidden; flex-shrink: 0;
  min-height: 78px;
}
.home-phone-product-img.food-hero-photo {
  background-size: cover;
  background-position: center 45%;
  filter: saturate(1.12) contrast(1.06);
  position: relative;
}
.home-phone-product-img.food-hero-photo.has-photo {
  background-image: none !important;
  background-color: #f3f0ea;
}
.home-phone-product-img.food-hero-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 45%;
  display: block;
}
.home-phone-product-img.food-hero-photo::before {
  background:
    radial-gradient(ellipse 80% 60% at 50% 100%, rgba(0,0,0,.22), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.08) 0%, transparent 35%, rgba(0,0,0,.12) 100%);
}
.food-hero-burger {
  background-color: #3d2818;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 150'%3E%3Cdefs%3E%3ClinearGradient id='b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23d4a056'/%3E%3Cstop offset='100%25' stop-color='%236b3f1f'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='200' height='150' fill='%232a1a10'/%3E%3Cellipse cx='100' cy='128' rx='72' ry='14' fill='%23000' opacity='.35'/%3E%3Crect x='52' y='72' width='96' height='44' rx='22' fill='url(%23b)'/%3E%3Crect x='56' y='58' width='88' height='18' rx='9' fill='%23f5e6c8'/%3E%3Crect x='60' y='48' width='80' height='14' rx='7' fill='%23e8c878'/%3E%3Ccircle cx='78' cy='88' r='5' fill='%234a2810' opacity='.5'/%3E%3Ccircle cx='100' cy='90' r='4' fill='%234a2810' opacity='.45'/%3E%3Ccircle cx='120' cy='86' r='5' fill='%234a2810' opacity='.5'/%3E%3Cpath d='M130 62 L148 48' stroke='%233d8b3d' stroke-width='3'/%3E%3Ccircle cx='152' cy='44' r='6' fill='%234a9f4a'/%3E%3C/svg%3E");
}
.food-hero-pizza {
  background-color: #2a1810;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 150'%3E%3Crect width='200' height='150' fill='%23221812'/%3E%3Cellipse cx='100' cy='128' rx='70' ry='12' fill='%23000' opacity='.3'/%3E%3Ccircle cx='100' cy='82' r='52' fill='%23e8c060'/%3E%3Ccircle cx='100' cy='82' r='46' fill='%23d4a040'/%3E%3Ccircle cx='78' cy='72' r='8' fill='%23c43c2e' opacity='.85'/%3E%3Ccircle cx='108' cy='68' r='7' fill='%23c43c2e' opacity='.8'/%3E%3Ccircle cx='118' cy='88' r='6' fill='%23c43c2e' opacity='.75'/%3E%3Ccircle cx='88' cy='94' r='5' fill='%23c43c2e' opacity='.7'/%3E%3Cellipse cx='100' cy='82' rx='38' ry='34' fill='none' stroke='%23b88830' stroke-width='2' opacity='.4'/%3E%3C/svg%3E");
}
.food-hero-chicken {
  background-color: #2a2018;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 150'%3E%3Crect width='200' height='150' fill='%231e1810'/%3E%3Cellipse cx='100' cy='128' rx='68' ry='12' fill='%23000' opacity='.32'/%3E%3Cellipse cx='100' cy='118' rx='58' ry='16' fill='%23f0e8e0'/%3E%3Cpath d='M62 88 Q100 52 138 88 Q128 108 100 112 Q72 108 62 88' fill='%23d4a050'/%3E%3Cpath d='M68 86 Q100 58 132 86' fill='%23e8b868'/%3E%3Cpath d='M72 92 Q100 78 128 92' stroke='%23a06020' stroke-width='2' fill='none' opacity='.5'/%3E%3Ccircle cx='92' cy='82' r='4' fill='%238b5018' opacity='.6'/%3E%3Ccircle cx='108' cy='80' r='3.5' fill='%238b5018' opacity='.55'/%3E%3C/svg%3E");
}
.food-hero-dessert {
  background-color: #1a1210;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 150'%3E%3Crect width='200' height='150' fill='%23181010'/%3E%3Cellipse cx='100' cy='128' rx='66' ry='11' fill='%23000' opacity='.28'/%3E%3Cpath d='M58 108 L100 48 L142 108 Z' fill='%235c3828'/%3E%3Cpath d='M64 104 L100 56 L136 104 Z' fill='%233d2418'/%3E%3Crect x='72' y='88' width='56' height='22' rx='6' fill='%23281810'/%3E%3Ccircle cx='100' cy='72' r='10' fill='%23c43c2e' opacity='.9'/%3E%3Cpath d='M78 98 Q100 88 122 98' stroke='%23fff' stroke-width='2' fill='none' opacity='.25'/%3E%3C/svg%3E");
}
.home-phone-product-body { padding: 6px 8px 8px; }
.home-phone-product-body strong { display: block; font-size: 9px; line-height: 1.25; margin-bottom: 1px; color: #1a1a1a; font-weight: 700; }
.home-phone-product-body small { display: block; font-size: 7px; color: var(--home-muted); margin-bottom: 2px; line-height: 1.25; }
.home-phone-product-body em { font-style: normal; font-size: 10px; font-weight: 800; color: #1a1a1a; }
.home-phone-cart-strip {
  display: flex; align-items: center; gap: 8px; margin: 0 12px 6px;
  padding: 11px 12px; border-radius: 16px;
  background: #fff; border: 1px solid #ececec;
  box-shadow: 0 10px 28px rgba(0,0,0,.08); font-size: 10px; color: var(--home-muted);
}
.home-cart-icon { font-size: 14px; line-height: 1; }
.home-phone-cart-strip strong { margin-left: auto; color: var(--home-gold-dark); font-size: 12px; }
.home-phone-cart-strip em {
  font-style: normal; padding: 6px 11px; border-radius: 999px;
  background: linear-gradient(135deg, var(--home-gold), #dbad52);
  color: #fff; font-weight: 700; font-size: 9px;
}
.home-phone-bottom-nav span b {
  display: inline-grid; place-items: center; min-width: 14px; height: 14px;
  padding: 0 4px; margin-left: 2px; border-radius: 999px;
  background: var(--home-gold); color: #fff; font-size: 8px; font-weight: 800;
}
.home-phone-bottom-nav-icons span {
  display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: 9px;
}
.home-phone-bottom-nav-icons i { font-style: normal; font-size: 13px; line-height: 1; opacity: .75; }
.home-phone-bottom-nav-icons .on i { opacity: 1; color: var(--home-gold); }
.home-phone-bottom-nav {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px;
  padding: 10px 12px 16px; border-top: 1px solid #f0f0f0; font-size: 10px; text-align: center; color: var(--home-muted);
}
.home-phone-bottom-nav .on { color: var(--home-gold); font-weight: 700; }
.home-mockup-cta {
  position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 30px; border-radius: 999px;
  background: linear-gradient(135deg, #7a5f1a, #a67c1e 55%, #c59d5f);
  border: 1px solid #6b5418;
  color: #fff; font-weight: 700; text-decoration: none; font-size: 14px;
  box-shadow: 0 14px 36px var(--home-gold-glow); white-space: nowrap; z-index: 4;
  text-shadow: 0 1px 0 rgba(0,0,0,.12);
}
.home-mockup-cta .home-live-dot { width: 7px; height: 7px; box-shadow: 0 0 0 3px rgba(255,255,255,.35); }
.home-mockup-cta:hover {
  transform: translateX(-50%) translateY(-2px);
  text-decoration: none;
  color: #fff;
  background: linear-gradient(135deg, #8b6d30, #b8894a);
}

/* Marquee */
.home-marquee-wrap { padding: 20px 0; background: var(--home-cream); border-block: 1px solid var(--home-border); overflow: hidden; }
.home-marquee { display: flex; gap: 48px; width: max-content; animation: home-marquee 30s linear infinite; }
.home-marquee span { font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--home-muted); white-space: nowrap; }
.home-marquee span::after { content: "·"; margin-left: 48px; opacity: .35; }
@keyframes home-marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* Sections */
.home-section { padding: clamp(72px, 9vw, 104px) 0; }
.home-section-soft { background: var(--home-cream); }
.home-section-dark { background: var(--home-cream); color: var(--home-text); }
.home-label { display: block; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--home-gold); margin-bottom: 12px; }
.home-section-head { text-align: center; margin-bottom: 52px; }
.home-section-head h2 { font-size: clamp(28px, 4.2vw, 44px); line-height: 1.1; letter-spacing: -.035em; margin: 0; font-weight: 800; }
.home-section-head-light h2 { color: var(--home-text); }
.home-section-desc { font-size: 17px; color: var(--home-muted); max-width: 620px; margin: 16px auto 0; line-height: 1.65; }
.home-section-dark .home-section-desc { color: var(--home-muted); }
.home-split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 56px); align-items: center; }
.home-split-copy h2 { font-size: clamp(26px, 3.6vw, 40px); line-height: 1.12; margin: 0 0 16px; font-weight: 800; }
.home-split-copy h2 em { font-style: normal; color: var(--home-gold); }
.home-split-copy p { color: var(--home-muted); font-size: 17px; line-height: 1.68; margin: 0; }
.home-checklist { list-style: none; padding: 0; margin: 24px 0 0; display: grid; gap: 14px; }
.home-checklist li { padding-left: 16px; border-left: 3px solid var(--home-green); color: var(--home-muted); font-size: 15px; line-height: 1.55; }
.home-problem-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.home-problem-card { padding: 28px 24px; display: flex; flex-direction: column; gap: 6px; }
.home-problem-icon { font-size: 28px; margin-bottom: 6px; }
.home-problem-card h3 { margin: 0; font-size: 18px; font-weight: 800; }
.home-problem-card p { margin: 0; font-size: 14px; color: var(--home-muted); line-height: 1.55; min-height: 44px; }
.home-problem-arrow { font-size: 20px; color: var(--home-gold); margin: 8px 0 4px; font-weight: 700; }
.home-problem-card strong { font-size: 15px; color: var(--home-text); }
.home-problem-card > span:last-child { font-size: 13px; color: var(--home-muted); line-height: 1.5; }

/* Steps */
.home-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.home-step-card { padding: 30px 28px; }
.home-step-num {
  width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center;
  background: linear-gradient(135deg, var(--home-gold), #dbad52); color: #fff; font-weight: 800; margin-bottom: 18px;
  box-shadow: 0 8px 24px var(--home-gold-glow);
}
.home-step-card h3 { margin: 0 0 10px; font-size: 20px; }
.home-step-card p { margin: 0; color: var(--home-muted); font-size: 15px; line-height: 1.58; }

/* Menü Asistanı penceresi */
.home-wa-window { padding: 0; overflow: hidden; border-radius: var(--home-radius); }
.home-wa-window-head {
  display: flex; align-items: center; gap: 12px; padding: 18px 20px;
  background: linear-gradient(135deg, var(--home-green-dark), #0a4a42); color: #fff;
}
.home-wa-dot-lg {
  width: 40px; height: 40px; border-radius: 50%; background: var(--home-green);
  display: grid; place-items: center; font-weight: 800; color: #fff;
  box-shadow: 0 0 0 4px rgba(37,211,102,.2);
}
.home-wa-window-head strong { display: block; font-size: 14px; }
.home-wa-window-head span { font-size: 12px; opacity: .88; }
.home-wa-window-body { padding: 20px; background: #e5ddd5; display: grid; gap: 10px; min-height: 320px; }
.home-wa-msg { max-width: 88%; padding: 11px 14px; border-radius: 14px; font-size: 13px; line-height: 1.48; }
.home-wa-msg.out { margin-left: auto; background: #dcf8c6; border-radius: 14px 14px 4px 14px; }
.home-wa-msg.in { background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.08); border-radius: 14px 14px 14px 4px; }
.home-wa-msg.ok { border-left: 3px solid var(--home-green); }

/* Preview */
.home-preview-row { display: flex; justify-content: center; align-items: flex-end; gap: 32px; flex-wrap: wrap; margin-bottom: 40px; }
.home-center-cta { text-align: center; }

/* Panel mock */
.home-panel-mock { display: grid; grid-template-columns: 188px 1fr; overflow: hidden; padding: 0; border-radius: var(--home-radius); }
.home-panel-side { background: #faf8f4; padding: 20px 12px; color: #5c5c5c; font-size: 13px; border-right: 1px solid rgba(26,26,26,.08); }
.home-panel-brand { display: flex; align-items: center; gap: 8px; color: #1a1a1a; font-weight: 700; margin-bottom: 20px; padding: 0 8px; }
.home-panel-brand span { width: 28px; height: 28px; border-radius: 8px; background: linear-gradient(135deg, var(--home-gold), #dbad52); color: #fff; display: grid; place-items: center; font-size: 12px; font-weight: 800; }
.home-panel-side div { padding: 10px 12px; border-radius: 10px; margin-bottom: 4px; }
.home-panel-side .on { background: rgba(196,154,76,.14); color: #a67c1e; }
.home-panel-main { padding: 24px; background: #fff; }
.home-panel-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 18px; }
.home-panel-metrics div { padding: 16px; border-radius: 14px; background: #f7f8fc; border: 1px solid var(--home-border); }
.home-panel-metrics strong { display: block; font-size: 21px; }
.home-panel-metrics span { font-size: 11px; color: var(--home-muted); }
.home-panel-order {
  display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: center;
  padding: 13px 0; border-bottom: 1px solid var(--home-border); font-size: 13px;
}
.home-panel-order em { font-style: normal; padding: 5px 11px; border-radius: 999px; font-size: 11px; background: #f3e8ff; color: #7c3aed; }
.home-panel-order em.ready { background: #dcfce7; color: #16a34a; }

/* Pricing */
.home-pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; align-items: stretch; }
.home-price-card { padding: 34px 30px; position: relative; display: flex; flex-direction: column; }
.home-price-card.featured {
  border-color: rgba(200,149,46,.35);
  box-shadow: 0 28px 72px var(--home-gold-glow);
  transform: scale(1.02);
}
.home-price-badge {
  position: absolute; top: 18px; right: 18px; padding: 6px 11px; border-radius: 999px;
  font-size: 11px; font-weight: 700; background: rgba(255,107,44,.14); color: #c2410c;
}
.home-price-card h3 { margin: 0 0 8px; font-size: 22px; }
.home-price-desc { margin: 0 0 18px; font-size: 14px; color: var(--home-muted); line-height: 1.5; }
.home-price { font-size: 46px; font-weight: 800; letter-spacing: -.04em; margin-bottom: 22px; }
.home-price small { font-size: 16px; font-weight: 500; color: var(--home-muted); }
.home-price-card ul { list-style: none; padding: 0; margin: 0 0 28px; flex: 1; }
.home-price-card li {
  padding: 11px 0 11px 24px; position: relative; font-size: 14px; color: var(--home-muted);
  border-bottom: 1px solid var(--home-border); line-height: 1.45;
}
.home-price-card li::before {
  content: ""; position: absolute; left: 0; top: 15px; width: 10px; height: 10px;
  border-radius: 50%; background: var(--home-green);
}

/* FAQ */
.home-faq-wrap { max-width: 760px; margin: 0 auto; }
.home-faq { display: grid; gap: 12px; }
.home-faq-item {
  background: var(--home-surface); border: 1px solid var(--home-border); border-radius: var(--home-radius-sm);
  padding: 0 20px; box-shadow: 0 8px 28px rgba(10,14,20,.04);
}
.home-faq-item summary {
  cursor: pointer; font-weight: 700; font-size: 16px; padding: 18px 28px 18px 0;
  list-style: none; position: relative; line-height: 1.45; color: var(--home-text);
}
.home-faq-item summary::-webkit-details-marker { display: none; }
.home-faq-item summary::after {
  content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  font-size: 22px; color: var(--home-gold); font-weight: 400;
}
.home-faq-item[open] summary::after { content: "−"; }
.home-faq-item p { margin: 0 0 18px; color: var(--home-muted); font-size: 15px; line-height: 1.65; }

/* CTA + Form — açık krem */
.home-apply {
  background: var(--home-cream);
  border-top: 1px solid var(--home-border);
  padding: clamp(56px, 7vw, 80px) 0;
}
.home-apply-wrap {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px);
  gap: clamp(32px, 5vw, 64px); align-items: center;
}
.home-apply-intro { max-width: 480px; }
.home-apply-intro h2 {
  font-size: clamp(26px, 3.5vw, 36px); margin: 12px 0 14px; line-height: 1.12; font-weight: 800;
  color: var(--home-text);
}
.home-apply-intro p { margin: 0 0 20px; color: var(--home-muted); line-height: 1.65; font-size: 16px; }
.home-apply-points {
  list-style: none; padding: 0; margin: 0 0 26px; display: grid; gap: 12px;
}
.home-apply-points li {
  position: relative; padding-left: 28px; font-size: 15px; font-weight: 600; color: var(--home-text);
}
.home-apply-points li::before {
  content: "✓"; position: absolute; left: 0; top: -1px;
  color: var(--home-gold); font-weight: 800; font-size: 15px;
}
.home-apply-links { display: flex; gap: 10px; flex-wrap: wrap; }
.home-form-compact {
  padding: 28px; display: grid; gap: 12px;
  background: var(--home-surface); border: 1px solid var(--home-border);
  border-radius: var(--home-radius); box-shadow: 0 12px 40px rgba(26,26,26,.06);
  position: relative;
}
.home-form-compact:hover { transform: none; }
.home-form h3 { margin: 0 0 6px; font-size: 20px; color: var(--home-text); font-weight: 800; }
.home-form label span { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 600; color: var(--home-muted); }
.home-form input, .home-form textarea,
.home-form-compact input, .home-form-compact textarea {
  width: 100%; padding: 13px 15px; border-radius: 14px;
  border: 1px solid var(--home-border); font: inherit; background: #fafbfc;
  transition: border-color .2s, box-shadow .2s;
}
.home-form input:focus, .home-form textarea:focus,
.home-form-compact input:focus, .home-form-compact textarea:focus {
  outline: none; border-color: rgba(200,149,46,.5);
  box-shadow: 0 0 0 4px rgba(200,149,46,.12);
}
.home-form textarea { min-height: 96px; resize: vertical; }
.home-form-compact textarea { min-height: 88px; resize: vertical; }
.home-form-msg { text-align: center; font-size: 14px; margin: 0; }
.home-layout .alert-success { background: #dcfce7; color: #166534; padding: 12px; border-radius: 12px; }
.home-layout .alert-error { background: #fee2e2; color: #991b1b; padding: 12px; border-radius: 12px; }

/* Footer — açık krem referans */
.home-footer { background: var(--home-cream); color: var(--home-muted); padding: 48px 0 24px; border-top: 1px solid var(--home-border); }
.home-footer-light .home-logo { color: var(--home-text); }
.home-footer-light .home-logo-mark { box-shadow: 0 4px 12px rgba(197,157,95,.25); }
.home-footer .home-logo { margin-bottom: 14px; }
.home-footer-tag { font-size: 14px; max-width: 300px; line-height: 1.6; margin: 0; color: var(--home-muted); }
.home-footer-grid { display: grid; grid-template-columns: 1fr auto auto; gap: 36px clamp(48px, 7vw, 110px); margin-bottom: 32px; align-items: start; }
.home-footer-grid strong { display: block; color: var(--home-text); margin-bottom: 14px; font-size: 14px; }
.home-footer-grid a { display: block; color: var(--home-muted); text-decoration: none; font-size: 14px; padding: 5px 0; }
.home-footer-grid a:hover { color: var(--home-gold-dark); }
.home-footer-bottom { padding-top: 20px; border-top: 1px solid var(--home-border); font-size: 13px; color: var(--home-muted); }

/* Responsive */
@media (max-width: 1024px) {
  .home-hero-grid, .home-split, .home-apply-wrap { grid-template-columns: 1fr; }
  .home-problem-grid { grid-template-columns: repeat(2, 1fr); }
  .home-steps, .home-pricing-grid { grid-template-columns: 1fr; }
  .home-panel-mock { grid-template-columns: 1fr; }
  .home-panel-side { display: none; }
  .home-mockup-stage { min-height: 500px; margin-top: 12px; }
  .home-price-card.featured { transform: none; }
  .home-hero { min-height: auto; }
}
@media (max-width: 834px) {
  .home-problem-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .landing-page [id] { scroll-margin-top: 104px; }
  .home-wrap { padding-inline: clamp(20px, 5.5vw, 24px); }
  .home-section { padding: 64px 0; }
  .home-section-pricing { padding-top: 80px; }
  .home-section-head-pricing { padding-top: 8px; position: relative; z-index: 1; }
  .home-nav-toggle { display: flex; }
  .home-nav-inner { gap: 10px; }
  .home-nav-right { margin-left: auto; }
  .home-nav-links {
    display: none; position: fixed; top: 72px; left: 14px; right: 14px;
    flex-direction: column; align-items: stretch; gap: 4px;
    background: var(--home-surface); padding: 16px;
    border: 1px solid var(--home-border); border-radius: 20px;
    box-shadow: 0 28px 72px rgba(0,0,0,.12); z-index: 260;
    max-height: calc(100vh - 96px); overflow-y: auto;
  }
  .home-nav-links.open { display: flex; }
  .home-nav-backdrop.is-visible { display: block; }
  .home-nav-links a:not(.home-btn) { padding: 12px 14px; border-radius: 12px; }
  .home-nav-links .home-btn { width: 100%; margin-top: 6px; }
  .home-problem-grid { grid-template-columns: 1fr; }
  .home-hero-cta { flex-direction: column; }
  .home-hero-cta .home-btn { width: 100%; }
  .home-trust-list { grid-template-columns: 1fr; }
  .home-phone-light.home-phone-hero,
  .home-phone-premium.home-phone-hero { width: min(360px, 94vw); transform: none; }
  .home-phone-light,
  .home-phone-premium { width: min(300px, 92vw); }
  .home-phone-screen-light,
  .home-phone-screen-premium { min-height: 520px; }
  .home-footer-grid { grid-template-columns: 1fr; }
  body.home-nav-open { overflow: hidden; }
}
.home-phone-light .home-phone-notch,
.home-phone-premium .home-phone-notch {
  position: absolute; top: 12px; left: 50%; transform: translateX(-50%);
  width: 88px; height: 7px; border-radius: 999px; background: #d8d8d8; z-index: 3;
}
.home-phone-premium .home-phone-notch-dark { background: #050807; }
.home-preview-row .home-phone-sm { width: min(260px, 72vw); transform: scale(.92); opacity: .96; }
.home-phone-grid-single { grid-template-columns: 1fr !important; }
.home-phone-light,
.home-phone-premium { position: relative; }
@media (max-width: 430px) {
  .home-hero h1 { font-size: 34px; }
  .home-trust-list li { font-size: 13px; }
}
.panel-app .btn-primary, .panel-app .logo-mark {
  background: linear-gradient(135deg, #c8952e, #dbad52) !important;
  color: #fff !important;
}
.panel-nav button.active { background: rgba(200,149,46,.14) !important; color: #a67c1e !important; }
.panel-side { background: #faf8f4; border-right-color: rgba(26,26,26,.08); }
.panel-side .logo, .panel-side .panel-nav button { color: #5c5c5c; }
.panel-content { background: #fff; }
.panel-content .card { background: #fff; border-color: rgba(26,26,26,.08); box-shadow: 0 8px 24px rgba(0,0,0,.04); }
.panel-top h1 { color: #1a1a1a; }

/* Premium yemek illüstrasyonları v2 — fotoğraf kartı hissi */
.food-illus {
  position: relative;
  background-color: #e6ddd2;
  background-repeat: no-repeat;
  background-position: center 62%;
  background-size: 92% auto;
  overflow: hidden;
}
.food-illus::before {
  content: "";
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 70% 55% at 28% 18%, rgba(255,255,255,.55), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.12) 0%, transparent 38%, rgba(0,0,0,.07) 100%);
  pointer-events: none; z-index: 1;
}
.food-illus::after {
  content: "";
  position: absolute; left: 8%; right: 8%; bottom: 6%; height: 18%;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.14), transparent 70%);
  pointer-events: none; z-index: 1;
}
.food-illus-soup {
  background-color: #ebe2d6;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Cdefs%3E%3ClinearGradient id='tb' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23f3ebe2'/%3E%3Cstop offset='100%25' stop-color='%23d9c8b4'/%3E%3C/linearGradient%3E%3ClinearGradient id='sp' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23d4a574'/%3E%3Cstop offset='100%25' stop-color='%23a06530'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='120' height='90' fill='url(%23tb)'/%3E%3Cellipse cx='60' cy='72' rx='38' ry='10' fill='%23c4b4a4' opacity='.45'/%3E%3Cpath d='M22 62 Q60 42 98 62' fill='%23f7efe6' stroke='%23c5a059' stroke-width='2.4'/%3E%3Cellipse cx='60' cy='60' rx='34' ry='16' fill='%23f2e6d8' stroke='%23d4c0a8' stroke-width='1.5'/%3E%3Cellipse cx='60' cy='56' rx='26' ry='11' fill='url(%23sp)'/%3E%3Cpath d='M48 48 Q52 40 56 48' stroke='%23fff' stroke-width='2' fill='none' opacity='.35'/%3E%3Ccircle cx='72' cy='52' r='4' fill='%233d6b3d' opacity='.55'/%3E%3Cpath d='M54 34 Q56 26 58 34' stroke='%23fff' stroke-width='1.5' fill='none' opacity='.4'/%3E%3Cpath d='M64 30 Q66 22 68 30' stroke='%23fff' stroke-width='1.5' fill='none' opacity='.35'/%3E%3C/svg%3E");
}
.food-illus-grill {
  background-color: #e8dfd4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Cdefs%3E%3ClinearGradient id='m' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0%25' stop-color='%23c8952e'/%3E%3Cstop offset='100%25' stop-color='%237a4a22'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='120' height='90' fill='%23ebe2d8'/%3E%3Cellipse cx='60' cy='74' rx='40' ry='9' fill='%23cfc0b0' opacity='.5'/%3E%3Cellipse cx='60' cy='70' rx='36' ry='14' fill='%23f0e8e0' stroke='%23c8b8a8' stroke-width='1.4'/%3E%3Crect x='38' y='46' width='44' height='20' rx='9' fill='url(%23m)'/%3E%3Cpath d='M40 58 H80' stroke='%235a3418' stroke-width='2' opacity='.35'/%3E%3Cpath d='M42 52 H78' stroke='%235a3418' stroke-width='1.5' opacity='.25'/%3E%3Ccircle cx='50' cy='52' r='4' fill='%234a2a12' opacity='.4'/%3E%3Ccircle cx='70' cy='54' r='3.5' fill='%234a2a12' opacity='.35'/%3E%3Cpath d='M78 48 L84 42' stroke='%233d6b3d' stroke-width='2'/%3E%3Ccircle cx='86' cy='40' r='3' fill='%234a8f4a'/%3E%3C/svg%3E");
}
.food-illus-drink {
  background-color: #e8eef4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23f8fafc'/%3E%3Cstop offset='100%25' stop-color='%23d8e4ee'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='120' height='90' fill='%23eef3f8'/%3E%3Cpath d='M44 22 L48 72 Q60 76 72 72 L76 22 Z' fill='url(%23g)' stroke='%23b8c8d8' stroke-width='2.2'/%3E%3Crect x='42' y='20' width='36' height='7' rx='3.5' fill='%23d0dce8'/%3E%3Cellipse cx='60' cy='50' rx='10' ry='16' fill='%23fff' opacity='.55'/%3E%3Cellipse cx='56' cy='36' rx='8' ry='5' fill='%23fff' opacity='.65'/%3E%3Cpath d='M52 30 Q60 24 68 30' stroke='%23fff' stroke-width='2' fill='none' opacity='.5'/%3E%3C/svg%3E");
}
.food-illus-dessert {
  background-color: #f5ebe0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Crect width='120' height='90' fill='%23f7efe6'/%3E%3Cpath d='M26 68 L60 24 L94 68 Z' fill='%23e8d0b0' stroke='%23c5a059' stroke-width='1.6'/%3E%3Cellipse cx='60' cy='68' rx='32' ry='9' fill='%23d9c4a8'/%3E%3Ccircle cx='60' cy='40' r='7' fill='%23c55a2e' opacity='.65'/%3E%3Ccircle cx='54' cy='36' r='2' fill='%23fff' opacity='.5'/%3E%3Cpath d='M48 58 Q60 52 72 58' stroke='%23fff' stroke-width='2' fill='none' opacity='.3'/%3E%3C/svg%3E");
}
.food-illus-plate {
  background-color: #ebe2d8;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 90'%3E%3Crect width='120' height='90' fill='%23ebe2d8'/%3E%3Cellipse cx='60' cy='74' rx='38' ry='9' fill='%23cfc0b0' opacity='.45'/%3E%3Cellipse cx='60' cy='70' rx='34' ry='13' fill='%23f2ebe3' stroke='%23cfc0b0' stroke-width='1.4'/%3E%3Ccircle cx='48' cy='62' r='8' fill='%23c5a059' opacity='.45'/%3E%3Ccircle cx='68' cy='64' r='7' fill='%23a67c52' opacity='.5'/%3E%3Crect x='54' y='56' width='12' height='12' rx='5' fill='%238b6914' opacity='.35'/%3E%3Cpath d='M72 54 L80 48' stroke='%233d6b3d' stroke-width='2'/%3E%3Ccircle cx='82' cy='46' r='3' fill='%234a8f4a'/%3E%3C/svg%3E");
}
.home-phone-product-img.food-illus { background-size: cover; background-position: center; }
.menu-item-thumb.food-illus, .item-preview-thumb.food-illus {
  border: none;
  box-shadow: none;
}
.item-preview-thumb.food-illus { width: 56px; height: 42px; border-radius: 10px; }
.menu-item-placeholder { display: none; }

/* Menü — fotoğraf kartı düzeni */
.menu-app-premium { background: #fdfbf7; }
.menu-app-premium .menu-header-premium {
  position: sticky; top: 0; z-index: 40;
  background: rgba(253,251,247,.92);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(26,26,26,.06);
  box-shadow: 0 6px 24px rgba(0,0,0,.04);
  padding: 16px 0 14px;
}
.menu-brand { display: flex; align-items: center; gap: 12px; }
.menu-brand-mark {
  width: 42px; height: 42px; border-radius: 12px; flex-shrink: 0;
  display: grid; place-items: center; font-size: 12px; font-weight: 800;
  background: linear-gradient(135deg, #c5a059, #dbad52); color: #fff;
  box-shadow: 0 8px 20px rgba(197,160,89,.28);
}
.menu-app-premium .menu-items {
  padding: 8px 16px 120px; gap: 18px; max-width: 1040px;
}
@media (min-width: 768px) {
  .menu-app-premium .menu-items { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
.menu-app-premium .menu-item-card {
  display: flex; flex-direction: column; padding: 0; overflow: hidden;
  border-radius: 22px; border: 1px solid rgba(26,26,26,.07);
  box-shadow: 0 14px 40px rgba(0,0,0,.06);
  background: #fff; transition: transform .2s ease, box-shadow .2s ease;
}
.menu-app-premium .menu-item-card:hover {
  transform: translateY(-3px); box-shadow: 0 20px 52px rgba(0,0,0,.09);
}
.menu-app-premium .menu-item-media { position: relative; width: 100%; }
.menu-app-premium .menu-item-media .menu-item-thumb,
.menu-app-premium .menu-item-media .food-illus {
  width: 100%; height: auto; aspect-ratio: 4/3; border-radius: 0;
}
.menu-app-premium .menu-item-media img {
  width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4/3;
}
.menu-app-premium .menu-item-body { padding: 14px 16px 16px; }
.menu-app-premium .menu-item-price { color: #c5a059; font-size: 18px; }
.menu-app-premium .category-tab.active {
  background: #1a1a1a; border-color: #1a1a1a; color: #fff;
}
.menu-app-premium .category-tab { border-color: rgba(26,26,26,.1); background: #fff; }
.menu-app-premium .qty-control button {
  background: #fff; border-color: rgba(26,26,26,.12); color: #1a1a1a; border-radius: 10px;
}
.menu-app-premium .qty-control button:hover { border-color: #c5a059; color: #9a7a3c; }
.menu-app-premium .cart-bar {
  left: 50%; transform: translateX(-50%); right: auto;
  width: min(520px, calc(100% - 32px));
  background: #fff; border: 1px solid rgba(26,26,26,.08);
  box-shadow: 0 20px 56px rgba(0,0,0,.14); padding: 12px 18px;
}
.menu-app-premium .cart-panel-premium {
  border-radius: 28px 28px 0 0; padding: 24px 20px calc(24px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -16px 48px rgba(0,0,0,.1);
}
.menu-app-premium .cart-panel-head {
  display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;
}
.menu-app-premium .cart-panel-head h2 { margin: 0; font-size: 20px; }
.menu-app-premium .order-success-premium {
  max-width: 380px; padding: 36px 28px; border-radius: 28px;
  border: 1px solid rgba(26,26,26,.08);
  box-shadow: 0 32px 80px rgba(0,0,0,.12);
}

/* Login premium */
.auth-page-premium {
  background:
    radial-gradient(ellipse 60% 50% at 80% 10%, rgba(197,160,89,.08), transparent 55%),
    radial-gradient(ellipse 50% 40% at 10% 90%, rgba(197,160,89,.05), transparent 50%),
    #fdfbf7;
}
.auth-shell { width: min(440px, 100%); }
.auth-page-premium .auth-card {
  position: relative;
  border-radius: 28px; padding: 48px 38px 40px;
  box-shadow: 0 32px 88px rgba(0,0,0,.09), 0 2px 10px rgba(0,0,0,.04);
  overflow: hidden;
}
.auth-page-premium .auth-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #c5a059, #dbad52, #c5a059);
}
.auth-page-premium .brand-auth-logo {
  box-shadow: 0 16px 40px rgba(124, 92, 255, .28), 0 0 0 8px rgba(197,160,89,.08);
}
.auth-page-premium .auth-form input {
  border-radius: 12px; transition: border-color .15s ease, box-shadow .15s ease;
}
.auth-page-premium .auth-form input:focus {
  outline: none; border-color: #c5a059;
  box-shadow: 0 0 0 3px rgba(197,160,89,.16);
}
.auth-page-premium .auth-form label span {
  font-weight: 600; color: #3d3d3d; font-size: 14px;
}
.auth-input-field { position: relative; display: flex; align-items: center; }
.auth-input-field input { flex: 1; width: 100%; padding-left: 44px; }
.auth-input-icon {
  position: absolute; left: 14px; width: 20px; height: 20px;
  color: #8a8a8a; pointer-events: none; transition: color .15s ease;
}
.auth-input-field:focus-within .auth-input-icon,
.auth-password-field:focus-within .auth-input-icon { color: #c5a059; }
.auth-password-field { position: relative; display: flex; align-items: center; }
.auth-password-field input { flex: 1; width: 100%; padding-left: 44px; padding-right: 46px; }
.auth-password-toggle {
  position: absolute; top: 50%; right: 6px; transform: translateY(-50%);
  width: 34px; height: 34px; display: flex; align-items: center; justify-content: center;
  background: transparent; border: none; border-radius: 8px; padding: 0; cursor: pointer;
  color: #6f6f6f; transition: color .15s ease, background .15s ease, transform .1s ease;
}
.auth-password-toggle:hover { color: #3d3d3d; background: rgba(0,0,0,.05); }
.auth-password-toggle:active { transform: translateY(-50%) scale(.88); }
.auth-password-toggle:focus-visible { outline: 2px solid #c5a059; outline-offset: 1px; }
.auth-password-toggle-icon { width: 21px; height: 21px; }
.auth-password-toggle-icon[hidden] { display: none !important; }
html.panel-theme-dark .auth-password-toggle,
html.home-theme-dark .auth-password-toggle { color: #a3a3a3; }
html.panel-theme-dark .auth-password-toggle:hover,
html.home-theme-dark .auth-password-toggle:hover { color: #f3f3f3; background: rgba(255,255,255,.08); }
.auth-page-premium .btn-primary {
  transition: transform .15s ease, box-shadow .15s ease;
}
.auth-page-premium .btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 34px rgba(197,160,89,.36);
}
.auth-page-premium .auth-footer a {
  display: inline-flex; align-items: center; gap: 4px;
  transition: opacity .15s ease, transform .15s ease;
  border-radius: 4px;
}
.auth-page-premium .auth-footer a:hover { opacity: .7; transform: translateX(-2px); }
.auth-page-premium .auth-footer a:focus-visible { outline: 2px solid #c5a059; outline-offset: 3px; }
html.panel-theme-dark .auth-page-premium .brand-auth-logo,
html.home-theme-dark .auth-page-premium .brand-auth-logo {
  box-shadow: 0 16px 40px rgba(124, 92, 255, .35), 0 0 0 8px rgba(255,255,255,.05);
}

/* Login — ikiye bölünmüş premium ekran (sol: marka paneli, sağ: giriş kartı) */
.auth-page.auth-page--split {
  display: block;
  padding: 0;
}
.auth-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 100vh;
  min-height: 100svh;
}
.auth-split__aside {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
  padding: 48px 46px;
  background:
    radial-gradient(ellipse 70% 50% at 88% 0%, rgba(219, 173, 82, .22), transparent 55%),
    radial-gradient(ellipse 60% 45% at 8% 100%, rgba(197, 160, 89, .14), transparent 50%),
    linear-gradient(160deg, #1c1710 0%, #241c12 55%, #1c1710 100%);
  color: #f4ede0;
}
.auth-split__aside::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .05;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.4'%3E%3Ccircle cx='36' cy='36' r='16'/%3E%3Ccircle cx='36' cy='36' r='2'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 72px;
}
.auth-split__brand.logo {
  color: #f4ede0;
  position: relative;
}
.auth-split__aside .auth-split__headline {
  position: relative;
  margin-top: 2.4rem;
  font-size: clamp(1.6rem, 2.6vw, 2.3rem);
  font-weight: 800;
  line-height: 1.24;
  letter-spacing: -.02em;
  color: #f4ede0;
}
.auth-split__headline span {
  background: linear-gradient(90deg, #dbad52, #f3d896);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.auth-split__features {
  position: relative;
  margin-top: 1.9rem;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
.auth-split__feature {
  display: flex;
  align-items: center;
  gap: .65rem;
  font-size: .92rem;
  color: rgba(244, 237, 224, .82);
}
.auth-split__feature-ic {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(219, 173, 82, .18);
  color: #dbad52;
}
.auth-split__feature-ic svg { width: 15px; height: 15px; }
.auth-split__quote {
  position: relative;
  font-size: .9rem;
  font-style: italic;
  color: rgba(244, 237, 224, .62);
  border-left: 2px solid rgba(219, 173, 82, .4);
  padding-left: .9rem;
}
.auth-split__main {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
@media (max-width: 900px) {
  .auth-split { grid-template-columns: 1fr; }
  .auth-split__aside { display: none; }
}

/* Panel premium */
.panel-app-premium { background: #f7f4ee; }
.panel-app-premium .panel-side {
  background: #fff !important; border-right: 1px solid rgba(26,26,26,.08) !important;
  box-shadow: 4px 0 28px rgba(0,0,0,.04);
}
.panel-app-premium .panel-content { background: #f7f4ee; padding: 32px; }
.panel-app-premium .panel-nav button.active {
  background: rgba(197,160,89,.14) !important; color: #9a7a3c !important; font-weight: 600;
}
.panel-app-premium .panel-nav button:hover { background: rgba(0,0,0,.04); }
.panel-app-premium .metric-grid-premium { gap: 18px; margin-bottom: 8px; }
.panel-app-premium .metric-card {
  padding: 24px 22px !important; border-radius: 20px !important;
  border: 1px solid rgba(26,26,26,.07) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,.05) !important;
  background: #fff !important;
}
.panel-app-premium .metric-card strong {
  display: block; font-size: 34px; line-height: 1.1; margin-bottom: 6px; color: #1a1a1a;
}
.panel-app-premium .metric-card .muted { display: block; font-size: 14px; }
.panel-app-premium .card {
  border-radius: 20px; border-color: rgba(26,26,26,.07) !important;
  box-shadow: 0 10px 32px rgba(0,0,0,.04) !important;
}
.panel-app-premium .data-table tbody tr:hover { background: rgba(197,160,89,.06); }
.panel-app-premium .status-pending { background: #fef3c7; color: #92400e; }
.panel-app-premium .status-confirmed { background: #dbeafe; color: #1e40af; }
.panel-app-premium .status-preparing { background: #ede9fe; color: #6d28d9; }
.panel-app-premium .status-ready { background: #dcfce7; color: #166534; }
.panel-app-premium .status-delivered { background: #d1fae5; color: #065f46; }
.panel-app-premium .status-cancelled { background: #fee2e2; color: #991b1b; }
.panel-app-premium .btn-primary {
  background: linear-gradient(135deg, #c5a059, #dbad52) !important;
  box-shadow: 0 10px 28px rgba(197,160,89,.28) !important;
}
.panel-app-premium .logo-mark {
  background: linear-gradient(135deg, #c59d5f, #d4ad62) !important;
}

/* ===== Round 6 — milimetrik hero / görsel ince ayar ===== */
.food-illus {
  filter: saturate(1.06) contrast(1.03);
  background-size: cover;
  background-position: center;
}
.food-illus::before {
  background:
    radial-gradient(ellipse 65% 50% at 32% 15%, rgba(255,255,255,.62), transparent 54%),
    linear-gradient(180deg, rgba(255,255,255,.08) 0%, transparent 42%, rgba(0,0,0,.05) 100%);
}
.food-illus-soup {
  background-color: #e8dfd3;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Cdefs%3E%3ClinearGradient id='w' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0%25' stop-color='%23f4ece3'/%3E%3Cstop offset='100%25' stop-color='%23d8c8b4'/%3E%3C/linearGradient%3E%3CradialGradient id='s' cx='50%25' cy='45%25' r='55%25'%3E%3Cstop offset='0%25' stop-color='%23e0b080'/%3E%3Cstop offset='100%25' stop-color='%23a06530'/%3E%3C/radialGradient%3E%3C/defs%3E%3Crect width='160' height='120' fill='url(%23w)'/%3E%3Cellipse cx='80' cy='98' rx='52' ry='12' fill='%23c8b8a8' opacity='.35'/%3E%3Cellipse cx='80' cy='78' rx='46' ry='22' fill='%23f3e9dc'/%3E%3Cellipse cx='80' cy='74' rx='38' ry='16' fill='url(%23s)'/%3E%3Cellipse cx='68' cy='68' rx='14' ry='6' fill='%23fff' opacity='.22'/%3E%3Ccircle cx='104' cy='66' r='5' fill='%234a7c4a' opacity='.5'/%3E%3C/svg%3E");
}
.food-illus-grill {
  background-color: #e6ddd2;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Cdefs%3E%3ClinearGradient id='m' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0%25' stop-color='%23d4a060'/%3E%3Cstop offset='55%25' stop-color='%23b87838'/%3E%3Cstop offset='100%25' stop-color='%237a4a22'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='160' height='120' fill='%23ebe2d8'/%3E%3Cellipse cx='80' cy='100' rx='54' ry='11' fill='%23cfc0b0' opacity='.4'/%3E%3Cellipse cx='80' cy='94' rx='48' ry='18' fill='%23f0e8e0'/%3E%3Crect x='48' y='58' width='64' height='30' rx='14' fill='url(%23m)'/%3E%3Cpath d='M52 78 H108' stroke='%235a3418' stroke-width='2.5' opacity='.25'/%3E%3Ccircle cx='66' cy='68' r='5' fill='%234a2a12' opacity='.3'/%3E%3Ccircle cx='94' cy='70' r='4' fill='%234a2a12' opacity='.28'/%3E%3Cpath d='M108 62 L118 52' stroke='%234a7c4a' stroke-width='2.5'/%3E%3Ccircle cx='120' cy='50' r='4' fill='%235a9a5a'/%3E%3C/svg%3E");
}
.food-illus-drink {
  background-color: #e6edf3;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23fcfdfe'/%3E%3Cstop offset='100%25' stop-color='%23d4e0ea'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='160' height='120' fill='%23eef3f8'/%3E%3Cpath d='M58 28 L64 96 Q80 102 96 96 L102 28 Z' fill='url(%23g)'/%3E%3Crect x='56' y='26' width='48' height='8' rx='4' fill='%23d0dce8'/%3E%3Cellipse cx='80' cy='66' rx='14' ry='22' fill='%23fff' opacity='.5'/%3E%3Cellipse cx='74' cy='46' rx='10' ry='6' fill='%23fff' opacity='.6'/%3E%3C/svg%3E");
}
.food-illus-plate {
  background-color: #e8dfd4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Crect width='160' height='120' fill='%23ebe2d8'/%3E%3Cellipse cx='80' cy='100' rx='52' ry='11' fill='%23cfc0b0' opacity='.38'/%3E%3Cellipse cx='80' cy='94' rx='46' ry='18' fill='%23f2ebe3'/%3E%3Ccircle cx='62' cy='82' r='11' fill='%23c59d5f' opacity='.42'/%3E%3Ccircle cx='96' cy='84' r='10' fill='%23a67c52' opacity='.45'/%3E%3Crect x='72' y='74' width='16' height='14' rx='6' fill='%238b6914' opacity='.32'/%3E%3Cpath d='M104 76 L116 66' stroke='%234a7c4a' stroke-width='2.5'/%3E%3Ccircle cx='118' cy='64' r='4' fill='%235a9a5a'/%3E%3C/svg%3E");
}
.food-illus-dessert {
  background-color: #f0e6da;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Crect width='160' height='120' fill='%23f5ebe0'/%3E%3Cpath d='M34 90 L80 32 L126 90 Z' fill='%23e8d0b0'/%3E%3Cellipse cx='80' cy='90' rx='42' ry='11' fill='%23d9c4a8'/%3E%3Ccircle cx='80' cy='54' r='10' fill='%23c55a2e' opacity='.6'/%3E%3Ccircle cx='72' cy='48' r='3' fill='%23fff' opacity='.45'/%3E%3C/svg%3E");
}
.menu-app-premium { background: #f9f7f2; }
.menu-app-premium .menu-header-premium { background: rgba(249,247,242,.94); }
.menu-app-premium .menu-item-media .food-illus { aspect-ratio: 5/4; }
/* Not: burada eskiden ikinci bir ".auth-page-premium { background:#f9f7f2 }" kuralı
   vardı; aynı özgüllükte sonradan geldiği için üstteki radial-gradient arka planı
   (satır ~3158) eziyordu ve premium gradyan hiç görünmüyordu — kaldırıldı. */
html.panel-theme-dark .auth-page-premium,
html.home-theme-dark .auth-page-premium {
  background:#111111 !important;
  color:#f3f3f3 !important;
}
html.panel-theme-dark .auth-page-premium .auth-card,
html.home-theme-dark .auth-page-premium .auth-card {
  background:#1a1a1a !important;
  border-color:rgba(255, 255, 255, .1) !important;
  box-shadow:0 24px 60px rgba(0, 0, 0, .45) !important;
}
html.panel-theme-dark .auth-page-premium h1,
html.home-theme-dark .auth-page-premium h1 {
  color:#f3f3f3 !important;
}
html.panel-theme-dark .auth-page-premium .muted,
html.home-theme-dark .auth-page-premium .muted {
  color:#a3a3a3 !important;
}
html.panel-theme-dark .auth-page-premium .auth-form input,
html.home-theme-dark .auth-page-premium .auth-form input {
  background:rgba(255, 255, 255, .05) !important;
  border-color:rgba(255, 255, 255, .12) !important;
  color:#f3f3f3 !important;
}
.panel-app-premium { background: #f7f4ee; }
.panel-app-premium .panel-top { padding-bottom: 8px; border-bottom: 1px solid rgba(26,26,26,.06); margin-bottom: 28px; }
@media (max-width: 720px) {
  .home-trust-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; max-width: 100%; }
  .home-phone-light.home-phone-hero,
  .home-phone-premium.home-phone-hero { width: min(340px, calc(100% - 8px)); }
  .home-mockup-stage { margin-top: 8px; }
  .home-hero h1 { font-size: clamp(32px, 9vw, 42px); line-height: 1.1; letter-spacing: 0; }
}
@media (min-width: 1024px) {
  .home-mockup-stage { justify-self: center; padding-right: 0; }
}

/* Hero okunurluk — link rengi çakışmasını engelle */
.landing-page .home-btn-primary,
.landing-page .home-btn-primary:hover,
.landing-page .home-btn-primary:focus,
.landing-page .home-btn-primary span,
.landing-page .home-mockup-cta,
.landing-page .home-mockup-cta:hover {
  color: #fff;
  -webkit-text-fill-color: #fff;
}
.landing-page .home-btn-demo,
.landing-page .home-btn-demo:hover {
  color: #1a1a1a;
  -webkit-text-fill-color: #1a1a1a;
}
.landing-page .home-btn-dark,
.landing-page .home-btn-dark:hover {
  color: #fff;
  -webkit-text-fill-color: #fff;
}

/* ===== Mobile-only menü (referans mobil QR akışı) ===== */
.menu-app-mobile-only {
  background: #ebe8e2;
  overflow-x: clip;
  min-height: 100vh;
}

.menu-mobile-shell {
  width: 100%;
  max-width: 430px;
  min-height: 100vh;
  margin: 0 auto;
  background: #f7f5f1;
  position: relative;
  box-shadow: 0 0 0 1px rgba(26,26,26,.04), 0 24px 80px rgba(0,0,0,.08);
  padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));
  overflow-x: clip;
}

.menu-app-ref {
  background: #ebe8e2;
  padding-bottom: 0;
  overflow-x: clip;
}

.menu-ref-powered-top {
  margin: 0;
  padding: 10px 16px 0;
  text-align: center;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  color: #9a7a3c;
  background: #fff;
}

.menu-ref-hero {
  position: relative;
  padding: 0 0 16px;
  background: #fff;
  border-bottom: 1px solid rgba(26,26,26,.06);
}
.menu-ref-hero-cover {
  height: 100px;
  background: linear-gradient(135deg, #2a2418 0%, #4a3c28 45%, #c59d5f 100%);
}
.menu-ref-hero-inner {
  margin: -32px auto 0;
  padding: 0 16px 4px;
}
.menu-ref-identity {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.menu-ref-logo {
  width: 64px; height: 64px; flex-shrink: 0;
  border-radius: 16px;
  display: grid; place-items: center;
  background: linear-gradient(135deg, #7a5f1a, #c59d5f);
  color: #fff; font-weight: 800; font-size: 20px;
  border: 3px solid #fff;
  box-shadow: 0 10px 28px rgba(0,0,0,.1);
}
.menu-ref-title-block h1 {
  margin: 6px 0 4px; font-size: 22px; line-height: 1.15;
}
.menu-ref-rating { margin: 0; font-size: 13px; color: #666; }
.menu-ref-stars { color: #c59d5f; font-weight: 700; }
.menu-ref-tagline { margin: 6px 0 0; color: #555; font-size: 13px; line-height: 1.45; }
.menu-ref-badges {
  display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 10px;
}
.menu-ref-badge {
  padding: 6px 12px; border-radius: 999px; font-size: 12px; font-weight: 600;
  background: #f4f2ee; color: #444; border: 1px solid rgba(26,26,26,.08);
}
.menu-ref-badge-table { background: rgba(197,157,95,.14); color: #7a5f1a; border-color: rgba(197,157,95,.25); }
.menu-ref-actions {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px;
}
.menu-ref-action {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 10px 12px; border-radius: 12px;
  border: 1px solid rgba(26,26,26,.1); background: #fff;
  color: #1a1a1a; font: inherit; font-size: 13px; font-weight: 600;
  cursor: pointer;
}
.menu-ref-action-wa { background: rgba(37,211,102,.1); border-color: rgba(37,211,102,.25); color: #128c4b; }

.menu-ref-main {
  min-width: 0;
  padding: 0 16px;
}

.menu-ref-search-wrap {
  margin: 12px 0 8px;
}
.menu-ref-search {
  width: 100%;
  padding: 12px 14px 12px 40px;
  border-radius: 14px;
  border: 1px solid rgba(26,26,26,.1);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23999' stroke-width='2'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='M13 13l3 3'/%3E%3C/svg%3E") 14px center no-repeat;
  font: inherit;
  font-size: 14px;
  color: #1a1a1a;
  box-sizing: border-box;
}
.menu-ref-search::placeholder { color: #aaa; }
.menu-ref-search:focus {
  outline: none;
  border-color: rgba(197,157,95,.5);
  box-shadow: 0 0 0 3px rgba(197,157,95,.12);
}
.menu-ref-search-empty {
  margin: 0 0 10px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(26,26,26,.04);
  color: #666;
  font-size: 13px;
  text-align: center;
}

.menu-ref-category-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 16px;
}
.menu-ref-cat-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(26,26,26,.08);
  background: #fff;
  text-align: left;
  cursor: pointer;
  font: inherit;
  box-shadow: 0 6px 18px rgba(0,0,0,.04);
  transition: border-color .15s, box-shadow .15s;
}
.menu-ref-cat-card.active {
  border-color: rgba(197,157,95,.45);
  box-shadow: 0 8px 22px rgba(197,157,95,.15);
}
.menu-ref-cat-icon {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 12px;
}
.menu-ref-cat-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.menu-ref-cat-meta strong {
  font-size: 13px;
  font-weight: 700;
  color: #1a1a1a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.menu-ref-cat-meta span {
  font-size: 11px;
  color: #888;
  font-weight: 600;
}
.menu-ref-categories-hidden { display: none !important; }

.menu-ref-categories {
  max-width: none; margin: 0 -16px 12px; padding: 8px 16px;
  scrollbar-width: none;
}
.menu-ref-categories-sticky {
  position: sticky; top: 0; z-index: 30;
  background: rgba(247,245,241,.94);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(26,26,26,.05);
}
.menu-ref-categories::-webkit-scrollbar { display: none; }
.menu-app-ref .category-tab {
  padding: 10px 16px; font-size: 13px;
  border-radius: 999px; white-space: nowrap;
}
.menu-app-ref .category-tab.active {
  background: #1a1a1a; border-color: #1a1a1a; color: #fff;
}

.menu-ref-items.menu-items {
  max-width: none;
  padding: 0 0 20px;
  gap: 14px;
  display: grid;
  grid-template-columns: 1fr;
}
.menu-ref-product-card .menu-item-media { cursor: pointer; }
.menu-ref-card-actions {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; margin-top: 10px;
}
.menu-ref-qty-inline button {
  width: 34px; height: 34px; border-radius: 10px;
  background: #fff; border: 1px solid rgba(26,26,26,.12); color: #1a1a1a;
}
.menu-ref-add-btn {
  flex: 1; min-width: 0;
  background: linear-gradient(135deg, #7a5f1a, #c59d5f) !important;
  color: #fff !important; border: none;
  padding: 10px 14px; font-weight: 700;
}
.menu-ref-allergen-chip {
  margin: 8px 0 0; padding: 0; border: none; background: none;
  color: #9a7a3c; font-size: 12px; font-weight: 600; cursor: pointer; text-decoration: underline;
}

.menu-ref-orders {
  display: block;
  margin: 8px 0 24px;
}
.menu-ref-orders-inner {
  background: #fff; border: 1px solid rgba(26,26,26,.08);
  border-radius: 20px; padding: 16px;
  box-shadow: 0 10px 32px rgba(0,0,0,.05);
}
.menu-ref-orders-head {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 8px;
}
.menu-ref-orders-head h2 { margin: 0; font-size: 18px; }
.menu-ref-orders-intro {
  margin: 0 0 14px; font-size: 13px; color: #666; line-height: 1.5;
}
.menu-ref-orders-empty {
  text-align: center; padding: 20px 8px; color: #666;
}
.menu-ref-empty-icon { font-size: 28px; margin-bottom: 8px; }
.menu-ref-orders-empty p { margin: 0 0 6px; font-weight: 600; color: #1a1a1a; }
.menu-ref-cart-lines { margin-bottom: 12px; }
.menu-ref-cart-line {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 6px 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(26,26,26,.06);
}
.menu-ref-cart-line:last-child { border-bottom: none; }
.menu-ref-cart-line-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.menu-ref-cart-line-main strong {
  font-size: 14px;
  font-weight: 700;
  color: #1a1a1a;
}
.menu-ref-cart-line-unit {
  font-size: 12px;
  color: #888;
}
.menu-ref-cart-line-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}
.menu-ref-cart-line-total {
  grid-column: 1 / -1;
  text-align: right;
  font-size: 14px;
  font-weight: 700;
  color: #c59d5f;
}
.menu-ref-cart-remove {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  border: 1px solid rgba(26,26,26,.1);
  background: #fff;
  color: #888;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}
.menu-ref-cart-discount-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px dashed rgba(4,120,87,.3);
  font-size: 13px;
  font-weight: 700;
  color: #047857;
}
.menu-ref-cart-discount-line strong { color: #047857; }
.menu-app-dark .menu-ref-cart-discount-line { color: #34d399; border-top-color: rgba(52,211,153,.3); }
.menu-app-dark .menu-ref-cart-discount-line strong { color: #34d399; }
.menu-ref-orders-actions { margin: 12px 0; }
.menu-ref-order-form .cart-field { margin-bottom: 10px; }
.menu-ref-order-total {
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 0 12px; font-size: 16px; font-weight: 700;
}
.menu-ref-order-msg { text-align: center; margin-top: 10px; font-size: 13px; }
.menu-order-table-hint {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 12px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(124, 92, 255, 0.1);
  border: 1px solid rgba(124, 92, 255, 0.22);
  font-size: 14px;
}
.menu-order-table-label {
  color: var(--dm-muted, #9a9a9a);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.menu-order-table-hint strong {
  font-weight: 700;
  color: var(--dm-text, #f2f2f2);
}

.menu-loyalty-toggle-wrap { margin-bottom: 10px; }
.menu-loyalty-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(216, 169, 67, 0.1);
  border: 1px solid rgba(216, 169, 67, 0.28);
  color: var(--dm-accent, #d8a943);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}
.menu-loyalty-toggle-icon { font-size: 15px; line-height: 1; }
.menu-loyalty-toggle span:nth-child(2) { flex: 1; text-align: left; }
.menu-loyalty-toggle-chevron {
  font-size: 12px;
  transition: transform .2s ease;
}
.menu-loyalty-toggle[aria-expanded="true"] .menu-loyalty-toggle-chevron {
  transform: rotate(180deg);
}
.menu-loyalty-fields-panel {
  margin-top: 10px;
  padding: 12px 14px 2px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}
.menu-loyalty-fields-hint {
  margin: 0 0 12px;
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--dm-muted, #9fb1a7);
}

.menu-ref-section-title {
  margin: 0 0 12px; font-size: 17px; font-weight: 800;
}
.menu-ref-info { margin: 0 0 24px; }
.menu-ref-info-stack { display: grid; gap: 10px; }
.menu-ref-info-card {
  background: #fff; border: 1px solid rgba(26,26,26,.07);
  border-radius: 16px; padding: 14px 16px;
  box-shadow: 0 6px 20px rgba(0,0,0,.04);
}
.menu-ref-info-card h3 { margin: 0 0 6px; font-size: 14px; font-weight: 700; }
.menu-ref-info-card p { margin: 0; color: #555; font-size: 13px; line-height: 1.55; }
.menu-ref-link-btn, .menu-ref-text-btn {
  margin-top: 8px; padding: 0; border: none; background: none;
  color: #9a7a3c; font: inherit; font-size: 13px; font-weight: 600;
  cursor: pointer; text-decoration: underline;
}
.menu-ref-wifi-row { display: flex; justify-content: space-between; gap: 8px; align-items: center; }

.menu-ref-review { margin-bottom: 20px; }
.menu-ref-review-card {
  background: #fff; border: 1px solid rgba(26,26,26,.07);
  border-radius: 18px; padding: 16px;
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
}
.menu-ref-review-lead { margin: 0 0 12px; color: #555; font-size: 13px; }
.menu-ref-stars-rating {
  display: flex;
  justify-content: center;
  gap: 6px;
}
.menu-ref-star {
  padding: 4px 6px;
  border: none;
  background: none;
  font-size: 32px;
  line-height: 1;
  color: #ddd;
  cursor: pointer;
  transition: color .12s, transform .12s;
}
.menu-ref-star:hover,
.menu-ref-star.selected {
  color: #c59d5f;
  transform: scale(1.05);
}
.menu-ref-review-btns { display: flex; gap: 8px; }
.menu-ref-review-btn {
  flex: 1; padding: 12px 10px;
  border-radius: 14px; border: 1px solid rgba(26,26,26,.1);
  background: #faf8f4; font: inherit; font-size: 13px; font-weight: 600;
  cursor: pointer;
}
.menu-ref-review-feedback {
  margin: 12px 0 0; padding: 10px 12px; border-radius: 12px;
  background: rgba(197,157,95,.12); color: #7a5f1a; font-size: 13px; line-height: 1.45;
  word-break: break-word;
  max-width: 100%;
}

.menu-ref-footer {
  text-align: center; padding: 8px 0 20px;
  font-size: 12px; color: #999;
}
.menu-ref-footer strong { color: #7a5f1a; font-weight: 700; }

.menu-ref-bottom-nav {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 100%;
  max-width: 430px;
  z-index: 80;
  display: flex;
  justify-content: space-around;
  align-items: stretch;
  padding: 8px 10px calc(8px + env(safe-area-inset-bottom, 0px));
  background: rgba(255,255,255,.97);
  border-top: 1px solid rgba(26,26,26,.08);
  backdrop-filter: blur(12px);
  box-shadow: 0 -8px 28px rgba(0,0,0,.06);
}
.menu-ref-nav-item {
  flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px;
  padding: 6px 4px; border: none; background: none;
  color: #888; font: inherit; font-size: 11px; font-weight: 600;
  cursor: pointer; position: relative;
}
.menu-ref-nav-item.active { color: #1a1a1a; }
.menu-ref-nav-icon { font-size: 18px; line-height: 1; }
.menu-ref-nav-badge {
  position: absolute; top: 2px; right: calc(50% - 22px);
  min-width: 18px; height: 18px; padding: 0 5px;
  border-radius: 999px; background: #c59d5f; color: #fff;
  font-size: 10px; font-weight: 800; display: grid; place-items: center;
}

.menu-app-mobile-only .menu-ref-cart-bar.cart-bar {
  left: 50%;
  transform: translateX(-50%);
  right: auto;
  width: min(398px, calc(100% - 32px));
  bottom: calc(var(--mobile-nav-height) + 8px + env(safe-area-inset-bottom, 0px));
  background: #fff;
  border: 1px solid rgba(26,26,26,.1);
  color: #1a1a1a;
  box-shadow: 0 16px 40px rgba(0,0,0,.12);
  z-index: 290;
}

.menu-ref-modal {
  position: fixed; inset: 0; z-index: 120;
  display: flex; align-items: flex-end; justify-content: center;
}
.menu-ref-modal[hidden] { display: none !important; }
.menu-ref-modal-backdrop {
  position: absolute; inset: 0; background: rgba(20,20,20,.45);
}
.menu-ref-modal-card {
  position: relative; z-index: 1;
  width: min(430px, 100%);
  max-height: 92dvh; overflow: auto;
  background: #fff; border-radius: 24px 24px 0 0;
  padding: 0 0 calc(20px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -20px 60px rgba(0,0,0,.18);
}
.menu-ref-modal-close {
  position: absolute; top: 12px; right: 12px; z-index: 2;
  width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid rgba(26,26,26,.1); background: #fff;
  font-size: 22px; line-height: 1; cursor: pointer;
}
#item-modal-media img,
.menu-ref-modal-img {
  width: 100%; aspect-ratio: 4/3; object-fit: cover;
  display: block; border-radius: 24px 24px 0 0;
}
.menu-ref-modal-body { padding: 16px 18px 8px; }
.menu-ref-modal-body h2 { margin: 0 0 6px; font-size: 20px; }
.menu-ref-modal-price { margin: 0 0 10px; font-size: 18px; font-weight: 800; color: #c59d5f; }
.menu-ref-modal-desc { margin: 0 0 14px; color: #555; font-size: 14px; line-height: 1.55; }
.menu-ref-detail-block { margin-bottom: 12px; }
.menu-ref-detail-block h3 { margin: 0 0 6px; font-size: 13px; font-weight: 700; }
.menu-ref-detail-block p { margin: 0; font-size: 13px; color: #666; line-height: 1.5; }
.menu-ref-allergen-box {
  margin: 14px 0; padding: 12px 14px; border-radius: 14px;
  background: #fff8e8; border: 1px solid rgba(197,157,95,.25);
}
.menu-ref-allergen-box h3 { margin: 0 0 6px; font-size: 13px; }
.menu-ref-allergen-note { margin-top: 8px !important; font-size: 11px !important; color: #888 !important; }
.menu-ref-modal-actions { margin-top: 14px; }
.menu-ref-modal-qty {
  display: flex; justify-content: center; gap: 12px; margin-bottom: 12px;
}
.menu-ref-modal-qty button {
  width: 40px; height: 40px; border-radius: 12px;
  border: 1px solid rgba(26,26,26,.12); background: #fff; font-size: 18px; cursor: pointer;
}
.menu-ref-waiter-card { padding: 22px 18px calc(18px + env(safe-area-inset-bottom, 0px)); }
.menu-ref-waiter-card h2 { margin: 0 0 8px; font-size: 20px; }
.menu-ref-waiter-actions { display: grid; gap: 8px; margin-top: 8px; }

.menu-app-mobile-only .order-success {
  align-items: center;
  padding: 16px;
}
.menu-app-mobile-only .order-success-card {
  width: min(430px, 100%);
}

.menu-ref-toast {
  position: fixed; left: 50%;
  /* Altta değil, üstte (header'ın hemen altında) belirir — böylece alt kısımdaki
     "Siparişi Tamamla" mini popup'ıyla (bkz. .menu-sheet-product-summary-popup)
     asla çakışmaz. Gösterilirken yukarıdan kayarak belirir, kaybolurken kayarak gider. */
  top: calc(14px + env(safe-area-inset-top, 0px));
  transform: translateX(-50%) translateY(-14px);
  opacity: 0;
  z-index: 300;
  max-width: min(398px, calc(100% - 32px));
  padding: 12px 16px; border-radius: 14px;
  background: rgba(26,26,26,.92); color: #fff;
  font-size: 13px; font-weight: 600; text-align: center;
  box-shadow: 0 12px 32px rgba(0,0,0,.28);
  transition: opacity .25s ease, transform .25s cubic-bezier(0.32, 0.72, 0, 1);
  pointer-events: none;
}
.menu-ref-toast.is-visible {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
}
.menu-ref-toast[hidden] { display: none !important; }

.menu-ref-loading { padding: 32px 16px; text-align: center; }

/* Eski desktop layout kurallarını devre dışı bırak */
.menu-app-mobile-only .menu-ref-layout { display: block; max-width: none; padding: 0; }
@media (min-width: 768px) {
  .menu-app-mobile-only .menu-ref-items.menu-items,
  .menu-app-premium .menu-items { grid-template-columns: 1fr !important; }
}

@media (min-width: 768px) {
  .menu-app-mobile-only .menu-ref-items.menu-items,
  .menu-app-premium .menu-items { grid-template-columns: 1fr !important; }
}

/* ===== Dark mobile QR menü (referans koyu tema) ===== */
.menu-app-dark {
  --dm-bg: #06130f;
  --dm-shell: #071710;
  --dm-card: #10251b;
  --dm-card-hover: #173525;
  --dm-search: #1f5b42;
  --dm-text: #f4f7f2;
  --dm-muted: #9fb1a7;
  --dm-accent: #d8a943;
  --dm-border: rgba(255,255,255,.08);
  --dm-btn-from: #1f5b42;
  --dm-btn-to: #2a7a58;
  --dm-nav-from: #1f5b42;
  --dm-nav-to: #d8a943;
  --dm-hero-glow: rgba(31,91,66,.45);
  --dm-hero-top: #0c2419;
  --dm-sheet-top: #142a20;
  --dm-sheet-mid: #10251b;
  --dm-sheet-bottom: #0d1f17;
  --mobile-nav-height: 71px;
  background: var(--dm-bg);
  color: var(--dm-text);
}
.menu-app-dark .menu-mobile-shell {
  padding-bottom: calc(var(--mobile-nav-height) + env(safe-area-inset-bottom, 0px));
}
.menu-app-dark .menu-mobile-shell {
  background: var(--dm-shell);
  box-shadow: 0 0 0 1px rgba(255,255,255,.04), 0 24px 80px rgba(0,0,0,.45);
}
.menu-app-dark .muted { color: var(--dm-muted); }

.menu-dark-topbar {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 14px 10px;
  background: linear-gradient(180deg, #0a1f17 0%, var(--dm-shell) 100%);
  border-bottom: 1px solid var(--dm-border);
  position: sticky;
  top: 0;
  z-index: 40;
}
.menu-dark-brand {
  margin: 0;
  text-align: center;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  color: var(--dm-text);
}

.menu-dark-main { padding: 0 14px; }
.menu-dark-search-wrap { margin: 14px 0 12px; }
.menu-dark-search {
  width: 100%;
  padding: 14px 48px 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.06);
  background: var(--dm-search) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23c8e6d8' stroke-width='2'%3E%3Ccircle cx='9' cy='9' r='6'/%3E%3Cpath d='M14 14l4 4'/%3E%3C/svg%3E") calc(100% - 14px) center no-repeat;
  color: var(--dm-text);
  font: inherit; font-size: 15px;
  box-sizing: border-box;
}
.menu-dark-search::placeholder { color: rgba(244,247,242,.55); }
.menu-dark-search:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(31,91,66,.35);
}
.menu-dark-search-empty {
  background: var(--dm-card);
  color: var(--dm-muted);
  border: 1px solid var(--dm-border);
}

.menu-dark-category-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 20px;
}
.menu-dark-cat-card {
  display: flex; flex-direction: column;
  padding: 0; border: none; text-align: left;
  border-radius: 20px;
  background: var(--dm-card);
  overflow: hidden;
  cursor: pointer;
  font: inherit;
  box-shadow: 0 12px 32px rgba(0,0,0,.28);
  transition: transform .15s, background .15s, box-shadow .15s;
}
.menu-dark-cat-card:hover,
.menu-dark-cat-card.active {
  background: var(--dm-card-hover);
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
}
.menu-dark-cat-visual {
  width: 100%; aspect-ratio: 4/3;
  position: relative; overflow: hidden;
}
.menu-dark-cat-foot {
  display: flex; align-items: center; justify-content: space-between;
  gap: 8px; padding: 12px 12px 14px;
}
.menu-dark-cat-meta strong {
  display: block; font-size: 14px; font-weight: 800; color: var(--dm-text);
}
.menu-dark-cat-meta span {
  font-size: 11px; font-weight: 600; color: var(--dm-muted);
}
.menu-dark-cat-arrow {
  width: 32px; height: 32px; flex-shrink: 0;
  display: grid; place-items: center;
  border-radius: 50%;
  background: rgba(216,169,67,.15);
  color: var(--dm-accent);
  font-size: 16px; font-weight: 700;
}

/* Kategori fotoğraf kompozisyonları */
.cat-photo-burger {
  background:
    radial-gradient(ellipse 70% 50% at 50% 72%, #6b3a1f 0%, transparent 70%),
    radial-gradient(circle at 50% 38%, #c47a3a 0%, #8b4e22 38%, #3d2414 72%),
    linear-gradient(180deg, #1a1208 0%, #0d1a12 100%);
}
.cat-photo-burger::before {
  content: ''; position: absolute; left: 18%; right: 18%; top: 28%; height: 34%;
  border-radius: 50% 50% 42% 42%;
  background: linear-gradient(180deg, #e8c878 0%, #c9923e 45%, #8b5a22 100%);
  box-shadow: 0 8px 20px rgba(0,0,0,.4);
}
.cat-photo-burger::after {
  content: ''; position: absolute; left: 14%; right: 14%; top: 52%; height: 18%;
  border-radius: 0 0 40% 40%;
  background: linear-gradient(180deg, #5c3018, #3a1e10);
}

.cat-photo-pizza {
  background:
    radial-gradient(circle at 50% 48%, #c45a28 0%, #8b3a18 42%, #3a1808 78%),
    linear-gradient(180deg, #1a1008 0%, #0d1a12 100%);
}
.cat-photo-pizza::before {
  content: ''; position: absolute; inset: 18% 20%;
  border-radius: 50%;
  background:
    radial-gradient(circle at 30% 35%, #fff 0 3%, transparent 4%),
    radial-gradient(circle at 62% 28%, #fff 0 2.5%, transparent 3.5%),
    radial-gradient(circle at 48% 58%, #fff 0 2%, transparent 3%),
    radial-gradient(circle at 70% 62%, #fff 0 2.5%, transparent 3.5%),
    linear-gradient(180deg, #e8a040 0%, #c06828 55%, #8b4018 100%);
  box-shadow: inset 0 -8px 16px rgba(0,0,0,.25);
}

.cat-photo-starter {
  background:
    radial-gradient(ellipse 80% 60% at 50% 70%, #4a3018 0%, transparent 65%),
    linear-gradient(180deg, #1a1408 0%, #0d1a12 100%);
}
.cat-photo-starter::before {
  content: ''; position: absolute; left: 22%; right: 22%; top: 32%; height: 38%;
  border-radius: 18px 18px 28px 28px;
  background: linear-gradient(180deg, #e8c060 0%, #c89838 50%, #8b6820 100%);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.cat-photo-starter::after {
  content: ''; position: absolute; left: 30%; right: 30%; top: 22%; height: 16%;
  border-radius: 50%;
  background: radial-gradient(circle, #d87840 0%, #a84828 100%);
}

.cat-photo-dessert {
  background:
    radial-gradient(ellipse 70% 55% at 50% 68%, #4a2848 0%, transparent 70%),
    linear-gradient(180deg, #1a0e18 0%, #0d1a12 100%);
}
.cat-photo-dessert::before {
  content: ''; position: absolute; left: 20%; right: 20%; top: 30%; height: 42%;
  border-radius: 8px 8px 50% 50%;
  background: linear-gradient(180deg, #f0d8c0 0%, #d8a888 35%, #a86848 100%);
  transform: rotate(-8deg);
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
}
.cat-photo-dessert::after {
  content: ''; position: absolute; left: 38%; right: 38%; top: 24%; height: 12%;
  border-radius: 50%;
  background: radial-gradient(circle, #e84060 0%, #a82040 100%);
}

.cat-photo-drink {
  background:
    radial-gradient(ellipse 60% 50% at 50% 75%, #1a4a38 0%, transparent 70%),
    linear-gradient(180deg, #0a1814 0%, #0d1a12 100%);
}
.cat-photo-drink::before {
  content: ''; position: absolute; left: 34%; right: 34%; top: 18%; bottom: 22%;
  border-radius: 8px 8px 14px 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.04) 30%, rgba(80,180,140,.35) 100%);
  border: 2px solid rgba(255,255,255,.15);
  box-shadow: inset 0 -20px 30px rgba(40,120,90,.3);
}
.cat-photo-drink::after {
  content: ''; position: absolute; left: 42%; right: 42%; top: 10%; height: 14%;
  border-radius: 4px;
  background: linear-gradient(180deg, #c8e8d8, #88b8a0);
}

.menu-app-dark .menu-dark-items.menu-items { gap: 12px; padding-bottom: 20px; }
.menu-app-dark .menu-ref-product-card {
  background: var(--dm-card);
  border: 1px solid var(--dm-border);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
}
.menu-app-dark .menu-ref-product-card .menu-item-body { padding: 12px 14px 14px; }
.menu-app-dark .menu-ref-product-card h3 { color: var(--dm-text); }
.menu-app-dark .menu-item-desc,
.menu-app-dark .menu-item-meta { color: var(--dm-muted); }
.menu-app-dark .menu-item-price { color: var(--dm-accent); }
.menu-app-dark .menu-ref-qty-inline button {
  background: var(--dm-shell);
  border-color: var(--dm-border);
  color: var(--dm-text);
}
.menu-app-dark .menu-ref-add-btn,
.menu-app-dark .menu-dark-primary-btn {
  background: linear-gradient(135deg, var(--dm-btn-from), var(--dm-btn-to)) !important;
  color: #fff !important;
  border: none !important;
}
.menu-app-dark .menu-ref-allergen-chip { color: var(--dm-accent); }

/* Kategori detay ekranı + üst sekmeler */
.menu-cat-detail-view {
  padding-top: 4px;
}
.menu-cat-detail-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  position: sticky;
  /* Üstteki müşteri header'ı (#menu-customer-header) da sticky top:0 ve daha
     yüksek z-index'te — bu bar onun ALTINA sabitlenir (bkz. initCategoryTabsStickyOffset). */
  top: var(--menu-cat-toolbar-top, 0px);
  z-index: 24;
  background: linear-gradient(180deg, var(--dm-bg) 92%, rgba(6,19,15,0));
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 10px 0 12px;
  margin-bottom: 4px;
  border-bottom: 1px solid rgba(255,255,255,.05);
  box-shadow: 0 8px 16px -8px rgba(0,0,0,.22);
}
.menu-cat-back-btn {
  flex-shrink: 0;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.06);
  color: var(--dm-text);
  font-size: 13px;
  font-weight: 600;
  padding: 8px 13px;
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
  transition: background .15s, transform .15s;
}
.menu-cat-back-btn:active { transform: scale(.96); }
.menu-cat-tabs-scroll {
  flex: 1;
  min-width: 0;
  display: flex;
  gap: 9px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  padding: 3px 2px 3px 0;
}
.menu-cat-tabs-scroll::-webkit-scrollbar { display: none; }
.menu-cat-tab {
  flex-shrink: 0;
  scroll-snap-align: start;
  border: 1px solid var(--dm-border);
  background: rgba(255,255,255,.045);
  color: var(--dm-muted);
  font-size: 13px;
  font-weight: 600;
  padding: 9px 16px;
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0,0,0,.14);
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .15s ease, box-shadow .18s ease;
}
.menu-cat-tab:active { transform: scale(.96); }
.menu-cat-tab.active {
  background: linear-gradient(135deg, var(--dm-btn-from), var(--dm-btn-to));
  border-color: transparent;
  color: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}
.menu-cat-detail-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 14px;
}
.menu-cat-detail-title {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  color: var(--dm-text);
  letter-spacing: -.02em;
}
.menu-cat-detail-count {
  font-size: 13px;
  font-weight: 600;
  color: var(--dm-muted);
  white-space: nowrap;
}
.menu-cat-product-grid.menu-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding-bottom: calc(var(--mobile-nav-height) + 16px);
}
.menu-grid-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--dm-card);
  border: 1px solid var(--dm-border);
  border-radius: 20px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
  text-align: left;
  transition: transform .15s ease, box-shadow .15s ease;
}
.menu-grid-product-card:active { transform: scale(.985); }
.menu-grid-product-card.is-soldout { opacity: .72; }
.menu-grid-product-card.is-soldout .menu-grid-product-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.45);
  pointer-events: none;
}
.menu-grid-product-media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #0a1814;
}
.menu-grid-product-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.menu-grid-product-illus {
  width: 100%;
  height: 100%;
  border-radius: 0;
}
.menu-app-dark .menu-grid-product-illus {
  min-height: 0;
}
.menu-grid-product-body {
  position: relative;
  padding: 10px 12px 12px;
  min-height: 88px;
}
.menu-grid-product-body h3 {
  margin: 0 0 4px;
  font-size: 14px;
  font-weight: 700;
  color: var(--dm-text);
  line-height: 1.25;
}
.menu-grid-product-desc {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.35;
  color: var(--dm-muted);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.menu-grid-product-price {
  position: absolute;
  right: 12px;
  bottom: 12px;
  font-size: 13px;
  font-weight: 800;
  color: var(--dm-accent);
}
.menu-grid-soldout-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  background: rgba(0,0,0,.65);
  color: #fff;
  border: 1px solid rgba(255,255,255,.15);
}

.menu-dark-card {
  background: var(--dm-card) !important;
  border: 1px solid var(--dm-border) !important;
  color: var(--dm-text);
  box-shadow: 0 10px 28px rgba(0,0,0,.2) !important;
}
.menu-dark-card h3 { color: var(--dm-text); }
.menu-dark-card p { color: var(--dm-muted); }
.menu-dark-section-title { color: var(--dm-text); }
.menu-dark-link-btn { color: var(--dm-accent) !important; }
.menu-dark-outline-btn {
  border-color: var(--dm-border) !important;
  color: var(--dm-text) !important;
  background: transparent !important;
}
.menu-dark-ghost-btn {
  background: transparent !important;
  border: 1px solid var(--dm-border) !important;
  color: var(--dm-text) !important;
}
.menu-dark-field input,
.menu-dark-field select,
.menu-dark-field textarea {
  background: var(--dm-shell) !important;
  border: 1px solid var(--dm-border) !important;
  color: var(--dm-text) !important;
  border-radius: 12px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.menu-dark-field input::placeholder,
.menu-dark-field textarea::placeholder { color: var(--dm-muted) !important; opacity: 1; }
.menu-dark-field input:focus,
.menu-dark-field select:focus,
.menu-dark-field textarea:focus {
  outline: none;
  border-color: rgba(216, 169, 67, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(216, 169, 67, 0.14);
}
.menu-dark-field select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d8a943' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 15px !important;
  padding-right: 36px;
}
.menu-dark-field span { color: var(--dm-muted); }
.menu-dark-order-total { color: var(--dm-text); }
.menu-dark-order-total strong { color: var(--dm-accent); }
.menu-app-dark .menu-ref-orders-empty p { color: var(--dm-text); }
.menu-app-dark .menu-ref-cart-line-main strong { color: var(--dm-text); }
.menu-app-dark .menu-ref-cart-line-total { color: var(--dm-accent); }
.menu-app-dark .menu-ref-cart-remove {
  background: var(--dm-shell);
  border-color: var(--dm-border);
  color: var(--dm-muted);
}

.menu-dark-profile-card { margin-bottom: 12px; }
.menu-dark-profile-head {
  display: flex; gap: 12px; align-items: flex-start;
  margin-bottom: 12px;
}
.menu-dark-profile-logo {
  width: 52px; height: 52px; flex-shrink: 0;
  border-radius: 14px;
  display: grid; place-items: center;
  background: linear-gradient(135deg, var(--dm-nav-from), var(--dm-nav-to));
  color: #fff; font-weight: 800; font-size: 16px;
}
.menu-dark-profile-head h3 { margin: 0 0 4px; font-size: 16px; }
.menu-dark-profile-rating { margin: 0; font-size: 12px; color: var(--dm-muted); }
.menu-dark-profile-rating span { color: var(--dm-accent); font-weight: 700; }
.menu-dark-profile-tagline { margin: 4px 0 0; font-size: 12px; color: var(--dm-muted); }
.menu-dark-profile-badges {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px;
}
.menu-dark-profile-badges span {
  padding: 6px 10px; border-radius: 999px;
  font-size: 11px; font-weight: 600;
  background: rgba(255,255,255,.05);
  border: 1px solid var(--dm-border);
  color: var(--dm-muted);
}
.menu-dark-badge-table { color: var(--dm-accent) !important; border-color: rgba(216,169,67,.25) !important; }
.menu-dark-profile-actions {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px;
}
.menu-dark-action-btn {
  padding: 10px; border-radius: 12px;
  border: 1px solid var(--dm-border);
  background: var(--dm-shell);
  color: var(--dm-text);
  font: inherit; font-size: 12px; font-weight: 600;
  cursor: pointer;
}
.menu-dark-action-wa { color: #5fe89a; border-color: rgba(95,232,154,.2); }

.menu-app-dark .menu-ref-star { color: rgba(255,255,255,.15); }
.menu-app-dark .menu-ref-star.selected,
.menu-app-dark .menu-ref-star:hover { color: var(--dm-accent); }

/* Yıldız puanlama — kırmızıdan yeşile kademeli renk, seçilene kadar içi boş (outline), tüm temalarda */
.menu-ref-star:nth-child(1) { --star-color: #ef4444; }
.menu-ref-star:nth-child(2) { --star-color: #f97316; }
.menu-ref-star:nth-child(3) { --star-color: #eab308; }
.menu-ref-star:nth-child(4) { --star-color: #84cc16; }
.menu-ref-star:nth-child(5) { --star-color: #22c55e; }
.menu-ref-star {
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 1.5px var(--star-color) !important;
  opacity: 1 !important;
  transition: color .15s, -webkit-text-stroke-color .15s, transform .12s, filter .15s;
}
.menu-ref-star.selected,
.menu-ref-star:hover {
  color: var(--star-color) !important;
  -webkit-text-fill-color: var(--star-color);
  -webkit-text-stroke: 0 !important;
  transform: scale(1.1);
  filter: drop-shadow(0 2px 6px currentColor);
}
.menu-dark-review-feedback {
  background: rgba(216,169,67,.12) !important;
  color: var(--dm-accent) !important;
}
.menu-dark-footer { color: var(--dm-muted); }
.menu-dark-footer strong { color: var(--dm-accent); }
.menu-footer-brand-link { text-decoration: none; }
.menu-footer-brand-link:hover strong { text-decoration: underline; }

/* ===== Bilgi sheet — premium mekân kartı ===== */
@keyframes menuInfoFadeUp {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes menuInfoShimmer {
  0% { background-position: 160% 0; }
  100% { background-position: -60% 0; }
}
@keyframes menuInfoFloat {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-3px) rotate(-4deg); }
}
.menu-info-body {
  position: relative;
  padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px)) !important;
  padding-top: 2px !important;
  overflow-x: hidden;
}
.menu-sheet.menu-sheet-info {
  background: linear-gradient(180deg, var(--dm-sheet-top) 0%, var(--dm-sheet-mid) 100px, var(--dm-sheet-bottom) 100%);
}
.menu-info-ambient,
.menu-info-cover-band { display: none !important; }

.menu-info-intro {
  position: relative;
  z-index: 1;
  margin: 0 0 22px;
  padding: 4px 2px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  animation: menuInfoFadeUp 0.35s ease both;
  text-align: center;
}
.menu-info-intro-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.menu-info-intro-logo {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  padding: 2px;
  background: linear-gradient(145deg, #e8c874, #b8873a);
  box-shadow: 0 8px 20px rgba(216, 169, 67, 0.35), 0 0 0 1px rgba(216, 169, 67, 0.2);
  animation: menuInfoFloat 4s ease-in-out infinite;
}
.menu-info-intro-logo img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #0c1e15;
  display: block;
}
.menu-info-intro-logo-placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: #0c1e15;
  border: 2px solid #0c1e15;
  color: #f4e6c8;
  font-size: 22px;
  font-weight: 800;
}
.menu-info-intro-title {
  margin: 0;
  font-size: 21px;
  font-weight: 650;
  letter-spacing: -0.02em;
  line-height: 1.15;
  background: linear-gradient(135deg, #f4e6c8 20%, #d8a943 60%, #f4e6c8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.menu-info-intro-sub { display: none; }
.menu-info-intro-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px 8px;
  margin-top: 10px;
}
.menu-info-meta-sep {
  color: rgba(159, 177, 167, 0.45);
  font-size: 12px;
  line-height: 1;
}
.menu-info-chip {
  display: inline-flex;
  align-items: center;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  color: #9fb1a7;
}
.menu-info-chip[hidden] { display: none !important; }
.menu-info-chip--status.is-open {
  color: #86efac;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.menu-info-chip--status.is-closed {
  color: #fca5a5;
  font-weight: 600;
}
.menu-info-chip--hours { color: #c5d4cb; }
.menu-info-chip--table {
  margin-left: 4px;
  padding: 3px 8px;
  border-radius: 6px;
  color: #d8e0db;
  background: rgba(255, 255, 255, 0.06);
  font-size: 11px;
  font-weight: 600;
}

/* menu-info-lang dropdown — premium dark trigger + inline open panel */
.menu-sheet.menu-sheet-info .menu-info-lang {
  position: relative;
  z-index: 8;
  margin: 0 0 20px;
  padding: 0 0 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.menu-sheet.menu-sheet-info .menu-info-lang-switch {
  position: relative;
  display: block;
  width: 100%;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger {
  all: unset;
  box-sizing: border-box;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 12px 14px 12px 12px;
  border-radius: 16px !important;
  border: 1px solid rgba(216, 169, 67, 0.28) !important;
  background:
    linear-gradient(135deg, rgba(216, 169, 67, 0.16) 0%, rgba(12, 32, 22, 0.92) 48%, rgba(8, 24, 16, 0.96) 100%) !important;
  color: #f4f7f2 !important;
  cursor: pointer;
  font: inherit;
  text-align: left;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 10px 28px rgba(0, 0, 0, 0.22) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.15s ease;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger:hover {
  border-color: rgba(216, 169, 67, 0.48) !important;
  transform: translateY(-1px);
}
.menu-sheet.menu-sheet-info .menu-info-lang-switch.is-open .menu-info-lang-trigger {
  border-color: rgba(216, 169, 67, 0.55) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 0 0 1px rgba(216, 169, 67, 0.18),
    0 12px 32px rgba(0, 0, 0, 0.28) !important;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger-flag {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 18px;
  line-height: 1;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger-copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger-kicker {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #b7a06a;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger-value {
  font-size: 15px;
  font-weight: 650;
  color: #f7faf7 !important;
  letter-spacing: -0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.menu-sheet.menu-sheet-info .menu-info-lang-trigger-code {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #1a1208 !important;
  padding: 6px 9px;
  border-radius: 9px;
  background: linear-gradient(135deg, #e8c56a, #d8a943) !important;
  border: none;
}
.menu-sheet.menu-sheet-info .menu-info-lang-chevron {
  width: 18px;
  height: 18px;
  position: relative;
  opacity: 0.85;
}
.menu-sheet.menu-sheet-info .menu-info-lang-chevron::before {
  content: "";
  position: absolute;
  inset: 5px 4px auto;
  height: 7px;
  border-right: 1.6px solid #e8d5a8;
  border-bottom: 1.6px solid #e8d5a8;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}
.menu-sheet.menu-sheet-info .menu-info-lang-switch.is-open .menu-info-lang-chevron::before {
  transform: rotate(225deg);
  inset: 7px 4px auto;
}
/* Inline expand — overflow:auto sheet absolute dropdown'u kesmesin */
.menu-sheet.menu-sheet-info .menu-info-lang-menu {
  position: static !important;
  left: auto;
  right: auto;
  top: auto;
  z-index: 8;
  display: grid !important;
  gap: 4px;
  margin: 8px 0 0;
  padding: 8px;
  list-style: none;
  border-radius: 16px;
  border: 1px solid rgba(216, 169, 67, 0.24);
  background: rgba(6, 18, 12, 0.96) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  animation: menuInfoFadeUp 0.2s ease both;
}
.menu-sheet.menu-sheet-info .menu-info-lang-menu[hidden] {
  display: none !important;
}
.menu-sheet.menu-sheet-info .menu-info-lang-option {
  all: unset;
  box-sizing: border-box;
  width: 100%;
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 10px 12px;
  border-radius: 12px;
  color: #e8eee9 !important;
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: background 0.15s ease;
}
.menu-sheet.menu-sheet-info .menu-info-lang-option:hover {
  background: rgba(216, 169, 67, 0.12);
}
.menu-sheet.menu-sheet-info .menu-info-lang-option.is-active {
  background: rgba(216, 169, 67, 0.16);
  box-shadow: inset 0 0 0 1px rgba(216, 169, 67, 0.28);
}
.menu-sheet.menu-sheet-info .menu-info-lang-flag { font-size: 18px; line-height: 1; }
.menu-sheet.menu-sheet-info .menu-info-lang-name {
  font-size: 13px;
  font-weight: 650;
  color: #f4f7f2 !important;
}
.menu-sheet.menu-sheet-info .menu-info-lang-short {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #8fa398;
}
.menu-sheet.menu-sheet-info .menu-info-lang-option.is-active .menu-info-lang-short {
  color: #d8a943;
}
.menu-sheet.menu-sheet-info .menu-info-body.is-rtl .menu-info-lang-trigger,
.menu-sheet.menu-sheet-info .menu-info-body.is-rtl .menu-info-lang-option {
  text-align: right;
}

.menu-info-panel {
  position: relative;
  z-index: 1;
  margin: 0 0 22px;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  animation: menuInfoFadeUp 0.4s ease 0.04s both;
}
.menu-info-panel[hidden] { display: none !important; }
.menu-info-panel-head,
.menu-info-panel-kicker { display: none; }

.menu-info-panel--loyalty {
  position: relative;
  padding: 16px 18px 18px;
  border: 1px solid rgba(216, 169, 67, 0.32);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(216, 169, 67, 0.16) 0%, rgba(216, 169, 67, 0.04) 55%, transparent 100%),
    rgba(255, 255, 255, 0.02);
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  animation: menuInfoFadeUp 0.4s ease 0.04s both;
}
.menu-info-panel--loyalty::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, transparent 20%, rgba(255, 255, 255, 0.14) 35%, transparent 50%);
  background-size: 200% 100%;
  animation: menuInfoShimmer 3.2s ease-in-out infinite;
  pointer-events: none;
}
.menu-info-loyalty-strip {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.menu-info-loyalty-strip[hidden] { display: none !important; }
.menu-info-loyalty-waiter-btn {
  position: relative;
  z-index: 1;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(216, 169, 67, 0.2);
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0;
  background: transparent !important;
  color: #f4e6c8 !important;
  font-weight: 700;
  transition: opacity 0.2s ease, transform 0.15s ease;
}
.menu-info-loyalty-waiter-btn:hover { opacity: 0.85; }
.menu-info-loyalty-waiter-btn:active { transform: scale(0.98); }
.menu-info-loyalty-icon {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  font-size: 19px;
  background: linear-gradient(145deg, #e8c874, #b8873a);
  box-shadow: 0 4px 14px rgba(216, 169, 67, 0.45);
  animation: menuInfoFloat 3s ease-in-out infinite;
}
.menu-info-loyalty-icon::before { content: '✨'; }
.menu-info-loyalty-copy strong {
  display: block;
  margin-bottom: 4px;
  font-size: 13.5px;
  font-weight: 700;
  color: #f4e6c8;
  letter-spacing: -0.01em;
}
.menu-info-loyalty-copy p {
  position: relative;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: #a9bcb0;
}

.menu-info-panel--contact .menu-info-quick--grid,
.menu-info-quick--grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  overflow: visible;
  animation: none;
}
.menu-info-quick {
  display: flex;
  gap: 8px;
  margin: 0;
  padding: 0;
}
.menu-info-quick::-webkit-scrollbar { display: none; }
.menu-info-quick-btn {
  --quick-accent: #d8a943;
  position: relative;
  flex: 1 1 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 76px;
  padding: 14px 8px 12px;
  border-radius: 18px;
  border: 1px solid color-mix(in srgb, var(--quick-accent) 24%, rgba(255, 255, 255, 0.09));
  background:
    radial-gradient(120% 140% at 50% -25%, color-mix(in srgb, var(--quick-accent) 22%, transparent), transparent 62%),
    linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015));
  color: #e8eee9;
  font: inherit;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.012em;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition: background 0.22s ease, border-color 0.22s ease, transform 0.18s cubic-bezier(.2,.8,.2,1), box-shadow 0.22s ease;
  opacity: 0;
  animation: menuInfoFadeUp 0.42s ease both;
  animation-delay: calc(var(--quick-i, 0) * 0.06s + 0.05s);
}
.menu-info-quick-btn:nth-child(1) { --quick-i: 1; }
.menu-info-quick-btn:nth-child(2) { --quick-i: 2; }
.menu-info-quick-btn:nth-child(3) { --quick-i: 3; }
.menu-info-quick-btn:nth-child(4) { --quick-i: 4; }
.menu-info-quick-btn:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--quick-accent) 58%, transparent);
  box-shadow: 0 16px 30px color-mix(in srgb, var(--quick-accent) 30%, transparent), inset 0 1px 0 rgba(255, 255, 255, 0.09);
}
.menu-info-quick-btn:active {
  transform: scale(0.96) translateY(-1px);
  box-shadow: 0 8px 16px color-mix(in srgb, var(--quick-accent) 26%, transparent), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.menu-info-quick-btn[hidden] { display: none !important; }
/* Instagram her zaman görünür (eski JS cache false verse bile) */
.menu-sheet.menu-sheet-info #menu-info-btn-instagram,
.menu-sheet.menu-sheet-info .menu-info-quick-btn--ig {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.menu-info-quick-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  color: #1a1206;
  box-shadow: 0 6px 14px color-mix(in srgb, var(--quick-accent) 40%, transparent);
  transition: transform 0.22s cubic-bezier(.34,1.56,.64,1), box-shadow 0.22s ease;
}
.menu-info-quick-btn:hover .menu-info-quick-icon {
  transform: scale(1.1) rotate(-4deg);
  box-shadow: 0 10px 20px color-mix(in srgb, var(--quick-accent) 48%, transparent);
}
.menu-info-quick-btn:active .menu-info-quick-icon { transform: scale(0.94) rotate(0deg); }
.menu-info-quick-btn--ig { --quick-accent: color-mix(in srgb, var(--dm-accent, #d8a943) 100%, #fff 6%); }
.menu-info-quick-btn--call { --quick-accent: color-mix(in srgb, var(--dm-accent, #d8a943) 82%, #bfe6c8 18%); }
.menu-info-quick-btn--map { --quick-accent: color-mix(in srgb, var(--dm-accent, #d8a943) 70%, #d7c9a3 30%); }
.menu-info-quick-btn--wa { --quick-accent: color-mix(in srgb, var(--dm-accent, #d8a943) 58%, #9fd9ac 42%); }
.menu-info-quick-icon {
  background: linear-gradient(145deg, color-mix(in srgb, var(--quick-accent) 88%, #fff 12%), var(--quick-accent));
  color: #1a1206;
}

.menu-info-section {
  position: relative;
  z-index: 1;
  margin: 0 0 24px;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  animation: menuInfoFadeUp 0.42s ease 0.06s both;
}
.menu-info-section--venue { margin-bottom: 0; }
.menu-info-section-head { display: none; }
.menu-info-section-gem { display: none; }
.menu-info-section-label {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 600;
  color: #8fa398;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.menu-info-promo-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  text-decoration: none;
  background: linear-gradient(135deg, rgba(216,169,67,.16), rgba(216,169,67,.05));
  border: 1px solid rgba(216,169,67,.35);
  box-shadow: 0 8px 22px -10px rgba(216,169,67,.35);
  transition: transform .15s ease, box-shadow .15s ease;
}
.menu-info-promo-card:active { transform: scale(.98); }
.menu-info-promo-icon {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 18px;
  background: linear-gradient(135deg, rgba(216,169,67,.3), rgba(216,169,67,.12));
}
.menu-info-promo-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.menu-info-promo-text strong {
  font-size: 13.5px;
  font-weight: 700;
  color: #ffe9b8;
}
.menu-info-promo-text span {
  font-size: 12px;
  color: var(--dm-muted, #9fb1a7);
  line-height: 1.35;
}
.menu-info-promo-arrow {
  flex-shrink: 0;
  color: #d8a943;
  font-size: 16px;
}

.menu-info-campaigns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.menu-info-campaigns-empty {
  margin: 0;
  padding: 16px 0;
  border: none;
  border-radius: 0;
  background: transparent;
  text-align: left;
  font-size: 13px;
  color: #8fa398;
  grid-column: auto;
}
.menu-info-campaign-card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 8px 14px;
  min-height: 0;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 14px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01));
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.menu-info-campaign-card:hover {
  transform: translateY(-2px);
  border-color: rgba(216, 169, 67, 0.32);
  box-shadow: 0 10px 24px rgba(216, 169, 67, 0.16);
}
.menu-info-campaign-card + .menu-info-campaign-card { margin-top: 10px; }
.menu-info-campaign-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #e8c874, #b8873a);
}
.menu-info-campaign-visual { display: none; }
.menu-info-campaign-body { min-width: 0; grid-column: 1; }
.menu-info-campaign-kicker { display: none; }
.menu-info-campaign-body strong {
  display: block;
  margin: 0 0 4px;
  font-size: 14px;
  font-weight: 650;
  color: #f4f7f2;
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.menu-info-campaign-body p {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: #8fa398;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.menu-info-campaign-badge {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  margin: 0;
  padding: 4px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(216, 169, 67, 0.28), rgba(216, 169, 67, 0.1));
  box-shadow: inset 0 0 0 1px rgba(216, 169, 67, 0.35);
  font-size: 11.5px;
  font-weight: 700;
  color: #f4e6c8;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.menu-info-bento {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
.menu-info-bento-card {
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 16px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01));
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.menu-info-bento-card:hover {
  transform: translateY(-2px);
  border-color: rgba(216, 169, 67, 0.28);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2);
}
.menu-info-bento-card.is-empty { opacity: 0.55; }
.menu-info-bento-card--wide { grid-column: auto; }
.menu-info-bento-card--story { background: linear-gradient(160deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)); }
.menu-info-bento-icon { display: none; }
.menu-info-bento-content h4 {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 600;
  color: #8fa398;
  text-transform: none;
  letter-spacing: 0.04em;
}
.menu-info-bento-content p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: #eef2ef;
}
.menu-info-hours-week {
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 5px;
}
.menu-info-hours-week li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  color: #8fa398;
}
.menu-info-hours-week li.is-today {
  color: #e8d5a8;
  font-weight: 600;
}
.menu-info-hours-week li.is-today span:last-child { color: #f4e6c8; }
.menu-info-link-btn {
  margin-top: 8px;
  padding: 0;
  border: none;
  background: none;
  color: #d8a943;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  letter-spacing: -0.01em;
}
.menu-info-wifi-ticket {
  position: relative;
  grid-column: auto;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 10px 10px 14px;
  border: 1px solid rgba(216, 169, 67, 0.32);
  border-radius: 999px;
  background: linear-gradient(160deg, rgba(216, 169, 67, 0.14), rgba(255, 255, 255, 0.02));
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.menu-info-wifi-ticket:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(216, 169, 67, 0.2);
}
.menu-info-wifi-ticket-head { display: none; }
.menu-info-wifi-icon {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: linear-gradient(145deg, #e8c874, #b8873a);
  color: #1a1206;
  animation: menuInfoFloat 4s ease-in-out infinite;
}
.menu-info-wifi-text {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
}
.menu-info-wifi-label {
  margin: 0;
  font-size: 11px;
  color: #8fa398;
  text-transform: none;
  letter-spacing: 0;
}
.menu-info-wifi-value {
  position: relative;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: #f4e6c8;
  letter-spacing: 0.02em;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  background: linear-gradient(100deg, #f4e6c8 30%, #fff 45%, #f4e6c8 60%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: menuInfoShimmer 3.6s ease-in-out infinite;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
#menu-info-wifi-key-row {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.menu-info-copy-btn {
  width: auto;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 16px;
  border: 1px solid rgba(216, 169, 67, 0.4);
  border-radius: 999px;
  background: rgba(216, 169, 67, 0.1);
  color: #f4e6c8;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: none;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.menu-info-copy-btn:hover {
  background: rgba(216, 169, 67, 0.22);
  border-color: rgba(216, 169, 67, 0.55);
  transform: translateY(-1px);
}
.menu-info-copy-btn:active { transform: none; }
.menu-info-story-text {
  font-size: 14px;
  line-height: 1.65;
  color: #b8c9bf !important;
}

@media (min-width: 480px) {
  .menu-sheet.menu-sheet-info {
    max-width: min(440px, calc(100vw - 32px));
    margin-left: auto;
    margin-right: auto;
    border-radius: 24px 24px 0 0;
  }
  .menu-info-panel--contact .menu-info-quick--grid,
  .menu-info-quick--grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .menu-info-quick-btn { min-height: 68px; }
}

@media (max-width: 380px) {
  .menu-info-panel--contact .menu-info-quick--grid,
  .menu-info-quick--grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .menu-sheet.menu-sheet-info .menu-info-lang-trigger {
    min-height: 52px;
    gap: 10px;
    padding: 9px 12px 9px 10px;
  }
  .menu-sheet.menu-sheet-info .menu-info-lang-trigger-flag {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }
}

.menu-dark-bottom-nav {
  background: rgba(7,23,16,.97) !important;
  border-top: 1px solid var(--dm-border) !important;
  border-radius: 20px 20px 0 0;
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  box-shadow: 0 -12px 40px rgba(0,0,0,.4) !important;
  z-index: 300 !important;
}
.menu-dark-nav-item {
  flex: 0 0 auto !important;
  color: var(--dm-muted) !important;
  min-width: 72px;
}
.menu-dark-nav-item.active { color: var(--dm-text) !important; }
.menu-dark-nav-badge { background: var(--dm-accent) !important; color: #1a1208 !important; }
.menu-dark-nav-center {
  position: relative;
  width: 56px; height: 56px;
  margin-top: -28px;
  border-radius: 50%;
  border: 3px solid var(--dm-shell);
  background: linear-gradient(135deg, var(--dm-nav-from), var(--dm-nav-to));
  display: grid; place-items: center;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(0,0,0,.35);
  padding: 0;
  overflow: visible;
  flex-shrink: 0;
  transition: transform 0.25s cubic-bezier(.34,1.56,.64,1), box-shadow 0.25s ease;
  animation: menuNavCenterFloat 3.4s ease-in-out infinite;
}
.menu-dark-nav-center::before {
  content: '';
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 1.5px solid rgba(216, 169, 67, 0.5);
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0.25s ease, transform 0.25s ease;
  pointer-events: none;
}
.menu-dark-nav-center:active {
  transform: scale(0.92);
}
.menu-dark-nav-center.has-logo {
  background: rgba(255,255,255,.04);
}
.menu-dark-nav-center.active {
  animation: none;
  transform: scale(1.06);
  box-shadow: 0 12px 32px rgba(216,169,67,.35);
}
.menu-dark-nav-center.active::before {
  opacity: 1;
  transform: scale(1);
  animation: menuNavCenterPulse 1.8s ease-out infinite;
}
@keyframes menuNavCenterFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}
@keyframes menuNavCenterPulse {
  0% { box-shadow: 0 0 0 0 rgba(216, 169, 67, 0.45); }
  100% { box-shadow: 0 0 0 8px rgba(216, 169, 67, 0); }
}
.menu-dark-nav-center-logo {
  font-size: 14px; font-weight: 800; color: #fff;
}
.bottom-center-logo {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.bottom-center-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.bottom-center-logo-placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  background: linear-gradient(145deg, #163528 0%, #245a42 100%);
}

.menu-dark-cart-bar {
  background: var(--dm-card) !important;
  border-color: var(--dm-border) !important;
  color: var(--dm-text) !important;
}

.menu-dark-modal-backdrop { background: rgba(0,0,0,.65) !important; }
.menu-dark-modal-card {
  background: var(--dm-card) !important;
  color: var(--dm-text);
  border: 1px solid var(--dm-border);
}
.menu-dark-modal-close {
  background: var(--dm-shell) !important;
  border-color: var(--dm-border) !important;
  color: var(--dm-text) !important;
}
.menu-app-dark .menu-ref-modal-body h2 { color: var(--dm-text); }
.menu-dark-modal-price { color: var(--dm-accent) !important; }
.menu-dark-modal-desc,
.menu-dark-detail-block p { color: var(--dm-muted) !important; }
.menu-dark-detail-block h3 { color: var(--dm-text) !important; }
.menu-dark-allergen-box {
  background: rgba(216,169,67,.08) !important;
  border-color: rgba(216,169,67,.2) !important;
}
.menu-dark-allergen-box h3 { color: var(--dm-accent) !important; }
.menu-app-dark .menu-ref-allergen-note { color: var(--dm-muted) !important; }
.menu-dark-modal-qty button {
  background: var(--dm-shell) !important;
  border-color: var(--dm-border) !important;
  color: var(--dm-text) !important;
}
.menu-dark-muted { color: var(--dm-muted) !important; }

.menu-dark-drawer { position: fixed; inset: 0; z-index: 150; }
.menu-dark-drawer[hidden] { display: none !important; }
.menu-dark-drawer-backdrop {
  position: absolute; inset: 0;
  background: rgba(0,0,0,.55);
}
.menu-dark-drawer-panel {
  position: absolute; left: 0; top: 0; bottom: 0;
  width: min(300px, 86vw);
  background: var(--dm-card);
  border-right: 1px solid var(--dm-border);
  padding: 20px 18px;
  box-shadow: 12px 0 40px rgba(0,0,0,.4);
}
.menu-dark-drawer-panel h2 { margin: 0 0 6px; font-size: 18px; color: var(--dm-text); }
.menu-dark-drawer-muted { margin: 0 0 18px; color: var(--dm-muted); font-size: 13px; }
.menu-dark-drawer-close {
  position: absolute; top: 12px; right: 12px;
  width: 32px; height: 32px; border-radius: 50%;
  border: 1px solid var(--dm-border);
  background: var(--dm-shell); color: var(--dm-text);
  font-size: 20px; cursor: pointer;
}
.menu-dark-drawer-links { list-style: none; margin: 0; padding: 0; }
.menu-dark-drawer-links li { margin-bottom: 6px; }
.menu-dark-drawer-links button {
  width: 100%; text-align: left;
  padding: 12px 14px; border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--dm-text);
  font: inherit; font-size: 14px; font-weight: 600;
  cursor: pointer;
}
.menu-dark-drawer-links button:hover {
  background: var(--dm-card-hover);
  border-color: var(--dm-border);
}

.menu-dark-toast {
  background: rgba(16,37,27,.96) !important;
  border: 1px solid var(--dm-border);
  color: var(--dm-text) !important;
  /* Üstte belirir — alttaki "Siparişi Tamamla" mini popup'ıyla çakışmasın (bkz. .menu-ref-toast). */
  top: calc(14px + env(safe-area-inset-top, 0px)) !important;
  bottom: auto !important;
  z-index: 320;
}
.menu-dark-success-card {
  background: var(--dm-card) !important;
  border: 1px solid var(--dm-border);
  color: var(--dm-text);
}
.menu-app-dark .order-success-card h2 { color: var(--dm-text); }

.menu-app-dark .food-illus {
  background-color: #0a1410;
  aspect-ratio: 4 / 3;
  min-height: 148px;
  border-radius: 0;
  box-shadow: inset 0 -24px 48px rgba(0, 0, 0, 0.35);
}
.menu-app-dark .food-illus::before {
  background:
    radial-gradient(ellipse 85% 65% at 50% 12%, rgba(216, 169, 67, 0.14), transparent 55%),
    radial-gradient(ellipse 70% 55% at 28% 18%, rgba(255, 255, 255, 0.08), transparent 52%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, transparent 38%, rgba(0, 0, 0, 0.28) 100%);
}
.menu-app-dark .food-illus::after {
  background:
    radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35), transparent 72%),
    url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E");
  opacity: 0.9;
}
.menu-app-dark .food-illus-burger {
  background:
    radial-gradient(ellipse 70% 50% at 50% 78%, rgba(107, 58, 31, 0.55) 0%, transparent 70%),
    radial-gradient(circle at 50% 42%, #a85a28 0%, #6b3818 38%, #1a1008 72%),
    linear-gradient(180deg, #121a14 0%, #0a1410 100%);
}
.menu-app-dark .food-illus-burger::before {
  content: '';
  position: absolute;
  left: 16%;
  right: 16%;
  top: 26%;
  height: 36%;
  border-radius: 50% 50% 42% 42%;
  background: linear-gradient(180deg, #e8c878 0%, #c9923e 42%, #8b5a22 100%);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45), inset 0 2px 0 rgba(255, 255, 255, 0.2);
  z-index: 0;
}
.menu-app-dark .food-illus-burger::after {
  content: '';
  position: absolute;
  left: 12%;
  right: 12%;
  top: 50%;
  height: 20%;
  border-radius: 0 0 42% 42%;
  background: linear-gradient(180deg, #5c3018, #2a1408);
  box-shadow: none;
  opacity: 1;
}
.menu-app-dark .food-illus-pizza {
  background:
    radial-gradient(circle at 50% 50%, #9a4018 0%, #5a2408 45%, #140a04 80%),
    linear-gradient(180deg, #14100a 0%, #0a1410 100%);
}
.menu-app-dark .food-illus-pizza::before {
  content: '';
  position: absolute;
  inset: 14% 18%;
  border-radius: 50%;
  background:
    radial-gradient(circle at 28% 32%, #fff 0 3.5%, transparent 4.5%),
    radial-gradient(circle at 64% 26%, #fff 0 3%, transparent 4%),
    radial-gradient(circle at 46% 58%, #fff 0 2.5%, transparent 3.5%),
    radial-gradient(circle at 72% 60%, #fff 0 3%, transparent 4%),
    linear-gradient(180deg, #e8a040 0%, #c06828 52%, #8b4018 100%);
  box-shadow: inset 0 -10px 20px rgba(0, 0, 0, 0.3), 0 8px 24px rgba(0, 0, 0, 0.35);
  z-index: 0;
}
.menu-app-dark .food-illus-starter {
  background:
    radial-gradient(ellipse 80% 60% at 50% 72%, rgba(74, 48, 24, 0.5) 0%, transparent 65%),
    linear-gradient(180deg, #141008 0%, #0a1410 100%);
}
.menu-app-dark .food-illus-starter::before {
  content: '';
  position: absolute;
  left: 20%;
  right: 20%;
  top: 28%;
  height: 40%;
  border-radius: 16px 16px 26px 26px;
  background: linear-gradient(180deg, #e8c060 0%, #c89838 48%, #8b6820 100%);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.4);
  z-index: 0;
}
.menu-app-dark .food-illus-starter::after {
  content: '';
  position: absolute;
  right: 18%;
  bottom: 22%;
  width: 22%;
  height: 18%;
  border-radius: 50%;
  background: radial-gradient(circle, #c45a28 0%, #8b3010 100%);
  box-shadow: none;
  opacity: 1;
}
.menu-app-dark .food-illus-drink {
  background:
    radial-gradient(ellipse 60% 50% at 50% 80%, rgba(40, 90, 120, 0.35) 0%, transparent 70%),
    linear-gradient(180deg, #0e1820 0%, #0a1410 100%);
}
.menu-app-dark .food-illus-dessert {
  background:
    radial-gradient(ellipse 70% 55% at 50% 75%, rgba(120, 70, 40, 0.4) 0%, transparent 70%),
    linear-gradient(180deg, #1a100c 0%, #0a1410 100%);
}
.menu-app-dark .menu-ref-product-card .menu-item-media {
  position: relative;
  overflow: hidden;
}
.menu-app-dark .menu-ref-product-card .menu-item-media::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 55%, rgba(7, 23, 16, 0.45) 100%);
}
.menu-app-dark .menu-ref-product-card .menu-item-desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 12px;
  line-height: 1.45;
  margin: 4px 0 8px;
}
.menu-app-dark .menu-ref-product-card .menu-item-price {
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.01em;
}
.menu-app-dark .menu-ref-add-btn {
  font-weight: 700;
  letter-spacing: 0.02em;
  box-shadow: 0 8px 20px rgba(31, 91, 66, 0.35);
}
.menu-app-dark .menu-item-thumb img {
  border-radius: 0;
}

/* ===== Bottom sheet popup sistemi (alt nav üstünde) ===== */
body.menu-sheet-open {
  overflow: hidden;
  touch-action: none;
}
body.menu-sheet-open .menu-ref-cart-bar.cart-bar {
  display: none !important;
}
.menu-sheets-portal {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(var(--mobile-nav-height) + env(safe-area-inset-bottom, 0px));
  width: 100%;
  max-width: 430px;
  z-index: 200;
  pointer-events: none;
}
.menu-sheet-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  pointer-events: none;
}
.menu-sheet-overlay[hidden] { display: none !important; }
.menu-sheet-overlay.is-open { pointer-events: auto; }

.menu-sheet-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.62);
  opacity: 0;
  transition: opacity 0.28s ease;
}
.menu-sheet-overlay.is-open .menu-sheet-backdrop { opacity: 1; }

.menu-sheet {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 430px;
  max-height: calc(86vh - var(--mobile-nav-height) - env(safe-area-inset-bottom, 0px));
  background: linear-gradient(180deg, var(--dm-sheet-top) 0%, var(--dm-sheet-mid) 88px, var(--dm-sheet-bottom) 100%);
  border-radius: 20px 20px 0 0;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: none;
  box-shadow:
    0 -20px 56px rgba(0, 0, 0, 0.48),
    inset 0 1px 0 rgba(216, 169, 67, 0.12);
  display: flex;
  flex-direction: column;
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  overflow: hidden;
  margin-bottom: 0;
}
.menu-sheet-overlay.is-open .menu-sheet {
  transform: translateY(0);
}

/* Popup varyantı — yalnız Siparişlerim ve ürün detayı için: alt sheet yerine
   ortalanmış, yuvarlak köşeli bir popup olarak açılır (bkz. menu.php #sheet-orders,
   #sheet-product). Diğer sheet'ler (dil, wifi, değerlendirme vb.) alt sheet kalır. */
.menu-sheet-overlay--popup {
  align-items: center;
  padding: 24px;
}
.menu-sheet-overlay--popup .menu-sheet {
  border-radius: 20px;
  max-height: min(86vh, 720px);
  transform: translateY(0) scale(0.94);
  opacity: 0;
  transition: transform 0.28s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.22s ease;
}
.menu-sheet-overlay--popup.is-open .menu-sheet {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.menu-sheet-overlay--popup .menu-sheet-handle { display: none; }
/* Ürün detay popup'ı ekrana sığsın, iç kaydırma gerekmesin — resim yüksekliği
   4/3'ten 16/9'a düşürülüp içerik için daha fazla dikey alan bırakılıyor. */
#sheet-product.menu-sheet-overlay--popup .menu-sheet-product-media img,
#sheet-product.menu-sheet-overlay--popup .menu-sheet-product-media .menu-ref-modal-img {
  aspect-ratio: 16 / 9;
}

/* Alt navigasyondaki bağımsız dil seçici */
.menu-language-nav-icon {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #f3d787;
  background: linear-gradient(145deg, rgba(216, 169, 67, 0.25), rgba(20, 68, 49, 0.76));
  border: 1px solid rgba(236, 203, 116, 0.3);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 6px 14px rgba(0, 0, 0, 0.22);
}
.menu-language-nav-icon svg {
  width: 17px;
  height: 17px;
}
.menu-language-sheet {
  max-width: 410px;
  background:
    radial-gradient(circle at 85% 0%, rgba(216, 169, 67, 0.14), transparent 38%),
    linear-gradient(180deg, #10241a 0%, #071710 100%);
}
.menu-language-sheet-header {
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
.menu-language-sheet-body {
  padding: 14px 16px calc(18px + env(safe-area-inset-bottom, 0px));
}
.menu-language-options {
  display: grid;
  gap: 9px;
}
.menu-language-option {
  width: 100%;
  min-height: 58px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto 26px;
  align-items: center;
  gap: 12px;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.045);
  color: #eff7f1;
  text-align: left;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}
.menu-language-option:hover,
.menu-language-option:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(216, 169, 67, 0.4);
  background: rgba(216, 169, 67, 0.09);
  outline: none;
}
.menu-language-option.is-active {
  border-color: rgba(216, 169, 67, 0.52);
  background: linear-gradient(135deg, rgba(216, 169, 67, 0.17), rgba(22, 87, 61, 0.24));
  box-shadow: inset 0 0 0 1px rgba(216, 169, 67, 0.08), 0 8px 22px rgba(0, 0, 0, 0.16);
}
.menu-language-option-flag {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.25);
  font-size: 20px;
}
.menu-language-option-name {
  min-width: 0;
  font-size: 15px;
  font-weight: 700;
}
.menu-language-option-code {
  color: #95aa9e;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
}
.menu-language-option-check {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(216, 169, 67, 0.18);
  color: #f1cd6e;
  font-size: 13px;
  opacity: 0;
  transform: scale(0.75);
  transition: opacity 0.16s ease, transform 0.16s ease;
}
.menu-language-option.is-active .menu-language-option-check {
  opacity: 1;
  transform: scale(1);
}

.menu-sheet-handle {
  width: 40px;
  height: 4px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
  margin: 10px auto 6px;
  flex-shrink: 0;
}
.menu-sheet-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 4px 18px 12px;
  flex-shrink: 0;
}
.menu-sheet-title {
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  color: #f4f7f2;
  line-height: 1.2;
}
.menu-sheet-close {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(7, 23, 16, 0.9);
  color: #f4f7f2;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}
.menu-sheet-close-float {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 5;
}
#sheet-orders .menu-sheet-header {
  position: relative;
  justify-content: center;
  padding-bottom: 16px;
}
#sheet-orders-title {
  text-align: center;
  font-size: 19px;
  letter-spacing: 0.02em;
  background: linear-gradient(135deg, #f4e6c8 20%, #d8a943 60%, #f4e6c8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sheet-orders .menu-sheet-header .menu-sheet-close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#sheet-orders .menu-sheet-header::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 44px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(216, 169, 67, 0.75), transparent);
}
#sheet-review .menu-sheet-header {
  position: relative;
  justify-content: center;
  padding-bottom: 16px;
}
#sheet-review-title {
  text-align: center;
  font-size: 19px;
  letter-spacing: 0.02em;
  background: linear-gradient(135deg, #f4e6c8 20%, #d8a943 60%, #f4e6c8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sheet-review .menu-sheet-header .menu-sheet-close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#sheet-review .menu-sheet-header::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 44px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(216, 169, 67, 0.75), transparent);
}
.menu-sheet-body {
  padding: 0 18px 14px;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  flex: 1;
  min-height: 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.menu-sheet-body::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
  background: transparent;
}
.menu-sheet,
.menu-sheet-tall {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.menu-sheet::-webkit-scrollbar,
.menu-sheet-tall::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.menu-sheet-body-center { text-align: center; }
.menu-sheet-intro {
  margin: 0 0 16px;
  font-size: 13px;
  color: #9fb1a7;
  line-height: 1.55;
}
.menu-sheet-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 14px 0;
}
.menu-sheet-actions-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.menu-sheet-info-stack {
  margin-top: 8px;
  display: grid;
  gap: 12px;
}
.menu-sheet-header-minimal {
  padding-top: 0;
  padding-bottom: 4px;
}
.menu-sheet-header-spacer { flex: 1; }

.menu-sheet-star-hero {
  width: 64px;
  height: 64px;
  margin: 0 auto 14px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  font-size: 32px;
  color: #d8a943;
  background: rgba(216, 169, 67, 0.12);
  border: 1px solid rgba(216, 169, 67, 0.25);
}
.menu-sheet-stars {
  justify-content: center;
  gap: 8px;
  margin-bottom: 8px;
}
.menu-sheet-star {
  font-size: 36px !important;
  padding: 2px 4px !important;
}

.menu-sheet-product-media {
  width: 100%;
  flex-shrink: 0;
  cursor: zoom-in;
}
.menu-sheet-product-media img,
.menu-sheet-product-media .menu-ref-modal-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  border-radius: 0;
}

.menu-img-lightbox {
  position: fixed;
  inset: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: auto;
  transition: opacity .2s ease;
}
.menu-img-lightbox[hidden] { display: none !important; }
.menu-img-lightbox.is-visible { opacity: 1; }
.menu-img-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.85);
}
.menu-img-lightbox-close {
  position: absolute;
  top: calc(14px + env(safe-area-inset-top, 0px));
  right: 14px;
  z-index: 2;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  background: rgba(0,0,0,.5);
  color: #fff;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}
.menu-img-lightbox img {
  position: relative;
  z-index: 1;
  max-width: min(92vw, 560px);
  max-height: 82vh;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 16px;
  transform: scale(.92);
  transition: transform .2s cubic-bezier(0.32, 0.72, 0, 1);
  box-shadow: 0 20px 60px rgba(0,0,0,.5);
}
.menu-img-lightbox.is-visible img { transform: scale(1); }
.menu-sheet-product-body {
  padding-top: 14px;
}
.menu-sheet-product-body .menu-sheet-title {
  font-size: 20px;
  margin-bottom: 6px;
}
/* Ürün detay popup'ı açıkken alttaki yüzen sepet çubuğu gizlendiği için
   (bkz. body.menu-sheet-open .cart-bar), ayrı, küçük bir popup olarak ürün
   kartının ALTINA eklendi. Sabit bir "bottom" değeri değil, overlay'in kendi
   flex akışının bir parçası — kart uzun/kısa olsun, üst üste binmeden aralarında
   her zaman bir boşluk kalır (bkz. #sheet-product.menu-sheet-overlay--popup
   flex-direction:column kuralı).
*/
#sheet-product.menu-sheet-overlay--popup {
  flex-direction: column;
  gap: 12px;
}
.menu-sheet-product-summary-popup[hidden] { display: none !important; }
.menu-sheet-product-summary-popup {
  position: relative;
  width: 100%;
  max-width: 430px;
  flex-shrink: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 16px;
  background: linear-gradient(180deg, var(--dm-sheet-top) 0%, var(--dm-sheet-bottom) 100%);
  border: 1px solid rgba(255,255,255,.1);
  box-shadow: 0 12px 32px rgba(0,0,0,.4);
}
.menu-sheet-product-summary-info {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--dm-text);
}
.menu-sheet-product-summary-popup #item-modal-complete-order-btn {
  flex-shrink: 0;
  width: auto;
  padding: 8px 16px;
}

/* Alt nav sheet açıkken de üstte kalır — portal nav altında biter */

/* ===== Landing eksik bölümler — satış akışı tamamlama ===== */
.home-phone-bottom-nav-2 { grid-template-columns: repeat(2, 1fr); }
.home-benefit-cards { display: grid; gap: 12px; margin-top: 24px; }
.home-benefit-card {
  padding: 14px 16px; border-radius: 16px;
  background: var(--home-surface);
  border: 1px solid var(--home-border);
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
}
.home-benefit-card strong { display: block; font-size: 14px; margin-bottom: 4px; color: var(--home-text); }
.home-benefit-card span { font-size: 13px; color: var(--home-muted); }
.home-wa-actions { display: flex; gap: 8px; margin-top: 4px; }
.home-wa-action-btn {
  flex: 1; padding: 10px 14px; border-radius: 12px;
  border: 1px solid rgba(26,26,26,.1); background: #fff;
  font: inherit; font-size: 13px; font-weight: 600; cursor: pointer;
}
.home-wa-action-btn.primary { background: var(--home-green); color: #fff; border-color: var(--home-green); }

.home-visual-compare {
  display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center;
}
.home-compare-card {
  background: var(--home-surface); border: 1px solid var(--home-border);
  border-radius: 20px; padding: 14px; text-align: center;
  box-shadow: 0 10px 32px rgba(0,0,0,.05);
}
.home-compare-label {
  display: inline-block; margin-bottom: 10px; font-size: 11px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase; color: var(--home-gold);
}
.home-compare-img {
  width: 100%; aspect-ratio: 4/3; border-radius: 14px; margin-bottom: 10px;
  overflow: hidden; position: relative;
  background-size: cover; background-position: center;
}
.home-compare-img.has-photo {
  background-image: none !important;
  background-color: var(--home-cream);
}
.home-compare-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.home-compare-raw { filter: saturate(.85) contrast(.95); opacity: .92; }
.home-compare-raw.has-photo img { filter: saturate(.88) contrast(.94); opacity: .95; }
.home-compare-premium { box-shadow: 0 12px 28px rgba(197,157,95,.2); }
.home-compare-premium.has-photo img { filter: saturate(1.1) contrast(1.05); }
.home-compare-card p { margin: 0; font-size: 12px; color: var(--home-muted); }
.home-compare-arrow { font-size: 24px; color: var(--home-gold); font-weight: 700; }
.home-metric-row {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 20px 0 16px;
}
.home-metric-row div {
  padding: 12px; border-radius: 14px; background: var(--home-surface);
  border: 1px solid var(--home-border); text-align: center;
}
.home-metric-row strong { display: block; font-size: 18px; color: var(--home-gold-dark); }
.home-metric-row span { font-size: 11px; color: var(--home-muted); }
.home-checklist-compact { margin-top: 12px; }

.home-pipeline {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 32px;
}
.home-pipeline-step {
  padding: 20px 16px; border-radius: 18px; background: var(--home-surface);
  border: 1px solid var(--home-border); text-align: center;
}
.home-pipeline-step span {
  display: inline-grid; place-items: center; width: 32px; height: 32px;
  border-radius: 50%; background: linear-gradient(135deg, var(--home-gold), #dbad52);
  color: #fff; font-weight: 800; margin-bottom: 10px;
}
.home-pipeline-step strong { display: block; font-size: 15px; margin-bottom: 6px; color: var(--home-text); }
.home-pipeline-step p { margin: 0; font-size: 13px; color: var(--home-muted); }
.home-pipeline-ai { border-color: rgba(197,157,95,.3); box-shadow: 0 12px 32px var(--home-gold-glow); }
.home-pipeline-mock {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
}
.home-pipeline-panel {
  min-height: 200px; padding: 16px; border-radius: 20px;
  background: var(--home-surface); border: 1px solid var(--home-border);
  position: relative; overflow: hidden;
}
.home-pipeline-tag {
  display: inline-block; font-size: 11px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase; color: var(--home-gold);
  margin-bottom: 12px;
}
.home-pipeline-doc {
  width: min(100%, 220px);
  aspect-ratio: 7 / 10;
  height: auto;
  min-height: 240px;
  max-height: 340px;
  margin-inline: auto;
  border-radius: 14px;
  background: linear-gradient(165deg, #faf6ef 0%, #f0ebe3 48%, #e8dfd4 100%);
  border: 1px solid rgba(26, 26, 26, .1);
  overflow: hidden;
  position: relative;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .65),
    0 10px 28px rgba(26, 26, 26, .08);
}
.home-pipeline-doc.has-photo {
  border-style: solid;
  border-color: rgba(26, 26, 26, .12);
  background: #1a1612;
  box-shadow:
    0 18px 40px rgba(26, 26, 26, .16),
    0 4px 12px rgba(26, 26, 26, .08);
}
.home-pipeline-doc img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  filter: saturate(1.05) contrast(1.04);
}
.home-pipeline-mock > .home-pipeline-panel:first-child {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.home-pipeline-mock > .home-pipeline-panel:first-child .home-pipeline-doc {
  flex: 1 1 auto;
}
.home-pipeline-panel-ai {
  background:
    radial-gradient(circle at 50% 0%, rgba(197, 157, 95, .16), transparent 55%),
    linear-gradient(165deg, #fff9ee 0%, #fff 48%, #faf6ef 100%);
  border-color: rgba(197, 157, 95, .22);
  box-shadow: 0 16px 40px rgba(197, 157, 95, .12);
}
.home-pipeline-ai-stage {
  display: grid;
  gap: 12px;
  min-height: 168px;
}
.home-pipeline-ai-scan {
  position: relative;
  height: 52px;
  border-radius: 12px;
  overflow: hidden;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(197, 157, 95, .18);
}
.home-pipeline-ai-scan-doc {
  display: grid;
  gap: 6px;
  padding: 10px 12px;
}
.home-pipeline-ai-scan-doc span {
  display: block;
  height: 5px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(26, 26, 26, .12), rgba(26, 26, 26, .04));
}
.home-pipeline-ai-scan-doc span:nth-child(1) { width: 42%; }
.home-pipeline-ai-scan-doc span:nth-child(2) { width: 78%; }
.home-pipeline-ai-scan-doc span:nth-child(3) { width: 64%; }
.home-pipeline-ai-scan-doc span:nth-child(4) { width: 88%; }
.home-pipeline-ai-scan-doc span:nth-child(5) { width: 55%; }
.home-pipeline-ai-scan-line {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--home-gold), transparent);
  box-shadow: 0 0 14px rgba(197, 157, 95, .55);
  animation: homePipelineScan 2.4s ease-in-out infinite;
}
@keyframes homePipelineScan {
  0% { top: 8%; opacity: .35; }
  45% { opacity: 1; }
  100% { top: 92%; opacity: .35; }
}
.home-pipeline-ai-core {
  position: relative;
  width: 54px;
  height: 54px;
  margin: -4px auto 0;
  display: grid;
  place-items: center;
}
.home-pipeline-ai-sparkle {
  font-size: 22px;
  line-height: 1;
  color: var(--home-gold);
  animation: homePipelineSparkle 1.8s ease-in-out infinite;
  z-index: 1;
}
@keyframes homePipelineSparkle {
  0%, 100% { transform: scale(.92); opacity: .72; }
  50% { transform: scale(1.08); opacity: 1; }
}
.home-pipeline-ai-orbit {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px dashed rgba(197, 157, 95, .35);
  animation: homePipelineOrbit 4s linear infinite;
}
.home-pipeline-ai-orbit.is-delayed {
  inset: 6px;
  animation-duration: 2.8s;
  animation-direction: reverse;
}
@keyframes homePipelineOrbit {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.home-pipeline-ai-feed {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 6px;
}
.home-pipeline-ai-feed li {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 10px;
  font-size: 11px;
  background: rgba(255, 255, 255, .55);
  border: 1px solid transparent;
  opacity: .35;
  transform: translateY(4px);
  transition: opacity .35s ease, transform .35s ease, border-color .35s ease, background .35s ease;
}
.home-pipeline-ai-feed li.is-live {
  opacity: 1;
  transform: translateY(0);
  background: rgba(255, 255, 255, .92);
  border-color: rgba(197, 157, 95, .28);
  box-shadow: 0 6px 18px rgba(197, 157, 95, .12);
}
.home-pipeline-ai-feed li.is-done {
  opacity: .78;
  transform: translateY(0);
}
.home-pipeline-ai-feed-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(197, 157, 95, .25);
  transition: background .35s ease, box-shadow .35s ease;
}
.home-pipeline-ai-feed li.is-live .home-pipeline-ai-feed-dot {
  background: var(--home-gold);
  box-shadow: 0 0 0 4px rgba(197, 157, 95, .18);
  animation: homePipelineDotPulse 1.2s ease-in-out infinite;
}
.home-pipeline-ai-feed li.is-done .home-pipeline-ai-feed-dot {
  background: #22c55e;
  box-shadow: none;
}
@keyframes homePipelineDotPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.15); }
}
.home-pipeline-ai-feed em {
  font-style: normal;
  font-weight: 800;
  color: var(--home-gold-dark);
  font-size: 10px;
}
.home-pipeline-ai-progress {
  height: 4px;
  border-radius: 999px;
  background: rgba(197, 157, 95, .12);
  overflow: hidden;
}
.home-pipeline-ai-progress-bar {
  display: block;
  width: 36%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--home-gold), #e8c88a);
  animation: homePipelineProgress 5.6s ease-in-out infinite;
}
@keyframes homePipelineProgress {
  0% { width: 8%; }
  25% { width: 38%; }
  55% { width: 72%; }
  100% { width: 96%; }
}
.home-pipeline-ai-status {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  color: var(--home-muted);
  text-align: center;
  min-height: 16px;
}
html.home-theme-dark .home-pipeline-panel-ai {
  background:
    radial-gradient(circle at 50% 0%, rgba(197, 157, 95, .12), transparent 55%),
    linear-gradient(165deg, #1f1b16 0%, #1a1a1a 100%);
  border-color: rgba(197, 157, 95, .2);
}
html.home-theme-dark .home-pipeline-ai-scan {
  background: rgba(255, 255, 255, .04);
  border-color: rgba(255, 255, 255, .08);
}
html.home-theme-dark .home-pipeline-ai-scan-doc span {
  background: linear-gradient(90deg, rgba(255, 255, 255, .16), rgba(255, 255, 255, .06));
}
html.home-theme-dark .home-pipeline-ai-feed li {
  background: rgba(255, 255, 255, .04);
}
html.home-theme-dark .home-pipeline-ai-feed li.is-live {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(197, 157, 95, .24);
}
.home-pipeline-sparkle { font-size: 48px; color: var(--home-gold); animation: home-sparkle 2s ease-in-out infinite; }
@keyframes home-sparkle { 0%,100%{opacity:.6;transform:scale(1)} 50%{opacity:1;transform:scale(1.08)} }
.home-pipeline-menu-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.home-pipeline-menu-list li {
  display: flex; justify-content: space-between; gap: 8px;
  padding: 10px 12px; border-radius: 12px; background: var(--home-cream); font-size: 13px;
  color: var(--home-text);
}
.home-pipeline-menu-list b { font-size: 10px; color: var(--home-gold); font-weight: 700; }
.home-pipeline-menu-list em { font-style: normal; font-weight: 700; color: var(--home-gold-dark); }

.home-system-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
}
.home-system-card {
  padding: 24px 20px; border-radius: 20px; background: var(--home-surface);
  border: 1px solid var(--home-border);
  box-shadow: 0 10px 32px rgba(0,0,0,.04);
  transition: transform .2s ease, box-shadow .2s ease;
}
.home-system-card:hover { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,.08); }
.home-system-icon { font-size: 28px; display: block; margin-bottom: 12px; }
.home-system-card h3 { margin: 0 0 8px; font-size: 16px; font-weight: 800; color: var(--home-text); }
.home-system-card p { margin: 0; font-size: 14px; color: var(--home-muted); line-height: 1.55; }

/* Markaya özel — panel menü temaları vitrini */
.home-theme-showcase { min-width: 0; }
.home-theme-showcase-lead {
  margin: 0 0 14px;
  font-size: 13px;
  color: var(--home-muted);
  line-height: 1.5;
}
.home-theme-showcase-lead span {
  display: inline-block;
  margin-right: 6px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--home-gold-dark);
  background: rgba(197, 157, 95, .14);
  border: 1px solid rgba(197, 157, 95, .24);
}
.home-theme-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-height: min(520px, 72vh);
  overflow: auto;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(197, 157, 95, .35) transparent;
}
.home-theme-card {
  border-radius: 16px;
  border: 1px solid var(--home-border);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.home-theme-card:hover {
  transform: translateY(-2px);
  border-color: rgba(197, 157, 95, .35);
  box-shadow: 0 14px 32px rgba(15, 23, 42, .1);
}
.home-theme-card-visual {
  position: relative;
  padding: 10px 10px 0;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}
.home-theme-card-visual .menu-theme-preview {
  display: block;
  height: 42px;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, .06);
}
.home-theme-mini-phone {
  width: min(112px, 72%);
  margin: -6px auto 0;
  border-radius: 14px 14px 0 0;
  border: 2px solid rgba(15, 23, 42, .14);
  border-bottom: none;
  overflow: hidden;
  box-shadow: 0 -4px 16px rgba(0, 0, 0, .08);
}
.home-theme-mini-screen {
  min-height: 88px;
  padding: 7px 7px 9px;
  background: var(--dm-bg);
  color: var(--dm-text);
}
.home-theme-mini-brand {
  width: 46%;
  height: 5px;
  margin: 0 auto 5px;
  border-radius: 999px;
  background: var(--dm-text);
  opacity: .82;
}
.home-theme-mini-search {
  height: 11px;
  border-radius: 7px;
  background: var(--dm-search);
  margin-bottom: 6px;
  border: 1px solid rgba(255, 255, 255, .06);
}
.home-theme-mini-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5px;
}
.home-theme-mini-grid span {
  height: 24px;
  border-radius: 7px;
  background: var(--dm-card);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .04);
}
.home-theme-mini-nav {
  height: 5px;
  margin-top: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--dm-nav-from), var(--dm-nav-to));
  opacity: .9;
}
.home-theme-card-body {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px 10px 11px;
}
.home-theme-card-icon { font-size: 16px; line-height: 1; flex-shrink: 0; }
.home-theme-card-copy { min-width: 0; }
.home-theme-card-copy strong {
  display: block;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
  margin-bottom: 2px;
  color: var(--home-text);
}
.home-theme-card-copy span {
  display: block;
  font-size: 10px;
  line-height: 1.35;
  color: var(--home-muted);
}
html.home-theme-dark .home-theme-card {
  background: rgba(255, 255, 255, .04);
  border-color: rgba(255, 255, 255, .08);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}
html.home-theme-dark .home-theme-card-visual {
  background: linear-gradient(180deg, rgba(255, 255, 255, .05) 0%, transparent 100%);
}
html.home-theme-dark .home-theme-card-copy strong { color: #f4f7f2; }
@media (max-width: 720px) {
  .home-theme-grid {
    max-height: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 980px) {
  #markaya-ozel .home-theme-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Landing — Müdavim sadakat vitrini */
.home-section-loyalty {
  background:
    radial-gradient(ellipse 70% 55% at 88% 18%, rgba(197, 157, 95, .14), transparent 58%),
    radial-gradient(ellipse 50% 40% at 8% 82%, rgba(197, 157, 95, .08), transparent 55%),
    var(--home-cream);
  overflow: hidden;
}
.home-loyalty-split { align-items: center; }
.home-loyalty-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}
.home-loyalty-kpis div {
  padding: 12px 10px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--home-border);
  text-align: center;
}
.home-loyalty-kpis strong {
  display: block;
  font-size: 15px;
  color: var(--home-gold-dark);
  margin-bottom: 2px;
}
.home-loyalty-kpis span { font-size: 11px; color: var(--home-muted); }
.home-loyalty-stage {
  position: relative;
  min-height: 420px;
  display: grid;
  place-items: center;
  padding: 24px 8px;
}
.home-loyalty-orbit {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.home-loyalty-orbit-pill {
  position: absolute;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  color: #5c4a2a;
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(197, 157, 95, .28);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .08);
  animation: homeLoyaltyFloat 5.5s ease-in-out infinite;
  animation-delay: calc(var(--orbit-i, 0) * -.9s);
}
.home-loyalty-orbit-pill em {
  font-style: normal;
  color: var(--home-gold-dark);
  margin-right: 4px;
}
.home-loyalty-orbit-pill:nth-child(1) { top: 8%; left: 4%; }
.home-loyalty-orbit-pill:nth-child(2) { top: 18%; right: 0; }
.home-loyalty-orbit-pill:nth-child(3) { bottom: 14%; left: 8%; }
@keyframes homeLoyaltyFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

/* Müdavim: ödül pill'leri kartın arkasına binip taşmasın — kart altında düzenli şerit */
.home-loyalty-stage { row-gap: 16px; }
.home-loyalty-card { order: 1; }
.home-loyalty-orbit {
  position: static; inset: auto; order: 2; width: 100%;
  display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;
  pointer-events: auto;
}
.home-loyalty-caption { order: 3; }
.home-loyalty-orbit-pill,
.home-loyalty-orbit-pill:nth-child(1),
.home-loyalty-orbit-pill:nth-child(2),
.home-loyalty-orbit-pill:nth-child(3) {
  position: static; top: auto; right: auto; bottom: auto; left: auto; animation: none;
}

.home-loyalty-card {
  position: relative;
  width: min(100%, 360px);
  padding: 22px 22px 18px;
  border-radius: 24px;
  color: #fff7eb;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .12) 0%, transparent 42%),
    linear-gradient(135deg, #2a2218 0%, #15110d 52%, #3d2e18 100%);
  border: 1px solid rgba(197, 157, 95, .35);
  box-shadow:
    0 28px 60px rgba(0, 0, 0, .28),
    0 0 0 1px rgba(255, 255, 255, .04) inset,
    0 0 48px rgba(197, 157, 95, .16);
  transform: rotate(-2deg);
  transition: transform .35s ease, box-shadow .35s ease;
}
.home-loyalty-card:hover {
  transform: rotate(0deg) translateY(-4px);
  box-shadow:
    0 34px 70px rgba(0, 0, 0, .32),
    0 0 0 1px rgba(255, 255, 255, .06) inset,
    0 0 56px rgba(197, 157, 95, .22);
}
.home-loyalty-card-glow {
  position: absolute;
  inset: -30% -20% auto;
  height: 55%;
  background: radial-gradient(circle at 50% 50%, rgba(197, 157, 95, .35), transparent 68%);
  pointer-events: none;
}
.home-loyalty-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 18px;
  position: relative;
  z-index: 1;
}
.home-loyalty-card-brand {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255, 247, 235, .72);
}
.home-loyalty-card-tier {
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: rgba(197, 157, 95, .22);
  border: 1px solid rgba(197, 157, 95, .45);
  color: #ffe8b8;
}
.home-loyalty-card-member {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}
.home-loyalty-card-avatar {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-size: 22px;
  background: rgba(197, 157, 95, .18);
  border: 1px solid rgba(197, 157, 95, .35);
}
.home-loyalty-card-member strong {
  display: block;
  font-size: 18px;
  line-height: 1.2;
}
.home-loyalty-card-member span {
  display: block;
  margin-top: 2px;
  font-size: 11px;
  color: rgba(255, 247, 235, .62);
}
.home-loyalty-card-balance {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}
.home-loyalty-card-balance strong {
  font-size: 42px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -.03em;
  background: linear-gradient(135deg, #fff7eb, #e8c88a);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.home-loyalty-card-balance span {
  font-size: 13px;
  color: rgba(255, 247, 235, .72);
}
.home-loyalty-stamps {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
}
.home-loyalty-stamp {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1.5px dashed rgba(197, 157, 95, .45);
  background: rgba(255, 255, 255, .04);
}
.home-loyalty-stamp.is-filled {
  border-style: solid;
  background: linear-gradient(135deg, var(--loyalty-accent, #c59d5f), #e8c88a);
  box-shadow: 0 4px 14px rgba(197, 157, 95, .35);
  animation: homeLoyaltyStampPop .55s ease backwards;
}
.home-loyalty-stamp.is-filled:nth-child(1) { animation-delay: .1s; }
.home-loyalty-stamp.is-filled:nth-child(2) { animation-delay: .2s; }
.home-loyalty-stamp.is-filled:nth-child(3) { animation-delay: .3s; }
@keyframes homeLoyaltyStampPop {
  from { transform: scale(.6); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}
.home-loyalty-card-next {
  margin: 0 0 14px;
  font-size: 11px;
  color: rgba(255, 247, 235, .68);
  position: relative;
  z-index: 1;
}
.home-loyalty-card-next strong { color: #ffe8b8; }
.home-loyalty-tier-rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  position: relative;
  z-index: 1;
}
.home-loyalty-tier-dot {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 6px 2px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .06);
  opacity: .55;
  transition: opacity .25s ease, transform .25s ease, border-color .25s ease;
}
.home-loyalty-tier-dot i {
  font-style: normal;
  font-size: 16px;
  line-height: 1;
}
.home-loyalty-tier-dot small {
  font-size: 8px;
  line-height: 1.15;
  text-align: center;
  color: rgba(255, 247, 235, .62);
}
.home-loyalty-tier-dot.is-active {
  opacity: 1;
  transform: translateY(-2px);
  border-color: var(--tier-color, #c59d5f);
  box-shadow: 0 0 0 1px rgba(197, 157, 95, .25), 0 8px 18px rgba(0, 0, 0, .18);
}
.home-loyalty-caption {
  margin: 18px 0 0;
  max-width: 320px;
  text-align: center;
  font-size: 12px;
  color: var(--home-muted);
}
.home-system-card-link a {
  display: block;
  color: inherit;
  text-decoration: none;
}
.home-system-card-link:hover {
  border-color: rgba(197, 157, 95, .35);
  box-shadow: 0 12px 32px rgba(197, 157, 95, .12);
}
html.home-theme-dark .home-section-loyalty {
  background:
    radial-gradient(ellipse 70% 55% at 88% 18%, rgba(197, 157, 95, .1), transparent 58%),
    var(--home-surface-soft, #141414);
}
html.home-theme-dark .home-loyalty-kpis div,
html.home-theme-dark .home-loyalty-orbit-pill {
  background: var(--home-surface, #1a1a1a);
  border-color: var(--home-border);
  color: var(--home-text);
}
html.home-theme-dark .home-loyalty-orbit-pill em { color: var(--home-gold); }

.home-pricing-split {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  border-radius: 28px; overflow: hidden;
  box-shadow: 0 24px 64px rgba(26,26,26,.1);
  border: 1px solid var(--home-border);
  max-width: 980px; margin: 0 auto;
}
.home-pricing-panel { padding: 40px 36px; }
.home-pricing-panel-dark {
  background: linear-gradient(160deg, #1a1410 0%, #2a2218 55%, #1f1812 100%);
  color: #fff; display: flex; flex-direction: column; align-items: flex-start;
}
.home-pricing-tier {
  display: block; font-size: 11px; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase;
}
.home-pricing-panel-dark .home-pricing-tier { color: var(--home-gold); margin-bottom: 16px; }
.home-pricing-panel-dark .home-price-xl { color: #fff; font-size: clamp(48px, 6vw, 64px); line-height: 1; margin: 0 0 10px; }
.home-pricing-panel-dark .home-price-xl small { color: rgba(255,255,255,.65); font-size: 18px; font-weight: 500; }
.home-pricing-panel-dark .home-pricing-alt { color: rgba(255,255,255,.72); margin: 0 0 24px; font-size: 15px; }
.home-pricing-cta { width: 100%; max-width: 280px; margin-bottom: 20px; }
.home-pricing-badges-dark {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px;
}
.home-pricing-badges-dark span {
  padding: 7px 14px; border-radius: 999px; font-size: 12px; font-weight: 600;
  background: rgba(255,255,255,.08); color: rgba(255,255,255,.88);
  border: 1px solid rgba(255,255,255,.12);
}
.home-pricing-note-dark {
  margin: 0; font-size: 13px; line-height: 1.55; color: rgba(255,255,255,.62);
  padding-top: 20px; border-top: 1px solid rgba(255,255,255,.1); width: 100%;
}
.home-pricing-note-dark strong { color: var(--home-gold); font-weight: 700; }
.home-pricing-panel-light {
  background: var(--home-surface); display: flex; flex-direction: column;
}
.home-pricing-includes-title {
  margin: 0 0 20px; font-size: 18px; font-weight: 800; color: var(--home-text);
}
.home-pricing-includes-list {
  list-style: none; padding: 0; margin: 0 0 24px; flex: 1;
  display: grid; gap: 10px;
}
.home-pricing-includes-list li {
  padding: 8px 0 8px 26px; position: relative; font-size: 15px; color: var(--home-muted); line-height: 1.45;
}
.home-pricing-includes-list li::before {
  content: "✓"; position: absolute; left: 0; color: var(--home-green); font-weight: 800; font-size: 14px;
}
.home-pricing-feature-box {
  padding: 18px 20px; border-radius: 16px;
  background: linear-gradient(135deg, rgba(197,157,95,.12), rgba(197,157,95,.06));
  border: 1px solid rgba(197,157,95,.22);
}
.home-pricing-feature-box strong { display: block; font-size: 15px; color: var(--home-gold-dark); margin-bottom: 4px; }
.home-pricing-feature-box span { font-size: 13px; color: var(--home-muted); line-height: 1.45; }
.home-section-pricing { background: var(--home-cream); }

/* "Tek plan" kartının altında, gerçek billing_packages verisiyle ilk 3 aktif paket */
.home-pricing-tiers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: stretch; }
.home-pricing-tier-card {
  position: relative;
  padding: 28px 24px;
  border-radius: 22px;
  background: var(--home-cream);
  border: 1px solid var(--home-border);
  box-shadow: 0 14px 40px rgba(0,0,0,.05);
  display: flex;
  flex-direction: column;
  transition: transform .2s ease, box-shadow .2s ease;
}
.home-pricing-tier-card:hover { transform: translateY(-3px); box-shadow: 0 20px 50px rgba(0,0,0,.08); }
.home-pricing-tier-card-featured {
  border-color: rgba(197,157,95,.4);
  background: linear-gradient(160deg, rgba(197,157,95,.1), var(--home-cream) 55%);
  box-shadow: 0 20px 54px rgba(197,157,95,.18);
  transform: scale(1.03);
}
.home-pricing-tier-card-featured:hover { transform: scale(1.03) translateY(-3px); }
.home-pricing-tier-badge {
  position: absolute; top: -12px; left: 50%; transform: translateX(-50%);
  padding: 5px 14px; border-radius: 999px;
  background: linear-gradient(135deg, #c5a059, #dbad52);
  color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .03em;
  white-space: nowrap;
  box-shadow: 0 8px 20px rgba(197,157,95,.35);
}
.home-pricing-tier-name { margin: 4px 0 10px; font-size: 18px; font-weight: 800; color: var(--home-text); }
.home-pricing-tier-price { font-size: 32px; font-weight: 800; color: var(--home-text); line-height: 1; }
.home-pricing-tier-price small { font-size: 14px; font-weight: 500; color: var(--home-muted); }
.home-pricing-tier-yearly { margin: 6px 0 18px; font-size: 13px; color: var(--home-muted); }
.home-pricing-tier-list { list-style: none; padding: 0; margin: 0 0 22px; flex: 1; display: grid; gap: 8px; }
.home-pricing-tier-list li { padding: 0 0 0 22px; position: relative; font-size: 13px; color: var(--home-muted); line-height: 1.5; }
.home-pricing-tier-list li::before { content: "✓"; position: absolute; left: 0; color: var(--home-green); font-weight: 800; font-size: 12px; }
.home-pricing-tier-cta {
  width: 100%; text-align: center; padding: 12px 16px; border-radius: 14px;
  border: 1px solid var(--home-border); background: var(--home-surface);
  color: var(--home-text); font-weight: 700; font-size: 14px; text-decoration: none;
  transition: transform .15s ease, border-color .15s ease;
}
.home-pricing-tier-cta:hover { transform: translateY(-1px); border-color: rgba(197,157,95,.4); }
.home-pricing-tier-card-featured .home-pricing-tier-cta {
  background: linear-gradient(135deg, #c5a059, #dbad52); color: #fff; border-color: transparent;
  box-shadow: 0 10px 26px rgba(197,157,95,.28);
}
@media (max-width: 1024px) {
  .home-pricing-tiers-grid { grid-template-columns: 1fr; max-width: 420px; margin: 0 auto; }
  .home-pricing-tier-card-featured { transform: none; }
  .home-pricing-tier-card-featured:hover { transform: translateY(-3px); }
}

.home-press-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.home-press-card {
  padding: 24px 20px; border-radius: 20px; background: var(--home-surface);
  border: 1px solid var(--home-border);
  box-shadow: 0 10px 32px rgba(0,0,0,.04);
  display: flex; flex-direction: column; gap: 12px;
}
.home-press-logo {
  font-size: 12px; font-weight: 800; letter-spacing: .08em; color: var(--home-gold-dark);
}
.home-press-card p { margin: 0; flex: 1; font-size: 14px; color: var(--home-muted); line-height: 1.55; }
.home-press-btn {
  align-self: flex-start; padding: 10px 16px; border-radius: 12px;
  border: 1px solid var(--home-border); background: var(--home-cream);
  font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; color: var(--home-text);
}

.home-final-cta {
  background: var(--home-cream);
  padding: clamp(56px, 7vw, 88px) 0 clamp(32px, 4vw, 48px);
  border-top: 1px solid var(--home-border);
}
.home-final-cta-inner { text-align: center; max-width: 720px; margin: 0 auto; }
.home-final-cta-inner h2 {
  font-size: clamp(28px, 4vw, 40px); margin: 0 0 14px; font-weight: 800; line-height: 1.1;
}
.home-final-cta-inner p {
  margin: 0 0 24px; font-size: 17px; color: var(--home-muted); line-height: 1.65;
}

.home-footer-link-btn {
  display: block; width: 100%; text-align: left;
  padding: 5px 0; border: none; background: none;
  color: var(--home-muted); font: inherit; font-size: 14px; cursor: pointer;
}
.home-footer-link-btn:hover { color: var(--home-gold-dark); }
.home-footer-legal {
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: 12px;
}
.home-footer-legal p { margin: 0; }
.home-footer-legal-links { display: flex; gap: 16px; }
.home-footer-legal-links .home-footer-link-btn { width: auto; }

@media (max-width: 1024px) {
  .home-system-grid { grid-template-columns: repeat(2, 1fr); }
  .home-pipeline, .home-pipeline-mock { grid-template-columns: 1fr; }
  .home-press-grid { grid-template-columns: 1fr; }
  .home-pricing-split { grid-template-columns: 1fr; }
  .home-pricing-panel { padding: 28px 22px; }
  .home-pricing-cta { max-width: none; }
  #gorsel-menu .home-split { grid-template-columns: 1fr; }
  .home-visual-compare { order: -1; }
  .home-loyalty-split .home-loyalty-stage { order: -1; min-height: 360px; }
  .home-loyalty-kpis { grid-template-columns: 1fr; }
  .home-loyalty-orbit-pill:nth-child(1) { top: 2%; left: 0; }
  .home-loyalty-orbit-pill:nth-child(2) { top: 8%; right: 0; }
  .home-loyalty-orbit-pill:nth-child(3) { bottom: 6%; left: 0; }
}
@media (max-width: 720px) {
  .home-system-grid { grid-template-columns: 1fr; }
  .home-metric-row { grid-template-columns: 1fr; }
  .home-visual-compare { grid-template-columns: 1fr; }
  .home-compare-arrow { transform: rotate(90deg); justify-self: center; }
  .home-split { grid-template-columns: 1fr; }
}

.panel-role-badge {
  margin: 8px 0 16px;
  padding: 6px 10px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .02em;
  color: var(--muted, #6b7280);
  background: rgba(0,0,0,.04);
}
.panel-role-badge-admin {
  color: #92400e;
  background: rgba(197,157,95,.15);
}

.panel-toast {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;
  max-width: min(360px, calc(100vw - 40px));
  padding: 12px 16px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 600;
  box-shadow: 0 12px 32px rgba(0,0,0,.18);
  background: #111827;
  color: #fff;
}
.panel-toast.is-error { background: #991b1b; }
.panel-toast.is-success { background: #065f46; }

.photo-upload-zone {
  border: 1.5px dashed rgba(0,0,0,.12);
  border-radius: 14px;
  padding: 12px;
  background: linear-gradient(180deg, rgba(197,157,95,.06), rgba(255,255,255,.8));
  transition: border-color .2s, background .2s;
  width: 100%;
}
.photo-upload-zone.is-dragover {
  border-color: #c59d5f;
  background: rgba(197,157,95,.12);
}
.photo-upload-zone.is-uploading { opacity: .7; pointer-events: none; }
.photo-upload-preview {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8f6f2, #efe8dc);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
  text-align: center;
  width: 100%;
}
.photo-upload-category .photo-upload-preview {
  aspect-ratio: 2 / 1;
  max-height: 260px;
  min-height: 120px;
}
.photo-upload-product .photo-upload-preview,
.photo-upload-item .photo-upload-preview {
  aspect-ratio: 4 / 3;
  max-height: 320px;
  min-height: 140px;
}
.photo-upload-zone--compact.photo-upload-category .photo-upload-preview {
  max-height: 140px;
  min-height: 100px;
}
.photo-upload-zone--compact.photo-upload-product .photo-upload-preview {
  max-height: 120px;
  min-height: 90px;
}
.photo-upload-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.photo-upload-empty .photo-upload-icon { font-size: 28px; opacity: .85; }
.photo-upload-empty strong { font-size: 14px; }
.photo-upload-empty .muted { font-size: 12px; }
.photo-upload-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.photo-upload-progress {
  height: 4px;
  background: rgba(0,0,0,.08);
  border-radius: 999px;
  overflow: hidden;
  margin-top: 8px;
}
.photo-upload-progress span {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #c59d5f, #e7c98e);
  transition: width .25s ease;
}
.photo-upload-hint { font-size: 12px; margin: 8px 0 0; color: #6b7280; }

/* Menü Yönetimi layout */
.menu-manager-header { margin-bottom: 20px; }
.menu-manager-title {
  margin: 0 0 6px;
  font-size: 24px;
  font-weight: 700;
  color: #1a1a1a;
}
.menu-manager-subtitle { margin: 0; font-size: 14px; }
.menu-manager {
  display: grid;
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
  gap: 24px;
  align-items: start;
  margin-bottom: 24px;
}
.menu-manager-card {
  padding: 22px !important;
  margin-bottom: 0;
}
.menu-manager-list-card { margin-top: 24px; }
.menu-manager-products-list { margin-top: 0; }
.menu-manager-card-head { margin-bottom: 18px; }
.menu-manager-card-head--row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
}
.menu-manager-card-head .card-title { margin-bottom: 6px; }
.menu-manager-card-desc { margin: 0; font-size: 13px; line-height: 1.45; }
.menu-manager-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(197,157,95,.14);
  color: #9a7a3c;
  font-size: 14px;
  font-weight: 700;
  flex-shrink: 0;
}
.menu-manager-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.menu-empty-state {
  padding: 24px 16px;
  text-align: center;
  border-radius: 14px;
  background: rgba(0,0,0,.02);
  border: 1px dashed rgba(26,26,26,.1);
}

/* Form system */
.panel-form--labeled {
  max-width: none;
  gap: 16px;
}
.form-field {
  display: grid;
  gap: 8px;
}
.form-field label {
  font-size: 13px;
  font-weight: 600;
  color: #374151;
}
.form-optional {
  font-weight: 500;
  color: #9ca3af;
}
.form-row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.form-actions {
  display: flex;
  gap: 10px;
  padding-top: 4px;
}
.form-field--checks { margin-top: -4px; }
.form-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: #6b7280;
}

.panel-app-premium .panel-form input,
.panel-app-premium .panel-form select,
.panel-app-premium .panel-form textarea {
  width: 100%;
  min-height: 44px;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid rgba(26,26,26,.12);
  background: #fff;
  color: #1a1a1a;
  font: inherit;
  transition: border-color .2s, box-shadow .2s;
}
.panel-app-premium .panel-form textarea {
  min-height: 96px;
  resize: vertical;
}
.panel-app-premium .panel-form input::placeholder,
.panel-app-premium .panel-form textarea::placeholder {
  color: #9ca3af;
}
.panel-app-premium .panel-form input:focus,
.panel-app-premium .panel-form select:focus,
.panel-app-premium .panel-form textarea:focus {
  outline: none;
  border-color: #c59d5f;
  box-shadow: 0 0 0 3px rgba(197,157,95,.15);
}
.panel-app-premium .panel-form input.is-error,
.panel-app-premium .panel-form select.is-error,
.panel-app-premium .panel-form textarea.is-error {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220,38,38,.12);
}

/* Kategori kartları */
.menu-category-grid {
  display: grid;
  gap: 16px;
}
.menu-category-card {
  display: grid;
  grid-template-columns: 148px minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid rgba(26,26,26,.08);
  background: #faf9f7;
  min-height: 168px;
}
.menu-category-card.is-inactive { opacity: .78; }
.menu-category-card-media { min-width: 0; }
.menu-category-card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}
.menu-category-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}
.menu-category-card-top h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  word-break: break-word;
}
.menu-category-card-meta {
  margin: 0;
  font-size: 13px;
  color: #6b7280;
}
.menu-category-card-edit {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}
.menu-category-card-edit input {
  min-height: 40px;
  padding: 8px 12px;
  border-radius: 10px;
  border: 1px solid rgba(26,26,26,.12);
  background: #fff;
  font: inherit;
}
.menu-category-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
}
.status-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.status-badge.is-active { background: #dcfce7; color: #166534; }
.status-badge.is-inactive { background: #fee2e2; color: #991b1b; }

/* Ürün listesi grid */
.menu-items-grid {
  display: grid;
  gap: 12px;
}
.menu-item-card-panel {
  border: 1px solid rgba(26,26,26,.08);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
}
.menu-item-card-panel.is-archived { opacity: .75; }
.menu-item-card-panel summary {
  list-style: none;
  cursor: pointer;
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
}
.menu-item-card-panel summary::-webkit-details-marker { display: none; }
.menu-item-card-panel summary .item-preview-thumb,
.menu-item-card-panel summary .item-preview-illus {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  object-fit: cover;
}
.menu-item-card-panel summary .item-preview-illus { display: block; }
.menu-item-card-panel .item-summary-main strong {
  display: block;
  font-size: 15px;
  margin-bottom: 4px;
}
.menu-item-card-panel .item-summary-main span {
  font-size: 13px;
  color: #6b7280;
}
.menu-item-card-panel .item-edit-form {
  padding: 0 16px 16px;
  border-top: 1px solid rgba(26,26,26,.06);
  margin-top: 0;
  padding-top: 16px;
  max-width: none;
  gap: 14px;
}
.menu-item-card-panel .item-edit-form .photo-upload-zone {
  margin-bottom: 4px;
}

@media (max-width: 720px) {
  .menu-category-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .menu-category-card-edit {
    grid-template-columns: 1fr;
  }
  .menu-item-card-panel summary {
    grid-template-columns: 48px 1fr;
  }
  .panel-app-premium .panel-content { padding: 20px 16px; }
  .menu-manager-card { padding: 18px !important; }
}

.menu-ref-cat-photo,
.menu-dark-cat-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}
.menu-dark-cat-visual.has-photo,
.menu-ref-cat-icon.has-photo { background: transparent; }

.panel-side .logo { margin-bottom: 24px; flex-shrink: 0; }

.impersonation-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 14px 18px;
  margin-bottom: 20px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(197,157,95,.16), rgba(255,255,255,.9));
  border: 1px solid rgba(197,157,95,.35);
}
.impersonation-bar-text strong { display: block; margin-bottom: 4px; }
.impersonation-bar-text .muted { font-size: 13px; }

.admin-quick-card { cursor: pointer; position: relative; }
.admin-quick-card .admin-quick-btn { margin-top: 12px; }
.admin-ai-credit-summary { display: flex; flex-wrap: wrap; gap: 12px; margin: 12px 0; }
.admin-ai-credit-summary > div {
  flex: 1 1 110px;
  padding: 12px 14px;
  border-radius: 10px;
  background: rgba(26,26,26,.04);
  text-align: center;
}
.admin-ai-credit-summary strong { display: block; font-size: 20px; }
.admin-ai-credit-summary .muted { font-size: 12px; }
.admin-inline-input {
  border: 1px solid rgba(26,26,26,.15);
  border-radius: 6px;
  padding: 4px 6px;
  font-size: 14px;
}
.admin-inline-toggle { display: flex; align-items: center; gap: 6px; font-size: 13px; white-space: nowrap; }
.admin-table-wrap { overflow-x: auto; }

.admin-changelog-day { margin-bottom: 22px; }
.admin-changelog-day:last-child { margin-bottom: 0; }
.admin-changelog-day-title {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #9a7a3c;
  border-bottom: 1px solid rgba(26,26,26,.08);
  padding-bottom: 6px;
}
.admin-changelog-entry {
  padding: 10px 0;
  border-bottom: 1px solid rgba(26,26,26,.05);
}
.admin-changelog-entry:last-child { border-bottom: none; }
.admin-changelog-entry-head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.admin-changelog-entry-desc { margin: 4px 0 0; font-size: 13px; }
.admin-changelog-entry-meta { display: block; margin-top: 4px; font-size: 11px; }
.admin-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.admin-table th,
.admin-table td {
  padding: 12px 10px;
  border-bottom: 1px solid rgba(26,26,26,.08);
  text-align: left;
  vertical-align: middle;
}
.admin-table th { font-size: 12px; color: #6b7280; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.admin-actions { display: flex; flex-wrap: wrap; gap: 6px; }

.admin-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.4);
  z-index: 10000;
}
.admin-modal {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10001;
  width: min(640px, calc(100vw - 32px));
  max-height: calc(100vh - 40px);
  overflow: auto;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 24px 64px rgba(0,0,0,.2);
}
.admin-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(26,26,26,.08);
}
.admin-modal-head h3 { margin: 0; font-size: 18px; }
.admin-modal-close {
  border: none;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: #6b7280;
}
.admin-modal-body { padding: 20px; }
.password-field-row {
  display: flex;
  gap: 8px;
  align-items: center;
}
.password-field-row input { flex: 1; }

/* ===== Responsive Full System ===== */
:root {
  --bp-sm: 480px;
  --bp-md: 640px;
  --bp-tablet: 768px;
  --bp-panel: 1024px;
  --bp-lg: 1280px;
  --z-drawer-backdrop: 999;
  --z-drawer: 1000;
  --z-modal-backdrop: 10000;
  --z-modal: 10001;
  --z-toast: 10050;
}

html { overflow-x: clip; }
body.panel-app,
body.landing-page,
body.menu-page,
body.auth-page { overflow-x: clip; max-width: 100vw; }
body.panel-drawer-open,
body.home-nav-open { overflow: hidden; }

.panel-sidebar-backdrop { z-index: var(--z-drawer-backdrop); }
.panel-side { z-index: var(--z-drawer); }
.admin-modal-backdrop { z-index: var(--z-modal-backdrop); }
.admin-modal { z-index: var(--z-modal); }
.panel-toast { z-index: var(--z-toast); }

.panel-sidebar-toggle:focus-visible {
  outline: 2px solid #c59d5f;
  outline-offset: 2px;
}
.panel-nav button,
.panel-nav a,
.btn,
.home-nav-toggle {
  min-height: 44px;
}

@media (min-width: 1025px) {
  .panel-layout { grid-template-columns: 240px 1fr; }
  .panel-side {
    position: sticky;
    transform: none !important;
    box-shadow: none;
  }
  .panel-sidebar-toggle { display: none !important; }
  .panel-sidebar-backdrop[hidden] { display: none !important; }
}

@media (max-width: 1024px) {
  .panel-content { padding: 20px 16px; }
  .panel-top h1 { font-size: 22px; }
  .impersonation-bar {
    flex-direction: column;
    align-items: stretch;
  }
  .impersonation-bar .btn { width: 100%; }
}

@media (min-width: 640px) and (max-width: 1024px) {
  .metric-grid,
  .metric-grid-premium { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.table-scroll-desktop {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.orders-cards { display: none; gap: 14px; }
.responsive-card {
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(26,26,26,.1);
  background: #fff;
}
.responsive-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.responsive-card-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 12px;
}
.responsive-card-meta div { min-width: 0; }
.responsive-card-meta dt {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #6b7280;
  margin: 0 0 2px;
}
.responsive-card-meta dd { margin: 0; font-weight: 600; font-size: 14px; }
.order-card-status-label {
  display: block;
  margin-top: 12px;
  font-size: 13px;
  font-weight: 600;
}
.order-card-status-label select { margin-top: 6px; }
.order-detail-meta,
.order-card-note { margin: 8px 0 0; font-size: 13px; }

@media (max-width: 768px) {
  .orders-table-wrap { display: none !important; }
  .orders-cards { display: grid; }
  .responsive-card-meta { grid-template-columns: 1fr 1fr; }

  .responsive-table thead { display: none; }
  .responsive-table tbody tr {
    display: block;
    margin-bottom: 14px;
    padding: 14px;
    border: 1px solid rgba(26,26,26,.1);
    border-radius: 14px;
    background: #fff;
  }
  .responsive-table tbody td {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 0;
    border: none;
    text-align: right;
  }
  .responsive-table tbody td::before {
    content: attr(data-label);
    font-weight: 700;
    font-size: 12px;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: .03em;
    flex-shrink: 0;
    text-align: left;
  }
  .responsive-table tbody td[data-label="İşlemler"] {
    flex-direction: column;
    align-items: stretch;
  }
  .responsive-table tbody td[data-label="İşlemler"]::before { margin-bottom: 4px; }
  .admin-actions { flex-direction: column; }
  .admin-actions .btn { width: 100%; justify-content: center; }

  .admin-modal,
  .menu-modal,
  .qr-modal-inner {
    width: min(640px, 95vw) !important;
    max-height: min(90vh, calc(100dvh - 24px));
  }
  .panel-top h1 { font-size: 20px; }
  .auth-page .auth-card { width: auto; margin: 16px; padding: 24px 20px; }
}

@media (max-width: 480px) {
  .responsive-card-meta { grid-template-columns: 1fr; }
  .panel-content { padding: 16px 12px; }
  .card { padding: 16px; }
}

.integration-status-card { margin-top: 16px; }
.integration-status-title { margin-top: 0; margin-bottom: 0; }
.integration-status-summary { margin-top: 12px; }
.integration-status-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 0;
  font-size: 15px;
}
.integration-status-text { font-weight: 600; color: #1a1a1a; }
.integration-status-badge {
  font-size: 13px;
  font-weight: 700;
  padding: 6px 14px;
}
.integration-status-badge.is-inactive {
  background: #f3f4f6;
  color: #6b7280;
  border: 1px solid #e5e7eb;
}

@media (min-width: 1280px) {
  .menu-manager { grid-template-columns: 55fr 45fr; }
  .panel-content { padding: 32px; }
}

@media (min-width: 1440px) {
  .panel-layout { max-width: 100%; }
  .home-container { max-width: 1200px; }
}

@media (min-width: 1920px) {
  .panel-content { padding: 36px 40px; }
}

/* ===== Customer menu premium header ===== */
.menu-customer-header {
  position: sticky;
  top: 0;
  z-index: 45;
  background: var(--dm-shell, #071710);
  transition: box-shadow .25s ease;
  overflow-anchor: none;
}
/* Bu gölge önceden header'ın (üst bilgi barı) hemen altına düşüyordu — ama
   kategori sekmeleri barı (.menu-cat-detail-toolbar) tam da orada, header'a
   bitişik duruyor; gölge iki bar arasında istenmeyen bir çizgi/kenar gibi
   görünüyordu. Gölge artık gerçek "kayan içerik" sınırında, sekmeler
   barının ALT kenarında (bkz. .menu-cat-detail-toolbar box-shadow). */
.menu-customer-hero {
  position: relative;
  min-height: 200px;
  padding: 20px 16px 12px;
  overflow: hidden;
  transition: min-height .28s ease, padding .28s ease;
}
.menu-customer-hero-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, var(--dm-hero-glow) 0%, transparent 70%),
    linear-gradient(180deg, var(--dm-hero-top) 0%, var(--dm-shell, #071710) 100%);
  pointer-events: none;
}
.menu-customer-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  backdrop-filter: blur(1px);
  opacity: .4;
}
.menu-customer-hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: flex-direction .28s steps(1, end), align-items .28s steps(1, end);
}
.menu-customer-logo-shell {
  width: 108px;
  height: 108px;
  flex-shrink: 0;
  transition: width .28s ease, height .28s ease;
}
.menu-customer-logo,
.restaurant-logo {
  width: 108px;
  height: 108px;
  aspect-ratio: 1;
  max-width: 120px;
  max-height: 120px;
  border-radius: 50%;
  border: 3px solid rgba(255,255,255,.88);
  box-shadow: 0 14px 36px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.2);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
  display: grid;
  place-items: center;
  transition: width .28s ease, height .28s ease, border-width .28s ease;
}
.menu-customer-logo img,
.restaurant-logo img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.menu-customer-logo.has-image,
.restaurant-logo.has-image {
  background: rgba(7,23,16,.35);
}
.menu-customer-logo-placeholder,
.restaurant-logo-placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
  color: var(--dm-accent, #d8a943);
  background: linear-gradient(145deg, #163528 0%, #245a42 100%);
}
.menu-customer-name {
  margin: 14px 0 0;
  font-size: clamp(17px, 4.5vw, 22px);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--dm-text, #f4f7f2);
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: font-size .28s ease, margin .28s ease;
}
.menu-customer-meta {
  margin-top: 10px;
  min-height: 22px;
  max-height: 48px;
  overflow: hidden;
  transition: opacity .25s ease, max-height .28s ease, margin .28s ease;
}
.menu-customer-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--dm-muted, #9fb1a7);
}
.menu-customer-meta-dot { opacity: .55; font-size: 11px; }
.menu-customer-meta-item.is-open,
.menu-customer-meta-item.is-closed {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.4;
}
.menu-customer-meta-item.is-open {
  color: #d3fce3;
  background: linear-gradient(135deg, rgba(34,197,94,.22), rgba(34,197,94,.08));
  border: 1px solid rgba(134,239,172,.35);
  box-shadow: 0 2px 10px rgba(34,197,94,.18);
}
.menu-customer-meta-item.is-open::before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #22c55e;
  margin-right: 6px;
  vertical-align: middle;
  box-shadow: 0 0 8px rgba(34,197,94,.6);
}
.menu-customer-meta-item.is-closed {
  color: #ffd9d9;
  background: linear-gradient(135deg, rgba(239,68,68,.22), rgba(239,68,68,.08));
  border: 1px solid rgba(252,165,165,.35);
  box-shadow: 0 2px 10px rgba(239,68,68,.16);
}
.menu-customer-meta-item.is-closed::before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ef4444;
  margin-right: 6px;
  vertical-align: middle;
  box-shadow: 0 0 8px rgba(239,68,68,.5);
}
.menu-orders-sheet-notice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  margin-bottom: 14px;
  border-radius: 14px;
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(248, 113, 113, 0.32);
  color: #fecaca;
  font-size: 13px;
  line-height: 1.45;
}
.menu-orders-sheet-notice strong {
  display: block;
  color: #fca5a5;
  margin-bottom: 4px;
}
.menu-orders-sheet-notice p {
  margin: 0;
  opacity: .95;
}
.menu-orders-sheet-notice-icon {
  font-size: 22px;
  line-height: 1;
  flex-shrink: 0;
}
.menu-dark-primary-btn.is-disabled,
.menu-dark-primary-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}
.menu-customer-meta-item.is-rating { color: var(--dm-accent, #d8a943); }
.menu-customer-meta-item.is-time::before { content: '🕒 '; }
.menu-customer-search-sticky {
  padding: 0 14px 12px;
  background: linear-gradient(180deg, transparent 0%, var(--dm-shell, #071710) 24%);
}
.menu-customer-search-wrap {
  position: relative;
  margin: 0;
}
.menu-customer-search-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(244,247,242,.55);
  pointer-events: none;
  display: grid;
  place-items: center;
}
.menu-customer-search.menu-dark-search,
.menu-customer-search.menu-ref-search {
  width: 100%;
  min-height: 56px;
  padding: 14px 44px 14px 48px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.08);
  background: var(--dm-search, #1f5b42);
  color: var(--dm-text, #f4f7f2);
  font-size: 15px;
  box-shadow: 0 8px 24px rgba(0,0,0,.22);
  box-sizing: border-box;
  background-image: none;
}
.menu-customer-search:focus {
  outline: none;
  box-shadow: 0 8px 24px rgba(0,0,0,.22), 0 0 0 3px rgba(31,91,66,.45);
}
.menu-customer-search-clear {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
  color: var(--dm-text, #f4f7f2);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.menu-customer-search-clear:focus-visible {
  outline: 2px solid var(--dm-accent, #d8a943);
  outline-offset: 2px;
}
.menu-customer-header.is-compact .menu-customer-hero {
  min-height: 0;
  padding: 10px 14px 8px;
}
.menu-customer-header.is-compact .menu-customer-hero-inner {
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 12px;
}
.menu-customer-header.is-compact .menu-customer-logo-shell,
.menu-customer-header.is-compact .menu-customer-logo,
.menu-customer-header.is-compact .restaurant-logo {
  width: 52px;
  height: 52px;
  max-width: 52px;
  max-height: 52px;
}
.menu-customer-header.is-compact .menu-customer-logo,
.menu-customer-header.is-compact .restaurant-logo {
  border-width: 2px;
}
.menu-customer-header.is-compact .menu-customer-logo-placeholder,
.menu-customer-header.is-compact .restaurant-logo-placeholder {
  font-size: 22px;
}
.menu-customer-header.is-compact .menu-customer-name {
  margin: 0;
  font-size: 14px;
  letter-spacing: .06em;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
}
.menu-customer-header.is-compact .menu-customer-meta {
  opacity: 1;
  max-height: none;
  margin-top: 0;
  overflow: visible;
  visibility: visible;
  pointer-events: auto;
  flex: none;
  width: auto;
}
.menu-customer-header.is-compact .menu-customer-meta-row {
  flex-wrap: nowrap;
  gap: 4px;
  justify-content: flex-end;
}
.menu-customer-header.is-compact .menu-customer-meta-item {
  white-space: nowrap;
  padding: 3px 8px 3px 7px;
  font-size: 10px;
}
.menu-customer-header.is-compact .menu-customer-meta-item.is-rating,
.menu-customer-header.is-compact .menu-customer-meta-item.is-time,
.menu-customer-header.is-compact .menu-customer-meta-item.is-min,
.menu-customer-header.is-compact .menu-customer-meta-dot {
  display: none;
}
/* Gel-Al/Paket rozetleri ve masa rozeti, tam boyutlarıyla kompaktken isim
   genişliğini sıfıra düşürüp metni bozuyordu (bkz. "I I" görünümü) —
   kompaktken küçültülmüş halde gösterilir, isim tek satırda okunur kalır. */
.menu-customer-header.is-compact .menu-customer-fulfillment-badges,
.menu-customer-header.is-compact #menu-customer-table-badge {
  display: flex;
  flex: none;
  margin: 0;
  gap: 5px;
}
.menu-customer-header.is-compact .menu-customer-table-badge {
  padding: 3px 9px;
  font-size: 11px;
  gap: 5px;
  white-space: nowrap;
}
.menu-customer-header.is-compact .menu-customer-table-badge svg {
  width: 11px;
  height: 11px;
}
.menu-customer-header.is-compact .menu-customer-search-sticky {
  padding-top: 0;
  padding-bottom: 10px;
}
.menu-dark-main { padding-top: 0; }
.menu-dark-main > .menu-ref-search-wrap { display: none; }

@media (max-width: 480px) {
  .menu-customer-hero { min-height: 188px; padding-top: 16px; }
  .menu-customer-logo-shell,
  .menu-customer-logo,
  .restaurant-logo {
    width: 96px;
    height: 96px;
    max-width: 96px;
    max-height: 96px;
  }
  .menu-customer-logo-placeholder,
  .restaurant-logo-placeholder { font-size: 36px; }
}

@media (min-width: 481px) and (max-width: 767px) {
  .menu-customer-logo-shell,
  .menu-customer-logo,
  .restaurant-logo {
    width: 108px;
    height: 108px;
    max-width: 108px;
    max-height: 108px;
  }
}

@media (min-width: 768px) {
  .menu-customer-hero { min-height: 220px; padding-top: 24px; }
  .menu-customer-logo-shell,
  .menu-customer-logo,
  .restaurant-logo {
    width: 120px;
    height: 120px;
    max-width: 120px;
    max-height: 120px;
  }
  .menu-customer-logo-placeholder,
  .restaurant-logo-placeholder { font-size: 46px; }
}

@media (prefers-reduced-motion: reduce) {
  .menu-customer-header,
  .menu-customer-hero,
  .menu-customer-hero-inner,
  .menu-customer-logo-shell,
  .menu-customer-logo,
  .menu-customer-name,
  .menu-customer-meta {
    transition: none !important;
  }
}

/* Menü Asistanı — compact creative */
#tab-assistant { margin-top: -8px; }

.assistant-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 12px;
  align-items: stretch;
  max-height: calc(100vh - 140px);
}

.assistant-chat-card {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 420px;
  max-height: calc(100vh - 140px);
  position: relative;
}

/* Panel asistan — sohbet görünümü (landing home-wa-window ile uyumlu) */
#tab-assistant {
  --wa-green: #25d366;
  --wa-green-dark: #075e54;
  --wa-chat-bg: #e5ddd5;
  --wa-out-bg: #dcf8c6;
}

.assistant-chat-card.home-wa-window {
  border: 1px solid rgba(26, 26, 26, .08);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 48px rgba(26, 26, 26, .08);
}

.assistant-chat-card.home-wa-window::before { display: none; }

#tab-assistant .home-wa-window-head {
  background: linear-gradient(135deg, var(--wa-green-dark), #0a4a42);
  color: #fff;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-right: 14px;
}

.home-wa-window-head-main {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.assistant-api-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .28);
  background: rgba(255, 255, 255, .12);
  color: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
  cursor: pointer;
  transition: background .15s, border-color .15s, transform .12s;
  backdrop-filter: blur(6px);
}

.assistant-api-pill:hover {
  background: rgba(255, 255, 255, .2);
  border-color: rgba(255, 255, 255, .4);
}

.assistant-api-pill[aria-expanded="true"] {
  background: rgba(197, 157, 95, .28);
  border-color: rgba(212, 176, 106, .55);
}

.assistant-api-pill-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .65);
  flex-shrink: 0;
}

.assistant-api-pill.is-global .assistant-api-pill-dot { background: #7dd3fc; box-shadow: 0 0 0 2px rgba(125, 211, 252, .35); }
.assistant-api-pill.is-own .assistant-api-pill-dot { background: #86efac; box-shadow: 0 0 0 2px rgba(134, 239, 172, .35); }
.assistant-api-pill.is-missing .assistant-api-pill-dot { background: #fcd34d; box-shadow: 0 0 0 2px rgba(252, 211, 77, .35); }

.assistant-api-drawer {
  flex-shrink: 0;
  max-height: 0;
  overflow: hidden;
  background: linear-gradient(180deg, #faf8f5 0%, #fff 100%);
  border-bottom: 1px solid transparent;
  transition: max-height .28s ease, border-color .2s;
}

.assistant-api-drawer.is-open {
  max-height: 520px;
  border-bottom-color: rgba(197, 157, 95, .35);
  overflow-y: auto;
}

.assistant-api-drawer .assistant-key-body {
  padding: 14px 16px 16px;
}

#tab-assistant .home-wa-dot-lg {
  background: var(--wa-green);
  box-shadow: 0 0 0 4px rgba(37, 211, 102, .2);
}

#tab-assistant .home-wa-window-head strong { font-size: 14px; }
#tab-assistant .home-wa-window-head span { font-size: 12px; opacity: .88; }

.assistant-stage.home-wa-window-body {
  flex: 1;
  min-height: 0;
  padding: 16px;
  background: var(--wa-chat-bg);
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow-y: auto;
  min-height: 280px;
}

.assistant-chat-messages {
  flex: 1;
  min-height: 120px;
  overflow-y: auto;
  display: grid;
  gap: 8px;
  align-content: start;
  background: transparent;
  padding: 0;
}

#tab-assistant .home-wa-msg {
  max-width: 88%;
  padding: 11px 14px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.48;
}

#tab-assistant .home-wa-msg.out {
  margin-left: auto;
  background: var(--wa-out-bg);
  border-radius: 14px 14px 4px 14px;
}

#tab-assistant .home-wa-msg.in {
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
  border-radius: 14px 14px 14px 4px;
}

#tab-assistant .home-wa-msg.ok { border-left: 3px solid var(--wa-green); }
#tab-assistant .home-wa-msg.error { border-left: 3px solid #ef4444; }

.assistant-bubble--welcome,
#tab-assistant .assistant-bubble--welcome {
  max-width: 100%;
  font-size: 12px;
  color: #4b5563;
  background: #fff;
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
}

.assistant-inline-prompt {
  border: none;
  background: rgba(37, 211, 102, .14);
  color: #0a4a42;
  font: inherit;
  font-weight: 600;
  font-style: italic;
  padding: 1px 6px;
  border-radius: 6px;
  cursor: pointer;
  transition: background .15s;
}
.assistant-inline-prompt:hover {
  background: rgba(37, 211, 102, .24);
}

.assistant-typing {
  padding: 0;
}
.assistant-typing-bubble {
  display: inline-flex;
  align-items: center;
  padding: 10px 14px !important;
  max-width: 64px !important;
}
.assistant-typing-dots {
  display: inline-flex;
  gap: 4px;
}
.assistant-typing-dots i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9ca3af;
  animation: assistant-dot 1.2s ease infinite;
}
.assistant-typing-dots i:nth-child(2) { animation-delay: .15s; }
.assistant-typing-dots i:nth-child(3) { animation-delay: .3s; }
@keyframes assistant-dot {
  0%, 60%, 100% { transform: translateY(0); opacity: .4; }
  30% { transform: translateY(-3px); opacity: 1; }
}

#assistant-preview.home-wa-msg {
  margin-right: auto;
}

.assistant-preview-list {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  font-size: 12px;
}
.assistant-preview-list li {
  padding: 6px 8px;
  border-radius: 8px;
  background: rgba(229, 221, 213, .45);
  margin-bottom: 4px;
}
.assistant-preview-confirm {
  margin: 8px 0 0;
  font-size: 13px;
  font-weight: 600;
  color: #374151;
}

.assistant-suggestions {
  margin: 6px 0 0;
  padding-left: 16px;
  font-size: 12px;
}

#tab-assistant .home-wa-actions {
  display: flex;
  gap: 8px;
  margin-top: 2px;
  flex-shrink: 0;
}

#tab-assistant .home-wa-action-btn {
  flex: 1;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, transform .15s;
}
#tab-assistant .home-wa-action-btn:hover {
  background: #f9fafb;
  transform: translateY(-1px);
}
#tab-assistant .home-wa-action-btn.primary {
  background: var(--wa-green);
  color: #fff;
  border-color: var(--wa-green);
}
#tab-assistant .home-wa-action-btn.primary:hover {
  background: #20bd5a;
}

.assistant-compose--wa {
  flex-shrink: 0;
  padding: 10px 12px 12px;
  border-top: 1px solid rgba(26, 26, 26, .06);
  background: #f0f2f5;
}
.assistant-quick-chips {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 8px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.assistant-quick-chips::-webkit-scrollbar { display: none; }
.assistant-chip {
  flex-shrink: 0;
  border: 1px solid rgba(37, 211, 102, .25);
  background: #fff;
  color: #0a4a42;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, transform .15s;
}
.assistant-chip:hover {
  background: rgba(37, 211, 102, .1);
  transform: translateY(-1px);
}
.assistant-compose-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}
.assistant-compose-row textarea {
  flex: 1;
  min-width: 0;
  resize: none;
  min-height: 38px;
  max-height: 96px;
  padding: 9px 12px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  font: inherit;
  font-size: 13px;
  line-height: 1.4;
  transition: border-color .15s, box-shadow .15s;
}
.assistant-compose-row textarea:focus {
  outline: none;
  border-color: rgba(37, 211, 102, .45);
  box-shadow: 0 0 0 3px rgba(37, 211, 102, .12);
}
.assistant-icon-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 18px;
  flex-shrink: 0;
  transition: background .15s;
}
.assistant-icon-btn:hover { background: rgba(0, 0, 0, .06); }
.assistant-send-fab {
  width: 42px;
  height: 42px;
  border: none;
  border-radius: 50%;
  background: var(--wa-green, #25d366);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(37, 211, 102, .35);
  transition: transform .15s, background .15s;
}
.assistant-send-fab:hover {
  transform: scale(1.04);
  background: #20bd5a;
}
.assistant-send-fab:disabled {
  opacity: .55;
  cursor: not-allowed;
  transform: none;
}
.assistant-image-chip {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid rgba(197, 157, 95, .2);
  flex-shrink: 0;
}
.assistant-image-chip[hidden] {
  display: none;
}
.assistant-image-chip img {
  width: 32px;
  height: 32px;
  object-fit: cover;
  border-radius: 6px;
}
.assistant-image-remove {
  border: none;
  background: transparent;
  cursor: pointer;
  color: #9ca3af;
  font-size: 16px;
  line-height: 1;
  padding: 0 2px;
}
.assistant-preview-thumb {
  width: 44px;
  height: 44px;
  object-fit: cover;
  border-radius: 6px;
}

/* Right rail */
.assistant-rail {
  display: flex;
  flex-direction: column;
  min-height: 420px;
  max-height: calc(100vh - 140px);
  border-radius: 16px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .05);
}
.assistant-rail-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-bottom: 1px solid rgba(26, 26, 26, .06);
  flex-shrink: 0;
}
.assistant-rail-tab {
  padding: 10px 8px;
  border: none;
  background: #faf8f5;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  color: #6b7280;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.assistant-rail-tab.active {
  background: #fff;
  color: #9a7a3c;
  box-shadow: inset 0 -2px 0 #c59d5f;
}
.assistant-rail-panel {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 10px 12px 12px;
  overflow: hidden;
}
.assistant-rail-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #9ca3af;
  margin-bottom: 8px;
  flex-shrink: 0;
}
.assistant-rail-refresh {
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 14px;
  color: #6b7280;
  padding: 2px 6px;
  border-radius: 6px;
}
.assistant-rail-refresh:hover { background: rgba(0, 0, 0, .04); }
.assistant-history-list {
  flex: 1;
  overflow-y: auto;
  display: grid;
  gap: 6px;
  align-content: start;
}
.assistant-history-item {
  padding: 8px 10px;
  border-radius: 10px;
  background: #faf8f5;
  border: 1px solid rgba(26, 26, 26, .05);
  font-size: 12px;
}
.assistant-history-item-main {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4px;
}
.assistant-history-item-main span:first-child {
  flex: 1;
  min-width: 0;
  line-height: 1.35;
}
.assistant-history-item time {
  font-size: 10px;
  color: #9ca3af;
}
.assistant-power-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.assistant-power {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 10px 6px;
  border-radius: 12px;
  background: #faf8f5;
  border: 1px solid rgba(26, 26, 26, .05);
  font-size: 18px;
  transition: transform .15s, border-color .15s;
}
.assistant-power:hover {
  transform: translateY(-2px);
  border-color: rgba(197, 157, 95, .3);
}
.assistant-power small {
  font-size: 10px;
  font-weight: 600;
  color: #6b7280;
}
.assistant-rail-tip {
  margin: 12px 0 0;
  font-size: 11px;
  color: #9ca3af;
  line-height: 1.4;
}

.assistant-key-intro {
  font-size: 12px;
  line-height: 1.45;
  margin: 0 0 12px;
}
.assistant-key-option {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 1.4;
  cursor: pointer;
}
.assistant-key-option input { margin-top: 3px; flex-shrink: 0; }
.assistant-key-option em { font-style: normal; color: #9ca3af; font-size: 11px; }
.assistant-key-own { margin-top: 4px; }
.assistant-key-warn {
  background: rgba(197, 157, 95, .08);
  border: 1px solid rgba(197, 157, 95, .32);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 11px;
  line-height: 1.45;
  color: #7a5c28;
  margin-bottom: 12px;
}
.assistant-key-warn ul {
  margin: 6px 0 0;
  padding-left: 1.1rem;
}
.assistant-key-warn li { margin-bottom: 4px; }
.assistant-key-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

@media (max-width: 900px) {
  .assistant-shell {
    grid-template-columns: 1fr;
    max-height: none;
  }
  .assistant-chat-card,
  .assistant-rail {
    max-height: none;
  }
  .assistant-rail {
    min-height: 200px;
  }
  .assistant-history-list {
    max-height: 200px;
  }
}
@media (max-width: 520px) {
  #tab-assistant .home-wa-action-btn {
    padding: 9px 10px;
    font-size: 12px;
  }
  .assistant-api-pill {
    padding: 5px 9px;
    font-size: 10px;
  }
  #tab-assistant .home-wa-window-head {
    padding-right: 10px;
    gap: 8px;
  }
}

/* Panel — Fotoğraftan Menü (landing #fotograf-menu ile uyumlu) */
#tab-menu-photo {
  --mp-gold: #c59d5f;
  --mp-gold-dark: #9a7a3c;
  --mp-gold-glow: rgba(197, 157, 95, 0.32);
  --mp-muted: #666666;
  --mp-border: rgba(26, 26, 26, 0.07);
}

.menu-photo-shell {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 4px 24px;
}

.menu-photo-hero {
  text-align: center;
  margin-bottom: 28px;
}

.menu-photo-label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--mp-gold);
  margin-bottom: 10px;
}

.menu-photo-title {
  font-size: clamp(24px, 4vw, 36px);
  line-height: 1.12;
  letter-spacing: -.03em;
  margin: 0 0 12px;
  font-weight: 800;
  color: #1a1a1a;
}

.menu-photo-title em {
  font-style: normal;
  color: var(--mp-gold-dark);
}

.menu-photo-desc {
  margin: 0 auto;
  max-width: 620px;
  font-size: 15px;
  line-height: 1.58;
  color: var(--mp-muted);
}

.menu-photo-pipeline {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 24px;
}

.menu-photo-pipeline-step {
  padding: 18px 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--mp-border);
  text-align: center;
  box-shadow: 0 8px 28px rgba(10, 14, 20, .04);
}

.menu-photo-pipeline-step span {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--mp-gold), #dbad52);
  color: #fff;
  font-weight: 800;
  margin-bottom: 10px;
}

.menu-photo-pipeline-step strong {
  display: block;
  font-size: 15px;
  margin-bottom: 6px;
}

.menu-photo-pipeline-step p {
  margin: 0;
  font-size: 13px;
  color: var(--mp-muted);
}

.menu-photo-pipeline-ai {
  border-color: rgba(197, 157, 95, .3);
  box-shadow: 0 12px 32px var(--mp-gold-glow);
}

.menu-photo-mock {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  align-items: stretch;
}

.menu-photo-panel {
  min-height: 240px;
  padding: 16px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--mp-border);
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 32px rgba(10, 14, 20, .05);
  display: flex;
  flex-direction: column;
}

.menu-photo-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mp-gold);
  margin-bottom: 12px;
}

.menu-photo-panel-upload .photo-upload-zone {
  border: none;
  padding: 0;
  background: transparent;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.menu-photo-panel-upload .menu-photo-doc.photo-upload-empty {
  min-height: 140px;
  border-radius: 12px;
  background: linear-gradient(145deg, #f0ebe3, #e8dfd4);
  border: 1px dashed rgba(26, 26, 26, .15);
}

.menu-photo-panel-upload .photo-upload-preview:not(.photo-upload-empty) {
  min-height: 140px;
  background: #faf8f4;
}

.menu-photo-panel-ai {
  background: linear-gradient(145deg, #fff9ee, #fff);
  align-items: center;
  justify-content: center;
  text-align: center;
}

.menu-photo-sparkle {
  font-size: 48px;
  color: var(--mp-gold);
  line-height: 1;
  margin: 8px 0 12px;
  opacity: .55;
  transition: opacity .2s, transform .2s;
}

.menu-photo-panel-ai.is-busy .menu-photo-sparkle {
  opacity: 1;
  animation: menu-photo-sparkle 2s ease-in-out infinite;
}

@keyframes menu-photo-sparkle {
  0%, 100% { opacity: .6; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

.menu-photo-panel-ai .menu-photo-status {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  max-width: 220px;
}

.menu-photo-panel-result {
  min-height: 240px;
}

.menu-photo-summary {
  margin: 0 0 10px;
  font-size: 13px;
}

.menu-photo-menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
  flex: 1;
}

.menu-photo-menu-list li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: flex-start;
  padding: 10px 12px;
  border-radius: 12px;
  background: #faf8f4;
  font-size: 13px;
}

.menu-photo-menu-list b {
  font-size: 10px;
  color: var(--mp-gold);
  font-weight: 700;
}

.menu-photo-menu-list em {
  font-style: normal;
  font-weight: 700;
  color: var(--mp-gold-dark);
  white-space: nowrap;
}

.menu-photo-menu-list--demo {
  opacity: .92;
}

.menu-photo-hint {
  margin: 10px 0 0;
  font-size: 12px;
}

.menu-photo-status {
  padding: 8px 10px;
  border-radius: 10px;
  font-size: 13px;
}

.menu-photo-status.is-ready {
  background: #ecfdf5;
  color: #166534;
}

.menu-photo-status.is-error {
  background: #fef2f2;
  color: #991b1b;
}

.menu-photo-action-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
}

@media (max-width: 900px) {
  .menu-photo-pipeline,
  .menu-photo-mock {
    grid-template-columns: 1fr;
  }
}

/* ===== Menü Stüdyosu (#tab-menu) ===== */
#tab-menu {
  --ms-gold: #c59d5f;
  --ms-gold-soft: rgba(197, 157, 95, .14);
  --ms-border: rgba(26, 26, 26, .08);
  --ms-muted: #6b7280;
}

.menu-studio {
  max-width: 1180px;
  margin: 0 auto;
}

.menu-studio-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  margin-bottom: 16px;
}

.menu-studio-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #9a7a3c;
  background: var(--ms-gold-soft);
  border: 1px solid rgba(197, 157, 95, .25);
  margin-bottom: 8px;
}

.menu-studio-title {
  margin: 0 0 4px;
  font-size: clamp(22px, 2.8vw, 28px);
  font-weight: 800;
  letter-spacing: -.03em;
  color: #1a1a1a;
}

.menu-studio-sub {
  margin: 0;
  font-size: 13px;
  color: var(--ms-muted);
}

.menu-studio-metrics {
  display: flex;
  gap: 10px;
}

.menu-studio-metric {
  min-width: 72px;
  padding: 10px 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--ms-border);
  text-align: center;
  box-shadow: 0 6px 20px rgba(10, 14, 20, .04);
}

.menu-studio-metric strong {
  display: block;
  font-size: 20px;
  font-weight: 800;
  color: #9a7a3c;
  line-height: 1.1;
}

.menu-studio-metric span {
  font-size: 11px;
  color: var(--ms-muted);
  text-transform: uppercase;
  letter-spacing: .04em;
}

.menu-studio-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(197, 157, 95, .08), rgba(255, 255, 255, .9));
  border: 1px solid var(--ms-border);
}

.menu-studio-search-wrap {
  flex: 1;
  min-width: 160px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  min-height: 40px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--ms-border);
}

.menu-studio-search-icon {
  color: #9ca3af;
  font-size: 16px;
}

.menu-studio-search {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 14px;
  outline: none;
}

.menu-studio-archive {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--ms-muted);
  white-space: nowrap;
}

.menu-studio-body {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.menu-studio-sidebar,
.menu-studio-main {
  background: #fff;
  border: 1px solid var(--ms-border);
  border-radius: 18px;
  padding: 12px;
  box-shadow: 0 10px 32px rgba(10, 14, 20, .05);
}

.menu-studio-sidebar {
  background: linear-gradient(180deg, #fffdf9 0%, #fff 42%);
  position: sticky;
  top: 12px;
}

.menu-studio-sidebar-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(197, 157, 95, .15);
}

.menu-studio-sidebar-title {
  margin: 0 0 2px;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -.02em;
  color: #1a1a1a;
}

.menu-studio-sidebar-meta {
  margin: 0;
  font-size: 11px;
}

.menu-studio-all-btn {
  flex-shrink: 0;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid var(--ms-border);
  background: #fff;
  font-size: 12px;
  font-weight: 700;
  color: var(--ms-muted);
  cursor: pointer;
  transition: background .15s, border-color .15s, color .15s;
}

.menu-studio-all-btn.is-active,
.menu-studio-all-btn:hover {
  color: #9a7a3c;
  border-color: rgba(197, 157, 95, .45);
  background: rgba(197, 157, 95, .1);
}

.menu-studio-main {
  min-height: 420px;
}

.menu-studio-drawer {
  margin-bottom: 10px;
  border-radius: 14px;
  border: 1px dashed rgba(197, 157, 95, .35);
  background: rgba(197, 157, 95, .05);
  overflow: hidden;
}

.menu-studio-drawer-summary {
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 700;
  color: #9a7a3c;
  cursor: pointer;
  list-style: none;
}

.menu-studio-drawer-summary::-webkit-details-marker { display: none; }

.menu-studio-drawer[open] .menu-studio-drawer-summary {
  border-bottom: 1px solid rgba(197, 157, 95, .2);
}

.menu-studio-quick-form {
  padding: 12px;
  gap: 10px !important;
}

.menu-studio-drawer--wide { margin-bottom: 14px; }

.menu-studio-excel {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
}

.menu-studio-excel-hint { margin: 0; font-size: 13px; }

.menu-studio-excel-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.menu-studio-excel-pick { cursor: pointer; }

.menu-studio-excel-filename {
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 220px;
}

.menu-studio-excel-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.menu-studio-excel-preview-grid > div {
  padding: 10px 12px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--ms-border);
  text-align: center;
}

.menu-studio-excel-preview-grid strong {
  display: block;
  font-size: 18px;
  font-weight: 800;
  color: #9a7a3c;
  line-height: 1.2;
}

.menu-studio-excel-preview-grid span {
  font-size: 11px;
  color: var(--ms-muted);
}

.menu-studio-excel-success {
  margin: 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(34, 197, 94, .1);
  border: 1px solid rgba(34, 197, 94, .3);
  color: #15803d;
  font-size: 13px;
  font-weight: 600;
}

.menu-studio-excel-errors {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(239, 68, 68, .08);
  border: 1px solid rgba(239, 68, 68, .3);
  color: #b91c1c;
  font-size: 13px;
}

.menu-studio-excel-errors ul {
  margin: 6px 0 0;
  padding-left: 18px;
}

.menu-studio-inline-2,
.menu-studio-inline-3 {
  display: grid;
  gap: 10px;
}

.menu-studio-inline-2 { grid-template-columns: 1fr 1fr; }
.menu-studio-inline-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.menu-studio-inline-2--tail {
  align-items: end;
}

.menu-studio-check {
  margin: 0;
  min-height: 44px;
  align-self: end;
}

#tab-menu .menu-studio-drawer .photo-upload-preview {
  min-height: 72px !important;
  max-height: 88px !important;
}

#tab-menu .menu-studio-drawer .photo-upload-empty strong { font-size: 12px; }
#tab-menu .menu-studio-drawer .photo-upload-empty .photo-upload-icon { font-size: 20px; }

.menu-cat-list {
  display: grid;
  gap: 8px;
  max-height: calc(100vh - 320px);
  overflow-y: auto;
  padding-right: 2px;
  scrollbar-width: thin;
}

.menu-cat-row {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 0 8px;
  padding: 10px;
  border-radius: 14px;
  border: 1px solid rgba(26, 26, 26, .06);
  background: #fff;
  box-shadow: 0 4px 14px rgba(10, 14, 20, .03);
  transition: border-color .15s, background .15s, box-shadow .15s, transform .15s, opacity .15s;
  transform: translateZ(0);
  isolation: isolate;
}

.menu-cat-row:hover {
  border-color: rgba(197, 157, 95, .28);
  box-shadow: 0 8px 22px rgba(10, 14, 20, .06);
}

.menu-cat-order-num {
  grid-column: 1;
  grid-row: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  border-radius: 999px;
  background: rgba(197, 157, 95, .14);
  color: #9a7a3c;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.menu-cat-drag-handle {
  grid-column: 2;
  grid-row: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  color: #c5a059;
  font-size: 15px;
  line-height: 1;
  cursor: grab;
  opacity: .45;
  transition: opacity .15s;
  touch-action: none;
}
.menu-cat-row:hover .menu-cat-drag-handle { opacity: 1; }
.menu-cat-drag-handle--disabled { opacity: 0; cursor: default; pointer-events: none; }
.menu-cat-row.is-dragging { opacity: .4; }
.menu-cat-row.is-dragging .menu-cat-drag-handle { cursor: grabbing; }
.menu-cat-row.is-drag-over {
  border-color: rgba(197, 157, 95, .6);
  box-shadow: 0 0 0 2px rgba(197, 157, 95, .35), 0 8px 22px rgba(10, 14, 20, .06);
}

.menu-cat-row.is-selected {
  border-color: rgba(197, 157, 95, .5);
  background: linear-gradient(135deg, rgba(197, 157, 95, .12), rgba(255, 255, 255, .95));
  box-shadow: inset 3px 0 0 var(--ms-gold), 0 8px 24px rgba(197, 157, 95, .12);
}

.menu-cat-row.is-empty {
  border-style: dashed;
  border-color: rgba(245, 158, 11, .35);
  background: rgba(255, 251, 235, .65);
}

.menu-cat-row.is-inactive { opacity: .65; }

.menu-cat-row--soup .menu-cat-thumb--soup { background: linear-gradient(135deg, #fff7ed, #ffedd5); }
.menu-cat-row--main .menu-cat-thumb--main { background: linear-gradient(135deg, #fef2f2, #fee2e2); }
.menu-cat-row--drink .menu-cat-thumb--drink { background: linear-gradient(135deg, #eff6ff, #dbeafe); }
.menu-cat-row--dessert .menu-cat-thumb--dessert { background: linear-gradient(135deg, #fdf4ff, #fae8ff); }
.menu-cat-row--default .menu-cat-thumb--default { background: linear-gradient(135deg, #f0ebe3, #e8dfd4); }

.menu-cat-row-hit {
  grid-column: 3;
  grid-row: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

.menu-cat-actions {
  grid-column: 4;
  grid-row: 1;
  display: flex;
  align-items: center;
  gap: 6px;
  align-self: center;
}

.menu-cat-add-btn {
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(197, 157, 95, .35);
  background: #fff;
  font-size: 11px;
  font-weight: 700;
  color: #9a7a3c;
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s, transform .15s;
}

.menu-cat-add-btn:hover {
  background: rgba(197, 157, 95, .12);
  transform: translateY(-1px);
}

.menu-cat-thumb {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
  background: linear-gradient(135deg, #f0ebe3, #e8dfd4);
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .8);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6);
  transform: translateZ(0);
  backface-visibility: hidden;
}

.menu-cat-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.menu-cat-initial {
  font-size: 15px;
  font-weight: 800;
  color: #9a7a3c;
}

.menu-cat-emoji {
  font-size: 20px;
  line-height: 1;
}

.menu-cat-info {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.menu-cat-name-row {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.menu-cat-info strong {
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-cat-empty-badge {
  flex-shrink: 0;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #b45309;
  background: rgba(245, 158, 11, .15);
  border: 1px solid rgba(245, 158, 11, .25);
}

.menu-cat-count-pill {
  flex-shrink: 0;
  min-width: 22px;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
  color: #9a7a3c;
  background: rgba(197, 157, 95, .12);
  border: 1px solid rgba(197, 157, 95, .2);
}

.menu-cat-bar {
  display: block;
  height: 4px;
  border-radius: 999px;
  background: rgba(26, 26, 26, .06);
  overflow: hidden;
}

.menu-cat-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c59d5f, #e8c88a);
}

.menu-cat-row.is-empty .menu-cat-bar i {
  background: linear-gradient(90deg, #fbbf24, #f59e0b);
}

.menu-cat-info small {
  font-size: 11px;
  color: var(--ms-muted);
}

.menu-cat-tool {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid var(--ms-border);
  background: #fff;
  cursor: pointer;
  flex-shrink: 0;
  position: relative;
}

.menu-cat-tool::after {
  content: "";
  position: absolute;
  inset: 7px;
  border-radius: 50%;
  background: #d1d5db;
}

.menu-cat-tool.is-on::after {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, .2);
}

.menu-cat-edit {
  grid-column: 1 / -1;
  grid-row: 2;
  font-size: 12px;
}

.menu-cat-edit summary {
  cursor: pointer;
  color: #9a7a3c;
  font-weight: 600;
  padding: 4px 0 0;
  list-style: none;
}

.menu-cat-edit summary::-webkit-details-marker { display: none; }

.menu-cat-edit form {
  display: grid;
  gap: 8px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--ms-border);
}

.menu-cat-order-edit {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  color: #6b6b6b;
}
.menu-cat-order-edit input {
  width: 64px;
  flex: none;
}

.menu-cat-edit input {
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid var(--ms-border);
  font: inherit;
}

.menu-studio-edit-actions {
  justify-content: flex-start;
}

.menu-studio-delete-btn {
  color: #b91c1c;
}

.menu-studio-delete-btn:hover {
  color: #991b1b;
  background: rgba(185, 28, 28, .08);
}

.menu-studio-main-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--ms-border);
}

.menu-studio-main-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
}

.menu-studio-main-meta {
  margin: 2px 0 0;
  font-size: 12px;
}

.menu-product-list {
  display: grid;
  gap: 6px;
  max-height: calc(100vh - 320px);
  overflow-y: auto;
  padding-right: 2px;
}

.menu-product-row {
  border: 1px solid var(--ms-border);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  transform: translateZ(0);
  isolation: isolate;
}

.menu-product-row.is-archived { opacity: .72; }

.menu-product-row summary {
  list-style: none;
  cursor: pointer;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto 16px;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
}

.menu-product-row summary::-webkit-details-marker { display: none; }

.menu-product-row[open] summary {
  background: rgba(197, 157, 95, .06);
  border-bottom: 1px solid var(--ms-border);
}

.menu-product-thumb {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: #faf8f4;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.menu-product-thumb-img,
.menu-product-illus {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px;
  object-fit: cover;
}

.menu-product-info {
  min-width: 0;
}

.menu-product-info strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-product-meta {
  display: block;
  font-size: 11px;
  color: var(--ms-muted);
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu-product-badge {
  font-style: normal;
  font-size: 10px;
  font-weight: 700;
  padding: 1px 5px;
  border-radius: 4px;
  margin-left: 2px;
}

.menu-product-badge.is-chef { background: rgba(197, 157, 95, .2); color: #9a7a3c; }
.menu-product-badge.is-stock { background: #fef3c7; color: #92400e; }
.menu-product-badge.is-archived { background: #f3f4f6; color: #6b7280; }

.menu-product-price {
  font-size: 14px;
  font-weight: 800;
  color: #9a7a3c;
  white-space: nowrap;
}

.menu-product-chevron {
  color: #9ca3af;
  font-size: 18px;
  transition: transform .15s;
}

.menu-product-row[open] .menu-product-chevron {
  transform: rotate(90deg);
}

.menu-product-edit {
  padding: 12px !important;
  gap: 10px !important;
  border-top: none;
}

.menu-product-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.menu-empty-state--compact {
  padding: 16px 12px;
  font-size: 13px;
}

@media (max-width: 900px) {
  .menu-studio-body {
    grid-template-columns: 1fr;
  }
  .menu-cat-list,
  .menu-product-list {
    max-height: none;
  }
  .menu-studio-inline-3 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .menu-studio-inline-2 {
    grid-template-columns: 1fr;
  }
  .menu-studio-toolbar .btn {
    flex: 1;
  }
}

/* ===== Panel Premium v2 — unified SaaS design ===== */
.panel-app-premium {
  --panel-bg: #f7f4ee;
  --panel-surface: #fff;
  --panel-border: rgba(26, 26, 26, .08);
  --panel-gold: #c59d5f;
  --panel-gold-soft: rgba(197, 157, 95, .14);
  --panel-text: #1a1a1a;
  --panel-muted: #6b7280;
}

/* Sidebar & nav */
.panel-app-premium .panel-side {
  padding: 22px 14px !important;
}
.panel-app-premium .logo {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
  font-size: 15px;
  color: var(--panel-text);
  margin-bottom: 4px;
  text-decoration: none;
}
.panel-app-premium .logo-mark {
  width: 36px;
  height: 36px;
  border-radius: 11px;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 800;
}
.panel-app-premium .panel-role-badge {
  margin: 6px 4px 18px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--panel-muted);
  background: rgba(0, 0, 0, .04);
  border: 1px solid var(--panel-border);
}
.panel-app-premium .panel-nav button {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 12px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  color: #5c5c5c;
  transition: background .15s, color .15s, transform .15s;
}
.panel-app-premium .panel-nav-icon {
  width: 22px;
  height: 22px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  font-size: 12px;
  flex-shrink: 0;
  background: rgba(0, 0, 0, .04);
  color: #8a8a8a;
  transition: background .15s, color .15s;
}
.panel-app-premium .panel-nav button:hover {
  background: rgba(0, 0, 0, .04);
  color: var(--panel-text);
}
.panel-app-premium .panel-nav button:hover .panel-nav-icon {
  background: var(--panel-gold-soft);
  color: #9a7a3c;
}
.panel-app-premium .panel-nav button.active {
  background: var(--panel-gold-soft) !important;
  color: #9a7a3c !important;
  font-weight: 600;
}
.panel-app-premium .panel-nav button.active .panel-nav-icon {
  background: rgba(197, 157, 95, .22);
  color: #9a7a3c;
}
.panel-app-premium .panel-side-footer {
  border-top-color: var(--panel-border);
  padding-top: 16px;
}
.panel-app-premium .panel-side-footer .btn-ghost {
  color: var(--panel-muted);
  border: 1px solid var(--panel-border);
  border-radius: 12px;
}

/* Top bar */
.panel-app-premium .panel-top {
  padding-bottom: 18px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--panel-border);
}
.panel-app-premium .panel-top h1 {
  font-size: clamp(22px, 3vw, 28px);
  font-weight: 700;
  letter-spacing: -.02em;
}
.panel-app-premium .panel-top .muted {
  font-size: 14px;
  margin-top: 2px;
}
.panel-top-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.panel-page-intro {
  min-width: 0;
  flex: 1 1 240px;
}
.panel-page-subtitle {
  overflow-wrap: anywhere;
  max-width: 56ch;
}

/* Page headers — unified */
.panel-page-header,
.assistant-page-header,
.menu-manager-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  margin-bottom: 22px;
}
.panel-page-badge,
.assistant-page-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #9a7a3c;
  background: var(--panel-gold-soft);
  border: 1px solid rgba(197, 157, 95, .28);
  margin-bottom: 10px;
}
.panel-page-badge--admin {
  color: #92400e;
  background: rgba(197, 157, 95, .12);
}
.panel-page-title,
.menu-manager-title,
.assistant-page-header .menu-manager-title {
  margin: 0 0 6px;
  font-size: clamp(22px, 2.5vw, 26px);
  font-weight: 700;
  color: var(--panel-text);
  letter-spacing: -.02em;
}
.panel-page-subtitle,
.menu-manager-subtitle {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

/* Section cards */
.panel-section-card {
  padding: 22px 24px !important;
  margin-bottom: 16px;
}
.panel-section-head {
  margin-bottom: 18px;
}
.panel-section-head--row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
.panel-section-desc {
  margin: 4px 0 0;
  font-size: 13px;
}
.panel-split-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}
.panel-loading {
  padding: 20px 0;
  font-size: 14px;
}

/* Metrics */
.panel-app-premium .metric-grid,
.panel-app-premium .metric-grid-premium {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}
.panel-app-premium .metric-card {
  position: relative;
  padding: 22px 20px 20px 56px !important;
  overflow: hidden;
}
.panel-app-premium .metric-card-icon {
  position: absolute;
  left: 18px;
  top: 22px;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 700;
  background: var(--panel-gold-soft);
  color: #9a7a3c;
}
.panel-app-premium .metric-card--revenue .metric-card-icon {
  background: rgba(34, 197, 94, .12);
  color: #166534;
}
.panel-app-premium .admin-quick-card {
  padding: 22px !important;
}
/* .metric-card'ın 56px sol boşluğu, ikonsuz .admin-quick-card kuralı (üstteki, aynı
   önem derecesinde ve sonradan geldiği için kazanıyor) tarafından eziliyordu — ikon
   rozeti sayının üzerine biniyordu. Yalnız ikon içeren kartlarda sol boşluğu geri ver,
   ikonsuz admin-quick-card'ları (ör. diğer hızlı erişim düğmeleri) etkileme. */
.panel-app-premium .metric-card:has(.metric-card-icon) {
  padding-left: 56px !important;
}
.panel-app-premium .admin-quick-btn {
  margin-top: 12px;
}

/* Genel Bakış premium dashboard genişletmesi (KPI ikon renk varyantları + ana analiz/
   mini metrik/sistem-operasyon bölümleri). Mevcut .card/.panel-border/.panel-surface
   değişkenleri yeniden kullanılır, yeni bir tasarım sistemi kurulmaz. */
.panel-app-premium .metric-card-icon--purple { background: rgba(139, 92, 246, .14); color: #7c3aed; }
.panel-app-premium .metric-card-icon--blue { background: rgba(59, 130, 246, .14); color: #2563eb; }
.panel-app-premium .metric-card-icon--orange { background: rgba(249, 115, 22, .14); color: #ea580c; }
html.panel-theme-dark .panel-app-premium .metric-card-icon--purple { background: rgba(139, 92, 246, .22); color: #c4b5fd; }
html.panel-theme-dark .panel-app-premium .metric-card-icon--blue { background: rgba(59, 130, 246, .22); color: #93c5fd; }
html.panel-theme-dark .panel-app-premium .metric-card-icon--orange { background: rgba(249, 115, 22, .22); color: #fdba74; }
html.panel-theme-dark .panel-app-premium .metric-card-icon { background: rgba(197, 157, 95, .22); color: #ffe8b8; }
html.panel-theme-dark .panel-app-premium .metric-card--revenue .metric-card-icon { background: rgba(34, 197, 94, .22); color: #86efac; }

/* Genişçe masaüstünde KPI şeridini tek satırda dengeli göster (yalnız Genel Bakış'a
   özel, .metric-grid-premium başka sekmede kullanılmadığı için scoped seçici güvenli).
   6 kart var — 5 sütun 5+1 asimetrik son satır bırakıyordu, 6 sütun simetrik tek satır
   verir (2026-08-24, kullanıcı ekran görüntüsünde işaretledi). */
@media (min-width: 1300px) {
  #tab-overview .metric-grid-premium { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}

.panel-app-premium .dash-section-label {
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
  color: var(--panel-muted); margin: 24px 0 10px;
}
.panel-app-premium .dash-section-label:first-of-type { margin-top: 8px; }
.panel-app-premium .dash-card-head-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 22px; margin-right: 8px; font-size: 13px;
  border-radius: 7px; background: var(--panel-gold-soft); vertical-align: middle;
}
html.panel-theme-dark .panel-app-premium .dash-card-head-icon { background: rgba(255, 255, 255, .06); }

.panel-app-premium .dash-card { padding: 18px 20px !important; }
.panel-app-premium .dash-card-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
.panel-app-premium .dash-card-head h3 { margin: 0; font-size: 15px; font-weight: 700; color: var(--panel-text); display: flex; align-items: center; }
.panel-app-premium .dash-card-sub { font-size: 12px; }

.panel-app-premium .dash-main-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 16px;
  margin-bottom: 20px;
  align-items: stretch;
}
.panel-app-premium .dash-main-grid .card { margin: 0; }

.panel-app-premium .dash-chart-wrap { display: flex; flex-direction: column; gap: 6px; }
.panel-app-premium .dash-chart-svg-wrap { width: 100%; overflow: hidden; }
.panel-app-premium .dash-chart-total { font-size: 26px; font-weight: 800; color: var(--panel-text); }
.panel-app-premium .dash-chart-days { display: flex; justify-content: space-between; font-size: 11px; color: var(--panel-muted); margin-top: 4px; }

.panel-app-premium .dash-donut-wrap { display: flex; align-items: center; gap: 16px; }
.panel-app-premium .dash-donut { width: 108px; height: 108px; border-radius: 50%; flex: none; }
.panel-app-premium .dash-donut-legend { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.panel-app-premium .dash-donut-legend-dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; }
.panel-app-premium .dash-donut-center { font-size: 22px; font-weight: 800; }

.panel-app-premium .dash-activity-list { display: flex; flex-direction: column; gap: 10px; max-height: 220px; overflow-y: auto; }
.panel-app-premium .dash-activity-item { display: flex; gap: 10px; font-size: 13px; }
.panel-app-premium .dash-activity-icon { flex: none; width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; background: var(--panel-gold-soft); font-size: 12px; }
.panel-app-premium .dash-activity-body { flex: 1; min-width: 0; }
.panel-app-premium .dash-activity-title { font-weight: 600; color: var(--panel-text); }
.panel-app-premium .dash-activity-meta { font-size: 11px; color: var(--panel-muted); }

.panel-app-premium .dash-mini-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; margin-bottom: 20px; }
.panel-app-premium .dash-mini-card { padding: 14px 16px !important; }
.panel-app-premium .dash-mini-card-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; border-radius: 8px; font-size: 13px; margin-bottom: 8px;
}
.panel-app-premium .dash-mini-card-icon--purple { background: rgba(139, 92, 246, .14); color: #7c3aed; }
.panel-app-premium .dash-mini-card-icon--blue { background: rgba(59, 130, 246, .14); color: #2563eb; }
.panel-app-premium .dash-mini-card-icon--orange { background: rgba(249, 115, 22, .14); color: #ea580c; }
.panel-app-premium .dash-mini-card-icon--empty { background: rgba(148, 163, 184, .16); color: #64748b; }
html.panel-theme-dark .panel-app-premium .dash-mini-card-icon--purple { background: rgba(139, 92, 246, .22); color: #c4b5fd; }
html.panel-theme-dark .panel-app-premium .dash-mini-card-icon--blue { background: rgba(59, 130, 246, .22); color: #93c5fd; }
html.panel-theme-dark .panel-app-premium .dash-mini-card-icon--orange { background: rgba(249, 115, 22, .22); color: #fdba74; }
html.panel-theme-dark .panel-app-premium .dash-mini-card-icon--empty { background: rgba(255, 255, 255, .06); color: #94a3b8; }
.panel-app-premium .dash-mini-card-label { font-size: 11px; color: var(--panel-muted); text-transform: uppercase; letter-spacing: .03em; }
.panel-app-premium .dash-mini-card-value { font-size: 22px; font-weight: 800; color: var(--panel-text); margin: 4px 0 2px; }
.panel-app-premium .dash-mini-card--empty .dash-mini-card-value { font-size: 13px; font-weight: 600; color: var(--panel-muted); }

.panel-app-premium .dash-ops-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 20px; align-items: stretch; }
.panel-app-premium .dash-ops-grid .card { margin: 0; }
.panel-app-premium .dash-health-row, .panel-app-premium .dash-alert-row, .panel-app-premium .dash-pkg-row {
  display: flex; align-items: center; justify-content: space-between; padding: 7px 0; border-bottom: 1px solid var(--panel-border); font-size: 13px;
}
.panel-app-premium .dash-health-row:last-child, .panel-app-premium .dash-alert-row:last-child, .panel-app-premium .dash-pkg-row:last-child { border-bottom: 0; }
.panel-app-premium .dash-status-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 8px; }
.panel-app-premium .dash-status-dot--healthy { background: #22c55e; }
.panel-app-premium .dash-status-dot--warning { background: #f59e0b; }
.panel-app-premium .dash-status-dot--critical { background: #ef4444; }
.panel-app-premium .dash-status-dot--unknown { background: #9ca3af; }
.panel-app-premium .dash-pkg-bar-track { flex: 1; height: 6px; background: var(--panel-border); border-radius: 4px; margin: 0 10px; overflow: hidden; }
.panel-app-premium .dash-pkg-bar-fill { height: 100%; background: linear-gradient(90deg, #7c3aed, #2563eb); transition: width .7s cubic-bezier(.2,.8,.2,1); }
.panel-app-premium .dash-pkg-bar-fill--ai { background: linear-gradient(90deg, #f59e0b, #fb923c); }
.panel-app-premium .dash-pkg-bar-fill--module { background: linear-gradient(90deg, #06b6d4, #22d3ee); }

/* Genel Bakış KPI kartları — sayfa her açıldığında/veri her yenilendiğinde hafif
   bir "canlanma" hissi versin diye kısa, sırayla (staggered) giriş animasyonu
   (2026-08-22). prefers-reduced-motion'da statik kalır. */
.panel-app-premium .dash-kpi-animated .metric-card {
  animation: dashKpiIn .5s cubic-bezier(.2,.8,.2,1) backwards;
}
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(1) { animation-delay: .02s; }
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(2) { animation-delay: .07s; }
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(3) { animation-delay: .12s; }
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(4) { animation-delay: .17s; }
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(5) { animation-delay: .22s; }
.panel-app-premium .dash-kpi-animated .metric-card:nth-child(6) { animation-delay: .27s; }
@keyframes dashKpiIn {
  from { opacity: 0; transform: translateY(10px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.panel-app-premium .dash-ops-grid .card {
  animation: dashKpiIn .5s cubic-bezier(.2,.8,.2,1) backwards;
  animation-delay: .1s;
}
@media (prefers-reduced-motion: reduce) {
  .panel-app-premium .dash-kpi-animated .metric-card,
  .panel-app-premium .dash-ops-grid .card { animation: none; }
  .panel-app-premium .dash-pkg-bar-fill { transition: none; }
}

/* Satış Analizi — en çok ciro yapan restoranlar / en çok satan ürünler / sipariş
   türü dağılımı / şehir bazlı ciro kartları (2026-08-24). */
.panel-app-premium .dash-sales-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 16px;
  margin-bottom: 20px;
  align-items: stretch;
}
.panel-app-premium .dash-sales-card { margin: 0; }
.panel-app-premium .dash-sales-card {
  animation: dashKpiIn .5s cubic-bezier(.2,.8,.2,1) backwards;
  animation-delay: .12s;
}
@media (prefers-reduced-motion: reduce) { .panel-app-premium .dash-sales-card { animation: none; } }

.panel-app-premium .dash-rank-list { display: flex; flex-direction: column; gap: 2px; }
.panel-app-premium .dash-rank-row {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) minmax(60px, 30%) auto;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid var(--panel-border);
  font-size: 13px;
  animation: dashRankRowIn .4s cubic-bezier(.2,.8,.2,1) backwards;
}
.panel-app-premium .dash-rank-row:last-child { border-bottom: 0; }
@keyframes dashRankRowIn {
  from { opacity: 0; transform: translateX(-6px); }
  to { opacity: 1; transform: translateX(0); }
}
.panel-app-premium .dash-rank-badge {
  display: grid; place-items: center;
  width: 22px; height: 22px; border-radius: 50%;
  font-size: 11px; font-weight: 800; flex: none;
  background: var(--panel-border); color: var(--panel-muted);
}
.panel-app-premium .dash-rank-badge--gold { background: linear-gradient(135deg, #fde68a, #f59e0b); color: #78350f; }
.panel-app-premium .dash-rank-badge--silver { background: linear-gradient(135deg, #e5e7eb, #9ca3af); color: #374151; }
.panel-app-premium .dash-rank-badge--bronze { background: linear-gradient(135deg, #fdba8c, #c2703d); color: #451a03; }
.panel-app-premium .dash-rank-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--panel-text); font-weight: 600; }
.panel-app-premium .dash-rank-bar-track { height: 6px; background: var(--panel-border); border-radius: 4px; overflow: hidden; }
.panel-app-premium .dash-rank-bar-fill {
  display: block; height: 100%; width: 0;
  background: linear-gradient(90deg, #7c3aed, #c026d3);
  border-radius: 4px;
  transition: width .8s cubic-bezier(.2,.8,.2,1);
}
.panel-app-premium .dash-rank-bar-fill--product { background: linear-gradient(90deg, #f59e0b, #ef4444); }
.panel-app-premium .dash-rank-value { white-space: nowrap; font-weight: 700; color: var(--panel-text); text-align: right; }
.panel-app-premium .dash-rank-value .muted { font-weight: 400; }
@media (prefers-reduced-motion: reduce) {
  .panel-app-premium .dash-rank-row { animation: none; }
  .panel-app-premium .dash-rank-bar-fill { transition: none; }
}

/* Şehir/il bazlı ciro — gerçek il/ilçe sınır poligonlarıyla çizilen, tıklayınca
   yakınlaşan Türkiye haritası (2026-08-25, v3). Poligon verisi Natural Earth (il
   dış hattı) + geoBoundaries/OSM (ilçe sınırları) kaynaklı, gerçek enlem/boylam —
   ama yine de orta çözünürlüklü bir vektör harita, uydu görüntülü değildir. */
.panel-app-premium .dash-city-map-wrap {
  position: relative;
  border-radius: 14px;
  background:
    radial-gradient(ellipse 70% 60% at 55% 40%, rgba(124,58,237,.14), transparent 70%),
    linear-gradient(160deg, rgba(124,58,237,.10), rgba(37,99,235,.06));
  border: 1px solid var(--panel-border);
  padding: 10px;
  margin-bottom: 12px;
  overflow: hidden;
}
html.panel-theme-dark .panel-app-premium .dash-city-map-wrap {
  background:
    radial-gradient(ellipse 70% 60% at 55% 40%, rgba(124,58,237,.22), transparent 70%),
    linear-gradient(160deg, rgba(124,58,237,.16), rgba(37,99,235,.10));
}
.panel-app-premium .dash-tr-map-toolbar {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  margin-bottom: 2px;
}
.panel-app-premium .dash-city-map-label {
  font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
  color: var(--panel-muted); opacity: .75;
}
.panel-app-premium .dash-tr-zoom-out {
  background: rgba(124,58,237,.14); border: 1px solid rgba(124,58,237,.3);
  color: #7c3aed; font-size: 10.5px; font-weight: 800; letter-spacing: .02em;
  padding: 4px 10px; border-radius: 999px; cursor: pointer;
  transition: transform .15s ease, background .15s ease;
  animation: dashDistrictIn .3s cubic-bezier(.2,.8,.2,1);
}
.panel-app-premium .dash-tr-zoom-out:hover { transform: translateY(-1px); background: rgba(124,58,237,.22); }
html.panel-theme-dark .panel-app-premium .dash-tr-zoom-out { color: #c4b5fd; }
.panel-app-premium .dash-city-map-compass {
  position: absolute; top: 8px; right: 14px;
  display: flex; flex-direction: column; align-items: center; gap: 1px;
  font-size: 9px; font-weight: 800; color: var(--panel-muted); opacity: .55; z-index: 1;
}
.panel-app-premium .dash-city-map-svg {
  /* Sabit yükseklik (auto DEĞİL) — bir ile yakınlaşınca viewBox oranı değişiyor,
     height:auto olsaydı kart her tıklamada büyüyüp küçülürdü (2026-08-25,
     kullanıcı raporu: "üzerine basıldığında büyümesin"). preserveAspectRatio
     içeriği bu sabit kutunun içinde ortalar/letterbox yapar, kart boyutu sabit kalır. */
  display: block; width: 100%; height: 210px; overflow: visible;
  transition: none; /* viewBox JS tarafından rAF ile animasyonlanır, CSS transition'a gerek yok */
}
@media (max-width: 560px) {
  .panel-app-premium .dash-city-map-svg { height: 260px; }
}

/* İl/ilçe poligonları — veri yoksa nötr anahat + isim; veri varsa mor-yoğunluklu
   dolgu + madalya sınıfı. Kart açıldığında kademeli (staggered) beliriyor.
   Şekil + isim tek <g> (dash-tr-province-group) içinde — seçim/hover durumu
   grup üzerinde tutulur (2026-08-25, 81 ismin üst üste binmesi düzeltildi). */
.panel-app-premium .dash-tr-province-group { cursor: default; }
.panel-app-premium .dash-tr-province-group:focus-visible { outline: none; }
.panel-app-premium .dash-tr-shape {
  fill: var(--panel-border);
  fill-opacity: .35;
  stroke: var(--panel-surface);
  stroke-width: .5;
  vector-effect: non-scaling-stroke;
  transition: fill-opacity .25s ease, filter .25s ease, opacity .35s cubic-bezier(.2,.8,.2,1);
  animation: dashTrShapeIn .6s cubic-bezier(.2,.8,.2,1) backwards;
}
.panel-app-premium .dash-tr-province-group:focus-visible .dash-tr-shape { outline: 2px solid #7c3aed; outline-offset: -1px; }
.panel-app-premium .dash-tr-shape.has-data {
  fill: #7c3aed;
  fill-opacity: var(--tr-intensity, .5);
  stroke: rgba(255,255,255,.5);
}
.panel-app-premium .dash-tr-province-group.has-data:hover .dash-tr-shape,
.panel-app-premium .dash-tr-province-group.has-data:focus-visible .dash-tr-shape {
  filter: brightness(1.15) drop-shadow(0 0 5px rgba(124,58,237,.5));
}
.panel-app-premium .dash-tr-province-group:not(.has-data):hover .dash-tr-shape { fill-opacity: .55; }
.panel-app-premium .dash-tr-shape--gold { fill: #f59e0b !important; }
.panel-app-premium .dash-tr-shape--silver { fill: #94a3b8 !important; }
.panel-app-premium .dash-tr-shape--bronze { fill: #c2703d !important; }
.panel-app-premium .dash-tr-province-group.is-selected .dash-tr-shape {
  stroke: #fff; stroke-width: 1; filter: brightness(1.2) drop-shadow(0 0 8px rgba(124,58,237,.65));
}
.panel-app-premium .dash-city-map-svg.is-zoomed .dash-tr-province-group:not(.is-selected) { opacity: .12; }
.panel-app-premium .dash-city-map-svg.is-zoomed .dash-tr-province-group.is-selected .dash-tr-shape { fill-opacity: .08; }
.panel-app-premium .dash-city-map-svg.is-zoomed #dash-tr-badges { opacity: 0; pointer-events: none; transition: opacity .2s ease; }
@keyframes dashTrShapeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* 81 il ismi aynı anda gösterilince okunmaz bir karmaşa oluşuyordu — yalnız
   ciromuz olan iller ismi hep görünür, diğerleri üzerine gelince/odaklanınca
   belirir (isim gerçekten "yok" değil, bir tıklama/hover uzaklıkta). */
.panel-app-premium .dash-tr-label {
  font-size: 3.4px; font-weight: 600; fill: var(--panel-muted);
  paint-order: stroke; stroke: var(--panel-surface); stroke-width: 1.4px; stroke-linejoin: round;
  pointer-events: none; user-select: none;
  opacity: 0; transition: opacity .2s ease;
}
.panel-app-premium .dash-tr-label.has-data { font-size: 4.4px; font-weight: 800; fill: var(--panel-text); }
.panel-app-premium .dash-tr-province-group:hover .dash-tr-label,
.panel-app-premium .dash-tr-province-group:focus-visible .dash-tr-label {
  opacity: 1;
}
.panel-app-premium .dash-city-map-svg.is-zoomed .dash-tr-label { opacity: 0 !important; }
.panel-app-premium .dash-tr-district-label {
  font-size: 3.6px; font-weight: 600; fill: var(--panel-muted);
  paint-order: stroke; stroke: var(--panel-surface); stroke-width: 1.3px; stroke-linejoin: round;
  pointer-events: none; user-select: none;
  opacity: 0; transition: opacity .15s ease;
}
.panel-app-premium .dash-tr-district-label.has-data { font-size: 4.6px; font-weight: 800; fill: var(--panel-text); }
.panel-app-premium .dash-tr-district-group { cursor: default; }
.panel-app-premium .dash-tr-district-group:hover .dash-tr-district-label,
.panel-app-premium .dash-tr-district-group:focus-visible .dash-tr-district-label,
.panel-app-premium .dash-tr-district-group:focus-within .dash-tr-district-label {
  opacity: 1;
}
.panel-app-premium .dash-tr-district-group:not(.has-data):hover .dash-tr-district-shape {
  fill-opacity: .55;
}

/* Restoranımız olan il/ilçeler için numaralı rozet — sıralama listesindeki
   altın/gümüş/bronz rozetlerle aynı dil, haritanın üstünde de tekrar eder. */
.panel-app-premium .dash-tr-badge-wrap { pointer-events: none; animation: dashTrBadgeIn .4s cubic-bezier(.34,1.56,.64,1) backwards; animation-delay: .3s; }
.panel-app-premium .dash-tr-badge {
  fill: #7c3aed; stroke: #fff; stroke-width: .6; vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.35));
}
.panel-app-premium .dash-tr-badge--gold { fill: #f59e0b; }
.panel-app-premium .dash-tr-badge--silver { fill: #94a3b8; }
.panel-app-premium .dash-tr-badge--bronze { fill: #c2703d; }
.panel-app-premium .dash-tr-badge-text {
  font-size: 5px; font-weight: 800; fill: #fff; pointer-events: none;
}
.panel-app-premium .dash-tr-badge-text--sm { font-size: 3.6px; }
@keyframes dashTrBadgeIn {
  from { opacity: 0; transform: scale(0); transform-box: fill-box; transform-origin: center; }
  to { opacity: 1; transform: scale(1); transform-box: fill-box; transform-origin: center; }
}

/* İlçe katmanı — zum yapılınca beliren, ilin içindeki ilçe poligonları. */
.panel-app-premium .dash-tr-districts-layer .dash-tr-district-shape {
  fill: var(--panel-border); fill-opacity: .38; stroke: var(--panel-muted); stroke-opacity: .6; stroke-width: .7;
  vector-effect: non-scaling-stroke;
  animation: dashTrShapeIn .45s cubic-bezier(.2,.8,.2,1) backwards;
}
.panel-app-premium .dash-tr-districts-layer .dash-tr-district-shape.has-data {
  fill: #7c3aed; fill-opacity: var(--tr-intensity, .55); stroke: rgba(255,255,255,.85); stroke-opacity: 1; stroke-width: .9;
}
@media (prefers-reduced-motion: reduce) {
  .panel-app-premium .dash-tr-shape,
  .panel-app-premium .dash-tr-badge-wrap,
  .panel-app-premium .dash-tr-districts-layer .dash-tr-district-shape { animation: none; }
}

.panel-app-premium .dash-city-map-hint {
  display: block; text-align: center; font-size: 10.5px; color: var(--panel-muted);
  opacity: .7; margin-top: 4px;
}

.panel-app-premium .dash-rank-row--clickable { cursor: pointer; transition: transform .15s ease; }
.panel-app-premium .dash-rank-row--clickable:hover { transform: translateX(2px); }
.panel-app-premium .dash-rank-row--clickable:hover .dash-rank-name { color: #7c3aed; }

/* İlçe kırılımı paneli — şehir listesinin yerine, animasyonla açılır (2026-08-25). */
.panel-app-premium .dash-city-list-wrap,
.panel-app-premium .dash-district-panel {
  animation: dashDistrictIn .35s cubic-bezier(.2,.8,.2,1);
}
@keyframes dashDistrictIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
.panel-app-premium .dash-district-back {
  display: inline-flex; align-items: center; gap: 4px;
  background: none; border: none; padding: 0 0 10px; margin: 0;
  color: #7c3aed; font-weight: 700; font-size: 12px; cursor: pointer;
}
.panel-app-premium .dash-district-back:hover { text-decoration: underline; }
.panel-app-premium .dash-district-title {
  font-size: 14px; font-weight: 800; color: var(--panel-text); margin-bottom: 8px;
}
@media (prefers-reduced-motion: reduce) {
  .panel-app-premium .dash-city-list-wrap,
  .panel-app-premium .dash-district-panel { animation: none; }
  .panel-app-premium .dash-rank-row--clickable { transition: none; }
}

.panel-app-premium .dash-empty-hint { font-size: 12px; color: var(--panel-muted); margin-top: 6px; }

@media (max-width: 1300px) {
  .panel-app-premium .dash-sales-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
  .panel-app-premium .dash-sales-grid { grid-template-columns: 1fr; }
}
/* Dar ekranda tek satırlık grid (rozet+isim+çubuk+tutar) isim ve tutarı birkaç
   harfe sıkıştırıyordu — isim/tutar satırı ile çubuğu iki satıra ayır (2026-08-24). */
@media (max-width: 560px) {
  .panel-app-premium .dash-rank-row {
    grid-template-columns: 22px minmax(0, 1fr) auto;
    grid-template-areas: "badge name value" "bar bar bar";
    row-gap: 6px;
  }
  .panel-app-premium .dash-rank-badge { grid-area: badge; }
  .panel-app-premium .dash-rank-name { grid-area: name; white-space: normal; }
  .panel-app-premium .dash-rank-value { grid-area: value; font-size: 12px; }
  .panel-app-premium .dash-rank-bar-track { grid-area: bar; }
}

.panel-app-premium .dash-quick-actions-card { margin-bottom: 20px; }
.panel-app-premium .dash-quick-actions-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.panel-app-premium .dash-quick-action-btn {
  display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: 12px;
  border: 1px solid var(--panel-border); background: var(--panel-surface2, var(--panel-surface));
  color: var(--panel-text); font-size: 13px; font-weight: 600; cursor: pointer; transition: transform .12s ease, border-color .12s ease;
}
.panel-app-premium .dash-quick-action-btn span { font-size: 16px; }
.panel-app-premium .dash-quick-action-btn:hover { transform: translateY(-1px); border-color: rgba(124, 58, 237, .4); }
.panel-app-premium .dash-quick-action-btn:focus-visible { outline: 2px solid #7c3aed; outline-offset: 2px; }

.panel-app-premium .dash-footer-bar {
  display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: space-between; padding: 14px 18px;
  border-top: 1px solid var(--panel-border); font-size: 12px; color: var(--panel-muted);
}

html.panel-theme-dark .panel-app-premium .dash-activity-icon { background: rgba(255, 255, 255, .06); }
html.panel-theme-dark .panel-app-premium .dash-quick-action-btn { background: rgba(255, 255, 255, .03); }
html.panel-theme-dark .panel-app-premium .dash-pkg-bar-track { background: rgba(255, 255, 255, .08); }

@media (max-width: 1100px) {
  .panel-app-premium .dash-main-grid { grid-template-columns: 1fr 1fr; }
  .panel-app-premium .dash-mini-grid { grid-template-columns: repeat(3, 1fr); }
  .panel-app-premium .dash-ops-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .panel-app-premium .dash-main-grid,
  .panel-app-premium .dash-ops-grid { grid-template-columns: 1fr; }
  .panel-app-premium .dash-mini-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Forms in panel */
.panel-app-premium .panel-form--labeled .form-field label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--panel-text);
  margin-bottom: 6px;
}
.panel-app-premium .panel-form--labeled input,
.panel-app-premium .panel-form--labeled select,
.panel-app-premium .panel-form--labeled textarea,
.panel-app-premium .panel-select {
  width: 100%;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .12);
  background: #faf8f5;
  color: var(--panel-text);
  font: inherit;
  transition: border-color .15s, box-shadow .15s, background .15s;
}
.panel-app-premium .panel-form--labeled input:focus,
.panel-app-premium .panel-form--labeled select:focus,
.panel-app-premium .panel-form--labeled textarea:focus,
.panel-app-premium .panel-select:focus {
  outline: none;
  border-color: rgba(197, 157, 95, .55);
  box-shadow: 0 0 0 3px rgba(197, 157, 95, .14);
  background: #fff;
}
.panel-app-premium .panel-form--wide {
  max-width: none;
}
.panel-app-premium .form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}
.panel-app-premium .form-hint {
  font-size: 12px;
  margin-top: 6px;
}

/* Tables */
.panel-app-premium .orders-panel-card {
  padding: 0 !important;
  overflow: hidden;
}
.panel-app-premium .orders-table-wrap {
  padding: 0 4px;
}
.panel-app-premium .data-table thead th {
  padding: 14px 16px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--panel-muted);
  background: #faf8f5;
  border-bottom: 1px solid var(--panel-border);
}
.panel-app-premium .data-table tbody td {
  padding: 14px 16px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(26, 26, 26, .06);
}
.panel-app-premium .order-row:hover td {
  background: rgba(197, 157, 95, .05);
}
.panel-app-premium .order-detail-row td {
  background: #faf8f5;
  padding: 0 16px 14px !important;
}
.panel-app-premium .order-detail {
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid var(--panel-border);
  background: #fff;
}
.panel-app-premium .order-items-list {
  margin: 8px 0 0;
  padding-left: 18px;
  font-size: 13px;
}
.panel-app-premium .responsive-card,
.panel-app-premium .order-card {
  border-color: var(--panel-border);
  box-shadow: 0 4px 16px rgba(0, 0, 0, .04);
}

/* List items (campaigns, leads, logs) */
.panel-stack-list {
  display: grid;
  gap: 12px;
}
.panel-list-item {
  padding: 14px 16px;
  border-radius: 14px;
  background: #faf8f5;
  border: 1px solid var(--panel-border);
  transition: border-color .15s, box-shadow .15s;
}
.panel-list-item:hover {
  border-color: rgba(197, 157, 95, .28);
  box-shadow: 0 4px 14px rgba(0, 0, 0, .04);
}
.panel-list-item-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
}
.panel-list-item-desc {
  margin: 0 0 6px;
  font-size: 14px;
  color: var(--panel-muted);
  line-height: 1.45;
}
.panel-list-item-meta {
  margin: 0;
  font-size: 12px;
  color: #9ca3af;
}
.panel-list-item-actions {
  margin-top: 10px;
}
.panel-app-premium .stack-item {
  background: #faf8f5;
  border-color: var(--panel-border);
  border-radius: 14px;
}

/* Tables QR grid */
/* Masalar & QR — full panel */
.tables-page-layout {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.tables-sidebar {
  display: grid;
  gap: 14px;
  align-content: start;
  position: sticky;
  top: 16px;
}
.tables-tip-card { padding: 16px 18px !important; }
.tables-tip-title {
  margin: 0 0 6px;
  font-size: 13px;
  font-weight: 700;
}
.tables-tip-text {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}
.tables-main { min-width: 0; }
.tables-stats {
  display: flex;
  gap: 12px;
  margin-bottom: 14px;
}
.tables-stat {
  flex: 1;
  padding: 14px 16px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(26, 26, 26, .08);
  box-shadow: 0 4px 16px rgba(0, 0, 0, .04);
}
.tables-stat strong {
  display: block;
  font-size: 26px;
  line-height: 1.1;
  margin-bottom: 4px;
}
.tables-stat .muted { font-size: 12px; }
.tables-stat--occupied strong { color: #ef4444; }
.tables-stat--available strong { color: #22c55e; }
.tables-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(272px, 1fr));
  gap: 20px;
  margin-bottom: 20px;
}
.tables-empty {
  grid-column: 1 / -1;
  padding: 48px 24px;
}
.tables-empty-filter {
  text-align: center;
  padding: 32px 24px;
  font-size: 13px;
}

/* Masalar araç çubuğu — arama + doluluk filtre çipleri (2026-08-14) */
.tables-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.tables-toolbar-search {
  position: relative;
  flex: 1 1 240px;
  min-width: 200px;
}
.tables-toolbar-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 15px;
  color: #9ca3af;
  pointer-events: none;
}
.tables-toolbar-search input {
  width: 100%;
  padding: 10px 14px 10px 38px;
  border-radius: 999px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  font-size: 13px;
  font: inherit;
}
.tables-toolbar-search input:focus { outline: none; border-color: rgba(197, 160, 89, .5); box-shadow: 0 0 0 3px rgba(197, 160, 89, .14); }
.tables-filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.tables-filter-chip {
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  color: #5c5c5c;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.tables-filter-chip:hover { border-color: rgba(197, 160, 89, .4); }
.tables-filter-chip.is-active {
  background: linear-gradient(135deg, #c5a059, #dbad52);
  border-color: transparent;
  color: #fff;
}
.tables-filter-chip--occupied.is-active { background: linear-gradient(135deg, #ef4444, #f87171); }
.tables-filter-chip--available.is-active { background: linear-gradient(135deg, #22c55e, #4ade80); }

/* "+ Masa ekle / toplu oluştur" — artık grid altında, varsayılan kapalı bölme */
.tables-add-drawer {
  margin-top: 6px;
  border: 1px solid rgba(26, 26, 26, .08);
  border-radius: 16px;
  overflow: hidden;
  background: #fcfaf7;
}
.tables-add-drawer-summary {
  padding: 14px 18px;
  font-size: 13px;
  font-weight: 700;
  color: #5c4a2a;
}
.tables-add-drawer-body {
  padding: 18px;
  border-top: 1px solid rgba(26, 26, 26, .06);
  background: #fff;
}
.tables-add-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 14px;
}
.tables-add-form { padding: 14px; border-radius: 12px; background: #fcfaf7; border: 1px solid rgba(26, 26, 26, .06); }
.table-qr-card {
  position: relative;
  padding: 0 0 18px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(26, 26, 26, .07);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .03);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.table-qr-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #c5a059, #dbad52, #c5a059);
  opacity: 0;
  transition: opacity .2s ease;
}
.table-qr-card:not(.table-qr-card--inactive)::before { opacity: 1; }
.table-qr-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(0, 0, 0, .10), 0 4px 14px rgba(0, 0, 0, .05);
  border-color: rgba(197, 160, 89, .3);
}
.table-qr-card--inactive {
  opacity: .8;
}
.table-qr-card--inactive .table-qr-visual img {
  filter: grayscale(.85);
}
.table-qr-visual {
  position: relative;
  display: grid;
  place-items: center;
  padding: 16px;
  background: linear-gradient(180deg, #faf8f5 0%, #fff 100%);
  border-bottom: 1px solid rgba(26, 26, 26, .06);
}
.table-qr-visual img {
  width: 180px;
  height: 180px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .06);
  background: #fff;
}
.table-qr-inactive-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: rgba(239, 68, 68, .12);
  color: #991b1b;
}
.table-qr-card--delete-pending {
  border-color: rgba(124, 92, 255, .38);
  box-shadow: 0 0 0 1px rgba(124, 92, 255, .14), 0 10px 30px rgba(0, 0, 0, .06);
}
.table-qr-card--delete-pending::before {
  background: linear-gradient(90deg, #7c5cff, #a78bfa, #7c5cff);
  opacity: 1;
}
.table-qr-pending-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  padding: 5px 8px;
  border-radius: 8px;
  font-size: 10px;
  font-weight: 700;
  text-align: center;
  background: rgba(124, 92, 255, .18);
  color: #6d4aff;
}

/* Masa doluluk rengi — açık siparişi olan masa (dolu) kırmızı, siparişsiz
   masa (boş) yeşil kart olarak vurgulanır. (2026-08-14) */
.table-qr-card--occupied {
  background: linear-gradient(180deg, rgba(239, 68, 68, .05) 0%, #fff 120px);
  border-color: rgba(239, 68, 68, .3);
}
.table-qr-card--occupied::before { background: linear-gradient(90deg, #ef4444, #f87171, #ef4444); opacity: 1; }
.table-qr-card--occupied:hover { border-color: rgba(239, 68, 68, .5); box-shadow: 0 22px 48px rgba(239, 68, 68, .12), 0 4px 14px rgba(0, 0, 0, .05); }
.table-qr-card--occupied .table-qr-card-head strong::before { color: #ef4444; }

.table-qr-card--available {
  background: linear-gradient(180deg, rgba(34, 197, 94, .05) 0%, #fff 120px);
  border-color: rgba(34, 197, 94, .28);
}
.table-qr-card--available::before { background: linear-gradient(90deg, #22c55e, #4ade80, #22c55e); opacity: 1; }
.table-qr-card--available:hover { border-color: rgba(34, 197, 94, .48); box-shadow: 0 22px 48px rgba(34, 197, 94, .12), 0 4px 14px rgba(0, 0, 0, .05); }
.table-qr-card--available .table-qr-card-head strong::before { color: #22c55e; }

.table-qr-empty-note {
  margin: 14px 18px 0;
  font-size: 12px;
  font-weight: 600;
  color: #16a34a;
}
.table-qr-empty-note--pending { color: #6d4aff; }
.status-pill.status-pending {
  background: rgba(124, 92, 255, .15);
  color: #7c5cff;
}
.qr-delete-admin-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.qr-delete-admin-card {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 16px;
  background: rgba(255, 255, 255, 0.02);
}
.qr-delete-admin-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
}
.qr-delete-admin-qr {
  margin: 8px 0;
}
.qr-delete-admin-qr img {
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.table-qr-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 18px 18px 0;
}
.table-qr-card-head strong {
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #1a1a1a;
  display: flex;
  align-items: center;
  gap: 7px;
}
.table-qr-card-head strong::before {
  content: "⬚";
  font-size: 12px;
  color: #c5a059;
}
.table-qr-url {
  margin: 8px 18px 0;
  font-size: 11px;
  color: #9ca3af;
  word-break: break-all;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.table-qr-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 12px 14px;
}
.table-qr-manage {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 16px 18px 18px;
  padding-top: 14px;
  border-top: 1px dashed rgba(26, 26, 26, .09);
}
.table-qr-manage .btn {
  font-size: 11px;
  font-weight: 600;
  padding: 6px 11px;
  border-radius: 8px;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.table-delete-btn--danger { color: #b91c1c; }
.table-delete-btn--danger:hover { background: rgba(185,28,28,.08); color: #991b1b; }

/* Masalar & QR — açık sipariş rozeti + QR açılır/kapanır bölmesi (2026-08-14) */
.table-order-btn {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 6px 10px;
  width: calc(100% - 36px);
  margin: 14px 18px 0;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(197, 160, 89, .4);
  background: linear-gradient(135deg, rgba(197, 160, 89, .12), rgba(219, 173, 82, .05));
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
  transition: background .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.table-order-btn:hover {
  background: linear-gradient(135deg, rgba(197, 160, 89, .2), rgba(219, 173, 82, .1));
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(197, 160, 89, .2);
  border-color: rgba(197, 160, 89, .6);
}
.table-order-btn-total { font-weight: 800; font-size: 14px; color: #8a6a2e; }
.table-order-btn-time { font-size: 10px; font-weight: 600; color: #9a7a3c; opacity: .8; }
.table-order-btn-cta { flex-basis: 100%; font-size: 11px; font-weight: 600; color: #9a7a3c; }

.table-qr-drawer {
  margin: 14px 18px 0;
  border: 1px solid rgba(26, 26, 26, .08);
  border-radius: 14px;
  overflow: hidden;
  background: #fcfaf7;
}
.table-qr-drawer-summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 700;
  color: #5c4a2a;
  transition: background .15s ease;
  -webkit-tap-highlight-color: transparent;
}
.table-qr-drawer-summary:hover { background: rgba(197, 160, 89, .07); }
.table-qr-drawer-summary::-webkit-details-marker,
.table-qr-drawer-summary::marker { display: none; content: ''; }
.table-qr-drawer-chevron { color: #c5a059; transition: transform .15s; }
.table-qr-drawer[open] .table-qr-drawer-chevron { transform: rotate(180deg); }
.table-qr-drawer-body { border-top: 1px solid rgba(26, 26, 26, .06); background: #fff; }
.table-qr-drawer .table-qr-visual { border-bottom: none; }
.table-qr-drawer .table-qr-url { margin-top: 10px; }

/* Masa siparişi görüntüle/düzenle dialogu */
.table-order-dialog {
  border: none;
  border-radius: 22px;
  padding: 0;
  max-width: 480px;
  width: calc(100% - 32px);
  /* GERİ ALINDI: display:flex + max-height doğrudan <dialog>'un üzerindeyken
     Safari'de modal dialog tamamen görünmez render oluyordu (yalnız ::backdrop
     bulanıklığı kalıyor, kutunun kendisi kayboluyor — bilinen bir WebKit/dialog
     flex etkileşim sorunu). <dialog> artık sade: yükseklik sınırı ve kaydırma
     SADECE normal bir div olan .table-order-dialog-body üzerinde uygulanıyor. */
  overflow: hidden;
  box-shadow: 0 36px 90px rgba(0, 0, 0, .28), 0 0 0 1px rgba(197, 160, 89, .12);
}
.table-order-dialog::backdrop { background: rgba(20, 16, 8, .55); backdrop-filter: blur(2px); }
.table-order-dialog-body {
  padding: 0 22px 22px;
  position: relative;
  /* Uzun ürün listesinde diyalog ekranın dışına taşıp alttaki butonları (Hesabı
     Kapat, İptal et vb.) erişilemez kılmasın diye yükseklik burada, sıradan bir
     div üzerinde sabitlenir — <dialog>'un kendisi flex/max-height taşımaz. */
  max-height: min(88vh, 760px);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  /* Kaydırma çalışır, yalnız görünür scrollbar çubuğu gizlenir (premium görünüm). */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.table-order-dialog-body::-webkit-scrollbar { display: none; width: 0; height: 0; }
.table-order-dialog-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  position: sticky;
  top: 0;
  z-index: 3;
  margin: 0 -22px 18px;
  padding: 20px 22px 16px;
  background: linear-gradient(135deg, #fdf8ee, #fbf1dc);
  border-bottom: 1px solid rgba(197, 160, 89, .28);
}
.table-order-dialog-head h3 {
  font-size: 16.5px;
  margin: 0;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #3a2f18;
}
/* Kısa viewport'larda (mobil yatay, küçük tarayıcı penceresi) diyaloğa biraz
   daha fazla dikey alan bırak — dar ekranlarda kenar boşluğu da daralt. */
@media (max-height: 640px) {
  .table-order-dialog { max-height: 94vh; }
}
@media (max-width: 480px) {
  .table-order-dialog { width: calc(100% - 20px); border-radius: 18px; }
}

.premium-qr-table-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 10px; margin-bottom: 16px; max-height: 46vh; overflow-y: auto; }
.premium-qr-table-row {
  padding: 16px 10px; border-radius: 14px; border: 1px solid rgba(26, 26, 26, .1);
  background: linear-gradient(160deg, #fff, #faf7f0); cursor: pointer; text-align: center;
  font: inherit; font-size: 13.5px; font-weight: 700; color: #2a2a2a;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.premium-qr-table-row:hover { border-color: rgba(197, 160, 89, .55); background: linear-gradient(160deg, #fff, #f6ecd8); transform: translateY(-1px); }
.table-order-dialog-close {
  border: none;
  background: rgba(26, 26, 26, .06);
  font-size: 19px;
  line-height: 1;
  cursor: pointer;
  color: #6b5836;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  flex-shrink: 0;
  transition: background .15s ease, color .15s ease;
}
.table-order-dialog-close:hover { color: #1a1a1a; background: rgba(26, 26, 26, .12); }
.table-order-currency-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
.table-order-currency-label {
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #9a7a3c;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.table-order-currency-note {
  font-size: 13px;
  font-weight: 800;
  color: #7a5a1e;
  white-space: nowrap;
}
.table-order-currency-note.is-warning { color: #b45309; font-weight: 600; white-space: normal; text-align: right; }

/* İndirim — para birimi seçicinin hemen altında: %10/%20/%30 hazır oranlar veya
   kendi oranını girme. Hesabı GERÇEKTEN kapatmaz, yalnız seçilen tutarı Nakit/
   Kredi Kartı/Yemek Kartı butonlarından biri tıklanana kadar bekletir. */
.table-order-discount-row { margin-top: 10px; }
.table-order-discount-chips { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 4px; }
.table-order-discount-chip {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(26, 26, 26, .12);
  background: #fff;
  font: inherit;
  font-size: 12.5px;
  font-weight: 700;
  color: #3a3a3a;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.table-order-discount-chip:hover { border-color: rgba(197, 160, 89, .5); }
.table-order-discount-chip.is-active {
  border-color: rgba(180, 83, 9, .55);
  background: linear-gradient(135deg, #fef3e2, #fde3b8);
  color: #92400e;
}
.table-order-discount-custom {
  width: 70px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(26, 26, 26, .12);
  font-size: 12.5px;
  font-weight: 700;
  text-align: center;
}
.table-order-discount-clear {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: none;
  background: rgba(26, 26, 26, .08);
  color: #6b5836;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
  flex-shrink: 0;
}
.table-order-discount-clear:hover { background: rgba(26, 26, 26, .16); }
.table-order-discount-note { margin: 6px 0 0; font-size: 12.5px; font-weight: 800; color: #92400e; }
/* Kendi iç scroll'u kaldırıldı — artık tüm gövdeyle (.table-order-dialog-body)
   birlikte TEK bir kaydırma alanı içinde akıyor (iç içe iki scrollbar olmasın diye). */
.table-order-items-list { list-style: none; margin: 0 0 14px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.table-order-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  background: linear-gradient(135deg, #fbf9f5, #f6f2ea);
  border: 1px solid rgba(26, 26, 26, .06);
  transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.table-order-item:hover { border-color: rgba(197, 160, 89, .35); box-shadow: 0 4px 14px -8px rgba(197, 160, 89, .5); }
.table-order-item-name { flex: 1; font-size: 13px; font-weight: 600; color: #2a2a2a; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.table-order-item-note { font-size: 11px; font-weight: 400; color: #9a7a3c; font-style: italic; }
.table-order-item-qty { display: flex; align-items: center; gap: 6px; font-weight: 700; font-size: 13px; }
.table-order-qty-btn {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: 1px solid rgba(26, 26, 26, .12);
  background: #fff;
  cursor: pointer;
  font-size: 14px;
  line-height: 1;
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.table-order-qty-btn:hover { background: linear-gradient(135deg, #f0dfb8, #e8cf98); border-color: rgba(197, 160, 89, .55); transform: translateY(-1px); }
.table-order-item-price { min-width: 68px; text-align: right; font-size: 12.5px; font-weight: 700; color: #a37c2d; }
.table-order-item-remove { border: none; background: transparent; cursor: pointer; opacity: .5; font-size: 14px; transition: opacity .15s ease, transform .15s ease; }
.table-order-item-remove:hover { opacity: 1; transform: scale(1.1); }
/* Açık adisyona ürün ekleme — yeni sipariş ekranıyla aynı ızgara, katlanır bölmede. */
.table-order-add-drawer {
  margin-bottom: 14px;
  border: 1px solid rgba(197, 160, 89, .22);
  border-radius: 12px;
  background: #fcfaf7;
  overflow: hidden;
  transition: border-color .15s ease;
}
.table-order-add-drawer[open] { border-color: rgba(197, 160, 89, .4); }
.table-order-add-summary {
  padding: 11px 14px;
  font-size: 13px;
  font-weight: 700;
  color: #8a6a2e;
  cursor: pointer;
  list-style: none;
  transition: background .15s ease;
}
.table-order-add-summary::-webkit-details-marker { display: none; }
.table-order-add-summary:hover { background: rgba(197, 160, 89, .08); }
.table-order-add-drawer[open] .table-order-add-summary { border-bottom: 1px solid rgba(26, 26, 26, .07); }
.table-order-add-drawer .order-picker-search-row,
.table-order-add-drawer .order-picker { padding: 0 12px; }
.table-order-add-drawer .order-picker-search-row { padding-top: 12px; }
.table-order-add-drawer .order-picker { max-height: 26vh; padding-bottom: 12px; margin-bottom: 0; }
.table-order-dialog-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; margin-top: 2px; border-top: 1px dashed rgba(197, 160, 89, .3); flex-wrap: wrap; }
.table-order-status-label { font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #9a7a3c; display: flex; flex-direction: column; gap: 4px; }
/* Durum alanı gizliyken (masa siparişi) toplam tek başına sağda kalır. */
.table-order-dialog-foot--total-only { justify-content: flex-end; }
.table-order-cancel-btn { margin-top: 8px; color: #991b1b; }
.table-order-cancel-btn:hover { background: rgba(254, 242, 242, .95); border-color: rgba(239, 68, 68, .35); }
.table-order-total {
  font-size: 16px;
  font-weight: 800;
  padding: 6px 14px;
  border-radius: 999px;
  color: #7a5a1e;
  background: linear-gradient(135deg, rgba(197, 160, 89, .2), rgba(197, 160, 89, .08));
  border: 1px solid rgba(197, 160, 89, .35);
}
.table-order-guard-msg {
  margin: 12px 0 0;
  color: #92400e;
  background: rgba(251, 191, 36, .15);
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 12px;
}
.table-order-print-btn { margin-top: 12px; }
.table-order-print-btn:disabled { opacity: .65; cursor: default; }

.panel-confirm-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 10000;
}
.panel-confirm-modal {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10001;
  width: min(480px, calc(100vw - 32px));
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 24px 64px rgba(0,0,0,.25);
  border: 1px solid rgba(185,28,28,.2);
}
.panel-confirm-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(26,26,26,.08);
}

/* Native <dialog>.showModal() içinden çağrılan promptCancelReason — tarayıcının
   "top layer"ında olduğu için global panel-confirm-modal/backdrop (sıradan
   z-index) onun ALTINDA kalırdı; bu yüzden aynı dialog'un içine, aynı top
   layer'da render olacak bir overlay olarak eklenir (bkz. app.js). */
.panel-inline-confirm-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 20000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.panel-inline-confirm-box {
  width: min(420px, 100%);
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 24px 64px rgba(0,0,0,.3);
  border: 1px solid rgba(185,28,28,.2);
  padding: 18px;
}
.panel-inline-confirm-box h3 { margin: 0 0 10px; font-size: 16px; color: #991b1b; }
.panel-inline-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 16px;
}
.panel-confirm-head h3 { margin: 0; font-size: 17px; color: #991b1b; }
.panel-confirm-close {
  border: none;
  background: transparent;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  color: #6b7280;
}
.panel-confirm-body { padding: 18px; }
.panel-confirm-critical-alert {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 14px;
}
.panel-confirm-critical-alert strong { display: block; color: #991b1b; margin-bottom: 4px; }
.panel-confirm-critical-alert p { margin: 0; font-size: 13px; color: #7f1d1d; line-height: 1.45; }
.panel-confirm-subject { margin: 0 0 10px; font-size: 15px; }
.panel-confirm-warnings {
  margin: 0 0 14px;
  padding-left: 18px;
  font-size: 13px;
  color: #374151;
  line-height: 1.5;
}
.panel-confirm-check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  font-weight: 600;
  color: #1f2937;
  cursor: pointer;
}
.panel-confirm-check input { margin-top: 2px; flex-shrink: 0; }
.panel-confirm-foot {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 18px 18px;
  border-top: 1px solid rgba(26,26,26,.08);
}
.panel-confirm-foot .btn-danger {
  background: #dc2626;
  color: #fff;
  border-color: #dc2626;
}
.panel-confirm-foot .btn-danger:disabled {
  opacity: .45;
  cursor: not-allowed;
}
.panel-confirm-foot .btn-danger:not(:disabled):hover {
  background: #b91c1c;
  border-color: #b91c1c;
}

@media (max-width: 900px) {
  .tables-page-layout { grid-template-columns: 1fr; }
  .tables-sidebar { position: static; }
  .tables-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
}
@media (max-width: 520px) {
  .tables-grid { grid-template-columns: 1fr; }
  .tables-stats { flex-direction: column; }
}

/* Settings — premium restoran profili */
#tab-settings [hidden] {
  display: none !important;
}

.settings-shell {
  display: grid;
  gap: 18px;
  max-width: 1080px;
}

/* Restoran Ayarları > Masa QR Kodları (2026-08-14) */
.settings-qr-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.settings-qr-item {
  display: flex;
  gap: 16px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #fcfaf7;
}
.settings-qr-item--inactive { opacity: .75; }
.settings-qr-item--inactive .settings-qr-item-visual img { filter: grayscale(.85); }
.settings-qr-item-visual {
  flex: none;
  display: grid;
  place-items: center;
  padding: 8px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid rgba(26, 26, 26, .06);
}
.settings-qr-item-visual img { width: 96px; height: 96px; border-radius: 8px; }
.settings-qr-item-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.settings-qr-item-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.settings-qr-item-head strong { font-size: 15px; font-weight: 800; }
.settings-qr-item .table-qr-url { margin: 0; -webkit-line-clamp: 1; }
.settings-qr-item .table-qr-actions { padding: 6px 0 0; }
.settings-qr-item .table-qr-manage { margin: 10px 0 0; padding-top: 10px; }
@media (max-width: 640px) {
  .settings-qr-item { flex-direction: column; }
  .settings-qr-item-visual { align-self: flex-start; }
}

.settings-profile-card {
  overflow: hidden;
  padding: 0 !important;
}

.settings-identity {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 24px;
  background: linear-gradient(135deg, rgba(124, 92, 255, .06) 0%, rgba(197, 157, 95, .08) 55%, #fff 100%);
  border-bottom: 1px solid rgba(15, 23, 42, .06);
  flex-wrap: nowrap;
}
.settings-identity-brand,
.settings-identity-actions {
  flex: none;
}

.settings-identity-brand {
  display: grid;
  grid-template-columns: 72px;
  gap: 10px;
  align-items: stretch;
}

.settings-identity-logo,
.settings-identity-cover {
  margin: 0;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, .08);
  background: #fff;
}

.settings-identity-logo {
  width: 72px;
  height: 72px;
}

.settings-identity-cover {
  width: 120px;
  height: 72px;
}

.settings-identity-logo img,
.settings-identity-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.settings-identity-logo-fallback,
.settings-identity-cover-fallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 22px;
  font-weight: 800;
  color: #9a7a3c;
  background: rgba(197, 157, 95, .12);
}

.settings-identity-cover-fallback {
  font-size: 11px;
  font-weight: 600;
}

.settings-identity-copy {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 10px;
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.settings-identity-copy::-webkit-scrollbar { display: none; width: 0; height: 0; }

.settings-identity-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #7c5cff;
  margin: 0;
  flex: none;
}

.settings-identity-name {
  margin: 0;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.2;
  white-space: nowrap;
}

.settings-identity-slug {
  margin: 0;
  font-size: 13px;
  white-space: nowrap;
}

.settings-identity-chips {
  display: flex;
  flex-wrap: nowrap;
  flex: none;
  gap: 8px;
  margin: 0;
}
.settings-status-chip {
  white-space: nowrap;
  flex: none;
}

.settings-status-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: rgba(15, 23, 42, .05);
  color: #475569;
  border: 1px solid rgba(15, 23, 42, .08);
}

.settings-status-chip.is-on {
  background: rgba(34, 197, 94, .12);
  border-color: rgba(34, 197, 94, .25);
  color: #15803d;
}

.settings-status-chip.is-off {
  background: rgba(239, 68, 68, .1);
  border-color: rgba(239, 68, 68, .22);
  color: #b91c1c;
}

.settings-identity-actions {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  flex: none;
}

.settings-view-premium {
  padding: 20px 24px 24px;
}

.settings-view-panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.settings-panel-block {
  padding: 16px 18px;
  border-radius: 16px;
  background: rgba(15, 23, 42, .02);
  border: 1px solid rgba(15, 23, 42, .06);
}

.settings-kv {
  margin: 0;
  display: grid;
  gap: 0;
}

.settings-kv-row {
  display: grid;
  grid-template-columns: minmax(110px, 38%) minmax(0, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(15, 23, 42, .05);
  align-items: start;
}

.settings-kv-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.settings-kv-row--full {
  grid-template-columns: 1fr;
  gap: 4px;
}

.settings-kv-row dt {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.settings-kv-row dd {
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
  color: #0f172a;
  word-break: break-word;
}

.settings-kv-row dd code {
  font-size: 13px;
  padding: 2px 8px;
  border-radius: 8px;
  background: rgba(15, 23, 42, .05);
}

.settings-profile-card .settings-edit-form {
  margin: 0;
  padding: 20px 24px 24px;
  border-top: 1px solid rgba(15, 23, 42, .08);
  max-width: none;
  display: grid;
  gap: 16px;
}

.settings-form-split {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
}
.settings-form-split > .settings-orders-block,
.settings-form-split > .settings-thermal-block {
  display: flex;
  flex-direction: column;
}
.settings-form-split > .settings-orders-block > *:last-child,
.settings-form-split > .settings-thermal-block > *:last-child {
  margin-top: auto;
  padding-top: 10px;
}

#tab-settings .menu-theme-card {
  margin-top: 0;
}

.settings-group-title {
  margin: 0 0 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #9a7a3c;
}

.settings-brand-upload-row {
  display: grid;
  grid-template-columns: minmax(0, 260px);
  gap: 14px;
  max-width: 560px;
}

.settings-brand-hint {
  margin: -4px 0 12px;
}

.photo-upload-logo .photo-upload-preview {
  aspect-ratio: 1;
  min-height: 120px;
  max-height: 200px;
}

.photo-upload-cover .photo-upload-preview {
  aspect-ratio: 2 / 1;
  min-height: 110px;
  max-height: 200px;
}

.photo-upload-logo .photo-upload-preview img,
.photo-upload-cover .photo-upload-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

html.panel-theme-dark .panel-app-premium .settings-identity {
  background:linear-gradient(135deg, rgba(124, 92, 255, .12) 0%, rgba(197, 157, 95, .08) 55%, rgba(255, 255, 255, .02) 100%) !important;
  border-bottom-color:rgba(255, 255, 255, .08) !important;
}

html.panel-theme-dark .panel-app-premium .settings-panel-block {
  background:rgba(255, 255, 255, .03) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}

html.panel-theme-dark .panel-app-premium .settings-kv-row {
  border-bottom-color:rgba(255, 255, 255, .06) !important;
}

html.panel-theme-dark .panel-app-premium .settings-kv-row dt {
  color:var(--panel-muted, #94a3b8) !important;
}

html.panel-theme-dark .panel-app-premium .settings-kv-row dd {
  color:var(--panel-text, #f1f5f9) !important;
}

html.panel-theme-dark .panel-app-premium .settings-identity-logo,
html.panel-theme-dark .panel-app-premium .settings-identity-cover {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
}

@media (max-width: 900px) {
  .settings-identity {
    flex-wrap: wrap;
    overflow-x: visible;
  }
  .settings-identity-copy {
    flex-direction: column;
    align-items: flex-start;
    flex-wrap: wrap;
    flex: 1 1 auto;
    overflow-x: visible;
  }
  .settings-identity-name,
  .settings-identity-slug {
    white-space: normal;
  }
  .settings-identity-chips {
    flex-wrap: wrap;
  }
  .settings-identity-actions {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .settings-view-panels,
  .settings-form-split,
  .settings-brand-upload-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .settings-identity-brand {
    grid-template-columns: 64px;
  }
  .settings-kv-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* Plans list (admin) */
.panel-plan-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.panel-plan-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 12px;
  background: #faf8f5;
  border: 1px solid var(--panel-border);
}
.panel-plan-list li span {
  font-size: 13px;
  color: var(--panel-muted);
}

/* Empty states */
.panel-app-premium .empty-state {
  padding: 56px 24px;
  border-radius: 16px;
  background: #faf8f5;
  border: 1px dashed rgba(197, 157, 95, .3);
}
.panel-app-premium .empty-icon {
  font-size: 36px;
  margin-bottom: 12px;
  opacity: .7;
}
.panel-empty-inline {
  grid-column: 1 / -1;
  padding: 32px;
  text-align: center;
  color: var(--panel-muted);
  border-radius: 14px;
  background: #faf8f5;
  border: 1px dashed var(--panel-border);
}

/* Integration status */
.panel-app-premium .integration-status-card {
  margin-top: 0;
}
.panel-app-premium .integration-status-summary p {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.5;
}

/* Impersonation bar */
.panel-app-premium .impersonation-bar {
  border-radius: 14px;
  margin-bottom: 20px;
  border: 1px solid rgba(197, 157, 95, .25);
  background: linear-gradient(135deg, rgba(197, 157, 95, .1), rgba(255, 255, 255, .95));
}

/* Toast */
.panel-app-premium .panel-toast {
  border-radius: 14px;
  font-weight: 600;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .18);
}

/* Admin panel accent */
.panel-app-admin .panel-side {
  border-right-color: rgba(197, 157, 95, .15) !important;
}
.panel-app-admin .panel-role-badge-admin {
  color: #92400e;
  background: rgba(197, 157, 95, .14);
  border-color: rgba(197, 157, 95, .25);
}

/* Tab panel animation */
.panel-app-premium .tab-panel.active {
  animation: panel-tab-in .25s ease;
}
@keyframes panel-tab-in {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 900px) {
  .panel-app-premium .panel-content { padding: 20px 16px; }
  .panel-app-premium .metric-grid,
  .panel-app-premium .metric-grid-premium { grid-template-columns: 1fr; }
  .panel-split-layout { grid-template-columns: 1fr; }
  .settings-form-split { grid-template-columns: 1fr; }
  .panel-page-header,
  .assistant-page-header { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 640px) {
  .panel-app-premium .metric-card { padding-left: 20px !important; }
  .panel-app-premium .metric-card-icon { position: static; margin-bottom: 10px; }
  .tables-grid { grid-template-columns: 1fr; }
}

.panel-quick-link {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
}
.panel-overview-quick {
  margin-top: 4px;
}

.visual-menu-layout {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.visual-menu-hero-card {
  overflow: hidden;
}
.visual-menu-hero-split {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: 28px;
  align-items: center;
  width: 100%;
}
#tab-visual-menu .visual-menu-hero-compare {
  margin: 0;
}
#tab-visual-menu .home-compare-card {
  min-width: 0;
}
#tab-visual-menu .home-compare-img {
  min-height: 0;
}
.visual-menu-hero-copy {
  min-width: 0;
}
.visual-menu-hero-label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #9a7a3c;
  margin-bottom: 10px;
}
.visual-menu-hero-lead {
  margin: 0 0 4px;
  font-size: 15px;
  line-height: 1.55;
  color: #334155;
}
.visual-menu-hero-lead em {
  font-style: normal;
  color: #0f172a;
  font-weight: 700;
}
#tab-visual-menu .visual-menu-hero-metrics {
  margin: 18px 0 14px;
}
/* Eski hero (ul.visual-menu-metrics) — token satırını gizle */
#tab-visual-menu .visual-menu-metrics li:nth-child(2) {
  display: none !important;
}
#tab-visual-menu .visual-menu-hero-metrics div {
  background: rgba(15, 23, 42, .02);
  border-color: rgba(15, 23, 42, .08);
}
#tab-visual-menu .visual-menu-hero-checklist {
  margin: 0;
  padding-left: 0;
}
.visual-menu-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.visual-menu-requests-card {
  display: flex;
  flex-direction: column;
  min-height: 320px;
  max-height: min(78vh, 760px);
}
.visual-menu-requests,
.visual-menu-admin-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
  -webkit-overflow-scrolling: touch;
}
.visual-request-card,
.visual-admin-card {
  border: 1px solid rgba(15, 23, 42, .1);
  border-radius: 14px;
  padding: 16px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.visual-request-head,
.visual-admin-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}
.visual-request-head strong {
  display: block;
  font-size: 15px;
  line-height: 1.3;
}
.visual-request-meta {
  font-size: 12px;
  margin: 4px 0 0;
}
.visual-request-card.is-cancelled {
  opacity: .72;
}
.visual-request-card.is-cancelled .visual-request-compare {
  filter: grayscale(.35);
}
.visual-request-compare {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  text-align: center;
}
.visual-request-compare > span[aria-hidden="true"] {
  font-size: 18px;
  opacity: .45;
  padding: 0 2px;
}
.visual-request-compare figure {
  margin: 0;
  min-width: 0;
}
.visual-request-compare img {
  width: 100%;
  max-width: 100%;
  height: 110px;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .08);
  display: block;
  margin: 0 auto;
}
.visual-request-compare figcaption {
  font-size: 11px;
  margin-top: 6px;
  color: var(--muted, #64748b);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.visual-request-pending {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 110px;
  width: 100%;
  font-size: 13px;
  color: var(--muted, #64748b);
  border: 1px dashed rgba(15, 23, 42, .14);
  border-radius: 12px;
  background: rgba(15, 23, 42, .02);
  padding: 8px;
  box-sizing: border-box;
}
.visual-request-notes {
  font-size: 13px;
  margin: 10px 0 0;
  line-height: 1.45;
}
.visual-request-progress {
  margin: 0 0 14px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(15, 23, 42, .03);
  border: 1px solid rgba(15, 23, 42, .06);
}
.visual-request-progress.is-complete {
  background: rgba(34, 197, 94, .08);
  border-color: rgba(34, 197, 94, .22);
}
.visual-request-progress-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: 12px;
}
.visual-request-progress-label {
  color: var(--muted, #64748b);
  font-weight: 600;
}
.visual-request-progress-meta {
  color: var(--text, #0f172a);
  white-space: nowrap;
}
.visual-request-progress-meta strong {
  color: var(--accent, #7c5cff);
  font-variant-numeric: tabular-nums;
}
.visual-request-progress.is-complete .visual-request-progress-meta strong {
  color: #15803d;
}
.visual-request-progress-track {
  height: 6px;
  border-radius: 999px;
  background: rgba(15, 23, 42, .08);
  overflow: hidden;
}
.visual-request-progress-fill {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #7c5cff 0%, #a78bfa 100%);
  transition: width 0.4s ease;
}
.visual-request-progress.is-complete .visual-request-progress-fill {
  background: linear-gradient(90deg, #16a34a 0%, #4ade80 100%);
}
}
.visual-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.status-badge.is-progress {
  background: rgba(255, 193, 7, 0.15);
  color: #ffc107;
}
.status-badge.is-review {
  background: rgba(124, 92, 255, 0.18);
  color: #a78bfa;
}
.visual-request-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.visual-request-cancel {
  margin-top: 10px;
}
@media (max-width: 900px) {
  .visual-menu-grid { grid-template-columns: 1fr; }
  .visual-menu-hero-split { grid-template-columns: 1fr; gap: 20px; }
  .visual-menu-hero-compare { order: -1; }
  .visual-menu-requests-card { max-height: none; }
}

html.panel-theme-dark .panel-app-premium .visual-request-card,
html.panel-theme-dark .panel-app-premium .visual-admin-card {
  background:var(--panel-surface-soft, rgba(255, 255, 255, .04)) !important;
  border-color:var(--panel-border, rgba(255, 255, 255, .1)) !important;
  box-shadow:none !important;
}
html.panel-theme-dark .panel-app-premium .visual-request-pending {
  border-color:rgba(255, 255, 255, .12) !important;
  background:rgba(255, 255, 255, .03) !important;
  color:var(--panel-muted, #94a3b8) !important;
}
html.panel-theme-dark .panel-app-premium .visual-request-progress {
  background:rgba(255, 255, 255, .03) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .panel-app-premium .visual-request-progress-meta {
  color:var(--panel-text, #e2e8f0) !important;
}
html.panel-theme-dark .panel-app-premium .visual-request-progress-track {
  background:rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .panel-app-premium .visual-request-compare img {
  border-color:rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .panel-app-premium .visual-menu-hero-lead {
  color:var(--panel-muted, #94a3b8) !important;
}
html.panel-theme-dark .panel-app-premium .visual-menu-hero-lead em {
  color:var(--panel-text, #f1f5f9) !important;
}
html.panel-theme-dark .panel-app-premium #tab-visual-menu .visual-menu-hero-metrics div {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .panel-app-premium #tab-visual-menu .home-compare-card {
  background:var(--panel-surface-soft, rgba(255, 255, 255, .04)) !important;
  border-color:var(--panel-border, rgba(255, 255, 255, .1)) !important;
}

/* ===== Restoran Panel v3 — Premium Creative SaaS ===== */
.panel-app-restaurant.panel-v3 {
  --v3-bg: #eef0f6;
  --v3-bg-mesh: radial-gradient(ellipse 80% 60% at 10% -10%, rgba(124, 92, 255, .12), transparent 55%),
    radial-gradient(ellipse 70% 50% at 100% 0%, rgba(197, 157, 95, .14), transparent 50%),
    linear-gradient(180deg, #f3f1fb 0%, #eef0f6 40%, #e9ecf4 100%);
  --v3-sidebar: linear-gradient(180deg, #12131a 0%, #0c0d12 100%);
  --v3-sidebar-border: rgba(255, 255, 255, .06);
  --v3-surface: rgba(255, 255, 255, .78);
  --v3-surface-solid: #fff;
  --v3-border: rgba(15, 23, 42, .08);
  --v3-text: #0f172a;
  --v3-muted: #64748b;
  --v3-accent: #7c5cff;
  --v3-accent-soft: rgba(124, 92, 255, .12);
  --v3-gold: #c59d5f;
  --v3-gold-soft: rgba(197, 157, 95, .16);
  --v3-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 40px rgba(15, 23, 42, .06);
  --v3-shadow-lg: 0 24px 60px rgba(15, 23, 42, .1);
  --v3-radius: 18px;
  --v3-radius-sm: 12px;
  background: var(--v3-bg-mesh);
  color: var(--v3-text);
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

.panel-app-restaurant.panel-v3 .panel-layout {
  min-height: 100vh;
}

.panel-app-restaurant.panel-v3 .panel-side {
  background: var(--v3-sidebar) !important;
  border-right: 1px solid var(--v3-sidebar-border) !important;
  box-shadow: 8px 0 32px rgba(0, 0, 0, .18);
  padding: 20px 12px !important;
  width: 252px;
}
.panel-app-restaurant.panel-v3 .logo {
  color: #f8fafc !important;
  padding: 4px 6px;
}
.panel-app-restaurant.panel-v3 .logo-mark {
  background: linear-gradient(135deg, #7c5cff 0%, #c59d5f 100%) !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(124, 92, 255, .35);
}
.panel-app-restaurant.panel-v3 .panel-role-badge {
  color: #94a3b8 !important;
  background: rgba(255, 255, 255, .05) !important;
  border-color: rgba(255, 255, 255, .08) !important;
}
.panel-app-restaurant.panel-v3 .panel-nav button {
  color: #94a3b8 !important;
  border-radius: var(--v3-radius-sm);
  margin-bottom: 2px;
}
.panel-app-restaurant.panel-v3 .panel-nav-icon {
  background: rgba(255, 255, 255, .06) !important;
  color: #cbd5e1 !important;
}
.panel-app-restaurant.panel-v3 .panel-nav button:hover {
  background: rgba(255, 255, 255, .06) !important;
  color: #f1f5f9 !important;
}
.panel-app-restaurant.panel-v3 .panel-nav button:hover .panel-nav-icon {
  background: rgba(124, 92, 255, .2) !important;
  color: #c4b5fd !important;
}
.panel-app-restaurant.panel-v3 .panel-nav button.active {
  background: linear-gradient(90deg, rgba(124, 92, 255, .22), rgba(197, 157, 95, .12)) !important;
  color: #f8fafc !important;
  box-shadow: inset 0 0 0 1px rgba(124, 92, 255, .25);
}
.panel-app-restaurant.panel-v3 .panel-nav button.active .panel-nav-icon {
  background: rgba(124, 92, 255, .35) !important;
  color: #e9d5ff !important;
}
.panel-app-restaurant.panel-v3 .panel-side-footer {
  border-top-color: rgba(255, 255, 255, .08) !important;
}
.panel-app-restaurant.panel-v3 .panel-side-footer .btn-ghost {
  color: #cbd5e1 !important;
  border-color: rgba(255, 255, 255, .1) !important;
  background: rgba(255, 255, 255, .04);
}
.panel-app-restaurant.panel-v3 .panel-side-footer .btn-ghost:hover {
  background: rgba(255, 255, 255, .08);
  color: #fff !important;
}

.panel-app-restaurant.panel-v3 .panel-content {
  background: transparent !important;
  padding: 0 !important;
  min-width: 0;
  overflow-x: clip;
}
.panel-app-restaurant.panel-v3 .panel-top {
  position: sticky;
  top: 0;
  z-index: 20;
  margin: 0 !important;
  padding: 18px clamp(16px, 3vw, 32px);
  background: rgba(255, 255, 255, .72);
  backdrop-filter: blur(16px) saturate(1.2);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  border-bottom: 1px solid var(--v3-border);
  box-shadow: 0 1px 0 rgba(255, 255, 255, .6);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
}
.panel-app-restaurant.panel-v3 .panel-top-start {
  flex: 1 1 180px;
  min-width: 0;
}
.panel-app-restaurant.panel-v3 .panel-top-start > div {
  min-width: 0;
}
.panel-app-restaurant.panel-v3 .panel-top h1 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: clamp(1.15rem, 2.5vw, 1.65rem);
  font-weight: 800;
  letter-spacing: -.03em;
  color: var(--v3-text);
}
.panel-app-restaurant.panel-v3 .panel-top-actions {
  flex: 1 1 auto;
  flex-wrap: wrap;
  justify-content: flex-start;
  max-width: 100%;
}
.panel-app-restaurant.panel-v3 .panel-top .muted {
  color: var(--v3-muted) !important;
}
.panel-app-restaurant.panel-v3 .panel-top-cta {
  border-radius: 999px;
  padding: 10px 18px;
  font-weight: 600;
  background: linear-gradient(135deg, #7c5cff, #6d4aff) !important;
  box-shadow: 0 8px 24px rgba(124, 92, 255, .28);
  border: none;
}
.panel-app-restaurant.panel-v3 .panel-sidebar-toggle {
  background: var(--v3-surface-solid);
  border-color: var(--v3-border);
  box-shadow: var(--v3-shadow);
}

.panel-app-restaurant.panel-v3 .tab-panel {
  padding: clamp(16px, 3vw, 32px);
  animation: panelV3Fade .35s ease;
  max-width: 100%;
  overflow-x: clip;
  box-sizing: border-box;
}
@keyframes panelV3Fade {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: none; }
}

.panel-app-restaurant.panel-v3 .panel-dash-hero {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--v3-radius) + 4px);
  padding: clamp(20px, 4vw, 32px);
  margin-bottom: 22px;
  background: linear-gradient(135deg, #1a1b26 0%, #252038 45%, #1e1a2e 100%);
  color: #f8fafc;
  box-shadow: var(--v3-shadow-lg);
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-glow {
  position: absolute;
  inset: -40% -20% auto auto;
  width: 320px;
  height: 320px;
  background: radial-gradient(circle, rgba(124, 92, 255, .45), transparent 65%);
  pointer-events: none;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px 20px;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-copy {
  flex: 1 1 260px;
  min-width: 0;
  max-width: 100%;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-title {
  margin: 8px 0 6px;
  font-size: clamp(1.35rem, 3.5vw, 2rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-sub {
  margin: 0;
  font-size: clamp(13px, 2vw, 14px);
  line-height: 1.55;
  color: #94a3b8;
  max-width: 48ch;
  overflow-wrap: anywhere;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero .panel-page-badge {
  background: rgba(124, 92, 255, .2);
  border-color: rgba(167, 139, 250, .35);
  color: #ddd6fe;
}
.panel-app-restaurant.panel-v3 .panel-dash-hero-cta {
  border-radius: 999px;
  background: #fff !important;
  color: #1a1b26 !important;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .2);
  white-space: nowrap;
}

.panel-app-restaurant.panel-v3 .dash-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 2vw, 18px);
  margin-bottom: 28px;
}
.panel-app-restaurant.panel-v3 .dash-stat {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: clamp(14px, 2.5vw, 22px);
  border-radius: var(--v3-radius);
  background: var(--v3-surface);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, .65);
  box-shadow: var(--v3-shadow);
  transition: transform .2s ease, box-shadow .2s ease;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
}
.panel-app-restaurant.panel-v3 .dash-stat-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.panel-app-restaurant.panel-v3 .dash-stat-label {
  display: block;
  font-size: clamp(10px, 1.8vw, 12px);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--v3-muted);
  margin-bottom: 4px;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}
.panel-app-restaurant.panel-v3 .dash-stat-value {
  display: block;
  font-size: clamp(1.15rem, 2.8vw, 1.85rem);
  font-weight: 800;
  letter-spacing: -.03em;
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

.panel-app-restaurant.panel-v3 .dash-stat:hover {
  transform: translateY(-2px);
  box-shadow: var(--v3-shadow-lg);
}
.panel-app-restaurant.panel-v3 .dash-stat-icon {
  width: clamp(36px, 8vw, 44px);
  height: clamp(36px, 8vw, 44px);
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 700;
  flex-shrink: 0;
}
.panel-app-restaurant.panel-v3 .dash-stat--orders .dash-stat-icon {
  background: linear-gradient(135deg, rgba(124, 92, 255, .18), rgba(124, 92, 255, .08));
  color: #6d28d9;
}
.panel-app-restaurant.panel-v3 .dash-stat--revenue .dash-stat-icon {
  background: linear-gradient(135deg, rgba(34, 197, 94, .18), rgba(34, 197, 94, .08));
  color: #15803d;
}
.panel-app-restaurant.panel-v3 .dash-stat--items .dash-stat-icon {
  background: linear-gradient(135deg, rgba(197, 157, 95, .22), rgba(197, 157, 95, .1));
  color: #92400e;
}

.panel-app-restaurant.panel-v3 .panel-dash-section-head {
  margin-bottom: 14px;
}
.panel-app-restaurant.panel-v3 .panel-dash-section-title {
  margin: 0 0 4px;
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: -.02em;
}
.panel-app-restaurant.panel-v3 .panel-dash-section-sub {
  margin: 0;
  font-size: 13px;
}
.panel-app-restaurant.panel-v3 .dash-quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(10px, 2vw, 14px);
}
.panel-app-restaurant.panel-v3 .dash-quick-card {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  text-align: left;
  padding: 16px 18px;
  border: 1px solid var(--v3-border);
  border-radius: var(--v3-radius);
  background: var(--v3-surface-solid);
  box-shadow: var(--v3-shadow);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  text-decoration: none;
  color: inherit;
  font: inherit;
}
.panel-app-restaurant.panel-v3 .dash-quick-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--v3-shadow-lg);
  border-color: rgba(124, 92, 255, .25);
}
.panel-app-restaurant.panel-v3 .dash-quick-icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  font-size: 16px;
  flex-shrink: 0;
}
.panel-app-restaurant.panel-v3 .dash-quick-icon--assistant { background: rgba(124, 92, 255, .14); color: #6d28d9; }
.panel-app-restaurant.panel-v3 .dash-quick-icon--photo { background: rgba(59, 130, 246, .14); color: #1d4ed8; }
.panel-app-restaurant.panel-v3 .dash-quick-icon--visual { background: rgba(236, 72, 153, .14); color: #be185d; }
.panel-app-restaurant.panel-v3 .dash-quick-icon--tables { background: rgba(197, 157, 95, .18); color: #92400e; }
.panel-app-restaurant.panel-v3 .dash-quick-icon--menu { background: rgba(34, 197, 94, .14); color: #15803d; }
.panel-app-restaurant.panel-v3 .dash-quick-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.panel-app-restaurant.panel-v3 .dash-quick-body strong {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -.01em;
}
.panel-app-restaurant.panel-v3 .dash-quick-body span {
  font-size: 12px;
  color: var(--v3-muted);
}
.panel-app-restaurant.panel-v3 .dash-quick-arrow {
  font-size: 18px;
  color: #cbd5e1;
  transition: transform .18s ease, color .18s ease;
}
.panel-app-restaurant.panel-v3 .dash-quick-card:hover .dash-quick-arrow {
  transform: translateX(3px);
  color: var(--v3-accent);
}

.panel-app-restaurant.panel-v3 .panel-page-badge {
  background: var(--v3-accent-soft);
  border-color: rgba(124, 92, 255, .22);
  color: #6d28d9;
}
.panel-app-restaurant.panel-v3 .panel-page-title {
  font-weight: 800;
  letter-spacing: -.03em;
}
.panel-app-restaurant.panel-v3 .card,
.panel-app-restaurant.panel-v3 .panel-section-card,
.panel-app-restaurant.panel-v3 .orders-panel-card,
.panel-app-restaurant.panel-v3 .menu-manager-card {
  background: var(--v3-surface-solid) !important;
  border: 1px solid var(--v3-border) !important;
  border-radius: var(--v3-radius) !important;
  box-shadow: var(--v3-shadow) !important;
}
.panel-app-restaurant.panel-v3 .btn-primary {
  background: linear-gradient(135deg, #7c5cff, #6346e0) !important;
  border: none;
  border-radius: var(--v3-radius-sm);
  font-weight: 600;
  box-shadow: 0 6px 20px rgba(124, 92, 255, .22);
}
.panel-app-restaurant.panel-v3 .btn-ghost {
  border-radius: var(--v3-radius-sm);
  border-color: var(--v3-border);
}
.panel-app-restaurant.panel-v3 .panel-form input,
.panel-app-restaurant.panel-v3 .panel-form select,
.panel-app-restaurant.panel-v3 .panel-form textarea {
  border-radius: var(--v3-radius-sm);
  border-color: var(--v3-border);
  background: #f8fafc;
}
.panel-app-restaurant.panel-v3 .panel-form input:focus,
.panel-app-restaurant.panel-v3 .panel-form select:focus,
.panel-app-restaurant.panel-v3 .panel-form textarea:focus {
  border-color: rgba(124, 92, 255, .45);
  box-shadow: 0 0 0 3px rgba(124, 92, 255, .12);
}
.panel-app-restaurant.panel-v3 .data-table thead th {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--v3-muted);
  background: #f8fafc;
  border-bottom: 1px solid var(--v3-border);
}
.panel-app-restaurant.panel-v3 .data-table tbody tr:hover {
  background: rgba(124, 92, 255, .04) !important;
}

/* Restoran panel v3 — koyu tema (panel-theme-dark ile senkron) */
html.panel-theme-dark .panel-app-restaurant.panel-v3 {
  --v3-bg:#0f1117 !important;
  --v3-bg-mesh:radial-gradient(ellipse 80% 60% at 10% -10%, rgba(124, 92, 255, .14), transparent 55%),
    radial-gradient(ellipse 70% 50% at 100% 0%, rgba(197, 157, 95, .1), transparent 50%),
    linear-gradient(180deg, #12131a 0%, #0c0d12 45%, #0a0b10 100%) !important;
  --v3-surface:rgba(255, 255, 255, .06) !important;
  --v3-surface-solid:#1a1b26 !important;
  --v3-border:rgba(255, 255, 255, .1) !important;
  --v3-text:#f1f5f9 !important;
  --v3-muted:#94a3b8 !important;
  --v3-accent-soft:rgba(124, 92, 255, .18) !important;
  --v3-gold-soft:rgba(197, 157, 95, .14) !important;
  --v3-shadow:0 1px 2px rgba(0, 0, 0, .25), 0 12px 40px rgba(0, 0, 0, .35) !important;
  --v3-shadow-lg:0 24px 60px rgba(0, 0, 0, .45) !important;
  background:var(--v3-bg-mesh) !important;
  color:var(--v3-text) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top {
  background: rgba(26, 27, 38, .88) !important;
  border-bottom-color: var(--v3-border) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .04) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top h1,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-page-title {
  color: var(--v3-text) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top .muted,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .muted {
  color: var(--v3-muted) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-form input,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-form select,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-form textarea {
  background:rgba(255, 255, 255, .05) !important;
  border-color:var(--v3-border) !important;
  color:var(--v3-text) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .data-table thead th {
  background:rgba(255, 255, 255, .04) !important;
  color:var(--v3-muted) !important;
  border-bottom-color:var(--v3-border) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .data-table tbody td {
  color:var(--v3-text) !important;
  border-color:var(--v3-border) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .data-table tbody tr:hover {
  background: rgba(124, 92, 255, .1) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .dash-quick-card {
  background: var(--v3-surface-solid) !important;
  border-color: var(--v3-border) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .dash-quick-card strong {
  color:var(--v3-text) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .dash-quick-card span {
  color:var(--v3-muted) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-lang-switch,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-theme-toggle {
  background:rgba(255, 255, 255, .06) !important;
  border-color:var(--v3-border) !important;
  color:var(--v3-text) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-lang-switch .home-lang-btn {
  color:var(--v3-muted) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-lang-switch .home-lang-btn.is-active {
  background:rgba(197, 157, 95, .18) !important;
  color:#ffe8b8 !important;
}
.panel-app-restaurant.panel-v3 .impersonation-bar {
  margin: 0 clamp(16px, 3vw, 32px);
  border-radius: var(--v3-radius-sm);
}

/* ===== Operasyon Merkezi (CRM-lite) ===== */
.ops-hub {
  width: 100%;
  max-width: min(1200px, 100%);
  margin: 0 auto;
}

.ops-hero-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  max-width: 100%;
}

.ops-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .15);
  color: #e2e8f0;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.ops-chip.is-ok { background: rgba(34, 197, 94, .18); border-color: rgba(34, 197, 94, .35); color: #bbf7d0; }
.ops-chip.is-warn { background: rgba(251, 191, 36, .18); border-color: rgba(251, 191, 36, .35); color: #fde68a; }

.ops-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  flex: 0 1 auto;
  margin-left: auto;
  max-width: 100%;
}

.panel-app-restaurant.panel-v3 .ops-hero-btn {
  color: #e2e8f0 !important;
  border-color: rgba(255, 255, 255, .2) !important;
}

.ops-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 168px), 1fr));
  gap: clamp(10px, 1.5vw, 14px);
  margin-bottom: 20px;
  align-items: stretch;
}

.ops-kpi .dash-stat {
  flex-direction: row;
}

.ops-kpi .dash-stat-value {
  font-size: clamp(1.1rem, 2.2vw, 1.5rem);
}

.ops-kpi-meta {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  color: var(--v3-muted, #64748b);
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
}

.ops-kpi-meta.is-up { color: #15803d; }
.ops-kpi-meta.is-down { color: #b91c1c; }

.panel-app-restaurant.panel-v3 .dash-stat--pending .dash-stat-icon {
  background: rgba(251, 191, 36, .16);
  color: #b45309;
}
.panel-app-restaurant.panel-v3 .dash-stat--basket .dash-stat-icon {
  background: rgba(59, 130, 246, .14);
  color: #1d4ed8;
}
.panel-app-restaurant.panel-v3 .dash-stat--week .dash-stat-icon {
  background: rgba(168, 85, 247, .14);
  color: #7e22ce;
  font-size: 11px;
  font-weight: 800;
}

.ops-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 320px);
  gap: 16px;
  margin-bottom: 24px;
  align-items: start;
}

.ops-main-col,
.ops-side-col {
  min-width: 0;
}

.ops-card {
  background: var(--v3-surface, #fff);
  border: 1px solid var(--v3-border, rgba(26, 26, 26, .08));
  border-radius: var(--v3-radius, 16px);
  padding: clamp(14px, 2vw, 18px);
  box-shadow: var(--v3-shadow, 0 10px 32px rgba(10, 14, 20, .06));
  margin-bottom: 14px;
  min-width: 0;
  box-sizing: border-box;
}

.ops-card:last-child { margin-bottom: 0; }

.ops-card-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px 12px;
  margin-bottom: 14px;
}

.ops-card-head > div {
  min-width: 0;
  flex: 1 1 140px;
}

.ops-card-title {
  margin: 0;
  font-size: clamp(14px, 2vw, 15px);
  font-weight: 700;
  color: var(--v3-text, #1a1a1a);
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.ops-card-sub { margin: 2px 0 0; font-size: 12px; }

.ops-bar-chart {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
  min-height: 160px;
  padding-top: 8px;
}

.ops-bar-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.ops-bar-track {
  width: 100%;
  max-width: 36px;
  height: 120px;
  border-radius: 8px 8px 4px 4px;
  background: rgba(124, 92, 255, .08);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}

.ops-bar-fill {
  width: 100%;
  border-radius: 8px 8px 4px 4px;
  background: linear-gradient(180deg, #a78bfa, #7c5cff);
  transition: height .3s ease;
}

.ops-bar-label { font-size: 10px; color: var(--v3-muted); font-weight: 600; }
.ops-bar-value { font-size: 9px; color: #94a3b8; white-space: nowrap; }
.ops-chart-empty { padding: 24px 0; text-align: center; font-size: 13px; }

.ops-feed-list { display: grid; gap: 6px; }

.ops-feed-item {
  display: grid;
  grid-template-columns: minmax(44px, auto) minmax(0, 1fr) auto;
  grid-template-areas:
    "time main price"
    "time main status";
  gap: 4px 8px;
  align-items: center;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--v3-border);
  border-radius: 12px;
  background: #fafbfc;
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: background .15s, border-color .15s;
  box-sizing: border-box;
}

.ops-feed-time { grid-area: time; font-size: 11px; color: var(--v3-muted); font-weight: 600; white-space: nowrap; }
.ops-feed-main { grid-area: main; min-width: 0; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ops-feed-main strong { margin-right: 4px; }
.ops-feed-price { grid-area: price; font-size: 13px; font-weight: 700; color: #6d28d9; white-space: nowrap; }
.ops-feed-item .status-pill { grid-area: status; justify-self: end; }
.ops-feed-item:hover {
  background: rgba(124, 92, 255, .06);
  border-color: rgba(124, 92, 255, .25);
}

.ops-feed-empty { padding: 12px 0; font-size: 13px; }

.ops-health-score-wrap { text-align: center; margin-bottom: 14px; }

.ops-health-ring {
  --ops-score: 0;
  width: 88px;
  height: 88px;
  margin: 0 auto 8px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: conic-gradient(#7c5cff calc(var(--ops-score) * 1%), rgba(124, 92, 255, .12) 0);
  position: relative;
}

.ops-health-ring::before {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 50%;
  background: var(--v3-surface, #fff);
}

.ops-health-ring span {
  position: relative;
  font-size: 22px;
  font-weight: 800;
  color: #6d28d9;
}

.ops-health-label { margin: 0; font-size: 12px; }

.ops-health-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}

.ops-health-list li {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-size: 12px;
  padding: 8px 10px;
  border-radius: 10px;
  background: #f8fafc;
}

.ops-health-list li.is-ok { color: #166534; background: #ecfdf5; }
.ops-health-list li.is-warn { color: #92400e; background: #fffbeb; }

.ops-health-link {
  border: none;
  background: transparent;
  color: #7c5cff;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  margin-left: auto;
}

.ops-top-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}

.ops-top-list li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px 10px;
  border-radius: 10px;
  background: #fafbfc;
  font-size: 13px;
}

.ops-top-rank {
  width: 24px;
  height: 24px;
  border-radius: 8px;
  background: rgba(124, 92, 255, .12);
  color: #6d28d9;
  font-size: 11px;
  font-weight: 800;
  display: grid;
  place-items: center;
}

.ops-top-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ops-top-list em { font-style: normal; font-weight: 700; color: #6d28d9; }

.ops-pipeline { display: grid; gap: 8px; }

.ops-pipe-row {
  display: grid;
  grid-template-columns: 72px 1fr 28px;
  gap: 8px;
  align-items: center;
  font-size: 12px;
}

.ops-pipe-bar {
  height: 6px;
  border-radius: 999px;
  background: rgba(124, 92, 255, .1);
  overflow: hidden;
}

.ops-pipe-bar i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #7c5cff, #a78bfa);
}

.ops-pipe-row strong { text-align: right; font-size: 12px; }

/* Raporlar sekmesi */
.ops-reports-kpi {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.ops-report-kpi {
  padding: 16px 18px;
  border-radius: var(--v3-radius);
  background: var(--v3-surface);
  border: 1px solid var(--v3-border);
  box-shadow: var(--v3-shadow);
}

.ops-report-kpi span { display: block; font-size: 12px; margin-bottom: 4px; }
.ops-report-kpi strong { font-size: 22px; font-weight: 800; color: #6d28d9; }

.ops-reports-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.ops-period-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ops-period-tab {
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid var(--v3-border);
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  color: var(--v3-muted);
  transition: background .15s, color .15s, border-color .15s;
}

.ops-period-tab.active {
  background: linear-gradient(135deg, #7c5cff, #6346e0);
  border-color: transparent;
  color: #fff;
}

/* Raporlar → Özel tarih/aralık (2026-08-24) */
.ops-custom-range[hidden] { display: none; }
.ops-custom-range {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  margin-top: 10px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #faf8f4;
  border: 1px solid var(--v3-border);
}
.ops-custom-range label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--v3-muted);
}
.ops-custom-range input[type="date"] {
  padding: 7px 10px;
  border-radius: 8px;
  border: 1px solid var(--v3-border);
  background: #fff;
  font: inherit;
  font-size: 13px;
  color: var(--v3-text, #1a1a1a);
}

.ops-reports-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ops-status-breakdown { display: grid; gap: 8px; }

.ops-status-row {
  display: grid;
  grid-template-columns: 88px 1fr 32px;
  gap: 8px;
  align-items: center;
  font-size: 12px;
}

.ops-status-bar {
  height: 8px;
  border-radius: 999px;
  background: rgba(124, 92, 255, .1);
  overflow: hidden;
}

.ops-status-bar i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #7c5cff, #c4b5fd);
}

.ops-status-row strong { text-align: right; }

@media (min-width: 641px) and (max-width: 1024px) {
  .ops-main-grid { grid-template-columns: 1fr; }
  .ops-reports-grid { grid-template-columns: 1fr; }
  .panel-app-restaurant.panel-v3 .dash-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .panel-app-restaurant.panel-v3 .dash-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .panel-app-restaurant.panel-v3 .panel-split-layout,
  .panel-app-restaurant.panel-v3 .visual-menu-grid,
  .panel-app-restaurant.panel-v3 .tables-page-layout {
    grid-template-columns: 1fr !important;
  }
  .panel-app-restaurant.panel-v3 .tables-sidebar {
    position: static !important;
  }
}

@media (max-width: 1100px) {
  .ops-main-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .ops-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ops-kpi .dash-stat {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .ops-kpi .dash-stat-icon {
    align-self: flex-start;
  }
  .ops-reports-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ops-feed-item {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "main price"
      "time status";
  }
  .ops-feed-time { white-space: normal; }
  .ops-feed-main { white-space: normal; overflow: visible; }
  .ops-bar-chart { grid-template-columns: repeat(7, minmax(0, 1fr)); min-height: 120px; }
  .panel-app-restaurant.panel-v3 .panel-top {
    padding: 14px 16px;
  }
  .panel-app-restaurant.panel-v3 .panel-top-cta span:first-child {
    display: none;
  }
  .panel-app-restaurant.panel-v3 .tab-panel {
    padding: 14px 16px 24px;
  }
  .panel-app-restaurant.panel-v3 .dash-stat-grid {
    grid-template-columns: 1fr;
  }
  .panel-app-restaurant.panel-v3 .dash-quick-grid {
    grid-template-columns: 1fr;
  }
  .panel-app-restaurant.panel-v3 .panel-dash-hero-inner {
    flex-direction: column;
    align-items: stretch;
  }
  .panel-app-restaurant.panel-v3 .ops-hero-actions {
    width: 100%;
    margin-left: 0;
  }
  .panel-app-restaurant.panel-v3 .ops-hero-actions .btn,
  .panel-app-restaurant.panel-v3 .ops-hero-actions a {
    flex: 1 1 auto;
    justify-content: center;
    text-align: center;
  }
  .panel-app-restaurant.panel-v3 .panel-dash-hero-cta {
    width: 100%;
    justify-content: center;
  }
  .panel-app-restaurant.panel-v3 .panel-page-header {
    margin-bottom: 16px;
  }
  .panel-app-restaurant.panel-v3 .panel-section-card {
    padding: 16px !important;
  }
}

@media (max-width: 400px) {
  .ops-kpi-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1024px) {
  .panel-app-restaurant.panel-v3 .panel-side {
    box-shadow: 16px 0 48px rgba(0, 0, 0, .35);
  }
}

@media (min-width: 1280px) {
  .panel-app-restaurant.panel-v3 .dash-quick-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* ===== Sipariş sesli bildirim ===== */
.panel-app-restaurant .panel-top-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1 auto;
  min-width: 0;
}
.panel-app-restaurant .panel-top-actions-center {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 0;
}
.panel-app-restaurant .panel-top-actions > .panel-prefs-tools {
  flex: 0 0 auto;
  margin-inline-start: 14px;
  padding-inline-start: 14px;
  border-inline-start: 1px solid var(--v3-border, rgba(15, 23, 42, .1));
}
.panel-app-restaurant .panel-status-toggles {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.panel-app-restaurant .panel-sound-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid var(--v3-border, rgba(15, 23, 42, .08));
  background: rgba(255, 255, 255, .9);
  color: var(--v3-text, #0f172a);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.panel-app-restaurant .panel-sound-toggle:hover {
  border-color: rgba(124, 92, 255, .25);
  transform: translateY(-1px);
}
.panel-app-restaurant .panel-sound-toggle.is-muted {
  opacity: .72;
  background: #f1f5f9;
}
.panel-app-restaurant .panel-sound-toggle.is-muted .panel-sound-toggle-icon {
  filter: grayscale(1);
}
.panel-app-restaurant .panel-nav button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.panel-app-restaurant .panel-nav-badge {
  margin-left: auto;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #ef4444;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, .25);
  animation: orderBadgePulse 1.6s ease infinite;
}
.panel-app-restaurant .panel-nav button.active .panel-nav-badge {
  box-shadow: 0 0 0 2px rgba(239, 68, 68, .35);
}
@keyframes orderBadgePulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.08); }
}
.panel-app-restaurant .order-alert-bar {
  margin: 0;
  padding: 0 clamp(16px, 3vw, 32px) 12px;
  background: transparent;
}
.panel-app-restaurant .order-alert-bar-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  padding: 14px 18px;
  border-radius: 16px;
  background: linear-gradient(135deg, #1a1b26 0%, #312e81 100%);
  color: #f8fafc;
  box-shadow: 0 12px 40px rgba(49, 46, 129, .28);
  border: 1px solid rgba(167, 139, 250, .25);
  animation: orderAlertSlide .35s ease;
}
@keyframes orderAlertSlide {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: none; }
}
.panel-app-restaurant .order-alert-pulse {
  font-size: 22px;
  animation: orderAlertBell 1s ease infinite;
}
@keyframes orderAlertBell {
  0%, 100% { transform: rotate(0); }
  15% { transform: rotate(14deg); }
  30% { transform: rotate(-12deg); }
  45% { transform: rotate(8deg); }
  60% { transform: rotate(0); }
}
.panel-app-restaurant .order-alert-copy {
  flex: 1;
  min-width: 180px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.panel-app-restaurant .order-alert-copy strong {
  font-size: 15px;
  letter-spacing: -.01em;
}
.panel-app-restaurant .order-alert-copy .muted {
  color: #cbd5e1 !important;
  font-size: 13px;
}
.panel-app-restaurant .order-alert-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.panel-app-restaurant .order-alert-actions .btn-primary {
  background: #fff !important;
  color: #312e81 !important;
  border: none;
  font-weight: 700;
}
.panel-app-restaurant .order-alert-actions .btn-ghost {
  color: #e2e8f0 !important;
  border-color: rgba(255, 255, 255, .2) !important;
}
.panel-app-restaurant .panel-top.has-order-alert {
  box-shadow: inset 0 -3px 0 #ef4444;
  animation: orderTopPulse 2s ease infinite;
}
@keyframes orderTopPulse {
  0%, 100% { box-shadow: inset 0 -3px 0 #ef4444; }
  50% { box-shadow: inset 0 -3px 0 #f87171; }
}
@media (max-width: 640px) {
  .panel-app-restaurant .panel-sound-toggle-label {
    display: none;
  }
  .panel-app-restaurant .panel-print-toggle-label {
    display: none;
  }
  .panel-app-restaurant .panel-orders-toggle-label {
    display: none;
  }
  .panel-app-restaurant .panel-top-actions {
    gap: 8px;
  }
  .panel-app-restaurant .order-alert-bar-inner {
    flex-direction: column;
    align-items: stretch;
  }
  .panel-app-restaurant .order-alert-actions {
    width: 100%;
  }
  .panel-app-restaurant .order-alert-actions .btn {
    flex: 1;
  }
}

.panel-app-restaurant .panel-page-header--split {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px 16px;
}
.panel-app-restaurant .orders-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.panel-app-restaurant .orders-toolbar .btn-ghost {
  border-color: rgba(15, 23, 42, .1);
  background: rgba(255, 255, 255, .85);
}
html.panel-theme-dark .panel-app-premium.panel-app-restaurant .orders-toolbar .btn-ghost {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}

/* Termal fiş yazdırma */
.panel-app-restaurant .panel-print-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid var(--home-border, rgba(26, 26, 26, .08));
  background: rgba(255, 255, 255, .9);
  color: var(--home-text, #1a1a1a);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.panel-app-restaurant .panel-print-toggle:hover {
  border-color: rgba(197, 157, 95, .35);
  transform: translateY(-1px);
}
.panel-app-restaurant .panel-print-toggle.is-muted {
  opacity: .72;
  background: #f1f5f9;
}
.panel-app-restaurant .panel-orders-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(34, 197, 94, 0.35);
  background: rgba(240, 253, 244, 0.95);
  color: #166534;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.panel-app-restaurant .panel-orders-toggle:hover {
  border-color: rgba(34, 197, 94, 0.55);
  transform: translateY(-1px);
}
.panel-app-restaurant .panel-orders-toggle.is-closed {
  border-color: rgba(239, 68, 68, 0.35);
  background: rgba(254, 242, 242, 0.95);
  color: #991b1b;
}
.panel-app-restaurant .panel-orders-toggle.is-closed:hover {
  border-color: rgba(239, 68, 68, 0.55);
}
.panel-app-restaurant .panel-orders-toggle:disabled {
  opacity: .65;
  cursor: wait;
}
.panel-app-restaurant .settings-orders-block,
.panel-app-restaurant .settings-thermal-block {
  padding: 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .07);
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  margin-bottom: 0;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.panel-app-restaurant .settings-orders-block:hover,
.panel-app-restaurant .settings-thermal-block:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(15, 23, 42, .08);
  border-color: rgba(15, 23, 42, .12);
}
.panel-app-restaurant .settings-orders-block .settings-group-title,
.panel-app-restaurant .settings-thermal-block .settings-group-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px;
}
.panel-app-restaurant .settings-orders-block .settings-group-title:before,
.panel-app-restaurant .settings-thermal-block .settings-group-title:before {
  content: none !important;
}
.settings-card-icon {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  display: grid;
  place-items: center;
  font-size: 16px;
  background: rgba(15, 23, 42, .05);
}
.settings-card--blue .settings-card-icon { background: linear-gradient(135deg, rgba(59, 130, 246, .2), rgba(59, 130, 246, .08)); }
.settings-card--violet .settings-card-icon { background: linear-gradient(135deg, rgba(124, 92, 255, .2), rgba(124, 92, 255, .08)); }
.settings-card--amber .settings-card-icon { background: linear-gradient(135deg, rgba(245, 158, 11, .22), rgba(245, 158, 11, .08)); }
.settings-card--orange .settings-card-icon { background: linear-gradient(135deg, rgba(255, 144, 55, .22), rgba(255, 144, 55, .08)); }
.settings-card--green .settings-card-icon { background: linear-gradient(135deg, rgba(34, 197, 94, .2), rgba(34, 197, 94, .08)); }
.settings-card--teal .settings-card-icon { background: linear-gradient(135deg, rgba(20, 184, 166, .2), rgba(20, 184, 166, .08)); }
.settings-card--pink .settings-card-icon { background: linear-gradient(135deg, rgba(236, 72, 153, .2), rgba(236, 72, 153, .08)); }
.settings-card-summary {
  margin: 0 0 12px;
  font-size: 13px;
}
.pickup-discount-dialog-fields {
  padding: 22px 26px 26px;
  display: grid;
  gap: 14px;
}
.pickup-discount-dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 4px;
}
.panel-app-restaurant .settings-orders-block .form-field,
.panel-app-restaurant .settings-orders-block .photo-upload-zone {
  min-width: 0;
}
.panel-app-restaurant .settings-orders-block .photo-upload-cover .photo-upload-preview {
  min-height: 70px;
}
.panel-app-restaurant .order-print-btn {
  min-width: 36px;
  padding: 6px 10px;
}
html.panel-theme-dark .panel-app-restaurant .settings-orders-block,
html.panel-theme-dark .panel-app-restaurant .settings-thermal-block {
  background: rgba(255, 255, 255, .035);
  border-color: rgba(255, 255, 255, .08);
}
html.panel-theme-dark .panel-app-restaurant .settings-orders-block:hover,
html.panel-theme-dark .panel-app-restaurant .settings-thermal-block:hover {
  border-color: rgba(255, 255, 255, .16);
  box-shadow: 0 14px 32px rgba(0, 0, 0, .3);
}
.order-receipt-print-frame {
  position: fixed;
  left: -10000px;
  top: 0;
  width: 80mm;
  height: 200mm;
  border: 0;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

/* ===== Menü sektör temaları ===== */
.menu-theme-restaurant,
.menu-theme-dark { /* legacy */ }

.menu-theme-cafe {
  --dm-bg: #1a120c;
  --dm-shell: #221810;
  --dm-card: #2e2118;
  --dm-card-hover: #3a2a1f;
  --dm-search: #5c4030;
  --dm-text: #faf6f0;
  --dm-muted: #c4b5a8;
  --dm-accent: #d4a574;
  --dm-btn-from: #6b4423;
  --dm-btn-to: #8b5a2b;
  --dm-nav-from: #6b4423;
  --dm-nav-to: #d4a574;
  --dm-hero-glow: rgba(107,68,35,.42);
  --dm-hero-top: #2a1c12;
  --dm-sheet-top: #2a2018;
  --dm-sheet-mid: #221810;
  --dm-sheet-bottom: #1a120c;
}

.menu-theme-burger {
  --dm-bg: #140808;
  --dm-shell: #1a0c0c;
  --dm-card: #261010;
  --dm-card-hover: #321616;
  --dm-search: #7a2020;
  --dm-text: #fff8f0;
  --dm-muted: #d4a8a0;
  --dm-accent: #f5c518;
  --dm-btn-from: #c41e1e;
  --dm-btn-to: #e85d04;
  --dm-nav-from: #c41e1e;
  --dm-nav-to: #f5c518;
  --dm-hero-glow: rgba(196,30,30,.4);
  --dm-hero-top: #2a0e0e;
  --dm-sheet-top: #261010;
  --dm-sheet-mid: #1a0c0c;
  --dm-sheet-bottom: #140808;
}

.menu-theme-pizza {
  --dm-bg: #120a0a;
  --dm-shell: #180e0e;
  --dm-card: #241414;
  --dm-card-hover: #301a1a;
  --dm-search: #6b2828;
  --dm-text: #fff5f0;
  --dm-muted: #c9a8a0;
  --dm-accent: #2ecc71;
  --dm-btn-from: #c0392b;
  --dm-btn-to: #e74c3c;
  --dm-nav-from: #c0392b;
  --dm-nav-to: #2ecc71;
  --dm-hero-glow: rgba(192,57,43,.38);
  --dm-hero-top: #280e0e;
  --dm-sheet-top: #241414;
  --dm-sheet-mid: #180e0e;
  --dm-sheet-bottom: #120a0a;
}

.menu-theme-sushi {
  --dm-bg: #060810;
  --dm-shell: #0a0e18;
  --dm-card: #101828;
  --dm-card-hover: #162038;
  --dm-search: #1e3050;
  --dm-text: #f0f4fa;
  --dm-muted: #94a8c4;
  --dm-accent: #e74c3c;
  --dm-btn-from: #1a2840;
  --dm-btn-to: #2c4060;
  --dm-nav-from: #1a2840;
  --dm-nav-to: #e74c3c;
  --dm-hero-glow: rgba(231,76,60,.22);
  --dm-hero-top: #0c1220;
  --dm-sheet-top: #101828;
  --dm-sheet-mid: #0a0e18;
  --dm-sheet-bottom: #060810;
}

.menu-theme-kebab {
  --dm-bg: #140e08;
  --dm-shell: #1a120a;
  --dm-card: #261a10;
  --dm-card-hover: #322216;
  --dm-search: #6b4020;
  --dm-text: #fff8f0;
  --dm-muted: #c4a890;
  --dm-accent: #f39c12;
  --dm-btn-from: #a04000;
  --dm-btn-to: #d35400;
  --dm-nav-from: #a04000;
  --dm-nav-to: #f39c12;
  --dm-hero-glow: rgba(211,84,0,.38);
  --dm-hero-top: #281808;
  --dm-sheet-top: #261a10;
  --dm-sheet-mid: #1a120a;
  --dm-sheet-bottom: #140e08;
}

.menu-theme-seafood {
  --dm-bg: #061018;
  --dm-shell: #081420;
  --dm-card: #0c2030;
  --dm-card-hover: #102838;
  --dm-search: #1a4868;
  --dm-text: #eef8fc;
  --dm-muted: #8cb4c8;
  --dm-accent: #48cae4;
  --dm-btn-from: #0077b6;
  --dm-btn-to: #00b4d8;
  --dm-nav-from: #0077b6;
  --dm-nav-to: #48cae4;
  --dm-hero-glow: rgba(0,180,216,.32);
  --dm-hero-top: #0a1828;
  --dm-sheet-top: #0c2030;
  --dm-sheet-mid: #081420;
  --dm-sheet-bottom: #061018;
}

.menu-theme-dessert {
  --dm-bg: #180c14;
  --dm-shell: #201018;
  --dm-card: #2a1620;
  --dm-card-hover: #361c28;
  --dm-search: #5c3048;
  --dm-text: #fff5f8;
  --dm-muted: #d4a8b8;
  --dm-accent: #f8b4d9;
  --dm-btn-from: #be4b7a;
  --dm-btn-to: #e879a8;
  --dm-nav-from: #be4b7a;
  --dm-nav-to: #f8b4d9;
  --dm-hero-glow: rgba(232,121,168,.32);
  --dm-hero-top: #281018;
  --dm-sheet-top: #2a1620;
  --dm-sheet-mid: #201018;
  --dm-sheet-bottom: #180c14;
}

.menu-theme-bakery {
  --dm-bg: #161008;
  --dm-shell: #1e160c;
  --dm-card: #2a2010;
  --dm-card-hover: #362816;
  --dm-search: #6b5028;
  --dm-text: #faf6ec;
  --dm-muted: #c4b090;
  --dm-accent: #e8b84a;
  --dm-btn-from: #8b6914;
  --dm-btn-to: #c4922a;
  --dm-nav-from: #8b6914;
  --dm-nav-to: #e8b84a;
  --dm-hero-glow: rgba(196,146,42,.35);
  --dm-hero-top: #281c0c;
  --dm-sheet-top: #2a2010;
  --dm-sheet-mid: #1e160c;
  --dm-sheet-bottom: #161008;
}

.menu-theme-bar {
  --dm-bg: #080610;
  --dm-shell: #0c0818;
  --dm-card: #141020;
  --dm-card-hover: #1c1428;
  --dm-search: #302050;
  --dm-text: #f4f0fc;
  --dm-muted: #a898c8;
  --dm-accent: #a855f7;
  --dm-btn-from: #5b21b6;
  --dm-btn-to: #7c3aed;
  --dm-nav-from: #5b21b6;
  --dm-nav-to: #a855f7;
  --dm-hero-glow: rgba(124,58,237,.32);
  --dm-hero-top: #120820;
  --dm-sheet-top: #141020;
  --dm-sheet-mid: #0c0818;
  --dm-sheet-bottom: #080610;
}

.menu-theme-vegan {
  --dm-bg: #081208;
  --dm-shell: #0c180c;
  --dm-card: #102410;
  --dm-card-hover: #163016;
  --dm-search: #286028;
  --dm-text: #f0faf0;
  --dm-muted: #98c898;
  --dm-accent: #86efac;
  --dm-btn-from: #15803d;
  --dm-btn-to: #22c55e;
  --dm-nav-from: #15803d;
  --dm-nav-to: #86efac;
  --dm-hero-glow: rgba(34,197,94,.28);
  --dm-hero-top: #0c200c;
  --dm-sheet-top: #102410;
  --dm-sheet-mid: #0c180c;
  --dm-sheet-bottom: #081208;
}

.menu-theme-hotel {
  --dm-bg: #080808;
  --dm-shell: #0c0c0c;
  --dm-card: #141414;
  --dm-card-hover: #1c1c1c;
  --dm-search: #282828;
  --dm-text: #fafafa;
  --dm-muted: #a8a8a8;
  --dm-accent: #e5c07b;
  --dm-btn-from: #3a3a3a;
  --dm-btn-to: #5a5a5a;
  --dm-nav-from: #2a2a2a;
  --dm-nav-to: #e5c07b;
  --dm-hero-glow: rgba(229,192,123,.18);
  --dm-hero-top: #101010;
  --dm-sheet-top: #141414;
  --dm-sheet-mid: #0c0c0c;
  --dm-sheet-bottom: #080808;
}

/* ===== Açık tonlu temalar (Beyaz & Krem) =====
   Diğer 12 tema koyu zeminli; bu ikisi aydınlık. Değişkenleri çevirmek tek
   başına YETMEZ — menü CSS'inde koyu zemin varsayan ~50 sabit beyaz overlay
   (kenarlık/ayraç/kart dolgusu) var ve açık zeminde görünmez olurlar. Bu
   yüzden body'ye ayrıca .menu-theme-light sınıfı eklenir (bkz. menu.php +
   helpers.php menu_theme_is_light) ve aşağıdaki blok o overlay'leri koyu
   karşılıklarıyla topluca değiştirir. */
.menu-theme-white {
  --dm-bg: #eef0f2;
  --dm-shell: #ffffff;
  --dm-card: #ffffff;
  --dm-card-hover: #f4f6f8;
  --dm-search: #eceff2;
  --dm-text: #16191d;
  --dm-muted: #6b7480;
  --dm-accent: #b8873a;
  --dm-border: rgba(16,20,26,.10);
  --dm-btn-from: #2b3138;
  --dm-btn-to: #454e58;
  --dm-nav-from: #2b3138;
  --dm-nav-to: #b8873a;
  --dm-hero-glow: rgba(184,135,58,.16);
  --dm-hero-top: #ffffff;
  --dm-sheet-top: #ffffff;
  --dm-sheet-mid: #fbfcfd;
  --dm-sheet-bottom: #f4f6f8;
}

.menu-theme-cream {
  --dm-bg: #ece3d5;
  --dm-shell: #fdfaf5;
  --dm-card: #fffdf9;
  --dm-card-hover: #f8f1e5;
  --dm-search: #f0e7d8;
  --dm-text: #2a2318;
  --dm-muted: #7d7161;
  --dm-accent: #a97722;
  --dm-border: rgba(60,45,25,.13);
  --dm-btn-from: #8a6a2e;
  --dm-btn-to: #b8913f;
  --dm-nav-from: #8a6a2e;
  --dm-nav-to: #d8a943;
  --dm-hero-glow: rgba(169,119,34,.18);
  --dm-hero-top: #fdfaf5;
  --dm-sheet-top: #fffdf9;
  --dm-sheet-mid: #fbf6ee;
  --dm-sheet-bottom: #f6efe3;
}

/* --- Açık tema düzeltmeleri: koyu zemin varsayan sabit değerlerin karşılıkları --- */
/* Kabuk / arka plan */
.menu-theme-light.menu-app-dark .menu-mobile-shell {
  border: 1px solid rgba(16,20,26,.10);
  box-shadow: 0 30px 90px -30px rgba(16,20,26,.22), 0 0 0 1px rgba(16,20,26,.04);
}
/* Arama, kategori barı ve sekmeler */
.menu-theme-light .menu-dark-search,
.menu-theme-light .menu-customer-search.menu-dark-search,
.menu-theme-light .menu-customer-search.menu-ref-search { border: 1px solid rgba(16,20,26,.12); }
.menu-theme-light .menu-customer-search-clear { background: rgba(16,20,26,.07); }
/* Kategori barı: temel kural zemin olarak var(--dm-bg) (DIŞ sayfa arka planı)
   kullanıyor, oysa bar kabuğun (--dm-shell) içinde duruyor. Koyu temalarda bu
   iki değer neredeyse aynı olduğu için fark edilmiyordu; açık temalarda ise
   kabuktan farklı, yanlış tonda bir şerit oluşuyordu. Ayrıca gradyanın bitiş
   rengi sabit koyu yeşile (rgba(6,19,15,0)) soluyor ve aydınlık zeminde
   grileşmeye yol açıyordu. Zemin kabuk rengine, soluma şeffafa çekilir. */
.menu-theme-light .menu-cat-detail-toolbar {
  /* Soluma ucu "transparent" idi — gerçek sayfa zemini (--dm-bg, #ece3d5)
     kabuktan (--dm-shell, #fdfaf5) farklı tonda olduğu için son %12'lik
     dilimde uyumsuz bir şerit açığa çıkıyordu. Bar zaten sticky ve altında
     kayan içeriği örtmesi gerekiyor; tam opak kabuk rengine çekilir. */
  background: var(--dm-shell);
  border-bottom: 1px solid rgba(16,20,26,.10);
}
.menu-theme-light .menu-cat-back-btn { border: 1px solid rgba(16,20,26,.12); background: rgba(16,20,26,.05); }
/* Sekmeler kabuk zemininde net ayırt edilsin: belirgin kenarlık + koyu metin */
.menu-theme-light .menu-cat-tab {
  background: rgba(16,20,26,.05);
  border: 1px solid rgba(16,20,26,.14);
  color: var(--dm-text);
}
.menu-theme-light .menu-cat-thumb { border: 1px solid rgba(16,20,26,.10); box-shadow: none; }
/* Ürün kartları */
.menu-theme-light .menu-grid-product-media { background: var(--dm-card-hover); }
.menu-theme-light .menu-grid-soldout-badge { border: 1px solid rgba(16,20,26,.18); }
.menu-theme-light .menu-dark-profile-badges span { background: rgba(16,20,26,.06); }
.menu-theme-light .menu-dark-nav-center.has-logo { background: rgba(16,20,26,.05); }
/* Boş yıldız (puanlama) açık zeminde görünür kalsın */
.menu-theme-light.menu-app-dark .menu-ref-star { color: rgba(16,20,26,.18); }
/* Logo halkası: beyaz halka açık zeminde kaybolur */
.menu-theme-light .menu-customer-logo,
.menu-theme-light .restaurant-logo {
  border: 3px solid rgba(255,255,255,.95);
  background: rgba(16,20,26,.04);
  box-shadow: 0 10px 28px -10px rgba(16,20,26,.30), 0 0 0 1px rgba(16,20,26,.08);
}
/* Sheet (popup) yüzeyleri */
.menu-theme-light .menu-sheet { border: 1px solid rgba(16,20,26,.10); }
.menu-theme-light .menu-sheet-handle { background: rgba(16,20,26,.18); }
.menu-theme-light .menu-sheet-close {
  border: 1px solid rgba(16,20,26,.12);
  background: rgba(16,20,26,.05);
  color: var(--dm-text);
}
.menu-theme-light .menu-sheet-product-summary-popup { border: 1px solid rgba(16,20,26,.10); }
.menu-theme-light .menu-loyalty-fields-panel { background: rgba(16,20,26,.03); border: 1px solid rgba(16,20,26,.08); }
.menu-theme-light .menu-opt-group { background: rgba(16,20,26,.035); border: 1px solid rgba(16,20,26,.10); }
.menu-theme-light .menu-opt-choice { background: rgba(16,20,26,.03); border: 1px solid rgba(16,20,26,.09); }
/* Bilgi (Wi-Fi / kampanya) sheet'i */
.menu-theme-light .menu-info-intro,
.menu-theme-light .menu-sheet.menu-sheet-info,
.menu-theme-light .menu-language-sheet-header { border-bottom: 1px solid rgba(16,20,26,.08); }
.menu-theme-light .menu-info-chip--table { background: rgba(16,20,26,.06); color: var(--dm-text); }
.menu-theme-light .menu-info-campaign-card,
.menu-theme-light .menu-info-bento-card,
.menu-theme-light .menu-info-bento-card--story {
  border: 1px solid rgba(16,20,26,.09);
  background: linear-gradient(160deg, rgba(16,20,26,.035), rgba(16,20,26,.008));
}
.menu-theme-light .menu-info-wifi-ticket { background: linear-gradient(160deg, rgba(169,119,34,.14), rgba(16,20,26,.02)); }
.menu-theme-light .menu-info-panel--loyalty::after { background: none; }
.menu-theme-light .menu-info-quick-btn {
  border: 1px solid color-mix(in srgb, var(--quick-accent) 26%, rgba(16,20,26,.10));
  box-shadow: 0 6px 16px rgba(16,20,26,.10);
}
.menu-theme-light .menu-info-quick-btn:hover { box-shadow: 0 14px 26px color-mix(in srgb, var(--quick-accent) 24%, transparent); }
.menu-theme-light .menu-info-intro-logo img,
.menu-theme-light .menu-info-intro-logo-placeholder { border: 2px solid rgba(16,20,26,.12); }
.menu-theme-light .menu-info-intro-logo-placeholder { background: var(--dm-card-hover); color: var(--dm-accent); }
/* Dil seçici (bilgi sheet'i içi) — koyu zemin için yazılmış açık metin/gölge */
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-trigger {
  color: var(--dm-text) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 6px 18px -8px rgba(16,20,26,.22) !important;
}
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-trigger-flag { border: 1px solid rgba(16,20,26,.10); }
.menu-theme-light .menu-language-nav-icon { box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 4px 10px -4px rgba(16,20,26,.25); }
/* Tetikleyicinin ("DİL Türkçe TR") altında açılan dil listesi kutusu — metin
   rengi zaten düzeltilmişti ama kendi zemini hâlâ sabit koyu yeşil/siyahtı
   (!important), bu yüzden açık metin koyu kutunun üzerinde "kayıp" görünüyordu.
   Kutu da temaya uygun açık zemine çevrilir. */
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-menu {
  background: var(--dm-card) !important;
  border: 1px solid rgba(16,20,26,.10);
  box-shadow: 0 10px 26px -12px rgba(16,20,26,.22);
}
/* Dil seçim sheet'inin kendisi (#sheet-language) sabit koyu yeşil gradyanla
   yazılmıştı (.menu-language-sheet, temel .menu-sheet kuralını eziyordu) — açık
   temada içindeki kartlar zaten düzeltilmişti ama zemin hâlâ koyu kalıyordu,
   ortaya karışık/bulanık bir görünüm çıkıyordu. Temaya duyarlı zemine döndürülür. */
.menu-theme-light .menu-language-sheet {
  background: linear-gradient(180deg, var(--dm-sheet-top) 0%, var(--dm-sheet-mid) 88px, var(--dm-sheet-bottom) 100%);
}
.menu-theme-light .menu-language-option {
  border: 1px solid rgba(16,20,26,.10);
  background: rgba(16,20,26,.03);
  box-shadow: none;
}
.menu-theme-light .menu-language-option.is-active {
  background: linear-gradient(135deg, rgba(169,119,34,.16), rgba(169,119,34,.05));
  box-shadow: inset 0 0 0 1px rgba(169,119,34,.12);
}
.menu-theme-light .menu-language-option-code { color: var(--dm-muted); }
/* Arama placeholder'ı koyu zemin için açık renkti — açık zeminde görünmüyordu */
.menu-theme-light .menu-dark-search::placeholder { color: var(--dm-muted); opacity: 1; }

/* --- Sabit "koyu tema metin rengi" kullanan yerler ---
   Menü CSS'inde metin renkleri çoğu yerde var(--dm-text) yerine sabit açık
   tonlarla (#f4f7f2, #f4e6c8, #fca5a5 …) yazılmış. Açık zeminde bunlar
   görünmez oluyor; renk ailesine göre koyu karşılıklarına çevrilir. */
/* 1) Beyaza yakın gövde metinleri → tema metin rengi */
.menu-theme-light .menu-sheet-title,
.menu-theme-light .menu-info-campaign-body strong,
.menu-theme-light .menu-info-bento-content p,
.menu-theme-light .menu-info-quick-btn,
.menu-theme-light .menu-language-option { color: var(--dm-text); }
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-trigger-value,
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-option,
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-name { color: var(--dm-text) !important; }
/* 2) Altın/krem vurgular → açık zeminde okunan koyu altın */
.menu-theme-light .menu-info-loyalty-copy strong,
.menu-theme-light .menu-info-promo-text strong,
.menu-theme-light .menu-info-campaign-badge,
.menu-theme-light .menu-info-hours-week li.is-today,
.menu-theme-light .menu-info-hours-week li.is-today span:last-child,
.menu-theme-light .menu-info-wifi-value,
.menu-theme-light .menu-info-copy-btn,
.menu-theme-light .menu-language-nav-icon,
.menu-theme-light .menu-language-option-check,
.menu-theme-light .menu-success-order-no strong,
.menu-theme-light .menu-success-loyalty,
.menu-theme-light .menu-success-loyalty strong { color: #7a5a1e; }
.menu-theme-light .menu-info-loyalty-waiter-btn { color: #7a5a1e !important; }
/* 3) Uyarı/hata kırmızıları → koyu kırmızı */
.menu-theme-light .menu-info-chip--status.is-closed,
.menu-theme-light .menu-orders-sheet-notice,
.menu-theme-light .menu-orders-sheet-notice strong,
.menu-theme-light .menu-opt-group.is-missing .menu-opt-hint { color: #b91c1c; }
/* 4) Soluk yeşilimsi etiket rengi (#8fa398) → tema muted rengi */
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-short,
.menu-theme-light .menu-info-section-label,
.menu-theme-light .menu-info-campaigns-empty,
.menu-theme-light .menu-info-campaign-body p,
.menu-theme-light .menu-info-bento-content h4,
.menu-theme-light .menu-info-hours-week li,
.menu-theme-light .menu-info-wifi-label { color: var(--dm-muted); }
/* 5) Gradyanla boyanmış (background-clip:text) başlıklar: açık krem gradyan
   aydınlık zeminde kayboluyor — koyu altın gradyanla değiştirilir. */
.menu-theme-light .menu-info-intro-title,
.menu-theme-light #sheet-orders-title,
.menu-theme-light .menu-info-wifi-value {
  background: linear-gradient(135deg, #8a6a2e 15%, #b8873a 55%, #7a5a1e 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* 6) Dil seçici tetikleyicisi sabit koyu yeşil gradyanlıydı (!important) */
.menu-theme-light .menu-sheet.menu-sheet-info .menu-info-lang-trigger {
  background:
    linear-gradient(135deg, rgba(169,119,34,.12) 0%, var(--dm-card) 48%, var(--dm-card-hover) 100%) !important;
  border-color: rgba(16,20,26,.12) !important;
}
/* .menu-app-dark { --dm-muted: #aebfb5 } kuralı tema bloklarından SONRA geldiği
   için tüm temaların --dm-muted değerini eziyor; açık zeminde bu yeşilimsi gri
   okunmuyor. Daha yüksek özgüllükle tema başına geri alınır. */
.menu-theme-white.menu-app-dark { --dm-muted: #6b7480; }
.menu-theme-cream.menu-app-dark { --dm-muted: #7d7161; }
/* Alt navigasyon sabit koyu yeşil (!important) — açık temada kabuk rengine çekilir */
.menu-theme-light .menu-dark-bottom-nav {
  background: var(--dm-shell) !important;
  box-shadow: 0 -10px 30px -12px rgba(16,20,26,.18) !important;
}
/* Durum ve bilgi rozetleri: koyu zemin için açık metin kullanıyorlardı */
.menu-theme-light .menu-customer-meta-item.is-open { color: #15803d; }
.menu-theme-light .menu-customer-meta-item.is-closed { color: #b91c1c; }
.menu-theme-light .menu-customer-table-badge { color: #7a5a1e; }
.menu-theme-light .menu-customer-table-badge strong { color: #5c4416; }
/* Masaüstünde menü kabuğunun arkasındaki ambiyans koyu yeşil sabitti */
@media (min-width: 768px) {
  .menu-theme-light.menu-app-dark.menu-app-mobile-only { background: var(--dm-bg); }
  .menu-theme-light .menu-desktop-ambient::before {
    background:
      radial-gradient(55% 45% at 50% -5%, var(--dm-hero-glow), transparent 60%),
      var(--dm-bg);
  }
}

/* Panel — menü tema seçici */
.panel-app-restaurant .menu-theme-card {
  margin-top: 18px;
}
.panel-app-restaurant .menu-theme-card .menu-manager-card-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.panel-app-restaurant .menu-theme-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 12px;
}
.panel-app-restaurant .menu-theme-option {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: 10px;
  border-radius: 16px;
  border: 2px solid rgba(26, 26, 26, .08);
  background: #fff;
  cursor: pointer;
  text-align: left;
  font: inherit;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.panel-app-restaurant .menu-theme-option:hover {
  border-color: rgba(197, 157, 95, .45);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
}
.panel-app-restaurant .menu-theme-option.is-active {
  border-color: #c5a059;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, .18);
}
.panel-app-restaurant .menu-theme-option:disabled {
  opacity: .65;
  cursor: wait;
}
.panel-app-restaurant .menu-theme-preview {
  display: block;
  height: 56px;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, .06);
}
.panel-app-restaurant .menu-theme-option-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.panel-app-restaurant .menu-theme-icon {
  font-size: 18px;
  line-height: 1;
  margin-bottom: 2px;
}
.panel-app-restaurant .menu-theme-option strong {
  font-size: 13px;
  color: #1a1a1a;
  line-height: 1.25;
}
.panel-app-restaurant .menu-theme-sector {
  font-size: 11px;
  line-height: 1.35;
}

/* Tema önizleme swatch'ları */
.menu-theme-preview--restaurant { background: linear-gradient(135deg, #06130f 40%, #1f5b42, #d8a943); }
.menu-theme-preview--cafe { background: linear-gradient(135deg, #1a120c 40%, #6b4423, #d4a574); }
.menu-theme-preview--burger { background: linear-gradient(135deg, #140808 40%, #c41e1e, #f5c518); }
.menu-theme-preview--pizza { background: linear-gradient(135deg, #120a0a 40%, #c0392b, #2ecc71); }
.menu-theme-preview--sushi { background: linear-gradient(135deg, #060810 40%, #1a2840, #e74c3c); }
.menu-theme-preview--kebab { background: linear-gradient(135deg, #140e08 40%, #a04000, #f39c12); }
.menu-theme-preview--seafood { background: linear-gradient(135deg, #061018 40%, #0077b6, #48cae4); }
.menu-theme-preview--dessert { background: linear-gradient(135deg, #180c14 40%, #be4b7a, #f8b4d9); }
.menu-theme-preview--bakery { background: linear-gradient(135deg, #161008 40%, #8b6914, #e8b84a); }
.menu-theme-preview--bar { background: linear-gradient(135deg, #080610 40%, #5b21b6, #a855f7); }
.menu-theme-preview--vegan { background: linear-gradient(135deg, #081208 40%, #15803d, #86efac); }
.menu-theme-preview--hotel { background: linear-gradient(135deg, #080808 40%, #3a3a3a, #e5c07b); }
/* Açık tonlu temalar — beyaz önizleme kartın beyaz zemininde kaybolmasın diye
   ince bir iç kenarlıkla çerçevelenir. */
.menu-theme-preview--white { background: linear-gradient(135deg, #ffffff 40%, #e6e9ed, #b8873a); box-shadow: inset 0 0 0 1px rgba(16,20,26,.12); }
.menu-theme-preview--cream { background: linear-gradient(135deg, #fdfaf5 35%, #e8d8bd, #a97722); box-shadow: inset 0 0 0 1px rgba(60,45,25,.14); }

@media (max-width: 640px) {
  .panel-app-restaurant .menu-theme-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Lezzet Yıldızları — sadakat */
.loyalty-hub { display: grid; gap: 16px; max-width: 1180px; }
.loyalty-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.loyalty-kpi {
  padding: 14px 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(197, 157, 95, .12), #fff);
  border: 1px solid rgba(197, 157, 95, .2);
  text-align: center;
}
.loyalty-kpi strong {
  display: block;
  font-size: 24px;
  font-weight: 800;
  color: #9a7a3c;
  line-height: 1.1;
}
.loyalty-kpi span {
  font-size: 11px;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.loyalty-body {
  display: grid;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}
.loyalty-side { display: grid; gap: 12px; }
.loyalty-rules {
  margin: 0;
  padding-left: 18px;
  font-size: 13px;
  color: #4b5563;
  display: grid;
  gap: 8px;
}
.loyalty-tier-ladder { display: grid; gap: 8px; margin-top: 12px; }
.loyalty-tier-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .8);
  border: 1px solid rgba(26, 26, 26, .06);
  border-left: 3px solid var(--tier-color, #c59d5f);
}
.loyalty-tier-icon { font-size: 20px; }
.loyalty-tier-step strong { display: block; font-size: 13px; }
.loyalty-tier-step small { color: #6b7280; font-size: 11px; }
.loyalty-rewards-list { display: grid; gap: 8px; }
.loyalty-reward-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 8px 0;
  border-bottom: 1px solid rgba(26, 26, 26, .06);
}
.loyalty-reward-row:last-child { border-bottom: none; }
.loyalty-redeem-group { margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(26, 26, 26, .08); }
.loyalty-redeem-group-label { margin: 0 0 8px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; }
.loyalty-redeem-buttons { display: flex; gap: 8px; flex-wrap: wrap; }
.loyalty-redeem-btn:disabled { opacity: .45; cursor: not-allowed; }
.loyalty-reward-stars {
  flex-shrink: 0;
  min-width: 44px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(197, 157, 95, .15);
  color: #9a7a3c;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
}
.loyalty-main-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
}
.loyalty-search-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  min-height: 38px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #fff;
  min-width: 180px;
}
.loyalty-search-wrap input {
  border: none;
  background: transparent;
  font: inherit;
  font-size: 13px;
  outline: none;
  min-width: 0;
  flex: 1;
}
.loyalty-customers-list { display: grid; gap: 8px; }
.loyalty-customer-row {
  border: 1px solid rgba(26, 26, 26, .08);
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}
.loyalty-customer-row summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  cursor: pointer;
  list-style: none;
}
.loyalty-customer-row summary::-webkit-details-marker { display: none; }
.loyalty-customer-avatar {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 20px;
  background: linear-gradient(135deg, rgba(197, 157, 95, .15), #fff);
  border: 1px solid rgba(197, 157, 95, .25);
}
.loyalty-customer-info strong { display: block; font-size: 14px; }
.loyalty-customer-info span { font-size: 12px; }
.loyalty-customer-stars {
  font-size: 13px;
  color: #9a7a3c;
  white-space: nowrap;
}
.loyalty-customer-stars strong { font-size: 18px; }
.loyalty-tier-badge {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: rgba(197, 157, 95, .12);
  color: #9a7a3c;
  white-space: nowrap;
}
.loyalty-customer-body {
  padding: 0 12px 12px;
  border-top: 1px solid rgba(26, 26, 26, .06);
}
.loyalty-stamp-card {
  margin: 12px 0;
  padding: 10px;
  border-radius: 12px;
  background: rgba(197, 157, 95, .08);
}
.loyalty-stamp-title { margin: 0 0 8px; font-size: 12px; color: #6b7280; }
.loyalty-stamps { display: flex; gap: 6px; flex-wrap: wrap; }
.loyalty-stamp {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 2px dashed rgba(197, 157, 95, .35);
  background: #fff;
}
.loyalty-stamp.is-filled {
  border-style: solid;
  background: linear-gradient(135deg, #c59d5f, #e8c88a);
  box-shadow: 0 4px 12px rgba(197, 157, 95, .25);
}
.loyalty-empty { padding: 24px; text-align: center; }

/* Müşteri menüsü — sadakat kartı */
.loyalty-member-card-wrap { margin: 8px 0 4px; }
.loyalty-member-card {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(197, 157, 95, .3);
  background: linear-gradient(135deg, rgba(197, 157, 95, .12), rgba(255, 255, 255, .04));
}
.loyalty-member-card--new { border-style: dashed; }
.loyalty-member-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.loyalty-member-icon { font-size: 24px; line-height: 1; }
.loyalty-member-head strong { display: block; font-size: 14px; }
.loyalty-member-head p { margin: 4px 0 0; font-size: 12px; }
.loyalty-member-balance { margin: 4px 0 0; font-size: 13px; color: #c59d5f; }
.loyalty-member-hint,
.loyalty-member-next { margin: 8px 0 0; font-size: 11px; }
.loyalty-member-rewards {
  list-style: none;
  margin: 10px 0 0;
  padding: 8px 0 0;
  border-top: 1px solid rgba(197, 157, 95, .22);
  display: grid;
  gap: 4px;
  font-size: 11.5px;
  color: var(--dm-muted, #9fb1a7);
}
.loyalty-member-rewards li.is-unlocked { color: #86efac; font-weight: 600; }
.loyalty-member-reward-check { color: #22c55e; }
.menu-loyalty-query-btn {
  width: 100%;
  margin: 8px 0 4px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(216, 169, 67, .35);
  background: transparent;
  color: var(--dm-accent, #d8a943);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.menu-loyalty-query-btn:disabled { opacity: .6; cursor: not-allowed; }

@media (max-width: 900px) {
  .loyalty-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .loyalty-body { grid-template-columns: 1fr; }
}

/* Panel — dil / tema tercihleri */
.panel-prefs-tools {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 4px;
}
.panel-app-admin .panel-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
}
.panel-app-admin .panel-top-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

/* Süper admin üst bar — yalnız işaretli alan (.panel-top) premium yükseltme.
   Sayfanın geri kalanına dokunulmadı. */
.panel-app-admin .panel-top {
  padding: 16px 20px;
  border-radius: 18px;
  background: linear-gradient(120deg, rgba(197,160,89,.07), transparent 60%), var(--panel-surface, #fff);
  box-shadow: 0 14px 36px rgba(0,0,0,.05);
}
html.panel-theme-dark .panel-app-admin .panel-top {
  background: linear-gradient(120deg, rgba(197,160,89,.05), transparent 60%), rgba(26,26,26,.82);
  box-shadow: 0 14px 36px rgba(0,0,0,.35);
}
.panel-app-admin .panel-top::after {
  content: "";
  position: absolute;
  left: 20px; right: 20px; bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, #c5a059, #dbad52, rgba(197,160,89,0));
  opacity: .55;
}
.panel-app-admin .panel-sidebar-toggle {
  border-radius: 12px;
  transition: transform .15s ease, box-shadow .15s ease;
}
.panel-app-admin .panel-sidebar-toggle:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}
.panel-app-admin .panel-prefs-tools {
  padding: 4px;
  border-radius: 999px;
  background: rgba(0,0,0,.02);
  border: 1px solid var(--panel-border, rgba(26,26,26,.06));
}
html.panel-theme-dark .panel-app-admin .panel-prefs-tools {
  background: rgba(255,255,255,.03);
  border-color: var(--panel-border, rgba(255,255,255,.08));
}
html.panel-theme-dark .panel-theme-toggle .home-theme-icon-sun { opacity:0 !important; transform:scale(.85) !important; }
html.panel-theme-dark .panel-theme-toggle .home-theme-icon-moon { opacity:1 !important; transform:scale(1) !important; }
.panel-theme-toggle {
  border-color: var(--panel-border, rgba(15, 23, 42, .12));
  background: rgba(255, 255, 255, .72);
  color: var(--panel-text, #0f172a);
}
.panel-app-restaurant.panel-v3 .panel-theme-toggle {
  border-color: var(--v3-border);
  background: rgba(255, 255, 255, .55);
  color: var(--v3-text);
}

html.panel-theme-dark {
  color-scheme:dark !important;
  --panel-bg:#111111 !important;
  --panel-surface:#1a1a1a !important;
  --panel-surface-soft:#202020 !important;
  --panel-border:rgba(255, 255, 255, .08) !important;
  --panel-text:#f3f3f3 !important;
  --panel-muted:#a3a3a3 !important;
  --panel-gold:#c59d5f !important;
}
html.panel-theme-dark .panel-app-premium {
  --panel-bg:#111111 !important;
  --panel-surface:#1a1a1a !important;
  --panel-surface-soft:#202020 !important;
  --panel-border:rgba(255, 255, 255, .08) !important;
  --panel-text:#f3f3f3 !important;
  --panel-muted:#a3a3a3 !important;
  --panel-gold:#c59d5f !important;
  background:var(--panel-bg) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-side,
html.panel-theme-dark .panel-app-premium .panel-content {
  background: var(--panel-bg) !important;
}
html.panel-theme-dark .panel-app-premium .panel-side {
  border-right-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .logo,
html.panel-theme-dark .panel-app-premium .panel-top h1,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top h1 {
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-top,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top {
  background:rgba(26, 26, 26, .82) !important;
  border-bottom-color:var(--panel-border) !important;
  box-shadow:0 1px 0 rgba(255, 255, 255, .04) !important;
}
html.panel-theme-dark .panel-app-premium .muted,
html.panel-theme-dark .panel-app-restaurant.panel-v3 .panel-top .muted {
  color:var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .panel-nav button {
  color:var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .panel-nav button:hover {
  background:rgba(255, 255, 255, .05) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-nav button.active {
  background:rgba(197, 157, 95, .14) !important;
  color:#ffe8b8 !important;
}
html.panel-theme-dark .panel-app-premium .panel-nav-icon {
  background:rgba(255, 255, 255, .06) !important;
}
html.panel-theme-dark .panel-app-premium .panel-nav-group-label {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .panel-role-badge {
  background:rgba(197, 157, 95, .12) !important;
  color:#e8c88a !important;
}
html.panel-theme-dark .panel-lang-switch,
html.panel-theme-dark .panel-theme-toggle {
  background:var(--panel-surface) !important;
  border-color:var(--panel-border) !important;
}
html.panel-theme-dark .panel-lang-switch .home-lang-btn { color:var(--panel-muted) !important; }
html.panel-theme-dark .panel-lang-switch .home-lang-btn.is-active {
  background:rgba(197, 157, 95, .18) !important;
  color:#ffe8b8 !important;
}
html.panel-theme-dark .panel-app-premium .card,
html.panel-theme-dark .panel-app-premium .metric-card,
html.panel-theme-dark .panel-app-premium .panel-section-card,
html.panel-theme-dark .panel-app-premium .orders-panel-card,
html.panel-theme-dark .panel-app-premium .ops-card,
html.panel-theme-dark .panel-app-premium .admin-quick-card,
html.panel-theme-dark .panel-app-premium .stack-item,
html.panel-theme-dark .panel-app-premium .responsive-card,
html.panel-theme-dark .panel-app-premium .order-card,
html.panel-theme-dark .panel-app-premium .menu-photo-panel,
html.panel-theme-dark .panel-app-premium .visual-menu-hero-card,
html.panel-theme-dark .panel-app-premium .loyalty-kpi,
html.panel-theme-dark .panel-app-premium .loyalty-tier-step,
html.panel-theme-dark .panel-app-premium .loyalty-customer-row,
html.panel-theme-dark .panel-app-premium .menu-studio-card {
  background:var(--panel-surface) !important;
  border-color:var(--panel-border) !important;
  color:var(--panel-text) !important;
}

/* koyu-mod-QA2-20260824: fotoğraf/görsel yükleme kutuları — .photo-upload-zone
   ve .photo-upload-preview birden fazla yerde paylaşılan TEMEL sınıflar
   (Fotoğraftan Menü, Görsel Menü, ürün/kategori fotoğrafı, Ayarlar görsel
   yükleme) — tek düzeltme hepsini kapsar. */
html.panel-theme-dark .panel-app-premium .photo-upload-zone {
  background: linear-gradient(180deg, rgba(197, 157, 95, .10), rgba(255, 255, 255, .03)) !important;
  border-color: rgba(255, 255, 255, .15) !important;
}
html.panel-theme-dark .panel-app-premium .photo-upload-preview {
  background: linear-gradient(135deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02)) !important;
  color: var(--panel-text) !important;
}

/* koyu-mod-QA2-20260824: Fotoğraftan Menü sekmesi — --mp-muted/--mp-border
   CSS değişkenleri koyu moda göre hiç tanımlanmamıştı (açık gri metin koyu
   zeminde okunmuyordu); adım kartları ve dijital menü önizleme satırları da
   kendi beyaz/krem arka planlarını koruyordu. */
html.panel-theme-dark #tab-menu-photo {
  --mp-muted: #a3a3a3 !important;
  --mp-border: rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .panel-app-premium .menu-photo-pipeline-step {
  background: var(--panel-surface) !important;
}
html.panel-theme-dark .panel-app-premium .menu-photo-menu-list li {
  background: var(--panel-surface-soft) !important;
  color: var(--panel-text) !important;
}

/* koyu-mod-QA2-20260824: Menü Asistanı (WhatsApp benzeri sohbet) — sohbet
   arka planı (--wa-chat-bg) her zaman açık bej (#e5ddd5) kalıyordu, koyu mod
   hiç tanımlanmamıştı (landing sayfasındaki karşılığı vardı, panel'de yoktu). */
html.panel-theme-dark #tab-assistant {
  --wa-chat-bg: #1a1a24 !important;
}
html.panel-theme-dark .panel-app-premium .data-table thead th {
  background:var(--panel-surface-soft) !important;
  color:var(--panel-muted) !important;
  border-color:var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .data-table tbody td {
  border-color:var(--panel-border) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .data-table tbody tr:hover td {
  background:rgba(197, 157, 95, .08) !important;
}
html.panel-theme-dark .panel-app-premium .panel-form input,
html.panel-theme-dark .panel-app-premium .panel-form select,
html.panel-theme-dark .panel-app-premium .panel-form textarea,
html.panel-theme-dark .panel-app-premium .panel-form--labeled input,
html.panel-theme-dark .panel-app-premium .panel-form--labeled select,
html.panel-theme-dark .panel-app-premium .panel-form--labeled textarea,
html.panel-theme-dark .panel-app-premium .panel-select,
html.panel-theme-dark .panel-app-premium .menu-studio-search,
html.panel-theme-dark .panel-app-premium .loyalty-search-wrap {
  background:var(--panel-surface-soft) !important;
  border-color:var(--panel-border) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-form input::placeholder,
html.panel-theme-dark .panel-app-premium .panel-form textarea::placeholder {
  color:rgba(255, 255, 255, .35) !important;
}
html.panel-theme-dark .panel-app-premium .btn-ghost,
html.panel-theme-dark .panel-app-premium .panel-side-footer .btn-ghost {
  color:var(--panel-muted) !important;
  border-color:var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .btn-ghost:hover {
  background:rgba(255, 255, 255, .06) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-orders-toggle,
html.panel-theme-dark .panel-app-premium .panel-sound-toggle,
html.panel-theme-dark .panel-app-premium .panel-print-toggle,
html.panel-theme-dark .panel-app-premium .panel-support-toggle {
  background:var(--panel-surface) !important;
  border-color:var(--panel-border) !important;
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .impersonation-bar {
  background:rgba(197, 157, 95, .12) !important;
  border-color:rgba(197, 157, 95, .24) !important;
}
html.panel-theme-dark .panel-app-premium .order-alert-bar {
  background:rgba(26, 26, 26, .96) !important;
  border-color:var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .panel-toast {
  background:#242424 !important;
  color:var(--panel-text) !important;
  border:1px solid var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .card-title,
html.panel-theme-dark .panel-app-premium .panel-page-title,
html.panel-theme-dark .panel-app-premium .ops-card-title {
  color:var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-section-desc,
html.panel-theme-dark .panel-app-premium .panel-page-subtitle {
  color:var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .metric-card strong,
html.panel-theme-dark .panel-app-premium .card-title,
html.panel-theme-dark .panel-app-premium .card strong,
html.panel-theme-dark .panel-app-premium .ops-card strong,
html.panel-theme-dark .panel-app-premium .admin-quick-card strong {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .metric-card .muted,
html.panel-theme-dark .panel-app-premium .card .muted,
html.panel-theme-dark .panel-app-premium .ops-card .muted,
html.panel-theme-dark .panel-app-premium .admin-quick-card .muted {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .order-detail,
html.panel-theme-dark .panel-app-premium .panel-list-item {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .order-detail-row td {
  background: var(--panel-surface-soft) !important;
}
html.panel-theme-dark .panel-app-premium .tables-stat {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}

/* Masalar sekmesi — arama/filtre çubuğu, ekleme çekmecesi ve masa kartları koyu
   modda hâlâ açık renkli kalıyordu (2026-08-22). */
html.panel-theme-dark .panel-app-premium .tables-toolbar-search input {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .tables-toolbar-search input::placeholder {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .tables-toolbar-search-icon {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .tables-filter-chip:not(.is-active) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .tables-add-drawer {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .tables-add-drawer-summary {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .tables-add-drawer-body {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .tables-add-form {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-card {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-card--occupied {
  background: linear-gradient(rgba(239, 68, 68, .1), rgba(239, 68, 68, .1)), var(--panel-surface) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-card--available {
  background: linear-gradient(rgba(34, 197, 94, .08), rgba(34, 197, 94, .08)), var(--panel-surface) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-card-head strong {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-url {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-btn-total {
  color: #ffe8b8 !important;
}
html.panel-theme-dark .panel-app-premium .table-order-btn-time,
html.panel-theme-dark .panel-app-premium .table-order-btn-cta {
  color: rgba(255, 232, 184, .78) !important;
}
/* Ayarlar → Masa QR Kodları listesi — aynı açık renkli kart hatası (ayrı bir
   bileşen, .table-qr-card ile paylaşılmıyor). QR görseli her zaman okunabilir
   kalması için beyaz bırakılır, yalnız çevresindeki kart koyulaştırılır. */
html.panel-theme-dark .panel-app-premium .settings-qr-item {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}

/* sekme-mobil-genel-QA-20260823: .panel-page-intro'nun flex: 1 1 240px kuralı
   satır düzeninde 240px GENİŞLİK ipucuydu; 900px altında .panel-page-header
   sütuna (column) dönünce aynı flex-basis ANA EKSEN (artık dikey) boyutuna,
   yani MİNİMUM YÜKSEKLİĞE dönüşüyordu — her panel sayfasının başlığında
   (Süper Admin + Restoran, tüm sekmeler) ~120px anlamsız boş alan bırakıyordu. */
@media (max-width: 900px) {
  .panel-page-header > .panel-page-intro,
  .assistant-page-header > .panel-page-intro {
    flex: 1 1 auto;
  }
}

/* koyu-mod-modal-QA-20260823: süper admin modalleri ve paylaşılan onay
   diyalogları düz <div> (native <dialog> değil) olduğu için color-scheme
   otomatik koyulaşması uygulanmıyordu — arka plan beyaz kalıp üstteki genel
   koyu (miras) metin rengiyle birleşince içerik okunmaz hale geliyordu. */
html.panel-theme-dark .panel-app-premium .admin-modal {
  background: var(--panel-surface) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .admin-modal-head {
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .admin-modal-close {
  color: var(--panel-muted) !important;
}
html.panel-theme-dark .panel-app-premium .admin-ai-credit-summary > div {
  background: rgba(255, 255, 255, .05) !important;
}
html.panel-theme-dark .panel-app-premium .panel-confirm-modal,
html.panel-theme-dark .panel-app-premium .panel-inline-confirm-box {
  background: var(--panel-surface) !important;
  color: var(--panel-text) !important;
}

/* koyu-mod-masa-siparis-QA-20260823: Masalar → sipariş diyaloğunun dış
   kutusu (.table-order-dialog, native <dialog>) color-scheme sayesinde zaten
   koyulaşıyor, ama içindeki her satır/buton kendi açık renkli arka planını
   taşıyordu — ürün adı görünmüyordu, +/- butonları BEYAZ ÜZERİNE BEYAZ
   (tamamen görünmez) idi. */
html.panel-theme-dark .panel-app-premium .table-order-item {
  background: linear-gradient(135deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .02)) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-item-name {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-qty-btn {
  background: rgba(255, 255, 255, .08) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-qty-btn:hover {
  background: rgba(197, 160, 89, .22) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-discount-chip {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-add-drawer {
  background: var(--panel-surface-soft) !important;
  border-color: rgba(197, 160, 89, .28) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-pay-btn {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
/* #table-order-dialog .btn-ghost / .table-order-print-btn / .table-order-close-btn /
   .table-order-kitchen-print-btn — ID özgüllüğü + !important ile beyaz zorlanıyordu
   (2x2 buton ızgarası: Mutfak Fişi / Adisyon Yazdır / Masayı Taşı / Hesabı Kapat /
   tam genişlik "Yazdır"), aynı özgüllükle koyu moda çeviriyoruz. */
html.panel-theme-dark .panel-app-premium #table-order-dialog .btn-ghost,
html.panel-theme-dark .panel-app-premium #table-order-dialog .table-order-print-btn,
html.panel-theme-dark .panel-app-premium #table-order-dialog .table-order-close-btn,
html.panel-theme-dark .panel-app-premium #table-order-dialog .table-order-kitchen-print-btn {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-popover {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-popover-item {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .table-order-popover-item:hover {
  background: rgba(197, 160, 89, .16) !important;
}

/* koyu-mod-siparisler-QA-20260823: Siparişler sekmesi kart aksiyon butonları
   (Mutfak Fişi / Adisyon Yazdır / Düzenle / Hesabı Kapat). */
html.panel-theme-dark .panel-app-premium #orders-list .order-edit-btn,
html.panel-theme-dark .panel-app-premium #orders-list .order-print-btn,
html.panel-theme-dark .panel-app-premium #orders-list .order-adisyon-btn,
html.panel-theme-dark .panel-app-premium #orders-list .order-close-btn {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}

/* koyu-mod-urun-secici-QA-20260823: ürün seçici satırları (Masalar/Siparişler
   ekle çekmecesi) — hem restoran panelinde hem süper adminde ortak kullanılır. */
html.panel-theme-dark .panel-app-premium .order-picker-item {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .order-picker-item-name {
  color: var(--panel-text) !important;
}

/* koyu-mod-secenek-dialog-QA-20260823: ürün seçenek grubu diyaloğu
   (Kategoriler & Ürünler → seçenek ata) — dış kutu .table-order-dialog
   class'ını paylaştığı için otomatik koyulaşıyor, içindeki kart/satırlar
   açık kalıyordu. */
html.panel-theme-dark .panel-app-premium .panel-item-options-dialog .menu-opt-group {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .panel-item-options-dialog .menu-opt-head strong {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .panel-item-options-dialog .menu-opt-choice {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}

/* koyu-mod-diger-yuzeyler-QA-20260823: masa QR açılır bölmesi, destek talebi
   satırları, plan listesi, boş durum kutusu, mobil hamburger butonu — hepsi
   aynı "açık renkli kart koyu sayfada" deseni. */
html.panel-theme-dark .panel-app-premium .table-qr-drawer {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-drawer-body {
  background: var(--panel-surface) !important;
}
html.panel-theme-dark .panel-app-premium .table-qr-drawer-summary {
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .admin-support-ticket-row {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
}
/* Destek talebi mesaj balonları — açık zeminde tanımsız (miras) metin rengi,
   koyu modda gövdeden miras kalan açık renkle birleşince okunmuyordu. */
html.panel-theme-dark .panel-app-premium .support-msg {
  background: var(--panel-surface-soft) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .support-msg--admin {
  background: rgba(124, 92, 255, .16) !important;
}
/* Menü Asistanı (WhatsApp AI) — "Düzenle"/"İptal" aksiyon butonları BEYAZ ÜZERİNE
   BEYAZ idi (arka plan #tab-assistant ID özgüllüğüyle beyaz kalıyordu, yazı rengi
   ayrı bir genel koyu-mod kuralından beyaza dönüyordu — ikisi çakışınca buton
   tamamen görünmez oluyordu). */
html.panel-theme-dark .panel-app-premium #tab-assistant .home-wa-action-btn {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium #tab-assistant .home-wa-action-btn:hover {
  background: var(--panel-surface-soft) !important;
}
/* Restoran tarafı "Destek Talepleri" listesi (üst çubuk Destek butonu) — aynı
   açık kart deseni, admin-support-ticket-row ile aynı bileşen değil. */
html.panel-theme-dark .panel-app-premium .support-ticket-row {
  background: var(--panel-surface-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
html.panel-theme-dark .panel-app-premium .empty-state {
  background: var(--panel-surface-soft) !important;
  border-color: rgba(197, 157, 95, .3) !important;
}
html.panel-theme-dark .panel-app-premium .panel-plan-list li {
  background: var(--panel-surface-soft) !important;
}
html.panel-theme-dark .panel-app-premium .panel-empty-inline {
  background: var(--panel-surface-soft) !important;
}
html.panel-theme-dark .panel-app-premium .panel-sidebar-toggle {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
html.panel-theme-dark .panel-app-premium .panel-sidebar-toggle span {
  background: var(--panel-text) !important;
}

/* Menü Stüdyosu — dark mod */
html.panel-theme-dark #tab-menu {
  --ms-border:rgba(255, 255, 255, .08) !important;
  --ms-muted:#a3a3a3 !important;
}
html.panel-theme-dark .menu-studio-title,
html.panel-theme-dark .menu-studio-sidebar-title,
html.panel-theme-dark .menu-studio-main-title,
html.panel-theme-dark .menu-cat-info strong,
html.panel-theme-dark .menu-product-info strong {
  color:#f3f3f3 !important;
}
html.panel-theme-dark .menu-studio-metric,
html.panel-theme-dark .menu-studio-search-wrap,
html.panel-theme-dark .menu-studio-sidebar,
html.panel-theme-dark .menu-studio-main,
html.panel-theme-dark .menu-studio-all-btn,
html.panel-theme-dark .menu-cat-row,
html.panel-theme-dark .menu-cat-tool,
html.panel-theme-dark .menu-cat-add-btn,
html.panel-theme-dark .menu-product-row,
html.panel-theme-dark .menu-product-thumb,
html.panel-theme-dark .menu-studio-excel-preview-grid > div {
  background:#1a1a1a !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .menu-studio-toolbar {
  background:linear-gradient(135deg, rgba(197, 157, 95, .14), #202020) !important;
}
html.panel-theme-dark .menu-studio-sidebar {
  background:linear-gradient(180deg, #202020 0%, #1a1a1a 42%) !important;
}
html.panel-theme-dark .menu-studio-search {
  color:#f3f3f3 !important;
}
html.panel-theme-dark .menu-studio-search::placeholder {
  color:rgba(255, 255, 255, .35) !important;
}
html.panel-theme-dark .menu-cat-row.is-selected {
  background:linear-gradient(135deg, rgba(197, 157, 95, .2), #1a1a1a) !important;
  border-color:rgba(197, 157, 95, .5) !important;
}
html.panel-theme-dark .menu-cat-row.is-empty {
  background:rgba(245, 158, 11, .08) !important;
  border-color:rgba(245, 158, 11, .3) !important;
}
html.panel-theme-dark .menu-cat-thumb,
html.panel-theme-dark .menu-cat-row--soup .menu-cat-thumb--soup,
html.panel-theme-dark .menu-cat-row--main .menu-cat-thumb--main,
html.panel-theme-dark .menu-cat-row--drink .menu-cat-thumb--drink,
html.panel-theme-dark .menu-cat-row--dessert .menu-cat-thumb--dessert,
html.panel-theme-dark .menu-cat-row--default .menu-cat-thumb--default {
  background:#202020 !important;
  border-color:rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .menu-cat-bar {
  background:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .menu-studio-drawer {
  background:rgba(197, 157, 95, .1) !important;
  border-color:rgba(197, 157, 95, .3) !important;
}
html.panel-theme-dark .menu-studio-excel-preview-grid strong {
  color:#c59d5f !important;
}
html.panel-theme-dark .menu-studio-excel-success {
  background:rgba(34, 197, 94, .14) !important;
  border-color:rgba(34, 197, 94, .32) !important;
  color:#86efac !important;
}
html.panel-theme-dark .menu-studio-excel-errors {
  background:rgba(239, 68, 68, .14) !important;
  border-color:rgba(239, 68, 68, .32) !important;
  color:#fca5a5 !important;
}
html.panel-theme-dark .menu-nutrition-missing-btn {
  background:rgba(245, 158, 11, .12) !important;
  border-color:rgba(245, 158, 11, .3) !important;
  color:#fbbf24 !important;
}
html.panel-theme-dark .menu-allergen-chip,
html.panel-theme-dark .panel-allergen-chip {
  background:#202020 !important;
  border-color:rgba(255, 255, 255, .08) !important;
  color:#f3f3f3 !important;
}
html.panel-theme-dark .menu-allergen-chip--none,
html.panel-theme-dark .panel-allergen-chip--none {
  background:rgba(34, 197, 94, .14) !important;
  border-color:rgba(34, 197, 94, .3) !important;
  color:#86efac !important;
}
html.panel-theme-dark .menu-allergen-custom-note {
  color:#a3a3a3 !important;
}
@media (max-width: 768px) {
  html.panel-theme-dark .responsive-table tbody tr {
    background: #1a1a1a !important;
    border-color: rgba(255, 255, 255, .08) !important;
    color: #f3f3f3 !important;
  }
  html.panel-theme-dark .responsive-table tbody td::before {
    color: #a3a3a3 !important;
  }
}

/* Admin — API & Entegrasyon */
.admin-api-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.admin-api-meta {
  display: grid;
  gap: 10px;
  margin: 14px 0 18px;
}
.admin-api-meta div {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px;
  align-items: start;
}
.admin-api-meta dt {
  font-size: 12px;
  font-weight: 700;
  color: var(--home-muted, #666);
  margin: 0;
}
.admin-api-meta dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  word-break: break-all;
}
.admin-api-subtitle {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 800;
}
.admin-api-note {
  margin: 14px 0 0;
  font-size: 12px;
  line-height: 1.5;
}
.admin-api-method {
  display: inline-block;
  min-width: 52px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
  text-align: center;
  background: rgba(15, 23, 42, .06);
  color: #334155;
}
.admin-api-method--get { background: rgba(31, 91, 66, .12); color: #1f5b42; }
.admin-api-method--patch,
.admin-api-method--post { background: rgba(197, 157, 95, .16); color: #8a6a2f; }
.admin-api-key-reveal .admin-api-key-copy {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 12px;
  padding: 12px;
  border-radius: 12px;
  background: #f8fafc;
  border: 1px solid rgba(26, 26, 26, .08);
}
.admin-api-key-copy code {
  flex: 1 1 220px;
  word-break: break-all;
  font-size: 12px;
}
html.panel-theme-dark .admin-api-key-copy {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
@media (max-width: 980px) {
  .admin-api-grid { grid-template-columns: 1fr; }
  .admin-api-meta div { grid-template-columns: 1fr; gap: 4px; }
}

/* Admin — CRM */
.admin-crm-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  padding: 4px;
  border-radius: 14px;
  background: rgba(15, 23, 42, .04);
  border: 1px solid rgba(26, 26, 26, .06);
}
.admin-crm-tab {
  border: none;
  background: transparent;
  padding: 10px 16px;
  border-radius: 10px;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  color: var(--home-muted, #666);
  cursor: pointer;
}
.admin-crm-tab.is-active {
  background: #fff;
  color: var(--home-text, #111);
  box-shadow: 0 4px 14px rgba(15, 23, 42, .08);
}
.admin-crm-view { display: none; }
.admin-crm-view.is-active { display: block; }
.admin-crm-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}
.admin-crm-split {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 16px;
}
.admin-crm-conversion strong {
  display: block;
  font-size: 36px;
  line-height: 1;
  margin-bottom: 6px;
  color: var(--home-gold-dark, #8a6a2f);
}
.admin-crm-pipeline-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.admin-crm-pipeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}
.admin-crm-column {
  min-height: 280px;
  border-radius: 16px;
  background: rgba(15, 23, 42, .03);
  border: 1px solid rgba(26, 26, 26, .06);
  overflow: hidden;
}
.admin-crm-column-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, .72);
  border-bottom: 1px solid rgba(26, 26, 26, .06);
}
.admin-crm-column-count {
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  font-size: 11px;
  font-weight: 800;
  background: rgba(197, 157, 95, .16);
  color: #8a6a2f;
}
.admin-crm-column-body {
  display: grid;
  gap: 10px;
  padding: 12px;
  max-height: 520px;
  overflow: auto;
}
.admin-crm-card {
  padding: 12px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid rgba(26, 26, 26, .08);
  box-shadow: 0 6px 18px rgba(15, 23, 42, .05);
}
.admin-crm-card strong {
  display: block;
  font-size: 13px;
  margin-bottom: 4px;
}
.admin-crm-card p {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}
.admin-crm-card-note {
  margin-top: 6px !important;
  color: var(--home-muted, #666);
}
.admin-crm-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}
.admin-crm-empty {
  font-size: 12px;
  text-align: center;
  padding: 16px 8px;
}
.crm-note-label {
  display: block;
  margin: 10px 0 6px;
  font-size: 12px;
  font-weight: 700;
  color: var(--home-muted, #666);
}
.crm-note-input {
  width: 100%;
  min-height: 64px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .1);
  font: inherit;
  font-size: 13px;
  resize: vertical;
  box-sizing: border-box;
}
html.panel-theme-dark .admin-crm-tabs {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .admin-crm-tab.is-active {
  background:rgba(255, 255, 255, .08) !important;
  color:#f3f3f3 !important;
}
html.panel-theme-dark .admin-crm-column {
  background:rgba(255, 255, 255, .03) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .admin-crm-column-head {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .admin-crm-card {
  background:rgba(255, 255, 255, .05) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
html.panel-theme-dark .crm-note-input {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
  color:#f3f3f3 !important;
}
@media (max-width: 1100px) {
  .admin-crm-pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .admin-crm-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-crm-split { grid-template-columns: 1fr; }
  .admin-crm-pipeline { grid-template-columns: 1fr; }
}

/* Restoran paneli — Müşteriler sekmesi */
.dash-stat--customers .dash-stat-icon { background: rgba(59, 130, 246, .12); }
.panel-customers-search {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #fff;
  min-width: min(100%, 280px);
}
.panel-customers-search input {
  border: none;
  background: transparent;
  font: inherit;
  font-size: 14px;
  outline: none;
  min-width: 0;
  flex: 1;
}
.panel-customers-kpi {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}
.panel-customers-kpi-card {
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #fff;
  display: grid;
  gap: 4px;
}
.panel-customers-kpi-card strong { font-size: 22px; line-height: 1.1; }
.panel-customers-kpi-card span { font-size: 12px; color: #6b7280; }
.panel-customers-layout {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.panel-customers-namecell {
  display: flex;
  align-items: center;
  gap: 10px;
}
.panel-customers-avatar {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-size: 16px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--tier-color, #c59d5f) 18%, #fff), #fff);
  border: 1px solid color-mix(in srgb, var(--tier-color, #c59d5f) 25%, transparent);
  flex-shrink: 0;
}
.panel-customers-avatar--lg { width: 48px; height: 48px; font-size: 22px; border-radius: 14px; }
.panel-customers-empty { padding: 20px 8px; text-align: center; }
.ops-customers-feed { display: grid; gap: 8px; }
.ops-customers-feed-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  padding: 10px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .06);
  background: rgba(255, 255, 255, .6);
  text-align: left;
  cursor: pointer;
  font: inherit;
}
.ops-customers-feed-item:hover { border-color: rgba(197, 157, 95, .35); }
.ops-customers-feed-avatar {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, color-mix(in srgb, var(--tier-color, #c59d5f) 18%, #fff), #fff);
}
.ops-customers-feed-main { display: grid; gap: 2px; min-width: 0; }
.ops-customers-feed-main strong { font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ops-customers-feed-meta { font-size: 11px; color: #6b7280; white-space: nowrap; }
.ops-customers-empty { font-size: 13px; padding: 8px 0; }
.panel-customers-overlay {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: 16px;
}
.panel-customers-overlay[hidden] { display: none !important; }
.panel-customers-overlay-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .45);
}
.panel-customers-overlay-card {
  position: relative;
  width: min(520px, 100%);
  max-height: min(85vh, 720px);
  overflow: auto;
  padding: 20px;
  z-index: 1;
}
.panel-customers-detail-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.panel-customers-detail-head h3 { margin: 0 0 4px; }
.panel-customers-detail-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 16px;
}
.panel-customers-detail-stats div {
  padding: 10px;
  border-radius: 10px;
  background: rgba(26, 26, 26, .04);
  display: grid;
  gap: 2px;
  text-align: center;
}
.panel-customers-detail-stats strong { font-size: 16px; }
.panel-customers-detail-stats span { font-size: 11px; color: #6b7280; }
.panel-customers-detail-orders,
.panel-customers-detail-tx {
  margin: 0 0 14px;
  padding-left: 18px;
  font-size: 13px;
}
html.panel-theme-dark .panel-customers-kpi-card,
html.panel-theme-dark .panel-customers-search,
html.panel-theme-dark .panel-customers-overlay-card {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
}
html.panel-theme-dark .ops-customers-feed-item {
  background:rgba(255, 255, 255, .03) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}
@media (max-width: 960px) {
  .panel-customers-layout { grid-template-columns: 1fr; }
  .panel-customers-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .panel-customers-detail-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Süper admin — Ana sayfa editörü */
.admin-homepage-shell {
  display: grid;
  gap: 16px;
  max-width: 1180px;
}
.admin-homepage-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  padding: 16px 18px;
}
.admin-homepage-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.admin-homepage-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 16px;
  align-items: start;
}
.admin-homepage-col {
  display: grid;
  gap: 14px;
}
.admin-homepage-group-title {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #9a7a3c;
}
.admin-homepage-fields {
  max-width: none;
  gap: 12px;
}
.admin-homepage-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.admin-homepage-section-head .card-title { margin: 0; }
.admin-homepage-product-card { padding: 14px 16px; }
.admin-homepage-product-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}
.admin-homepage-product-grid {
  display: grid;
  gap: 10px;
}
.admin-homepage-upload-box,
.admin-homepage-upload {
  display: grid;
  gap: 8px;
}
.admin-homepage-thumb,
.admin-homepage-preview {
  width: 100%;
  max-width: 220px;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .1);
  object-fit: contain;
  background: #f8fafc;
}
.admin-homepage-thumb {
  aspect-ratio: 4/3;
  max-height: 120px;
  object-fit: cover;
}
.admin-homepage-thumb--empty {
  display: grid;
  place-items: center;
  font-size: 12px;
  color: #94a3b8;
  min-height: 90px;
}
.admin-homepage-preview {
  aspect-ratio: 4/3;
  max-height: 140px;
}
.admin-homepage-preview--portrait {
  aspect-ratio: 7 / 10;
  max-height: 220px;
}
.admin-homepage-images {
  display: grid;
  gap: 14px;
}
.form-row-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.panel-page-header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px 16px;
}
html.panel-theme-dark .admin-homepage-thumb,
html.panel-theme-dark .admin-homepage-preview,
html.panel-theme-dark .admin-homepage-thumb--empty {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
}
@media (max-width: 1024px) {
  .admin-homepage-grid { grid-template-columns: 1fr; }
  .form-row-3 { grid-template-columns: 1fr; }
}

/* Süper admin — Raporlama Merkezi */
.panel-app-admin.panel-v3 {
  --v3-bg: #eef0f6;
  --v3-bg-mesh: radial-gradient(ellipse 80% 60% at 10% -10%, rgba(124, 92, 255, .12), transparent 55%),
    radial-gradient(ellipse 70% 50% at 100% 0%, rgba(197, 157, 95, .14), transparent 50%),
    linear-gradient(180deg, #f3f1fb 0%, #eef0f6 40%, #e9ecf4 100%);
  --v3-surface: rgba(255, 255, 255, .78);
  --v3-surface-solid: #fff;
  --v3-border: rgba(15, 23, 42, .08);
  --v3-text: #0f172a;
  --v3-muted: #64748b;
  --v3-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 40px rgba(15, 23, 42, .06);
  --v3-radius: 18px;
  background: var(--v3-bg-mesh);
  color: var(--v3-text);
}

.admin-reports-hero {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--v3-radius) + 4px);
  padding: clamp(20px, 4vw, 28px);
  margin-bottom: 20px;
  background: linear-gradient(135deg, #1a1b26 0%, #252038 45%, #1e1a2e 100%);
  color: #f8fafc;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .12);
}

.admin-reports-hero-glow {
  position: absolute;
  inset: -40% -20% auto auto;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(124, 92, 255, .45), transparent 65%);
  pointer-events: none;
}

.admin-reports-hero-inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px 20px;
}

.admin-reports-hero-title {
  margin: 8px 0 6px;
  font-size: clamp(1.35rem, 3vw, 1.85rem);
  font-weight: 800;
  letter-spacing: -.03em;
}

.admin-reports-hero-sub {
  margin: 0;
  max-width: 52ch;
  color: #94a3b8 !important;
  font-size: 14px;
}

.admin-reports-hero .panel-page-badge {
  background: rgba(124, 92, 255, .2);
  border-color: rgba(167, 139, 250, .35);
  color: #ddd6fe;
}

.admin-reports-period .ops-period-tab {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .15);
  color: #cbd5e1;
}

.admin-reports-period .ops-period-tab.active {
  background: linear-gradient(135deg, #fff, #e2e8f0);
  color: #1a1b26;
}

/* Raporlama Merkezi'ndeki mor gradient "hero" banner her zaman koyu zeminli
   (site temasından bağımsız) — içine eklenen "Yazdır" butonu da aynı ışık
   üstü desene uysun diye (2026-08-24). */
.admin-reports-period #admin-report-print-btn {
  background: rgba(255, 255, 255, .1);
  border-color: rgba(255, 255, 255, .2);
  color: #e2e8f0;
}
.admin-reports-period #admin-report-print-btn:hover {
  background: rgba(255, 255, 255, .18);
}

.admin-reports-kpi {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.admin-report-kpi {
  position: relative;
  overflow: hidden;
}

.admin-report-kpi--revenue strong {
  color: #15803d;
}

.admin-report-kpi-meta {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  font-style: normal;
  color: var(--v3-muted);
}

.admin-reports-leaderboard {
  margin-top: 14px;
}

.admin-reports-table-wrap {
  overflow: auto;
}

.admin-reports-table tbody tr:hover {
  background: rgba(124, 92, 255, .04);
}

html.panel-theme-dark .panel-app-admin.panel-v3 {
  --v3-surface:rgba(255, 255, 255, .04) !important;
  --v3-border:rgba(255, 255, 255, .08) !important;
  --v3-text:#f1f5f9 !important;
}

html.panel-theme-dark .panel-app-admin.panel-v3 .ops-report-kpi,
html.panel-theme-dark .panel-app-admin.panel-v3 .ops-card {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .08) !important;
}

html.panel-theme-dark .panel-app-admin.panel-v3 .ops-period-tab {
  background:rgba(255, 255, 255, .06) !important;
  border-color:rgba(255, 255, 255, .1) !important;
  color:#94a3b8 !important;
}
/* Restoran paneli Raporlar sekmesindeki dönem sekmeleri (.ops-period-tab)
   admin tarafının aksine hiç koyu mod almıyordu — aynı düzeltme buraya da
   (2026-08-24). Özel tarih aralığı kutusu da aynı geçişte koyulaştırılır. */
html.panel-theme-dark .panel-app-restaurant.panel-v3 .ops-period-tab {
  background: rgba(255, 255, 255, .06) !important;
  border-color: var(--v3-border) !important;
  color: var(--v3-muted) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .ops-custom-range {
  background: var(--v3-surface-solid) !important;
  border-color: var(--v3-border) !important;
}
html.panel-theme-dark .panel-app-restaurant.panel-v3 .ops-custom-range input[type="date"] {
  background: rgba(255, 255, 255, .06) !important;
  border-color: var(--v3-border) !important;
  color: var(--v3-text) !important;
  color-scheme: dark;
}
/* Süper Admin → Raporlama Merkezi'ndeki özel tarih kutusu, mor gradient "hero"
   banner'ın İÇİNDE oturuyor — bu banner site temasından bağımsız her zaman
   koyu, o yüzden panel-theme-dark yerine doğrudan hero'ya göre stillendirilir
   (2026-08-24). */
.admin-reports-hero .ops-custom-range {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .18);
}
.admin-reports-hero .ops-custom-range label {
  color: #cbd5e1;
}
.admin-reports-hero .ops-custom-range input[type="date"] {
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .22);
  color: #fff;
  color-scheme: dark;
}

@media (max-width: 1100px) {
  .admin-reports-kpi { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .admin-reports-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-reports-hero-inner { flex-direction: column; align-items: stretch; }
  .admin-reports-period { width: 100%; }
  .admin-reports-period .ops-period-tab { flex: 1 1 auto; text-align: center; }
}

/* Pratico Menu — marka logosu */
.brand-logo-img,
.home-logo-img {
  display: block;
  flex-shrink: 0;
  border-radius: 11px;
  object-fit: cover;
  box-shadow: 0 8px 20px rgba(124, 92, 255, .22);
}

.panel-app-premium .logo-text {
  line-height: 1.15;
  letter-spacing: -.01em;
}

.logo-text em,
.logo-accent {
  font-style: normal;
  color: #c59d5f;
  font-weight: 600;
}

.panel-app-restaurant.panel-v3 .logo-accent,
.panel-app-admin.panel-v3 .logo-accent {
  color: #d4ad62;
}

.panel-app-restaurant.panel-v3 .brand-logo-img,
.panel-app-admin.panel-v3 .brand-logo-img {
  box-shadow: 0 8px 22px rgba(124, 92, 255, .38);
}

.home-logo-img {
  width: 34px;
  height: 34px;
  border-radius: 9px;
}

.brand-auth-logo {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(124, 92, 255, .28);
}

html.panel-theme-dark .panel-app-premium .logo-accent {
  color:#e2c88a !important;
}

html.home-theme-dark .home-logo-img {
  box-shadow: 0 8px 24px rgba(124, 92, 255, .35);
}

.admin-applications-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

/* —— Başvuru Merkezi (Premium CRM) —— */
.admin-applications--premium {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.admin-apps-hero {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--v3-radius, 18px) + 4px);
  padding: clamp(20px, 4vw, 28px);
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 40%, #134e4a 100%);
  color: #f8fafc;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .14);
}

.admin-apps-hero-glow {
  position: absolute;
  inset: -30% auto auto -10%;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(52, 211, 153, .35), transparent 65%);
  pointer-events: none;
}

.admin-apps-hero-inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px 20px;
}

.admin-apps-hero-title {
  margin: 8px 0 6px;
  font-size: clamp(1.35rem, 3vw, 1.85rem);
  font-weight: 800;
  letter-spacing: -.03em;
}

.admin-apps-hero-sub {
  margin: 0;
  max-width: 52ch;
  color: #94a3b8 !important;
  font-size: 14px;
}

.admin-apps-hero .panel-page-badge {
  background: rgba(52, 211, 153, .18);
  border-color: rgba(110, 231, 183, .35);
  color: #a7f3d0;
}

.admin-apps-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-apps-hero-actions .btn-ghost {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .18);
  color: #e2e8f0;
}

.admin-apps-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.admin-apps-kpi {
  position: relative;
  overflow: hidden;
}

.admin-apps-kpi-icon {
  position: absolute;
  top: 12px;
  right: 12px;
  font-size: 18px;
  opacity: .35;
}

.admin-apps-kpi-meta {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  font-style: normal;
  color: var(--v3-muted, #64748b);
}

.admin-apps-kpi--new strong { color: #2563eb; }
.admin-apps-kpi--active strong { color: #7c3aed; }
.admin-apps-kpi--closed strong { color: #15803d; }
.admin-apps-kpi--open strong { color: #c2410c; }

.admin-apps-pipeline-card { margin: 0; }

.admin-apps-pipeline-bar {
  display: flex;
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(15, 23, 42, .06);
  margin-bottom: 14px;
}

.admin-apps-pipeline-seg {
  min-width: 4px;
  transition: width .3s ease;
}

.admin-apps-pipeline-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-apps-pipeline-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, .1);
  background: #fff;
  font-size: 12px;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease;
}

.admin-apps-pipeline-chip:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(15, 23, 42, .08);
}

.admin-apps-pipeline-chip strong { font-size: 13px; }
.admin-apps-pipeline-chip em {
  font-style: normal;
  color: var(--v3-muted, #64748b);
  font-size: 11px;
}

.admin-apps-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.admin-apps-search {
  flex: 1 1 220px;
  min-width: 0;
}

.admin-apps-search input {
  width: 100%;
  padding: 10px 14px 10px 36px;
  border-radius: 12px;
  border: 1px solid var(--v3-border, rgba(15, 23, 42, .1));
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242 1.006a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E") 12px center no-repeat;
  font-size: 14px;
}

.admin-apps-sort {
  min-width: 160px;
}

.admin-apps-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-apps-filters .ops-period-tab.is-active {
  background: linear-gradient(135deg, #059669, #047857);
  border-color: transparent;
  color: #fff;
}

.admin-apps-filter-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  padding: 0 6px;
  margin-left: 4px;
  border-radius: 999px;
  background: rgba(15, 23, 42, .08);
  font-size: 11px;
  font-weight: 700;
}

.admin-apps-filters .ops-period-tab.is-active .admin-apps-filter-count {
  background: rgba(255, 255, 255, .22);
}

.admin-apps-layout {
  display: grid;
  grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.admin-apps-list-wrap,
.admin-apps-detail-wrap {
  overflow: hidden;
  margin: 0;
}

.admin-apps-list {
  display: flex;
  flex-direction: column;
  max-height: min(72vh, 720px);
  overflow: auto;
}

.admin-apps-list-item {
  display: block;
  width: 100%;
  text-align: left;
  padding: 14px 16px;
  border: none;
  border-bottom: 1px solid var(--v3-border, rgba(15, 23, 42, .08));
  background: transparent;
  cursor: pointer;
  transition: background .15s ease;
}

.admin-apps-list-item:hover { background: rgba(5, 150, 105, .04); }

.admin-apps-list-item.is-selected {
  background: linear-gradient(90deg, rgba(5, 150, 105, .1), rgba(5, 150, 105, .02));
  box-shadow: inset 3px 0 0 #059669;
}

.admin-apps-list-item.is-unread .admin-apps-list-item-head strong {
  font-weight: 800;
}

.admin-apps-list-item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 4px;
}

.admin-apps-list-item-head strong {
  font-size: 14px;
  line-height: 1.3;
}

.admin-apps-list-item-meta {
  margin: 0;
  font-size: 12px;
  color: var(--v3-muted, #64748b);
}

.admin-apps-list-item-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
  font-size: 11px;
  color: var(--v3-muted, #94a3b8);
}

.admin-apps-has-message { font-size: 12px; }

.admin-apps-status-pill {
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.lead-status--new { background: #dbeafe; color: #1d4ed8; }
.lead-status--called { background: #fef3c7; color: #b45309; }
.lead-status--interested { background: #ede9fe; color: #6d28d9; }
.lead-status--closed { background: #f1f5f9; color: #64748b; }

.admin-apps-pipeline-seg.lead-status--new { background: #3b82f6; }
.admin-apps-pipeline-seg.lead-status--called { background: #f59e0b; }
.admin-apps-pipeline-seg.lead-status--interested { background: #8b5cf6; }
.admin-apps-pipeline-seg.lead-status--closed { background: #94a3b8; }

.admin-apps-detail-wrap {
  position: sticky;
  top: 12px;
  max-height: min(72vh, 720px);
  overflow: auto;
}

.admin-apps-detail-empty {
  padding: 32px 20px;
  text-align: center;
}

.admin-apps-detail-empty-icon {
  display: block;
  font-size: 32px;
  opacity: .35;
  margin-bottom: 12px;
}

.admin-apps-empty {
  padding: 32px 16px;
  text-align: center;
}

.admin-apps-empty span {
  display: block;
  font-size: 28px;
  opacity: .3;
  margin-bottom: 8px;
}

.admin-apps-detail {
  padding: 18px;
}

.admin-apps-detail-head h3 {
  margin: 8px 0 4px;
  font-size: 1.25rem;
  letter-spacing: -.02em;
}

.admin-apps-detail-id {
  margin: 0;
  font-size: 12px;
}

.admin-apps-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--v3-border, rgba(15, 23, 42, .08));
}

.admin-apps-action-call {
  background: linear-gradient(135deg, #059669, #047857) !important;
  border-color: transparent !important;
}

.admin-apps-action-wa { color: #15803d; }

.admin-apps-detail-fields {
  display: grid;
  gap: 10px;
  margin: 0 0 16px;
}

.admin-apps-detail-fields div {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 8px;
  font-size: 13px;
}

.admin-apps-detail-fields dt {
  margin: 0;
  color: var(--v3-muted, #64748b);
  font-weight: 600;
}

.admin-apps-detail-fields dd {
  margin: 0;
  word-break: break-word;
}

.admin-apps-detail-fields a { color: #059669; text-decoration: none; }
.admin-apps-detail-fields a:hover { text-decoration: underline; }

.admin-apps-detail-message {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(15, 23, 42, .04);
  border: 1px solid var(--v3-border, rgba(15, 23, 42, .08));
}

.admin-apps-detail-message h4,
.admin-apps-detail-status h4,
.admin-apps-detail-notes label {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--v3-muted, #64748b);
}

.admin-apps-detail-message p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.admin-apps-status-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 16px;
}

.admin-apps-status-step {
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(15, 23, 42, .1);
  background: #fff;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: all .15s ease;
}

.admin-apps-status-step.is-active {
  box-shadow: 0 0 0 2px currentColor;
  transform: scale(1.02);
}

.admin-apps-status-step.lead-status--new.is-active { color: #1d4ed8; }
.admin-apps-status-step.lead-status--called.is-active { color: #b45309; }
.admin-apps-status-step.lead-status--interested.is-active { color: #6d28d9; }
.admin-apps-status-step.lead-status--closed.is-active { color: #64748b; }

.admin-apps-note-input {
  width: 100%;
  min-height: 96px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid var(--v3-border, rgba(15, 23, 42, .12));
  font-size: 13px;
  line-height: 1.5;
  resize: vertical;
}

.admin-apps-note-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.admin-apps-note-hint { font-size: 11px; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html.panel-theme-dark .panel-app-admin.panel-v3 .admin-apps-search input,
html.panel-theme-dark .panel-app-admin.panel-v3 .admin-apps-pipeline-chip,
html.panel-theme-dark .panel-app-admin.panel-v3 .admin-apps-status-step {
  background:rgba(255, 255, 255, .04) !important;
  border-color:rgba(255, 255, 255, .1) !important;
  color:#e2e8f0 !important;
}

html.panel-theme-dark .panel-app-admin.panel-v3 .admin-apps-list-item.is-selected {
  background:rgba(52, 211, 153, .12) !important;
}

html.panel-theme-dark .panel-app-admin.panel-v3 .admin-apps-detail-message {
  background:rgba(255, 255, 255, .04) !important;
}

@media (max-width: 960px) {
  .admin-apps-layout { grid-template-columns: 1fr; }
  .admin-apps-detail-wrap { position: static; max-height: none; }
  .admin-apps-list { max-height: 360px; }
  .admin-apps-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .admin-apps-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-apps-hero-inner { flex-direction: column; align-items: stretch; }
  .admin-apps-status-steps { grid-template-columns: 1fr; }
  .admin-apps-detail-fields div { grid-template-columns: 1fr; }
}

.admin-applications-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.admin-applications-filters .ops-period-tab.is-active {
  background: linear-gradient(135deg, #7c5cff, #6346e0);
  border-color: transparent;
  color: #fff;
}

.admin-applications-list-wrap {
  overflow: auto;
}

.admin-application-item {
  border-bottom: 1px solid var(--v3-border, rgba(15, 23, 42, .08));
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.admin-application-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.admin-application-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.admin-application-controls label {
  font-size: 12px;
}

.admin-application-message {
  margin-top: 6px;
  white-space: pre-wrap;
}

@media (max-width: 720px) {
  .admin-applications-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Garson çağrıları (panel sipariş ekranı) */
.panel-waiter-calls {
  margin: 12px 0 16px;
  border: 1px solid #f5b54233;
  background: linear-gradient(180deg, #fff8ec, #fff);
  border-radius: 14px;
  padding: 12px 14px;
  box-shadow: 0 6px 20px rgba(245, 181, 66, 0.12);
}
.panel-waiter-calls-head {
  font-weight: 700;
  margin-bottom: 8px;
  color: #b45309;
}
.panel-waiter-call {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid #f1e3c6;
}
.panel-waiter-call:first-of-type { border-top: none; }
.panel-waiter-call-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.panel-waiter-call-info strong { font-size: 15px; }
.panel-waiter-call-info span { font-size: 13px; color: #6b7280; }
.panel-waiter-call-time { font-variant-numeric: tabular-nums; }

/* ============================================================
   PREMIUM POLISH (UI review fix) — storefront koyu tema
   ============================================================ */

/* Kontrast: ikincil metni biraz aç (WCAG okunabilirlik) */
.menu-app-dark { --dm-muted: #aebfb5; }

/* --- Erişilebilirlik: klavye focus görünürlüğü --- */
.menu-app-dark .btn:focus-visible,
.menu-app-dark .menu-ref-nav-item:focus-visible,
.menu-app-dark .menu-dark-nav-center:focus-visible,
.menu-app-dark .menu-sheet-close:focus-visible,
.menu-app-dark .menu-order-type-opt:focus-visible,
.menu-app-dark input:focus-visible,
.menu-app-dark select:focus-visible,
.menu-app-dark textarea:focus-visible {
  outline: 2px solid var(--dm-accent);
  outline-offset: 2px;
}

/* --- Mikro etkileşim: birincil/ghost buton geçişleri --- */
.menu-app-dark .menu-dark-primary-btn,
.menu-app-dark .menu-dark-outline-btn,
.menu-app-dark .menu-dark-ghost-btn {
  transition: transform .14s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, filter .18s ease;
}
.menu-app-dark .menu-dark-primary-btn:hover { filter: brightness(1.06); box-shadow: 0 10px 26px -10px rgba(42,122,88,.8); }
.menu-app-dark .menu-dark-primary-btn:active { transform: translateY(1px); }
.menu-app-dark .menu-dark-outline-btn:hover,
.menu-app-dark .menu-dark-ghost-btn:hover { border-color: var(--dm-accent); }

/* Sepete eklenince kısa "pulse" (mikro geri bildirim) */
@keyframes menu-add-pulse { 0% { transform: scale(1); } 35% { transform: scale(1.16); } 100% { transform: scale(1); } }
.menu-app-dark .menu-ref-nav-badge.is-bump { animation: menu-add-pulse .42s ease; }

/* --- QR masa rozeti (ana ekran) --- */
.menu-customer-table-badge {
  display: inline-flex; align-items: center; gap: 7px;
  margin: 10px auto 0;
  padding: 6px 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(216,169,67,.18), rgba(216,169,67,.08));
  border: 1px solid rgba(216,169,67,.42);
  color: #f3dca0;
  font-size: 13px; font-weight: 600;
  box-shadow: 0 4px 18px -8px rgba(216,169,67,.5);
}
.menu-customer-table-badge svg { color: var(--dm-accent); }
.menu-customer-table-badge strong { color: #ffe9b8; font-weight: 800; }

.menu-customer-fulfillment-badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.menu-customer-fulfillment-badges .menu-customer-table-badge { margin: 0; }

/* --- Kapalı restoran üst bandı --- */
.menu-orders-closed-banner {
  position: sticky; top: 0; z-index: 60;
  display: flex; align-items: center; gap: 12px;
  padding: 12px 16px;
  background: linear-gradient(135deg, #5b1d1d, #3a1414);
  border-bottom: 1px solid rgba(248,113,113,.4);
  color: #ffe1e1;
}
.menu-orders-closed-banner-icon { font-size: 20px; line-height: 1; }
.menu-orders-closed-banner-copy { display: flex; flex-direction: column; line-height: 1.3; }
.menu-orders-closed-banner-copy strong { font-size: 14px; font-weight: 800; color: #fff; }
.menu-orders-closed-banner-copy span { font-size: 12.5px; color: #ffc9c9; }

/* --- Sipariş tipi seçici --- */
.menu-order-type { margin: 4px 0 12px; }
.menu-order-type-label { display: block; font-size: 13px; font-weight: 600; color: var(--dm-muted); margin-bottom: 7px; }
.menu-order-type-options { display: flex; gap: 8px; }
.menu-order-type-opt {
  flex: 1; display: flex; flex-direction: column; align-items: center; gap: 4px;
  padding: 11px 8px; border-radius: 14px;
  background: var(--dm-card); border: 1.5px solid var(--dm-border);
  color: var(--dm-muted); font-size: 13px; font-weight: 600; cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .12s ease;
}
.menu-order-type-opt-icon { font-size: 18px; line-height: 1; }
.menu-order-type-opt:hover { border-color: rgba(216,169,67,.4); }
.menu-order-type-opt.is-active {
  border-color: var(--dm-accent); color: var(--dm-text);
  background: linear-gradient(135deg, rgba(216,169,67,.16), rgba(216,169,67,.06));
}
.menu-order-type--single .menu-order-type-opt { cursor: default; }
.menu-order-type--single .menu-order-type-opt:hover { transform: none; }
/* Ödeme yöntemi seçici — 3 seçenek (Nakit/Kredi Kartı/Yemek Kartı), aynı
   .menu-order-type-opt kartlarıyla tek satırda eşit genişlikli ızgara. */
.menu-payment-method-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.menu-payment-method-options .menu-order-type-opt { flex: none; }

/* Gel-Al/Paket: "servis istemiyorum" (çatal-bıçak/peçete) tercihi. */
.menu-no-cutlery-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 14px;
  padding: 10px 12px;
  border: 1px solid var(--dm-border, rgba(255,255,255,.1));
  border-radius: 10px;
  background: var(--dm-search);
  color: var(--dm-text);
  font-size: 13px;
  cursor: pointer;
}
.menu-no-cutlery-row input[type="checkbox"] { width: 17px; height: 17px; flex: none; accent-color: var(--dm-accent); }
.menu-no-cutlery-row small { color: var(--dm-muted); }

/* --- Sipariş başarılı onay sheet'i --- */
.menu-success-body { text-align: center; padding-top: 8px; }
.menu-success-check { width: 84px; height: 84px; margin: 6px auto 14px; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle, rgba(42,122,88,.28), rgba(42,122,88,0) 70%); }
.menu-success-check-circle { stroke: #34d27f; stroke-width: 3; stroke-dasharray: 151; stroke-dashoffset: 151; animation: menu-success-circle .55s cubic-bezier(.65,0,.45,1) forwards; }
.menu-success-check-mark { stroke: #34d27f; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 40; stroke-dashoffset: 40; animation: menu-success-mark .35s .5s cubic-bezier(.65,0,.45,1) forwards; }
@keyframes menu-success-circle { to { stroke-dashoffset: 0; } }
@keyframes menu-success-mark { to { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) {
  .menu-success-check-circle, .menu-success-check-mark { animation: none; stroke-dashoffset: 0; }
}
.menu-success-title { font-size: 22px; font-weight: 800; color: var(--dm-text); margin: 0 0 6px; }
.menu-success-sub { font-size: 14px; color: var(--dm-muted); margin: 0 auto 16px; max-width: 32ch; }
.menu-success-order-no {
  display: inline-flex; align-items: baseline; gap: 8px;
  padding: 7px 16px; margin: 0 auto 16px; border-radius: 999px;
  background: rgba(216,169,67,.12); border: 1px solid rgba(216,169,67,.4);
}
.menu-success-order-no span { font-size: 12px; color: var(--dm-muted); text-transform: uppercase; letter-spacing: .06em; }
.menu-success-order-no strong { font-size: 18px; font-weight: 800; color: #ffe9b8; }
.menu-success-card { text-align: left; background: var(--dm-card); border: 1px solid var(--dm-border); border-radius: 18px; padding: 14px 16px; margin: 0 0 14px; }
.menu-success-items { list-style: none; margin: 0 0 10px; padding: 0 0 10px; border-bottom: 1px dashed var(--dm-border); display: flex; flex-direction: column; gap: 8px; }
.menu-success-items li { display: flex; align-items: baseline; gap: 10px; font-size: 14px; }
.menu-success-qty { color: var(--dm-accent); font-weight: 800; flex: none; }
.menu-success-iname { color: var(--dm-text); flex: 1; }
.menu-success-iprice { color: var(--dm-text); font-weight: 700; font-variant-numeric: tabular-nums; }
.menu-success-meta { display: flex; flex-direction: column; gap: 7px; }
.menu-success-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 13.5px; }
.menu-success-row span { color: var(--dm-muted); }
.menu-success-row strong { color: var(--dm-text); font-weight: 600; text-align: right; }
.menu-success-row--total { margin-top: 4px; padding-top: 9px; border-top: 1px solid var(--dm-border); font-size: 15px; }
.menu-success-row--total span { color: var(--dm-text); font-weight: 700; }
.menu-success-row--total strong { color: var(--dm-accent); font-weight: 800; font-size: 17px; }
.menu-success-loyalty { font-size: 13px; color: #f3dca0; background: rgba(216,169,67,.1); border: 1px solid rgba(216,169,67,.3); border-radius: 12px; padding: 9px 12px; margin: 0 0 14px; }
.menu-success-loyalty strong { color: #ffe9b8; }
.menu-success-actions { display: flex; flex-direction: column; gap: 10px; }
.menu-success-actions-row { display: flex; gap: 10px; }
.menu-success-actions-row .btn { flex: 1; }

/* ============================================================
   Desktop / tablet premium kabuk (mobil tasarım korunur)
   ============================================================ */
.menu-desktop-ambient { display: none; }

@media (min-width: 768px) {
  .menu-app-dark.menu-app-mobile-only { background: #04100c; }
  .menu-desktop-ambient {
    display: block; position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden;
  }
  .menu-desktop-ambient::before {
    content: ""; position: absolute; inset: -10%;
    background:
      radial-gradient(55% 45% at 50% -5%, rgba(31,91,66,.55), transparent 60%),
      radial-gradient(45% 40% at 50% 105%, rgba(216,169,67,.12), transparent 60%),
      #04100c;
  }
  .menu-app-dark.has-cover .menu-desktop-ambient::after {
    content: ""; position: absolute; inset: -8%;
    background-image: var(--menu-cover-url);
    background-size: cover; background-position: center;
    filter: blur(64px) saturate(1.15) brightness(.45);
    opacity: .55;
  }
  .menu-app-dark .menu-mobile-shell {
    position: relative; z-index: 1;
    max-width: 440px;
    margin: 26px auto;
    min-height: calc(100vh - 52px);
    border-radius: 30px;
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: 0 44px 130px -24px rgba(0,0,0,.72), 0 0 0 1px rgba(255,255,255,.03);
  }
  /* yuvarlatılmış üst köşeleri korumak için bant/hero köşeleri yumuşat */
  .menu-app-dark .menu-orders-closed-banner { border-radius: 30px 30px 0 0; }
}

@media (min-width: 1024px) {
  .menu-app-dark .menu-mobile-shell { max-width: 452px; margin: 32px auto; min-height: calc(100vh - 64px); }
}


/* —— Besin / Alerjen chip UX (panel + müşteri menü) —— */
.allergen-chip-field { display: grid; gap: 10px; }
.allergen-chip-grid { display: flex; flex-wrap: wrap; gap: 6px; }
.allergen-chip-toggle {
  appearance: none; border: 1px solid var(--border, #d8d5cf); background: #fff;
  color: var(--text, #1a1a1a); font-size: 12px; font-weight: 600;
  padding: 6px 10px; border-radius: 999px; cursor: pointer; line-height: 1.2;
}
.allergen-chip-toggle.is-on {
  background: #1a1a1a; color: #fff; border-color: #1a1a1a;
}
.allergen-chip-toggle.is-custom { border-style: dashed; }
.allergen-none-row { margin-top: 2px; }
.panel-nutrition-preview {
  border: 1px dashed var(--border, #d8d5cf); border-radius: 12px;
  padding: 10px 12px; background: rgba(0,0,0,.02);
}
.panel-nutrition-preview-inner { display: grid; gap: 8px; }
.panel-nutrition-preview-inner strong { font-size: 14px; }
.panel-nutrition-preview-note { margin: 0; font-size: 12px; color: var(--ms-muted, #666); }
.panel-allergen-chip-row, .menu-allergen-chip-row {
  display: flex; flex-wrap: wrap; gap: 6px;
}
.panel-allergen-chip, .menu-allergen-chip {
  display: inline-flex; align-items: center; font-size: 11px; font-weight: 650;
  padding: 4px 8px; border-radius: 999px; background: #f3f1ec; color: #333;
  border: 1px solid #e4e0d8;
}
.panel-allergen-chip--none, .menu-allergen-chip--none {
  background: #eef7ef; border-color: #cfe8d2; color: #1f6b34;
}
.menu-nutrition-missing-banner { margin: 0 0 10px; }
.menu-nutrition-missing-btn {
  width: 100%; text-align: left; border: 1px solid #f0d7a8; background: #fff8ea;
  color: #7a4e00; border-radius: 10px; padding: 10px 12px; font-size: 13px; cursor: pointer;
}
.menu-product-badge.is-nutrition { background: #fff1d6; color: #8a5a00; }
.menu-item-modal-kcal { margin: 0 0 8px; font-weight: 700; font-size: 14px; }
.menu-allergen-custom-note { margin: 8px 0 0; font-size: 12px; color: #666; }
.admin-homepage-press-grid {
  display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-top: 12px;
}
.admin-homepage-press-card {
  border: 1px solid var(--border, #e5e2dc); border-radius: 12px; padding: 12px; gap: 8px;
}
.panel-dark .allergen-chip-toggle,
html.panel-theme-dark .allergen-chip-toggle,
body.panel-dark .allergen-chip-toggle {
  background:#222 !important; color:#eee !important; border-color:#444 !important;
}
.panel-dark .allergen-chip-toggle.is-on,
html.panel-theme-dark .allergen-chip-toggle.is-on,
body.panel-dark .allergen-chip-toggle.is-on {
  background:#f5f5f5 !important; color:#111 !important; border-color:#f5f5f5 !important;
}
.panel-dark .panel-nutrition-preview,
html.panel-theme-dark .panel-nutrition-preview {
  background:rgba(255,255,255,.04) !important; border-color:#444 !important;
}
.menu-app-dark .menu-allergen-chip {
  background: #2a2a2a; border-color: #3a3a3a; color: #eee;
}
.menu-app-dark .menu-allergen-chip--none {
  background: #1e3324; border-color: #2f5a3c; color: #9ddeb0;
}
.menu-app-dark .menu-allergen-custom-note { color: var(--dm-muted, #aaa); }


/* Admin homepage — canlı önizleme + Düzenle çekmecesi */
.admin-homepage-live { display: grid; gap: 12px; }
.admin-homepage-live-stage {
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  min-height: calc(100vh - 220px);
}
.admin-homepage-rail {
  display: flex; flex-direction: column; gap: 6px;
  position: sticky; top: 12px; align-self: start;
  max-height: calc(100vh - 160px); overflow: auto;
  padding: 8px; border: 1px solid var(--border, #e5e2dc); border-radius: 14px;
  background: var(--panel-card, #fff);
}
.admin-homepage-rail-item {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 8px 10px; border-radius: 10px; background: rgba(0,0,0,.02);
}
.admin-homepage-rail-label { font-size: 12px; font-weight: 650; line-height: 1.25; }
.admin-homepage-iframe-wrap {
  border: 1px solid var(--border, #e5e2dc); border-radius: 16px; overflow: hidden;
  background: #fff; min-height: 70vh;
}
.admin-homepage-iframe {
  display: block; width: 100%; height: calc(100vh - 220px); min-height: 720px; border: 0;
  background: #fff;
}
.admin-homepage-drawer {
  position: fixed; inset: 0; z-index: 80; display: flex; justify-content: flex-end;
}
.admin-homepage-drawer[hidden] { display: none !important; }
.admin-homepage-drawer-backdrop {
  position: absolute; inset: 0; background: rgba(15, 18, 22, .42);
}
.admin-homepage-drawer-panel {
  position: relative; z-index: 1; width: min(520px, 100%); height: 100%;
  background: var(--panel-card, #fff); box-shadow: -12px 0 40px rgba(0,0,0,.18);
  display: flex; flex-direction: column;
}
.admin-homepage-drawer-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 16px; border-bottom: 1px solid var(--border, #e8e4dc);
}
.admin-homepage-form--drawer {
  flex: 1; overflow: auto; padding: 16px; display: grid; gap: 12px; align-content: start;
}
.admin-homepage-panel-head {
  display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px;
}
.admin-homepage-panel-head h3 { margin: 0; font-size: 16px; }
.admin-homepage-drawer-footer {
  display: flex; justify-content: flex-end; gap: 8px; padding-top: 12px;
  border-top: 1px solid var(--border, #e8e4dc); position: sticky; bottom: 0;
  background: var(--panel-card, #fff);
}
#tab-homepage .panel-page-header { margin-bottom: 10px; }
@media (max-width: 980px) {
  .admin-homepage-live-stage { grid-template-columns: 1fr; }
  .admin-homepage-rail { position: static; max-height: none; flex-direction: row; flex-wrap: wrap; }
  .admin-homepage-iframe { min-height: 560px; height: 70vh; }
}
html.panel-theme-dark .admin-homepage-rail,
html.panel-theme-dark .admin-homepage-iframe-wrap,
html.panel-theme-dark .admin-homepage-drawer-panel {
  background:#1a1d22 !important; border-color:#333 !important;
}
html.panel-theme-dark .admin-homepage-rail-item { background:rgba(255,255,255,.04) !important; }

/* info-lang-ig-fix-20260711 */

/* faz6-notification-center-20260724 */
.notification-bell-wrap{position:relative;flex-shrink:0}
/* Zil butonu artık araç çubuğundaki diğer pill butonlarla (Destek, Ses,
   Fiş, Sipariş durumu) aynı boyut/şekil dilini paylaşır — ikon+etiket. */
.notification-bell-btn{display:inline-flex;align-items:center;gap:8px;height:39px;padding:0 14px;border-radius:999px;border:1px solid var(--v3-border,rgba(15,23,42,.08));background:rgba(255,255,255,.9);color:var(--v3-text,#0f172a);font-size:13px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 1px 2px rgba(15,23,42,.04);position:relative;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.notification-bell-btn:hover{border-color:rgba(124,92,255,.25);transform:translateY(-1px)}
.notification-bell-icon{font-size:13px;line-height:1}
.notification-bell-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px rgba(239,68,68,.25)}
.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-width:90vw;max-height:480px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--v3-border,rgba(15,23,42,.08));border-radius:16px;box-shadow:0 18px 46px rgba(15,23,42,.14);z-index:60;overflow:hidden}
.notification-dropdown[hidden]{display:none}
.notification-dropdown-head{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid var(--v3-border,rgba(15,23,42,.08))}
.notification-dropdown-head strong{font-size:14px}
.notification-dropdown-markall{background:none;border:none;color:#7c5cff;font-size:12.5px;font-weight:700;cursor:pointer;padding:.2rem .3rem}
.notification-dropdown-list{overflow-y:auto;flex:1}
.notification-item{display:flex;gap:.6rem;padding:.7rem 1rem;border-bottom:1px solid rgba(15,23,42,.05);cursor:pointer;transition:background .12s ease}
.notification-item:hover{background:rgba(124,92,255,.05)}
.notification-item.is-unread{background:rgba(124,92,255,.06)}
.notification-item-icon{font-size:18px;flex-shrink:0;line-height:1.4}
.notification-item-body{min-width:0;flex:1}
.notification-item-title{font-size:13px;font-weight:700;color:var(--v3-text,#0f172a)}
.notification-item-desc{font-size:12px;color:var(--muted,#64748b);margin-top:2px}
.notification-item-time{font-size:11px;color:var(--muted,#94a3b8);margin-top:3px}
.notification-item.severity-warning .notification-item-title{color:#b45309}
.notification-item.severity-critical .notification-item-title{color:#dc2626}
.notification-empty{padding:2rem 1rem;text-align:center;color:var(--muted,#64748b);font-size:13px}
html.panel-theme-dark .notification-bell-btn{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
html.panel-theme-dark .notification-dropdown{background:#1a1d22;border-color:#333}
html.panel-theme-dark .notification-dropdown-head{border-color:#333}
html.panel-theme-dark .notification-item{border-color:rgba(255,255,255,.06)}
html.panel-theme-dark .notification-item.is-unread{background:rgba(124,92,255,.12)}
@media(max-width:520px){.notification-dropdown{position:fixed;top:64px;right:8px;left:8px;width:auto}}
.admin-notifications-filters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:1rem}
.admin-notifications-filters select,.admin-notifications-filters input{padding:.5rem .7rem;border:1px solid var(--border,#e2e8f0);border-radius:10px;font-size:13px}
.admin-notifications-pagination{display:flex;align-items:center;justify-content:center;margin-top:1rem}

/* info-lang-ig-cachebust-20260711-1608 */
.pos-panel-card{margin-bottom:1.25rem;overflow:hidden}.pos-panel-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;padding:1rem 1.2rem;cursor:pointer;list-style:none}.pos-panel-summary::-webkit-details-marker{display:none}.pos-panel-summary>span:first-child{display:grid;gap:.25rem}.pos-panel-summary small{color:var(--muted)}.pos-status-badge{padding:.35rem .65rem;border:1px solid var(--border);border-radius:999px;font-size:.72rem;font-weight:800}.pos-status-badge.is-connected{color:#16a66a;border-color:#16a66a}.pos-status-badge.is-warning{color:#b8860b;border-color:#b8860b}.pos-status-badge.is-error{color:#dc4b4b;border-color:#dc4b4b}.pos-panel-body{display:grid;gap:1rem;padding:0 1.2rem 1.2rem}.pos-notice{padding:.8rem 1rem;border-radius:12px;background:var(--surface-soft,#f4f7f8);color:var(--muted)}.pos-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.pos-provider-grid label{display:flex;gap:.65rem;align-items:flex-start;min-height:76px;padding:.85rem;border:1px solid var(--border);border-radius:14px;cursor:pointer}.pos-provider-grid label:has(input:checked){border-color:var(--primary,#17b978);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary,#17b978) 18%,transparent)}.pos-provider-grid span{display:grid;gap:.2rem}.pos-provider-grid small{color:var(--muted);line-height:1.35}.pos-settings-grid,.pos-credential-grid,.pos-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.pos-settings-grid label,.pos-credential-grid label{display:grid;gap:.45rem}.pos-settings-grid label:not(:first-child){display:flex;align-items:center;min-height:44px}.pos-credentials,.pos-subsection{border:1px solid var(--border);border-radius:14px;padding:1rem}.pos-credentials legend{font-weight:700;padding:0 .35rem}.pos-meta-grid>div{display:grid;gap:.3rem;padding:.8rem;border:1px solid var(--border);border-radius:12px}.pos-meta-grid span{color:var(--muted);font-size:.82rem}.pos-subsection summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700}.pos-actions{display:flex;gap:.55rem;flex-wrap:wrap}.pos-panel-card.is-loading{opacity:.75;pointer-events:none}#pos-panel-message.is-error{color:#dc4b4b}@media(max-width:768px){.pos-provider-grid,.pos-settings-grid,.pos-credential-grid,.pos-meta-grid{grid-template-columns:1fr}.pos-actions .btn{width:100%;min-height:44px}.pos-panel-summary{align-items:flex-start}.pos-status-badge{flex:none}}

/* homepage-rail-click */
.admin-homepage-rail-item { cursor:pointer; transition:background .15s ease, transform .15s ease, box-shadow .15s ease; }
.admin-homepage-rail-item:hover { background:rgba(124,92,255,.08); transform:translateY(-1px); box-shadow:0 4px 14px rgba(15,23,42,.08); }

/* homepage-footer-premium-20260729 */
.landing-page.home-layout .home-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(48px, 6vw, 76px) 0 28px;
  border-top: 0;
}
.landing-page.home-layout .home-footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 14% 18%, rgba(197, 157, 95, .15), transparent 30%),
    radial-gradient(circle at 88% 82%, rgba(124, 92, 255, .09), transparent 32%);
}
.landing-page.home-layout .home-footer-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) minmax(190px, .65fr) minmax(190px, .65fr);
  align-items: start;
  gap: clamp(28px, 5vw, 76px);
  margin-bottom: 0;
  padding: clamp(28px, 4vw, 48px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--home-border) 76%, white 24%);
  border-bottom: 0;
  border-radius: 30px 30px 0 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.64)),
    var(--home-surface);
  box-shadow: 0 28px 70px rgba(49, 36, 19, .09);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.landing-page.home-layout .home-footer-grid::after {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  right: -92px;
  top: -112px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(197,157,95,.18), transparent 68%);
  pointer-events: none;
}
.landing-page.home-layout .home-footer-grid > div:first-child {
  max-width: 380px;
}
.landing-page.home-layout .home-footer .home-logo {
  width: fit-content;
  margin-bottom: 18px;
  padding: 8px 12px 8px 8px;
  border: 1px solid color-mix(in srgb, var(--home-border) 76%, white 24%);
  border-radius: 16px;
  background: rgba(255,255,255,.58);
  box-shadow: 0 12px 28px rgba(49,36,19,.08);
}
.landing-page.home-layout .home-footer-tag {
  max-width: 360px;
  font-size: 14px;
  line-height: 1.75;
}
.landing-page.home-layout .home-footer-grid strong {
  margin-bottom: 12px;
  color: var(--home-text);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.landing-page.home-layout .home-footer-grid a:not(.home-logo) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 38px;
  padding: 8px 10px;
  margin-inline: -10px;
  border-radius: 11px;
  transition: color .18s ease, background .18s ease, transform .18s ease;
}
.landing-page.home-layout .home-footer-grid a:not(.home-logo)::after {
  content: "↗";
  opacity: 0;
  transform: translate(-4px, 3px);
  color: var(--home-gold-dark);
  transition: opacity .18s ease, transform .18s ease;
}
.landing-page.home-layout .home-footer-grid a:not(.home-logo):hover,
.landing-page.home-layout .home-footer-grid a:not(.home-logo):focus-visible {
  color: var(--home-text);
  background: rgba(197,157,95,.11);
  transform: translateX(3px);
  outline: none;
}
.landing-page.home-layout .home-footer-grid a:not(.home-logo):hover::after,
.landing-page.home-layout .home-footer-grid a:not(.home-logo):focus-visible::after {
  opacity: 1;
  transform: translate(0, 0);
}
.landing-page.home-layout .home-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px clamp(28px, 4vw, 48px);
  border: 1px solid color-mix(in srgb, var(--home-border) 76%, white 24%);
  border-top-color: color-mix(in srgb, var(--home-border) 64%, transparent);
  border-radius: 0 0 30px 30px;
  background: rgba(255,255,255,.68);
  box-shadow: 0 28px 70px rgba(49,36,19,.09);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
html.home-theme-dark .landing-page.home-layout .home-footer-grid,
html.home-theme-dark .landing-page.home-layout .home-footer-bottom {
  border-color: rgba(255,255,255,.09);
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  box-shadow: 0 30px 80px rgba(0,0,0,.28);
}
html.home-theme-dark .landing-page.home-layout .home-footer .home-logo {
  border-color: rgba(255,255,255,.09);
  background: rgba(255,255,255,.045);
}
@media (max-width: 900px) {
  .landing-page.home-layout .home-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .landing-page.home-layout .home-footer-grid > div:first-child {
    grid-column: 1 / -1;
  }
}
@media (max-width: 620px) {
  .landing-page.home-layout .home-footer {
    padding-top: 40px;
  }
  .landing-page.home-layout .home-footer-grid {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 26px 22px;
    border-radius: 24px 24px 0 0;
  }
  .landing-page.home-layout .home-footer-grid > div:first-child {
    grid-column: auto;
  }
  .landing-page.home-layout .home-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
    padding: 20px 22px;
    border-radius: 0 0 24px 24px;
  }
  .landing-page.home-layout .home-footer-legal-links {
    flex-wrap: wrap;
  }
}

/* admin-users-premium-20260729 */
#tab-users .panel-section-card {
  padding: 0;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--border) 78%, transparent);
  border-radius: 24px;
  box-shadow: 0 24px 54px rgba(31, 27, 20, .08);
}
.admin-users-summary {
  display: grid;
  grid-template-columns: 150px 150px minmax(240px, 1fr);
  align-items: center;
  gap: 12px;
  padding: 20px 22px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(135deg, rgba(197,157,95,.12), rgba(124,92,255,.07));
}
.admin-users-summary > div { display: grid; gap: 3px; }
.admin-users-summary span,
.admin-users-summary p { color: var(--muted); font-size: 12px; }
.admin-users-summary strong { color: var(--text); font-size: 24px; }
.admin-users-summary p {
  justify-self: end;
  margin: 0;
  max-width: 370px;
  line-height: 1.55;
  text-align: right;
}
.admin-users-table th,
.admin-users-table td { padding: 16px 14px; }
.admin-users-table tbody tr { transition: background .18s ease, transform .18s ease; }
.admin-users-table tbody tr:hover { background: color-mix(in srgb, var(--surface-soft) 74%, transparent); }
.admin-user-identity,
.admin-restaurant-access { display: flex; align-items: center; gap: 10px; }
.admin-user-identity > span:last-child,
.admin-restaurant-access { display: grid; gap: 3px; }
.admin-user-identity small,
.admin-restaurant-access small,
.admin-last-login { color: var(--muted); font-size: 12px; }
.admin-user-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, #7c5cff, #c59d5f);
  box-shadow: 0 8px 18px rgba(124,92,255,.2);
  font-weight: 800;
}
.admin-role-pill {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid color-mix(in srgb, #7c5cff 24%, var(--border));
  border-radius: 999px;
  color: #5c3fd6;
  background: rgba(124,92,255,.08);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.admin-role-pill--super_admin {
  color: #8b5a11;
  border-color: rgba(197,157,95,.34);
  background: rgba(197,157,95,.12);
}
.admin-mail-button:disabled { cursor: not-allowed; opacity: .48; }
.admin-password-mail { display: grid; gap: 16px; }
.admin-password-mail-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 17px;
  color: #fff;
  background: linear-gradient(135deg, #7c5cff, #c59d5f);
  box-shadow: 0 12px 28px rgba(124,92,255,.22);
  font-size: 24px;
}
.admin-password-mail h3 { margin: 8px 0 4px; }
.admin-password-mail label {
  display: grid;
  gap: 7px;
  color: var(--text);
  font-size: 12px;
  font-weight: 800;
}
.admin-password-mail input,
.admin-password-mail textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: var(--text);
  background: var(--surface-soft);
}

/* homepage-footer-compact-20260729 */
.landing-page.home-layout .home-footer { padding: 22px 0 14px; }
.landing-page.home-layout .home-footer-grid {
  position: relative;
  gap: clamp(18px, 3vw, 36px);
  padding: 16px clamp(20px, 3vw, 30px);
}
.landing-page.home-layout .home-footer-grid::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: linear-gradient(90deg, transparent, #c5a059, #dbad52, #c5a059, transparent);
  opacity: .65;
}
.landing-page.home-layout .home-footer .home-logo { margin-bottom: 8px; }
.landing-page.home-layout .home-footer-tag { line-height: 1.5; font-size: 13px; }
.landing-page.home-layout .home-footer-grid strong { margin-bottom: 4px; }
.landing-page.home-layout .home-footer-grid a:not(.home-logo) { min-height: 27px; padding-block: 3px; font-size: 13px; }
.landing-page.home-layout .home-footer-bottom { padding: 10px clamp(20px, 3vw, 30px); }
.home-footer-link-label { display: inline-flex; align-items: center; gap: 7px; }
.home-footer-link-icon { font-size: 13px; opacity: .85; }

/* Tek satırlık premium footer (2026-07-30) — logo, iletişim ve telif/legal aynı satırda. */
.landing-page.home-layout .home-footer-line { padding: 22px 0; }
.landing-page.home-layout .home-footer-line-row {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: nowrap;
  padding: 14px clamp(20px, 3vw, 30px);
  border-radius: 999px;
  background: var(--home-surface);
  border: 1px solid var(--home-border);
  box-shadow: 0 14px 36px rgba(0,0,0,.05);
}
.landing-page.home-layout .home-footer-line-row::before {
  content: "";
  position: absolute;
  left: 24px; right: 24px; top: 0;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: linear-gradient(90deg, transparent, #c5a059, #dbad52, #c5a059, transparent);
  opacity: .55;
}
.landing-page.home-layout .home-footer-line-row .home-logo { margin: 0; flex: none; }
.landing-page.home-layout .home-footer-contact {
  display: flex; align-items: center; gap: 22px; flex: 1; justify-content: center; min-width: 0;
}
.landing-page.home-layout .home-footer-contact a {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--home-muted); text-decoration: none; font-size: 13px; white-space: nowrap;
  transition: color .15s ease;
}
.landing-page.home-layout .home-footer-contact a span { font-size: 13px; opacity: .85; }
.landing-page.home-layout .home-footer-contact a:hover { color: var(--home-gold-dark); }
.landing-page.home-layout .home-footer-legal-line {
  display: flex; align-items: center; gap: 16px; flex: none;
  font-size: 12px; color: var(--home-muted); white-space: nowrap;
}
.landing-page.home-layout .home-footer-legal-line a { color: var(--home-muted); text-decoration: none; }
.landing-page.home-layout .home-footer-legal-line a:hover { color: var(--home-gold-dark); }
html.home-theme-dark .landing-page.home-layout .home-footer-line-row {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.09);
}
@media (max-width: 900px) {
  .landing-page.home-layout .home-footer-line-row {
    flex-wrap: wrap; justify-content: center; text-align: center; border-radius: 24px;
  }
  .landing-page.home-layout .home-footer-line-row::before { left: 20px; right: 20px; }
  .landing-page.home-layout .home-footer-contact { justify-content: center; flex-wrap: wrap; gap: 14px; }
  .landing-page.home-layout .home-footer-legal-line { justify-content: center; }
}
@media (min-width: 621px) {
  .landing-page.home-layout .home-footer-grid > div:nth-child(2) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    column-gap: 18px;
  }
  .landing-page.home-layout .home-footer-grid > div:nth-child(2) > strong {
    grid-column: 1 / -1;
  }
}
@media (max-width: 768px) {
  .admin-users-summary { grid-template-columns: 1fr 1fr; padding: 16px; }
  .admin-users-summary p {
    grid-column: 1 / -1;
    justify-self: start;
    text-align: left;
  }
  .admin-users-table tbody tr { border-radius: 16px; }
}
@media (max-width: 620px) {
  .landing-page.home-layout .home-footer { padding-top: 28px; }
  .landing-page.home-layout .home-footer-grid { gap: 20px; padding: 22px 18px; }
  .landing-page.home-layout .home-footer-bottom { padding: 14px 18px; }
}
/* admin-top-accent-line-fix-20260729
   Dekoratif üst bar çizgisinin konum referansı dışına taşıp içerikten geçmesini engeller. */
.panel-app-admin .panel-top::after {
  content: none !important;
  display: none !important;
}

/* admin-catalog-premium-20260730
   AI işlem ve ek modül kataloglarını işlevlerine dokunmadan okunabilir kart tablolara taşır. */
#tab-ai-operations .panel-section-card,
#tab-modules .panel-section-card {
  position: relative;
  overflow: hidden;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--primary) 22%, var(--border));
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--primary) 10%, transparent) 0, transparent 34%),
    var(--surface-strong);
  box-shadow: 0 20px 52px rgba(30, 24, 16, .10);
}
#tab-ai-operations .panel-section-card::before,
#tab-modules .panel-section-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, #7c5cff, #4f9cf9 48%, var(--primary));
}
#tab-ai-operations .menu-manager-card-head,
#tab-modules .menu-manager-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 24px 18px;
  border-bottom: 1px solid var(--border);
  background: color-mix(in srgb, var(--surface-strong) 92%, var(--primary) 8%);
}
#tab-ai-operations .menu-manager-card-head h3,
#tab-modules .menu-manager-card-head h3 {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0;
  font-size: clamp(19px, 2vw, 24px);
  letter-spacing: -.025em;
}
#tab-ai-operations .menu-manager-card-head h3::before,
#tab-modules .menu-manager-card-head h3::before {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 13px;
  color: #fff;
  font-size: 16px;
  box-shadow: 0 9px 22px rgba(124, 92, 255, .22);
}
#tab-ai-operations .menu-manager-card-head h3::before {
  content: "✦";
  background: linear-gradient(135deg, #7c5cff, #4f9cf9);
}
#tab-modules .menu-manager-card-head h3::before {
  content: "◈";
  background: linear-gradient(135deg, var(--primary), #e4b85f);
}
#tab-modules #admin-module-add {
  min-height: 44px;
  padding-inline: 18px;
  border-radius: 14px;
  box-shadow: 0 10px 24px var(--primary-glow);
}
#tab-ai-operations .admin-table-wrap,
#tab-modules .admin-table-wrap {
  padding: 8px 18px 20px;
}
#tab-ai-operations .admin-table,
#tab-modules .admin-table {
  min-width: 900px;
  border-collapse: separate;
  border-spacing: 0 10px;
}
#tab-ai-operations .admin-table thead th,
#tab-modules .admin-table thead th {
  padding: 12px;
  border: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .09em;
}
#tab-ai-operations .admin-table tbody tr,
#tab-modules .admin-table tbody tr {
  background: var(--surface-strong);
  box-shadow: 0 8px 24px rgba(35, 27, 16, .055);
  transition: transform .18s ease, box-shadow .18s ease;
}
#tab-ai-operations .admin-table tbody tr:hover,
#tab-modules .admin-table tbody tr:hover {
  transform: translateY(-1px);
  box-shadow: 0 13px 30px rgba(35, 27, 16, .10);
}
#tab-ai-operations .admin-table tbody td,
#tab-modules .admin-table tbody td {
  padding: 15px 12px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
}
#tab-ai-operations .admin-table tbody td:first-child,
#tab-modules .admin-table tbody td:first-child {
  min-width: 215px;
  padding-left: 16px;
  border-left: 1px solid var(--border);
  border-radius: 16px 0 0 16px;
}
#tab-ai-operations .admin-table tbody td:last-child,
#tab-modules .admin-table tbody td:last-child {
  padding-right: 14px;
  border-right: 1px solid var(--border);
  border-radius: 0 16px 16px 0;
}
#tab-ai-operations .admin-table td strong,
#tab-modules .admin-table td strong {
  color: var(--text);
  font-size: 14px;
  line-height: 1.35;
}
#tab-ai-operations .admin-table td .muted,
#tab-modules .admin-table td .muted {
  display: inline-block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
#tab-modules .admin-table td[data-label="Modül"] .muted {
  padding: 2px 7px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--surface-strong) 88%, var(--primary) 12%);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
#tab-ai-operations .admin-inline-input {
  width: 76px;
  min-height: 40px;
  border: 1px solid color-mix(in srgb, var(--primary) 25%, var(--border));
  border-radius: 12px;
  background: var(--surface-strong);
  color: var(--text);
  font-weight: 700;
  text-align: center;
}
#tab-ai-operations .admin-inline-input:focus {
  outline: 3px solid color-mix(in srgb, #7c5cff 20%, transparent);
  border-color: #7c5cff;
}
#tab-ai-operations .admin-inline-toggle {
  width: max-content;
  min-height: 36px;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb, var(--success) 28%, var(--border));
  border-radius: 999px;
  background: color-mix(in srgb, var(--success) 9%, var(--surface-strong));
  font-weight: 700;
}
#tab-ai-operations .admin-inline-toggle input {
  width: 17px;
  height: 17px;
  accent-color: var(--success);
}
#tab-ai-operations .admin-actions,
#tab-modules .admin-actions {
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 8px;
}
#tab-ai-operations .admin-table .btn,
#tab-modules .admin-table .btn {
  min-height: 40px;
  padding: 9px 13px;
  border-radius: 12px;
  white-space: nowrap;
}
#tab-ai-operations [data-op-save],
#tab-modules [data-module-edit] {
  border-color: color-mix(in srgb, #7c5cff 30%, var(--border));
  background: color-mix(in srgb, #7c5cff 9%, var(--surface-strong));
  color: color-mix(in srgb, #7c5cff 78%, var(--text));
}
#tab-ai-operations [data-op-recent] {
  border-color: color-mix(in srgb, #4f9cf9 28%, var(--border));
  background: color-mix(in srgb, #4f9cf9 8%, var(--surface-strong));
}
#tab-modules [data-module-delete] {
  border-color: color-mix(in srgb, var(--danger) 28%, var(--border));
  background: color-mix(in srgb, var(--danger) 7%, var(--surface-strong));
  color: color-mix(in srgb, var(--danger) 82%, var(--text));
}
#tab-ai-operations .admin-table .btn:focus-visible,
#tab-modules .admin-table .btn:focus-visible,
#tab-modules #admin-module-add:focus-visible {
  outline: 3px solid color-mix(in srgb, #7c5cff 28%, transparent);
  outline-offset: 2px;
}
#tab-ai-operations .admin-table .btn:hover,
#tab-modules .admin-table .btn:hover {
  transform: translateY(-1px);
}
html.panel-theme-dark #tab-ai-operations .panel-section-card,
html.panel-theme-dark #tab-modules .panel-section-card {
  background:
    radial-gradient(circle at 100% 0, rgba(124, 92, 255, .14), transparent 34%),
    var(--surface-strong);
  box-shadow: 0 20px 55px rgba(0, 0, 0, .30);
}
html.panel-theme-dark #tab-ai-operations .admin-table tbody tr,
html.panel-theme-dark #tab-modules .admin-table tbody tr {
  background: #17181c;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
}
html.panel-theme-dark #tab-ai-operations .menu-manager-card-head,
html.panel-theme-dark #tab-modules .menu-manager-card-head {
  background: linear-gradient(135deg, #17181c, #1c1d24);
}
html.panel-theme-dark #tab-ai-operations .menu-manager-card-head h3,
html.panel-theme-dark #tab-modules .menu-manager-card-head h3,
html.panel-theme-dark #tab-ai-operations .admin-table td strong,
html.panel-theme-dark #tab-modules .admin-table td strong {
  color: #f7f3ec;
}
html.panel-theme-dark #tab-ai-operations .admin-table tbody td,
html.panel-theme-dark #tab-modules .admin-table tbody td {
  border-color: rgba(255, 255, 255, .10);
  color: #ddd7cd;
}
html.panel-theme-dark #tab-ai-operations .admin-table td .muted,
html.panel-theme-dark #tab-modules .admin-table td .muted,
html.panel-theme-dark #tab-ai-operations .admin-table thead th,
html.panel-theme-dark #tab-modules .admin-table thead th {
  color: #aaa49a;
}
html.panel-theme-dark #tab-modules .admin-table td[data-label="Modül"] .muted,
html.panel-theme-dark #tab-ai-operations .admin-inline-input {
  border-color: rgba(255, 255, 255, .12);
  background: #222329;
  color: #f7f3ec;
}
html.panel-theme-dark #tab-ai-operations [data-op-save],
html.panel-theme-dark #tab-modules [data-module-edit] {
  border-color: rgba(153, 124, 255, .38);
  background: rgba(124, 92, 255, .17);
  color: #cfc1ff;
}
html.panel-theme-dark #tab-ai-operations [data-op-recent] {
  border-color: rgba(79, 156, 249, .36);
  background: rgba(79, 156, 249, .15);
  color: #b9d8ff;
}
html.panel-theme-dark #tab-modules [data-module-delete] {
  border-color: rgba(255, 106, 106, .34);
  background: rgba(255, 92, 92, .14);
  color: #ffb6b6;
}

@media (max-width: 900px) {
  #tab-ai-operations .panel-section-card,
  #tab-modules .panel-section-card {
    border-radius: 20px;
  }
  #tab-ai-operations .menu-manager-card-head,
  #tab-modules .menu-manager-card-head {
    padding: 19px 18px 15px;
  }
  #tab-ai-operations .admin-table-wrap,
  #tab-modules .admin-table-wrap {
    overflow: visible;
    padding: 6px 14px 14px;
  }
  #tab-ai-operations .responsive-table,
  #tab-modules .responsive-table {
    min-width: 0;
    border-spacing: 0;
  }
  #tab-ai-operations .responsive-table tbody tr,
  #tab-modules .responsive-table tbody tr {
    margin: 12px 0;
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 17px;
    background: var(--surface-strong);
  }
  #tab-ai-operations .responsive-table tbody td,
  #tab-modules .responsive-table tbody td {
    padding: 8px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }
  #tab-ai-operations .responsive-table tbody td:first-child,
  #tab-modules .responsive-table tbody td:first-child {
    min-width: 0;
    padding-bottom: 13px !important;
    border-bottom: 1px solid var(--border) !important;
    text-align: left;
  }
  #tab-ai-operations .responsive-table tbody td:first-child::before,
  #tab-modules .responsive-table tbody td:first-child::before,
  #tab-ai-operations .responsive-table tbody td[data-label=""]::before,
  #tab-modules .responsive-table tbody td[data-label=""]::before {
    display: none;
  }
  #tab-ai-operations .responsive-table tbody td[data-label=""],
  #tab-modules .responsive-table tbody td[data-label=""] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 5px;
    padding-top: 13px !important;
    border-top: 1px solid var(--border) !important;
  }
  #tab-ai-operations .responsive-table tbody td[data-label=""] .btn,
  #tab-modules .responsive-table tbody td[data-label=""] .btn {
    width: 100%;
  }
  #tab-ai-operations .admin-actions,
  #tab-modules .admin-actions {
    display: contents;
  }
}

@media (max-width: 540px) {
  #tab-ai-operations .menu-manager-card-head,
  #tab-modules .menu-manager-card-head {
    align-items: stretch;
    flex-direction: column;
  }
  #tab-modules #admin-module-add {
    width: 100%;
  }
  #tab-ai-operations .admin-table-wrap,
  #tab-modules .admin-table-wrap {
    padding-inline: 10px;
  }
  #tab-ai-operations .responsive-table tbody tr,
  #tab-modules .responsive-table tbody tr {
    padding: 13px;
  }
}

/* ==========================================================================
   Dokunma etkilesimi ve erisilebilirlik eki — 2026-08-05
   Yalniz ekleme yapar; ustteki hicbir kural degistirilmemistir.
   Geri alma: bu blogu (bu yorumdan dosya sonuna kadar) sil.
   ========================================================================== */

/* 1. Kategori kartina basma geri bildirimi.
      QR menu birincil olarak telefonda acilir; basma aninda tepki sart. */
.menu-dark-cat-card:active {
  transform: scale(.97);
  transition: transform 100ms ease-out;
}

/* 2. Dokunmatik cihazda yapiskan hover'i etkisizlestir.
      Telefonda :hover, dokunustan sonra uzerinde kalir ve kart
      surekli "kaldirilmis" gorunur. Fareli cihazlar etkilenmez. */
@media (hover: none) {
  .menu-dark-cat-card:hover {
    background: var(--dm-card);
    transform: none;
    box-shadow: 0 12px 32px rgba(0, 0, 0, .28);
  }
  /* Secili kategori vurgusu korunur. */
  .menu-dark-cat-card.active {
    background: var(--dm-card-hover);
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .35);
  }
}

/* 3. Hareket azaltma tercihi.
      Isletim sisteminde "hareketi azalt" acik olan kullanicilar icin
      animasyon ve gecisleri etkisiz birakir. Gorunurluk degismez. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 4. Salt okunur menü modu — sipariş/sepet arayüzü tamamen gizlenir. */
body.menu-read-only #cart-bar,
body.menu-read-only .menu-item-actions,
body.menu-read-only #item-modal-qty,
body.menu-read-only #item-modal-add,
body.menu-read-only #order-form-wrap,
body.menu-read-only #order-whatsapp-cta,
body.menu-read-only #nav-cart-badge {
  display: none !important;
}

.menu-read-only-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
  font-size: 10px;
  line-height: 1;
  opacity: .85;
  vertical-align: middle;
}

/* 5. Destek talebi butonu ve diyaloğu. */
.panel-app-restaurant .panel-support-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, .35);
  background: rgba(238, 242, 255, .95);
  color: #4338ca;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.panel-app-restaurant .panel-support-toggle:hover {
  border-color: rgba(99, 102, 241, .55);
  transform: translateY(-1px);
}

.support-dialog {
  border: none;
  border-radius: 20px;
  padding: 0;
  max-width: 480px;
  width: calc(100% - 32px);
  box-shadow: 0 32px 80px rgba(0, 0, 0, .25);
}
.support-dialog::backdrop { background: rgba(0, 0, 0, .5); }
.support-dialog-body { padding: 22px; max-height: 82vh; overflow-y: auto; }
.support-dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.support-dialog-head h3 { font-size: 16px; margin: 0; flex: 1; }

.guide-dialog {
  border: none;
  border-radius: 22px;
  padding: 0;
  max-width: 660px;
  width: calc(100% - 32px);
  box-shadow: 0 32px 80px rgba(0, 0, 0, .28);
  overflow: hidden;
}
.guide-dialog::backdrop { background: rgba(10, 8, 20, .55); backdrop-filter: blur(2px); }
.guide-dialog-body {
  max-height: 86vh;
  overflow-y: auto;
  /* Kaydırma çalışır, yalnız görünür çubuk gizlenir (table-order-dialog-body ile
     aynı, kanıtlanmış desen). */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.guide-dialog-body::-webkit-scrollbar { display: none; width: 0; height: 0; }

.guide-hero {
  position: relative;
  padding: 30px 26px 26px;
  background: linear-gradient(135deg, #1a1b26 0%, #2c2444 45%, #1e1a2e 100%);
  color: #f8fafc;
}
.guide-hero-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  border: none;
  font-size: 16px;
  cursor: pointer;
  transition: background .15s ease, transform .15s ease;
}
.guide-hero-close:hover { background: rgba(255, 255, 255, .22); transform: scale(1.06); }
.guide-hero-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(124, 92, 255, .4), rgba(124, 92, 255, .15));
  display: grid;
  place-items: center;
  font-size: 26px;
  margin-bottom: 14px;
  box-shadow: 0 8px 20px rgba(124, 92, 255, .25);
}
.guide-hero h3 { margin: 0 0 6px; font-size: 21px; font-weight: 800; letter-spacing: -.01em; }
.guide-hero p { margin: 0; font-size: 13.5px; line-height: 1.55; color: rgba(248, 250, 252, .72); max-width: 440px; }
.guide-hero p strong { color: #fff; }

.guide-grid { padding: 18px; display: grid; gap: 12px; }
.guide-card {
  display: flex;
  gap: 14px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, .06);
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  opacity: 0;
  animation: panel-tab-in .4s ease both;
  animation-delay: calc(var(--sec-i, 0) * .045s);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.guide-card:hover { transform: translateY(-2px); box-shadow: 0 14px 32px rgba(15, 23, 42, .08); border-color: rgba(15, 23, 42, .1); }
.guide-card-icon { flex: none; width: 42px; height: 42px; border-radius: 13px; display: grid; place-items: center; font-size: 19px; }
.guide-card-body h4 { margin: 0 0 4px; font-size: 14.5px; font-weight: 700; }
.guide-card-body p { margin: 0; font-size: 13px; line-height: 1.55; color: var(--muted, #555); }

.guide-card--violet .guide-card-icon { background: linear-gradient(135deg, rgba(124, 92, 255, .2), rgba(124, 92, 255, .08)); color: #6d28d9; }
.guide-card--orange .guide-card-icon { background: linear-gradient(135deg, rgba(255, 144, 55, .22), rgba(255, 144, 55, .08)); color: #c2410c; }
.guide-card--blue .guide-card-icon { background: linear-gradient(135deg, rgba(59, 130, 246, .2), rgba(59, 130, 246, .08)); color: #1d4ed8; }
.guide-card--pink .guide-card-icon { background: linear-gradient(135deg, rgba(236, 72, 153, .2), rgba(236, 72, 153, .08)); color: #be185d; }
.guide-card--teal .guide-card-icon { background: linear-gradient(135deg, rgba(20, 184, 166, .2), rgba(20, 184, 166, .08)); color: #0f766e; }
.guide-card--green .guide-card-icon { background: linear-gradient(135deg, rgba(34, 197, 94, .2), rgba(34, 197, 94, .08)); color: #15803d; }
.guide-card--amber .guide-card-icon { background: linear-gradient(135deg, rgba(245, 158, 11, .22), rgba(245, 158, 11, .08)); color: #b45309; }

html.panel-theme-dark .guide-card { background: rgba(255, 255, 255, .035); border-color: rgba(255, 255, 255, .08); }
html.panel-theme-dark .guide-card:hover { border-color: rgba(255, 255, 255, .16); box-shadow: 0 14px 32px rgba(0, 0, 0, .3); }
html.panel-theme-dark .guide-card-body p { color: rgba(226, 232, 240, .65); }
.table-order-dialog-back {
  border: none;
  background: transparent;
  font-size: 13px;
  cursor: pointer;
  color: #5c5c5c;
  padding: 2px 4px;
}
.table-order-dialog-back:hover { color: #1a1a1a; }
.support-ticket-list { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.support-ticket-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #faf8f5;
  cursor: pointer;
  text-align: left;
  font: inherit;
}
.support-ticket-row:hover { border-color: rgba(99, 102, 241, .35); }
.support-ticket-row-subject { font-size: 13px; font-weight: 600; }
.support-ticket-row-meta { display: flex; align-items: center; gap: 8px; font-size: 11px; }
.support-ticket-status {
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
}
.support-ticket-status.is-open { background: rgba(240, 253, 244, .95); color: #166534; }
.support-ticket-status.is-in_progress { background: rgba(255, 251, 235, .95); color: #92400e; }
.support-ticket-status.is-closed { background: #f1f5f9; color: #475569; }
.support-thread { display: flex; flex-direction: column; gap: 10px; margin: 14px 0; max-height: 45vh; overflow-y: auto; }
.support-msg { padding: 10px 12px; border-radius: 12px; background: #faf8f5; font-size: 13px; }
.support-msg--admin { background: rgba(238, 242, 255, .95); }
.support-msg-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 4px; font-size: 11px; }
.support-msg p { margin: 0; white-space: pre-wrap; }
.support-form-msg:empty { display: none; }

.admin-support-tickets-toolbar { margin: 14px 0; }
.admin-support-tickets-table { display: flex; flex-direction: column; gap: 8px; }
.admin-support-ticket-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(26, 26, 26, .08);
  background: #faf8f5;
  cursor: pointer;
  text-align: left;
  font: inherit;
}
.admin-support-ticket-row:hover { border-color: rgba(99, 102, 241, .35); }
.admin-support-ticket-row-main { display: flex; flex-direction: column; gap: 3px; font-size: 13px; min-width: 0; }
.admin-support-ticket-row-main .muted { font-size: 11px; }

/* 6. Siparişler sekmesi — premium sipariş kartları (masa kartlarıyla aynı görsel dil). */
.orders-stats { display: flex; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.orders-stats .tables-stat { flex: 1; min-width: 140px; }
.orders-stat--pending strong { color: #b45309; }
.orders-stat--active strong { color: #6d28d9; }
.orders-stat--revenue strong { color: #166534; }

.orders-list-premium {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 18px;
}
.order-card-premium {
  position: relative;
  padding: 18px 20px 20px;
  border-radius: 20px;
  background: linear-gradient(180deg, #fff 0%, #fdfcfa 100%);
  border: 1px solid rgba(26, 26, 26, .07);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .03);
  transition: transform .22s cubic-bezier(.2, .8, .2, 1), box-shadow .22s ease, border-color .22s ease;
  overflow: hidden;
}
.order-card-premium::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: #d1d5db;
}
.order-card-premium.status-pending::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); }
.order-card-premium.status-confirmed::before { background: linear-gradient(90deg, #3b82f6, #60a5fa); }
.order-card-premium.status-preparing::before { background: linear-gradient(90deg, #a855f7, #c084fc); }
.order-card-premium.status-ready::before { background: linear-gradient(90deg, #22c55e, #4ade80); }
.order-card-premium.status-delivered::before { background: linear-gradient(90deg, #16a34a, #4ade80); opacity: .6; }
.order-card-premium.status-cancelled::before { background: linear-gradient(90deg, #ef4444, #f87171); opacity: .6; }
.order-card-premium:hover { transform: translateY(-3px); border-color: rgba(197, 160, 89, .4); box-shadow: 0 22px 46px rgba(0, 0, 0, .1), 0 6px 16px rgba(0, 0, 0, .05); }
.order-card-premium[hidden] { display: none; }

.order-card-premium-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.order-card-premium-title { display: flex; flex-direction: column; gap: 3px; }
.order-card-premium-title strong { font-size: 16px; font-weight: 800; letter-spacing: -.01em; color: #1f1f1f; }
.order-card-premium-time { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: #b3a68c; }
.order-card-premium-meta { display: flex; flex-wrap: wrap; gap: 7px; font-size: 12px; color: #4a4a4a; margin-bottom: 12px; }
.order-card-premium-meta span {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(26, 26, 26, .045);
  font-weight: 700;
}
.order-card-premium-meta .order-currency-chip { background: rgba(197, 160, 89, .14); color: #8a6a2e; }
.order-card-premium .order-items-list {
  list-style: none;
  margin: 0 0 12px;
  padding: 10px 13px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  color: #3a3a3a;
  max-height: 120px;
  overflow-y: auto;
  background: linear-gradient(135deg, #fbf9f5, #f6f2ea);
  border: 1px solid rgba(26, 26, 26, .05);
  border-radius: 12px;
}
.order-card-note {
  font-size: 12px;
  margin: 0 0 12px;
  padding: 9px 12px;
  border-radius: 10px;
  background: rgba(197, 160, 89, .08);
  border: 1px solid rgba(197, 160, 89, .22);
  color: #7a5a1e;
}
.order-card-premium-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.order-card-premium-actions .order-status-select { flex: 1 1 140px; min-width: 130px; }
/* Kart alt satırı: Adisyon Yazdır | Hesabı Kapat yan yana, eşit genişlikte.
   Açık olmayan (teslim/iptal) siparişte kapatma butonu basılmaz, adisyon tam genişlik alır. */
.order-card-premium-footer { display: flex; gap: 8px; flex: 1 1 100%; }
.order-card-premium-footer .btn { flex: 1; min-width: 0; }
.order-card-premium-actions .table-order-pay-row { flex: 1 1 100%; }

/* Kart butonları: panel-v3 temasının !important mor .btn-primary'sini ezmek
   için #orders-list ID özgüllüğü kullanılır (bkz. #table-order-dialog ile
   aynı gerekçe). Sil kırmızı vurgulu, Düzenle/Yazdır nötr, Adisyon/Hesabı
   Kapat altın dolgulu — tutarlı premium dil. */
#orders-list .order-card-premium-actions .btn-sm {
  height: 40px;
  padding: 0 14px;
  font-size: 12.5px;
  font-weight: 700;
  border-radius: 10px;
  justify-content: center;
  white-space: nowrap;
}
#orders-list .order-delete-btn {
  height: auto;
  padding: 5px 11px;
  background: rgba(239, 68, 68, .08) !important;
  border: 1px solid rgba(239, 68, 68, .22);
  color: #b91c1c !important;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
}
#orders-list .order-delete-btn:hover { background: rgba(239, 68, 68, .16) !important; border-color: rgba(239, 68, 68, .4); }
/* Mutfak Fişi artık Adisyon Yazdır ile aynı 2 sütunlu satırda, tam etiketli
   ve eşit genişlikte — eski ikon-only kompakt kural (min-width:36px,
   padding:6px 10px, bkz. .panel-app-restaurant .order-print-btn) burada
   sıfırlanıp .order-card-premium-footer .btn { flex:1 } genel kuralına bırakılır. */
#orders-list .order-print-btn { min-width: 0; }
/* Tüm 4 aksiyon butonu (Mutfak Fişi / Adisyon Yazdır / Düzenle / Hesabı
   Kapat) tek tip renksiz stil — Masalar diyaloğuyla aynı tutarlılık. */
#orders-list .order-edit-btn,
#orders-list .order-print-btn,
#orders-list .order-adisyon-btn,
#orders-list .order-close-btn {
  background: #fff !important;
  border: 1px solid rgba(26, 26, 26, .12);
  color: #3a3a3a !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .04);
}
#orders-list .order-edit-btn:hover,
#orders-list .order-print-btn:hover,
#orders-list .order-adisyon-btn:hover,
#orders-list .order-close-btn:hover {
  border-color: rgba(197, 160, 89, .5);
  background: linear-gradient(135deg, #fdf8ee, #faf1dc) !important;
  color: #7a5a1e !important;
  transform: translateY(-1px);
}

/* 7. Garson operasyonları — boş masaya sipariş girişi, hesap kapatma, masa taşıma. */
.table-new-order-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: calc(100% - 36px);
  margin: 0 18px;
  padding: 18px 14px;
  border: 1px dashed rgba(34, 197, 94, .45);
  border-radius: 14px;
  background: rgba(240, 253, 244, .6);
  color: #166534;
  cursor: pointer;
  font: inherit;
  text-align: center;
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.table-new-order-btn:hover {
  background: rgba(220, 252, 231, .9);
  border-color: rgba(34, 197, 94, .75);
  transform: translateY(-1px);
}
.table-new-order-btn-icon { font-size: 20px; line-height: 1; }
.table-new-order-btn-title { font-size: 13px; font-weight: 700; }
.table-new-order-btn-cta { font-size: 11.5px; opacity: .8; }

.table-neworder-dialog { max-width: 560px; }
.order-picker-search-row { margin-bottom: 12px; }
.order-picker-search {
  width: 100%; height: 46px; padding: 0 16px; font-size: 15px; border-radius: 12px;
}
.order-picker { max-height: 34vh; overflow-y: auto; margin-bottom: 14px; }
.order-picker-cat { margin-bottom: 12px; }
.order-picker-cat[hidden] { display: none; }
.order-picker-cat-title { margin: 0 0 8px; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: #9a7a3c; }
.order-picker-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.order-picker-item {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  cursor: pointer;
  text-align: left;
  font: inherit;
  transition: border-color .15s ease, background .15s ease;
}
.order-picker-item:hover { border-color: rgba(197, 160, 89, .5); background: rgba(197, 160, 89, .07); }
.order-picker-item[hidden] { display: none; }
.order-picker-item-name { font-size: 12.5px; font-weight: 600; display: flex; flex-direction: column; gap: 2px; }
.order-picker-item-price { font-size: 12px; color: #9a7a3c; }
.order-picker-item-cat { font-size: 10.5px; font-weight: 500; color: #9a9a9a; text-transform: uppercase; letter-spacing: .03em; }

/* Kademeli ürün seçimi: önce kategori kartları, seçilince o kategorinin ürünleri. */
.order-picker-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; }
.order-picker-cat-tile {
  display: flex; flex-direction: column; gap: 4px; align-items: flex-start;
  padding: 16px 14px; border-radius: 14px; border: 1px solid rgba(26, 26, 26, .1);
  background: linear-gradient(160deg, #fff, #faf7f0); cursor: pointer; text-align: left; font: inherit;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.order-picker-cat-tile:hover { border-color: rgba(197, 160, 89, .55); background: linear-gradient(160deg, #fff, #f6ecd8); transform: translateY(-1px); }
.order-picker-cat-tile-name { font-size: 13.5px; font-weight: 700; color: #2a2a2a; }
.order-picker-cat-tile-count { font-size: 11px; color: #9a7a3c; }
.order-picker-back {
  display: inline-flex; align-items: center; gap: 4px; margin-bottom: 10px;
  padding: 6px 10px; border-radius: 8px; border: none; background: transparent;
  color: #9a7a3c; font-size: 12.5px; font-weight: 600; cursor: pointer; font: inherit;
}
.order-picker-back:hover { background: rgba(197, 160, 89, .1); }
.neworder-cart { border-top: 1px dashed rgba(26, 26, 26, .12); padding-top: 12px; }
.neworder-cart-title { margin: 0 0 8px; font-size: 13px; }
.neworder-note {
  width: 100%;
  min-height: 64px;
  margin-bottom: 8px;
  padding: 10px 12px;
  font: inherit;
  line-height: 1.4;
  resize: vertical;
}

.table-order-note-row { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.table-order-note {
  width: 100%;
  min-height: 56px;
  padding: 10px 12px;
  font: inherit;
  line-height: 1.4;
  resize: vertical;
  border-radius: 10px;
  border: 1px solid rgba(26, 26, 26, .12);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.table-order-note:focus { border-color: rgba(197, 160, 89, .55); box-shadow: 0 0 0 3px rgba(197, 160, 89, .15); outline: none; }
.table-order-note-row .btn { align-self: flex-end; }

.table-order-print-row { display: flex; gap: 10px; margin-top: 10px; }
.table-order-print-row .btn { flex: 1; }
.table-order-service-actions { display: flex; gap: 10px; margin-top: 10px; }
.table-order-service-actions .btn { flex: 1; }

/* Diyalog içi butonlar: panel temasının (panel-v3) ".btn-primary" kuralı
   !important ile mor renk zorluyor (bkz. .panel-app-restaurant.panel-v3
   .btn-primary) — burada da !important + #table-order-dialog ID özgüllüğü
   birlikte kullanılmalı, yoksa renk override'ı sessizce yenilir. */
#table-order-dialog .btn-sm {
  /* height (min-height değil): bazı emoji glyph'leri (🍳 vs 🖨) satır kutusunu
     farklı büyütüp buton yüksekliğini kaydırıyordu — sabit height ile tüm
     butonlar piksel bazında eşitlenir. */
  height: 46px;
  padding: 0 16px;
  font-size: 13.5px;
  font-weight: 700;
  border-radius: 12px;
  white-space: nowrap;
  line-height: 1;
  justify-content: center;
}
/* 2x2 buton ızgarası (Mutfak Fişi / Adisyon Yazdır / Masayı Taşı / Hesabı
   Kapat) — renksiz, tek tip nötr stil; hepsi aynı boyut ve ortalanmış
   içerikle hizalı. */
#table-order-dialog .btn-ghost,
#table-order-dialog .table-order-print-btn,
#table-order-dialog .table-order-close-btn,
#table-order-dialog .table-order-kitchen-print-btn {
  background: #fff !important;
  border: 1px solid rgba(26, 26, 26, .13);
  color: #3a3a3a !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .05);
  /* Eski .table-order-print-btn { margin-top:12px } kuralı (tek başınayken
     eklenmiş, satır içi ızgaraya geçince "Mutfak Fişi"nden 12px aşağı
     kaymasına yol açıyordu) burada sıfırlanır. */
  margin-top: 0 !important;
}
#table-order-dialog .btn-ghost:hover,
#table-order-dialog .table-order-print-btn:hover,
#table-order-dialog .table-order-close-btn:hover,
#table-order-dialog .table-order-kitchen-print-btn:hover {
  border-color: rgba(197, 160, 89, .55);
  color: #7a5a1e !important;
  background: linear-gradient(135deg, #fdf8ee, #faf1dc) !important;
  color: #7a5a1e;
  box-shadow: 0 8px 18px -10px rgba(197, 160, 89, .5);
  transform: translateY(-1px);
}
#table-order-dialog .table-order-cancel-btn {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
  border: none;
  color: #fff !important;
  box-shadow: 0 8px 22px -9px rgba(220, 38, 38, .55);
}
#table-order-dialog .table-order-cancel-btn:hover { background: linear-gradient(135deg, #b91c1c, #dc2626) !important; color: #fff !important; box-shadow: 0 10px 26px -9px rgba(220, 38, 38, .65); transform: translateY(-1px); }
.table-order-transfer-row { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.table-order-transfer-row[hidden] { display: none; }
.table-order-transfer-hint { font-size: 11.5px; margin: 0; line-height: 1.4; }
.table-order-transfer-row-controls { display: flex; gap: 8px; }
.table-order-transfer-row-controls select { flex: 1; min-width: 0; }
/* Masa diyaloğunda "Masayı Taşı" da "Hesabı Kapat" ile aynı: diyaloğu aşağı itmez,
   butonun üzerine binen sabit-konumlu bir popover kartı olarak açılır/kapanır. */
#table-order-dialog .table-order-transfer-row {
  position: absolute;
  z-index: 60;
  margin-top: 0;
  width: min(300px, calc(100% - 24px));
  padding: 14px;
  border-radius: 14px;
  background: linear-gradient(135deg, #fdfaf3, #f8f1e0);
  border: 1px solid rgba(197, 160, 89, .28);
  box-shadow: 0 24px 60px -14px rgba(0, 0, 0, .35), 0 0 0 1px rgba(197, 160, 89, .1);
}

.table-order-item-move-check { display: none; width: 18px; height: 18px; flex: none; accent-color: #c5a059; cursor: pointer; }
.table-order-items-list.is-move-selecting .table-order-item-move-check { display: block; }
.table-order-items-list.is-move-selecting .table-order-item { background: #fff8ec; }

/* Ödeme yöntemi seçimi — hesap kapatmadan önce. */
.table-order-pay-row {
  display: block;
  margin-top: 12px;
  padding: 14px;
  border-radius: 14px;
  background: linear-gradient(135deg, #fdfaf3, #f8f1e0);
  border: 1px solid rgba(197, 160, 89, .28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6);
}
.table-order-pay-row[hidden] { display: none; }
.table-order-pay-label {
  display: block;
  margin-bottom: 10px;
  font-size: 11.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #8a6a2e;
}
.table-order-pay-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; }
.table-order-pay-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 13px;
  border-radius: 11px;
  border: 1px solid rgba(26, 26, 26, .1);
  background: #fff;
  font: inherit;
  font-size: 12.5px;
  font-weight: 700;
  color: #3a3a3a;
  cursor: pointer;
  text-align: left;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .04);
  transition: border-color .15s ease, background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.table-order-pay-btn:hover:not(:disabled) { box-shadow: 0 6px 16px -8px rgba(26, 26, 26, .25); }
.table-order-pay-btn:hover:not(:disabled) { transform: translateY(-1px); }
.table-order-pay-btn:disabled { opacity: .55; cursor: default; }
.table-order-pay-btn-icon { font-size: 15px; line-height: 1; }
.table-order-pay-btn--cash:hover:not(:disabled) { border-color: rgba(34, 197, 94, .55); background: rgba(240, 253, 244, .95); }
.table-order-pay-btn--card:hover:not(:disabled) { border-color: rgba(59, 130, 246, .55); background: rgba(239, 246, 255, .95); }
.table-order-pay-btn--meal_card:hover:not(:disabled) { border-color: rgba(168, 85, 247, .55); background: rgba(250, 245, 255, .95); }
.table-order-pay-btn--foreign_currency:hover:not(:disabled) { border-color: rgba(20, 184, 166, .55); background: rgba(240, 253, 250, .95); }
.table-order-pay-btn--discount:hover:not(:disabled) { border-color: rgba(245, 158, 11, .55); background: rgba(255, 251, 235, .95); }

/* Masa diyaloğunda ödeme yöntemi satırı artık gövdeyi aşağı itmez — "Hesabı Kapat"
   butonunun üzerine binen sabit-konumlu bir popover kartı olarak açılır/kapanır
   (konumu JS'de positionPopover ile hesaplanır). Sipariş kartındaki (Gel-Al & Paket)
   satır içi (inline) davranışına dokunulmaz — bu override yalnız #table-order-dialog
   ID özgüllüğüyle sınırlı. */
#table-order-dialog .table-order-pay-row {
  position: absolute;
  z-index: 60;
  margin-top: 0;
  width: min(320px, calc(100% - 24px));
  box-shadow: 0 24px 60px -14px rgba(0, 0, 0, .35), 0 0 0 1px rgba(197, 160, 89, .18);
}

/* "🖨 Yazdır" tek butonu — Mutfak Fişi / Adisyon Yazdır seçimi için açılır menü. */
.table-order-popover {
  position: absolute;
  z-index: 60;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 6px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid rgba(26, 26, 26, .08);
  box-shadow: 0 24px 60px -14px rgba(0, 0, 0, .35), 0 0 0 1px rgba(197, 160, 89, .1);
}
.table-order-popover[hidden] { display: none; }
.table-order-popover-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: none;
  border-radius: 8px;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  color: #3a3a3a;
  cursor: pointer;
  text-align: left;
  transition: background .15s ease;
}
.table-order-popover-item:hover { background: rgba(197, 160, 89, .12); }
.table-order-popover-item:disabled { opacity: .55; cursor: default; }

/* Raporlar — ödeme kırılımı / gün sonu kartı. */
.ops-card--payments { margin-bottom: 18px; }
.ops-card--payments .ops-status-row { grid-template-columns: minmax(140px, 1.2fr) minmax(60px, 2fr) auto auto; }
.report-pay-share { font-size: 11px; white-space: nowrap; padding-left: 10px; }
/* Durum listesi ile sipariş türü listesini ayıran başlık. */
.report-breakdown-split {
  margin: 12px 0 8px;
  padding-top: 10px;
  border-top: 1px dashed rgba(26, 26, 26, .12);
}
.report-breakdown-split-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #9a7a3c;
}
.report-pay-summary {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px dashed rgba(26, 26, 26, .12);
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.report-pay-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 12.5px;
  color: #5c5c5c;
}
.report-pay-summary-row.is-total {
  font-size: 14px;
  color: #1a1a1a;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(26, 26, 26, .08);
}
.report-pay-summary-row.is-total strong { color: #166534; font-size: 16px; }
.report-pay-summary-row.is-anomaly { color: #b91c1c; font-weight: 700; }
.report-pay-summary-row.is-anomaly strong { color: #b91c1c; }

.order-pay-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 11px;
  font-weight: 700;
}

/* 9. Ürün seçenek grupları (acılı/acısız, pişirme, ekstra malzeme…). */
.item-option-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.item-option-chip {
  display: flex; flex-direction: column; gap: 2px;
  padding: 8px 12px; border-radius: 11px;
  border: 1px solid rgba(26,26,26,.12); background: #fff;
  cursor: pointer; font-size: 12.5px; font-weight: 600; position: relative;
  transition: border-color .15s ease, background .15s ease;
}
.item-option-chip input { position: absolute; opacity: 0; pointer-events: none; }
.item-option-chip small { font-size: 10.5px; font-weight: 500; color: #9a7a3c; }
.item-option-chip:hover { border-color: rgba(197,160,89,.5); }
.item-option-chip.is-on { border-color: rgba(232,75,18,.5); background: #fff2e7; color: #b83d12; }

.option-manager-dialog { max-width: 620px; }
.option-group-list { display: flex; flex-direction: column; gap: 12px; max-height: 46vh; overflow-y: auto; margin-bottom: 16px; }
.option-group-card { padding: 12px 14px; border-radius: 13px; border: 1px solid rgba(26,26,26,.1); background: #fcfaf7; }
.option-group-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.option-group-head strong { font-size: 13.5px; }
.option-group-type { font-size: 11px; color: #9a7a3c; flex: 1; }
.option-group-del { border: none; background: transparent; cursor: pointer; opacity: .55; font-size: 13px; }
.option-group-del:hover { opacity: 1; }
.option-choice-list { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 9px; }
.option-choice-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 9px; border-radius: 999px; background: #fff;
  border: 1px solid rgba(26,26,26,.1); font-size: 12px;
}
.option-choice-pill em { font-style: normal; color: #9a7a3c; font-size: 11px; }
.option-choice-pill button { border: none; background: transparent; cursor: pointer; color: #9ca3af; font-size: 14px; line-height: 1; padding: 0; }
.option-choice-pill button:hover { color: #991b1b; }
.option-choice-add { display: flex; gap: 6px; }
.option-choice-add input { flex: 1; min-width: 0; padding: 7px 10px; border-radius: 9px; border: 1px solid rgba(26,26,26,.12); font: inherit; font-size: 12.5px; }
.option-group-new { border-top: 1px dashed rgba(26,26,26,.12); padding-top: 14px; }
.option-group-new h4 { margin: 0 0 9px; font-size: 13px; }
.option-group-new-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.option-group-new-row input[type=text] { flex: 1 1 180px; min-width: 0; padding: 8px 11px; border-radius: 9px; border: 1px solid rgba(26,26,26,.12); font: inherit; font-size: 12.5px; }
.option-preset-hint { font-size: 12px; margin: 10px 0 0; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.option-preset {
  padding: 5px 10px; border-radius: 999px; cursor: pointer; font: inherit; font-size: 11.5px; font-weight: 600;
  border: 1px dashed rgba(232,75,18,.4); background: #fff; color: #b83d12;
}
.option-preset:hover:not(:disabled) { background: #fff2e7; border-style: solid; }
.option-preset:disabled { opacity: .5; cursor: default; }

/* 10. Müşteri menüsü — ürün seçenekleri (acılı/acısız, ekstra malzeme…). */
.menu-opt-groups { display: flex; flex-direction: column; gap: 14px; margin: 4px 0 16px; }
.menu-opt-group { border-radius: 14px; padding: 12px 14px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); }
.menu-opt-group.is-missing { border-color: rgba(239,68,68,.6); background: rgba(239,68,68,.08); }
.menu-opt-head { display: flex; flex-direction: column; gap: 2px; margin-bottom: 9px; }
.menu-opt-head strong { font-size: 13.5px; }
.menu-opt-hint { font-size: 11px; opacity: .7; }
.menu-opt-group.is-missing .menu-opt-hint { color: #fca5a5; opacity: 1; }
.menu-opt-choices { display: flex; flex-direction: column; gap: 7px; }
.menu-opt-choice {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 12px; border-radius: 11px; cursor: pointer;
  background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09);
  font-size: 13px; transition: border-color .15s ease, background .15s ease;
}
.menu-opt-choice input { accent-color: #ff5a1f; width: 17px; height: 17px; flex: 0 0 auto; }
.menu-opt-choice:hover { border-color: rgba(255,90,31,.4); }
.menu-opt-choice.is-on { border-color: rgba(255,90,31,.65); background: rgba(255,90,31,.12); }
.menu-opt-name { flex: 1; }
.menu-opt-delta { font-size: 12px; opacity: .85; white-space: nowrap; }
.menu-ref-cart-line-opts { display: block; font-size: 11.5px; opacity: .72; margin-top: 1px; }
.cart-line-opts { font-style: normal; opacity: .72; font-size: 11.5px; }

/* Panel (açık tema) için opsiyon seçim dialogu — müşteri menüsündeki koyu
   temaya göre tasarlanmış .menu-opt-* stillerinin panel-özel karşılığı. */
.panel-item-options-dialog #panel-opt-modal-groups { display: flex; flex-direction: column; gap: 12px; margin-bottom: 14px; max-height: 50vh; overflow-y: auto; }
.panel-item-options-dialog .menu-opt-group { background: #faf8f5; border: 1px solid rgba(26,26,26,.08); }
.panel-item-options-dialog .menu-opt-group.is-missing { border-color: rgba(220,38,38,.45); background: rgba(220,38,38,.05); }
.panel-item-options-dialog .menu-opt-head strong { color: #2a2a2a; }
.panel-item-options-dialog .menu-opt-hint { color: #8a8a8a; opacity: 1; }
.panel-item-options-dialog .menu-opt-group.is-missing .menu-opt-hint { color: #dc2626; }
.panel-item-options-dialog .menu-opt-choice { background: #fff; border-color: rgba(26,26,26,.1); color: #2a2a2a; }
.panel-item-options-dialog .menu-opt-choice input { accent-color: #c5a059; }
.panel-item-options-dialog .menu-opt-choice:hover { border-color: rgba(197,160,89,.5); }
.panel-item-options-dialog .menu-opt-choice.is-on { border-color: rgba(197,160,89,.7); background: rgba(197,160,89,.1); }
.panel-item-options-dialog .menu-opt-delta { color: #9a7a3c; }
.panel-opt-modal-msg { color: #dc2626; font-size: 12.5px; margin: -6px 0 10px; }
