/**
 * Default Modern article template (template-default-modern.php).
 * Loaded only on that template; every rule is scoped to .finsery-modern-page / .finsery-modern-article.
 * Colours follow tailwind.config.js tokens (primary, text, border, header).
 */

.finsery-modern-page {
  --dm-ink: #0f172a;
  --dm-text: #323238;
  --dm-muted: #64748b;
  --dm-border: #e5e7eb;
  --dm-border-strong: #d8dde6;
  --dm-brand: #37559a;
  --dm-primary: #3c83f6;
  --dm-primary-dark: #1d4ed8;
  --dm-tint: #f3f7ff;
  --dm-hover: #f5f7fb;
  --dm-page-bg: #f6f7fb;
  --dm-radius: 1rem;
  --dm-sticky-top: 1rem;
  --dm-gutter: 1rem;
  --dm-max: 75rem;
  background: var(--dm-page-bg);
}

@media (min-width: 640px) {
  .finsery-modern-page { --dm-gutter: 1.5rem; }
}

@media (min-width: 1024px) {
  .finsery-modern-page { --dm-gutter: 2rem; }
}

@media (min-width: 1200px) {
  .finsery-modern-page {
    --dm-max: 80rem;
  }
}

@media (min-width: 1440px) {
  .finsery-modern-page {
    --dm-max: 88rem;
    --dm-gutter: 6rem;
  }
}

@media (min-width: 1600px) {
  .finsery-modern-page {
    --dm-max: 92rem;
  }
}

.finsery-modern-article {
  font-family: Sarabun, Inter, ui-sans-serif, system-ui, Helvetica, Arial, sans-serif;
}

.finsery-modern-article__container {
  width: 100%;
  max-width: calc(var(--dm-max) + 2 * var(--dm-gutter));
  margin-inline: auto;
  padding-inline: var(--dm-gutter);
}

/* ── Breadcrumbs ──────────────────────────────────────────────────────── */

.finsery-modern-article__band {
  position: relative;
  padding-top: 1.25rem;
}

@media (min-width: 768px) {
  .finsery-modern-article__band { padding-top: 1.75rem; }
}

@media (min-width: 1024px) {
  .finsery-modern-article__band { padding-top: 2.25rem; }
}

.finsery-modern-article__band-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.finsery-modern-article__crumbs nav.breadcrumb {
  margin: 0;
  padding: 0;
  max-width: none;
  font-size: 0.8125rem;
}

.finsery-modern-article__crumbs nav.breadcrumb a,
.finsery-modern-article__crumbs nav.breadcrumb a span {
  font-size: 0.8125rem;
  font-weight: 500;
}

.finsery-modern-article__crumbs nav.breadcrumb ol > li:last-child {
  color: var(--dm-muted);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}

@media (max-width: 1023px) {
  .finsery-modern-article__crumbs nav.breadcrumb ol {
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .finsery-modern-article__crumbs nav.breadcrumb ol::-webkit-scrollbar { display: none; }

  .finsery-modern-article__crumbs nav.breadcrumb ol > li {
    flex-shrink: 0;
    white-space: nowrap;
  }

  .finsery-modern-article__crumbs nav.breadcrumb ol > li:last-child {
    flex: none;
    overflow: visible;
    text-overflow: clip;
  }
}

@media (min-width: 1024px) {
  .finsery-modern-article__crumbs nav.breadcrumb,
  .finsery-modern-article__crumbs nav.breadcrumb a,
  .finsery-modern-article__crumbs nav.breadcrumb a span,
  .finsery-modern-article__crumbs nav.breadcrumb ol > li:last-child { font-size: 0.875rem; }
}

/* ── Title, dek, meta ─────────────────────────────────────────────────── */

.finsery-modern-article__intro {
  padding-block: 1.75rem 1.75rem;
}

@media (min-width: 768px) {
  .finsery-modern-article__intro { padding-block: 2rem 2rem; }
}

@media (min-width: 1024px) {
  .finsery-modern-article__intro {
    padding-block: 2.5rem 2.25rem;
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(17rem, 3fr);
    column-gap: 2rem;
  }
  .finsery-modern-article__intro > * {
    grid-column: 1 / 2;
  }
}

.finsery-modern-article__title {
  margin: 0;
  color: var(--dm-ink);
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.015em;
}

@media (min-width: 640px) {
  .finsery-modern-article__title { font-size: 2.25rem; }
}

@media (min-width: 1024px) {
  .finsery-modern-article__title { font-size: 2.75rem; line-height: 1.15; }
}

.finsery-modern-article__dek {
  max-width: 46rem;
  margin: 1rem 0 0;
  color: #475569;
  font-size: 1.0625rem;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .finsery-modern-article__dek { font-size: 1.1875rem; }
}

.finsery-modern-article__meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  margin-top: 0.75rem;
}

