:root {
  --primary: #d4af37;
  --secondary: #2f3437;
  --bg: #111315;
  --text: #ffffff;
}
* { box-sizing: border-box; }
body {
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: radial-gradient(circle at top left, rgba(212,175,55,.16), transparent 28%), var(--bg);
  color: var(--text);
  min-height: 100vh;
}
a { color: inherit; }
.menu-shell { max-width: 1180px; margin: 0 auto; padding: 22px 14px 80px; }
.hero-card {
  background: linear-gradient(135deg, rgba(47,52,55,.96), rgba(17,19,21,.94));
  border: 1px solid rgba(212,175,55,.32);
  box-shadow: 0 24px 70px rgba(0,0,0,.35);
  border-radius: 30px;
  padding: 28px;
  overflow: hidden;
  position: relative;
}
.hero-card:after {
  content: ''; position: absolute; width: 220px; height: 220px; right: -80px; top: -80px;
  background: rgba(212,175,55,.18); border-radius: 50%; filter: blur(2px);
}
.brand-logo { width: 74px; height: 74px; object-fit: cover; border-radius: 22px; border: 1px solid rgba(212,175,55,.55); }
.brand-fallback { width: 74px; height: 74px; display: grid; place-items: center; border-radius: 22px; background: rgba(212,175,55,.12); border: 1px solid rgba(212,175,55,.55); color: var(--primary); font-size: 30px; font-weight: 800; }
.gold-text { color: var(--primary); }
.search-box, .category-pill {
  background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); color: #fff;
}
.search-box:focus { background: rgba(255,255,255,.1); color: #fff; border-color: var(--primary); box-shadow: 0 0 0 .2rem rgba(212,175,55,.18); }
.category-scroll { display: flex; gap: 10px; overflow-x: auto; padding: 18px 2px 8px; scrollbar-width: none; position: sticky; top: 0; z-index: 5; backdrop-filter: blur(14px); }
.category-scroll::-webkit-scrollbar { display:none; }
.category-pill { white-space: nowrap; border-radius: 999px; padding: 10px 16px; text-decoration: none; transition: .2s ease; }
.category-pill:hover, .category-pill.active { background: var(--primary); color: #171717; border-color: var(--primary); }
.section-title { margin: 32px 0 16px; display:flex; align-items:center; gap:10px; }
.section-title:before { content:''; width:8px; height:28px; border-radius:10px; background:var(--primary); display:inline-block; }
.product-card {
  height: 100%; background: rgba(47,52,55,.82); border: 1px solid rgba(255,255,255,.08); border-radius: 24px;
  overflow: hidden; box-shadow: 0 14px 36px rgba(0,0,0,.24); transition: transform .2s ease, border-color .2s ease;
}
.product-card:hover { transform: translateY(-4px); border-color: rgba(212,175,55,.45); }
.product-image { width:100%; height:190px; object-fit:cover; background:#24282b; }
.product-placeholder { height:190px; display:grid; place-items:center; background:linear-gradient(135deg, rgba(212,175,55,.18), rgba(255,255,255,.04)); color:var(--primary); font-size:42px; }
.product-body { padding:18px; }
.price { color: var(--primary); font-size: 22px; font-weight: 800; }
.meta-chip { display:inline-flex; gap:6px; align-items:center; margin:4px 5px 0 0; padding:7px 10px; border-radius:999px; background:rgba(255,255,255,.07); color:rgba(255,255,255,.86); font-size:13px; }
.featured-badge { background: rgba(212,175,55,.15); color: var(--primary); border: 1px solid rgba(212,175,55,.35); }
.footer-card { margin-top:42px; padding:22px; border-radius:24px; background:rgba(255,255,255,.06); color:rgba(255,255,255,.8); }
.admin-body { background:#f5f6f8; color:#222; }
.admin-card { border:0; border-radius:18px; box-shadow: 0 10px 30px rgba(0,0,0,.07); }
.admin-sidebar { background:#202427; min-height:100vh; }
.admin-sidebar a { color:rgba(255,255,255,.78); text-decoration:none; display:block; padding:12px 16px; border-radius:12px; margin-bottom:6px; }
.admin-sidebar a:hover, .admin-sidebar a.active { background:#d4af37; color:#151515; }
.btn-gold { background:#d4af37; border-color:#d4af37; color:#151515; font-weight:700; }
.btn-gold:hover { background:#c39d24; border-color:#c39d24; color:#111; }
.table img { width:70px; height:52px; object-fit:cover; border-radius:10px; }
@media (max-width: 576px) {
  .hero-card { padding:22px; border-radius:24px; }
  .product-image, .product-placeholder { height:165px; }
  .price { font-size:20px; }
}
.table-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background:rgba(212,175,55,.16); color:var(--primary); border:1px solid rgba(212,175,55,.38); font-weight:800; }
.qr-preview-box { background:#fff; border:1px solid #e5e7eb; border-radius:18px; padding:18px; display:flex; justify-content:center; align-items:center; min-height:260px; }
.qr-preview-box img, .qr-preview-box canvas { max-width:220px; width:100%; height:auto; }
