/* =========================================================
   AI News articles — one design shared by every post that
   sets 'shared' => '_ai-news' in its blog.php. Structure
   follows the article layout; colour, type and radius come
   from the site's tokens (assets/css/main.css).
   Every section is wrapped in .bmb by the theme.
   ========================================================= */
.bmb{
  --nw-ink:var(--text-primary);
  --nw-body:var(--text-secondary);
  --nw-muted:#6E6C64;
  --nw-line:var(--border);
  --nw-brand:var(--accent);
  --nw-brand-strong:var(--accent-strong);
  --nw-tint:#FDF0F2;
  --nw-underline:#FBE6EA;
  color:var(--nw-body);font-family:var(--font-body);font-size:1.08rem;line-height:1.75;
}
.bmb p{margin:0 0 1.05em;}

/* Header */
.bmb .nw-head{padding-top:var(--space-5);margin-bottom:var(--space-5);border-bottom:2px solid var(--nw-ink);}
.bmb .nw-kick{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:.9rem;font-family:var(--font-ui);}
.bmb .nw-when{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--nw-muted);}
.bmb .nw-head h1{font-size:clamp(2.1rem, 2.4vw + 1.2rem, 3.2rem);max-width:24ch;margin:0 0 .9rem;}
.bmb .nw-dek{font-family:var(--font-display);font-style:italic;font-size:1.25rem;line-height:1.5;color:var(--nw-body);max-width:60ch;margin:0 0 .9rem;}
.bmb .nw-by{font-family:var(--font-ui);font-size:.82rem;color:var(--nw-muted);margin:0;padding-bottom:1.1rem;}
.bmb .nw-by b{color:var(--nw-ink);font-weight:600;}

/* Story sections */
.bmb .nw-sec{margin-top:var(--space-6);}
.bmb .nw-sec--lead{margin-top:0;}
.bmb .nw-sec > h2{font-size:clamp(1.5rem, 1.2vw + 1.1rem, 1.9rem);margin:0 0 .6em;}
.bmb .nw-sec > * + *{margin-top:1.05em;}
.bmb .nw-sec > h2 + *{margin-top:0;}

/* Running text */
.bmb .nw-rich > :last-child{margin-bottom:0;}
.bmb .nw-rich:empty{display:none;}
.bmb .nw-rich a,.bmb .nw-fig figcaption a,.bmb .nw-faq a{color:var(--nw-brand-strong);font-weight:600;box-shadow:inset 0 -2px 0 var(--nw-underline);transition:box-shadow .2s var(--ease);}
.bmb .nw-rich a:hover,.bmb .nw-fig figcaption a:hover,.bmb .nw-faq a:hover{box-shadow:inset 0 -9px 0 var(--nw-underline);}
.bmb .nw-rich b,.bmb .nw-rich strong{color:var(--nw-ink);}
.bmb .nw-rich ul{list-style:none;padding:0;margin:0 0 1.1em;}
.bmb .nw-rich ul li{position:relative;padding:.4rem 0 .4rem 1.4rem;border-bottom:1px solid var(--nw-line);}
.bmb .nw-rich ul li::before{content:"";position:absolute;left:2px;top:1.05em;width:8px;height:8px;background:var(--nw-brand);}
.bmb .nw-rich ol{list-style:decimal;padding-left:1.25em;margin:0 0 1.1em;}
.bmb .nw-rich ol li{margin:.35em 0;}

/* Chart / image */
.bmb .nw-fig{margin:1.6rem 0;}
.bmb .nw-fig img{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--nw-line);border-radius:var(--radius-md);}
.bmb .nw-fig figcaption{margin-top:.55rem;font-family:var(--font-ui);font-size:.84rem;line-height:1.5;color:var(--nw-muted);}

/* Highlight box */
.bmb .nw-box{background:var(--nw-tint);border-left:4px solid var(--nw-brand);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:1.1rem 1.4rem;}
.bmb .nw-box h3{font-size:1.2rem;margin:0 0 .4rem;}
.bmb .nw-num{display:block;font-family:var(--font-display);font-size:3.4rem;line-height:1;font-weight:700;color:var(--nw-brand);margin:.2rem 0 .4rem;}

/* FAQ */
.bmb .nw-faq-list{border-top:2px solid var(--nw-ink);}
.bmb .nw-faq details{border-bottom:1px solid var(--nw-line);}
.bmb .nw-faq summary{cursor:pointer;list-style:none;padding:.9rem 2.2rem .9rem 0;position:relative;}
.bmb .nw-faq summary::-webkit-details-marker{display:none;}
.bmb .nw-faq summary::after{content:"+";position:absolute;right:4px;top:.55rem;font-family:var(--font-ui);font-size:1.4rem;color:var(--nw-brand);}
.bmb .nw-faq details[open] summary::after{content:"\2212";}
.bmb .nw-faq summary h3{display:inline;font-size:1.1rem;margin:0;}
.bmb .nw-faq details p{margin:0 0 .9rem;font-size:1rem;}

/* Sources */
.bmb .nw-sources{margin-top:var(--space-7);font-family:var(--font-ui);font-size:.86rem;color:var(--nw-muted);}
.bmb .nw-sources h2{font-family:var(--font-ui);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .65rem;padding-bottom:.4rem;border-bottom:1px solid var(--nw-ink);}
.bmb .nw-sources ol{list-style:decimal;padding-left:1.4em;margin:0;}
.bmb .nw-sources li{margin-bottom:.35rem;word-break:break-word;}
.bmb .nw-sources a{color:var(--nw-brand-strong);}
.bmb .nw-sources a:hover{text-decoration:underline;}

@media (max-width:640px){
  .bmb{font-size:1rem;}
  .bmb .nw-num{font-size:2.8rem;}
}
