/* ====== Base ====== */
:root{
  --bg:#0c0c0d;
  --card:#121214;
  --muted:#a1a1aa;
  --text:#e5e7eb;
  --brand:#6ee7b7;
  --brand-2:#60a5fa;
  --accent:#f59e0b;
  --danger:#ef4444;
  --border:#1f2937;
  --shadow:0 10px 25px rgba(0,0,0,.25);
  --radius:14px;
  --radius-sm:10px;
  --max:1200px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block;border-radius:var(--radius-sm)}
.container{max-width:var(--max);margin-inline:auto;padding:24px}

/* ====== Utility ====== */
.btn{
  display:inline-block;padding:12px 18px;border-radius:12px;
  border:1px solid var(--border);background:linear-gradient(180deg,#1a1a1e,#151518);
  color:var(--text);font-weight:600;transition:transform .12s ease, box-shadow .12s ease;
  box-shadow:var(--shadow);
}
.btn:hover{transform:translateY(-2px)}
.btn.brand{background:linear-gradient(180deg, var(--brand), #2dd4bf);color:#04110d;border:none}
.btn.secondary{background:#1a1a1d}
.btn.danger{background:linear-gradient(180deg,#f87171,#ef4444);border:none}
.badge{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}

.grid{display:grid;gap:22px}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:980px){.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.grid.cols-4,.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}}

.card{
  background:linear-gradient(180deg,#141417,#0f1012);
  border:1px solid var(--border);padding:18px;border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.card.hover:hover{outline:1px solid #2a2a33}

/* ====== Header ====== */
.header{
  position:sticky;top:0;z-index:1000;background:rgba(10,10,12,.8);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
nav .row{display:flex;align-items:center;gap:16px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:36px;width:auto}
nav a.link{padding:10px 12px;border-radius:10px;border:1px solid transparent}
nav a.link:hover{border-color:var(--border);background:#111113}
.search{flex:1;display:flex;max-width:480px;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.search input{flex:1;padding:12px 14px;background:#0f0f11;border:none;color:var(--text)}
.search button{padding:0 14px;background:#131316;border-left:1px solid var(--border);color:var(--muted)}

/* ====== Hero ====== */
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;align-items:center}
.hero h1{font-size:44px;line-height:1.1;margin:0 0 10px}
.hero p{color:var(--muted);margin:0 0 18px}
.hero .panel{padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,#121216,#0f1113)}
@media (max-width:900px){.hero{grid-template-columns:1fr}}

/* ====== Product card ====== */
.product .price{display:flex;align-items:center;gap:10px;margin:8px 0 12px}
.product .price s{color:#888}
.product .title{font-weight:700;margin:10px 0 6px}
.product .actions{display:flex;gap:10px;align-items:center}

/* ====== Footer ====== */
footer{border-top:1px solid var(--border);margin-top:40px;background:#0d0d0f}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:20px}
footer h4{margin:0 0 10px}
footer ul{margin:0;padding:0;list-style:none}
footer li{padding:6px 0;color:var(--muted)}
@media (max-width:900px){footer .cols{grid-template-columns:1fr 1fr}}

/* ====== Tables & forms ====== */
.table{width:100%;border-collapse:separate;border-spacing:0 10px}
.table th,.table td{padding:14px 16px;text-align:left}
.table tr{background:#131316;border:1px solid var(--border)}
.table th{color:#aeb0b7}
.input{display:block;width:100%;padding:12px 14px;border:1px solid var(--border);background:#0f0f11;color:var(--text);border-radius:12px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}
.label{font-size:14px;color:var(--muted);margin:10px 0 6px;display:block}

/* ====== Breadcrumbs ====== */
.breadcrumbs{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:14px;margin:10px 0 18px}
.breadcrumbs a{color:var(--text)}