.finsery-modern-article__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1.25rem;
  min-width: 0;
  font-size: 0.9375rem;
  line-height: 1.4;
}

@media (max-width: 639px) {
  .finsery-modern-article__meta { row-gap: 0.75rem; }

  .finsery-modern-article__author {
    order: 1;
    flex-basis: 100%;
  }
}

@media (min-width: 640px) {
  .finsery-modern-article__meta { gap: 0.5rem 1.75rem; font-size: 1rem; }
}

.finsery-modern-article__author {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  min-width: 0;
}

.finsery-modern-article__avatar {
  display: flex;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  overflow: hidden;
  border-radius: 999px;
}

.finsery-modern-article__author-name {
  color: var(--dm-ink);
  font-weight: 500;
}

.finsery-modern-article__meta-item {
  color: var(--dm-muted);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.finsery-prefer-card {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1rem 1.125rem;
  color: var(--dm-ink);
  background: #fff;
  border: 1px solid var(--dm-border);
  border-radius: var(--dm-radius);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.finsery-prefer-card:hover {
  border-color: var(--dm-border-strong);
  box-shadow: 0 6px 18px -12px rgba(15, 23, 42, 0.35);
}

.finsery-prefer-card:focus-visible {
  outline: 2px solid var(--dm-primary);
  outline-offset: 2px;
}

.finsery-prefer-card__logo {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}

.finsery-prefer-card__text {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  text-wrap: balance;
}

.finsery-prefer-card__btn {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.375rem;
  padding: 0.5rem 0.875rem;
  color: var(--dm-ink);
  border: 1px solid var(--dm-border-strong);
  border-radius: 999px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  transition: background-color 0.2s ease;
}

.finsery-prefer-card__btn svg {
  width: 1rem;
  height: 1rem;
}

.finsery-prefer-card:hover .finsery-prefer-card__btn { background: var(--dm-hover); }

@media (min-width: 1024px) {
  .finsery-modern-article__sidebar .finsery-prefer-card {
    gap: 0.5rem;
    padding: 0.875rem 1rem;
    justify-content: center;
  }
  
  .finsery-modern-article__sidebar .finsery-prefer-card__text {
    flex: 0 1 auto;
    text-wrap: unset;
    font-size: 0.875rem;
  }
  
  .finsery-modern-article__sidebar .finsery-prefer-card__btn {
    padding: 0.375rem 0.625rem;
  }
}

/* ── Layout ───────────────────────────────────────────────────────────── */

.finsery-modern-article__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.5rem;
}

.finsery-modern-article__main { min-width: 0; }

.finsery-modern-article__sidebar { display: none; }

@media (min-width: 1024px) {
  .finsery-modern-article__layout {
    grid-template-columns: minmax(0, 7fr) minmax(17rem, 3fr);
    gap: 2rem;
  }

  .finsery-modern-article__sidebar {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    min-width: 0;
  }

  .finsery-modern-article__mobile-share { display: none; }
}

@media (min-width: 1200px) {
  .finsery-modern-article__layout {
    grid-template-columns: minmax(0, 1fr) 20rem;
  }
}

/* ── Hero image ───────────────────────────────────────────────────────── */

.finsery-modern-article__featured {
  position: relative;
  margin: 0 0 0.75rem;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 1rem;
  border: 3px solid #fff;
  background: #dbe3f3;
  box-shadow: 0 10px 30px -15px rgba(15, 23, 42, 0.35);
}

@media (min-width: 1024px) {
  .finsery-modern-article__featured { margin-bottom: 1rem; }
}

.finsery-modern-article__hero > .finsery-prefer-card { display: none; }

@media (max-width: 1023px) {
  .finsery-modern-article__hero {
    margin-bottom: 0.75rem;
    padding: 0 0.3125rem 0.3125rem;
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 10px 30px -15px rgba(15, 23, 42, 0.35);
  }

  .finsery-modern-article__hero .finsery-modern-article__featured {
    margin: 0;
    border: 0;
    border-radius: 0.75rem;
    box-shadow: none;
  }

  .finsery-modern-article__hero > .finsery-prefer-card {
    display: flex;
    gap: 0.625rem;
    padding: 0.625rem 0.4375rem;
    background: transparent;
    border: 0;
    border-radius: 0.75rem;
    box-shadow: none;
  }

  .finsery-modern-article__hero > .finsery-prefer-card:focus-visible { outline-offset: -2px; }

  .finsery-modern-article__hero .finsery-prefer-card__logo {
    width: 1.375rem;
    height: 1.375rem;
  }

  .finsery-modern-article__hero .finsery-prefer-card__text {
    font-size: 0.8125rem;
    line-height: 1.3;
  }

  .finsery-modern-article__hero .finsery-prefer-card__btn {
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    font-size: 0.75rem;
  }

  .finsery-modern-article__hero .finsery-prefer-card__btn svg {
    width: 0.8125rem;
    height: 0.8125rem;
  }
}

.finsery-modern-article__featured-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  object-fit: cover;
  object-position: center;
}

