/* =============================================================================
   APEXFITO DESIGN SYSTEM  ·  "D2 PERFORMANCE"
   -----------------------------------------------------------------------------
   由 mu-plugin `apexfito-design-system.php` 在 wp_head priority 1001 挂载，
   即全站最后一份样式表 —— 用于覆盖：
     · #kadence-global-inline-css (:root 调色板/字体令牌)
     · #apx-font-settings      (priority 1000, 字号 !important)
     · mu-plugins/apexfito-custom.css + carousel-v2.css
   回滚：停用该 mu-plugin 即可整站还原（不改任何既有文件）。
   ============================================================================= */

/* ── 0. 自托管字体（OFL 商用免费，不依赖 Google Fonts CDN）────────────────── */
@font-face{font-family:'Saira Condensed';src:url(apx-fonts/saira-condensed-600.woff2) format('woff2');
  font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(apx-fonts/saira-condensed-700.woff2) format('woff2');
  font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(apx-fonts/saira-condensed-800.woff2) format('woff2');
  font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(apx-fonts/saira-condensed-900.woff2) format('woff2');
  font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url(apx-fonts/inter-400.woff2) format('woff2');
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url(apx-fonts/inter-700.woff2) format('woff2');
  font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(apx-fonts/jetbrains-mono-500.woff2) format('woff2');
  font-weight:400 700;font-style:normal;font-display:swap}

/* ── 1. 设计令牌 ─────────────────────────────────────────────────────────── */
:root{
  /* 自有令牌（组件层用） */
  --apx-brand:#FF2D00; --apx-brand-dark:#D92500; --apx-brand-soft:#FF6240;
  --apx-brand-tint:rgba(255,45,0,.11);
  --apx-ink:#F4F5F6; --apx-ink-2:#B8BEC4; --apx-muted:#868D94; --apx-faint:#5D6469;
  --apx-bg:#0E0F10; --apx-panel:#16181A; --apx-panel-2:#1E2124;
  --apx-rule:#2A2E32; --apx-rule-strong:#3C4248;
  --apx-focus:#5AA9FF; --apx-radius:4px; --apx-measure:720px;
  --apx-display:'Saira Condensed','Arial Narrow',Impact,sans-serif;
  --apx-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  --apx-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --apx-ease:.65s ease;

  /* ── 覆盖 Kadence 令牌（:root 同特异性 + 我方后加载 = 生效）── */
  --global-palette1:var(--apx-brand);        /* 品牌主色/链接 */
  --global-palette2:var(--apx-brand-dark);   /* 品牌 hover */
  --global-palette3:var(--apx-ink);          /* 标题色（原 #1b1314 深） */
  --global-palette4:#C6CDD3;                 /* 正文色 */
  --global-palette5:#AEB5BB;                 /* 次级正文 */
  --global-palette6:var(--apx-muted);        /* 弱化/元数据 */
  --global-palette7:var(--apx-panel-2);      /* 浅面板 / 边框（原 #fff） */
  --global-palette8:var(--apx-panel);        /* 面板（原 #fff） */
  --global-palette9:var(--apx-bg);           /* 页面底色（原 #fff） */
  --global-palette9rgb:14,15,16;             /* ⚠️ 渐变里用 rgba(var(--global-palette9rgb),x)，
                                                改底色必须同步改，否则渐变发白 */
  /* 字体令牌 */
  --global-body-font-family:var(--apx-sans);
  --global-heading-font-family:var(--apx-display);
  --global-primary-nav-font-family:var(--apx-sans);
  --global-fallback-font:var(--apx-sans);
  --global-display-fallback-font:var(--apx-display);
  /* 按钮令牌（D2：红底深字 → hover 白底深字） */
  --global-palette-btn-bg:var(--apx-brand);
  --global-palette-btn:var(--apx-bg);
  --global-palette-btn-bg-hover:#FFFFFF;
  --global-palette-btn-hover:var(--apx-bg);
  /* 次级按钮：透明底 + 描边 */
  --global-palette-btn-sec-bg:transparent;
  --global-palette-btn-sec:var(--apx-ink);
  --global-palette-btn-sec-bg-hover:var(--apx-brand);
  --global-palette-btn-sec-hover:var(--apx-bg);
  --global-palette-highlight:var(--apx-brand);
  --global-palette-highlight-alt:var(--apx-brand-dark);
  --global-palette-highlight-alt2:var(--apx-bg);
  /* 内容宽度对齐 D2 的 1300 */
  --global-content-width:1300px;
  --global-content-wide-width:calc(1300px + 230px);
  color-scheme:dark;
}

/* ── 2. 基础 ─────────────────────────────────────────────────────────────── */
html{-webkit-text-size-adjust:100%}
body{
  background:var(--apx-bg);
  color:var(--apx-ink);
  font-family:var(--apx-sans);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
/* 深色纵深：顶部极淡红光，避免大面积纯黑发闷 */
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(64% 42% at 12% -4%,rgba(255,45,0,.075),transparent 60%),
    radial-gradient(52% 38% at 96% 4%,rgba(140,170,200,.045),transparent 58%);
}
::selection{background:var(--apx-brand);color:var(--apx-bg)}
a{color:var(--apx-brand)}
a:hover{color:var(--apx-brand-soft)}
:where(a,button,input,textarea,select):focus-visible{
  outline:2px solid var(--apx-brand);outline-offset:3px;border-radius:var(--apx-radius)}
/* 深色滚动条 */
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:#0B0C0D}
::-webkit-scrollbar-thumb{background:var(--apx-rule);border:3px solid #0B0C0D;border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:var(--apx-brand)}
html{scrollbar-color:var(--apx-rule) #0B0C0D;scrollbar-width:thin}

/* 标题一律窄体全大写 —— D2 的核心识别特征 */
h1,h2,h3,h4,h5,h6,
.entry-title,.page-title,.widget-title,.wp-block-heading{
  font-family:var(--apx-display)!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.014em!important;
  line-height:1.02!important;
  color:var(--apx-ink);
}
h1,.entry-title{line-height:.98!important}
h4,h5,h6,.widget-title{font-weight:700!important;letter-spacing:.05em!important;line-height:1.15!important}

/* 小标签（eyebrow / 元数据 / 分类）→ 等宽全大写 */
.entry-taxonomies a,.cat-links a,.entry-meta,.post-meta,
.meta-label,.entry-meta .author,.entry-meta time,
.kadence-breadcrumbs,.entry-footer .tags-links a{
  font-family:var(--apx-mono)!important;
  text-transform:uppercase;letter-spacing:.12em;
}

/* ── 3. 页眉 ─────────────────────────────────────────────────────────────── */
.site-header,.site-mobile-header-wrap{
  background:rgba(14,15,16,.92)!important;
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--apx-rule)!important;
}
.site-header .site-header-row-container-inner,
.site-mobile-header-wrap .site-header-row-container-inner{background:transparent!important}
.site-top-header-wrap .site-header-row-container-inner{border-bottom:1px solid var(--apx-rule)}
/* 顶部公告条：等宽大写红字 */
.site-top-header-wrap .header-html,
.site-top-header-wrap .header-html a{
  font-family:var(--apx-mono)!important;font-size:12px!important;font-weight:700!important;
  text-transform:uppercase;letter-spacing:.13em;color:var(--apx-brand)!important
}
.site-top-header-wrap .header-html a:hover{color:#fff!important}

/* Logo */
.site-branding .site-title,
.site-branding .site-title a,
.brand .site-title-wrap .site-title,
.site-mobile-header-wrap .site-title,
.site-mobile-header-wrap .site-title a{
  font-family:var(--apx-display)!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
  color:var(--apx-ink)!important;
  line-height:1!important;
}
.site-branding .site-title a:hover{color:var(--apx-brand)!important}
/* 描述行弱化 */
.site-branding .site-description{color:var(--apx-muted)!important;font-family:var(--apx-mono)!important}

/* ── 4. 导航 ─────────────────────────────────────────────────────────────── */
.main-navigation .menu-item > a,
.header-navigation .menu-item > a,
#site-navigation .menu-item > a{
  font-family:var(--apx-sans)!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  color:var(--apx-ink-2)!important;
  transition:color var(--apx-ease);
}
.main-navigation .menu-item > a:hover,
.header-navigation .menu-item > a:hover,
.main-navigation .menu-item.current-menu-item > a,
.header-navigation .menu-item.current-menu-item > a{color:var(--apx-brand)!important}
.main-navigation .menu-item > a:hover .kadence-svg-iconset,
.header-navigation .menu-item > a:hover .kadence-svg-iconset{color:var(--apx-brand)}

/* 下拉：深面板 + 红色 hover（用户 2026-08-04 明确要求：纯黑底 + 红字） */
.header-navigation .header-menu-container ul ul.sub-menu,
.main-navigation .primary-menu-container ul ul.sub-menu{
  background:var(--apx-panel-2)!important;
  border:1px solid var(--apx-rule-strong)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.6)!important;
}
.header-navigation .header-menu-container ul ul li.menu-item > a,
.main-navigation .primary-menu-container ul ul li.menu-item > a{
  font-size:15px!important;color:var(--apx-ink-2)!important;
  text-transform:none;letter-spacing:.02em;
}
.header-navigation .header-menu-container ul ul li.menu-item > a:hover,
.main-navigation .primary-menu-container ul ul li.menu-item > a:hover{
  color:var(--apx-brand)!important;background:#000000!important
}
/* 移动端抽屉 */
#mobile-drawer .drawer-inner{background:var(--apx-panel)!important}
#mobile-drawer .drawer-header{border-bottom:1px solid var(--apx-rule)!important}
#mobile-drawer .drawer-navigation .menu-item > a{color:var(--apx-ink)!important;text-transform:uppercase;
  letter-spacing:.1em;font-weight:700}
