/* ============================================================
   NAIJASABI — Author Page CSS (Premium)
   ============================================================ */

/* ── Author Page Layout ── */
.ns-author-page { padding-bottom: 60px; }
.ns-author-page__body {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 32px;
  margin-top: 36px;
  align-items: start;
}
@media (max-width: 1024px) { .ns-author-page__body { grid-template-columns: 1fr; } }

/* ── Hero ── */
.ns-author-hero {
  position: relative;
  background: var(--brand-dark, #0A1628);
  background-size: cover;
  background-position: center;
  padding: 56px 0 48px;
  overflow: hidden;
}
.ns-author-hero--has-cover { padding: 80px 0 56px; }
.ns-author-hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(10,22,40,.92) 0%, rgba(0,122,61,.55) 100%);
}
.ns-author-hero__inner {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: 32px;
  flex-wrap: wrap;
}
@media (max-width: 640px) { .ns-author-hero__inner { flex-direction: column; align-items: center; text-align: center; } }

/* Avatar */
.ns-author-hero__avatar-wrap {
  position: relative;
  flex-shrink: 0;
}
.ns-author-hero__avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid rgba(255,255,255,.25);
  box-shadow: 0 8px 32px rgba(0,0,0,.4);
  display: block;
  background: var(--brand-border, #E8ECF0);
}
.ns-author-hero__verified {
  position: absolute;
  bottom: 4px; right: 4px;
  width: 26px; height: 26px;
  background: var(--brand-green, #007A3D);
  border-radius: 50%;
  border: 2px solid #fff;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,.3);
}

/* Info block */
.ns-author-hero__info { flex: 1; min-width: 0; }
.ns-author-hero__role {
  display: inline-block;
  font-size: .78rem;
  font-weight: 700;
  color: var(--brand-gold, #F5A623);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.ns-author-hero__name {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-weight: 900;
  color: #fff;
  line-height: 1.1;
  margin-bottom: 12px;
  letter-spacing: -.02em;
}
.ns-author-hero__bio {
  font-size: .95rem;
  color: rgba(255,255,255,.78);
  line-height: 1.7;
  max-width: 640px;
  margin-bottom: 20px;
}

/* Stats */
.ns-author-hero__stats {
  display: flex;
  gap: 28px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
@media (max-width: 640px) { .ns-author-hero__stats { justify-content: center; } }
.ns-author-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
  position: relative;
}
.ns-author-stat + .ns-author-stat::before {
  content: '';
  position: absolute;
  left: -14px; top: 50%;
  transform: translateY(-50%);
  width: 1px; height: 24px;
  background: rgba(255,255,255,.2);
}
.ns-author-stat__value {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  line-height: 1;
}
.ns-author-stat__label {
  font-size: .72rem;
  color: rgba(255,255,255,.55);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 600;
}

/* ── Social Links ── */
.ns-author-hero__socials,
.ns-author-socials {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
@media (max-width: 640px) { .ns-author-hero__socials { justify-content: center; } }

.ns-author-socials__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  border: 1.5px solid rgba(255,255,255,.2);
  color: #fff;
  transition: background .18s, transform .18s, border-color .18s;
  text-decoration: none;
  flex-shrink: 0;
}
.ns-author-socials__link:hover {
  background: var(--brand-green, #007A3D);
  border-color: var(--brand-green, #007A3D);
  transform: translateY(-2px);
}
.ns-author-socials__link--twitter:hover  { background: #000; border-color: #000; }
.ns-author-socials__link--instagram:hover{ background: linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); border-color: #e6683c; }
.ns-author-socials__link--facebook:hover { background: #1877F2; border-color: #1877F2; }
.ns-author-socials__link--youtube:hover  { background: #FF0000; border-color: #FF0000; }
.ns-author-socials__link--tiktok:hover   { background: #000; border-color: #000; }
.ns-author-socials__link--linkedin:hover { background: #0A66C2; border-color: #0A66C2; }
.ns-author-socials__link--website:hover  { background: var(--brand-green, #007A3D); border-color: var(--brand-green, #007A3D); }

/* Sidebar variant — darker bg, adapts to light mode */
.ns-author-socials--sidebar .ns-author-socials__link {
  background: var(--brand-offwhite, #F8F9FA);
  border-color: var(--brand-border, #E8ECF0);
  color: var(--brand-dark, #0A1628);
}

/* ── Category Filter Tabs ── */
.ns-author-tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 28px;
  padding-bottom: 4px;
}
.ns-author-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 30px;
  font-size: .82rem;
  font-weight: 700;
  color: var(--brand-muted, #6B7280);
  background: var(--brand-offwhite, #F8F9FA);
  border: 1.5px solid var(--brand-border, #E8ECF0);
  text-decoration: none;
  transition: all .18s;
  white-space: nowrap;
}
.ns-author-tab:hover {
  border-color: var(--brand-green, #007A3D);
  color: var(--brand-green, #007A3D);
  background: #f0faf5;
}
.ns-author-tab--active {
  background: var(--brand-green, #007A3D);
  border-color: var(--brand-green, #007A3D);
  color: #fff !important;
}
.ns-author-tab__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 10px;
  background: rgba(0,0,0,.12);
  font-size: .7rem;
  font-weight: 700;
  line-height: 1;
}
.ns-author-tab--active .ns-author-tab__count { background: rgba(255,255,255,.25); }

/* ── Empty State ── */
.ns-author-empty {
  text-align: center;
  padding: 60px 20px;
  color: var(--brand-muted);
}
.ns-author-empty__icon { font-size: 3rem; display: block; margin-bottom: 16px; }
.ns-author-empty p { font-size: 1rem; }
.ns-author-empty__btn {
  display: inline-block;
  margin-top: 16px;
  padding: 10px 20px;
  background: var(--brand-green, #007A3D);
  color: #fff;
  border-radius: 8px;
  font-weight: 700;
  font-size: .88rem;
  text-decoration: none;
  transition: background .15s;
}
.ns-author-empty__btn:hover { background: #005C2E; }

/* ── Sidebar Cards ── */
.ns-author-sidebar-card {
  background: var(--brand-white, #fff);
  border: 1px solid var(--brand-border, #E8ECF0);
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 20px;
}
.ns-author-sidebar-card__title {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--brand-dark, #0A1628);
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--brand-border, #E8ECF0);
}

/* ── Category Beats (sidebar) ── */
.ns-author-beats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ns-author-beat {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: .8rem;
  font-weight: 600;
  background: var(--brand-offwhite, #F8F9FA);
  border: 1.5px solid var(--brand-border, #E8ECF0);
  color: var(--brand-dark, #0A1628);
  text-decoration: none;
  transition: all .15s;
}
.ns-author-beat:hover,
.ns-author-beat--active {
  background: var(--brand-green, #007A3D);
  border-color: var(--brand-green, #007A3D);
  color: #fff;
}

/* ── Recent Posts List (sidebar) ── */
.ns-author-recent { list-style: none; padding: 0; margin: 0; }
.ns-author-recent__item {
  border-bottom: 1px solid var(--brand-border, #E8ECF0);
  padding: 10px 0;
}
.ns-author-recent__item:last-child { border-bottom: none; padding-bottom: 0; }
.ns-author-recent__link {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  text-decoration: none;
}
.ns-author-recent__thumb {
  width: 60px; height: 60px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--brand-border);
}
.ns-author-recent__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
  min-width: 0;
}
.ns-author-recent__title {
  font-size: .82rem;
  font-weight: 700;
  color: var(--brand-dark);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color .15s;
}
.ns-author-recent__link:hover .ns-author-recent__title { color: var(--brand-green, #007A3D); }
.ns-author-recent__date {
  font-size: .72rem;
  color: var(--brand-muted);
}

/* ── Authors Index (shortcode) ── */
.ns-authors-index {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 16px;
}
.ns-author-index-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  background: var(--brand-white, #fff);
  border: 1.5px solid var(--brand-border, #E8ECF0);
  border-radius: 12px;
  text-decoration: none;
  transition: border-color .18s, box-shadow .18s, transform .18s;
}
.ns-author-index-card:hover {
  border-color: var(--brand-green, #007A3D);
  box-shadow: 0 4px 20px rgba(0,122,61,.1);
  transform: translateY(-2px);
}
.ns-author-index-card__avatar {
  width: 56px; height: 56px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid var(--brand-border, #E8ECF0);
}
.ns-author-index-card__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ns-author-index-card__name {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: .92rem;
  font-weight: 800;
  color: var(--brand-dark);
  display: block;
}
.ns-author-index-card__role {
  font-size: .75rem;
  color: var(--brand-green, #007A3D);
  font-weight: 600;
}
.ns-author-index-card__beats {
  font-size: .72rem;
  color: var(--brand-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ns-author-index-card__count {
  font-size: .72rem;
  font-weight: 700;
  color: var(--brand-muted);
  margin-top: 2px;
}

/* ── Author card (single.php box) — already in multiple-authors.php ── */
.ns-author-box {
  margin-top: 36px;
  border-top: 2px solid var(--brand-border);
  padding-top: 28px;
}
.ns-author-box__heading {
  font-family: var(--font-head);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--brand-muted);
  margin-bottom: 18px;
}
.ns-author-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  background: var(--brand-offwhite, #F8F9FA);
  border-radius: 12px;
  border: 1px solid var(--brand-border);
  margin-bottom: 14px;
  transition: box-shadow .15s;
}
.ns-author-card:hover { box-shadow: 0 4px 20px rgba(0,0,0,.06); }
.ns-author-card__top {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.ns-author-card__avatar {
  width: 72px; height: 72px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 3px solid var(--brand-border);
}
.ns-author-card__info { flex: 1; min-width: 0; }
.ns-author-card__name {
  font-family: var(--font-head);
  font-size: 1rem;
  font-weight: 800;
  color: var(--brand-dark);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
}
.ns-author-card__name:hover { color: var(--brand-green, #007A3D); }
.ns-author-card__badge {
  font-size: .65rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 10px;
  background: #e8f5ee;
  color: var(--brand-green, #007A3D);
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ns-author-card__badge--co { background: #f0f4ff; color: #4361ee; }
.ns-author-card__bio {
  font-size: .85rem;
  color: var(--brand-muted);
  line-height: 1.6;
  margin-bottom: 10px;
}
.ns-author-card__social {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.ns-author-card__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: .78rem;
  font-weight: 700;
  border: 1.5px solid var(--brand-border);
  color: var(--brand-dark);
  text-decoration: none;
  transition: background .15s, color .15s, border-color .15s;
}
.ns-author-card__social-link:hover {
  background: var(--brand-green, #007A3D);
  border-color: var(--brand-green, #007A3D);
  color: #fff;
}

/* ── Dark Mode ── */
[data-theme="dark"] .ns-author-hero { background: #010409; }
[data-theme="dark"] .ns-author-hero__overlay { background: linear-gradient(135deg, rgba(0,0,0,.95) 0%, rgba(0,122,61,.4) 100%); }
[data-theme="dark"] .ns-author-sidebar-card { background: #161b22; border-color: #21262d; }
[data-theme="dark"] .ns-author-sidebar-card__title { color: #e6edf3; border-color: #21262d; }
[data-theme="dark"] .ns-author-tab { background: #161b22; border-color: #21262d; color: #8b949e; }
[data-theme="dark"] .ns-author-tab:hover { background: #0d2518; border-color: #007A3D; color: #4ade80; }
[data-theme="dark"] .ns-author-beat { background: #161b22; border-color: #21262d; color: #e6edf3; }
[data-theme="dark"] .ns-author-beat:hover,
[data-theme="dark"] .ns-author-beat--active { background: #007A3D; border-color: #007A3D; color: #fff; }
[data-theme="dark"] .ns-author-recent__item { border-color: #21262d; }
[data-theme="dark"] .ns-author-recent__title { color: #e6edf3; }
[data-theme="dark"] .ns-author-card { background: #161b22; border-color: #21262d; }
[data-theme="dark"] .ns-author-card__name { color: #e6edf3; }
[data-theme="dark"] .ns-author-card__bio { color: #8b949e; }
[data-theme="dark"] .ns-author-card__social-link { border-color: #21262d; color: #e6edf3; }
[data-theme="dark"] .ns-author-index-card { background: #161b22; border-color: #21262d; }
[data-theme="dark"] .ns-author-index-card__name { color: #e6edf3; }
[data-theme="dark"] .ns-author-socials--sidebar .ns-author-socials__link { background: #161b22; border-color: #21262d; color: #e6edf3; }

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) .ns-author-hero { background: #010409; }
  html:not([data-theme="light"]) .ns-author-hero__overlay { background: linear-gradient(135deg,rgba(0,0,0,.95) 0%,rgba(0,122,61,.4) 100%); }
  html:not([data-theme="light"]) .ns-author-sidebar-card { background: #161b22; border-color: #21262d; }
  html:not([data-theme="light"]) .ns-author-sidebar-card__title { color: #e6edf3; border-color: #21262d; }
  html:not([data-theme="light"]) .ns-author-tab { background: #161b22; border-color: #21262d; color: #8b949e; }
  html:not([data-theme="light"]) .ns-author-beat { background: #161b22; border-color: #21262d; color: #e6edf3; }
  html:not([data-theme="light"]) .ns-author-beat:hover,
  html:not([data-theme="light"]) .ns-author-beat--active { background: #007A3D; color: #fff; }
  html:not([data-theme="light"]) .ns-author-recent__item { border-color: #21262d; }
  html:not([data-theme="light"]) .ns-author-card { background: #161b22; border-color: #21262d; }
  html:not([data-theme="light"]) .ns-author-card__name { color: #e6edf3; }
  html:not([data-theme="light"]) .ns-author-index-card { background: #161b22; border-color: #21262d; }
  html:not([data-theme="light"]) .ns-author-index-card__name { color: #e6edf3; }
  html:not([data-theme="light"]) .ns-author-socials--sidebar .ns-author-socials__link { background: #161b22; border-color: #21262d; color: #e6edf3; }
}

/* ── Podcast controls (kept from original authors.css) ── */
.ns-podcast-controls { display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.5rem; }
.ns-pc-btn { background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.3rem .75rem;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s; }
.ns-pc-btn:hover { background:rgba(255,255,255,.35); }
.ns-pc-speed { background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.3rem .5rem;border-radius:6px;font-size:.78rem;cursor:pointer; }
.ns-pc-speed option { background:#1a202c;color:#fff; }

/* ── Hero Style Variants (controlled via NS Options → Author Page) ── */
.ns-author-hero--green .ns-author-hero__overlay {
  background: linear-gradient(135deg, rgba(0,90,40,.93) 0%, rgba(0,122,61,.7) 100%);
}
.ns-author-hero--minimal {
  background: var(--brand-offwhite, #F8F9FA);
  padding: 40px 0 32px;
}
.ns-author-hero--minimal .ns-author-hero__overlay { display: none; }
.ns-author-hero--minimal .ns-author-hero__role  { color: var(--brand-green, #007A3D); }
.ns-author-hero--minimal .ns-author-hero__name  { color: var(--brand-dark, #0A1628); }
.ns-author-hero--minimal .ns-author-hero__bio   { color: var(--brand-muted, #6B7280); }
.ns-author-hero--minimal .ns-author-stat__value { color: var(--brand-dark, #0A1628); }
.ns-author-hero--minimal .ns-author-stat__label { color: var(--brand-muted, #6B7280); }
.ns-author-hero--minimal .ns-author-stat + .ns-author-stat::before { background: var(--brand-border); }
.ns-author-hero--minimal .ns-author-socials__link {
  background: var(--brand-white, #fff);
  border-color: var(--brand-border);
  color: var(--brand-dark);
}
.ns-author-hero--minimal .ns-author-hero__verified {
  border-color: var(--brand-border);
}

/* ============================================================
   AUTHORS DIRECTORY PAGE — Premium Layout
   Template: page-templates/authors-page.php
   Classes prefixed: nap- (NaijaSabi Authors Page)
   ============================================================ */

/* ── Page wrapper ── */
.nap-page { padding-bottom: 80px; }

/* ── HERO ── */
.nap-hero {
  position: relative;
  background: linear-gradient(135deg, #030e1e 0%, #071a0e 50%, #0d2518 100%);
  padding: 72px 0 60px;
  overflow: hidden;
  text-align: center;
}
.nap-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 60% at 50% 120%, rgba(0,122,61,.35) 0%, transparent 70%);
  pointer-events: none;
}
.nap-hero__overlay { display: none; }
.nap-hero__inner { position: relative; max-width: 760px; margin: 0 auto; }
.nap-hero__badge {
  display: inline-block;
  padding: 4px 14px;
  border-radius: 20px;
  border: 1px solid rgba(0,122,61,.5);
  background: rgba(0,122,61,.15);
  font-size: .72rem;
  font-weight: 700;
  color: #4ade80;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 18px;
}
.nap-hero__title {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 900;
  color: #fff;
  letter-spacing: -.03em;
  line-height: 1.05;
  margin-bottom: 16px;
}
.nap-hero__sub {
  font-size: 1rem;
  color: rgba(255,255,255,.65);
  line-height: 1.7;
  margin-bottom: 36px;
}
.nap-hero__sub strong { color: #fff; }

/* Hero stats */
.nap-hero__stats {
  display: inline-flex;
  gap: 0;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255,255,255,.05);
  backdrop-filter: blur(8px);
}
.nap-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px 32px;
  border-right: 1px solid rgba(255,255,255,.1);
}
.nap-stat:last-child { border-right: none; }
.nap-stat__value {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: 1.8rem;
  font-weight: 900;
  color: #fff;
  line-height: 1;
}
.nap-stat__label {
  font-size: .7rem;
  color: rgba(255,255,255,.5);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  margin-top: 4px;
}
@media (max-width: 480px) {
  .nap-hero__stats { flex-direction: column; border-radius: 12px; }
  .nap-stat { border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); padding: 12px 24px; }
  .nap-stat:last-child { border-bottom: none; }
}

/* ── FILTER BAR ── */
.nap-filter {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
  padding: 32px 0 0;
}
.nap-filter__btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 8px 16px;
  border-radius: 30px;
  font-size: .82rem;
  font-weight: 700;
  color: var(--brand-muted, #6B7280);
  background: var(--brand-offwhite, #F8F9FA);
  border: 1.5px solid var(--brand-border, #E8ECF0);
  text-decoration: none;
  transition: all .18s;
  white-space: nowrap;
}
.nap-filter__btn:hover {
  border-color: var(--brand-green, #007A3D);
  color: var(--brand-green, #007A3D);
  background: #f0faf5;
}
.nap-filter__btn--active {
  background: var(--brand-green, #007A3D) !important;
  border-color: var(--brand-green, #007A3D) !important;
  color: #fff !important;
}

/* ── SECTION HEADER ── */
.nap-section-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 48px 0 28px;
}
.nap-section-head__bar {
  width: 4px;
  height: 28px;
  background: var(--brand-green, #007A3D);
  border-radius: 2px;
  flex-shrink: 0;
}
.nap-section-head__title {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--brand-dark, #0A1628);
}
.nap-section-head__count {
  margin-left: auto;
  font-size: .78rem;
  font-weight: 700;
  color: var(--brand-muted);
  background: var(--brand-offwhite);
  border: 1px solid var(--brand-border);
  border-radius: 20px;
  padding: 3px 10px;
}

/* ── FEATURED AUTHOR ── */
.nap-featured { margin: 36px 0 0; }
.nap-featured__label {
  font-size: .72rem;
  font-weight: 800;
  color: var(--brand-gold, #F5A623);
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: 12px;
}
.nap-featured__card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid var(--brand-border, #E8ECF0);
  box-shadow: 0 8px 40px rgba(0,0,0,.08);
  background: var(--brand-white, #fff);
  display: grid;
  grid-template-columns: 280px 1fr;
}
@media (max-width: 768px) {
  .nap-featured__card { grid-template-columns: 1fr; }
}

.nap-featured__cover {
  min-height: 280px;
  background: linear-gradient(135deg, #0A1628 0%, #007A3D 100%);
  background-size: cover;
  background-position: center;
  position: relative;
}
.nap-featured__cover-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(10,22,40,.5), rgba(10,22,40,.1));
}
@media (max-width: 768px) {
  .nap-featured__cover { min-height: 140px; }
  .nap-featured__cover-overlay { background: linear-gradient(to bottom, rgba(10,22,40,.3), rgba(10,22,40,.6)); }
}

.nap-featured__body {
  padding: 32px 36px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
@media (max-width: 768px) { .nap-featured__body { padding: 24px 20px; } }

.nap-featured__avatar-link { display: block; width: fit-content; }
.nap-featured__avatar {
  width: 88px; height: 88px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid var(--brand-white, #fff);
  box-shadow: 0 4px 20px rgba(0,0,0,.15);
  margin-bottom: 4px;
  background: var(--brand-border);
}
.nap-featured__role {
  font-size: .75rem;
  font-weight: 700;
  color: var(--brand-green, #007A3D);
  text-transform: uppercase;
  letter-spacing: .07em;
  display: block;
}
.nap-featured__name {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: 2rem;
  font-weight: 900;
  color: var(--brand-dark, #0A1628);
  letter-spacing: -.02em;
  line-height: 1.1;
}
.nap-featured__name a { color: inherit; text-decoration: none; }
.nap-featured__name a:hover { color: var(--brand-green, #007A3D); }
.nap-featured__bio {
  font-size: .92rem;
  color: var(--brand-muted);
  line-height: 1.7;
  flex: 1;
}
.nap-featured__beats { display: flex; flex-wrap: wrap; gap: 6px; }

.nap-beat-tag {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px;
  border-radius: 16px;
  font-size: .75rem; font-weight: 600;
  background: #f0faf5; color: var(--brand-green, #007A3D);
  border: 1px solid #c3e6d1;
  text-decoration: none;
  transition: all .15s;
}
.nap-beat-tag:hover { background: var(--brand-green, #007A3D); color: #fff; border-color: var(--brand-green); }

.nap-featured__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--brand-border, #E8ECF0);
  margin-top: auto;
}
.nap-featured__meta { display: flex; gap: 16px; flex-wrap: wrap; }
.nap-featured__count {
  font-size: .82rem; color: var(--brand-muted);
}
.nap-featured__count strong { color: var(--brand-dark); font-weight: 700; }
.nap-featured__actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.nap-featured__cta {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 20px;
  background: var(--brand-green, #007A3D);
  color: #fff;
  border-radius: 8px;
  font-weight: 700; font-size: .88rem;
  text-decoration: none;
  transition: background .15s, transform .15s;
}
.nap-featured__cta:hover { background: #005C2E; transform: translateY(-1px); }

/* Social icons (compact, used inside cards) */
.nap-socials { display: flex; gap: 6px; flex-wrap: wrap; }
.nap-socials .ns-author-socials__link {
  width: 32px; height: 32px;
  background: var(--brand-offwhite, #F8F9FA);
  border-color: var(--brand-border, #E8ECF0);
  color: var(--brand-dark, #0A1628);
}

/* ── AUTHORS GRID ── */
.nap-grid-section { margin-top: 0; }
.nap-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
@media (max-width: 640px) { .nap-grid { grid-template-columns: 1fr; } }

/* ── AUTHOR CARD ── */
.nap-card {
  position: relative;
  background: var(--brand-white, #fff);
  border: 1px solid var(--brand-border, #E8ECF0);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .2s, transform .2s, border-color .2s;
}
.nap-card:hover {
  box-shadow: 0 12px 40px rgba(0,0,0,.1);
  transform: translateY(-4px);
  border-color: rgba(0,122,61,.25);
}

/* Top green accent bar */
.nap-card__accent {
  height: 4px;
  background: linear-gradient(90deg, var(--brand-green, #007A3D), #4ade80);
}

/* Cover strip */
.nap-card__cover {
  height: 90px;
  background: linear-gradient(135deg, #0A1628 0%, #0d2518 50%, #007A3D 100%);
  background-size: cover;
  background-position: center;
  position: relative;
  margin-top: -1px;
}
.nap-card__cover-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(10,22,40,.2), rgba(10,22,40,.5));
}

/* Avatar overlapping the cover */
.nap-card__avatar-wrap {
  position: relative;
  margin: -40px 0 0 20px;
  width: fit-content;
  z-index: 2;
}
.nap-card__avatar {
  width: 80px; height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid var(--brand-white, #fff);
  box-shadow: 0 4px 16px rgba(0,0,0,.15);
  display: block;
  background: var(--brand-border);
  transition: transform .18s;
}
.nap-card:hover .nap-card__avatar { transform: scale(1.05); }
.nap-card__verified {
  position: absolute;
  bottom: 2px; right: 2px;
  width: 22px; height: 22px;
  background: var(--brand-green, #007A3D);
  border-radius: 50%;
  border: 2px solid var(--brand-white, #fff);
  display: flex; align-items: center; justify-content: center;
}

/* Card body */
.nap-card__body {
  padding: 12px 20px 14px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.nap-card__role {
  font-size: .72rem;
  font-weight: 700;
  color: var(--brand-green, #007A3D);
  text-transform: uppercase;
  letter-spacing: .06em;
  display: block;
}
.nap-card__name {
  font-family: var(--font-head, 'Syne', sans-serif);
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--brand-dark, #0A1628);
  line-height: 1.2;
  margin: 0;
}
.nap-card__name a { color: inherit; text-decoration: none; }
.nap-card__name a:hover { color: var(--brand-green, #007A3D); }
.nap-card__bio {
  font-size: .82rem;
  color: var(--brand-muted, #6B7280);
  line-height: 1.6;
  flex: 1;
}

/* Beat pills */
.nap-card__beats { display: flex; flex-wrap: wrap; gap: 5px; }
.nap-beat-pill {
  display: inline-flex; align-items: center; gap: 3px;
  padding: 3px 8px;
  border-radius: 12px;
  font-size: .7rem; font-weight: 600;
  background: var(--brand-offwhite, #F8F9FA);
  color: var(--brand-dark, #0A1628);
  border: 1px solid var(--brand-border, #E8ECF0);
}
.nap-beat-pill--more {
  background: var(--brand-green, #007A3D);
  color: #fff; border-color: var(--brand-green);
}

/* Stats row */
.nap-card__stats {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  padding-top: 6px;
}
.nap-card__stat {
  display: flex; align-items: center; gap: 4px;
  font-size: .75rem; color: var(--brand-muted);
}
.nap-card__stat strong { color: var(--brand-dark); font-weight: 700; }
.nap-card__stat svg { flex-shrink: 0; opacity: .6; }

/* Card footer */
.nap-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px 16px;
  border-top: 1px solid var(--brand-border, #E8ECF0);
  gap: 8px;
  flex-wrap: wrap;
}
.nap-card__socials.nap-socials .ns-author-socials__link {
  width: 28px; height: 28px;
  background: var(--brand-offwhite);
  border-color: var(--brand-border);
  color: var(--brand-dark);
}
.nap-card__link {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: .78rem; font-weight: 700;
  color: var(--brand-green, #007A3D);
  text-decoration: none;
  margin-left: auto;
  transition: gap .15s;
}
.nap-card__link:hover { gap: 8px; }
.nap-card__link svg { transition: transform .15s; }
.nap-card__link:hover svg { transform: translateX(3px); }

/* ── EMPTY STATE ── */
.nap-empty {
  text-align: center;
  padding: 80px 20px;
  color: var(--brand-muted);
}
.nap-empty__icon { font-size: 3.5rem; display: block; margin-bottom: 16px; }
.nap-empty h2 { font-family: var(--font-head); font-size: 1.4rem; font-weight: 800; color: var(--brand-dark); margin-bottom: 8px; }
.nap-empty p { font-size: .92rem; }

/* ── DARK MODE ── */
[data-theme="dark"] .nap-filter__btn { background: #161b22; border-color: #21262d; color: #8b949e; }
[data-theme="dark"] .nap-filter__btn:hover { background: #0d2518; border-color: #007A3D; color: #4ade80; }
[data-theme="dark"] .nap-section-head__title { color: #e6edf3; }
[data-theme="dark"] .nap-section-head__count { background: #161b22; border-color: #21262d; color: #8b949e; }
[data-theme="dark"] .nap-featured__card { background: #161b22; border-color: #21262d; }
[data-theme="dark"] .nap-featured__name { color: #e6edf3; }
[data-theme="dark"] .nap-featured__name a { color: #e6edf3; }
[data-theme="dark"] .nap-featured__footer { border-color: #21262d; }
[data-theme="dark"] .nap-beat-tag { background: #0d2518; color: #4ade80; border-color: #007A3D; }
[data-theme="dark"] .nap-card { background: #161b22; border-color: #21262d; }
[data-theme="dark"] .nap-card:hover { box-shadow: 0 12px 40px rgba(0,0,0,.4); border-color: rgba(0,122,61,.4); }
[data-theme="dark"] .nap-card__avatar { border-color: #161b22; }
[data-theme="dark"] .nap-card__verified { border-color: #161b22; }
[data-theme="dark"] .nap-card__name { color: #e6edf3; }
[data-theme="dark"] .nap-card__name a { color: #e6edf3; }
[data-theme="dark"] .nap-card__bio { color: #8b949e; }
[data-theme="dark"] .nap-card__stat { color: #8b949e; }
[data-theme="dark"] .nap-card__stat strong { color: #e6edf3; }
[data-theme="dark"] .nap-card__footer { border-color: #21262d; }
[data-theme="dark"] .nap-beat-pill { background: #21262d; border-color: #30363d; color: #c9d1d9; }
[data-theme="dark"] .nap-card__socials.nap-socials .ns-author-socials__link { background: #21262d; border-color: #30363d; color: #e6edf3; }
[data-theme="dark"] .nap-socials .ns-author-socials__link { background: #21262d; border-color: #30363d; color: #e6edf3; }

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) .nap-filter__btn { background: #161b22; border-color: #21262d; color: #8b949e; }
  html:not([data-theme="light"]) .nap-section-head__title { color: #e6edf3; }
  html:not([data-theme="light"]) .nap-featured__card { background: #161b22; border-color: #21262d; }
  html:not([data-theme="light"]) .nap-featured__name { color: #e6edf3; }
  html:not([data-theme="light"]) .nap-featured__footer { border-color: #21262d; }
  html:not([data-theme="light"]) .nap-card { background: #161b22; border-color: #21262d; }
  html:not([data-theme="light"]) .nap-card__name { color: #e6edf3; }
  html:not([data-theme="light"]) .nap-card__footer { border-color: #21262d; }
  html:not([data-theme="light"]) .nap-beat-pill { background: #21262d; border-color: #30363d; color: #c9d1d9; }
}
