:root{
  --bg0:#070a12;
  --bgCanvas:#0b1220;
  --bgNav:rgba(11,18,32,.92);
  --card:#0f1a30;
  --card2:#101c36;
  --border:rgba(255,255,255,.12);
  --text:#e8eefc;
  --muted:#b6c6f2;
  --muted2:#8fa6de;
  --brand:#6d5efc;
  --brand2:#49d7ff;
  --danger:#ff5e7a;
  --ok:#33d6a6;
  --shadow: 0 16px 60px rgba(0,0,0,.38);
  --radius: 18px;
  --radius2: 14px;
  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

[data-theme="light"]{
  --bg0:#f7f8fb;
  --bgCanvas:#ffffff;
  --bgNav:rgba(255,255,255,.85);
  --card:#ffffff;
  --card2:#ffffff;
  --border:#e6e8f0;
  --text:#0d1630;
  --muted:#43507a;
  --muted2:#6676a8;
  --shadow: 0 16px 50px rgba(16,24,40,.12);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--font);
  background: radial-gradient(1200px 800px at 20% -10%, rgba(109,94,252,.25), transparent 55%),
              radial-gradient(1000px 700px at 110% 0%, rgba(73,215,255,.18), transparent 45%),
              var(--bg0);
  color:var(--text);
}

a{color:inherit;text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.nav{
  position:sticky;top:0;z-index:50;
  backdrop-filter: blur(10px);
  background:var(--bgNav);
  border-bottom:1px solid var(--border);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:12px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
.brand-badge{
  width:34px;height:34px;border-radius:12px;
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:0 10px 25px rgba(109,94,252,.25);
}
.nav-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 12px;border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.04);
  color:var(--text);
  transition: transform .15s ease, background .15s ease;
}
.pill:hover{transform: translateY(-1px); background: rgba(255,255,255,.06)}
.pill.active{border-color: rgba(109,94,252,.55); box-shadow: 0 0 0 4px rgba(109,94,252,.12)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg,var(--brand),rgba(109,94,252,.55));
  color:white;font-weight:800;cursor:pointer;
  box-shadow:0 10px 30px rgba(109,94,252,.18);
}
.btn.secondary{
  background:rgba(255,255,255,.04);
  color:var(--text);
}
.btn.danger{background:rgba(255,94,122,.15);border-color:rgba(255,94,122,.25)}
.btn:disabled{opacity:.55;cursor:not-allowed}
.hero{
  padding:44px 0 22px;
}
.banner-strip{
  margin:18px 0 0;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius: 16px;
  background: rgba(255,255,255,.04);
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}
.banner-strip .banner-text{color:var(--muted);font-size:13px;line-height:1.4}
.hero-slider{position:relative}
.hero-slide{display:none}
.hero-slide.is-active{display:block}
.hero-media{
  margin-top:14px;
  border-radius:16px;
  border:1px solid var(--border);
  overflow:hidden;
  background: rgba(255,255,255,.02);
}
.hero-media img{display:block;width:100%;height:220px;object-fit:cover}
.hero-card{
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding:28px;
  position:relative;
  overflow:hidden;
}
.hero-card:before{
  content:"";
  position:absolute;inset:-50px;
  background: radial-gradient(circle at 25% 10%, rgba(109,94,252,.35), transparent 45%),
              radial-gradient(circle at 80% 0%, rgba(73,215,255,.22), transparent 35%);
  filter: blur(8px);
}
.hero-card>*{position:relative}
.h1{font-size:40px;line-height:1.12;margin:0 0 8px;font-weight:900;letter-spacing:-.02em}
.p{color:var(--muted);margin:0 0 18px;max-width:70ch;font-size:16px;line-height:1.55}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  grid-column: span 6;
  background: var(--card);
  border:1px solid var(--border);
  border-radius: var(--radius);
  padding:18px;
  box-shadow: var(--shadow);
}
.card h3{margin:0 0 6px;font-size:18px}
.card .meta{color:var(--muted2);font-size:13px}
.kpi{
  display:flex;gap:10px;flex-wrap:wrap;margin-top:10px
}
.tag{
  font-size:12px;
  padding:6px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  color:var(--muted);
  background:rgba(255,255,255,.04);
}
.section{padding:18px 0 60px}
.table{width:100%;border-collapse:separate;border-spacing:0 10px}
.tr{background:var(--card2);border:1px solid var(--border);border-radius:14px;overflow:hidden}
.tr td{padding:12px 12px;border-top:1px solid transparent}
.tr td:first-child{border-top-left-radius:14px;border-bottom-left-radius:14px}
.tr td:last-child{border-top-right-radius:14px;border-bottom-right-radius:14px}
.input, textarea{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
  color: var(--text);
  outline:none;
}
textarea{min-height:120px;resize:vertical}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.small{font-size:13px;color:var(--muted2)}
.footer{padding:28px 0;border-top:1px solid var(--border);color:var(--muted2)}
.toast-wrap{position:fixed;right:16px;top:72px;display:flex;flex-direction:column;gap:10px;z-index:1000}
.toast{
  background: var(--card);
  border:1px solid var(--border);
  border-left:4px solid rgba(255,255,255,.18);
  padding:12px 14px;border-radius:14px;
  box-shadow: var(--shadow);
  min-width: 260px;
  transform: translateY(-4px);
  opacity:0;
  animation: toastIn .22s ease forwards;
}
.toast.success{border-left-color: rgba(51,214,166,.85)}
.toast.error{border-left-color: rgba(255,94,122,.85)}
.toast.info{border-left-color: rgba(73,215,255,.85)}
@keyframes toastIn{to{opacity:1;transform:translateY(0)}}

/* ---------- Mobile hamburger ---------- */
.hamburger{
  display:none;
  width:44px;height:44px;
  border-radius:14px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0;
}
.hamburger span{
  display:block;
  width:18px;height:2px;
  background:currentColor;
  border-radius:2px;
  transition:transform .18s ease, opacity .18s ease;
}
.hamburger.is-open span:nth-child(1){transform: translateY(6px) rotate(45deg)}
.hamburger.is-open span:nth-child(2){opacity:0}
.hamburger.is-open span:nth-child(3){transform: translateY(-6px) rotate(-45deg)}

/* Mobile dropdown container */
.nav-links{
  display:flex; /* desktop stays same */
}

@media (max-width: 840px){
  .nav-inner{align-items:flex-start}

  /* show hamburger */
  .hamburger{display:inline-flex}

  /* collapse links by default */
  .nav-links{
    width:100%;
    display:none;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid var(--border);
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }

  /* open state */
  .nav-links.is-open{display:flex}

  /* make pills & buttons full width on mobile */
  .pill, .btn{width:100%; justify-content:center}
}

@media (max-width: 840px){
  .card{grid-column: span 12}
  .h1{font-size:32px}
  .row{grid-template-columns:1fr}
}
