*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ── DARK MODE (default) ── */
:root{
  --bg:#07050f;
  --bg2:#0d0918;
  --surface:#130e22;
  --surface2:#1a1230;
  --border:rgba(160,100,255,0.14);
  --border2:rgba(160,100,255,0.28);
  --accent:#a855f7;
  --accent2:#6d28d9;
  --accent3:#34d399;
  --text:#ede9ff;
  --muted:#6b5e8a;
  --muted2:#8b7aaa;
  --green:#34d399;
  --orange:#fb923c;
  --red:#f87171;
  --shadow:rgba(0,0,0,0.4);
}

/* ── LIGHT MODE ── */
html.light{
  --bg:#f4f2ff;
  --bg2:#ece8ff;
  --surface:#ffffff;
  --surface2:#f0ecff;
  --border:rgba(120,60,210,0.15);
  --border2:rgba(120,60,210,0.3);
  --accent:#7c3aed;
  --accent2:#5b21b6;
  --accent3:#059669;
  --text:#1a1040;
  --muted:#7c6fa0;
  --muted2:#5a4d7a;
  --green:#059669;
  --orange:#d97706;
  --red:#dc2626;
  --shadow:rgba(120,60,210,0.08);
}

html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--text);
  font-family:'Inter',system-ui,sans-serif;
  min-height:100vh;overflow-x:hidden;
  font-size:15px;line-height:1.6;
  transition:background .3s,color .3s;
}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  height:64px;padding:0 2rem;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(7,5,15,0.88);backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);transition:background .3s;
}
html.light nav{background:rgba(244,242,255,0.92)}
.nav-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text)}
.nav-logo-text{font-family:'Inter',sans-serif;font-weight:800;font-size:1.05rem;letter-spacing:.04em}
.nav-logo-text span{color:var(--accent)}
.nav-center{display:flex;align-items:center}
.nav-link{padding:.5rem 1rem;font-size:.88rem;color:var(--muted2);text-decoration:none;transition:color .2s;white-space:nowrap;font-weight:500;letter-spacing:.02em}
.nav-link:hover,.nav-link.active{color:var(--text)}
.nav-link.active{color:var(--accent)}
.nav-dropdown{position:relative}
.nav-dropdown-btn{display:flex;align-items:center;gap:.3rem;padding:.5rem 1rem;font-size:.88rem;color:var(--muted2);cursor:pointer;background:none;border:none;font-family:inherit;transition:color .2s;font-weight:500}
.nav-dropdown-btn:hover{color:var(--text)}
.nav-dropdown-btn svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;transition:transform .2s}
.nav-dropdown:hover .nav-dropdown-btn svg{transform:rotate(180deg)}
.nav-dropdown-menu{position:absolute;top:100%;left:0;min-width:180px;background:var(--bg2);border:1px solid var(--border2);padding:.4rem 0;opacity:0;pointer-events:none;transform:translateY(8px);transition:all .2s;box-shadow:0 8px 24px var(--shadow)}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;pointer-events:all;transform:translateY(0)}
.nav-dropdown-item{display:block;padding:.6rem 1.2rem;font-size:.85rem;color:var(--muted2);text-decoration:none;transition:all .2s}
.nav-dropdown-item:hover{color:var(--text);background:var(--surface);padding-left:1.6rem}
.nav-right{display:flex;align-items:center;gap:.6rem}

/* Theme toggle button */
.btn-theme{
  width:36px;height:36px;border:1px solid var(--border2);background:none;
  cursor:pointer;color:var(--muted2);display:flex;align-items:center;justify-content:center;
  transition:all .2s;border-radius:8px;font-size:1rem;
}
.btn-theme:hover{border-color:var(--accent);color:var(--accent)}

.btn-admin-nav{
  width:36px;height:36px;border:1px solid var(--border2);background:none;
  cursor:pointer;color:var(--muted2);display:flex;align-items:center;justify-content:center;
  transition:all .2s;border-radius:8px;
}
.btn-admin-nav:hover{border-color:var(--accent);color:var(--accent)}
.btn-admin-nav svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}

.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.4rem}
.nav-hamburger span{width:22px;height:1.5px;background:var(--text);display:block;transition:.3s}

/* ── FOOTER ── */
footer{background:var(--bg2);border-top:1px solid var(--border);padding:3rem 2rem}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem}
.footer-logo{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem;text-decoration:none;color:var(--text)}
.footer-logo-text{font-family:'Inter',sans-serif;font-weight:800;font-size:1rem;letter-spacing:.04em}
.footer-logo-text span{color:var(--accent)}
.footer-desc{font-size:.88rem;color:var(--muted);line-height:1.75;margin-bottom:1.2rem}
.footer-socials{display:flex;gap:.6rem}
.footer-social{width:32px;height:32px;border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--muted2);transition:all .2s;border-radius:6px}
.footer-social:hover{border-color:var(--accent);color:var(--accent)}
.footer-social svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}
.footer-col h4{font-size:.78rem;font-weight:700;color:var(--text);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.9rem;font-family:'Syne',sans-serif}
.footer-col a{display:block;font-size:.88rem;color:var(--muted);text-decoration:none;margin-bottom:.45rem;transition:color .2s}
.footer-col a:hover{color:var(--accent)}
.footer-bottom{max-width:1200px;margin:2rem auto 0;padding-top:1.5rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;font-size:.8rem;color:var(--muted);font-family:'Share Tech Mono',monospace;letter-spacing:.04em}

