:root{
  --bg:#0b0b12;--text:#e5e7eb;--muted:#e6e9ef;--primary:#06b6d4;--accent:#22c55e;--card:#111827;--card-border:#1f2937
}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
/* animated gradient backdrop */
.backdrop{position:fixed;inset:-20%;z-index:-3;filter:blur(70px);opacity:.6;background:radial-gradient(600px 300px at 10% 10%, #06b6d4 25%, transparent),radial-gradient(500px 250px at 90% 20%, #22c55e 20%, transparent),radial-gradient(700px 320px at 50% 110%, #7c3aed 18%, transparent)}
/* bold rainbow top band */
.top-gradient{position:fixed;top:-120px;left:-10vw;right:-10vw;height:380px;z-index:-1;filter:saturate(1.3);background:linear-gradient(90deg,#ff6b6b 0%,#f59e0b 16%,#facc15 32%,#22c55e 48%,#06b6d4 64%,#3b82f6 80%,#a855f7 100%);box-shadow:0 40px 120px rgba(0,0,0,.35);transform:skewY(-6deg)}
@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-12px)}100%{transform:translateY(0)}}
.float{animation:float 6s ease-in-out infinite}
a{color:#06b6d4;text-decoration:none}
.container{max-width:1600px;margin:0 auto;padding:24px}
.hero{padding:90px 0 40px;position:relative}
.wash{background:radial-gradient(800px 400px at 0% 20%,#22c55e 10%,transparent),radial-gradient(700px 320px at 90% 0%,#06b6d4 10%,transparent),radial-gradient(900px 360px at 60% 100%,#a855f7 10%,transparent)}
.hero .wash{position:absolute;inset:0;z-index:-1;opacity:.35;}
.hero h1,.hero-text h1{font-size:68px;line-height:1.02;margin:0 0 16px;color:#ffffff !important;text-shadow:0 6px 20px rgba(0,0,0,.65);background:none !important;-webkit-background-clip:unset !important;background-clip:unset !important}
.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.card{background:var(--card);border:1px solid var(--card-border);border-radius:14px;padding:20px;transition:transform 0.2s, box-shadow 0.2s}
.card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.3)}
header{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--card-border);position:relative;z-index:1}
.header-brand{display:flex;align-items:center;gap:10px}
.header-logo{height:72px;width:auto;max-width:200px;display:block;object-fit:contain}
header nav a{color:#f8fafc;text-shadow:0 2px 8px rgba(0,0,0,.6);margin:0 8px}
.brand-title{display:flex;flex-direction:column;line-height:0.95;margin-left:8px;font-weight:900;font-size:24px;color:#ffffff;text-shadow:0 2px 8px rgba(0,0,0,.6)}
.article-meta{color:var(--muted);font-size:16px;margin-bottom:24px}
.article-title{font-size:24px;font-weight:700;margin-bottom:12px;color:#ffffff}
.article-excerpt{color:var(--muted);line-height:1.6;margin-bottom:16px}
.read-more{color:#06b6d4;font-weight:600;text-decoration:none}
.read-more:hover{text-decoration:underline}
.category-badge{background:#22c55e;color:#0b0b12;border-radius:999px;padding:6px 12px;font-weight:600;font-size:14px;margin-bottom:16px;display:inline-block}
.back-link{color:#06b6d4;text-decoration:none;margin-bottom:24px;display:inline-block}
.back-link:hover{text-decoration:underline}
.content{font-size:18px;line-height:1.7}
.content h2{font-size:32px;margin:40px 0 20px;color:#ffffff}
.content h3{font-size:24px;margin:30px 0 15px;color:#ffffff}
.content p{margin-bottom:20px}
.content ul, .content ol{margin:20px 0;padding-left:30px}
.content li{margin-bottom:8px}
.highlight-box{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:20px;margin:30px 0}

/* Article-specific styles */
.article-hero{padding:60px 0 40px;position:relative}
.article-hero h1{font-size:48px;line-height:1.1;margin:0 0 16px;background:linear-gradient(90deg,#ffffff 10%,#a5f3fc 40%,#c7d2fe 70%,#f5d0fe 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 6px 20px rgba(0,0,0,.65)}
.article-container{max-width:800px;margin:0 auto;padding:24px}

/* Responsive Design */
@media (max-width: 768px) {
  .container{padding:16px}
  .hero h1{font-size:48px}
  .header-nav{flex-direction:column;gap:8px}
  .grid{grid-template-columns:1fr}
}

@media (max-width: 480px) {
  .hero h1{font-size:36px}
  .brand-title{font-size:20px}
  .header-logo{height:60px;max-width:150px}
}

/* Utility classes */
.flex{display:flex}
.flex-center{align-items:center}
.gap-10{gap:10px}
.gap-16{gap:16px}
.text-center{text-align:center}