#mobile-drawer .drawer-navigation .menu-item > a:hover{color:var(--apx-brand)!important}
#mobile-drawer .toggle-close-bar{background:var(--apx-ink)!important}
#search-drawer .drawer-inner{background:var(--apx-panel)!important}
#search-drawer .drawer-content{color:var(--apx-ink)}
/* 搜索/汉堡图标 */
.header-navigation .kadence-svg-iconset,.search-toggle-open,.mobile-toggle-open,
.menu-toggle-open .kadence-svg-iconset{color:var(--apx-ink-2)}
.search-toggle-open:hover,.search-toggle-open:hover .kadence-svg-iconset{color:var(--apx-brand)}
/* 移动端汉堡按钮 */
.mobile-navigation-toggle .toggle-bar{background:var(--apx-ink)!important}

/* ── 5. 页脚 ─────────────────────────────────────────────────────────────── */
.site-footer,.site-footer .site-footer-row-container-inner{
  background:var(--apx-panel)!important;
  border-top:1px solid var(--apx-rule);
  color:var(--apx-ink-2);
}
.site-footer .site-footer-wrap{border-top:1px solid var(--apx-rule)}
.site-footer .footer-widget-area-inner{color:var(--apx-ink-2)}
.site-footer h1,.site-footer h2,.site-footer h3,.site-footer h4,.site-footer h5,.site-footer h6,
.site-footer .widget-title{
  font-family:var(--apx-display)!important;font-weight:700!important;
  text-transform:uppercase!important;letter-spacing:.08em!important;
  color:var(--apx-ink)!important;
}
.site-footer a{color:var(--apx-ink-2)!important;transition:color var(--apx-ease)}
.site-footer a:hover{color:var(--apx-brand)!important}
.site-footer li,.site-footer p{color:var(--apx-ink-2)}
.site-footer .site-info,.site-footer .site-footer-bottom-section-1{color:var(--apx-muted)}
.site-footer .site-footer-bottom-section-1::before{color:var(--apx-muted)!important}
/* 社媒图标：白 → hover 红 */
.site-footer .footer-social .kadence-svg-iconset{color:var(--apx-ink)!important;transition:color var(--apx-ease)}
.site-footer .footer-social a:hover .kadence-svg-iconset{color:var(--apx-brand)!important}
.site-footer input,.site-footer .wp-block-search__input{
  background:var(--apx-bg)!important;border:1px solid var(--apx-rule-strong)!important;color:var(--apx-ink)!important}

/* ── 6. 按钮 & 表单 ─────────────────────────────────────────────────────── */
.wp-block-button__link,.kb-button,.button,.entry-content .button,
button[type=submit],input[type=submit],.kadence-simple-give-button,
.site-footer .wp-block-button__link{
  font-family:var(--apx-sans)!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  border-radius:var(--apx-radius)!important;
  transition:all var(--apx-ease)!important;
}
.wp-block-button__link:hover,.kb-button:hover,.button:hover,
button[type=submit]:hover,input[type=submit]:hover{
  transform:translateY(-1px);
  box-shadow:0 0 0 1px #fff,0 0 34px rgba(255,45,0,.55);
}
/* 次级按钮：描边 */
.wp-block-button.is-style-outline .wp-block-button__link,
.kb-button.kb-btn-outline,.button.secondary{
  background:transparent!important;border:1px solid var(--apx-rule-strong)!important;color:var(--apx-ink)!important}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.kb-button.kb-btn-outline:hover{
  border-color:var(--apx-brand)!important;color:var(--apx-brand)!important;background:var(--apx-brand-tint)!important}

input[type=text],input[type=email],input[type=url],input[type=password],
input[type=search],input[type=number],input[type=tel],textarea,select{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule-strong)!important;
  color:var(--apx-ink)!important;border-radius:var(--apx-radius)!important;
  transition:border-color var(--apx-ease)}
input::placeholder,textarea::placeholder{color:var(--apx-faint)!important}
input:focus,textarea:focus,select:focus{border-color:var(--apx-brand)!important}

/* ── 7. 正文排版 ─────────────────────────────────────────────────────────── */
.entry-content,.single-content,.content-area .entry-content{
  color:var(--apx-ink-2);
}
/* ⚠️ font-settings(priority1000) 对正文 p/li 设了 font-size/line-height !important，
   我方在 1001 → 同特异性后者胜；line-height 必须带 !important 才能压过它 */
.entry-content p,.entry-content li,.single-content p,.single-content li{
  color:var(--apx-ink-2);
  line-height:1.78!important;
}
.entry-content h2,.single-content h2{
  margin-top:2.4em!important;padding-top:1em!important;
  border-top:1px solid var(--apx-rule);
  font-size:clamp(26px,3.4vw,40px)!important;
}
.entry-content h2::before{
  content:"";display:block;width:56px;height:2px;background:var(--apx-brand);margin-bottom:16px}
.entry-content h3,.single-content h3{font-size:clamp(21px,2.4vw,27px)!important}
.entry-content h3::before{content:none}
.entry-content strong,.single-content strong{color:var(--apx-ink);font-weight:700}
.entry-content a:not(.button):not(.wp-block-button__link),.single-content a{
  color:var(--apx-brand-soft);text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:rgba(255,45,0,.4);transition:color var(--apx-ease),text-decoration-color var(--apx-ease)}
.entry-content a:not(.button):not(.wp-block-button__link):hover,.single-content a:hover{
  color:var(--apx-brand);text-decoration-color:var(--apx-brand)}
