:root{
  --bg: #0f1720;
  --card: #0f1720;
  --panel: #111420;
  --text: #e6e6e6;
  --muted: #9aa3ad;
  --accent: #f59e0b;
  --glass: rgba(255,255,255,0.03);
}
@media (prefers-color-scheme: light){
  :root{
    --bg: #faf6f0;
    --card: #ffffff;
    --panel: #fbf7f3;
    --text: #3b312b;
    --muted: #6b6b6b;
    --accent: #c2410c;
    --glass: rgba(59,49,43,0.04);
  }
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial;
  background: radial-gradient(900px 400px at 10% 10%, rgba(245,158,11,0.06), transparent), var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1100px;margin:0 auto;padding:1rem}

/* NAV */
.top-nav{backdrop-filter: blur(6px);position:sticky;top:0;z-index:40}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:.6rem 0}
.brand{font-weight:700;color:var(--text);text-decoration:none}
.nav-links{list-style:none;display:flex;gap:1rem;margin:0;padding:0}
.nav-links a{color:var(--muted);text-decoration:none;font-weight:600}
.nav-theme{background:transparent;border:1px solid var(--glass);color:var(--text);padding:.4rem .6rem;border-radius:8px;cursor:pointer}

/* HERO */
.hero{padding:4rem 0 3rem}
.hero-inner{display:flex;gap:2rem;align-items:center}
.hero-text{flex:1}
.hero-text h1{font-size:2.2rem;margin:0 0 .6rem}
.lead{color:var(--muted);margin:.4rem 0 1rem}
.hero-card{width:320px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));border-radius:12px;padding:1rem;border:1px solid var(--glass)}
.meta h3{margin:0 0 .4rem}

.hero-cta{display:flex;gap:.8rem;margin-top:1rem}
.btn{background:var(--accent);color:#111;padding:.6rem .9rem;border-radius:8px;text-decoration:none;font-weight:600}
.btn-outline{background:transparent;border:1px solid var(--glass);color:var(--text)}

.typing{margin-top:.6rem;font-weight:600;color:var(--accent)}
.cursor{opacity:1;animation:blink 1s steps(2,end) infinite}
@keyframes blink{50%{opacity:0}}

/* PROJECTS GRID */
.section{padding:2.25rem 0}
.section-title{font-size:1.5rem;margin:0 0 1rem}
.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.project{background:var(--panel);border-radius:10px;overflow:hidden;border:1px solid var(--glass);box-shadow:0 8px 30px rgba(0,0,0,0.25)}
.project img{width:100%;height:160px;object-fit:cover;display:block}
.project h3{margin:.6rem .8rem 0}
.project p{margin:.4rem .8rem 1rem;color:var(--muted)}

/* ABOUT */
.about-section .about-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 320px;gap:1rem}
.contact-form{background:var(--panel);padding:1rem;border-radius:10px;border:1px solid var(--glass)}
.contact-form label{display:block;margin-bottom:.6rem;color:var(--muted)}
.contact-form input,.contact-form textarea{width:100%;padding:.6rem;border-radius:8px;border:1px solid rgba(0,0,0,0.06);background:transparent;color:var(--text)}

.contact-info{background:transparent;padding:1rem}

.badges{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}
.badges li{background:transparent;border:1px solid var(--glass);padding:.35rem .6rem;border-radius:999px;font-weight:600;color:var(--accent);font-size:.9rem}

.site-footer{border-top:1px solid var(--glass);padding:1rem 0;color:var(--muted);text-align:center}

/* Canvas and background behavior */
#bgCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;display:block;mix-blend-mode:screen}
body::before{content:'';position:fixed;inset:0;background: radial-gradient(800px 400px at 10% 10%, rgba(245,158,11,0.08), transparent), radial-gradient(600px 300px at 90% 80%, rgba(194,65,12,0.06), transparent);filter: blur(60px);opacity:.9;z-index:-2;transform:translateZ(0);animation:float 14s ease-in-out infinite}
@keyframes float{0%{transform:translateY(-3%)}50%{transform:translateY(3%)}100%{transform:translateY(-3%)}}

/* Responsive */
@media (max-width:920px){
  .projects-grid{grid-template-columns:1fr}
  .about-section .about-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .hero-inner{flex-direction:column}
  .hero-card{width:100%}
}

@media (max-width:520px){
  .nav-links{display:none}
  .hero-text h1{font-size:1.6rem}
}

/* Mobile nav open state */
.nav-toggle{display:none;background:transparent;border:1px solid var(--glass);color:var(--text);padding:.4rem .6rem;border-radius:8px;cursor:pointer}
@media (max-width:520px){
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center}
  .top-nav .nav-links{display:none;position:absolute;right:1rem;top:64px;background:var(--panel);padding:.8rem;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,0.3);flex-direction:column;gap:.6rem}
  .nav-links a{color:var(--text)}
  .nav-open .nav-links{display:flex}
}