.finsery-modern-article__mobile-share { margin-bottom: 1.25rem; }

/* ── Article surface ──────────────────────────────────────────────────── */

.finsery-modern-article__body {
  padding: 1.25rem;
  background: #fff;
  border: 1px solid var(--dm-border);
  border-radius: var(--dm-radius);
}

@media (min-width: 640px) {
  .finsery-modern-article__body { padding: 2rem; }
}

@media (min-width: 1200px) {
  .finsery-modern-article__body { padding: 2.5rem; }
}

.finsery-modern-article__note .finsery-editorial-note--generic-modern {
  margin: 0;
  padding: 0;
  overflow: visible;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.finsery-modern-article__note p {
  font-size: 0.8125rem;
  line-height: 1.6;
}

.finsery-modern-article__note--top {
  margin-bottom: 1.75rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--dm-border);
}

.finsery-modern-article__note--bottom {
  margin-top: 2.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--dm-border);
}

/* ── Article typography (direct children only, so components keep their own styles) ── */

.finsery-modern-article__content .prose {
  color: var(--dm-text);
}

.finsery-modern-article__content .prose > p,
.finsery-modern-article__content .prose > ul > li,
.finsery-modern-article__content .prose > ol > li {
  color: var(--dm-text);
  font-size: 1.0625rem;
  line-height: 1.72;
}

.finsery-modern-article__content .prose > p { margin: 0 0 1.25em; }

.finsery-modern-article__content .prose > ul > li,
.finsery-modern-article__content .prose > ol > li { margin-bottom: 0.5em; }

@media (min-width: 1024px) {
  .finsery-modern-article__content .prose > p,
  .finsery-modern-article__content .prose > ul > li,
  .finsery-modern-article__content .prose > ol > li { font-size: 1.125rem; }
}

.finsery-modern-article__content .prose > h2 {
  margin-bottom: 0.75em;
  color: var(--dm-ink);
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.015em;
}

