/**
 * ALtoolbox 子页统一壳层：与 mainpage.htm 同系和纸灰底 + 顶栏返回
 * 使用方式：在 <head> 末尾加入本文件 link；<body class="alt-shell">；
 * 在正文最前加入 <nav class="alt-nav-bar" aria-label="站内导航">…</nav>
 */
:root {
  --alt-bg: #eceeef;
  --alt-bg-tint: #e4e9ec;
  --alt-paper: #fcfcfb;
  --alt-ink: #353330;
  --alt-muted: #7a7874;
  --alt-line: #e0ded9;
  --alt-link: #4a6570;
  --alt-link-hover: #455a65;
}

/* 子页只在 body 上加 alt-shell 时，用 :has 让锚点滚动仍避开 sticky 顶栏 */
html:has(body.alt-shell) {
  scroll-padding-top: 56px;
}

html.alt-shell {
  scroll-padding-top: 56px;
}

body.alt-shell {
  /* 保留各页 body { max-width } 时仍需横向 auto，否则会被 margin:0 顶到视口一侧 */
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
  min-height: 100vh;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  color: var(--alt-ink);
  background-color: var(--alt-bg);
  background-image:
    radial-gradient(ellipse 100% 55% at 0% 0%, rgba(200, 212, 218, 0.45) 0%, transparent 52%),
    radial-gradient(ellipse 70% 50% at 100% 8%, rgba(218, 214, 206, 0.5) 0%, transparent 48%),
    linear-gradient(180deg, #f3f5f6 0%, var(--alt-bg-tint) 100%);
  background-attachment: fixed;
}

.alt-nav-bar {
  position: sticky;
  top: 0;
  z-index: 200;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 16px;
  padding: 10px 16px;
  margin: 0 0 18px;
  width: 100%;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  background: rgba(252, 252, 251, 0.94);
  border: 1px solid var(--alt-line);
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(53, 51, 48, 0.07);
  backdrop-filter: blur(10px);
}

.alt-nav-bar a {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--alt-link);
  text-decoration: none;
}

.alt-nav-bar a:hover {
  color: var(--alt-link-hover);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.alt-nav-bar .alt-nav-sep {
  color: var(--alt-line);
  user-select: none;
  font-weight: 400;
}
