/* ════════════════════════════════════════════════════════════
   EVE NeuroSystems — Insights (blog) stylesheet.
   Light editorial theme mirroring eveaicore.com's blog (DM Serif /
   DM Sans / DM Mono, paper background, drop-cap, reading bar, share
   bar) while keeping the NeuroSystems dark header + footer.
   ════════════════════════════════════════════════════════════ */

:root{
  /* dark tokens — header + footer (mirror the main site) */
  --bg:#0a0d14; --bg-card:#0c1119; --bg-raised:#0f1625; --bg-panel:#070a11;
  --border:#1a2444; --accent:#5b9ee8; --accent2:#8b5cf6;
  --eve-blue:#4a90e2; --eve-btn:#2f6fd0; --eve-btn-h:#2861c0;
  --text:#c8cdd8; --text-dim:#8893a8; --heading:#e2e6ef; --green:#22c55e;
  --mono:'IBM Plex Mono','Consolas',monospace;
  --sans:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  /* light editorial tokens — article body */
  --paper:#f5f7fb; --paper-2:#eef2f8; --ink:#0f172a; --mid:#55617a;
  --rule:#dde3ee; --blue:#2f6fd0; --blue-ink:#1e4fa3; --blue-soft:#e9f0fb;
  --serif:'DM Serif Display',Georgia,'Times New Roman',serif;
  --body:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  --dmmono:'DM Mono','IBM Plex Mono',monospace;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:18px}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:400;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none}

/* ── Reading progress (script.js appends .scroll-progress) ── */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:200;
  background:linear-gradient(90deg,var(--blue),var(--accent2));transition:width .1s linear;pointer-events:none}