.finsery-modern-article__content .prose > h3 {
  margin-bottom: 0.6em;
  color: var(--dm-ink);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.finsery-modern-article__content .prose > h4 {
  margin-bottom: 0.5em;
  color: var(--dm-ink);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.35;
}

@media (min-width: 768px) {
  .finsery-modern-article__content .prose > h2 { font-size: 1.875rem; }
  .finsery-modern-article__content .prose > h3 { font-size: 1.375rem; }
}

@media (min-width: 1280px) {
  .finsery-modern-article__content .prose > h2 { font-size: 2rem; }
  .finsery-modern-article__content .prose > h3 { font-size: 1.5rem; }
}

.finsery-modern-article__content h2 {
  padding-left: 0.875rem;
  border-left: 4px solid var(--dm-brand);
}

.finsery-modern-article__content .finsery-suppress-article-h2-accent h2 {
  padding-left: 0;
  border-left: none;
}

.finsery-modern-article__content :is(h2, h3, h4)[id] {
  scroll-margin-top: calc(var(--dm-sticky-top) + 0.5rem);
}

.finsery-modern-article__content :is(h2, h3, h4)[id]:focus { outline: none; }

/* ── Quick Take ───────────────────────────────────────────────────────── */

.finsery-modern-article__content .quick-takeaway {
  max-width: none;
  margin: 0 0 2rem;
}

.finsery-modern-article__content .quick-takeaway > .group,
.finsery-modern-article__content .quick-takeaway > .group:hover {
  padding: 1.25rem 1.25rem 1.25rem 1.5rem;
  background: var(--dm-tint);
  border: 1px solid #dbe6fb;
  border-left: 3px solid var(--dm-primary);
  border-radius: 0.875rem;
  box-shadow: none;
  transform: none;
}

@media (min-width: 768px) {
  .finsery-modern-article__content .quick-takeaway > .group,
  .finsery-modern-article__content .quick-takeaway > .group:hover { padding: 1.5rem 1.75rem 1.5rem 2rem; }
}

.finsery-modern-article__content .quick-takeaway .qt-pattern { display: none; }

.finsery-modern-article .finsery-modern-article__content .quick-takeaway__title {
  margin: 0 0 0.875rem !important;
  padding: 0;
  color: var(--dm-primary-dark);
  font-family: inherit;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.finsery-modern-article .finsery-modern-article__content .quick-takeaway .qt-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

.finsery-modern-article__content .quick-takeaway .qt-item {
  margin: 0 0 0.625rem;
  color: var(--dm-ink);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
}

.finsery-modern-article__content .quick-takeaway .qt-item:last-child { margin-bottom: 0; }

@media (min-width: 1024px) {
  .finsery-modern-article__content .quick-takeaway .qt-item { font-size: 1.0625rem; }
}

.finsery-modern-article__content .quick-takeaway .qt-dot {
  margin-top: 0.6em;
  width: 7px;
  height: 7px;
  background: var(--dm-primary);
}

.finsery-modern-article__content .quick-takeaway .qt-collapsed .qt-item:nth-child(2)::after {
  background: linear-gradient(to bottom, rgba(243, 247, 255, 0), var(--dm-tint));
}

.finsery-modern-article__content .quick-takeaway .qt-toggle-text { margin-left: 0; }

/* ── Tables ───────────────────────────────────────────────────────────── */

.finsery-modern-article__content figure.wp-block-table {
  max-width: 100%;
  margin: 1.75rem 0;
  overflow-x: auto;
  border: 1px solid var(--dm-border);
  border-radius: 0.75rem;
  -webkit-overflow-scrolling: touch;
}

.finsery-modern-article__content figure.wp-block-table table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
  font-size: 0.9375rem;
  line-height: 1.5;
}

.finsery-modern-article__content figure.wp-block-table :is(th, td) {
  padding: 0.75rem 1rem;
  border: 0;
  border-bottom: 1px solid var(--dm-border);
  text-align: left;
  vertical-align: top;
}

.finsery-modern-article__content figure.wp-block-table thead th {
  color: var(--dm-ink);
  background: #f8fafc;
  font-size: 0.875rem;
  font-weight: 600;
}

.finsery-modern-article__content figure.wp-block-table tbody tr:last-child td { border-bottom: 0; }

.finsery-modern-article__content .finsery-simple-table {
  max-width: 100%;
  margin: 1.75rem 0;
}

.finsery-modern-article__content .finsery-simple-table .simple-table-container { border-radius: 0.75rem; }

.finsery-modern-article__content .finsery-simple-table .simple-table {
  font-size: 0.9375rem;
  line-height: 1.5;
}

.finsery-modern-article__content .finsery-simple-table .simple-table :is(th, td) { padding: 0.75rem 1rem; }

.finsery-modern-article__content .prose > table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  font-size: 0.9375rem;
}

/* ── Accordions / FAQ ─────────────────────────────────────────────────── */

.finsery-modern-article__content .finsery-accordion-section { margin-top: 2rem; }

.finsery-modern-article__content :has(> [data-accordion-item]) {
  border-color: var(--dm-border);
  box-shadow: none;
}

.finsery-modern-article__content .finsery-accordion-section [data-accordion-group] { border-radius: 0.5rem; }

.finsery-modern-article__content [data-accordion-trigger] {
  padding: 1.125rem 1.25rem;
  color: var(--dm-ink);
  font-size: 1.0625rem;
  font-weight: 600;
}

