:root{
  --bg:#0f1115; --card:#151923; --muted:#9397a1; --text:#e8ecf3;
  --brand:#7c5cff; --brand-2:#00d18f; --danger:#ff5d5d; --whatsapp:#25D366;
  --border:rgba(255,255,255,.08);
  --radius:18px; --radius-lg:22px; --shadow:0 10px 30px rgba(0,0,0,.25);
}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(1200px 800px at 80% -20%,rgba(124,92,255,.15),transparent),radial-gradient(900px 600px at -10% -30%,rgba(0,209,143,.12),transparent),var(--bg);color:var(--text);}

.container{width:min(1100px,94%);margin:0 auto}
.header{position:sticky;top:0;backdrop-filter:saturate(140%) blur(10px);background:rgba(15,17,21,.7);border-bottom:1px solid var(--border);z-index:20}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.logo{margin:0;font-size:22px;font-weight:700} .logo span{color:var(--brand)}
.header__actions{display:flex;gap:10px;align-items:center}
.search input{background:var(--card);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:12px;outline:none;width:220px}
.select{background:var(--card);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:12px;outline:none}
.btn{border:0;border-radius:14px;padding:10px 14px;font-weight:600;cursor:pointer;transition:.2s transform, .2s opacity;box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px)} .btn:active{transform:translateY(0)}
.btn--ghost{background:var(--card);color:var(--text);border:1px solid var(--border);box-shadow:none}
.btn--primary{background:linear-gradient(135deg,var(--brand),#5c7cff);color:white}
.btn--danger{background:var(--danger);color:#fff}
.btn--whatsapp{background:var(--whatsapp);color:#0b2b12}

.hero{margin:24px 0 10px}
.hero__content{background:linear-gradient(145deg,rgba(21,25,35,.8),rgba(21,25,35,.45));border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 24px}
.hero h2{margin:0 0 6px;font-size:28px}
.hero h2 span{color:var(--brand-2)}
.hero p{margin:0;color:var(--muted)}

.filters{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;margin:16px 0 22px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:var(--card);border:1px solid var(--border);border-radius:999px;padding:8px 12px;font-size:13px;cursor:pointer;color:#b690ff}
.chip--active{outline:2px solid rgba(124,92,255,.35);}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.00));border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.card__img{aspect-ratio:4/3;background:#0b0e14 url('https://images.unsplash.com/photo-1542291026-7eec264c27ff?q=80&w=1200&auto=format&fit=crop') center/cover no-repeat}
.card__body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px}
.card__title{font-weight:600;margin:0}
.card__meta{display:flex;justify-content:space-between;color:var(--muted);font-size:13px}
.price{font-size:18px;font-weight:700}
.sizes{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.size{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:6px 8px;font-size:13px;cursor:pointer;color:#b690ff}
.size--active{outline:2px solid rgba(124,92,255,.35)}
.card__footer{margin-top:10px;display:flex;gap:8px}
.qty{display:flex;gap:6px;align-items:center}
.qty input{width:56px;background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:6px 8px}

.drawer{position:fixed;inset:0;display:grid;grid-template-columns:1fr 380px;pointer-events:none}
.drawer__backdrop{background:rgba(0,0,0,.35);opacity:0;transition:.2s}
.drawer__panel{background:var(--bg);border-left:1px solid var(--border);transform:translateX(100%);transition:.25s;box-shadow:var(--shadow)}
.drawer[aria-hidden="false"]{pointer-events:auto}
.drawer[aria-hidden="false"] .drawer__backdrop{opacity:1}
.drawer[aria-hidden="false"] .drawer__panel{transform:none}
.drawer__header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding:14px 16px}
.icon-btn{background:transparent;border:0;color:var(--text);font-size:18px;cursor:pointer}
.cart-items{max-height:52vh;overflow:auto;padding:10px 14px;display:flex;flex-direction:column;gap:12px}
.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:8px;background:var(--card)}
.cart-item img{width:64px;height:64px;object-fit:cover;border-radius:12px}
.cart-item h4{margin:0;font-size:14px}
.cart-item .muted{color:var(--muted);font-size:12px}
.cart-summary{border-top:1px solid var(--border);padding:12px 16px 18px;display:flex;flex-direction:column;gap:10px}
.cart-summary .row{display:flex;justify-content:space-between;align-items:center}
.cart-summary .row.total{font-size:18px}
.payments{display:grid;gap:8px;grid-template-columns:1fr 1fr}

.modal{position:fixed;inset:0;display:grid;place-items:center;pointer-events:none}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35);opacity:0;transition:.2s}
.modal__dialog{position:relative;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(520px,92%);padding:16px;transform:translateY(10px);opacity:0;transition:.25s}
.modal[aria-hidden="false"]{pointer-events:auto}
.modal[aria-hidden="false"] .modal__backdrop{opacity:1}
.modal[aria-hidden="false"] .modal__dialog{transform:none;opacity:1}
.modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.card-form .field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.card-form input,.card-form select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:10px}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hint{color:var(--muted);font-size:12px;margin:6px 0 0}

.footer{border-top:1px solid var(--border);margin-top:26px}
.footer__inner{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
.footer__links{display:flex;gap:14px}
.footer__links a{color:var(--muted);text-decoration:none}

@media (max-width:960px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .drawer{grid-template-columns:1fr min(92vw,420px)}
}
@media (max-width:620px){
  .filters{grid-template-columns:1fr;gap:10px}
  .grid{grid-template-columns:1fr}
  .search input{width:160px}
}
