/* ============================================================
   LIUMA 研习社 · 暗黑苹果风主题（dark-only）
   设计语言：深墨底 #0b0c0e / 品牌橙 #f08d47 / 雾蓝点缀 /
   hairline 细线 / Manrope + Noto Sans SC / DM Mono 标签
   加载于原站样式之后，全部为覆盖式定义。
   注意：:root 直接承载暗色值，不依赖 .dark 类——水合或脚本
   如何改动 documentElement 类名都不会闪回浅色。
   ============================================================ */

:root,
html.dark {
  color-scheme: dark;

  /* ---- LIUMA 品牌变量 ---- */
  --lm-orange: #f08d47;
  --lm-orange-strong: #e57e35;
  --lm-orange-soft: rgba(240, 141, 71, .12);
  --lm-mist: #8fa9cf;
  --lm-mist-soft: rgba(143, 169, 207, .12);
  --lm-dark: #0b0c0e;
  --lm-panel: #15171a;
  --lm-panel-2: #24272c;
  --lm-line: rgba(255, 255, 255, .08);
  --lm-sub: #a4a6ad;
  --lm-ink: #f5f5f7;

  --lm-font: "Manrope", "Noto Sans SC", -apple-system, BlinkMacSystemFont,
    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  --lm-mono: "DM Mono", ui-monospace, "SF Mono", "Cascadia Mono", Consolas,
    "Liberation Mono", monospace;

  /* ---- 覆盖原站 wb 变量（暗色值）---- */
  --wb-acid: var(--lm-orange);
  --wb-acid-strong: var(--lm-orange);
  --wb-acid-soft: var(--lm-orange-soft);
  --wb-paper: var(--lm-dark);
  --wb-surface: var(--lm-panel);
  --wb-ink: var(--lm-ink);
  --wb-muted: var(--lm-sub);
  --wb-line: var(--lm-line);
  --wb-shadow: none;
  --wb-pixel: var(--lm-mono);
  --wb-body: var(--lm-font);

  /* ---- VitePress 变量（暗色值）---- */
  --vp-c-bg: var(--lm-dark);
  --vp-c-bg-elv: var(--lm-panel);
  --vp-c-bg-soft: var(--lm-panel);
  --vp-c-text-1: var(--lm-ink);
  --vp-c-text-2: #a4a6ad;
  --vp-c-text-3: #7f8792;
  --vp-c-brand-1: var(--lm-orange);
  --vp-c-brand-2: #f5a869;
  --vp-c-brand-3: var(--lm-orange);
  --vp-c-brand-soft: var(--lm-orange-soft);
  --vp-c-divider: var(--lm-line);
  --vp-c-gutter: var(--lm-line);
  --vp-c-border: var(--lm-line);
  --vp-c-mute: var(--lm-panel-2);
  --vp-c-mute-dark: var(--lm-panel-2);
  --vp-c-mute-darker: #363940;
  --vp-nav-bg-color: rgba(11, 12, 14, .78);
  --vp-sidebar-bg-color: var(--lm-dark);
  --vp-font-family-base: var(--lm-font);
  --vp-font-family-mono: var(--lm-mono);
  --vp-code-block-bg: #101214;
  --vp-code-color: #e8b487;
  --vp-code-lang-color: var(--lm-sub);
  --vp-c-default-soft: rgba(255, 255, 255, .05);
  --vp-custom-block-info-bg: var(--lm-mist-soft);
  --vp-custom-block-info-border: rgba(143, 169, 207, .4);
  --vp-custom-block-info-text: #c9cdd4;
  --vp-custom-block-tip-bg: var(--lm-orange-soft);
  --vp-custom-block-tip-border: rgba(240, 141, 71, .45);
  --vp-custom-block-tip-text: #d8dce2;
  --vp-custom-block-warning-bg: rgba(240, 141, 71, .08);
  --vp-custom-block-warning-border: rgba(240, 141, 71, .4);
  --vp-custom-block-warning-text: #d8dce2;
  --vp-custom-block-danger-bg: rgba(224, 87, 91, .1);
  --vp-custom-block-danger-border: rgba(224, 87, 91, .4);
  --vp-custom-block-danger-text: #d8dce2;
  --vp-nav-height: 64px;
}

/* ============================================================
   强制暗黑：移除明暗切换控件（按钮 + ⋮ 菜单里的 Appearance）
   ============================================================ */
.VPNavBarAppearance,
.VPNavBarExtra {
  display: none !important;
}

/* ============================================================
   基础排版
   ============================================================ */