.entry-content blockquote,.single-content blockquote{
  background:var(--apx-panel);border-left:2px solid var(--apx-brand);
  border-radius:var(--apx-radius);color:var(--apx-ink);padding:22px 26px;margin:2em 0}
.entry-content blockquote p:last-child{margin-bottom:0}
.entry-content code,.single-content code{
  background:var(--apx-panel-2);color:var(--apx-brand-soft);
  font-family:var(--apx-mono)!important;font-size:.9em;
  padding:2px 6px;border-radius:3px}
.entry-content pre,.single-content pre{
  background:#0B0C0D;border:1px solid var(--apx-rule);border-radius:var(--apx-radius);
  color:var(--apx-ink);font-family:var(--apx-mono)!important;padding:18px 20px;overflow-x:auto}
.entry-content pre code{background:none;color:var(--apx-ink);padding:0}
/* 表格：深色化 */
.entry-content table,.single-content table{
  border-collapse:collapse;width:100%;margin:2em 0;
  background:var(--apx-panel);border:1px solid var(--apx-rule)}
.entry-content table th,.single-content table th{
  background:var(--apx-panel-2);color:var(--apx-ink);
  font-family:var(--apx-display)!important;text-transform:uppercase;letter-spacing:.06em;
  font-weight:700;padding:12px 14px;border:1px solid var(--apx-rule);text-align:left}
.entry-content table td,.single-content table td{
  padding:11px 14px;border:1px solid var(--apx-rule);color:var(--apx-ink-2)}
.entry-content table tr:nth-child(even) td{background:rgba(255,255,255,.015)}
/* 列表标记用品牌红 */
.entry-content ul li::marker,.entry-content ol li::marker,.single-content ul li::marker{color:var(--apx-brand)}
/* 图片 */
.entry-content img,.single-content img{border-radius:var(--apx-radius)}
.entry-content figcaption,.single-content figcaption,
.wp-block-image figcaption{color:var(--apx-muted)!important;font-family:var(--apx-mono)!important;
  font-size:12px!important;letter-spacing:.04em;margin-top:8px}
hr.wp-block-separator,.entry-content hr{border:0;border-top:1px solid var(--apx-rule);margin:2.4em 0}

/* ── 8. 卡片 / 列表 / 内容表面 ───────────────────────────────────────────── */
/* Kadence 白底容器 → 深面板 */
.content-bg,.content-bg.entry-content-wrap,
.post-thumbnail,.entry-related,.comments-area,
.entry-content-wrap{background:transparent!important}
.content-style-boxed .content-bg:not(.entry-content-wrap),
.content-style-boxed .site-main .entry-content-wrap{
  background:transparent!important;box-shadow:none!important}
/* 文章 hero 缩略图 */
.post-thumbnail.kadence-thumbnail-position-behind::after{
  background:linear-gradient(180deg,rgba(14,15,16,.25) 0%,rgba(14,15,16,.85) 100%)!important}
/* 列表卡片 */
.loop-entry,.entry.loop-entry{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-radius:var(--apx-radius)!important;overflow:hidden;
  transition:border-color var(--apx-ease),transform var(--apx-ease),background var(--apx-ease)}
.loop-entry:hover{border-color:var(--apx-brand)!important;background:var(--apx-panel-2)!important;
  transform:translateY(-3px)}
.loop-entry .entry-title a{color:var(--apx-ink)!important}
.loop-entry:hover .entry-title a{color:var(--apx-brand)!important}
.loop-entry .entry-summary,.loop-entry .entry-summary p{color:var(--apx-ink-2)!important}
/* 相关文章 */
.entry-related .loop-entry{background:var(--apx-panel)!important}
.entry-related .entry-title a{color:var(--apx-ink)!important}
/* 分页 / page-links */
.page-links .post-page-numbers{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  color:var(--apx-ink-2)!important;border-radius:8px!important}
.page-links .post-page-numbers.current{background:var(--apx-brand)!important;
  border-color:var(--apx-brand)!important;color:var(--apx-bg)!important}
.page-links .post-page-numbers:hover{border-color:var(--apx-brand)!important;color:var(--apx-brand)!important}
/* 评论 */
.comments-area .comment-body{border-bottom:1px solid var(--apx-rule)}
.comments-area .comment-content{color:var(--apx-ink-2)}
/* 面包屑 */
.kadence-breadcrumbs,.kadence-breadcrumbs a{color:var(--apx-muted)!important}
.kadence-breadcrumbs a:hover{color:var(--apx-brand)!important}

/* ══════════════════════════════════════════════════════════════════════════════
   11. 旧浅色组件库 → 深色适配
   ------------------------------------------------------------------------------
   自动提取自 apexfito-custom.css / carousel-v2.css / blog-enhance.css / apx-deals.css
   （34 个浅底选择器 / 67 个深字选择器）
   ⚠️ 全部前缀 `body.apx-d2` 做特异性加成：
      !important 之间仍比特异性 —— carousel-v2 的 `.apx-hero-carousel .apx-btn`(0,2,0)
      会压过裸 `.apx-btn`(0,1,0)。前缀后为 (0,2,1)，稳胜。
   ══════════════════════════════════════════════════════════════════════════════ */

/* 背景：浅色 → 深面板 */
body.apx-d2 #colophon .social-link-facebook,
body.apx-d2 #colophon .social-link-instagram,
body.apx-d2 #colophon .social-link-tiktok,
body.apx-d2 #colophon .social-link-twitter,
body.apx-d2 #colophon .social-link-youtube,
body.apx-d2 .apex-card,
body.apx-d2 .apx-advice-card,
body.apx-d2 .apx-badge,
body.apx-d2 .apx-cat-btn,
body.apx-d2 .apx-category-card,
body.apx-d2 .apx-dp-card,
body.apx-d2 .apx-dp-img,
body.apx-d2 .apx-gear-hub-card,
body.apx-d2 .apx-gear-img-box,
body.apx-d2 .apx-home,
body.apx-d2 .apx-home-gear-card,
body.apx-d2 .apx-home-gear-image,
body.apx-d2 .apx-latest-gear-card,
body.apx-d2 .apx-mini-link-card,
body.apx-d2 .apx-page-post-card,
body.apx-d2 .apx-page-post-card__media,
body.apx-d2 .apx-page-post-card__placeholder,
body.apx-d2 .apx-path-card,
body.apx-d2 .apx-question-card,
body.apx-d2 .apx-review-card,
body.apx-d2 .apx-route-card,
body.apx-d2 .apx-section,
body.apx-d2 .apx-start-section--alt,
body.apx-d2 .apx-strip-card,
body.apx-d2 .apx-tool-card,
body.apx-d2 .apx-topic-btn,
body.apx-d2 .apx-topic-card,
body.apx-d2 .apx-trust-card,
body.apx-d2 section.apx-section:has(.apx-home-gear-grid)
{background:var(--apx-panel)!important;border-color:var(--apx-rule)!important}

/* 旧品牌红 #b22f1e / #d93d29 → D2 纯力红（特异化，避免只改一半） */
body.apx-d2  .apx-eyebrow,body.apx-d2  .apex-eyebrow,body.apx-d2  .apx-category-eyebrow,
body.apx-d2  .apx-link,body.apx-d2  .apx-btn-secondary,body.apx-d2  .apx-section h2 span,
body.apx-d2  .apx-strip-card strong,body.apx-d2  .apx-breadcrumb__item a
{color:var(--apx-brand-soft)!important}
body.apx-d2  .apx-cat-btn.active,body.apx-d2  .apx-cat-btn.active:hover
{background:var(--apx-brand)!important;border-color:var(--apx-brand)!important;color:var(--apx-bg)!important}

