.result-navigation-hint {
  margin: 14px 0 4px;
  color: var(--violet);
  text-align: center;
  font-size: .86rem;
  line-height: 1.5;
}
.result-navigation-source { cursor: pointer; scroll-margin-block: 24px; }
.node.result-navigation-source { outline: none; }
.node.result-navigation-source circle:not(.navigation-hit-area) { transition: fill .18s, stroke .18s; }
.node.result-navigation-source.navigation-visited circle:not(.navigation-hit-area) {
  fill: var(--gold-soft);
  stroke: #a37a29;
}
#matrix-svg .node .navigation-hit-area {
  fill: transparent;
  stroke: transparent;
  stroke-width: 28px;
  vector-effect: non-scaling-stroke;
  filter: none;
  pointer-events: all;
}
.node.result-navigation-source:hover circle:not(.navigation-hit-area),
.node.result-navigation-source:focus-visible circle:not(.navigation-hit-area),
.node.result-navigation-source.navigation-selected circle:not(.navigation-hit-area) {
  fill: var(--gold-soft);
  stroke: #987322;
  stroke-width: 4;
}
.node.result-navigation-source:focus-visible circle:not(.navigation-hit-area) { stroke-width: 6; }
.node.core .navigation-hit-area { stroke-width: 14px !important; }
.node.center .navigation-hit-area { stroke-width: 0 !important; }
.node.center.result-navigation-source.navigation-visited circle:not(.navigation-hit-area),
.node.center.result-navigation-source:hover circle:not(.navigation-hit-area),
.node.center.result-navigation-source:focus-visible circle:not(.navigation-hit-area),
.node.center.result-navigation-source.navigation-selected circle:not(.navigation-hit-area) { fill: var(--night); stroke: var(--gold); }
.node.center.result-navigation-source.navigation-selected circle:not(.navigation-hit-area) { stroke-width: 6; }
.psychomatrix-cell.result-navigation-source.navigation-visited { background: var(--violet-soft); box-shadow: inset 0 0 0 2px #9d8db9; }
.psychomatrix-cell.result-navigation-source:hover,
.psychomatrix-cell.result-navigation-source.navigation-selected { background: var(--gold-soft); box-shadow: inset 0 0 0 3px var(--violet); }
.psychomatrix-cell.result-navigation-source:focus-visible { outline: 3px solid var(--violet); outline-offset: -5px; }
.portrait-card.navigation-selected,
.psychomatrix-topic.navigation-selected { border-color: var(--gold); box-shadow: 0 0 0 1px var(--gold); }
.topic-grid > article.navigation-selected { border-color: var(--gold); box-shadow: 0 0 0 1px var(--gold); background: rgba(201,155,67,.12); }
.topic-grid h3 { scroll-margin-block: 36px; }
.topic-grid h3:focus { outline: none; }
.topic-grid h3:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.topic-grid { align-items: start; }
.paid-topic-details { margin-top: 14px; }
.paid-topic-details > summary, .paid-topic-close {
  width: fit-content;
  min-height: 44px;
  padding: 8px 0;
  color: #e4c781;
  background: transparent;
  border: 0;
  font: inherit;
  font-size: .88rem;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.paid-topic-details > summary { list-style: none; }
.paid-topic-details > summary::-webkit-details-marker { display: none; }
.paid-topic-details > summary:hover, .paid-topic-close:hover { color: white; }
.paid-topic-details > summary:focus-visible, .paid-topic-close:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.paid-topic-body { margin: 10px 0 4px; }
.topic-grid .paid-topic-body p { margin: 0 0 14px; line-height: 1.65; }
.paid-topic-details > summary { scroll-margin-block: 24px; }
.portrait-grid, .psychomatrix-topics { align-items: start; }
.portrait-card > button,
.psychomatrix-topic > button { scroll-margin-block: 24px; }
.portrait-card > button:focus-visible,
.psychomatrix-topic > button:focus-visible { outline: 2px solid var(--violet); outline-offset: -4px; }
.result-navigation-return {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin: 4px 0 12px;
  color: var(--violet);
  font-size: .86rem;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.result-navigation-return:last-child { margin: 8px 0 0; }
.result-navigation-return[hidden] { display: none; }
.topic-grid .result-navigation-return { color: #e4c781; }
.topic-grid .result-navigation-return:hover { color: white; }
.result-navigation-return:hover { color: var(--ink); }
.result-navigation-return:focus-visible { outline: 2px solid var(--violet); outline-offset: 4px; }
.navigation-arrival > button { animation: result-navigation-arrival 1.8s ease-out; }
@keyframes result-navigation-arrival {
  0%, 35% { background: var(--gold-soft); }
  100% { background: transparent; }
}
@media (min-width: 901px) {
  .matrix-card > .result-navigation-hint {
    order: -1;
    margin: 0 0 20px;
    font-size: 1.1rem;
    font-weight: 650;
    line-height: 1.55;
  }
}
@media (prefers-reduced-motion: reduce) {
  .navigation-arrival > button { animation: none; }
  .node.result-navigation-source circle { transition: none; }
}
