/* Functional states; existing journal palette and typography are inherited. */
:root { --rv-article-offset: 82px; --rv-section-nav-height: 0px; --rv-page-scroll-padding: 0px; }
.rv-internal-layout--article .rv-internal-section { scroll-margin-top: calc(var(--rv-article-offset) + var(--rv-section-nav-height) + 16px - var(--rv-page-scroll-padding)); }
.rv-internal-layout--article .rv-internal-section-nav { flex-wrap: wrap; overflow: visible; background: var(--rv-white); z-index: 4; }
.rv-internal-section-nav[data-mode="sticky"] { position: sticky; top: var(--rv-article-offset); }
.rv-internal-section-nav a { white-space: normal; padding: 12px 10px; }
.rv-internal-section-nav a[aria-current="location"] { border-bottom-color: var(--rv-accent); font-weight: 650; }
.rv-internal-layout[data-sticky-rail="true"] .rv-internal-rail { position: sticky; top: var(--rv-rail-offset, var(--rv-article-offset)); max-height: none; height: auto; overflow: visible; padding: 4px 6px 8px 2px; }
.rv-internal-rail .rv-internal-tools { margin: 0; }
.rv-accordion { padding: 0; border: 0; border-bottom: 1px solid var(--rv-line); }
.rv-accordion > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; padding: 18px 0; background: transparent; }
.rv-accordion > summary::-webkit-details-marker { display: none; }
.rv-accordion > summary h2 { margin: 0; font-size: 24px; }
.rv-accordion > summary h2::before { display: none; }
.rv-accordion > summary:focus-visible { outline: 2px solid var(--rv-focus); outline-offset: 3px; }
.rv-accordion[open] > summary .rv-accordion-arrow { transform: rotate(180deg); }
.rv-section-content { line-height: 1.8; overflow-wrap: anywhere; padding-bottom: 22px; }
.rv-section-content .field__label { display: none; }
.rv-section-content .field-item + .field-item { margin-top: 12px; }
.rv-section-content table { max-width: 100%; display: block; overflow-x: auto; }
.rv-internal-primary.rv-pdf-unavailable, .rv-internal-primary.rv-pdf-unavailable:hover { background: var(--rv-surface); color: var(--rv-muted); border-color: var(--rv-line); cursor: not-allowed; box-shadow: none; transform: none; opacity: 1; }
.rv-copy-doi { width: 100%; margin-top: 10px; font-size: 13px; }
.rv-article-languages { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; margin-bottom: 18px; }
.rv-article-languages a { padding: 6px 10px; border-bottom: 2px solid transparent; }
.rv-article-languages a[aria-current] { border-color: var(--rv-accent); font-weight: 700; }
.rv-citation-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.rv-citation-tabs button { font-size: 13px; padding: 6px 10px; }
.rv-citation-tabs [aria-selected="true"] { background: var(--rv-accent); color: var(--rv-white); }
.rv-citation-formats .rv-internal-citation { white-space: pre-wrap; }
.rv-back-top { position: fixed; right: 22px; bottom: 22px; z-index: 40; min-height: 44px; min-width: 44px; background: var(--rv-white); color: var(--rv-text); border: 1px solid var(--rv-line-strong); box-shadow: 0 2px 8px var(--rv-shadow-soft); }
.rv-mobile-actions { display: none; }
@media (max-width: 950px) {
  .rv-internal-layout[data-sticky-rail="true"] .rv-internal-rail { position: static; max-height: none; overflow: visible; }
  .rv-internal-section-nav[data-mode="sticky"] { position: static; }
  .rv-internal-layout--article .rv-internal-section { scroll-margin-top: calc(var(--rv-article-offset) + 12px - var(--rv-page-scroll-padding)); }
  .rv-mobile-actions { display: flex; gap: 8px; position: fixed; bottom: 0; left: 0; right: 0; z-index: 35; background: var(--rv-white); border-top: 1px solid var(--rv-line); padding: 8px 12px max(8px,env(safe-area-inset-bottom)); }
  .rv-mobile-actions > * { flex: 1; font-size: 13px; }
  body:has(.rv-mobile-actions) { padding-bottom: 76px; }
  body:has(.rv-mobile-actions) .rv-back-top { bottom: 86px; }
  .rv-back-top { right: 12px; bottom: 16px; }
}
@media (prefers-reduced-motion: reduce) { .rv-back-top,.rv-accordion-arrow { transition: none; } }

.member-bio-preview { margin-top: 16px; border-top: 1px solid var(--rv-line); padding-top: 12px; }
.member-bio-preview summary { cursor: pointer; font-weight: 600; }
.member-bio-preview summary:focus-visible { outline: 2px solid var(--rv-focus); outline-offset: 3px; }
.member-bio-preview div { margin: 12px 0; line-height: 1.7; overflow-wrap: anywhere; }
.rv-mobile-actions .rv-copy-doi, .rv-mobile-actions [data-rv-copy-value] { display: none; }
.rv-mobile-actions .rv-internal-tool-row { margin: 0; display: flex; }
.rv-mobile-actions .rv-internal-tool-row > a { flex: 1; }

[data-rv-action-rail]:empty, .rv-mobile-actions[hidden] { display: none; }
.rv-rail-navigation > summary { cursor: pointer; font: 700 23px/1.3 var(--rv-font-heading); margin: 0; }
.rv-rail-navigation > summary:focus-visible { outline: 2px solid var(--rv-focus); outline-offset: 3px; }
.rv-rail-navigation[open] > summary { margin-bottom: 12px; }
.rv-mobile-actions #rv-article-actions { width: 100%; display: flex; gap: 8px; margin: 0; }
.rv-mobile-actions #rv-article-actions > * { flex: 1; min-width: 0; }