/* 文字：深色 → 浅色（标题类 → ink，正文类 → ink-2） */
body.apx-d2 .apex-hero h1,
body.apx-d2 .apex-section h2,
body.apx-d2 .apex-section h3,
body.apx-d2 .apx-advice-card__title,
body.apx-d2 .apx-badge,
body.apx-d2 .apx-category-card h3,
body.apx-d2 .apx-category-hero h1,
body.apx-d2 .apx-category-section h2,
body.apx-d2 .apx-dp-body h3,
body.apx-d2 .apx-gear-hub-card .apx-topic-body h3,
body.apx-d2 .apx-hero-copy h1,
body.apx-d2 .apx-home-gear-body h3,
body.apx-d2 .apx-latest-gear-card .apx-article-body h3,
body.apx-d2 .apx-path-card__title,
body.apx-d2 .apx-question-card h3,
body.apx-d2 .apx-review-card h3,
body.apx-d2 .apx-route-card__title,
body.apx-d2 .apx-section h2,
body.apx-d2 .apx-start-hero__subtitle,
body.apx-d2 .apx-start-hero__title,
body.apx-d2 .apx-start-section__title,
body.apx-d2 .apx-tool-card__title,
body.apx-d2 .apx-topic-body h3,
body.apx-d2 .apx-trust-card__title,
body.apx-d2 .apx-why-card h3
{color:var(--apx-ink)!important}
body.apx-d2 #colophon .social-button.social-link-facebook:hover,
body.apx-d2 #colophon .social-button.social-link-instagram:hover,
body.apx-d2 #colophon .social-button.social-link-tiktok:hover,
body.apx-d2 #colophon .social-button.social-link-twitter:hover,
body.apx-d2 #colophon .social-button.social-link-youtube:hover,
body.apx-d2 #colophon .social-link-facebook,
body.apx-d2 #colophon .social-link-instagram,
body.apx-d2 #colophon .social-link-tiktok,
body.apx-d2 #colophon .social-link-twitter,
body.apx-d2 #colophon .social-link-youtube,
body.apx-d2 .apex-lead,
body.apx-d2 .apex-section p,
body.apx-d2 .apx-advice-card p,
body.apx-d2 .apx-breadcrumb__item span[aria-current="page"],
body.apx-d2 .apx-cat-btn,
body.apx-d2 .apx-cat-btn:hover,
body.apx-d2 .apx-category-card p,
body.apx-d2 .apx-category-lead,
body.apx-d2 .apx-dp-body p,
body.apx-d2 .apx-dp-disc a,
body.apx-d2 .apx-dp-tag,
body.apx-d2 .apx-gear-hub-card .apx-topic-body p,
body.apx-d2 .apx-home-gear-body p,
body.apx-d2 .apx-latest-gear-card .apx-article-body p,
body.apx-d2 .apx-lead,
body.apx-d2 .apx-mini-link-label,
body.apx-d2 .apx-page-post-card__body p,
body.apx-d2 .apx-page-post-card__placeholder,
body.apx-d2 .apx-question-card p,
body.apx-d2 .apx-review-card p,
body.apx-d2 .apx-route-card__steps a,
body.apx-d2 .apx-route-card__steps li,
body.apx-d2 .apx-section-intro,
body.apx-d2 .apx-start-hero__desc,
body.apx-d2 .apx-start-section--cta p,
body.apx-d2 .apx-start-section__sub,
body.apx-d2 .apx-strip-card br + *,
body.apx-d2 .apx-tool-card__desc,
body.apx-d2 .apx-topic-body p,
body.apx-d2 .apx-topic-btn,
body.apx-d2 .apx-trust-card p,
body.apx-d2 .apx-why-card p
{color:var(--apx-ink-2)!important}