/* ════════════ Header (dark — matches eveaicore.com lockup) ════════════ */
.header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:18px 40px;background:#0a0d14;border-bottom:1px solid #1a1f2e}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.logo-icon{width:44px;height:44px;object-fit:contain;border-radius:6px;display:block}
.logo-text{display:flex;flex-direction:column;justify-content:center;line-height:1.12}
.logo-wordmark{font-size:21px;font-weight:600;color:var(--heading);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-family:var(--sans)}
.logo:hover .logo-wordmark{color:#fff}
.logo-core{color:var(--eve-blue)}
.logo-slogan{font-style:italic;font-weight:500;font-size:11px;letter-spacing:.02em;color:#8b93a7;margin-top:2px;white-space:nowrap;font-family:var(--sans)}
.nav-links{display:flex;gap:6px;align-items:center}
.nav-links a{font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:#b0b8c8;padding:7px 12px;border-radius:4px;transition:color .12s,background .12s}
.nav-links a:hover{color:#fff;background:rgba(255,255,255,.06)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:2px;font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.02em;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,transform .15s;white-space:nowrap}
.btn-primary{background:var(--eve-btn);border-color:var(--eve-btn);color:#fff !important}
.btn-primary:hover{background:var(--eve-btn-h);border-color:var(--eve-btn-h);color:#fff;transform:translateY(-2px)}
.nav-links .btn{margin-left:10px}
.nav-links .btn-primary{padding:9px 20px;font-size:13px}
.menu-btn{display:none;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#e2e6ef;font-size:22px;line-height:1;cursor:pointer;padding:8px 12px;z-index:101;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.menu-btn:hover,.menu-btn:active{border-color:rgba(255,255,255,.4)}
.mobile-overlay{display:none;position:fixed;inset:0;z-index:999;background:#0a0d14;padding:88px 28px 32px;overflow-y:auto}
.mobile-overlay.open{display:block}
.mobile-overlay a{display:block;font-family:var(--sans);font-size:17px;font-weight:500;color:#cfd6e4;padding:16px 4px;border-bottom:1px solid var(--border)}
.mobile-overlay a:hover{color:#fff}
.mobile-overlay .btn{margin-top:24px;width:100%;justify-content:center;border-bottom:0;font-size:15px}
.mobile-close{position:absolute;top:22px;right:24px;background:none;border:0;color:#fff;font-size:30px;cursor:pointer;line-height:1}
@media (max-width:1000px){.nav-links{display:none}.menu-btn{display:inline-flex;align-items:center}}

/* ════════════ Back strip ════════════ */
.b-back-strip{margin-top:79px;background:#0a0d14;border-bottom:1px solid #1a1f2e;padding:10px 40px}
.b-back-strip a{font-family:var(--dmmono);font-size:12px;letter-spacing:.05em;color:#4a90e2;display:inline-flex;align-items:center;gap:7px}
.b-back-strip a:hover{color:#7fb4f2}

/* ════════════ Article ════════════ */
.b-hero{max-width:820px;margin:0 auto;padding:4.5rem 2rem 0}
.b-tag{font-family:var(--dmmono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);margin-bottom:1.4rem;display:flex;align-items:center;gap:.75rem}
.b-tag::before{content:'';display:inline-block;width:28px;height:1px;background:var(--blue)}
.b-hero h1{font-family:var(--serif);font-size:clamp(2.1rem,5vw,3.3rem);font-weight:400;line-height:1.14;letter-spacing:-.01em;color:var(--ink);margin-bottom:1.3rem}
.b-hero h1 em{font-style:italic;color:var(--blue)}
.b-dek{font-size:1.16rem;color:var(--mid);font-weight:400;line-height:1.6;max-width:640px}
.b-byline{max-width:820px;margin:0 auto;padding:1.8rem 2rem 2.2rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--rule)}
.b-avatar{width:44px;height:44px;border-radius:50%;background:#0a0d14;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border:1px solid var(--rule)}
.b-avatar img{width:30px;height:30px;object-fit:contain}
.b-by-name{font-size:.9rem;font-weight:600;color:var(--ink)}
.b-by-meta{font-size:.74rem;color:var(--mid);font-family:var(--dmmono);margin-top:2px}

.b-figure{max-width:960px;margin:2.6rem auto 0;padding:0 2rem}
.b-figure picture,.b-card picture{display:block;width:100%}
.b-figure img{width:100%;height:auto;aspect-ratio:1400/735;object-fit:cover;border-radius:8px;border:1px solid var(--rule);display:block;box-shadow:0 20px 50px -30px rgba(15,23,42,.4)}

.b-article{max-width:720px;margin:0 auto;padding:3rem 2rem 3rem}
.b-article>p:first-of-type::first-letter{font-family:var(--serif);font-size:4rem;line-height:.78;float:left;margin:.06em .12em 0 0;color:var(--blue)}
.b-article p{font-size:1.06rem;margin-bottom:1.55rem;color:#1f2937}
.b-article h2{font-family:var(--serif);font-size:1.6rem;font-weight:400;letter-spacing:-.01em;color:var(--ink);margin:2.8rem 0 1rem;line-height:1.3}
.b-article h3{font-family:var(--body);font-size:1.18rem;font-weight:600;color:var(--ink);margin:2rem 0 .7rem}
.b-article ul,.b-article ol{list-style:none;margin:0 0 1.55rem;padding:0}
.b-article ul li,.b-article ol li{padding-left:1.5rem;position:relative;margin-bottom:.6rem;font-size:1.06rem;color:#1f2937}
.b-article ul li::before{content:'\2014';position:absolute;left:0;color:var(--blue);font-weight:600}
.b-article ol{counter-reset:li}
.b-article ol li{counter-increment:li}
.b-article ol li::before{content:counter(li);position:absolute;left:0;color:var(--blue);font-family:var(--dmmono);font-size:.9rem;font-weight:600}
.b-article a{color:var(--blue-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(47,111,208,.35)}
.b-article a:hover{text-decoration-color:var(--blue-ink)}
.b-article strong{font-weight:600;color:var(--ink)}
.b-article em{font-style:italic}
.b-article blockquote{border-left:3px solid var(--blue);margin:2.4rem 0 2.4rem -.2rem;padding:.4rem 0 .4rem 1.5rem}
.b-article blockquote p{font-family:var(--serif);font-size:1.34rem;font-style:italic;color:var(--ink);line-height:1.45;margin-bottom:0}

/* ── Share bar (mirrors eveaicore blog-share.css, light) ── */
#eve-blog-share{max-width:720px;margin:.5rem auto 2.4rem;padding:14px 20px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;
  border:1px solid var(--rule);border-radius:8px;background:#fff;font-family:var(--dmmono)}
#eve-blog-share .bs-label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-right:auto}
#eve-blog-share button,#eve-blog-share a.bs-btn{display:inline-flex;align-items:center;gap:7px;cursor:pointer;padding:8px 14px;border-radius:5px;text-decoration:none;
  font-family:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;border:1px solid var(--rule);background:var(--paper);color:var(--ink);transition:border-color .15s,color .15s,background .15s}
#eve-blog-share button:hover,#eve-blog-share a.bs-btn:hover{border-color:var(--blue);color:var(--blue);background:#fff}
#eve-blog-share .bs-btn svg{width:15px;height:15px;flex:none}
#eve-blog-share .bs-copied{color:var(--green,#16a34a) !important;border-color:var(--green,#16a34a) !important}

/* ── Tags, CTA, end ── */
.b-tags{max-width:720px;margin:0 auto;padding:0 2rem;display:flex;flex-wrap:wrap;gap:8px}
.b-tag-chip{font-family:var(--dmmono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mid);background:var(--paper-2);border:1px solid var(--rule);padding:6px 12px;border-radius:999px}
.b-cta{max-width:720px;margin:2.6rem auto 0;padding:2rem;background:var(--blue-soft);border:1px solid rgba(47,111,208,.22);border-radius:10px;text-align:center}
.b-cta h3{font-family:var(--serif);font-weight:400;font-size:1.5rem;color:var(--ink);margin-bottom:.4rem}
.b-cta p{color:var(--mid);margin-bottom:1.1rem;font-size:.98rem}
.b-end{max-width:720px;margin:3rem auto;padding:0 2rem;display:flex;align-items:center;gap:1rem}
.b-end::before,.b-end::after{content:'';flex:1;height:1px;background:var(--rule)}
.b-end .dot{width:5px;height:5px;border-radius:50%;background:var(--blue)}
.b-all{display:flex;justify-content:center;padding:0 2rem 5rem}
.b-all a{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--dmmono);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:.75rem 1.5rem;background:var(--eve-btn);border-radius:3px;transition:background .15s,transform .15s}
.b-all a:hover{background:var(--eve-btn-h);transform:translateY(-2px)}

/* ════════════ Blog index ════════════ */
.b-index-hero{max-width:820px;margin:0 auto;padding:5.5rem 2rem 1rem;text-align:center}
.b-index-hero .b-tag{justify-content:center}
.b-index-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,6vw,3.6rem);color:var(--ink);letter-spacing:-.01em;line-height:1.1;margin-bottom:1rem}
.b-index-hero p{font-size:1.15rem;color:var(--mid);max-width:600px;margin:0 auto;line-height:1.6}
.b-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1160px;margin:0 auto;padding:3.5rem 2rem 6rem}
.b-card{background:#fff;border:1px solid var(--rule);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;text-decoration:none}
.b-card:hover{transform:translateY(-5px);border-color:rgba(47,111,208,.4);box-shadow:0 22px 50px -26px rgba(15,23,42,.4)}
.b-card .b-card-img{aspect-ratio:1400/735;width:100%;height:auto;object-fit:cover;display:block;border-bottom:1px solid var(--rule)}
.b-card-body{padding:1.5rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}
.b-card-cat{font-family:var(--dmmono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);margin-bottom:.7rem}
.b-card h3{font-family:var(--serif);font-weight:400;font-size:1.28rem;line-height:1.25;color:var(--ink);margin-bottom:.6rem}
.b-card p{font-size:.92rem;color:var(--mid);line-height:1.6;flex:1}
.b-card-meta{font-family:var(--dmmono);font-size:11.5px;color:var(--mid);margin-top:1.1rem;display:flex;gap:12px}

/* ════════════ Footer (dark — matches site) ════════════ */
footer{border-top:1px solid var(--border);padding:64px 40px 40px;background:var(--bg-panel);color:var(--text)}
.foot-grid{max-width:1120px;margin:0 auto 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px}
.foot-logo .logo-icon{width:34px;height:34px}
.foot-logo .logo-wordmark{font-size:16px;letter-spacing:.08em}
.foot-logo .logo-slogan{font-size:10px}
.foot-blurb{color:var(--text-dim);font-size:14px;line-height:1.7;margin-top:16px;font-family:var(--sans)}
.foot-structure{color:var(--text-dim);font-size:12.5px;line-height:1.8;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font-family:var(--sans)}
.foot-structure strong{color:var(--text)}
.foot-col h4{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:16px}
.foot-col a{display:block;color:#8893a8;font-size:14px;padding:5px 0;transition:color .2s;font-family:var(--sans)}
.foot-col a:hover{color:#fff}
.foot-flag{color:var(--accent2);font-size:11px}
.foot-bottom{max-width:1120px;margin:0 auto;border-top:1px solid var(--border);padding-top:26px;color:var(--text-dim);font-size:13px;font-family:var(--mono);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}

/* ════════════ Responsive ════════════ */
@media (max-width:900px){
  .header{padding:12px 20px}
  .b-back-strip{padding:10px 20px;margin-top:67px}
  .b-hero{padding:3rem 1.4rem 0}
  .b-byline,.b-article,.b-tags,.b-cta,.b-end,.b-all,#eve-blog-share{padding-left:1.4rem;padding-right:1.4rem}
  .b-figure{padding:0 1.4rem}
  .b-grid{grid-template-columns:1fr;padding:2.4rem 1.4rem 4rem}
  .b-index-hero{padding:4rem 1.4rem 1rem}
  .foot-grid{flex-direction:column;gap:28px}
  .foot-bottom{flex-direction:column;gap:8px;text-align:center}
}
@media (max-width:480px){
  .logo-icon{width:38px;height:38px}
  .logo-wordmark{font-size:17px;letter-spacing:.08em}
  .logo-slogan{font-size:10px}
}

@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto !important}.b-card{transition:none}}
