/* Preserve each symbol's existing colour and navigation position. */
:root body :is(button,a).portal-round-control {
  width: 48px!important; height: 48px!important; min-width: 48px!important; min-height: 48px!important;
  max-width: none!important; box-sizing: border-box!important;
  border: 0!important; border-radius: 50%!important; background: #fff!important;
  padding: 10px!important; align-items: center!important; justify-content: center!important;
  font-size: 26px!important; line-height: 1!important; box-shadow: none!important;
}
:root body :is(button,a).portal-round-control:not([hidden]) { display: inline-flex!important; }
:root body .portal-round-control[hidden] { display: none!important; }
:root body .portal-round-control svg { width: 26px!important; height: 26px!important; flex: none; }
:root body .portal-round-control .portal-scroll-label { display: none!important; }
:root body .portal-round-control .portal-scroll-arrow { font-size: 26px!important; }
:root body .portal-inline-arrow { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #fff; }
/* A slight glyph shadow keeps existing white symbols visible on white. */
:root body .portal-round-control { text-shadow: 0 1px 1px #24242370; }
:root body .portal-round-control svg { filter: drop-shadow(0 1px 1px #24242370); }
:root body :is(button,a).portal-unified-arrow:not([data-member-step]),
:root body .portal-inline-arrow { color: var(--circle-blue)!important; text-shadow: none!important; }
:root body :is(button,a).portal-unified-arrow:not([data-member-step]):is(:hover,:focus-visible),
:root body :is(button,a):is(:hover,:focus-visible) .portal-inline-arrow { color: var(--circle-orange)!important; }
:root body .portal-arrow-icon { width: 26px!important; height: 26px!important; fill: none!important; stroke: currentColor!important; filter: none!important; }
:root body .portal-arrow-down { rotate: 180deg; }
:root body .portal-arrow-left { rotate: -90deg; }
:root body .portal-arrow-right { rotate: 90deg; }
:root body #planet-menu #menu-preview-back { color: var(--circle-blue)!important; }
:root body #planet-menu #menu-preview-back:is(:hover,:focus-visible) { color: var(--circle-orange)!important; }
:root body #planet-menu #menu-preview-back .portal-arrow-icon { color: inherit!important; stroke: currentColor!important; }
:root body :is(button,a).portal-round-control.portal-unified-close,
:root body :is(button,a).portal-round-control.portal-unified-close .portal-close-icon {
  color: var(--circle-blue)!important; text-shadow: none!important; filter: none!important;
}
:root body :is(button,a).portal-round-control.portal-unified-close:is(:hover,:focus-visible),
:root body :is(button,a).portal-round-control.portal-unified-close:is(:hover,:focus-visible) .portal-close-icon { color: var(--circle-orange)!important; }
:root body .portal-close-icon { fill: none!important; stroke: currentColor!important; }
:root body button.portal-round-control.portal-scroll-cue {
  width: 112px!important; min-width: 112px!important; border-radius: 999px!important;
  gap: 8px!important; padding: 10px 14px!important;
}
:root body button.portal-scroll-cue .portal-reading-label {
  font-family: Arial,sans-serif!important; font-size: 16px!important; font-weight: 700!important;
  line-height: 1!important; color: inherit!important; padding: 0!important;
  --letter-color: var(--circle-blue)!important; --letter-hover-color: var(--circle-orange)!important;
}
:root body button.portal-scroll-cue:is(:hover,:focus-visible) .portal-reading-label { --letter-color: var(--circle-orange)!important; }
:root body button.portal-scroll-cue .portal-reading-label .letter-wipe {
  color: inherit!important; --letter-color: var(--circle-blue)!important; --letter-hover-color: var(--circle-orange)!important;
}
:root body button.portal-scroll-cue:is(:hover,:focus-visible) .portal-reading-label .letter-wipe { --letter-color: var(--circle-orange)!important; }
:root body .portal-arrow-icon, :root body .portal-close-icon {
  animation: none!important;
  transform: none!important;
}
:root body :is(button,a).portal-round-control:is(:hover,:focus-visible),
:root body :is(button,a):is(:hover,:focus-visible) .portal-inline-arrow {
  animation: portal-control-pulse 2.4s ease-in-out infinite!important;
}
@keyframes portal-control-pulse {
  0%,100% { scale: 1; }
  35% { scale: .922; }
  70% { scale: 1.04; }
}
@media(prefers-reduced-motion:reduce) {
  :root body :is(button,a).portal-round-control:is(:hover,:focus-visible),
  :root body :is(button,a):is(:hover,:focus-visible) .portal-inline-arrow { animation: none!important; }
}
@media(max-width:700px) {
  :root body :is(button,a).portal-round-control { width: 44px!important; height: 44px!important; min-width: 44px!important; min-height: 44px!important; padding: 9px!important; }
  :root body button.portal-round-control.portal-scroll-cue { width: 104px!important; min-width: 104px!important; padding: 9px 12px!important; }
  :root body button.portal-scroll-cue .portal-reading-label { font-size: 15px!important; }
}
