/* 静态发布站点专用样式（在 web/style.css 基础上） */
.site-header {
  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
  /* 品牌与内容列（max-width: 860px + 20px 内边距）左缘对齐 */
  padding: 12px max(20px, calc((100% - 860px) / 2 + 20px));
  border-bottom: 1px solid var(--border);
  position: sticky; top: 0; background: var(--bg); z-index: 10;
}
.site-brand { font-weight: 700; font-size: 16px; text-decoration: none; color: var(--text); }
.site-crumbs { font-size: 13px; color: var(--text-dim); }
.site-crumbs a { color: var(--accent); text-decoration: none; }
.site-main { max-width: 860px; margin: 0 auto; padding: 24px 20px 60px; }
.site-sub { color: var(--text-dim); }
.site-footer { text-align: center; color: var(--text-dim); font-size: 12px; padding: 18px; border-top: 1px solid var(--border); }
a.home-card { display: block; text-decoration: none; color: inherit; text-align: left; font: inherit; width: auto; }
/* 静态站只有课程卡（无“创建”卡）：auto-fit 收起空 track，卡片在宽屏下拉伸不偏左 */
.site-main .home-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.site-badge {
  display: inline-block; font-size: 12px; padding: 2px 8px; border-radius: 999px;
  color: var(--accent); background: var(--accent-soft); margin-left: 8px; vertical-align: middle;
}
.site-badge.done { color: var(--ok); background: rgba(22, 163, 74, 0.12); }
.site-meta { font-size: 12.5px; color: var(--text-dim); margin-left: 8px; }
.site-lessons { list-style: none; padding: 0; margin: 8px 0 24px; }
.site-lessons li { padding: 9px 2px; border-bottom: 1px dashed var(--border); font-size: 15px; }
.site-lessons a { color: var(--accent); text-decoration: none; }
.site-lessons a:hover { text-decoration: underline; }
.lesson-nav { display: flex; justify-content: space-between; gap: 12px; margin: 14px 0; font-size: 14px; }
.lesson-nav a { color: var(--accent); text-decoration: none; max-width: 48%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html { scroll-behavior: smooth; }
.site-main .markdown-body h2, .site-main .markdown-body h3 { scroll-margin-top: 76px; }
.site-toc {
  border: 1px solid var(--border); border-radius: 10px; background: var(--bg-soft);
  padding: 12px 16px; margin: 16px 0 8px; font-size: 14px;
}
.site-toc-title { font-size: 13px; font-weight: 700; color: var(--text-dim); margin-bottom: 8px; }
.site-toc a { display: block; color: var(--accent); text-decoration: none; padding: 3px 2px; }
.site-toc a:hover { text-decoration: underline; }
.site-toc a.l2 { padding-left: 18px; color: var(--text-dim); }
/* 页脚吸底：内容不足一屏时 footer 仍贴底（margin-top:auto 不影响 main 的居中） */
body { min-height: 100vh; display: flex; flex-direction: column; }
.site-footer { margin-top: auto; }
/* 进度条轨道：0% 时也要可见、不显拥挤 */
.site-main .home-card-bar { background: var(--line-strong); height: 6px; border-radius: 3px; margin: 2px 0 6px; }
.site-main .home-card-bar-fill { border-radius: 3px; }
/* 答疑记录空态 */
.qa-empty { color: var(--ink-2); font-size: 14px; }
/* 预览页过期提示条（仅本地预览时由服务端注入，发布站点不出现） */
.preview-stale-banner {
  background: var(--cinnabar-soft);
  color: var(--cinnabar);
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  padding: 8px 16px;
  border-bottom: 1px solid var(--line);
}
@media print { .site-header, .lesson-nav, .site-footer { display: none; } }