html { background: var(--lm-dark); }
body {
  font-family: var(--lm-font);
  background: var(--lm-dark);
  color: var(--lm-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* 像素字体标签 → 等宽小标签（全局统一雾蓝色，替换原站橄榄绿） */
.wb-pixel-label,
.help-pixel-label {
  font-family: var(--lm-mono) !important;
  letter-spacing: .08em;
  color: var(--lm-mist) !important;
}
.wb-hero__metrics span,
.wb-value-strip__item small,
.wb-reading-card__content small {
  font-family: var(--lm-mono) !important;
  letter-spacing: .08em;
}

/* ============================================================
   顶部导航：毛玻璃 + hairline
   ============================================================ */
.VPNavBar {
  transition: background .3s ease, border-color .3s ease;
}
.VPNavBar:not(.home) {
  background: var(--vp-nav-bg-color);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  border-bottom-color: transparent;
}
.VPNavBar .divider-line {
  height: 1px !important;
  background: var(--vp-c-divider) !important;
}
@media (min-width: 960px) {
  .VPNavBar .wrapper > .container { max-width: 1280px; }
}
.VPNavBarTitle .title {
  font-family: var(--lm-font);
  font-weight: 800;
  font-size: 17px;
  letter-spacing: .01em;
  color: var(--lm-ink) !important;
}
/* 旧品牌书本装饰图标（原站 ::before mask），随品牌移除 */
.VPNavBarTitle a.title::before {
  content: none !important;
  display: none !important;
}
.VPNavBarTitle .title .logo {
  border-radius: 7px;
  margin-right: 9px;
  box-shadow: 0 1px 6px rgba(240, 141, 71, .35);
}
.VPNavBarMenuLink {
  font-weight: 560;
  letter-spacing: .01em;
}
.VPNavBarMenuLink.active {
  border-bottom-color: var(--lm-orange) !important;
}
/* 旧交流群下拉（静态 HTML 残留）整体移除 */
.VPFlyout.VPNavBarMenuGroup,
.wb-group-qr {
  display: none !important;
}

/* ============================================================
   侧边栏
   ============================================================ */
.VPSidebar {
  border-right: 1px solid var(--vp-c-divider) !important;
  background: var(--vp-sidebar-bg-color) !important;
  padding-left: 32px !important;
}
.VPSidebarItem .text {
  font-size: 14px;
  line-height: 1.55;
}
/* 激活态：极简苹果风 —— 细橙指示条 + 橙色文字 + 柔和底，
   替换原站"酸绿大色块"样式 */
.VPSidebarItem.is-active > .item .link {
  background: rgba(240, 141, 71, .1) !important;
  border-radius: 8px !important;
}
.VPSidebarItem.is-active > .item .link .text {
  color: #f08d47 !important;
  font-weight: 650 !important;
}
.VPSidebarItem.is-active > .item .link::before {
  width: 2px !important;
  left: -10px !important;
  background: #f08d47 !important;
  border-radius: 2px !important;
}
.VPSidebarItem .link:hover {
  background: rgba(255, 255, 255, .05) !important;
}
.VPSidebarItem.level-2 > .item:hover > .text {
  color: var(--vp-c-text-1);
}

/* ============================================================
   首页 Hero：深墨舞台，橙色渐变大字，入场动画 + 环境光
   ============================================================ */
.wb-home { padding-top: 0; }
.wb-hero {
  position: relative;
  border: 1px solid var(--lm-line) !important;
  border-radius: 16px !important;
  background: var(--lm-dark) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .45) !important;
}
.wb-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(640px 420px at 82% 10%, rgba(240, 141, 71, .15), transparent 62%),
    radial-gradient(520px 400px at 6% 96%, rgba(143, 169, 207, .1), transparent 60%);
}
/* 粒子星座画布：置于内容之下 */
.lm-particles {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.wb-hero__stage,
.wb-value-strip {
  position: relative;
  z-index: 1;
}
.wb-hero__stage {
  background: transparent !important;
  min-height: 540px;
}
.wb-hero__copy { padding: 64px 28px 56px 64px; }
@media (max-width: 768px) {
  .wb-hero__copy { padding: 48px 24px 40px; }
}
.wb-hero__copy .wb-pixel-label {
  color: var(--lm-mist) !important;
  font-size: 12px;
  font-weight: 500;
}
.wb-hero__copy h1 {
  color: #f5f5f7;
  font-family: var(--lm-font);
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
  background: linear-gradient(160deg, #ffffff 8%, #ffd9b8 46%, var(--lm-orange) 96%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.wb-hero__summary {
  color: #a4a6ad !important;
  font-size: 17px !important;
  font-weight: 460 !important;
  line-height: 1.9 !important;
}
/* Hero 按钮：白色胶囊主按钮（光泽扫过）+ hairline 次按钮 */
.wb-hero__actions { gap: 14px !important; margin-top: 32px !important; }
.wb-button {
  border-radius: 980px !important;
  font-weight: 650 !important;
  letter-spacing: .01em;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease,
    border-color .2s ease, color .2s ease;
}
/* 原站按钮：2px 深墨边框 + 深墨文字 + hover 硬阴影 —— 全部中和 */
.wb-button {
  border: 1px solid rgba(255, 255, 255, .22) !important;
  color: #e8e9ec !important;
  background: transparent !important;
}
.wb-button:hover {
  transform: translateY(-1px);
  box-shadow: none !important;
  border-color: rgba(255, 255, 255, .45) !important;
}
.wb-button--primary {
  background: #f5f5f7 !important;
  color: #0b0c0e !important;
  border: 1px solid transparent !important;
}
.wb-button--primary:hover {
  background: #ffffff !important;
  border-color: transparent !important;
}
.wb-button--acid {
  background: var(--lm-orange) !important;
  color: #ffffff !important;
  border: 1px solid transparent !important;
}
.wb-button--acid:hover {
  background: #f5a869 !important;
  border-color: transparent !important;
}
.wb-button--outline,
.wb-button--dark-outline {
  background: transparent !important;
  color: #e8e9ec !important;
  border: 1px solid rgba(255, 255, 255, .22) !important;
}
.wb-button--outline:hover,
.wb-button--dark-outline:hover {
  border-color: rgba(255, 255, 255, .5) !important;
  color: #ffffff !important;
}
.wb-hero__actions .wb-button--primary {
  position: relative;
  overflow: hidden;
  background: #f5f5f7 !important;
  color: #0b0c0e !important;
  border: none !important;
  padding: 13px 30px !important;
  box-shadow: 0 6px 22px rgba(0, 0, 0, .4);
}
.wb-hero__actions .wb-button--primary:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .5) !important;
  background: #ffffff !important;
}
.wb-hero__actions .wb-button--primary::after {
  content: "";
  position: absolute;
  top: -30%;
  bottom: -30%;
  left: -70%;
  width: 45%;
  transform: skewX(-22deg);
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent);
  transition: left .7s cubic-bezier(.3, .6, .3, 1);
}
.wb-hero__actions .wb-button--primary:hover::after { left: 135%; }
.wb-hero__actions .wb-button--primary .wb-pixel-icon { display: none; }
.wb-hero__actions .wb-button--outline {
  background: transparent !important;
  color: #e8e9ec !important;
  border: 1px solid rgba(255, 255, 255, .22) !important;
  padding: 13px 28px !important;
}
.wb-hero__actions .wb-button--outline:hover {
  border-color: rgba(255, 255, 255, .5) !important;
  color: #ffffff !important;
}
/* ---- Hero 右侧视觉：工作流控制台（替代原像素图标卡） ---- */
.wb-hero__art .wb-icon-card,
.wb-hero__art .wb-hero__monogram {
  display: none !important;
}
.wb-hero__art::before {
  content: "";
  position: absolute;
  inset: 6% 2% 12%;
  background: radial-gradient(closest-side, rgba(240, 141, 71, .13), transparent 72%);
  pointer-events: none;
}
.lm-console-wrap {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 26px 44px 78px;
}
.lm-console {
  position: relative;
  width: min(470px, 100%);
  background: linear-gradient(180deg, rgba(36, 39, 44, .78), rgba(19, 21, 24, .92));
  border: 1px solid rgba(255, 255, 255, .11);
  border-radius: 18px;
  box-shadow: 0 34px 90px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(255, 255, 255, .06);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  overflow: hidden;
  font-family: var(--lm-font);
}
.lm-console__bar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--lm-line);
  background: rgba(255, 255, 255, .03);
}
.lm-console__dots { display: flex; gap: 6px; }
.lm-console__dots i { width: 10px; height: 10px; border-radius: 50%; }
.lm-console__dots i:nth-child(1) { background: #ff5f57; }
.lm-console__dots i:nth-child(2) { background: #febc2e; }
.lm-console__dots i:nth-child(3) { background: #28c840; }
.lm-console__title {
  font-family: var(--lm-mono);
  font-size: 12px;
  color: var(--lm-sub);
  letter-spacing: .08em;
}
.lm-console__live {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--lm-mono);
  font-size: 10px;
  color: #9acb87;
  letter-spacing: .14em;
}
.lm-console__live i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9acb87;
}
.lm-console__rows { padding: 10px 12px 6px; }
.lm-console__row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 12px;
  border-radius: 10px;
  transition: background .2s ease;
}
.lm-console__row:hover { background: rgba(255, 255, 255, .04); }
.lm-console__name { font-size: 13.5px; color: #d9dbdf; font-weight: 550; min-width: 0; }
.lm-console__name small {
  display: block;
  color: #7f8792;
  font-family: var(--lm-mono);
  font-size: 10.5px;
  margin-top: 3px;
  letter-spacing: .04em;
}
.lm-console__state {
  margin-left: auto;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--lm-mono);
  font-size: 10.5px;
  padding: 4px 11px;
  border-radius: 980px;
  letter-spacing: .06em;
}
.lm-console__state.done { color: #9acb87; background: rgba(154, 203, 135, .12); }
.lm-console__state.run { color: var(--lm-orange); background: var(--lm-orange-soft); }
.lm-console__state.run i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--lm-orange);
}
.lm-console__state.queue { color: #9298a3; background: rgba(255, 255, 255, .06); }
.lm-console__prog {
  position: relative;
  height: 3px;
  margin: -4px 12px 8px 36px;
  border-radius: 2px;
  background: rgba(255, 255, 255, .07);
  overflow: hidden;
}
.lm-console__prog span {
  position: absolute;
  inset: 0 auto 0 0;
  width: 42%;
  border-radius: 2px;
  background: linear-gradient(90deg, rgba(240, 141, 71, .55), var(--lm-orange));
}
.lm-console__input {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 6px 12px 14px;
  padding: 11px 14px;
  border: 1px solid var(--lm-line);
  border-radius: 11px;
  background: rgba(0, 0, 0, .28);
}
.lm-console__input .txt {
  color: #6f7581;
  font-size: 12.5px;
  font-family: var(--lm-mono);
  letter-spacing: .02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.lm-console__caret {
  flex: 0 0 auto;
  width: 2px;
  height: 14px;
  background: var(--lm-orange);
}
.lm-console__send {
  margin-left: auto;
  flex: 0 0 auto;
  width: 27px;
  height: 27px;
  border-radius: 8px;
  background: var(--lm-orange);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 13px;
}

@media (max-width: 900px) {
  .lm-console-wrap { position: static; padding: 8px 22px 66px; }
}
@media (prefers-reduced-motion: no-preference) {
  .lm-console {
    animation:
      lm-console-in 1s cubic-bezier(.18, .8, .26, 1) .35s both,
      lm-bob 7s ease-in-out 2s infinite;
  }
  .lm-console__live i { animation: lm-blink 1.6s steps(1) infinite; }
  .lm-console__state.run i { animation: lm-blink 1s steps(1) infinite; }
  .lm-console__caret { animation: lm-blink 1.1s steps(1) infinite; }
  .lm-console__prog span { animation: lm-prog 3.4s ease-in-out infinite alternate; }
}
@keyframes lm-console-in {
  from { opacity: 0; transform: translateY(36px) scale(.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes lm-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}
@keyframes lm-prog {
  from { width: 34%; }
  to { width: 78%; }
}

/* 像素图标卡片（旧视觉，已被控制台替代，兜底隐藏） */
.wb-icon-card {
  background: rgba(255, 255, 255, .045) !important;
  border: 1px solid var(--lm-line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  transform: none;
  will-change: translate;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.wb-icon-card--buddy, .wb-icon-card--book,
.wb-icon-card--flow, .wb-icon-card--work { transform: none; }
.wb-icon-card .wb-pixel-icon { filter: grayscale(1) brightness(3.2); opacity: .95; }
.wb-hero__monogram {
  font-family: var(--lm-mono) !important;
  color: var(--lm-orange) !important;
  letter-spacing: .12em;
  opacity: .95;
}
.wb-hero__monogram::after {
  content: "";
  display: inline-block;
  width: .48em;
  height: .1em;
  margin-left: .12em;
  background: var(--lm-orange);
  vertical-align: baseline;
}
.wb-hero__metrics span {
  color: #8b909a !important;
  font-size: 11px !important;
}
.wb-hero__metrics b { color: #f5f5f7 !important; font-weight: 700; }

/* ============================================================
   价值条 / 访问数据
   ============================================================ */
.wb-value-strip {
  background: transparent !important;
  border-top: 1px solid var(--lm-line) !important;
  border-radius: 0 0 16px 16px !important;
}
.wb-value-strip__item {
  color: #c8cad0 !important;
  border-color: var(--lm-line) !important;
}
.wb-value-strip__item b { color: #f5f5f7 !important; font-weight: 700; }
.wb-value-strip__item small { color: #7f8792 !important; }
.wb-value-strip__item .wb-pixel-icon { color: var(--lm-orange) !important; }

/* 访问数据条：彻底重设计（原站深墨文字/橄榄绿在暗底不可见） */
.wb-traffic {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 14px !important;
  background: var(--vp-c-bg-elv) !important;
  color: var(--lm-ink) !important;
  box-shadow: none !important;
}
.wb-traffic__live {
  font-family: var(--lm-mono) !important;
  color: #9acb87 !important;
  font-size: 12px;
  letter-spacing: .1em;
}
.wb-traffic__dot {
  width: 10px !important;
  height: 10px !important;
  border: none !important;
  background: #9acb87 !important;
  box-shadow: 0 0 0 3px rgba(154, 203, 135, .15) !important;
}
.wb-traffic--loading .wb-traffic__dot {
  background: var(--lm-mist) !important;
  box-shadow: 0 0 0 3px rgba(143, 169, 207, .15) !important;
}
.wb-traffic__metrics > div {
  border-left: 1px solid var(--vp-c-divider) !important;
}
.wb-traffic__metrics dt {
  color: #c8cad0 !important;
  font-size: 13px !important;
  font-weight: 500;
}
.wb-traffic__metrics dd {
  color: var(--lm-ink) !important;
  font-family: var(--lm-mono) !important;
}
.wb-traffic__metrics small {
  color: #6f7581 !important;
  font-family: var(--lm-mono) !important;
  font-size: 9px !important;
}
.wb-traffic--loading .wb-traffic__metrics dd { color: var(--lm-sub) !important; }

/* ============================================================
   区块：标题 / 阅读路径 / 任务索引 / 步骤
   ============================================================ */
.wb-section { margin-top: 72px; }
.wb-section__heading h2,
.wb-system__intro h2 {
  font-weight: 900 !important;
  letter-spacing: -.015em;
}
.wb-section__heading > p,
.wb-system__intro p {
  color: var(--vp-c-text-2) !important;
}
.wb-reading-card {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 16px !important;
  background: var(--vp-c-bg-elv) !important;
  box-shadow: none !important;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.wb-reading-card:hover {
  transform: translateY(-3px);
  border-color: rgba(240, 141, 71, .55) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .35);
}
.wb-reading-card__icon {
  border-radius: 12px !important;
  background: var(--lm-orange-soft) !important;
  color: var(--lm-orange) !important;
  border: none !important;
}
.wb-reading-card__content strong { font-weight: 800 !important; letter-spacing: -.01em; }
.wb-reading-card__content em b {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 980px !important;
  background: transparent !important;
  color: var(--vp-c-text-2) !important;
  font-weight: 500 !important;
}
.wb-reading-card__arrow { color: var(--lm-orange) !important; }

.wb-task-grid a {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 14px !important;
  background: var(--vp-c-bg-elv) !important;
  box-shadow: none !important;
  transition: transform .2s ease, border-color .2s ease;
}
.wb-task-grid a:hover {
  transform: translateY(-2px);
  border-color: rgba(240, 141, 71, .55) !important;
}
.wb-task-grid a .wb-pixel-icon { color: var(--lm-orange) !important; }
.wb-task-grid a strong { font-weight: 800 !important; }
.wb-task-grid a span {
  color: var(--vp-c-text-3) !important;
  font-family: var(--lm-mono);
  font-size: 12px;
  letter-spacing: .04em;
}
.wb-system__steps li {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 14px !important;
  background: var(--vp-c-bg-elv) !important;
  box-shadow: none !important;
}
.wb-system__steps li b {
  font-family: var(--lm-mono) !important;
  color: var(--lm-orange) !important;
}
.wb-system__steps li strong { letter-spacing: .06em; }

/* 已移除的社区 / 共创区块 */
.wb-community,
.case-co-create {
  display: none !important;
}

/* ============================================================
   help 页原站硬编码酸绿 → 暗黑适配
   ============================================================ */
.help-hero h1::after {
  width: 64px !important;
  height: 3px !important;
  border-radius: 2px !important;
  background: var(--lm-orange) !important;
}
.help-survey-card {
  background: var(--vp-c-bg-elv) !important;
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
.help-note {
  background: var(--lm-orange-soft) !important;
  border: 1px solid rgba(240, 141, 71, .35) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

/* ============================================================
   文档页正文
   ============================================================ */
.VPDoc .container { max-width: 1440px; }
.vp-doc h1 { font-weight: 900 !important; letter-spacing: -.02em; }
.vp-doc h2 {
  font-weight: 800 !important;
  letter-spacing: -.012em;
  border-top-color: var(--vp-c-divider);
}
.vp-doc h2::before {
  background: var(--lm-orange) !important;
  border-radius: 2px;
}
.vp-doc a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.vp-doc a:not(.no-icon):not(:hover) { text-decoration-color: rgba(240, 141, 71, .45); }
.vp-doc img { border-radius: 12px; }
.vp-doc div[class*=language-] {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.vp-doc div[class*=language-] code { font-family: var(--lm-mono); }
/* 引用块：hairline 极简（替换原站酸绿大色块） */
.vp-doc blockquote {
  border-left: 2px solid rgba(240, 141, 71, .6) !important;
  background: transparent !important;
  color: var(--vp-c-text-2) !important;
  border-radius: 0 10px 10px 0;
}
/* 表格：中性斑马纹（替换原站橙绿混色） */
.vp-doc tr:nth-child(2n) { background: var(--vp-c-bg-soft) !important; }
.vp-doc th { background: rgba(255, 255, 255, .04) !important; }
.vp-doc :not(pre, h1, h2, h3, h4, h5, h6) > code {
  border-radius: 6px !important;
  padding: 2px 7px !important;
}
.VPDocFooter .pager-link {
  border-radius: 10px !important;
  border-color: var(--vp-c-divider) !important;
  transition: border-color .2s ease, transform .2s ease;
}
.VPDocFooter .pager-link:hover {
  border-color: rgba(240, 141, 71, .55) !important;
  transform: translateY(-1px);
}
.VPDocFooter .pager-link .desc { color: var(--vp-c-text-3) !important; }

/* ============================================================
   本页目录（TOC）：所有状态显式锁色，保证任何交互后可读
   ============================================================ */
.VPDocAsideOutline .outline-title {
  color: #f5f5f7 !important;
  font-family: var(--lm-mono) !important;
  font-size: 12px !important;
  letter-spacing: .08em;
}
.VPDocAsideOutline .outline {
  background: transparent !important;
}
.VPDocAsideOutline .outline-link {
  color: #a4a6ad !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.VPDocAsideOutline .outline-link:hover,
.VPDocAsideOutline .outline-link:focus-visible {
  color: #f5f5f7 !important;
}
.VPDocAsideOutline .outline-link.active {
  color: #f08d47 !important;
  font-weight: 700;
}
.VPDocAsideOutline .outline-marker {
  background: var(--lm-orange) !important;
  border-radius: 2px;
}

/* ============================================================
   搜索
   ============================================================ */
.DocSearch-Button {
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 980px !important;
  background: var(--vp-c-bg-elv) !important;
  box-shadow: none !important;
  font-family: var(--lm-font) !important;
}
.DocSearch-Button:hover { border-color: rgba(240, 141, 71, .55) !important; }
.DocSearch-Button-Keys .DocSearch-Button-Key {
  border-radius: 5px !important;
  box-shadow: none !important;
}
.VPLocalSearchBox .shell {
  border-radius: 14px !important;
  border: 1px solid var(--vp-c-divider) !important;
}
.VPMenu { border-radius: 12px !important; border: 1px solid var(--vp-c-divider) !important; }

/* ============================================================
   滚动条 / 页脚 / 选区
   ============================================================ */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb {
  background: rgba(128, 134, 146, .38);
  border-radius: 980px;
  border: 2px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover { background-color: rgba(128, 134, 146, .6); }
::-webkit-scrollbar-track { background: transparent; }
.VPFooter {
  border-top: 1px solid var(--vp-c-divider) !important;
  background: transparent !important;
}
.VPFooter .message, .VPFooter .copyright {
  color: var(--vp-c-text-3) !important;
  font-size: 13px;
  letter-spacing: .01em;
}
::selection { background: rgba(240, 141, 71, .32); }

/* ============================================================
   首页交互动画（尊重 prefers-reduced-motion）
   ============================================================ */
@keyframes lm-rise {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes lm-pop {
  0% { opacity: 0; transform: scale(.72) translateY(16px); }
  62% { opacity: 1; transform: scale(1.05) translateY(0); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes lm-breathe {
  from { opacity: .6; }
  to { opacity: 1; }
}
@keyframes lm-blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .wb-hero::before { animation: lm-breathe 9s ease-in-out infinite alternate; }
  .wb-hero__copy .wb-pixel-label { animation: lm-rise .8s cubic-bezier(.22,.61,.21,1) .1s both; }
  .wb-hero__copy h1 { animation: lm-rise .95s cubic-bezier(.22,.61,.21,1) .24s both; }
  .wb-hero__summary { animation: lm-rise .95s cubic-bezier(.22,.61,.21,1) .4s both; }
  .wb-hero__actions { animation: lm-rise .95s cubic-bezier(.22,.61,.21,1) .55s both; }
  .wb-hero__monogram { animation: lm-rise 1.1s cubic-bezier(.22,.61,.21,1) .5s both; }
  .wb-hero__monogram::after { animation: lm-blink 1.2s steps(1) infinite; }
  .wb-icon-card--buddy { animation: lm-pop 1s cubic-bezier(.18,.8,.26,1) .62s both; }
  .wb-icon-card--book  { animation: lm-pop 1s cubic-bezier(.18,.8,.26,1) .75s both; }
  .wb-icon-card--flow  { animation: lm-pop 1s cubic-bezier(.18,.8,.26,1) .88s both; }
  .wb-icon-card--work  { animation: lm-pop 1s cubic-bezier(.18,.8,.26,1) 1.01s both; }
  .wb-hero__metrics { animation: lm-rise 1s cubic-bezier(.22,.61,.21,1) 1.05s both; }
  .wb-value-strip__item { animation: lm-rise .8s cubic-bezier(.22,.61,.21,1) both; }
  .wb-value-strip__item:nth-child(1) { animation-delay: 1.1s; }
  .wb-value-strip__item:nth-child(2) { animation-delay: 1.18s; }
  .wb-value-strip__item:nth-child(3) { animation-delay: 1.26s; }
  .wb-value-strip__item:nth-child(4) { animation-delay: 1.34s; }
}

/* 滚动显现（JS 加 .lm-reveal / .lm-in；用 translate 属性避免干扰 hover transform） */
.lm-js .lm-reveal {
  opacity: 0;
  translate: 0 28px;
  transition: opacity .8s cubic-bezier(.22,.61,.21,1), translate .8s cubic-bezier(.22,.61,.21,1);
}
.lm-js .lm-reveal.lm-in {
  opacity: 1;
  translate: none;
}
@media (prefers-reduced-motion: reduce) {
  .lm-js .lm-reveal { opacity: 1; translate: none; transition: none; }
}

/* ============================================================
   图片灯箱（原站像素风按钮/白硬阴影 → 暗黑极简）
   ============================================================ */
.wb-image-lightbox { background: rgba(5, 6, 8, .92) !important; }
.wb-image-lightbox__stage img {
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 12px !important;
}
.wb-image-lightbox__close {
  background: var(--lm-panel) !important;
  color: #f5f5f7 !important;
  border: 1px solid rgba(255, 255, 255, .15) !important;
  box-shadow: none !important;
  border-radius: 12px !important;
}
.wb-image-lightbox__close:hover,
.wb-image-lightbox__close:focus-visible {
  box-shadow: none !important;
  transform: none !important;
  border-color: rgba(255, 255, 255, .35) !important;
}
.wb-image-lightbox__scale {
  color: #ffffff !important;
  background: var(--lm-orange) !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
}

/* ============================================================
   TASK → TEAM 步骤区块重构
   （原站 #4a5045 橄榄绿网格底 + 列表序号外露 → hairline 卡片）
   ============================================================ */
.wb-system {
  background: transparent !important;
  color: var(--lm-ink) !important;
}
.wb-system__intro > p:last-child { color: var(--vp-c-text-2) !important; }
.wb-system__steps {
  background: transparent !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.wb-system__steps li {
  list-style: none !important;
  background: var(--vp-c-bg-elv) !important;
  border: 1px solid var(--vp-c-divider) !important;
  border-radius: 16px !important;
  padding: 26px !important;
  min-height: 150px !important;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.wb-system__steps li:hover {
  transform: translateY(-3px);
  border-color: rgba(240, 141, 71, .55) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .3);
}
.wb-system__steps li strong { color: var(--lm-orange) !important; letter-spacing: .08em; }
.wb-system__steps li span { color: #c8cad0 !important; }
.wb-system__steps li b {
  color: var(--lm-mist) !important;
  font-family: var(--lm-mono) !important;
}

/* ============================================================
   内容保护：禁止选择 + 提示 toast
   ============================================================ */
body {
  -webkit-user-select: none;
  user-select: none;
}
input, textarea, [contenteditable] {
  -webkit-user-select: text;
  user-select: text;
}
.lm-protect-toast {
  position: fixed;
  left: 50%;
  bottom: 96px;
  transform: translateX(-50%) translateY(12px);
  z-index: 10001;
  padding: 11px 22px;
  background: rgba(21, 23, 26, .96);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(240, 141, 71, .5);
  border-radius: 12px;
  color: #e8e9ec;
  font-size: 13px;
  font-family: var(--lm-font);
  letter-spacing: .01em;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
  box-shadow: 0 14px 40px rgba(0, 0, 0, .5);
}
.lm-protect-toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* ============================================================
   悬浮交流群按钮 + 扫码弹窗（body 直挂，水合安全）
   ============================================================ */
.lm-float {
  position: fixed;
  right: 26px;
  bottom: 26px;
  z-index: 9999;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .18);
  background: linear-gradient(145deg, #f5a869, #e57e35);
  box-shadow: 0 10px 30px rgba(240, 141, 71, .35), 0 2px 8px rgba(0, 0, 0, .45);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .25s ease, box-shadow .25s ease;
}
.lm-float:hover {
  transform: translateY(-3px) scale(1.05);
  box-shadow: 0 16px 42px rgba(240, 141, 71, .5), 0 2px 8px rgba(0, 0, 0, .45);
}
.lm-float::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 50%;
  border: 1px solid rgba(240, 141, 71, .55);
  animation: lm-pulse 2.8s ease-out infinite;
  pointer-events: none;
}
@keyframes lm-pulse {
  0% { transform: scale(1); opacity: .9; }
  70%, 100% { transform: scale(1.6); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .lm-float::before { animation: none; }
}
.lm-float svg { width: 27px; height: 27px; }
.lm-float__tip {
  position: absolute;
  right: 72px;
  top: 50%;
  translate: 0 -50%;
  white-space: nowrap;
  padding: 8px 15px;
  border-radius: 980px;
  background: rgba(21, 23, 26, .92);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, .1);
  color: #e8e9ec;
  font-size: 13px;
  font-family: var(--lm-font);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, translate .25s ease;
}
.lm-float:hover .lm-float__tip { opacity: 1; translate: -6px -50%; }

.lm-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lm-modal[hidden] { display: none; }
.lm-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(5, 6, 8, .62);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.lm-modal__card {
  position: relative;
  width: min(370px, calc(100vw - 48px));
  max-height: calc(100vh - 48px);
  overflow: auto;
  background: linear-gradient(180deg, #17191d, #101214);
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 22px;
  padding: 30px 28px 26px;
  text-align: center;
  box-shadow: 0 30px 90px rgba(0, 0, 0, .6);
  font-family: var(--lm-font);
}
.lm-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .05);
  color: #a4a6ad;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
  transition: color .2s, border-color .2s;
}
.lm-modal__close:hover { color: #fff; border-color: rgba(255, 255, 255, .32); }
.lm-modal__eyebrow {
  margin: 0 0 8px;
  font-family: var(--lm-mono);
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--lm-mist);
}
.lm-modal__title {
  margin: 0 0 10px;
  font-size: 21px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #f5f5f7;
}
.lm-modal__desc {
  margin: 0 0 18px;
  font-size: 13px;
  line-height: 1.8;
  color: #a4a6ad;
}
.lm-modal__qr {
  display: inline-block;
  background: #fff;
  border-radius: 14px;
  padding: 12px;
}
.lm-modal__qr img { display: block; width: 230px; height: 230px; border-radius: 6px; }
.lm-modal__hint {
  margin: 14px 0 0;
  font-size: 12.5px;
  color: #7f8792;
}
/* 弹窗打开时锁滚动 */
html.lm-lock, html.lm-lock body { overflow: hidden; }

/* ============================================================
   管理后台内容运行时（公告条 / 最新提交区块）
   ============================================================ */

.lm-latest { margin-top: 46px; }
.lm-latest > h2 {
  font-weight: 800 !important;
  letter-spacing: -.012em;
  border-top: none !important;
  padding-top: 0 !important;
}
.lm-latest > h2::before {
  display: none;
}
.lm-case-card { border-style: dashed !important; }
.lm-case-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.lm-case-tags b {
  font-weight: 500 !important;
  font-family: var(--lm-mono);
  font-size: 11px;
  color: var(--lm-orange) !important;
  border: 1px solid rgba(240, 141, 71, .4);
  border-radius: 980px;
  padding: 3px 10px;
}

/* 重新归类的侧边栏项：原位置隐藏（克隆显示在目标组） */
.lm-moved { display: none !important; }

/* 帮你解决：菜单与入口隐藏（按需求仅保留教程展示） */
.VPNavBarMenu a[href="/help/"],
.VPNavScreen a[href="/help/"],
.VPNavBarMenu a[href="/help"],
.VPNavScreen a[href="/help"] { display: none !important; }

/* 后台新增的顶部菜单项：补齐原生 VPNavBarMenuLink 样式
   （原样式为 scoped data-v 版本，注入节点无 data-v 属性无法命中） */
.VPNavBarMenu a[data-lm-nav] {
  display: flex;
  align-items: center;
  padding: 0 12px;
  line-height: var(--vp-nav-height);
  font-size: 14px;
  font-weight: 500;
  color: var(--vp-c-text-1);
  transition: color 0.25s;
}
.VPNavBarMenu a[data-lm-nav]:hover {
  color: var(--vp-c-brand-1);
}
.VPNavBarMenu a[data-lm-nav] span {
  font-size: 14px;
}