@media (min-width: 768px) {
  .finsery-modern-article__content [data-accordion-trigger] {
    padding-inline: 1.5rem;
    font-size: 1.125rem;
  }
}

.finsery-modern-article__content [data-accordion-trigger]:hover { background: var(--dm-hover); }

.finsery-modern-article .finsery-modern-article__content [data-accordion-trigger]:focus-visible {
  outline: 2px solid var(--dm-primary);
  outline-offset: -2px;
}

.finsery-modern-article__content [data-accordion-icon] {
  width: 1.25rem;
  height: 1.25rem;
  margin-top: 0.15rem;
  color: #94a3b8;
}

.finsery-modern-article__content .is-open [data-accordion-icon] { color: var(--dm-primary-dark); }

.finsery-modern-article__content .finsery-accordion-item::before { display: none; }

.finsery-modern-article__content .finsery-accordion-panel { padding-inline: 1.25rem; }

@media (min-width: 768px) {
  .finsery-modern-article__content .finsery-accordion-panel { padding-inline: 1.5rem; }
}

.finsery-modern-article__content .finsery-suppress-article-h2-accent:has([data-accordion-item]) > div > div:first-child {
  background: var(--dm-tint);
  border: 1px solid #dbe6fb;
  border-bottom: 2px solid var(--dm-primary);
  border-radius: 0.875rem 0.875rem 0 0;
}

.finsery-modern-article__content .finsery-suppress-article-h2-accent:has([data-accordion-item]) h2 {
  font-size: 1.375rem;
  line-height: 1.3;
}

@media (min-width: 768px) {
  .finsery-modern-article__content .finsery-suppress-article-h2-accent:has([data-accordion-item]) h2 { font-size: 1.5rem; }
}

.finsery-modern-article__content .finsery-suppress-article-h2-accent :has(> [data-accordion-item]) {
  border-top: 0;
  border-radius: 0 0 0.875rem 0.875rem;
}

.finsery-modern-article__content :is(.finsery-faq-answer, .finsery-accordion-panel),
.finsery-modern-article__content :is(.finsery-faq-answer, .finsery-accordion-panel) :is(p, li) {
  color: #334155;
  font-size: 1rem;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .finsery-modern-article__content :is(.finsery-faq-answer, .finsery-accordion-panel),
  .finsery-modern-article__content :is(.finsery-faq-answer, .finsery-accordion-panel) :is(p, li) { font-size: 1.0625rem; }
}

/* ── Sidebar ──────────────────────────────────────────────────────────── */

.finsery-modern-article__sticky-track { flex: 1 1 auto; }

.finsery-modern-article__sidebar-card {
  position: sticky;
  top: var(--dm-sticky-top);
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - var(--dm-sticky-top) - 1.5rem);
  padding: 1.375rem 1.25rem 1rem;
  background: #fff;
  border: 1px solid var(--dm-border);
  border-radius: var(--dm-radius);
}

.finsery-modern-article__sidebar .finsery-ad-slot { width: 100%; }

/* ── Share buttons ────────────────────────────────────────────────────── */

