:root{
  --bg1:#071019; --bg2:#0a1422;
  --card:rgba(255,255,255,.06);
  --line:rgba(255,255,255,.10);
  --txt:#e9eef7; --mut:#b7c2d6;
  --accent:rgba(130,180,255,.18);
  --shadow:0 20px 70px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--txt);
  background:
    radial-gradient(1100px 520px at 20% 0%, #152a46 0%, var(--bg1) 55%),
    radial-gradient(900px 420px at 90% 15%, #12243d 0%, var(--bg2) 60%);
}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding:18px}

.glass{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:22px;
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
}

.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;gap:14px}
.brand{display:flex;gap:10px;align-items:center;min-width:240px}
.logo{width:34px;height:34px;border-radius:12px;
  background: radial-gradient(circle at 30% 30%, #7db6ff 0%, #2c4a74 55%, #1b2a45 100%);
  border:1px solid rgba(255,255,255,.14);
}
.brandTxt{display:flex;flex-direction:column;line-height:1.1}
.brandTxt b{font-size:16px;letter-spacing:.2px}
.brandTxt span{font-size:12px;color:var(--mut)}

.nav{display:flex;gap:10px;align-items:center;color:var(--mut);font-size:14px;flex-wrap:wrap}
.nav a{padding:8px 10px;border-radius:12px}
.nav a:hover{background:rgba(255,255,255,.06);color:var(--txt)}

.search{
  display:flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:var(--mut); font-size:13px;
}
kbd{font-size:12px;color:var(--mut);border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.18);padding:2px 6px;border-radius:8px}

.grid{display:grid;gap:18px;margin-top:18px;grid-template-columns: 1.35fr .65fr}
.hero{padding:26px}
.hero h1{margin:0 0 10px;font-size:42px;letter-spacing:-.6px}
.hero p{margin:0;color:var(--mut);max-width:72ch}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07)}
.btn.primary{background:var(--accent);border-color:rgba(130,180,255,.30)}
.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.pill{padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);color:var(--mut);font-size:12px}

.side{padding:18px}
.side h3{margin:0 0 10px;font-size:14px;color:var(--mut);letter-spacing:.2px}
.card{padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05)}
.card + .card{margin-top:12px}
.card b{display:block;font-size:14px;margin-bottom:4px}
.card span{color:var(--mut);font-size:12px}

.row3{display:grid;gap:14px;margin-top:18px;grid-template-columns: repeat(3, 1fr)}
.tile{padding:16px}
.tile b{display:block;margin-bottom:6px}
.tile span{color:var(--mut);font-size:13px}

.banner{margin-top:18px;padding:16px 18px;display:grid;grid-template-columns:1fr .45fr;gap:14px;align-items:center}
.banner b{font-size:14px}
.banner span{color:var(--mut);font-size:13px}
.ad{opacity:.9;border:1px dashed rgba(255,255,255,.16);background:rgba(255,255,255,.03);border-radius:18px}

.footer{margin-top:22px;padding:14px 16px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  color:var(--mut);font-size:12px;border-top:1px solid rgba(255,255,255,.08)}
.smalllinks{display:flex;gap:12px;flex-wrap:wrap}

@media (max-width: 980px){
  .grid{grid-template-columns:1fr}
  .row3{grid-template-columns:1fr}
  .banner{grid-template-columns:1fr}
  .hero h1{font-size:34px}
  .topbar{flex-direction:column;align-items:stretch}
}

