/*
Theme Name: Infosec Daily Pro
Theme URI: https://infosecdailynews.example/
Author: Infosec Daily
Description: Hacker-style cybersecurity news theme with dark grey background, toned neon green accents, and a matrix-style animated background.
Version: 1.9
Text Domain: infosec-daily-pro
*/

:root{
  --bg:#050505;
  --content-bg:#050505;
  --card:#101010;
  --border:#262626;
  --muted:#a3a3a3;
  --accent:#34d399; /* toned neon green */
  --accent-soft:rgba(52,211,153,0.18);
  --text:#f5f5f5;
  --radius:18px;
  --container:1200px;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial;
  --mono:'Source Code Pro','Fira Code','JetBrains Mono',monospace;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%}
body{
  font-family:var(--sans);
  background:radial-gradient(circle at top,#050505,#020202);
  color:var(--text);
  line-height:1.7;
  position:relative;
  overflow-x:hidden;
}

/* Matrix-style animated background */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:0.18;
  background-image:
    linear-gradient(180deg, rgba(52,211,153,0.25) 0px, rgba(52,211,153,0.25) 2px, transparent 2px, transparent 38px),
    linear-gradient(90deg, rgba(52,211,153,0.10) 0px, rgba(52,211,153,0.10) 1px, transparent 1px, transparent 38px);
  background-size:100% 38px, 38px 100%;
  background-position:0 0, 0 0;
  mix-blend-mode:screen;
  animation:matrixScroll 14s linear infinite;
  z-index:-1;
}

@keyframes matrixScroll{
  to{
    background-position:0 38px, -38px 0;
  }
}

a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

.container{
  max-width:var(--container);
  margin:0 auto;
  padding:26px 18px 40px 18px;
}

/* Header */
.site-header{
  position:sticky;top:0;z-index:40;
  background:linear-gradient(90deg,rgba(8,8,8,0.96),rgba(8,8,8,0.98));
  border-bottom:1px solid rgba(38,38,38,0.95);
  backdrop-filter:blur(18px);
}
.site-header-inner{
  max-width:var(--container);
  margin:0 auto;
  padding:14px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand-title{
  font-size:18px;
  font-weight:650;
  letter-spacing:0.2em;
  text-transform:uppercase;
  font-family:var(--mono);
  color:var(--accent);
  text-shadow:0 0 6px rgba(52,211,153,0.4);
}
.brand-tagline{font-size:12px;color:var(--muted)}
.nav-links{display:flex;gap:18px;font-size:14px}

/* Main shell */
.main-shell{
  margin-top:24px;
  border-radius:24px;
  background:radial-gradient(circle at top left,#050505,#050505);
  padding:26px 22px 30px 22px;
  border:1px solid rgba(38,38,38,0.95);
  box-shadow:0 28px 90px rgba(0,0,0,0.95);
  position:relative;
  overflow:hidden;
}
.main-shell::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(52,211,153,0.22),transparent 32%,transparent 68%,rgba(52,211,153,0.10));
  opacity:0.26;
  mix-blend-mode:soft-light;
  pointer-events:none;
}

/* Hero */
.hero-grid{
  display:grid;
  grid-template-columns:3fr 2fr;
  gap:22px;
  margin-bottom:26px;
  position:relative;
  z-index:1;
}
.hero-panel{
  padding:22px 20px 18px 20px;
  border-radius:20px;
  background:radial-gradient(circle at top,#050505,#050505);
  border:1px solid rgba(64,64,64,0.9);
  box-shadow:0 22px 70px rgba(0,0,0,0.95);
}
.hero-kicker{
  text-transform:uppercase;
  font-size:11px;
  letter-spacing:0.25em;
  color:var(--accent);
  font-weight:600;
}
.hero-title{
  font-size:28px;
  margin:12px 0 8px 0;
  font-family:var(--mono);
  color:var(--accent);
  text-shadow:0 0 6px rgba(52,211,153,0.5);
}
.hero-sub{font-size:14px;color:var(--muted)}
.hero-meta-row{
  margin-top:14px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  font-size:11px;
}

/* Pills & buttons share same terminal font */
.hero-pill,
.btn-primary,
.btn-ghost{
  font-family:var(--mono);
}

/* Pills */
.hero-pill{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#0a0a0a;
  border:1px solid rgba(52,211,153,0.30);
  color:var(--text);
  text-decoration:none;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease,color .18s ease;
}
.hero-pill:hover{
  background:var(--accent-soft);
  border-color:var(--accent);
  color:var(--accent);
  transform:translateY(-2px);
  box-shadow:0 0 14px rgba(52,211,153,0.6);
}

.hero-actions{
  margin-top:16px;
  display:flex;
  gap:10px;
}

.btn-primary,
.btn-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 16px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  text-decoration:none;
}