.finsery-modern-article__share-label {
  margin: 0 0 0.25rem;
  color: var(--dm-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.finsery-modern-article__toc-title {
  margin: 0 0 0.75rem;
  color: var(--dm-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.finsery-modern-article__share-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.finsery-modern-article__share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  color: #334155;
  background: #fff;
  border: 1px solid var(--dm-border-strong);
  border-radius: 999px;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.finsery-modern-article__share-btn:hover {
  color: #fff;
  background: var(--dm-primary-dark);
  border-color: var(--dm-primary-dark);
}

.finsery-modern-article__share-btn svg {
  width: 1.05rem;
  height: 1.05rem;
}

.finsery-modern-article__share-btn--facebook svg {
  width: 1.25rem;
  height: 1.25rem;
}

.finsery-modern-article__share-btn svg:not([fill="none"]) { fill: currentColor; }

.finsery-modern-article__share-btn:focus-visible,
.finsery-modern-article__toc-item:focus-visible,
.finsery-modern-article__toc-summary:focus-visible {
  outline: 2px solid var(--dm-primary);
  outline-offset: 2px;
}

.finsery-modern-article__share-status {
  display: none;
  margin: 0.5rem 0 0;
  color: var(--dm-primary-dark);
  font-size: 0.75rem;
  font-weight: 600;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.finsery-modern-article__share-status.is-visible { 
  display: block;
  opacity: 1; 
}

.finsery-modern-article__share--sidebar .finsery-modern-article__share-status { margin-bottom: 0; }

.finsery-modern-article__share--inline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.25rem 0.875rem;
}

.finsery-modern-article__share--inline .finsery-modern-article__share-label { margin: 0; }

.finsery-modern-article__share--inline .finsery-modern-article__share-status {
  flex-basis: 100%;
  margin: 0;
}

/* ── Table of contents ────────────────────────────────────────────────── */

.finsery-modern-article__toc-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.finsery-modern-article__toc-list > li { margin: 0 0 0.125rem; }

.finsery-modern-article__toc-item {
  display: block;
  padding: 0.5rem 0.75rem;
  color: #1e293b;
  border-radius: 0.5rem;
  font-size: 0.90625rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.finsery-modern-article__toc-item--sub {
  padding-block: 0.375rem;
  padding-left: 1.625rem;
  color: var(--dm-muted);
  font-size: 0.84375rem;
  font-weight: 500;
}

.finsery-modern-article__toc-item:hover {
  color: var(--dm-ink);
  background: var(--dm-hover);
}

.finsery-modern-article__toc-item.is-active {
  color: var(--dm-primary-dark);
  background: #eef4ff;
}

.finsery-modern-article__toc-item--sub.is-active { font-weight: 600; }

.finsery-modern-article__toc--sidebar {
  display: flex;
  flex-direction: column;
  min-height: 0;
  margin-top: 1.125rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--dm-border);
}

.finsery-modern-article__toc-progress {
  position: absolute;
  top: var(--dm-radius);
  bottom: var(--dm-radius);
  left: -1.5px;
  width: 2px;
  overflow: hidden;
  border-radius: 999px;
  pointer-events: none;
}

.finsery-modern-article__progress-bar {
  position: absolute;
  inset: 0;
  background: var(--dm-primary);
  border-radius: inherit;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.12s linear;
  will-change: transform;
}

.finsery-modern-article__toc--sidebar .finsery-modern-article__toc-list {
  min-height: 0;
  margin-inline: -0.5rem;
  padding-inline: 0.5rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}

/* ── Related articles + footer transition ─────────────────────────────── */

.finsery-modern-article-related {
  max-width: calc(var(--dm-max) + 2 * var(--dm-gutter));
  margin: 2.5rem auto 0;
  padding: 0 var(--dm-gutter) 3rem;
}

@media (min-width: 1024px) {
  .finsery-modern-article-related {
    margin-top: 3.5rem;
    padding-bottom: 4rem;
  }
}

.finsery-modern-article-related > section { margin: 0; }

.finsery-modern-article-related > section > div {
  max-width: none;
  margin: 0;
  padding: 2.25rem 0 0;
  background: none;
  border-top: 1px solid var(--dm-border-strong);
  border-radius: 0;
}

.finsery-modern-article-related > section h2 {
  justify-content: flex-start;
  margin-bottom: 1.5rem;
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .finsery-modern-article-related > section h2 { font-size: 1.75rem; }
}

.finsery-modern-article-related > section > div > .grid { gap: 1.25rem; }

@media (min-width: 1024px) {
  .finsery-modern-article-related > section > div > .grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

.finsery-modern-article-related article {
  border-color: var(--dm-border);
  border-radius: 0.875rem;
  box-shadow: none;
}

.finsery-modern-article-related article:hover {
  border-color: var(--dm-border-strong);
  box-shadow: 0 12px 28px -18px rgba(15, 23, 42, 0.35);
}

.finsery-modern-article-related article > a > div:first-child {
  aspect-ratio: 16 / 9;
  background: #eef1f6;
}

.finsery-modern-article-related article > a > div:first-child > * {
  height: 100%;
}

.finsery-modern-article-related article a:focus-visible {
  outline: 2px solid var(--dm-primary);
  outline-offset: 2px;
  border-radius: 0.875rem;
}

@media (prefers-reduced-motion: reduce) {
  .finsery-modern-page *,
  .finsery-modern-page *::before { transition: none !important; }
}
