/* Full documents are mounted in isolated roots, sharing only the window scroll. */
.journey-screen[hidden], .journey-notice[hidden], .brand-page > [hidden] { display: none !important; }
.journey-screen { display: block; min-height: 100svh; }
html.journey-dark { color-scheme: dark; background: var(--ink); scroll-padding-top: 80px; }
html.journey-dark body { background: var(--ink); }
.journey-notice {
  position: fixed;
  z-index: 1200;
  bottom: max(20px, env(safe-area-inset-bottom));
  left: 50%;
  display: flex;
  width: min(540px, calc(100% - 40px));
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 22px;
  color: var(--paper);
  background: var(--ink);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
  transform: translateX(-50%);
}
.journey-notice p { margin: 0; font-size: .92rem; }
.journey-notice button { flex-shrink: 0; min-height: 44px; padding: 8px 12px; border: 1px solid var(--cyan); color: var(--ink); background: var(--cyan); font: inherit; font-weight: 700; cursor: pointer; }
.journey-notice button:focus-visible { outline: 3px solid var(--paper); outline-offset: 4px; }
@media (max-width: 520px) { .journey-notice { align-items: stretch; flex-direction: column; gap: 10px; } }
