/* style.css — 黑底 科技感 全站样式 */
:root{
  --bg:#04050a;
  --panel:#0b0e14;
  --muted:#9aa6b2;
  --accent:#00c8ff;
  --accent2:#7a5cff;
  --glass: rgba(255,255,255,0.03);
  --radius:12px;
  --container:1100px;
  font-family: "Noto Sans SC", "PingFang SC", "Helvetica Neue", Arial, sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:linear-gradient(180deg,var(--bg),#000);color:#e3eef8}
a{color:var(--accent);text-decoration:none}
.container{width:calc(100% - 40px);max-width:var(--container);margin:0 auto}
.topbar{position:fixed;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:linear-gradient(180deg,rgba(0,0,0,0.45),transparent);backdrop-filter:blur(6px);z-index:999}
.brand a{font-weight:700;color:var(--accent);font-size:20px;letter-spacing:0.6px}
.nav a{margin-left:20px;color:#c6d7e6;opacity:0.92}
.nav a.cta{padding:8px 12px;border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--accent2));color:#00101a;font-weight:600}
.nav a.active{color:var(--accent)}
main{padding-top:92px}

/* HERO */
.hero{display:flex;align-items:center;gap:40px;padding:60px 5% 40px}
.hero-left{flex:1;max-width:640px}
.hero-right{flex:1;display:flex;justify-content:center}
.hero h1{font-size:44px;line-height:1.05;margin:0;color:var(--accent);font-weight:700;letter-spacing:0.5px}
.subtitle{color:var(--muted);margin-top:12px;font-size:16px}
.action{margin-top:22px}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;background:linear-gradient(90deg,var(--accent),var(--accent2));color:#001; font-weight:700;margin-right:12px}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.06);color:#cfeefb}
.intro{margin-top:18px;color:var(--muted);line-height:1.6}

/* cover */
.cover{width:420px;height:300px;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 20px 60px rgba(0,200,255,0.06)}
.cover img{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(1.03) saturate(1.05)}
.cover .glow{position:absolute;inset:0;background:linear-gradient(120deg, rgba(0,200,255,0.06), rgba(122,92,255,0.04));mix-blend-mode:screen}

/* sections */
.section{padding:40px 5%}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.section-head h2{color:var(--accent);margin:0}
.section-head span{color:var(--muted);font-size:13px}

/* grid */
.grid{display:grid;gap:18px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.tile img{width:100%;height:220px;object-fit:cover;border-radius:10px;display:block;transition:transform .35s}
.tile img:hover{transform:scale(1.03)}
.cards .card{background:var(--panel);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.card img{width:100%;height:180px;object-fit:cover}
.card-body{padding:14px}
.card-body h3{margin:0 0 8px}
.card-body p{color:var(--muted);font-size:14px}
.link{display:inline-block;margin-top:10px;color:var(--accent);font-weight:600}

/* projects */
.project{display:flex;gap:16px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);padding:12px;border-radius:12px}
.project img{width:260px;height:180px;object-fit:cover;border-radius:8px}
.proj-body p{color:var(--muted);margin:8px 0}

/* masonry gallery */
.masonry{column-count:3;column-gap:12px}
.mitem{break-inside:avoid;margin-bottom:12px}
.mitem img{width:100%;display:block;border-radius:8px;transition:transform .25s}
.mitem img:hover{transform:scale(1.03)}

/* about */
.about-grid{display:flex;gap:30px;align-items:flex-start}
.about-left img{width:320px;height:320px;object-fit:cover;border-radius:12px}
.about-right ul{color:var(--muted);margin-top:10px}
.about-right .btn{margin-top:14px}

/* contact */
.contact-grid{display:flex;gap:24px;align-items:flex-start}
.contact-form{background:var(--panel);padding:16px;border-radius:12px;width:100%;max-width:520px}
.contact-form label{display:block;color:var(--muted);margin-bottom:10px}
.contact-form input, .contact-form textarea{width:100%;padding:10px;border-radius:8px;background:#07101a;border:1px solid rgba(255,255,255,0.03);color:#e6f7ff}
.contact-info{background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);padding:16px;border-radius:12px;color:var(--muted)}

/* lightbox */
.lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,0.85);z-index:2000}
.lightbox.open{display:flex}
.lightbox img{max-width:92%;max-height:88%;border-radius:8px}

/* footer */
.footer{padding:28px 5%;border-top:1px solid rgba(255,255,255,0.03);display:flex;justify-content:space-between;color:var(--muted);align-items:center}

/* responsive */
@media (max-width:1000px){
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .masonry{column-count:2}
  .cover{width:320px;height:240px}
  .hero{flex-direction:column;align-items:center;text-align:center}
}
@media (max-width:640px){
  .grid-3{grid-template-columns:1fr}
  .masonry{column-count:1}
  .topbar{padding:0 4%}
  .cover{width:100%;height:220px}
  .about-grid{flex-direction:column}
  .contact-grid{flex-direction:column}
}
