:root {
  --primary: #1a3a5c;
  --accent: #d83227;
  --gold: #c9a84c;
  --light: #f5f7fa;
  --dark: #111827;
  --gray: #6b7280;
  --white: #fff;
  --radius: 8px;
  --shadow: 0 2px 16px rgba(0,0,0,.08);
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: var(--dark); line-height: 1.6; background: var(--white); }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
a { color: var(--primary); text-decoration: none; }
h1, h2, h3, h4 { color: var(--primary); }

/* Age Gate */
.modal { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.85); z-index:9999; align-items:center; justify-content:center; }
.modal.active { display:flex; }
.modal-box { background:var(--white); padding:40px; border-radius:12px; max-width:500px; text-align:center; }
.modal-box h2 { margin:15px 0; }
.modal-box label { display:block; text-align:left; margin:10px 0; font-size:14px; cursor:pointer; }
.modal-box .disclaimer { font-size:11px; color:var(--gray); margin-top:15px; }

.btn { display:inline-block; padding:12px 28px; background:var(--accent); color:var(--white); border:none; border-radius:var(--radius); cursor:pointer; font-size:16px; font-weight:600; transition:all .2s; }
.btn:hover { opacity:.9; transform:translateY(-1px); }
.btn:disabled { opacity:.4; cursor:not-allowed; transform:none; }
.btn-outline { background:transparent; border:2px solid var(--white); color:var(--white); }
.btn-lg { padding:16px 36px; font-size:18px; }
.btn-sm { padding:6px 16px; font-size:13px; }

/* Header */
.top-bar { background:var(--primary); color:var(--white); padding:8px 0; font-size:13px; }
.top-bar .container { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; }
.top-bar a { color:var(--white); margin-left:15px; }
.header-right { display:flex; align-items:center; gap:12px; }
.lang-btn { background:rgba(255,255,255,.15); color:var(--white); border:1px solid rgba(255,255,255,.3); padding:4px 12px; border-radius:4px; cursor:pointer; font-size:12px; }
.lang-btn:hover { background:rgba(255,255,255,.25); }
.main-header { display:flex; justify-content:space-between; align-items:center; padding:15px 20px; }
.logo { font-size:28px; font-weight:800; color:var(--primary); }
.logo span { color:var(--accent); }
nav { display:flex; align-items:center; gap:20px; }
nav a { font-weight:500; font-size:15px; }
nav a.active, nav a:hover { color:var(--accent); }
.cart-link { font-size:20px; position:relative; }
#cartCount { background:var(--accent); color:var(--white); font-size:11px; padding:1px 6px; border-radius:10px; position:absolute; top:-8px; right:-10px; font-weight:700; }

