/*
 * Central Brain answer hub (Suite port of Discovery Authority 1.0.2).
 * Rebuilt on the Suite's dark design tokens (modules/site/assets/site.css): type, header, footer,
 * breadcrumbs, cards, FAQ and tables come from the site; only hub-specific pieces live here.
 */

/* ------------------------------------------------------------ Page head */
.nacbda-head .nacbda-h1 {
  max-width: 44rem;
  font-size: clamp(1.85rem, 3.6vw, 2.6rem);
  line-height: 1.12;
}
.nacbda-direct {
  max-width: 46rem;
  margin: 1.5rem 0 0;
  padding: 18px 22px;
  background: linear-gradient(135deg, rgba(240, 4, 127, 0.07), rgba(34, 211, 238, 0.035));
  border: 1px solid var(--line-strong);
  border-left: 3px solid var(--pink);
  border-radius: 0 var(--radius) var(--radius) 0;
  color: var(--text);
  font-size: clamp(1rem, 1.25vw, 1.1rem);
  line-height: 1.65;
}
.nacbda-direct p { margin: 0; }
.nacbda-direct strong { color: #fff; font-weight: 600; }
.nacbda-reviewed { margin-top: 14px; }

/* Video slots (filled by the video module only when a video is configured) */
.nacbda-video { max-width: 46rem; margin: 1.5rem 0 0; }
.nacbda-section .nacbda-video { margin: 1.25rem 0 0; }

/* --------------------------------------------------------------- Layout */
.nacbda-layout { display: grid; gap: clamp(32px, 5vw, 64px); }
.nacbda-layout > * { min-width: 0; }
@media (min-width: 960px) {
  .nacbda-layout { grid-template-columns: minmax(0, 1fr) 260px; }
}
.nacbda-content { max-width: 46rem; }
.nacbda-lede { font-size: 1.05rem; }
.nacbda-h2 {
  margin: 0 0 1rem;
  color: var(--text);
  font-family: var(--head);
  font-size: clamp(1.3rem, 2.2vw, 1.6rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.03em;
  text-wrap: balance;
}
.nacbda-section,
.nacbda-paths,
.nacbda-related,
.nacbda-next {
  margin-top: clamp(40px, 5vw, 56px);
  padding-top: clamp(28px, 3.5vw, 40px);
  border-top: 1px solid var(--line);
}
.nacbda-section .naig-answer { margin-bottom: 1rem; }

/* ---------------------------------------------------- Answer cards (hub) */
.nacbda-cards { display: grid; gap: 14px; margin-top: 20px; }
@media (min-width: 640px) {
  .nacbda-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nacbda-card--lead { grid-column: 1 / -1; }
}
.nacbda-card { display: flex; flex-direction: column; gap: 8px; padding: 22px 22px 20px; }
.nacbda-card h3 { margin: 0; }
.nacbda-card--lead { border-color: rgba(240, 4, 127, 0.3); }
.nacbda-card__more { margin-top: auto; padding-top: 6px; color: var(--cyan); font-size: 0.85rem; font-weight: 500; }

/* ------------------------------------------------------ Lists and tables */
.nacbda-tools { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 1.1em; padding: 0; list-style: none; }
.nacbda-tools li { margin: 0; }
.nacbda-table-wrap { margin: 0 0 1.1em; }
.nacbda .naig-table { min-width: 0; }
@media (max-width: 480px) {
  .nacbda .naig-table th,
  .nacbda .naig-table td { padding: 10px 8px; }
}

/* ------------------------------------------------------------ Checklist */
.nacbda-check {
  margin-top: clamp(40px, 5vw, 56px);
  padding: 24px 26px;
  background: rgba(52, 211, 153, 0.045);
  border: 1px solid rgba(52, 211, 153, 0.22);
  border-radius: var(--radius);
}
.nacbda-check__label {
  margin: 0 0 8px !important;
  color: var(--good) !important;
  font-size: 0.75rem;
  font-weight: 520;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.nacbda-check ul { margin: 14px 0 0 !important; padding: 0; list-style: none; }
.nacbda-check li {
  position: relative;
  margin: 0;
  padding: 10px 0 10px 30px;
  border-top: 1px solid rgba(52, 211, 153, 0.14);
}
.nacbda-check li:first-child { border-top: 0; }
.nacbda-check li::before { content: "\2713"; position: absolute; left: 4px; top: 10px; color: var(--good); font-weight: 700; }

/* ------------------------------------------------------------------ FAQ */
.nacbda-faq { margin-top: clamp(40px, 5vw, 56px); }
.nacbda-faq .naig-faq { margin-top: 12px; }

/* ---------------------------------------------------- Related and next */
.nacbda-links { margin: 0 !important; padding: 0; list-style: none; }
.nacbda-links li { margin: 0; padding: 10px 0; border-top: 1px solid var(--line); }
.nacbda-links li:first-child { border-top: 0; }
.nacbda-links a { font-weight: 500; }

/* -------------------------------------------------- Canonical source note */
.nacbda-source { margin-top: clamp(40px, 5vw, 56px); }
.nacbda-source h2 { margin: 0 0 6px; color: var(--text); font-family: var(--head); font-size: 1.05rem; font-weight: 580; }
.nacbda-source p { margin: 0 !important; }

/* ---------------------------------------------------------------- Aside */
.nacbda-toc { margin: 0 0 8px; padding: 0; list-style: none; }
.nacbda-toc li { border-top: 1px solid var(--line); }
.nacbda-toc a {
  display: block;
  padding: 8px 0;
  color: var(--text-2) !important;
  font-size: 0.85rem;
  line-height: 1.45;
  text-decoration: none !important;
}
.nacbda-toc a:hover { color: var(--text) !important; }
.nacbda-cta { margin-top: 28px; padding: 22px; }
.nacbda-cta__title { margin: 0 0 6px !important; color: var(--text) !important; font-family: var(--head); font-size: 1rem; font-weight: 600; }
@media (max-width: 959px) {
  .nacbda-aside .naig-sticky { position: static; }
}