/* 微调 */
body.apx-d2  .apx-start-section--alt{background:var(--apx-panel-2)!important}
body.apx-d2  .apx-page-post-card__placeholder{background:linear-gradient(135deg,#1E2124 0%,#2A2E32 100%)!important}
body.apx-d2  .apx-home,body.apx-d2  .apx-section{background:transparent!important}
body.apx-d2  .apx-home-gear-image,body.apx-d2  .apx-gear-img-box{background:var(--apx-panel-2)!important}

/* ── 10. 杂项 ───────────────────────────────────────────────────────────── */
/* Cookie 同意横幅（Complianz）深色化 */
.cmplz-cookiebanner{background:var(--apx-panel)!important;border:1px solid var(--apx-rule-strong)!important;
  color:var(--apx-ink)!important}
.cmplz-cookiebanner .cmplz-title{color:var(--apx-ink)!important}
.cmplz-cookiebanner .cmplz-message,.cmplz-cookiebanner .cmplz-description{color:var(--apx-ink-2)!important}
.cmplz-btn.cmplz-accept{background:var(--apx-brand)!important;color:var(--apx-bg)!important;border-color:var(--apx-brand)!important}
.cmplz-btn.cmplz-deny,.cmplz-btn.cmplz-view-preferences{background:var(--apx-panel-2)!important;
  color:var(--apx-ink)!important;border-color:var(--apx-rule-strong)!important}
/* 跳转链接 */
.skip-link{background:var(--apx-brand);color:var(--apx-bg)}
/* 强制隐藏元素里的浅色残留 */
.kadence-thumbnail-ratio-inherit .post-thumbnail-inner{background:var(--apx-panel)}

/* ══════════════════════════════════════════════════════════════════════════════
   12. 覆盖加固 —— 实测发现的强覆盖源（浏览器枚举规则定位）
   ══════════════════════════════════════════════════════════════════════════════ */

/* ① #masthead：custom.css 用「ID 选择器 + !important」设了深棕底 rgb(27,19,20)，
      裸 .site-header(0,1,0) 压不过 (1,0,0)。必须同样用 ID 回击。 */
#masthead,
#masthead .site-header-row-container-inner,
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner{
  background-color:rgba(14,15,16,.92)!important;
  border-bottom:1px solid var(--apx-rule)!important;
}
#masthead .site-header-inner-wrap,#masthead .site-header-upper-inner-wrap{background:transparent!important}

/* ② 订阅按钮：内联 style 只写了 background:#2d6a4f（无 !important）
      → 样式表 !important 可覆盖 */
#apexfito-newsletter-form button,
#apexfito-newsletter-form input[type=submit],
.newsletter-signup button,
.newsletter-signup input[type=submit]{
  background:var(--apx-brand)!important;color:var(--apx-bg)!important;
  border:0!important;border-radius:var(--apx-radius)!important;
  font-weight:700!important;text-transform:uppercase;letter-spacing:.12em;
  transition:all var(--apx-ease)!important;
}
#apexfito-newsletter-form button:hover,
.newsletter-signup button:hover{background:#fff!important;color:var(--apx-bg)!important}
.newsletter-signup input[type=email],.newsletter-signup input[type=text]{
  background:var(--apx-panel-2)!important;border:1px solid var(--apx-rule-strong)!important;
  color:var(--apx-ink)!important}
.newsletter-signup{color:var(--apx-ink-2)}

/* ③ 内联 `style="color:#111827!important"` 这类 —— 内联 !important 在层叠中
      优先级最高，任何样式表都无法覆盖。
      → 换属性绕过：-webkit-text-fill-color 与 color 是两个属性，
        内联 color 不会设置它，故可生效（Chrome/Safari/Firefox 均支持）。 */
.apx-cta-card h3,.apx-cta-card h4,.apx-cta-card .apx-cta-title,
.apx-cta-card strong{
  -webkit-text-fill-color:var(--apx-ink)!important;
  background-image:none!important;
}
.apx-cta-card p,.apx-cta-card li,.apx-cta-card span{
  -webkit-text-fill-color:var(--apx-ink-2)!important;
}

/* ④ Complianz「Manage consent」悬浮按钮：白底 → 深面板 */
.cmplz-btn.cmplz-manage-consent,.cmplz-manage-consent{
  background:var(--apx-panel-2)!important;color:var(--apx-ink)!important;
  border:1px solid var(--apx-rule-strong)!important}
.cmplz-btn.cmplz-manage-consent:hover{background:var(--apx-brand)!important;color:var(--apx-bg)!important}

/* ══════════════════════════════════════════════════════════════════════════════
   13. 编辑组件插件深色适配
   —— 来源: wp-content/plugins/apexfito-editorial-components/assets/editorial-components.css
      （上一轮提取时漏了这个目录，实测文章页残留白底 730x390 + 浅橙免责声明）
   ══════════════════════════════════════════════════════════════════════════════ */

/* 作者/审阅元信息条 */
body.apx-d2 .apx-editorial-meta{
  background:var(--apx-panel)!important;
  border:1px solid var(--apx-rule)!important;
  color:var(--apx-ink-2)!important;
  box-shadow:none!important;
}
body.apx-d2 .apx-editorial-meta__item strong{color:var(--apx-ink)!important}

/* 免责声明：浅橙 / 浅黄底 → 深面板 + 红色左边条 */
body.apx-d2 .apx-disclaimer,
body.apx-d2 .apx-disclaimer--health,
body.apx-d2 .apx-disclaimer--gear{
  background:var(--apx-panel)!important;
  color:var(--apx-ink-2)!important;
  border:1px solid var(--apx-rule)!important;
  border-left:2px solid var(--apx-brand)!important;
  box-shadow:none!important;
}
body.apx-d2 .apx-disclaimer p,body.apx-d2 .apx-disclaimer strong{color:var(--apx-ink-2)!important}

/* 参考文献 / FAQ / 作者简介：白底 → 深面板 */
body.apx-d2 .apx-references,
body.apx-d2 .apx-faq,
body.apx-d2 .apx-author-bio{
  background:var(--apx-panel)!important;
  border:1px solid var(--apx-rule)!important;
  box-shadow:none!important;
}
body.apx-d2 .apx-references h2,
body.apx-d2 .apx-faq h2,
body.apx-d2 .apx-author-bio h2{color:var(--apx-ink)!important;letter-spacing:.014em!important}
body.apx-d2 .apx-references__list li{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-reference-source{color:var(--apx-muted)!important}

/* FAQ 折叠项 */
body.apx-d2 .apx-faq__item{background:var(--apx-panel-2)!important;border-color:var(--apx-rule)!important}
body.apx-d2 .apx-faq__item[open]{background:var(--apx-panel)!important;border-color:var(--apx-rule-strong)!important}
body.apx-d2 .apx-faq__item summary{color:var(--apx-ink)!important}
body.apx-d2 .apx-faq__answer,body.apx-d2 .apx-faq__answer p{color:var(--apx-ink-2)!important}

/* 作者简介 */
body.apx-d2 .apx-author-bio__avatar{background:var(--apx-brand)!important;color:var(--apx-bg)!important;
  font-family:var(--apx-display)!important;font-weight:900!important}
body.apx-d2 .apx-author-bio__content h3{color:var(--apx-ink)!important}
body.apx-d2 .apx-author-bio__content p{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-author-bio__links a{
  background:var(--apx-panel-2)!important;border:1px solid var(--apx-rule-strong)!important;
  color:var(--apx-ink)!important;border-radius:var(--apx-radius)!important;
  transition:all var(--apx-ease)!important;
}
body.apx-d2 .apx-author-bio__links a:hover,
body.apx-d2 .apx-author-bio__links a:focus{
  background:var(--apx-brand)!important;border-color:var(--apx-brand)!important;color:var(--apx-bg)!important}

/* 页面文章卡片网格 */
body.apx-d2 .apx-page-post-card{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-radius:var(--apx-radius)!important;box-shadow:none!important;
  transition:border-color var(--apx-ease),transform var(--apx-ease),background var(--apx-ease)!important;
}
body.apx-d2 .apx-page-post-card:hover,
body.apx-d2 .apx-page-post-card:focus-within{
  border-color:var(--apx-brand)!important;background:var(--apx-panel-2)!important;
  transform:translateY(-3px);box-shadow:none!important}
body.apx-d2 .apx-page-post-card__link{color:var(--apx-ink)!important}
body.apx-d2 .apx-page-post-card__media{background:var(--apx-panel-2)!important}
body.apx-d2 .apx-page-post-card__placeholder{
  background:linear-gradient(135deg,#1E2124 0%,#2A2E32 100%)!important}
body.apx-d2 .apx-page-post-card__body h3{color:var(--apx-ink)!important}
body.apx-d2 .apx-page-post-card__body p{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-page-post-card__body .apx-link{color:var(--apx-brand-soft)!important}
body.apx-d2 .apx-page-post-card:hover .apx-page-post-card__body .apx-link{color:var(--apx-brand)!important}

/* ══════════════════════════════════════════════════════════════════════════════
   14. post_content 内联 <style> 块 → 深色适配
   ------------------------------------------------------------------------------
   来源：DB 扫描发现 5 个页面在 post_content 里内联了整套浅色组件样式
         · ID 224 (gear)      → .apx-video-*   视频卡/精选回顾
         · start-here 等页面  → .apex-page/.apex-* 整套
   ⚠️ 内联 <style> 渲染在 body（位置晚于 head 里我的样式表），
      但它们均无 !important → 我方 !important 稳胜，无需比位置。
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── gear 页视频卡 ── */
body.apx-d2 .apx-video-card{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-radius:var(--apx-radius)!important;box-shadow:none!important;
  transition:border-color var(--apx-ease),transform var(--apx-ease),background var(--apx-ease)!important;
}
body.apx-d2 .apx-video-card:hover{
  border-color:var(--apx-brand)!important;background:var(--apx-panel-2)!important;
  transform:translateY(-3px);box-shadow:none!important}
body.apx-d2 .apx-video-card-body h3{color:var(--apx-ink)!important}
body.apx-d2 .apx-video-card-body p{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-video-wrap{background:#000!important;border-radius:var(--apx-radius)!important}
body.apx-d2 .apx-video-featured-wrapper{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-left:2px solid var(--apx-brand)!important;
  border-radius:var(--apx-radius)!important;color:var(--apx-ink)!important}
body.apx-d2 .apx-video-featured-content h2{color:var(--apx-ink)!important}
body.apx-d2 .apx-video-featured-content p{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-video-featured-content .apx-link,
body.apx-d2 .apx-video-featured-content a{color:var(--apx-brand-soft)!important}
body.apx-d2 .apx-video-badge{
  background:var(--apx-brand)!important;color:var(--apx-bg)!important;
  font-family:var(--apx-mono)!important;letter-spacing:.12em!important;
  border-radius:var(--apx-radius)!important}

/* ── start-here 等页面的 .apex-* 整套 ── */
body.apx-d2 .apex-page{color:var(--apx-ink-2)!important;border-color:var(--apx-rule)!important}
body.apx-d2 .apex-hero{border-bottom:1px solid var(--apx-rule)!important}
body.apx-d2 .apex-eyebrow{color:var(--apx-brand-soft)!important;font-family:var(--apx-mono)!important}
body.apx-d2 .apex-page h1,body.apx-d2 .apex-page h2,body.apx-d2 .apex-page h3,
body.apx-d2 .apex-section h2,body.apx-d2 .apex-card h3{color:var(--apx-ink)!important}
body.apx-d2 .apex-lead,body.apx-d2 .apex-section p,body.apx-d2 .apex-list li,
body.apx-d2 .apex-card p{color:var(--apx-ink-2)!important}
body.apx-d2 .apex-card{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-radius:var(--apx-radius)!important}
body.apx-d2 .apex-card a{color:var(--apx-brand-soft)!important}
body.apx-d2 .apex-card a:hover{color:var(--apx-brand)!important}
body.apx-d2 .apex-note{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-left:2px solid var(--apx-brand)!important;
  color:var(--apx-ink-2)!important;border-radius:var(--apx-radius)!important}
body.apx-d2 .apex-cta{
  background:var(--apx-panel-2)!important;border:1px solid var(--apx-rule-strong)!important;
  border-radius:var(--apx-radius)!important}
body.apx-d2 .apex-cta h2{color:var(--apx-ink)!important}
body.apx-d2 .apex-cta p{color:var(--apx-ink-2)!important}
body.apx-d2 .apex-btn,
body.apx-d2 .apex-btn:hover{
  background:var(--apx-brand)!important;color:var(--apx-bg)!important;
  border-radius:var(--apx-radius)!important;
  font-weight:700!important;text-transform:uppercase;letter-spacing:.12em}
body.apx-d2 .apex-btn:hover{background:#fff!important;color:var(--apx-bg)!important}

/* ── deals 页「Shop on Amazon」按钮（实测 50 处低对比 1.36）──
   原 custom.css 为白底，被自动块改成深底后文字仍是深色 → 显式改为品牌红 CTA */
body.apx-d2 .apx-dp-btn-shop,
body.apx-d2 a.apx-dp-btn-shop{
  background:var(--apx-brand)!important;color:var(--apx-bg)!important;
  border:1px solid var(--apx-brand)!important;
  border-radius:var(--apx-radius)!important;font-weight:700!important;
}
body.apx-d2 .apx-dp-btn-shop:hover,
body.apx-d2 a.apx-dp-btn-shop:hover{
  background:#fff!important;color:var(--apx-bg)!important;border-color:#fff!important}
body.apx-d2 .apx-dp-btn-shop *{color:inherit!important}

/* ══════════════════════════════════════════════════════════════════════════════
   15. 器材分类卡：白底位图 → D2 原型 SVG 线性图标
   ------------------------------------------------------------------------------
   ⚠️ 根因：upload 里的 9 张器材图（dumbbells.png / benches.png / rowers.jpg ...）
      白底是「烘焙」在图里的（实测四角 RGB(255,255,255)、白像素占 78~92%）。
      CSS 只能改容器背景，改不掉图内白像素 → 深色卡片上呈现为「白胶布」。
   方案：隐藏位图，改用 D2 原型自带的 SVG 线性图标（白线条，hover 变品牌红）。
      纯 CSS 实现，可整段删除回滚，不动任何图片文件 / 数据库。
   ══════════════════════════════════════════════════════════════════════════════ */

/* 隐藏白底位图，容器收缩为图标行 */
body.apx-d2 .apx-home-gear-card .apx-home-gear-image{
  background:transparent!important;border:0!important;
  height:auto!important;min-height:0!important;aspect-ratio:auto!important;
  overflow:visible!important;display:block!important;
  padding:0 0 14px!important;
}
body.apx-d2 .apx-home-gear-card .apx-home-gear-image img{display:none!important}
body.apx-d2 .apx-home-gear-card .apx-home-gear-image::before{
  content:"";display:block;width:38px;height:38px;
  background-repeat:no-repeat;background-position:left center;background-size:contain;
  background-image:var(--apx-gicon);
  transition:transform var(--apx-ease);
}
body.apx-d2 .apx-home-gear-card:hover .apx-home-gear-image::before{transform:translateY(-2px)}
/* 图标下方的分隔线（对应原型 .grule） */
body.apx-d2 .apx-home-gear-card .apx-home-gear-image::after{
  content:"";display:block;height:1px;margin-top:14px;background:var(--apx-rule);
  transition:background var(--apx-ease);
}
body.apx-d2 .apx-home-gear-card:hover .apx-home-gear-image::after{background:var(--apx-brand)}

/* ── 按分类指定图标（白；hover 换红版）── */
body.apx-d2 .apx-home-gear-card[href*="/gear/dumbbells/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 10v4M5 8v8M19 8v8M22 10v4M5 12h14'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/dumbbells/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 10v4M5 8v8M19 8v8M22 10v4M5 12h14'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/weight-benches/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 14h20M5 14v5M19 14v5M8 14V8h8v6M8 11h8'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/weight-benches/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 14h20M5 14v5M19 14v5M8 14V8h8v6M8 11h8'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/rowing-machines/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18.5' cy='9.5' r='3.5'/%3E%3Cpath d='M2 20h19M6.5 20v-3.2h6V20M12.5 16.8l3-3.3h2.5'/%3E%3Cpath d='M5 16.8h7'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/rowing-machines/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18.5' cy='9.5' r='3.5'/%3E%3Cpath d='M2 20h19M6.5 20v-3.2h6V20M12.5 16.8l3-3.3h2.5'/%3E%3Cpath d='M5 16.8h7'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/exercise-bikes/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='14.5' r='4.5'/%3E%3Cpath d='M7 14.5l4.5-7H16M11.5 7.5l4.5 7M16 7.5l4-.8M4 21h16'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/exercise-bikes/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='14.5' r='4.5'/%3E%3Cpath d='M7 14.5l4.5-7H16M11.5 7.5l4.5 7M16 7.5l4-.8M4 21h16'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/kettlebells/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5a2.5 2.5 0 0 1 5 0'/%3E%3Cpath d='M12 8a6 6 0 0 1 4.3 10.2'/%3E%3Cpath d='M12 8a6 6 0 0 0-4.3 10.2'/%3E%3Cpath d='M7 18.5h10'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/kettlebells/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5a2.5 2.5 0 0 1 5 0'/%3E%3Cpath d='M12 8a6 6 0 0 1 4.3 10.2'/%3E%3Cpath d='M12 8a6 6 0 0 0-4.3 10.2'/%3E%3Cpath d='M7 18.5h10'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/pull-up-equipment/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h20M3 2.5v7M21 2.5v7M9.5 6v4M14.5 6v4M9.5 10h5v7h-5z'/%3E%3Cpath d='M4 21h16'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/pull-up-equipment/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h20M3 2.5v7M21 2.5v7M9.5 6v4M14.5 6v4M9.5 10h5v7h-5z'/%3E%3Cpath d='M4 21h16'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/resistance-bands/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h4.5v14H3zM16.5 5H21v14h-4.5z'/%3E%3Cpath d='M7.5 12c3.2 0 3.2-5 4.5-5s1.3 5 4.5 5'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/resistance-bands/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h4.5v14H3zM16.5 5H21v14h-4.5z'/%3E%3Cpath d='M7.5 12c3.2 0 3.2-5 4.5-5s1.3 5 4.5 5'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/strength-machines/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='10.5' width='8' height='4' rx='1'/%3E%3Cpath d='M12 10.5V5M8 5h8M5 20V7M19 20V7M5 20h14M5 14.5h3M16 14.5h3'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/strength-machines/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='10.5' width='8' height='4' rx='1'/%3E%3Cpath d='M12 10.5V5M8 5h8M5 20V7M19 20V7M5 20h14M5 14.5h3M16 14.5h3'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/treadmills/"]{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4F5F6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 19h15M4 19l2.5-7h10L21 19M16.5 19v-3.5'/%3E%3Cpath d='M13 12V5.5h5.5V12'/%3E%3Cpath d='M6.5 14.5h10'/%3E%3C/svg%3E")}
body.apx-d2 .apx-home-gear-card[href*="/gear/treadmills/"]:hover{--apx-gicon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF2D00' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 19h15M4 19l2.5-7h10L21 19M16.5 19v-3.5'/%3E%3Cpath d='M13 12V5.5h5.5V12'/%3E%3Cpath d='M6.5 14.5h10'/%3E%3C/svg%3E")}

/* 卡片内标题/描述/链接（原 .apx-home-gear-body）*/
body.apx-d2 .apx-home-gear-card .apx-home-gear-body h3{color:var(--apx-ink)!important}
body.apx-d2 .apx-home-gear-card .apx-home-gear-body p{color:var(--apx-ink-2)!important}
body.apx-d2 .apx-home-gear-card .apx-link{color:var(--apx-brand-soft)!important}
body.apx-d2 .apx-home-gear-card:hover .apx-link{color:var(--apx-brand)!important}

/* ══════════════════════════════════════════════════════════════════════════════
   16. 器材卡网格：4列/2列 → 3列（修掉孤儿卡）
   ------------------------------------------------------------------------------
   9 张卡在 4 列网格下分布为 4+4+1，2 列下为 2+2+2+2+1 —— 末行都只剩 1 张孤儿卡。
   D2 原型注释里写死「3×3（修掉孤儿卡）」，此处对齐原型。
   ≤767px 保持既有 1 列；≤680px 保持既有的横向滚动条（不动）。
   ══════════════════════════════════════════════════════════════════════════════ */
@media (min-width: 768px){
  body.apx-d2 .apx-home-gear-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}


/* ══════════════════════════════════════════════════════════════════════════════
   ⑭ 桌面页眉导航「回到一行」 (2026-10-17)

   问题：导航在 1024~1600px 全宽度折成两行（"EXCLUSIVE DEALS" 掉到第二行）。
   根因：三处叠加 ——
     ① Kadence 全局给 li.menu-item > a 设了 padding-left/right:calc(3.6em/2)，
        即 1.8em ≈ 36px×2 = 每项 72px 横向内边距（em，随字号放大）；
     ② mu-plugin apx-font-settings 把导航字号钉死 20px!important；
     ③ 本设计系统把导航改成 uppercase + letter-spacing:.13em，字宽再 +11%。
     改动前是 Title Case 所以勉强塞得下；全大写后总宽 1268px > 可用 1083px → 换行。
     实测 1024px 视口可用宽仅 827px（桌面导航断点 = min-width:1024px）。
   方案：横向 padding 归零，改用 flex gap；字号 clamp 跟随视口；右对齐成簇
         （与改动前 logo 左 / 导航右的锚定关系一致），并与搜索图标留出间距。
   验证：1024/1100/1280/1440/1600 全部单行，右距 23~34px，无横向溢出；
         ≤1023px 走 Kadence 移动端汉堡菜单，此块不生效，未受影响。
   回滚：整块删除即可（不改任何既有文件、不动数据库）。
   ══════════════════════════════════════════════════════════════════════════════ */
@media all and (min-width:1024px){
  /* 导航外层原本只有 10px 右边距，padding 归零后与搜索图标太挤 → 加宽 */
  .site-header-item-main-navigation{
    margin-right:clamp(22px,2.2vw,34px)!important;
  }
  #primary-menu{
    flex-wrap:nowrap!important;          /* 禁止再换行 */
    justify-content:flex-end!important;  /* 右对齐成簇 */
    gap:clamp(12px,1.3vw,22px)!important;
  }
  #primary-menu > li > a{
    padding-left:0!important;            /* 干掉 Kadence 的 1.8em×2 */
    padding-right:0!important;
    font-size:clamp(14px,1.35vw,18px)!important;   /* 覆盖 20px 钉死值 */
    letter-spacing:.09em!important;                 /* 由 .13em 收窄 */
    white-space:nowrap!important;
    display:block!important;
  }
}


/* ══════════════════════════════════════════════════════════════════════════════
   ⑮ 工具页（/tools/ hub + 8 个计算器）全站设计对齐   (2026-10-17)


/* ── A. 令牌层：在 body 上重声明（特异性 0,2,1 > /tools/style.css 的 :root 0,1,0）── */
body.apx-d2{
  /* 我的设计系统令牌（防止被 /tools/style.css 的 :root 覆盖）*/
  --apx-bg:#0E0F10; --apx-panel:#16181A; --apx-panel-2:#1E2124;
  --apx-ink:#F4F5F6; --apx-ink-2:#B8BEC4; --apx-muted:#868D94;
  --apx-rule:#2A2E32; --apx-rule-strong:#3C4248; --apx-brand:#FF2D00;
  /* /tools/style.css 自己的令牌 → 映射到 D2 深色体系 */
  --apx-red:#FF2D00; --apx-red-hover:#FF6240;
  --apx-dark:#F4F5F6;            /* 它把 --apx-dark 当「标题文字色」用 */
  --apx-dark-80:#B8BEC4;
  --apx-card:#16181A; --apx-border:#2A2E32;
  --apx-text:#F4F5F6; --apx-text-secondary:#B8BEC4; --apx-text-light:#868D94;
  --apx-success:#4ADE80;
  --apx-shadow:0 4px 24px rgba(0,0,0,.55);
}

/* ── B. /tools/style.css 里写死的浅色（不走的令牌的）── */
body.apx-d2 .apx-tools-hero__badge{
  background:var(--apx-brand-tint)!important;
  color:var(--apx-brand)!important;
  border:1px solid rgba(255,45,0,.4);
}
body.apx-d2 .apx-slider-wrap input[type="range"]{background:#2A2E32!important;}
body.apx-d2 .apx-slider-wrap input[type="range"]::-webkit-slider-thumb{
  background:var(--apx-brand)!important;border-color:#16181A!important;
}
body.apx-d2 .apx-slider-wrap input[type="range"]::-moz-range-thumb{
  background:var(--apx-brand)!important;border-color:#16181A!important;
}
body.apx-d2 .apx-radio-group label{background:var(--apx-panel-2)!important;color:var(--apx-ink-2)!important;}
body.apx-d2 .apx-radio-group input[type="radio"]:checked + label{
  background:var(--apx-brand)!important;color:#0E0F10!important;font-weight:700;
}
body.apx-d2 .apx-input-with-unit .apx-unit-btn{background:var(--apx-panel-2)!important;color:var(--apx-ink-2)!important;}
body.apx-d2 .apx-input-with-unit .apx-unit-btn.active{background:var(--apx-brand)!important;color:#0E0F10!important;}
body.apx-d2 .apx-height-toggle-btn{background:var(--apx-panel-2)!important;color:var(--apx-ink-2)!important;}
body.apx-d2 .apx-height-toggle-btn:hover{background:#26292D!important;}
/* ⚠️ 这里必须用 background 简写一次写全。只覆盖 background-image 时，
   别处的 background-repeat:repeat 仍然生效 → 箭头 SVG 被平铺成满框「白色锯齿条纹」。
   2026-10-18 实测：computed background-repeat=repeat / background-size=auto。 */
body.apx-d2 .apx-select{
  background:var(--apx-panel-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23B8BEC4' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center!important;
  background-size:12px 8px!important;
  color:var(--apx-ink)!important;
  border-color:var(--apx-rule-strong)!important;
}
body.apx-d2 .apx-btn-primary{background:var(--apx-brand)!important;color:#0E0F10!important;}
body.apx-d2 .apx-btn-primary:hover{background:var(--apx-brand-soft)!important;}
body.apx-d2 .apx-tools-header,
body.apx-d2 .apx-tools-footer{background:var(--apx-panel)!important;}
body.apx-d2 .apx-faq-question{background:var(--apx-panel-2)!important;color:var(--apx-ink)!important;}
body.apx-d2 .apx-related li{border-bottom-color:var(--apx-rule)!important;}
body.apx-d2 .apx-result-card--bmr{border-top-color:var(--apx-rule-strong)!important;}

/* ── C. /tools/ hub 页：无 class，全是内联 style 属性 ── */
body.apx-d2 .apx-tools-theme-wrap h1[style]{color:var(--apx-ink)!important;}
body.apx-d2 .apx-tools-theme-wrap h3[style]{color:var(--apx-ink)!important;}
body.apx-d2 .apx-tools-theme-wrap > div > p[style],
body.apx-d2 .apx-tools-theme-wrap a[style] p{color:var(--apx-ink-2)!important;}
body.apx-d2 .apx-tools-theme-wrap a[style]{
  background:var(--apx-panel)!important;
  border-color:var(--apx-rule)!important;
  box-shadow:none!important;
}
body.apx-d2 .apx-tools-theme-wrap a[style]:hover{border-color:var(--apx-brand)!important;}
body.apx-d2 .apx-tools-theme-wrap a[style] > div > div:last-child{color:var(--apx-brand)!important;}

/* ── D. Deal 页白底商品图：见第 ⑯ 段（用 rembg 生成透明 PNG，不用 CSS 遮罩）── */

/* ── E. 全站：内联 #555 之类的暗灰正文（深底上 2.57:1 不可读）── */
body.apx-d2 .entry-content p[style*="color:#555"],
body.apx-d2 .entry-content p[style*="color: #555"],
body.apx-d2 .single-content p[style*="color:#555"]{color:var(--apx-ink-2)!important;}

/* ══════════════════════════════════════════════════════════════════════════════
   ⑯ Deal 页卡片：摄影棚白托 + 价格行（2026-10-18 大哥拍板方案 C）

   背景：大哥否决了「白底图抠成透明 PNG」——AI 抠图边缘毛刺修不干净。
   改为「原图直出 + 明色摄影棚托盘」：白色变成有意的设计元素，
   原图底色哪怕是 #FDFDFD 或带压缩噪点也看不出来。

   ⚠️ 卡片 HTML 里 .apx-dp-img 原本带内联 style="background:#fff"，
      已从 post_content 里清掉；若以后管线重新写入内联样式，这里必须 !important。
   ⚠️ .apx-dp-img.glow 原带红色呼吸动画（旧「高亮」效果），D2 下关闭。
   ══════════════════════════════════════════════════════════════════════════════ */
body.apx-d2 .apx-dp-grid{gap:16px!important;align-items:stretch!important}
body.apx-d2 .apx-dp-card{
  background:var(--apx-panel)!important;border:1px solid var(--apx-rule)!important;
  border-radius:10px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;
  box-shadow:none!important;position:relative!important;
}
body.apx-d2 .apx-dp-card:hover{
  transform:translateY(-3px)!important;border-color:var(--apx-rule-strong)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.55)!important;
}

/* ── 摄影棚托盘：径向柔光 + 底部接触阴影 ── */
body.apx-d2 .apx-dp-img{
  margin:10px 10px 0!important;height:158px!important;border-radius:8px!important;
  background:radial-gradient(120% 100% at 50% 20%,#FDFDFE 0%,#F4F5F6 44%,#E4E7E9 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 -12px 22px -14px rgba(0,0,0,.13),0 0 0 1px rgba(0,0,0,.05)!important;
  position:relative!important;overflow:hidden!important;animation:none!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
body.apx-d2 .apx-dp-img img{
  position:relative!important;z-index:1!important;width:100%!important;height:100%!important;
  object-fit:contain!important;padding:14px!important;max-height:92%!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.13));
}
body.apx-d2 .apx-dp-img::after{
  content:"";position:absolute;left:50%;bottom:10px;transform:translateX(-50%);
  width:52%;height:10px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(0,0,0,.20),rgba(0,0,0,0));filter:blur(2px);
}

/* ── 折扣标（统一为 -XX%）── */
body.apx-d2 .apx-dp-badge{display:none!important}
body.apx-d2 .apx-dp-badge{
  position:absolute!important;top:9px!important;left:9px!important;z-index:3!important;
  background:var(--apx-brand)!important;color:#0E0F10!important;border:0!important;
  border-radius:3px!important;font-size:10px!important;font-weight:700!important;
  letter-spacing:.06em!important;padding:3px 7px!important;
  animation:none!important;box-shadow:none!important;
}
body.apx-d2 .apx-dp-badge--deal{
  background:var(--apx-panel-2)!important;color:var(--apx-ink-2)!important;
  border:1px solid var(--apx-rule-strong)!important;
}

/* ── 文案区 ── */
body.apx-d2 .apx-dp-body{
  padding:12px 14px 6px!important;display:flex!important;flex-direction:column!important;
  gap:6px!important;flex:1!important;
}
body.apx-d2 .apx-dp-body h3{
  font-family:var(--apx-display)!important;font-size:17px!important;line-height:1.18!important;
  letter-spacing:.02em!important;text-transform:uppercase!important;color:var(--apx-ink)!important;
  margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;overflow:hidden!important;min-height:2.36em;
}

/* ── 价格行（margin-top:auto 把价格/评分压到底部，多卡对齐）── */
body.apx-d2 .apx-dp-price{
  display:flex!important;align-items:baseline!important;gap:8px!important;margin-top:auto!important;
}
body.apx-d2 .apx-dp-now{
  font-family:var(--apx-display)!important;font-size:21px!important;letter-spacing:.02em!important;
  color:var(--apx-ink)!important;line-height:1.1!important;
}
body.apx-d2 .apx-dp-was{
  font-size:12px!important;color:#9BA2A8!important;text-decoration:line-through!important;
}
body.apx-d2 .apx-dp-save{
  font-size:10px!important;font-weight:700!important;letter-spacing:.04em!important;
  color:var(--apx-brand-soft)!important;background:rgba(255,45,0,.14)!important;
  border-radius:3px!important;padding:2px 5px!important;white-space:nowrap!important;
}
body.apx-d2 .apx-dp-price--na{
  font-size:11px!important;color:var(--apx-muted)!important;font-style:normal!important;
  border:1px solid var(--apx-rule)!important;border-radius:3px!important;padding:3px 7px!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;align-self:flex-start!important;
}
body.apx-d2 .apx-dp-meta{
  font-size:11.5px!important;color:var(--apx-muted)!important;margin:0!important;
  line-height:1.4!important;
}
body.apx-d2 .apx-dp-star{color:#F5A623!important}

/* ── CTA ── */
body.apx-d2 .apx-dp-foot{padding:10px 14px 14px!important}
body.apx-d2 .apx-dp-btn-shop{
  display:block!important;text-align:center!important;text-decoration:none!important;
  background:var(--apx-brand)!important;color:#0E0F10!important;border:0!important;
  border-radius:5px!important;padding:9px 10px!important;font-size:12px!important;
  font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;
  transition:background .2s!important;
}
body.apx-d2 .apx-dp-btn-shop:hover{background:var(--apx-brand-soft)!important}

@media (max-width:576px){
  body.apx-d2 .apx-dp-img{height:190px!important}
  body.apx-d2 .apx-dp-now{font-size:19px!important}
}