/* --- NAV DROPDOWNS (CoreNetwork v1) --- */
.navbar{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 16px;
}
.navleft{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.navlinks{display:flex;gap:6px;align-items:center;flex-wrap:wrap;color:var(--mut);font-size:14px}
.navlinks a,.ddBtn{
  padding:8px 10px;border-radius:12px;display:inline-flex;align-items:center;gap:8px;
}
.navlinks a:hover,.ddBtn:hover{background:rgba(255,255,255,.06);color:var(--txt)}
.dd{position:relative}
.ddBtn{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:var(--mut);
  cursor:pointer;
}
.ddBtn .chev{opacity:.8;font-size:12px}
.ddMenu{
  position:absolute;left:0;top:46px;min-width:320px;
  padding:10px;border-radius:18px;border:1px solid rgba(255,255,255,.12);
  background:rgba(10,18,30,.92);
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
  display:none;
  z-index:50;
}
.ddMenu.open{display:block}
.ddItem{
  display:flex;justify-content:space-between;gap:12px;
  padding:10px 10px;border-radius:14px;color:var(--txt);
}
.ddItem:hover{background:rgba(255,255,255,.06)}
.ddItem span{color:var(--mut);font-size:12px}
.ddTitle{
  padding:8px 10px;color:var(--mut);font-size:12px;letter-spacing:.2px;
}
@media (max-width: 980px){
  .ddMenu{position:static;top:auto;min-width:unset;margin-top:8px}
}
/* ------------------------------------- */

/* ---- DROPDOWN HARD FIX (prevent always-open) ---- */
.ddMenu { 
  display: none !important;
  position: absolute;
  left: 0;
  top: 46px;
  min-width: 320px;
}
.ddMenu.open { display: block !important; }

.dd { position: relative; }
.ddItem { display:flex !important; justify-content:space-between !important; gap:12px !important; }
.ddItem span { display:block !important; }

/* Mobile: keep menus closed by default, open only when .open */
@media (max-width: 980px){
  .ddMenu {
    position: static !important;
    min-width: unset !important;
    margin-top: 8px !important;
  }
}
/* ----------------------------------------------- */

/* === FIX: Dropdown must float, not push layout === */
.dd{ position: relative !important; }

.ddMenu{
  display: none !important;
  position: absolute !important;
  top: 46px !important;
  left: 0 !important;
  min-width: 360px !important;
  margin-top: 0 !important;
  max-height: 70vh !important;
  overflow: auto !important;
  z-index: 9999 !important;
}

.ddMenu.open{ display: block !important; }

/* Mobile: keep floating too (no static flow menus) */
@media (max-width: 980px){
  .ddMenu{
    position: absolute !important;
    min-width: unset !important;
    width: min(92vw, 420px) !important;
  }
}
/* ================================================ */

/* === NAV DROPDOWNS v2 (details/summary - robust) === */
.navlinks{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--mut);font-size:14px}

.dd{position:relative}
.dd > summary{
  list-style:none;
  cursor:pointer;
  padding:8px 10px;border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  display:inline-flex;align-items:center;gap:8px;
}
.dd > summary::-webkit-details-marker{display:none}
.dd > summary:hover{background:rgba(255,255,255,.06);color:var(--txt)}
.dd > summary .chev{opacity:.8;font-size:12px}

.ddMenu{
  display:none;
  position:absolute;
  top:46px;left:0;
  width:360px;
  max-height:70vh;
  overflow:auto;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(10,18,30,.92);
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
  z-index:9999;
}
.dd[open] .ddMenu{display:block}

.ddTitle{padding:8px 10px;color:var(--mut);font-size:12px;letter-spacing:.2px}
.ddItem{
  display:flex;justify-content:space-between;gap:12px;
  padding:10px 10px;border-radius:14px;
}
.ddItem:hover{background:rgba(255,255,255,.06)}
.ddItem span{color:var(--mut);font-size:12px}

/* Mobile: dropdown becomes normal flow (but still only when open) */
@media (max-width: 980px){
  .ddMenu{
    position:static;
    width:min(92vw, 520px);
    margin-top:8px;
  }
}
/* ================================================ */

/* === NAV DROPDOWNS v2 (details/summary - robust) === */
.navlinks{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--mut);font-size:14px}

