
:root{
  --bg:#0b0c10;
  --bg-soft:#111319;
  --card:#161a22;
  --muted:#9aa4b2;
  --pri:#26a69a;
  --pri-2:#2ed6c8;
  --text:#edf2f7;
  --accent:#ffd166;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;color:var(--text);background:linear-gradient(180deg,var(--bg),#0b0e14)}
a{color:inherit;text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
.btn{
  background:linear-gradient(135deg,var(--pri),var(--pri-2));
  color:#02100f;border:0;padding:10px 14px;border-radius:12px;
  font-weight:700;cursor:pointer;transition:transform .05s ease,box-shadow .25s ease;
  box-shadow:0 8px 20px rgba(38,166,154,.25);
}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(38,166,154,.35)}
.btn.outline{background:transparent;color:var(--text);border:1px solid #2b3440;box-shadow:none}
.btn.icon{display:inline-flex;align-items:center;gap:8px}
.input, textarea, select{
  width:100%;padding:10px 12px;border-radius:10px;border:1px solid #2b3440;background:#0d1016;color:var(--text);
}
.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#0e141b;color:var(--muted);font-size:12px;border:1px solid #232a36}
.grid{display:grid;gap:16px}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1024px){.grid.cols-4{grid-template-columns:repeat(3,1fr)}}
@media (max-width:768px){.grid.cols-3,.grid.cols-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}}

.card{
  background: radial-gradient(1200px 400px at 80% -100px,rgba(46,214,200,.08),transparent),
              linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0));
  border:1px solid #222a36;border-radius:16px;overflow:hidden;
}
.card .body{padding:12px 14px}
.card .footer{padding:12px 14px;border-top:1px solid #222a36;display:flex;gap:8px}
.product-img{aspect-ratio:4/3;width:100%;object-fit:cover;background:#0a0d12}
.header{
  position:sticky;top:0;z-index:30;background:rgba(11,14,20,.7);
  backdrop-filter:blur(10px);border-bottom:1px solid #222a36;
}
.nav{display:flex;gap:12px;align-items:center;padding:10px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.5px}
.logo .dot{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,var(--pri),var(--pri-2));box-shadow:0 8px 18px rgba(38,166,154,.35)}
.hero{padding:22px 0 8px}
.hero h1{font-size:32px;margin:6px 0 6px}
.hero p{color:var(--muted);margin:0 0 12px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap}
.toolbar .input{max-width:260px}
.kpis{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.kpi{padding:10px 12px;border:1px solid #222a36;border-radius:12px;background:#0d1118;color:var(--muted);font-size:12px}
.footer-site{margin-top:32px;border-top:1px solid #222a36}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;padding:16px 0}
footer p, footer li{color:var(--muted);font-size:14px}
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.45);z-index:100}
.modal.open{display:flex}
.modal-card{width:min(940px,92vw);background:#0c1016;border:1px solid #222a36;border-radius:18px;overflow:hidden}
.modal-head{padding:12px 14px;border-bottom:1px solid #222a36;display:flex;align-items:center;justify-content:space-between}
.modal-body{padding:14px}
hr{border:0;border-top:1px solid #222a36;margin:10px 0}
small{color:var(--muted)}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #222a36;padding:10px 8px;text-align:left;font-size:14px}
.table th{color:#cbd5e1;font-weight:600}
.empty{color:var(--muted);font-size:14px}