/* View latest threats: not always lit, same text color as ghost */
.btn-primary{
  border:1px solid rgba(52,211,153,0.45); /* green outline */
  background:#080808;                     /* dark by default */
  color:var(--text);                      /* same text color */
  box-shadow:none;
  transition:all .18s ease;
}
.btn-primary:hover{
  border-color:var(--accent);
  background:var(--accent);
  color:#020202;
  box-shadow:0 0 22px rgba(52,211,153,0.8);
  transform:translateY(-1px);
}

/* About the publication: also green outline now */
.btn-ghost{
  border:1px solid rgba(52,211,153,0.45); /* green outline */
  background:transparent;
  color:var(--text);
}
.btn-ghost:hover{
  border-color:var(--accent);
  color:var(--accent);
  box-shadow:0 0 16px rgba(52,211,153,0.6);
}

.hero-visual{
  border-radius:20px;
  padding:14px;
  background:radial-gradient(circle at top right,rgba(52,211,153,0.22),#050505);
  border:1px solid rgba(64,64,64,0.9);
  box-shadow:0 22px 60px rgba(0,0,0,0.95);
}
.hero-visual img{width:100%;border-radius:16px;display:block}

/* Grid */
.grid{
  display:grid;
  grid-template-columns:2.1fr 1fr;
  gap:20px;
  margin-top:10px;
  position:relative;
  z-index:1;
}

/* Article cards */
.article-card{
  background:#080808;
  border-radius:18px;
  border:1px solid rgba(43,43,43,0.95);
  padding:14px 14px 14px 14px;
  margin-bottom:14px;
  box-shadow:0 20px 60px rgba(0,0,0,0.9);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.article-card:hover{
  transform:translateY(-4px);
  border-color:var(--accent);
  box-shadow:0 28px 90px rgba(52,211,153,0.7);
}
.article-thumb img{width:100%;border-radius:14px;margin-bottom:10px}
.article-meta{
  font-size:11px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.18em;
}
.article-title{
  margin:8px 0 4px 0;
  font-size:17px;
  font-family:var(--mono);
  color:var(--accent);
}
.article-excerpt{font-size:13px;color:#f5f5f5}

/* Sidebar widgets */
.sidebar .widget{
  background:#080808;
  border-radius:18px;
  padding:14px 14px 14px 14px;
  border:1px solid rgba(43,43,43,0.95);
  margin-bottom:14px;
  box-shadow:0 20px 55px rgba(0,0,0,0.9);
  font-size:13px;
}
.sidebar .widget h4{
  margin:0 0 10px 0;
  font-size:14px;
  font-family:var(--mono);
  color:var(--accent);
}

/* Post content */
.post-content img{max-width:100%;height:auto;border-radius:14px;margin:10px 0}
.post-content pre{background:#050505;border-radius:12px;padding:9px 12px;overflow:auto;font-size:12px}

/* Footer */
.site-footer{margin-top:20px;font-size:12px;color:var(--muted);text-align:center}

/* Responsive */
@media (max-width:960px){
  .site-header-inner{flex-direction:column;align-items:flex-start;}
  .hero-grid{grid-template-columns:1fr;}
  .grid{grid-template-columns:1fr;}
  .main-shell{padding:20px 16px 24px 16px;}
}
