/* 翻倍山 · 淡雅视觉系统
   暖米白 + 雾绿 + 浅茶金。作为全站最后加载的主题层，统一旧页面的重色块。 */
:root {
  --ink: #30423a !important;
  --ink2: #40544a !important;
  --ink-soft: #4f6158 !important;
  --paper: #f7f5ef !important;
  --card: #fdfcf8 !important;
  --gold: #765f42 !important;
  --gold2: #8b7452 !important;
  --line: #dce4dc !important;
  --mute: #5f6f67 !important;
  --red: #8f514b !important;
  --sage: #dfe8e1;
  --sage-soft: #edf2ed;
  --tea-soft: #eee6d8;
}

html { background: var(--paper); }
body {
  background: var(--paper) !important;
  color: var(--ink) !important;
  text-rendering: optimizeLegibility;
}

::selection { background: #d8e4da; color: var(--ink); }

.btn,
.ubtn {
  border-radius: 10px !important;
}

.btn-gold,
.ubtn:not(.ghost) {
  background: #526d60 !important;
  color: #fff !important;
  box-shadow: 0 10px 24px -16px rgba(48, 66, 58, .4) !important;
}

.btn-gold:hover,
.ubtn:not(.ghost):hover {
  background: #425c50 !important;
}

.btn-ghost,
.ubtn.ghost {
  color: #566f63 !important;
  border-color: #aebfb5 !important;
  background: rgba(255, 255, 255, .48) !important;
}

.btn-ghost:hover,
.ubtn.ghost:hover {
  background: #edf2ed !important;
  color: #30483d !important;
}

/* 把旧页面的大面积深蓝销售块统一降为浅色。 */
.hero,
.stack,
.final,
section.offer,
.uhero {
  background: linear-gradient(145deg, #f8f5ec 0%, #e8efe9 100%) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
}

.hero::after,
.uhero::after {
  height: 1px !important;
  background: linear-gradient(90deg, transparent, #adbeaf 35%, #c4b291 65%, transparent) !important;
}

:is(.hero, .stack, .final, section.offer, .uhero) :is(h1, h2, h3, h4, .h2, b, strong) {
  color: var(--ink) !important;
}

:is(.hero, .stack, .final, section.offer, .uhero) :is(p, .micro, .trust, .reassure, .u, .row, .perks div, .photo-caption, .uwelcome) {
  color: var(--ink-soft) !important;
}

:is(.hero, .stack, .final, section.offer, .uhero) :is(.eb, .eyebrow, .price-now, .now, .badge, .v, a:not(.btn)) {
  color: #7c765f !important;
}
.hero .stat {
  background: rgba(255, 255, 255, .62) !important;
  border-color: var(--line) !important;
}
.hero .stat b { color: #526d60 !important; }
.hero .stat span { color: var(--ink-soft) !important; }

.stack .row {
  color: var(--ink-soft) !important;
  border-bottom-color: rgba(48, 66, 58, .1) !important;
}

.stack .total { color: var(--ink) !important; }

.ubar {
  background: #edf2ed !important;
  color: var(--ink-soft) !important;
  border-color: var(--line) !important;
}

.ubar b { color: var(--ink) !important; }

.card,
.giftcard,
.pain-item,
.review-card,
.tcard,
.fork .col,
.fit .col,
.gain .g,
.ucard,
.ustat,
.authcard {
  box-shadow: 0 14px 34px -28px rgba(48, 66, 58, .32) !important;
}

.eyebrow { color: #765f42 !important; }

.module-head { border-bottom-color: #82968b !important; }
.lesson:hover { background: #f8faf7 !important; }

#sticky {
  background: rgba(245, 247, 242, .96) !important;
  color: var(--ink) !important;
  border-color: var(--line) !important;
  box-shadow: 0 -10px 30px -24px rgba(48, 66, 58, .45) !important;
}

#sticky .p b { color: #60776b !important; }
#sticky .p span,
#sticky .p s { color: var(--mute) !important; }

/* 导航与页脚由脚本后插入，使用 !important 保持主题一致。 */
#fbnav {
  background: rgba(250, 249, 245, .94) !important;
  border-bottom-color: var(--line) !important;
}

#fbnav .lg,
#fbnav .lg-main { color: var(--ink) !important; }
#fbnav .lg-sub { color: #765f42 !important; }
#fbnav .lk a { color: var(--ink-soft) !important; }
#fbnav .lk a:hover { color: #526d60 !important; background: #edf2ed !important; }
#fbnav .lk a.me { color: #fff !important; background: #526d60 !important; }
#fbnav .mn { color: #60776b !important; border-color: #b8c7be !important; }

@media (max-width: 640px) {
  #fbnav .lk {
    background: rgba(250, 249, 245, .98) !important;
    border-color: var(--line) !important;
    box-shadow: 0 18px 34px -28px rgba(48, 66, 58, .5) !important;
  }
  #fbnav .lk a {
    background: #fff !important;
    border-color: var(--line) !important;
  }
}

#fbfoot,
footer {
  background: #edf1eb !important;
  color: var(--mute) !important;
  border-top: 1px solid var(--line);
}

#fbfoot .ff-b,
footer .fb { color: var(--ink) !important; }
#fbfoot .ff-sub { color: #765f42 !important; }
#fbfoot .ff-lk a { color: var(--ink-soft) !important; }
#fbfoot .ff-lk a:hover { color: #526d60 !important; }
#fbfoot .ff-c,
#fbfoot .ff-d { color: var(--mute) !important; font-size: 12.5px !important; }
#fbfoot .ff-c a { color: #405b4e !important; }

/* 老余分身与独立聊天页：保留清晰对话层级，但不再使用沉重深蓝。 */
#fbta-fab {
  background: #526d60 !important;
  color: #fff !important;
  box-shadow: 0 10px 26px -14px rgba(48, 66, 58, .5) !important;
}
#ta-fab { background: #526d60 !important; color: #fff !important; }
#ta-fab b { color: #fff !important; }
#fbta-fab b { color: #fff !important; }
#fbta-panel { background: var(--paper) !important; }
#fbta-panel .hd,
.ta-head,
.dw-hd,
body > header {
  background: #e5ece6 !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--line) !important;
}
#fbta-panel .hd .t b,
.ta-head .t b,
body > header .b,
body > header .back { color: #6b7f74 !important; }
#fbta-panel .hd .x,
.ta-head .x,
.dw-hd .dw-x { color: var(--ink-soft) !important; }
#fbta-panel .hd .x,
.ta-head .x,
body > header .back {
  background: #fdfcf8 !important;
  border-color: #b8c7be !important;
  color: var(--ink) !important;
}
#fbta-panel .hd .x:hover,
.ta-head .x:hover,
body > header .back:hover {
  background: #f0f4ef !important;
  border-color: #82968b !important;
}
body > header .hbtn {
  background: #fdfcf8 !important;
  border-color: #b8c7be !important;
  color: #405b4e !important;
}
body > header .s { color: var(--mute) !important; }
.dw-hd .dw-x { min-width: 44px; min-height: 44px; }
.fbta-me .fbta-bub,
.me .bubble { background: #72887c !important; color: #fff !important; }
.fbta-bot .av,
.bot .av { background: #e2ebe3 !important; color: #5f766a !important; }
#fbta-send,
#ta-send,
#send { background: #526d60 !important; color: #fff !important; }
#fbta-nudge { background: #f9faf6 !important; color: var(--ink) !important; border-color: #bdcbbf !important; }
#fbta-nudge b { color: #5e7569 !important; }

/* 学员中心旧的深色 AI 卡降为雾绿色。 */
.ucard[style*="#26303c"] {
  background: #e8efe9 !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
}
.ucard[style*="#26303c"] * { color: var(--ink-soft) !important; }
.ucard[style*="#26303c"] .uct { color: #6b7f74 !important; }

/* 付费弹层保持高可读性并与新主题一致。 */
#fbpayov,
.payov,
#fbmodal,
#fbsvc { background: rgba(48, 58, 52, .46) !important; }
#fbpaybox,
.paybox,
#fbmodal .fm-box,
#fbsvc .fs-box { border-color: #aebfb5 !important; }

/* 学习页与账号页也维持轻盈层次；视频画面本身仍保留黑色底。 */
.topbar,
.dw-hd {
  background: #e5ece6 !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--line) !important;
}
.topbar a,
.topbar .mid { color: var(--ink-soft) !important; }
.overlay {
  background: rgba(247, 245, 239, .96) !important;
  color: var(--ink) !important;
}
.overlay p { color: var(--ink-soft) !important; }
.overlay .btn-ghost { color: #566f63 !important; border-color: #aebfb5 !important; }
.authcard,
.rfcard,
.dw-panel,
#fbpaybox,
.paybox {
  background: #fdfcf8 !important;
  border-color: var(--line) !important;
}
input,
textarea,
select { border-color: var(--line) !important; color: var(--ink) !important; }
.tabs button.on { background: #526d60 !important; color: #fff !important; }
.ctacard { background: linear-gradient(145deg, #f7f2e7, #e8efe9) !important; }
.rfstate { background: #edf2ed !important; color: var(--ink-soft) !important; }
.rfcard button,
.loginbtn { background: #526d60 !important; }
.wp h2 { color: #765f42 !important; }
.wp p,
.wp li { color: var(--ink-soft) !important; }
.wp .sub { color: var(--mute) !important; }

/* 键盘、低视力和移动端：可见焦点、足够字号与对比度。 */
:where(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid #8b7452 !important;
  outline-offset: 3px !important;
}
.lesson .no small { font-size: 11px !important; }
.lesson .desc { font-size: 13px !important; line-height: 1.6 !important; }
.tag-lock,
.tag-free,
.tag-done,
.dur { font-size: 12px !important; }
.tag-free,
.tag-done { color: #2f682b !important; }
.fit-card.no h3 { color: #8f514b !important; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
