  :root{
    --bg:#040514; --card:rgba(255,255,255,0.03);
    --accent1:#7be1ff; --accent2:#8a6bff; --warn:#ff7b6b;
    --glass: rgba(255,255,255,0.04);
  }
  *{box-sizing:border-box;font-family:Inter,system-ui,Arial,sans-serif}
  html,body{height:100%;margin:0;background:linear-gradient(180deg,#02030b 0%, #071029 60%);color:#eaf2ff;overflow:hidden}
  /* aurora background */
  .aurora {
    position:fixed;left:0;top:0;right:0;bottom:0;z-index:0;pointer-events:none;
    background: radial-gradient(800px 300px at 10% 20%, rgba(138,107,255,0.06), transparent),
                radial-gradient(600px 250px at 80% 70%, rgba(123,225,255,0.04), transparent);
    filter:blur(14px);
    mix-blend-mode:screen;
    opacity:0.95;
  }

  /* ========== Navbar ========== */
.navbar {
  position: relative;
  top: 0.5rem;
  background: transparent;
  margin-top: 10px;
  padding: 20px 20px;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
 height: 60px;
 width: 100vw;
}

.nav-links a {
  color: #f0f0f0;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.2rem;
  padding: 8px 16px; /* so background is visible */
  border-radius: 20px;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
}

/* Glassy + Glossy 3D Hover */
.nav-links a:hover {
  color: #fff;
  background: transparent; /* semi-transparent glass look */
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 
     0 2px 10px rgba(255, 255, 255, 0.167), /* soft shadow under */
    inset 0 2px 3px rgba(116, 106, 204, 0.753); /* inner glossy shine */
  transform: translateY(-3px); /* subtle 3D lift */
}

  /* meteors canvas behind UI */
  #meteorCanvas{position:fixed;left:0;top:0;width:100%;height:100%;z-index:1;pointer-events:none;mix-blend-mode:screen;opacity:0.9}

  /* layout */
  .app{position:relative;z-index:5;display:grid;grid-template-columns:360px 1fr 360px;gap:18px;padding:24px;height:100vh}
  @media (max-width:1100px){ .app{grid-template-columns:1fr;grid-auto-rows:min-content;height:auto;padding:18px} #meteorCanvas{display:none} }

  /* left control column */
  .left{
    border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.02), transparent);
    padding:16px;border:1px solid rgba(255,255,255,0.03);backdrop-filter: blur(6px);
  }
  .logo{display:flex;align-items:center;gap:10px}
  .logo .badge{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--accent1),var(--accent2));display:flex;align-items:center;justify-content:center;font-weight:800;color:#041028}
  h1{font-size:18px;margin:6px 0 2px}
  .muted{color:#a9b7d6;font-size:13px}

  .dial {margin:12px 0;padding:12px;border-radius:10px;background:var(--glass);border:1px solid rgba(255,255,255,0.02)}
  .dial label{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}
  .dial input[type=range]{width:100%;margin-top:8px}

  .preset-row{display:flex;gap:8px;margin-top:8px}
  .preset {flex:1;padding:8px;border-radius:8px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);text-align:center;cursor:pointer;border:1px solid rgba(255,255,255,0.02)}

  .btn-row{display:flex;gap:8px;margin-top:12px}
  .btn {padding:10px;border-radius:10px;border:none;cursor:pointer}
  .btn.primary {background:linear-gradient(90deg,var(--accent1),var(--accent2));color:#041028;font-weight:700}
  .btn.ghost {background:transparent;border:1px solid rgba(255,255,255,0.05);color:var(--muted)}

  /* center map */
  .center {border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,0.03);position:relative;background:linear-gradient(180deg, rgba(0,0,0,0.2), transparent)}
  #map {height:100%;min-height:520px}
  #overlayCanvas{position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;z-index:60}

  /* right analytics */
  .right{border-radius:12px;padding:14px;background:linear-gradient(180deg, rgba(255,255,255,0.02), transparent);border:1px solid rgba(255,255,255,0.03)}
  .stat {background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);padding:12px;border-radius:10px;margin-bottom:10px}
  .stat h3{margin:0;font-size:13px;color:var(--muted)}
  .stat .big{font-size:20px;font-weight:800;margin-top:6px}

  /* modal */
  .modal-back{position:fixed;inset:0;background:rgba(2,6,18,0.6);display:none;align-items:center;justify-content:center;z-index:9999}
  .modal{width:420px;background:#061025;padding:16px;border-radius:10px;border:1px solid rgba(255,255,255,0.03)}
  .modal h3{margin:0;color:var(--accent1)}

  footer{position:fixed;left:0;right:0;bottom:8px;text-align:center;color:#9fb3d9;font-size:13px;z-index:20}

  /* small responsive tweak to stack */
  @media (max-width:1100px){
    .left,.right{order:2}
    .center{order:1}
  }
