/* Compatibility boundary between legacy page content and Global Site Shell 2027. */
.legacy-shell-compat,
.legacy-shell-compat[hidden] { display: none !important; }

.legacy-shell-main-anchor {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

body.site-shell-mobile-open { overflow: hidden !important; }

/* Broad legacy `nav` rules must not turn Global Site Shell nav elements into
   fixed full-width bars. Geometry and breakpoints belong to site-shell.css. */
.site-shell-header nav {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  padding: 0;
  z-index: auto;
  justify-content: flex-start;
  align-items: stretch;
  background: transparent;
  border: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  transition: none;
}


/* Decorative legacy layers must never enlarge the document canvas. */
html,
body { max-width: 100%; overflow-x: clip; }

/* The global shell owns its own geometry even when a legacy page has broad element rules. */
.site-shell-header,
.site-shell-footer { font-style: normal; text-align: left; text-transform: none; }
.site-shell-header ul,
.site-shell-footer ul { list-style: none; }
.site-shell-header a,
.site-shell-footer a { text-decoration: none; }
.site-shell-header button { font-family: Raleway, Arial, sans-serif; }

@media (max-width: 720px) {
  .site-shell-footer { text-align: left; }

  /* Dense legacy tables remain fully available by horizontal scrolling. */
  table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  /* Old route tabs form a scrollable strip instead of widening the page. */
  .route-tabs { max-width: 100%; overflow: hidden; }
  .route-tabs-inner {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  /* The legacy object catalogue used four fixed columns on phones. */
  .stats-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stats-row .stat-item { min-width: 0; padding-inline: 12px; }
}
