:root{--bg:#0f1724;--card:#0b1220;--accent:#06b6d4;--muted:#94a3b8;--glass:rgba(255,255,255,0.03)}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;color:#e6eef8;background:linear-gradient(180deg,#071024 0%, #071b2a 100%);-webkit-font-smoothing:antialiased}
.container{max-width:1000px;margin:48px auto;padding:24px}
.nav{display:flex;justify-content:space-between;align-items:center;gap:16px}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--accent),#7c3aed);display:flex;align-items:center;justify-content:center;color:#042027;font-weight:700}
.title{font-size:18px;font-weight:700}
.subtitle{font-size:13px;color:var(--muted);margin-top:2px}

/* Toolbar styles */
.toolbar-list{display:flex;gap:8px;align-items:center}
.toolbar-item{position:relative;display:flex;align-items:center;gap:6px}
.navlink{background:transparent;border:1px solid var(--glass);color:#cfeafb;padding:8px 12px;border-radius:8px;text-decoration:none}
.dd-toggle{background:transparent;border:1px solid var(--glass);color:#cfeafb;padding:8px 10px;border-radius:8px;cursor:pointer}
.dropdown{position:absolute;left:0;right:auto;top:calc(100% + 8px);background:linear-gradient(180deg,#061427, #071a2b);border:1px solid rgba(255,255,255,0.04);border-radius:10px;padding:8px;min-width:220px;box-shadow:0 8px 30px rgba(2,6,23,0.6);display:none;z-index:40}
.dropdown a{display:block;color:#dff4fb;padding:8px;border-radius:6px;text-decoration:none}
.dropdown a:hover{background:rgba(255,255,255,0.02)}

.hero{display:flex;gap:28px;align-items:center;margin-top:36px}
.hero-left{flex:1}
h1{margin:0;font-size:32px;line-height:1.05}
p.lead{color:var(--muted);margin-top:12px;font-size:16px}
.cta{margin-top:18px}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;background:var(--accent);color:#022; font-weight:600;text-decoration:none}
.card{background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent);border:1px solid rgba(255,255,255,0.03);padding:18px;border-radius:12px}
.skills{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.chip{background:rgba(255,255,255,0.03);padding:6px 10px;border-radius:999px;color:var(--muted);font-size:13px}
footer{margin-top:54px;color:var(--muted);font-size:14px;text-align:center}

@media(max-width:760px){
  .toolbar-list{display:none}
  .menu-toggle-mobile{display:inline-block}
  .nav{position:relative}
  /* when opened on mobile, show vertically as an overlay (don't push page content) */
  /* align mobile menu to the right to reduce cursor travel */
  .toolbar-list.mobile-open{display:flex;flex-direction:column;align-items:flex-end;width:100%;gap:6px;padding:12px;background:linear-gradient(180deg,#071424,#061224);position:absolute;left:0;right:0;top:calc(100% + 8px);box-shadow:0 12px 40px rgba(2,6,23,0.6);z-index:60}
  .toolbar-list.mobile-open .navlink{width:100%;text-align:right}
  /* dropdowns remain absolute and overlay (open to the left/right as needed) */
  .toolbar-list.mobile-open .toolbar-item{position:relative}
  /* dropdowns should stick to the right on mobile */
  .toolbar-list.mobile-open .dropdown{position:absolute;top:calc(100% + 6px);right:0;left:auto;min-width:160px;box-shadow:0 8px 20px rgba(2,6,23,0.6)}
}

/* sub-dropdowns (dropdown inside dropdown) should open to the left */
.dropdown .dropdown{right:0;left:auto;top:0;margin-left:0;margin-right:calc(100% + 8px)}
@media(min-width:761px){
  .menu-toggle-mobile{display:none}
}

@media(max-width:720px){.hero{flex-direction:column;align-items:flex-start}.container{margin:18px;padding:16px}.title{font-size:16px}h1{font-size:26px}}

/* Page container styles used by pages/* */
.wrap{max-width:980px;margin:40px auto;padding:20px}
.muted{color:#94a3b8}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}
.list{margin-top:16px;color:#94a3b8}
.card-small{background:rgba(255,255,255,0.03);padding:14px;border-radius:10px;border:1px solid rgba(255,255,255,0.02)}

/* Social bubbles */
.social-bubbles{display:flex;gap:10px;align-items:center;margin-top:8px}
.bubble{width:44px;height:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#022;font-weight:700;text-decoration:none}
.bubble.github{background:#24292f}
.bubble.linkedin{background:#0a66c2;color:#fff}
.bubble.x{background:#1da1f2;color:#fff}
.substack-embed{width:100%;min-height:340px;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,0.03);background:linear-gradient(180deg,#061427,#071a2b);padding:12px}