/* Hero */
.hero { background:linear-gradient(135deg, var(--primary) 0%, #0d2540 100%); color:var(--white); padding:100px 0 80px; text-align:center; }
.hero h1 { color:var(--white); font-size:42px; margin-bottom:10px; }
.hero h1 span { color:var(--gold); font-size:22px; font-weight:400; }
.hero-btns { margin-top:30px; display:flex; gap:15px; justify-content:center; flex-wrap:wrap; }

/* Trust Bar */
.trust-bar { background:var(--light); padding:50px 0; }
.trust-bar .container { display:grid; grid-template-columns:repeat(4, 1fr); gap:30px; }
.trust-item { text-align:center; padding:20px; }
.trust-icon { font-size:36px; }
.trust-item h4 { margin:10px 0 5px; font-size:18px; }
.trust-item p { color:var(--gray); font-size:14px; }

/* Sections */
.section { padding:70px 0; }
.section-title { text-align:center; font-size:32px; margin-bottom:40px; }
.bg-light { background:var(--light); }

/* Product Grid */
.product-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:25px; }
.product-card { background:var(--white); border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; transition:transform .2s; }
.product-card:hover { transform:translateY(-4px); }
.product-card img { width:100%; height:200px; object-fit:contain; background:var(--light); padding:8px; }
.product-card .info { padding:20px; }
.product-card h3 { font-size:17px; margin-bottom:5px; }
.product-card .purity { color:var(--accent); font-weight:700; font-size:14px; margin-bottom:8px; }
.product-card .desc { color:var(--gray); font-size:13px; margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product-card .price { font-size:22px; font-weight:800; color:var(--primary); }
.product-card .price s { font-size:14px; color:var(--gray); margin-right:8px; }
.product-card .actions { display:flex; gap:8px; margin-top:12px; }
.product-card .actions select { flex:1; padding:8px; border:1px solid #ddd; border-radius:var(--radius); }
.product-card .qty { width:60px; padding:8px; border:1px solid #ddd; border-radius:var(--radius); text-align:center; }

/* Category Cards */
.cat-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; }
.cat-card { background:var(--white); padding:25px; border-radius:var(--radius); text-align:center; box-shadow:var(--shadow); transition:transform .2s; display:block; }
.cat-card:hover { transform:translateY(-4px); }
.cat-card img { border-radius:8px; }
.cat-card h3 { margin:10px 0 5px; }
.cat-card p { color:var(--gray); font-size:13px; }

/* Guarantee */
.guarantee { background:linear-gradient(135deg, #fef3c7, #fde68a); text-align:center; }
.guarantee-content { max-width:700px; margin:0 auto; }
.guarantee-content p { font-size:16px; margin-bottom:20px; }

/* Shop Page */
.shop-layout { display:flex; gap:30px; }
.shop-filters { width:220px; flex-shrink:0; }
.shop-filters h4 { margin-bottom:10px; }
.shop-filters a { display:block; padding:8px 0; font-size:14px; border-bottom:1px solid #eee; }
.shop-products { flex:1; }

/* Cart Table */
.cart-table { width:100%; border-collapse:collapse; margin-bottom:20px; }
.cart-table th { text-align:left; padding:12px; background:var(--light); }
.cart-table td { padding:12px; border-bottom:1px solid #eee; }
.cart-remove { color:var(--accent); cursor:pointer; font-weight:700; }
.cart-total { text-align:right; font-size:20px; margin:20px 0; }

/* Content Pages */
.content-page { max-width:800px; margin:0 auto; padding:40px 20px; }
.content-page h1 { font-size:32px; margin-bottom:20px; }
.content-page h2 { font-size:22px; margin:30px 0 15px; }
.content-page p, .content-page li { margin-bottom:12px; color:#374151; }

/* WhatsApp Float */
.wa-float { position:fixed; bottom:25px; right:25px; width:56px; height:56px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:28px; box-shadow:0 4px 16px rgba(37,211,102,.4); z-index:999; transition:transform .2s; }
.wa-float:hover { transform:scale(1.1); }

/* Footer */
footer { background:var(--primary); color:var(--white); padding:50px 0 0; }
footer a { color:#93c5fd; display:block; padding:3px 0; font-size:14px; }
footer h4 { color:var(--white); margin-bottom:15px; }
footer p { color:#9ca3af; font-size:14px; }
.footer-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:30px; margin-bottom:30px; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.1); padding:15px 0; text-align:center; }
.footer-bottom p { font-size:11px; }

/* Toast */
.toast { position:fixed; bottom:100px; left:50%; transform:translateX(-50%); background:var(--dark); color:var(--white); padding:12px 24px; border-radius:var(--radius); z-index:999; animation:toastIn .3s ease; }
@keyframes toastIn { from { opacity:0; transform:translateX(-50%) translateY(10px); } to { opacity:1; transform:translateX(-50%) translateY(0); } }

/* COA Table */
.coa-table { width:100%; border-collapse:collapse; margin:20px 0; }
.coa-table th, .coa-table td { padding:10px; border:1px solid #ddd; font-size:14px; }
.coa-table th { background:var(--light); }

/* Admin */
.admin-page { max-width:500px; margin:80px auto; padding:30px; background:var(--white); border-radius:var(--radius); box-shadow:var(--shadow); }
.admin-page label { display:block; font-weight:600; margin:15px 0 5px; }
.admin-page input { width:100%; padding:10px; border:1px solid #ddd; border-radius:var(--radius); font-size:16px; }

/* Responsive */
@media (max-width:768px) {
  .hero h1 { font-size:28px; }
  .hero h1 span { font-size:16px; }
  .trust-bar .container, .cat-grid, .footer-grid { grid-template-columns:repeat(2, 1fr); }
  .product-grid { grid-template-columns:repeat(2, 1fr); }
  .shop-layout { flex-direction:column; }
  .shop-filters { width:100%; }
  nav { gap:10px; font-size:13px; }
}
@media (max-width:480px) {
  .product-grid, .trust-bar .container, .cat-grid, .footer-grid { grid-template-columns:1fr; }
}