.dd{position:relative}
.dd > summary{
  list-style:none;
  cursor:pointer;
  padding:8px 10px;border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  display:inline-flex;align-items:center;gap:8px;
}
.dd > summary::-webkit-details-marker{display:none}
.dd > summary:hover{background:rgba(255,255,255,.06);color:var(--txt)}
.dd > summary .chev{opacity:.8;font-size:12px}

.ddMenu{
  display:none;
  position:absolute;
  top:46px;left:0;
  width:360px;
  max-height:70vh;
  overflow:auto;
  padding:10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(10,18,30,.92);
  backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
  z-index:9999;
}
.dd[open] .ddMenu{display:block}

.ddTitle{padding:8px 10px;color:var(--mut);font-size:12px;letter-spacing:.2px}
.ddItem{
  display:flex;justify-content:space-between;gap:12px;
  padding:10px 10px;border-radius:14px;
}
.ddItem:hover{background:rgba(255,255,255,.06)}
.ddItem span{color:var(--mut);font-size:12px}

/* Mobile: dropdown becomes normal flow (but still only when open) */
@media (max-width: 980px){
  .ddMenu{
    position:static;
    width:min(92vw, 520px);
    margin-top:8px;
  }
}
/* ================================================ */

/* === NAV HORIZONTAL FIX (details) === */
.navbar{display:flex !important; align-items:center !important; justify-content:space-between !important; gap:14px !important;}
.navlinks{display:flex !important; flex-direction:row !important; align-items:center !important; gap:10px !important; flex-wrap:nowrap !important;}
.dd{display:inline-flex !important;}
.dd > summary{display:inline-flex !important; white-space:nowrap !important;}
.navlinks > a{white-space:nowrap !important;}
/* Keep it horizontal on desktop; allow wrap only on small screens */
@media (max-width: 980px){
  .navlinks{flex-wrap:wrap !important;}
}
/* ==================================== */

/* === NAV HORIZONTAL FIX v2 (force details inline) === */
header.navbar, header.glass.navbar, .navbar{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}

header .navlinks{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
}

/* Force DETAILS to behave like inline menu items */
header .navlinks details{
  display:inline-flex !important;
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
}

header .navlinks summary{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  white-space:nowrap !important;
  list-style:none !important;
  cursor:pointer !important;
}

/* Remove default disclosure marker (triangle) */
header .navlinks summary::marker{content:"" !important;}
header .navlinks summary::-webkit-details-marker{display:none !important;}

header .navlinks > a{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
}

/* Keep horizontal on desktop; allow wrap only on small screens */
@media (max-width: 980px){
  header .navlinks{flex-wrap:wrap !important;}
}
/* ================================================ */

/* === FINAL DROPDOWN ENABLE (wins vs older !important rules) === */
/* Close by default */
header .navlinks .ddMenu { 
  display: none !important;
}

/* Open when details is open */
header .navlinks details[open] .ddMenu {
  display: block !important;
}

/* Panel look + floating */
header .navlinks details { position: relative !important; }
header .navlinks .ddMenu{
  position: absolute !important;
  top: 46px !important;
  left: 0 !important;
  width: 360px !important;
  max-height: 70vh !important;
  overflow: auto !important;
  z-index: 9999 !important;
  padding: 10px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(10,18,30,.92) !important;
  backdrop-filter: blur(12px) !important;
  box-shadow: var(--shadow) !important;
}

/* Mobile: still works, panel becomes inline (but only when open) */
@media (max-width: 980px){
  header .navlinks .ddMenu{
    position: static !important;
    width: min(92vw, 520px) !important;
    margin-top: 8px !important;
  }
}
/* ============================================================ */

/* === DROPDOWN ON TOP (z-index fix) === */
header.navbar, .navbar{
  position: relative !important;
  z-index: 5000 !important;
}

header .navlinks details{
  position: relative !important;
  z-index: 6000 !important;
}

header .navlinks .ddMenu{
  z-index: 99999 !important;
}

/* Ensure main content stays below header stack */
.grid, .row3, .banner, .footer, main, section{
  position: relative;
  z-index: 1;
}
/* ==================================== */
