/* ═══════════════════════════════════════════════════════════════
   AURORA PREMIUM THEME — v2026.11
   Loaded after style.css + admin.css. Overrides tokens & surfaces.
   Public site + admin panel share this layer.
   ═══════════════════════════════════════════════════════════════ */

:root {
  --bg: #08070a;
  --bg-card: #0f0d13;
  --bg-elev: #16131a;
  --fg: #f5edde;
  --fg-muted: #a89f92;
  --primary: #e60a3e;
  --primary-glow: rgba(230, 10, 62, 0.55);
  --primary-soft: rgba(230, 10, 62, 0.13);
  --accent: #e9c46a;
  --accent-orange: #ff8a4c;
  --gold-grad: linear-gradient(115deg, #f7dd9b 0%, #e9c46a 45%, #c2953a 100%);
  --crimson-grad: linear-gradient(120deg, #ff2055 0%, #e60a3e 55%, #a5062b 100%);
  --border: rgba(255, 255, 255, 0.08);
  --border-strong: rgba(255, 255, 255, 0.15);
  --radius: 14px;
  --font-serif: 'Fraunces', 'Playfair Display', Georgia, serif;
  --font-sans: 'Manrope', Inter, system-ui, -apple-system, Segoe UI, sans-serif;
}

/* ── Aurora ambience ── */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(900px 520px at 88% -12%, rgba(230, 10, 62, 0.09), transparent 62%),
    radial-gradient(760px 480px at -12% 32%, rgba(233, 196, 106, 0.055), transparent 60%),
    radial-gradient(1000px 600px at 50% 118%, rgba(255, 138, 76, 0.045), transparent 65%);
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0a090d; }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #3a2530, #241a20); border-radius: 8px; border: 2px solid #0a090d; }
::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #5a2033, #33202a); }
* { scrollbar-color: #3a2530 #0a090d; scrollbar-width: thin; }

::selection { background: rgba(233, 196, 106, 0.9); color: #1a1206; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 8px; }

h1, h2, h3, h4, h5, h6 { font-family: var(--font-serif); letter-spacing: 0.005em; }

/* ═════════ BUTTONS ═════════ */
.btn-primary {
  background: var(--crimson-grad);
  border-radius: 999px;
  box-shadow: 0 8px 26px -8px rgba(230, 10, 62, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.25);
}
.btn-primary:hover {
  box-shadow: 0 18px 44px -10px rgba(230, 10, 62, 0.78), 0 0 26px -6px rgba(233, 196, 106, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.3);
}
.btn-ghost, .btn-outline { border-radius: 999px; }
.btn-ghost { border-color: rgba(255, 255, 255, 0.16); }
.btn-ghost:hover { border-color: rgba(233, 196, 106, 0.55); color: var(--accent); background: rgba(233, 196, 106, 0.06); box-shadow: 0 12px 30px -12px rgba(233, 196, 106, 0.35); }
.btn-outline:hover { border-color: var(--primary); box-shadow: 0 12px 30px -10px rgba(230, 10, 62, 0.55); }

/* ═════════ NAVBAR ═════════ */
.navbar {
  background: linear-gradient(180deg, rgba(10, 8, 12, 0.8), rgba(10, 8, 12, 0.55));
  backdrop-filter: blur(26px) saturate(1.4);
  -webkit-backdrop-filter: blur(26px) saturate(1.4);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.navbar::after {
  background: linear-gradient(90deg, transparent 4%, rgba(233, 196, 106, 0.5) 32%, rgba(230, 10, 62, 0.65) 50%, rgba(233, 196, 106, 0.5) 68%, transparent 96%);
  opacity: 0.85;
}
.navbar.scrolled { background: rgba(9, 7, 11, 0.92); box-shadow: 0 18px 44px -16px rgba(0, 0, 0, 0.85); }
.nav-links {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  padding: 10px 24px;
  border-radius: 999px;
  gap: 24px;
}
.nav-links a { color: rgba(245, 237, 222, 0.78); }
.nav-links a::after { height: 2px; background: var(--gold-grad); border-radius: 2px; }
.nav-links a:hover, .nav-links a.active { color: var(--accent); }
.admin-nav-link { color: var(--accent) !important; text-shadow: 0 0 14px rgba(233, 196, 106, 0.45); }
.nav-mobile { background: rgba(10, 8, 12, 0.98); }
.nav-mobile a { letter-spacing: 0.12em; }

/* ═════════ TICKER ═════════ */
.menu-ticker-wrap {
  background: linear-gradient(90deg, rgba(230, 10, 62, 0.09), rgba(233, 196, 106, 0.07) 50%, rgba(230, 10, 62, 0.09));
  border-top: 1px solid rgba(233, 196, 106, 0.16);
  border-bottom: 1px solid rgba(230, 10, 62, 0.2);
}
.ticker-item { color: var(--accent); text-shadow: 0 0 16px rgba(233, 196, 106, 0.35); }
.ticker-sep { color: rgba(230, 10, 62, 0.6); }

/* ═════════ HERO ═════════ */
.hero-overlay-grad { background: linear-gradient(to top, var(--bg) 0%, rgba(8, 7, 10, 0.8) 42%, rgba(8, 7, 10, 0.25) 75%, transparent 100%); }
.hero-logo-wrap::before {
  content: "";
  position: absolute;
  inset: -13px;
  border-radius: 50%;
  z-index: 3;
  background: conic-gradient(from 0deg, transparent 0 38%, rgba(233, 196, 106, 0.95) 49%, rgba(230, 10, 62, 0.9) 55%, transparent 66% 100%);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2.6px), #000 calc(100% - 2px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 2.6px), #000 calc(100% - 2px));
  animation: auroraSpin 7s linear infinite;
  pointer-events: none;
}
@keyframes auroraSpin { to { transform: rotate(360deg); } }
.hero-logo { box-shadow: 0 0 0 2px rgba(233, 196, 106, 0.55), 0 0 60px rgba(230, 10, 62, 0.45); }
.hero-title { font-weight: 700; }
.hb-sub { color: var(--accent); }
.hb-sub::before, .hb-sub::after { background: linear-gradient(90deg, transparent, rgba(233, 196, 106, 0.8)); }
.hero-tagline { letter-spacing: 0.08em; }
.chip { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.hero-scroll:hover { color: var(--accent); }

/* ═════════ STATS ═════════ */
.stats-strip { background: linear-gradient(180deg, rgba(15, 13, 19, 0.85), rgba(8, 7, 10, 0.8)); }
.stat-row {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 18px;
  padding: 16px 18px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: transform 0.4s cubic-bezier(0.2, 0.7, 0.2, 1), border-color 0.4s, box-shadow 0.4s;
}
.stat-row:hover {
  transform: translateY(-4px);
  border-color: rgba(233, 196, 106, 0.35);
  box-shadow: 0 20px 44px -20px rgba(0, 0, 0, 0.8), 0 0 30px -14px rgba(230, 10, 62, 0.4);
}
.stat-icon {
  background: linear-gradient(145deg, rgba(230, 10, 62, 0.22), rgba(233, 196, 106, 0.14));
  border: 1px solid rgba(233, 196, 106, 0.28);
  color: var(--accent);
  box-shadow: 0 0 22px -8px rgba(230, 10, 62, 0.5);
}
.stat-value {
  background: var(--gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.stat-label { color: rgba(245, 237, 222, 0.55); }

/* ═════════ SECTIONS ═════════ */
.section-card { background: linear-gradient(180deg, rgba(15, 13, 19, 0.7), rgba(8, 7, 10, 0.4)); }
.section-title { font-weight: 600; }
.rule {
  width: 84px;
  height: 2px;
  background: var(--gold-grad);
  box-shadow: 0 0 18px rgba(233, 196, 106, 0.55);
  border-radius: 2px;
  position: relative;
}
.rule::before, .rule::after {
  content: "✦";
  position: absolute;
  top: 50%;
  font-size: 10px;
  color: var(--accent);
  transform: translateY(-52%);
}
.rule::before { left: -20px; }
.rule::after { right: -20px; }
.eyebrow { color: var(--accent); letter-spacing: 0.26em; }

/* ═════════ ABOUT ═════════ */
.about-img {
  border-radius: 22px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 34px 90px -32px rgba(0, 0, 0, 0.85), 0 0 70px -24px rgba(230, 10, 62, 0.3);
}
.chip-tag {
  border-radius: 999px;
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.035);
}
.chip-tag:hover { border-color: rgba(233, 196, 106, 0.45); background: rgba(233, 196, 106, 0.06); }
.chip-tag .chip-dot { background: var(--accent) !important; box-shadow: 0 0 8px var(--accent); }

/* ═════════ SIGNATURE CARDS ═════════ */
.signature-grid { gap: 20px; }
.sig-card {
  border-radius: 20px;
  box-shadow: 0 14px 36px -20px rgba(0, 0, 0, 0.7);
}
.sig-card:hover { border-color: rgba(233, 196, 106, 0.4); box-shadow: 0 28px 60px -22px rgba(0, 0, 0, 0.8), 0 0 34px -14px rgba(230, 10, 62, 0.45); }
.sig-card-tag {
  background: linear-gradient(120deg, #ff2055, #e60a3e 70%, #a5062b);
  border-radius: 999px;
  padding: 5px 13px;
  letter-spacing: 0.16em;
  box-shadow: 0 4px 16px rgba(230, 10, 62, 0.5);
  font-size: 9.5px;
}
.sig-card-text { padding: 20px; }
.sig-card-text h3 { font-weight: 600; letter-spacing: 0.02em; }
.sig-card-price .num { font-weight: 700; }
.sig-card-text p { letter-spacing: 0.015em; }

/* ═════════ GALLERY ═════════ */
.gal-cell { border-radius: 18px; }
.gal-cap { font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; }
.gal-cell:hover { border-color: rgba(233, 196, 106, 0.4); box-shadow: 0 22px 52px -20px rgba(0, 0, 0, 0.8), 0 0 30px -14px rgba(230, 10, 62, 0.4); }

/* ═════════ LIGHTBOX ═════════ */
.lightbox img { border-radius: 14px; box-shadow: 0 0 90px rgba(230, 10, 62, 0.35), 0 0 40px rgba(233, 196, 106, 0.15); }

/* ═════════ MENU PAGE ═════════ */
.menu-header {
  background:
    radial-gradient(900px 380px at 50% -18%, rgba(230, 10, 62, 0.16), transparent 62%),
    radial-gradient(600px 300px at 12% 10%, rgba(233, 196, 106, 0.06), transparent 60%),
    linear-gradient(#0a080d, #08070a);
}
.menu-header .hero-title { font-weight: 600; letter-spacing: 0.01em; }
.kicker { color: var(--accent); letter-spacing: 0.3em; }

.cat-tabs-wrap {
  background: rgba(10, 8, 12, 0.93);
  backdrop-filter: blur(20px) saturate(1.3);
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
  border-bottom: 1px solid rgba(233, 196, 106, 0.13);
}
.cat-tab {
  border-radius: 999px;
  padding: 9px 18px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(245, 237, 222, 0.6);
  letter-spacing: 0.12em;
  transition: color 0.25s, border-color 0.25s, background 0.25s, transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.25s;
}
.cat-tab:hover {
  color: var(--accent);
  border-color: rgba(233, 196, 106, 0.4);
  background: rgba(233, 196, 106, 0.06);
  transform: translateY(-1px);
}
.cat-tab.active {
  background: var(--crimson-grad);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 6px 20px -6px rgba(230, 10, 62, 0.7), 0 0 0 1px rgba(233, 196, 106, 0.25);
}

.menu-cat-head h3 { font-weight: 600; letter-spacing: 0.08em; }
.menu-cat-head .cat-sub { color: var(--accent); }
.menu-cat-head .cat-rule {
  width: 64px;
  height: 2px;
  background: var(--gold-grad);
  box-shadow: 0 0 14px rgba(233, 196, 106, 0.5);
  position: relative;
}
.menu-cat-head .cat-rule::before, .menu-cat-head .cat-rule::after {
  content: "✦";
  position: absolute;
  top: 50%;
  font-size: 9px;
  color: var(--accent);
  transform: translateY(-52%);
}
.menu-cat-head .cat-rule::before { left: -16px; }
.menu-cat-head .cat-rule::after { right: -16px; }

/* ── Menu item cards ── */
.menu-item {
  border-radius: 20px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)), #0f0d13;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 12px 34px -20px rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.menu-item:hover {
  transform: translateY(-5px);
  border-color: rgba(233, 196, 106, 0.38);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)), #121016;
  box-shadow: 0 28px 58px -22px rgba(0, 0, 0, 0.85), 0 0 34px -14px rgba(230, 10, 62, 0.4);
}
.menu-item::before { width: 3px; background: var(--gold-grad); border-radius: 0 3px 3px 0; }
.menu-item-img-wrap { border-radius: 20px 20px 0 0; background: #0b0a0e; }
.menu-item-name { font-weight: 600; letter-spacing: 0.01em; }
.menu-item-desc { color: rgba(220, 212, 198, 0.6); letter-spacing: 0.01em; }
.menu-item-price .num { font-weight: 800; }
.qty-wrap { border-radius: 999px; border-color: rgba(255, 255, 255, 0.12); }
.qty-btn { background: transparent; border-radius: 999px; }
.qty-btn:hover { background: rgba(233, 196, 106, 0.1); color: var(--accent); }
.add-btn {
  border-radius: 999px;
  border-color: rgba(233, 196, 106, 0.45);
  color: var(--accent);
  letter-spacing: 0.1em;
}
.add-btn:hover {
  background: var(--crimson-grad);
  border-color: transparent;
  color: #fff;
  box-shadow: 0 8px 22px -8px rgba(230, 10, 62, 0.65);
}
.add-btn.added { background: rgba(34, 197, 94, 0.14); border-color: var(--green); color: var(--green); box-shadow: none; }
.avail-badge { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 999px; }
.avail-badge.available { background: rgba(14, 120, 54, 0.88); box-shadow: 0 4px 14px rgba(14, 120, 54, 0.45); }
.avail-badge.unavailable-badge { background: rgba(120, 14, 34, 0.9); }

/* ── Floating order button ── */
.float-order-btn { background: var(--crimson-grad); }
.float-badge { background: var(--accent); color: #221503; box-shadow: 0 0 12px rgba(233, 196, 106, 0.5); }

/* ── Order sidebar ── */
.order-sidebar { background: linear-gradient(180deg, #0d0b10 0%, #09080b 100%); border-left: 1px solid rgba(255, 255, 255, 0.08); }
.sidebar-head { background: rgba(255, 255, 255, 0.025); }
.sidebar-total {
  background: linear-gradient(90deg, rgba(230, 10, 62, 0.1), rgba(233, 196, 106, 0.09));
  border-top: 1px solid rgba(233, 196, 106, 0.18);
  border-bottom: 1px solid rgba(233, 196, 106, 0.18);
}
.total-val { font-weight: 800; }
.order-line { border-radius: 12px; background: rgba(255, 255, 255, 0.035); }
.type-btn.active { background: var(--crimson-grad); }
.form-field input { border-radius: 12px; background: rgba(255, 255, 255, 0.045); border-color: rgba(255, 255, 255, 0.1); }
.wp-send-btn { border-radius: 14px; }

/* ═════════ CTA ═════════ */
.cta-section { background: linear-gradient(180deg, rgba(15, 13, 19, 0.7), rgba(8, 7, 10, 0.6)); }
.cta-rule { background: var(--gold-grad); box-shadow: 0 0 18px rgba(233, 196, 106, 0.55); }
.cta-big-title { font-weight: 700; }
.cta-phone-btn { background: var(--crimson-grad); border-radius: 999px; padding: 15px 32px; box-shadow: 0 10px 30px -10px rgba(230, 10, 62, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.22); }
.cta-phone-btn:hover { box-shadow: 0 16px 40px -10px rgba(230, 10, 62, 0.75), 0 0 24px -6px rgba(233, 196, 106, 0.35); }
.cta-divider-dot { background: var(--accent); box-shadow: 0 0 12px var(--accent); }

/* ═════════ FOOTER ═════════ */
.footer { background: #050407; }
.footer-heading { color: var(--accent); letter-spacing: 0.26em; }
.footer-links a::before { color: var(--accent); }
.footer-brand h3 { font-weight: 600; }
.follower-chip { border-radius: 999px; background: rgba(255, 255, 255, 0.035); }
.follower-chip:hover { border-color: rgba(233, 196, 106, 0.5); box-shadow: 0 6px 22px -8px rgba(233, 196, 106, 0.4); }
.fc-ico { background: rgba(233, 196, 106, 0.1); color: var(--accent); }
.footer-contact a:hover .fc-ico { background: var(--accent); color: #221503; }

/* ═══════════════════════════════════════════════════════════════
   ADMIN PANEL — premium dashboard
   ═══════════════════════════════════════════════════════════════ */
.admin-page {
  background:
    radial-gradient(1000px 520px at 82% -10%, rgba(230, 10, 62, 0.09), transparent 60%),
    radial-gradient(820px 420px at -8% 42%, rgba(233, 196, 106, 0.05), transparent 58%),
    #08070a;
}
.admin-shell { padding-top: 26px; }

.admin-topbar {
  padding: 16px 22px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  box-shadow: 0 18px 44px -24px rgba(0, 0, 0, 0.8);
  position: relative;
  overflow: hidden;
}
.admin-topbar::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(233, 196, 106, 0.45), rgba(230, 10, 62, 0.5), transparent);
}
.admin-brand img { box-shadow: 0 0 0 2px rgba(233, 196, 106, 0.55), 0 0 26px rgba(230, 10, 62, 0.35); }
.admin-brand h1 {
  font-size: 20px;
  font-weight: 600;
  text-shadow: none;
  background: var(--gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
.admin-brand p { letter-spacing: 0.22em; }

.admin-btn {
  border-radius: 999px;
  padding: 11px 18px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  letter-spacing: 0.1em;
  transition: border-color 0.25s, color 0.25s, transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.25s, background 0.25s;
}
.admin-btn:hover { border-color: rgba(233, 196, 106, 0.5); color: var(--accent); transform: translateY(-2px); }
.admin-btn.primary {
  background: var(--crimson-grad);
  border-color: transparent;
  color: #fff;
  box-shadow: 0 8px 24px -8px rgba(230, 10, 62, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.25);
}
.admin-btn.primary:hover { color: #fff; box-shadow: 0 14px 34px -8px rgba(230, 10, 62, 0.78), 0 0 22px -6px rgba(233, 196, 106, 0.35); }
.admin-btn.danger:hover { border-color: #ff536e; color: #ff536e; }

.admin-heading h2 { font-weight: 600; }
.admin-heading p { letter-spacing: 0.02em; }

/* Stat cards */
.stats-grid-admin { gap: 16px; }
.admin-stat {
  padding: 22px;
  border-radius: 20px;
  background: linear-gradient(150deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018));
  border: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), border-color 0.35s, box-shadow 0.35s;
}
.admin-stat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(233, 196, 106, 0.55), transparent);
}
.admin-stat:hover {
  transform: translateY(-4px);
  border-color: rgba(233, 196, 106, 0.35);
  box-shadow: 0 24px 50px -24px rgba(0, 0, 0, 0.85), 0 0 30px -14px rgba(230, 10, 62, 0.4);
}
.admin-stat-label { letter-spacing: 0.18em; color: rgba(245, 237, 222, 0.5); }
.admin-stat-value {
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 0.01em;
  background: var(--gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Toolbar */
.admin-toolbar {
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 16px;
}
.admin-control, .admin-search input {
  height: 44px;
  border-radius: 999px;
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.35);
  padding-left: 16px;
  transition: border-color 0.25s, box-shadow 0.25s, background 0.25s;
}
.admin-search input { padding-left: 40px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%23a89f92' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.5' y2='16.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: 15px center; }
.admin-control:focus, .admin-search input:focus { border-color: rgba(233, 196, 106, 0.6); box-shadow: 0 0 0 3px rgba(233, 196, 106, 0.12); background-color: rgba(0, 0, 0, 0.45); }
.admin-control option { background-color: #141118; }
.admin-status { letter-spacing: 0.06em; }

/* Item cards */
.admin-items { gap: 16px; }
.admin-item {
  border-radius: 20px;
  padding: 14px;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)), #0f0d13;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: border-color 0.3s, box-shadow 0.3s, transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.admin-item:hover {
  border-color: rgba(233, 196, 106, 0.35);
  transform: translateY(-3px);
  box-shadow: 0 24px 50px -24px rgba(0, 0, 0, 0.85), 0 0 28px -14px rgba(230, 10, 62, 0.35);
}
.admin-item-image { border-radius: 14px; }
.admin-item h3 { font-weight: 600; letter-spacing: 0.01em; }
.admin-item-price {
  font-weight: 800;
  background: var(--gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.admin-item-meta { color: var(--accent); letter-spacing: 0.16em; }
.mini-btn { border-radius: 999px; padding: 8px 15px; letter-spacing: 0.08em; transition: border-color 0.22s, color 0.22s, transform 0.22s, background 0.22s; }
.mini-btn:hover { border-color: rgba(233, 196, 106, 0.5); color: var(--accent); transform: translateY(-1px); background: rgba(233, 196, 106, 0.05); }
.mini-btn.delete:hover { border-color: #ff536e; color: #ff536e; background: rgba(230, 10, 62, 0.07); }
.admin-item-actions { padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, 0.06); }
.admin-empty { border-radius: 20px; }
.admin-empty strong { font-weight: 600; }

/* Modal */
.modal-backdrop { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.admin-modal {
  border-radius: 24px;
  background: linear-gradient(180deg, #14111a 0%, #0d0b10 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 40px 110px -30px rgba(0, 0, 0, 0.9), 0 0 60px -30px rgba(230, 10, 62, 0.35);
}
.modal-head { border-bottom: 1px solid rgba(233, 196, 106, 0.16); }
.modal-head h2 { font-weight: 600; }
.modal-close { border-radius: 50%; transition: background 0.22s, color 0.22s, transform 0.22s; }
.modal-close:hover { background: var(--primary); color: #fff; transform: rotate(90deg); }
.form-control, .login-field input {
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.1);
  transition: border-color 0.25s, box-shadow 0.25s, background 0.25s;
}
.form-control:focus, .login-field input:focus {
  border-color: rgba(233, 196, 106, 0.6);
  box-shadow: 0 0 0 3px rgba(233, 196, 106, 0.12);
  background: rgba(255, 255, 255, 0.055);
}
select.form-control { background-color: #16131b; }
select.form-control option { background-color: #141118; }
.form-label { letter-spacing: 0.14em; }
.preview-image { border-radius: 10px; }
.modal-foot { border-top: 1px solid rgba(233, 196, 106, 0.14); }

/* Login */
.login-wrap { padding: 24px; }
.login-card {
  border-radius: 26px;
  border: 1px solid transparent;
  background: linear-gradient(165deg, rgba(24, 19, 29, 0.97), rgba(15, 12, 18, 0.985)) padding-box,
    linear-gradient(135deg, rgba(233, 196, 106, 0.6), rgba(230, 10, 62, 0.5) 50%, rgba(233, 196, 106, 0.25)) border-box;
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
  box-shadow: 0 40px 100px -30px rgba(0, 0, 0, 0.9), 0 0 80px -30px rgba(230, 10, 62, 0.4);
}
.login-card h1 { font-weight: 600; letter-spacing: 0.02em; }
.login-logo {
  box-shadow: 0 0 0 2px rgba(233, 196, 106, 0.6), 0 0 40px rgba(230, 10, 62, 0.4);
}
.login-field label { letter-spacing: 0.14em; }
.login-note { letter-spacing: 0.08em; }

/* Toast */
.toast {
  border-radius: 14px;
  background: rgba(20, 17, 24, 0.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 18px 40px -14px rgba(0, 0, 0, 0.8);
}

/* Availability toggle stays green — refine knob */
.availability-track { width: 38px; height: 21px; }
.availability input:checked + .availability-track { background: linear-gradient(90deg, #16a34a, #22c55e); box-shadow: 0 0 12px rgba(34, 197, 94, 0.35); }

/* ═════════ MOTION SAFETY ═════════ */
@media (prefers-reduced-motion: reduce) {
  .hero-logo-wrap::before { animation: none; }
}

/* ═══════════════════════════════════════════════════════════════
   PREMIUM v2 — second-pass refinements
   ═══════════════════════════════════════════════════════════════ */

/* ── ADD TO ORDER: solid red by default ── */
.add-btn {
  background: var(--crimson-grad);
  border-color: transparent;
  color: #fff;
  font-weight: 700;
  box-shadow: 0 8px 22px -8px rgba(230, 10, 62, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.22);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s, background 0.3s;
}
.add-btn:hover {
  background: linear-gradient(120deg, #ff2f60, #e60a3e 58%, #b30731);
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -8px rgba(230, 10, 62, 0.78), 0 0 20px -6px rgba(233, 196, 106, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}
.add-btn.added {
  background: rgba(34, 197, 94, 0.14);
  border-color: var(--green);
  color: var(--green);
  box-shadow: none;
}

/* ── Sticky category bar: stronger glass + soft edge fade ── */
.cat-tabs-wrap {
  top: var(--nav-h, 68px);
  background: linear-gradient(180deg, rgba(10, 8, 12, 0.96), rgba(10, 8, 12, 0.9));
  backdrop-filter: blur(24px) saturate(1.4);
  -webkit-backdrop-filter: blur(24px) saturate(1.4);
  box-shadow: 0 18px 38px -22px rgba(0, 0, 0, 0.85);
}
.cat-tabs {
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 22px, #000 calc(100% - 22px), transparent);
  mask-image: linear-gradient(90deg, transparent, #000 22px, #000 calc(100% - 22px), transparent);
}
.cat-tab.active {
  letter-spacing: 0.14em;
  box-shadow: 0 6px 22px -6px rgba(230, 10, 62, 0.75), 0 0 0 1px rgba(233, 196, 106, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

/* ── Hero picture bigger on phones ── */
@media (max-width: 640px) {
  .hero-logo-wrap {
    width: clamp(152px, 46vw, 188px);
    height: clamp(152px, 46vw, 188px);
    margin-bottom: 26px;
  }
  .hero-bg img { opacity: 0.5; }
  .hero-title { font-size: clamp(34px, 11.5vw, 58px); }
  .cat-tabs-wrap { top: 63px; }
  .cat-tab { padding: 8px 15px; font-size: 11px; }
}

/* ── Light sweep across dish images & signature cards on hover ── */
.menu-item-img-wrap::after,
.sig-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, transparent 42%, rgba(255, 255, 255, 0.13) 50%, transparent 58%);
  transform: translateX(-130%);
  transition: transform 0.85s ease;
  pointer-events: none;
  z-index: 2;
}
.menu-item:hover .menu-item-img-wrap::after,
.sig-card:hover::after { transform: translateX(130%); }

/* ── Footer: gold/crimson hairline on top ── */
.footer { position: relative; }
.footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 6%, rgba(233, 196, 106, 0.45) 30%, rgba(230, 10, 62, 0.55) 50%, rgba(233, 196, 106, 0.45) 70%, transparent 94%);
}

/* ── Small extras: order button pulse, smooth section transitions ── */
.float-order-btn.visible { animation: auroraFloatIn 0.5s cubic-bezier(0.2, 0.7, 0.2, 1); }
@keyframes auroraFloatIn {
  from { transform: translateY(26px) scale(0.94); opacity: 0; }
  to { transform: translateY(0) scale(1); opacity: 1; }
}
.menu-category { scroll-margin-top: 140px; }

@media (prefers-reduced-motion: reduce) {
  .menu-item-img-wrap::after, .sig-card::after, .float-order-btn.visible { animation: none; transition: none; }
}