/* ── COMMON ── */
.page-wrap{padding-top:64px;min-height:100vh}
.container{max-width:1200px;margin:0 auto;padding:0 2rem}

.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .65rem;font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;border-radius:4px}
.badge-mainnet{background:rgba(52,211,153,.1);color:var(--green);border:1px solid rgba(52,211,153,.2)}
.badge-testnet{background:rgba(168,85,247,.1);color:var(--accent);border:1px solid rgba(168,85,247,.2)}
.badge-upcoming{background:rgba(251,146,60,.1);color:var(--orange);border:1px solid rgba(251,146,60,.2)}
.badge-active{background:rgba(52,211,153,.08);color:var(--green);border:1px solid rgba(52,211,153,.15)}
.badge-inactive{background:rgba(107,94,138,.08);color:var(--muted2);border:1px solid var(--border)}

.dot{display:inline-block;width:6px;height:6px;border-radius:50%}
.dot-green{background:var(--green);box-shadow:0 0 6px var(--green);animation:blink 2s infinite}
.dot-purple{background:var(--accent);box-shadow:0 0 6px var(--accent);animation:blink 2.5s infinite}
.dot-orange{background:var(--orange)}
.dot-gray{background:var(--muted)}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.4}}

.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.6rem;background:var(--accent);color:#fff;font-weight:700;font-size:.9rem;text-decoration:none;border:none;cursor:pointer;transition:all .2s;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);font-family:'Inter',sans-serif;letter-spacing:.04em}
.btn-primary:hover{background:var(--accent2);transform:translateY(-1px)}
.btn-outline{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.6rem;background:transparent;color:var(--text);font-weight:600;font-size:.9rem;text-decoration:none;border:1px solid var(--border2);cursor:pointer;transition:all .2s;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);font-family:'Inter',sans-serif;letter-spacing:.04em}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}

.section-eyebrow{font-family:'Share Tech Mono',monospace;font-size:.8rem;font-weight:600;color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.6rem;display:flex;align-items:center;gap:.7rem}
.section-eyebrow::before{content:'';display:block;width:24px;height:1px;background:var(--accent)}
.section-title{font-family:'Inter',sans-serif;font-size:clamp(2rem,3.5vw,3rem);font-weight:800;line-height:1.15;color:var(--text)}
.section-title em{font-style:normal;color:var(--accent)}
.section-sub{font-size:1rem;color:var(--muted2);line-height:1.8;margin-top:.8rem}

/* ── PAGE HERO ── */
.page-hero{padding:5rem 2rem 3rem;background:linear-gradient(to bottom,rgba(168,85,247,.06) 0%,transparent 100%);border-bottom:1px solid var(--border)}
.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--muted);margin-bottom:1rem}
.breadcrumb a{color:var(--muted2);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--accent)}

/* ── TOAST ── */
.toast{position:fixed;bottom:2rem;right:2rem;z-index:500;padding:.8rem 1.4rem;background:var(--surface);border:1px solid var(--green);font-size:.85rem;color:var(--green);transform:translateY(20px);opacity:0;transition:all .3s;font-family:'Share Tech Mono',monospace;letter-spacing:.05em;border-radius:6px}
.toast.show{transform:translateY(0);opacity:1}
.toast.error{border-color:var(--red);color:var(--red)}

/* ── PROJECT LOGO / ICON ── */
.proj-icon{
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;border:1px solid var(--border);background:var(--surface2);
  flex-shrink:0;
}
.proj-icon img{width:100%;height:100%;object-fit:contain}
.proj-icon-fb{
  font-family:'Inter',sans-serif;font-weight:800;color:var(--accent);
  text-transform:uppercase;line-height:1;
}

/* ── TABLET ── */
@media(max-width:1024px){
  .footer-inner{grid-template-columns:1fr 1fr}
}

/* ── MOBILE ── */
@media(max-width:768px){
  nav{padding:0 1rem}
  .nav-center,.nav-right{display:none}
  .nav-hamburger{display:flex}
  .nav-logo-text{font-size:.95rem}

  body{font-size:14px;-webkit-text-size-adjust:100%}

  .container{padding:0 1rem}
  .page-wrap{padding-top:64px}

  .section-title{font-size:1.7rem}
  .section-sub{font-size:.9rem}

  .footer-inner{grid-template-columns:1fr 1fr;gap:1.5rem}
  .footer-bottom{flex-direction:column;gap:.8rem;text-align:center;font-size:.72rem}
  .footer-col{grid-column:span 1}
  .footer-brand{grid-column:span 2}

  .btn-primary,.btn-outline{font-size:.82rem;padding:.6rem 1.2rem}
}

/* ── SMALL MOBILE ── */
@media(max-width:480px){
  .nav-logo-text{font-size:.88rem;letter-spacing:.02em}
  body{font-size:13.5px}
  .section-title{font-size:1.5rem}
  .footer-inner{grid-template-columns:1fr}
  .footer-brand{grid-column:span 1}
}
