:root{
  --bg:#0f1724; --card:#0b1220; --accent:#06b6d4; --muted:#94a3b8; --glass: rgba(255,255,255,0.03);
  --success:#34d399;
  --danger:#fb7185;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: linear-gradient(180deg,#020617 0%, #07122a 100%);
  color:#e6eef6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.4;
}

/* header */
.site-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 18px;
  background: linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.0));
  border-bottom: 1px solid rgba(255,255,255,0.03);
  position:sticky; top:0; z-index:30;
}
.brand .logo{font-weight:700; color:var(--accent); font-size:18px}
.brand .tag{font-size:12px; color:var(--muted)}
.header-actions{display:flex; align-items:center; gap:10px}
.contact{color:#0b1220;background:var(--accent);padding:8px 12px;border-radius:8px;text-decoration:none;font-weight:600}
.cart-btn{background:transparent;color:inherit;border:1px solid rgba(255,255,255,0.04);padding:8px 10px;border-radius:10px}

/* hero */
.hero{padding:42px 18px; text-align:center;}
.hero-inner{max-width:880px;margin:auto}
.hero h1{font-size:26px;margin-bottom:8px}
.hero p{color:var(--muted);margin-bottom:12px}
.btn-primary{display:inline-block;background:linear-gradient(90deg,var(--accent),#3b82f6);color:#001; padding:10px 18px;border-radius:12px;font-weight:700;text-decoration:none}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,0.06);color:inherit;padding:8px 12px;border-radius:8px}

/* main grid */
.main{padding:18px}
.products-section h2{margin-bottom:12px}
.product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
  gap:14px;
}

/* product card */
.card{
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  padding:12px;border-radius:14px;border:1px solid rgba(255,255,255,0.03);
  display:flex;flex-direction:column;gap:8px;
  transition:transform .18s ease, box-shadow .18s ease;
}
.card:hover{transform:translateY(-6px);box-shadow:0 10px 30px rgba(2,6,23,0.6)}
.card img{width:100%;height:120px;object-fit:cover;border-radius:10px}
.card h3{font-size:14px;margin:0}
.card p{margin:0;color:var(--muted);font-size:13px}
.card .meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.price{font-weight:700;color:#e6eef6}

/* cart drawer */
.cart-drawer{
  position:fixed; right:-420px; top:0; bottom:0; width:360px; max-width:94%;
  background:linear-gradient(180deg,#041025,#07122a); box-shadow:-20px 40px 80px rgba(2,6,23,0.6);
  transition:right .22s ease; z-index:60; padding:12px; display:flex;flex-direction:column;
}
.cart-drawer.open{right:0}
.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,0.03);padding-bottom:8px;margin-bottom:8px}
.cart-items{list-style:none;padding:0; margin:0; overflow:auto; flex:1}
.cart-item{display:flex;gap:10px;padding:8px;border-radius:10px;margin-bottom:8px;background:var(--glass);border:1px solid rgba(255,255,255,0.02)}
.cart-item img{width:56px;height:56px;object-fit:cover;border-radius:8px}
.cart-item .info{flex:1}
.cart-item .info h4{margin:0;font-size:13px}
.cart-item .info p{margin:4px 0 0;font-size:12px;color:var(--muted)}
.cart-footer{padding-top:10px}

/* footer */
.site-footer{padding:16px;text-align:center;border-top:1px solid rgba(255,255,255,0.02);color:var(--muted)}

/* modal */
.modal{position:fixed; left:0; right:0; top:0; bottom:0; display:none; align-items:center; justify-content:center;background:rgba(2,6,23,0.6); z-index:80}
.modal.open{display:flex}
.modal-content{background:#021124;padding:16px;border-radius:12px;max-width:420px;width:94%;box-shadow:0 20px 60px rgba(2,6,23,0.6)}
.modal-content input, .modal-content textarea{width:100%;padding:10px;margin-top:8px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:transparent;color:inherit}

/* small screens tweaks */
@media (max-width:480px){
  .hero h1{font-size:20px}
  .card img{height:110px}
  .cart-drawer{width:100%; max-width:100%}
}