/* Magazine — Field Notes from the Edge. Layers on top of main.min.css + .blog-article. */

/* Landing: issue grid */
.mag-grid { display:grid; grid-template-columns:1fr; gap:var(--space-6); }
@media (min-width:720px){ .mag-grid { grid-template-columns:repeat(2,1fr); } }
.mag-card {
  display:flex; flex-direction:column; border:1px solid var(--border);
  border-radius:12px; overflow:hidden; background:var(--bg-card);
  transition:border-color .15s ease, transform .15s ease;
}
.mag-card:hover { border-color:var(--brand-primary); transform:translateY(-2px); }
.mag-cover {
  position:relative; aspect-ratio:8.5/11; background:var(--bg-dark-section);
  display:flex; flex-direction:column; justify-content:space-between; padding:var(--space-6);
  border-bottom:1px solid var(--border);
}
.mag-cover .mag-issue-no {
  align-self:flex-end; font-size:var(--text-xs); font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:#0B1016; background:var(--brand-primary);
  padding:.3rem .6rem; border-radius:6px;
}
.mag-cover h3 { color:#fff; font-size:var(--text-2xl); line-height:1.15; margin:0; }
.mag-cover .mag-kicker { font-size:var(--text-xs); letter-spacing:.1em; text-transform:uppercase; color:var(--brand-primary); font-weight:700; }
.mag-card-body { padding:var(--space-5); display:flex; flex-direction:column; flex:1; }
.mag-card-body .mag-date { font-size:var(--text-xs); text-transform:uppercase; letter-spacing:.06em; color:var(--text-tertiary); margin:0 0 var(--space-2); }
.mag-card-body h4 { margin:0 0 var(--space-2); font-size:var(--text-lg); color:var(--text-primary); }
.mag-card-body p { color:var(--text-secondary); font-size:var(--text-sm); line-height:1.7; margin:0 0 var(--space-4); }
.mag-card-actions { margin-top:auto; display:flex; gap:var(--space-3); flex-wrap:wrap; }
.mag-cover-img { padding:0; display:block; }
.mag-cover-img img { width:100%; height:100%; object-fit:cover; object-position:top center; display:block; }
.mag-upcoming { border-style:dashed; opacity:.75; }
.mag-upcoming .mag-cover { background:var(--bg-secondary); }
.mag-upcoming .mag-cover h3 { color:var(--text-secondary); }

/* Issue reading page extras */
.mag-eyebrow { font-size:var(--text-xs); text-transform:uppercase; letter-spacing:.1em; font-weight:700; color:var(--brand-primary); margin:var(--space-10) 0 var(--space-2); }
.mag-eyebrow:first-child { margin-top:0; }
.mag-dek { font-size:var(--text-lg); font-style:italic; color:var(--text-secondary); line-height:1.6; margin:0 0 var(--space-4); }
.mag-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); border-radius:10px; overflow:hidden; margin:var(--space-6) 0; }
.mag-stats div { background:var(--bg-dark-section); padding:var(--space-5) var(--space-3); text-align:center; }
.mag-stats .mag-stat-n { font-size:var(--text-2xl); font-weight:800; color:var(--brand-primary); line-height:1.1; }
.mag-stats .mag-stat-l { font-size:10px; text-transform:uppercase; letter-spacing:.06em; color:var(--text-tertiary); margin-top:.35rem; }
.mag-checklist { list-style:none !important; padding-left:0 !important; }
.mag-checklist li { position:relative; padding:var(--space-3) 0 var(--space-3) var(--space-8); border-top:1px solid var(--border); }
.mag-checklist li:before { content:"\2610"; position:absolute; left:0; top:var(--space-3); color:var(--brand-primary); font-size:1.2em; }
.mag-divider { border:0; border-top:1px solid var(--border); margin:var(--space-10) 0; }
.mag-issue-foot { font-size:var(--text-sm); color:var(--text-tertiary); }
.mag-issue-foot a { color:var(--brand-primary); }
