:root{
  --bg:#0b0f1a; 
  --panel:#0f172a; 
  --text:#e5e7eb; 
  --muted:#94a3b8; 
  --accent:#22d3ee; 
  --accent-2:#a78bfa; 
  --glass:rgba(13,18,30,0.5);
  --border:rgba(148,163,184,0.2);
}

@media (prefers-color-scheme: light){
  :root{
    --bg:#f6f7fb; --panel:#ffffff; --text:#0b1220; --muted:#475569; --glass:rgba(255,255,255,0.6); --border:rgba(2,6,23,0.08);
  }
}

[data-theme="dark"]{
  --bg:#0b0f1a; --panel:#0f172a; --text:#e5e7eb; --muted:#94a3b8; --glass:rgba(13,18,30,0.5); --border:rgba(148,163,184,0.2);
}
[data-theme="light"]{
  --bg:#f6f7fb; --panel:#ffffff; --text:#0b1220; --muted:#475569; --glass:rgba(255,255,255,0.6); --border:rgba(2,6,23,0.08);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,"PingFang SC","Microsoft Yahei",sans-serif;color:var(--text);background:radial-gradient(1200px 600px at 10% -10%,#0ea5e9 0%,transparent 40%),radial-gradient(800px 400px at 90% -10%,#a78bfa 0%,transparent 40%),var(--bg);overflow-x:hidden}

canvas#bg{position:fixed;inset:0;z-index:0}
.app{position:relative;z-index:1}

.glass{backdrop-filter:saturate(140%) blur(14px);background:var(--glass);border:1px solid var(--border);border-radius:16px}

.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;margin:12px auto;max-width:1100px}
.brand{display:flex;gap:12px;align-items:center}
.logo{font-size:28px}
.site-title{margin:0;font-weight:800;letter-spacing:0.3px}
.site-subtitle{margin:2px 0 0 0;color:var(--muted);font-size:12px}
.nav{display:flex;gap:12px;align-items:center}
.nav a{color:var(--text);text-decoration:none;padding:8px 10px;border-radius:10px;border:1px solid transparent}
.nav a:hover{border-color:var(--border)}

.container{max-width:1100px;margin:0 auto;padding:0 20px 80px}
.hero{margin:24px 0 20px;padding:30px;position:relative;isolation:isolate}
.hero h2{margin:0 0 6px 0;font-size:36px}
.hero p{margin:0;color:var(--muted)}
.hero-actions{margin-top:16px;display:flex;gap:12px}

.btn{cursor:pointer;border:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(0,0,0,0.04));color:var(--text);padding:10px 14px;border-radius:12px;transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(2,6,23,.24);border-color:rgba(255,255,255,.18)}
.btn.primary{background:linear-gradient(120deg,var(--accent),var(--accent-2));color:#001018;border:0;font-weight:700}

.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0 6px}
.input{flex:1;min-width:240px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:rgba(0,0,0,0.2);color:var(--text)}
.tags{display:flex;gap:8px;flex-wrap:wrap}
.tag{padding:8px 12px;border-radius:999px;border:1px solid var(--border);cursor:pointer;user-select:none;background:rgba(255,255,255,0.04)}
.tag.active{background:linear-gradient(120deg,var(--accent),var(--accent-2));color:#001018;border:0;font-weight:700}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:14px}
.card{position:relative;padding:16px;border-radius:16px;border:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0));overflow:hidden;transition:transform .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-4px) rotateX(2deg) rotateY(-2deg);box-shadow:0 20px 60px rgba(2,6,23,.35)}
.card h4{margin:0 0 6px 0}
.card p{margin:0;color:var(--muted)}
.card .meta{margin-top:10px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between}

.about{padding:20px;margin-top:28px}
.links{display:flex;gap:10px;margin-top:10px}

.site-footer{display:flex;justify-content:center;gap:12px;color:var(--muted);padding:30px 0}

@media (max-width:720px){
  .hero h2{font-size:28px}
  .site-header{padding:10px 14px}
}

