/* Reset & body */
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: Arial, sans-serif; background:#f0f0f0; color:#333; overflow-x:hidden; }

/* Navbar */
header {
  background:#fff; padding:15px 20px; display:flex; justify-content:space-between; align-items:center;
  box-shadow:0 2px 5px rgba(0,0,0,0.1); position:sticky; top:0; z-index:10;
}
header h1 { font-size:1.8em; }
nav a { margin-left:15px; text-decoration:none; color:#555; font-weight:bold; }
nav a.active, nav a:hover { color:#000; }

/* Container & search bar */
.container { max-width:900px; margin:50px auto; padding:0 15px; position:relative; z-index:2; }
.search-bar { width:100%; padding:12px; margin-bottom:25px; font-size:16px; border:1px solid #ccc; border-radius:6px; }

/* Articles */
.article-item { padding:18px; border-bottom:1px solid #ddd; background:rgba(255,255,255,0.85); border-radius:6px; margin-bottom:20px; transition:transform 0.3s, box-shadow 0.3s; }
.article-item:hover { transform:translateY(-3px); box-shadow:0 5px 15px rgba(0,0,0,0.1); }
.article-item .title { font-size:1.2em; font-weight:bold; color:#0077cc; text-decoration:none; }
.article-item .title:hover { text-decoration:underline; }
.article-meta { font-size:0.9em; color:#555; margin-top:5px; }
.download-btn { display:inline-block; margin-top:8px; padding:6px 12px; background:#0077cc; color:white; text-decoration:none; border-radius:4px; font-size:0.9em; }
.download-btn:hover { background:#005fa3; }

/* Footer */
footer { text-align:center; padding:15px; font-size:0.85em; color:#777; margin-top:50px; }


#dots-canvas {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0; /* behind content */
  pointer-events: none;
  background: transparent; /* keeps your gray-white background */
}

