/* Public filing information stays in the document flow, clear of learning controls. */
.site-filing {
  box-sizing: border-box;
  display: block;
  max-width: 100%;
  padding: 8px 16px 18px;
  text-align: center;
  color: #4b6b84;
  font: 12px/1.6 'PingFang SC', 'Noto Sans SC', system-ui, sans-serif;
}
.site-filing a {
  display: inline-block;
  max-width: 100%;
  padding: 4px 6px;
  border-radius: 4px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: none;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
.site-filing a:hover { text-decoration: underline; }
.site-filing a:focus-visible { outline: 2px solid #39769d; outline-offset: 2px; }

/* The full-screen graph reserves one compact row instead of overlaying the map. */
body[data-page="graph"] {
  grid-template-rows: auto 48px minmax(0, 1fr) auto;
}
body[data-page="graph"] > .math-account-strip { grid-row: 1; }
body[data-page="graph"] > .app-header { grid-row: 2; }
body[data-page="graph"] > main { grid-row: 3; }
body[data-page="graph"] > .site-filing {
  grid-row: 4;
  padding: 2px 12px;
  border-top: 1px solid #d8e6f1;
  background: #f5faff;
}
body[data-page="graph"] > #lab-panel { bottom: 40px; }

/* On a short screen, scroll the workspace instead of crushing its map row. */
@media (max-height: 700px) {
  body[data-page="graph"] > main {
    overflow-y: auto;
    grid-template-rows: auto auto minmax(360px, 1fr);
  }
}
