/*
Theme Name: Anker Child
Theme URI: https://ankerv.com/
Description: Astra child theme for ankerv.com (twelfth order). Visual layer is the design token set measured off the source site www.anker.com (see migration-anker/施工方案.md section 7): brand cyan #00befa, ink #1d1d1f, page grey #f5f5f7, pill buttons at 9999px, cards at 10-16px, container 1280 / wide 1440. The source site's MontForAnker is Anker's licensed brand asset and is deliberately NOT shipped here; Manrope (SIL OFL) is self-hosted as the metric-matched stand-in.
Author: Anker site build
Author URI: https://ankerv.com/
Template: astra
Version: 1.0.1
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: anker-child
Domain Path: /languages
*/

/* ============================================================================
   anker-child — 设计层（无 JS；构建脚本 migration-anker/child-theme/build.mjs）
   分节固定：00 fonts / 05 tokens / 10 base / 20 chrome / 30 cards / 40 product / 90 responsive
   数值出处：2026-10-11 从 www.anker.com 的 /_next/static/css/*.css（940668 B）实测统计，
   出现频次写在各组注释里，不是印象值。
   ========================================================================== */

/* ---------- 00 fonts ----------
   MontForAnker 权重 500/600/700/800/900（TTF、商业授权）→ 换成 Manrope（woff2）。
   🔴 2026-10-12 改成**一份可变字体**：Google Fonts 对 wght@400;500;600;700;800 返回的是**同一个可变字体文件**
   （五个 URL 的 md5 实测完全一致，都是 24,836 字节），所以按可变字体规范声明一次 `font-weight: 200 800`
   比五条静态声明更准确，也少 4 份重复二进制。文件缺失时浏览器只是拿不到这族，CSS 不会报错，
   排版退到下面那条度量对齐的 fallback（local("Arial")），不会产生空白页。 */
@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("fonts/manrope-latin.woff2") format("woff2");
}
/* 度量对齐放在 fallback 族上（原站 @font-face 就是这么声明的）：
   size-adjust 115.09% / ascent 87.07% / descent 28.50% 是 www.anker.com 的实测值，
   作用是 Manrope 换成 Arial 时行高不跳。只写 local()，不留 url —— 留了也只会在没装 Arial 的机器上打一次 404。 */
@font-face {
	font-family: "Manrope Fallback";
	font-style: normal;
	font-weight: 400 800;
	src: local("Arial");
	size-adjust: 115.09%;
	ascent-override: 87.07%;
	descent-override: 28.50%;
	line-gap-override: 0.00%;
}

/* ---------- 05 tokens ---------- */
:root {
	/* 主色系（出现频次：#00befa 70 次居首） */
	--ak-brand: #00befa;
	--ak-brand-hover: #00a9e0;
	--ak-brand-press: #0082ff;
	--ak-brand-alt: #00a7e1;
	--ak-brand-ink: #080a0f; /* 青底上的字：墨黑对比度约 10:1，白字只有 2:1，故用深底色 */
	--ak-promo: #00db84;
	--ak-alert: #ff4655;

	/* 中性色 */
	--ak-ink: #1d1d1f;
	--ak-page: #f5f5f7;
	--ak-surface: #ffffff;
	--ak-muted: #86868c;
	--ak-muted-strong: #6d6d6f;
	--ak-line: #b6b6ba;
	--ak-line-soft: #eaeaec;
	--ak-dark: #080a0f;
	--ak-dark-ink: #eaeaec;

	/* 字号阶梯（源站 px 原值 12…64） */
	--ak-fs-12: 12px;
	--ak-fs-14: 14px; /* body 主力，66 次 */
	--ak-fs-16: 16px; /* 49 次 */
	--ak-fs-18: 18px; /* 40 次 */
	--ak-fs-20: 20px;
	--ak-fs-24: 24px;
	--ak-fs-28: 28px;
	--ak-fs-30: 30px;
	--ak-fs-32: 32px;
	--ak-fs-36: 36px;
	--ak-fs-40: 40px;
	--ak-fs-48: 48px;
	--ak-fs-56: 56px;
	--ak-fs-64: 64px;

	--ak-fs-body: var(--ak-fs-14);
	--ak-fs-body-lg: var(--ak-fs-16);
	--ak-fs-nav: var(--ak-fs-14);
	--ak-fs-h1: var(--ak-fs-40);
	--ak-fs-h2: var(--ak-fs-32);
	--ak-fs-h3: var(--ak-fs-24);
	--ak-fs-h4: var(--ak-fs-20);
	--ak-fs-h5: var(--ak-fs-18);
	--ak-fs-h6: var(--ak-fs-16);

	/* 圆角：9999px 胶囊为主（源站 11 次居首），卡片 10–16px */
	--ak-radius-pill: 9999px;
	--ak-radius-card: 16px;
	--ak-radius-tile: 10px;
	--ak-radius-sm: 8px;
	--ak-radius-xs: 4px;

	/* 容器：照原站 1280 / 超宽 1440 */
	--ak-maxw: 1280px;
	--ak-maxw-wide: 1440px;
	--ak-gutter: clamp(16px, 4vw, 32px);
	--ak-gap: clamp(14px, 1.8vw, 24px);
	--ak-stack: clamp(40px, 6vw, 80px);

	--ak-font-body: "Manrope", "Manrope Fallback", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
	--ak-font-head: "Manrope", "Manrope Fallback", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;

	--ak-shadow-sm: 0 1px 3px rgba(8, 10, 15, 0.06);
	--ak-shadow: 0 12px 32px rgba(8, 10, 15, 0.10);
	--ak-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* ---------- 10 base ---------- */
body {
	background: var(--ak-page);
	color: var(--ak-ink);
	font-family: var(--ak-font-body);
	font-size: var(--ak-fs-body);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .entry-title, .product_title, .woocommerce-loop-product__title {
	font-family: var(--ak-font-head);
	color: var(--ak-ink);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.15;
}
h1, .entry-title { font-size: var(--ak-fs-h1); }
h2 { font-size: var(--ak-fs-h2); }
h3 { font-size: var(--ak-fs-h3); }
h4 { font-size: var(--ak-fs-h4); }
h5 { font-size: var(--ak-fs-h5); }
h6 { font-size: var(--ak-fs-h6); }
p { margin-bottom: 1.05em; }
a { color: var(--ak-brand-press); text-decoration: none; }
a:hover, a:focus { color: var(--ak-brand-hover); }
hr { border: 0; border-top: 1px solid var(--ak-line-soft); }
::selection { background: var(--ak-brand); color: var(--ak-brand-ink); }
img { max-width: 100%; height: auto; }

/* 正文类容器回到 16px（源站 16 是正文第二主力字号，卡片和导航才是 14） */
.entry-content, .page-content, .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-tabs .panel, .ast-single-post .entry-content {
	font-size: var(--ak-fs-body-lg);
	color: var(--ak-ink);
}
/* 键盘可达性 */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
	outline: 2px solid var(--ak-brand);
	outline-offset: 2px;
}

/* 胶囊按钮（源站圆角首位 9999px）—— Woo/Astra 的按钮类名一锅端，避免同一屏两种形状 */
.ast-custom-button, .ast-button, .wp-block-button__link, input[type="submit"], .button, a.button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce button.single_add_to_cart_button, .woocommerce .woocommerce-button,
.woocommerce .checkout-button, .woocommerce button[name="apply_coupon"] {
	background-color: var(--ak-brand);
	border: 1px solid var(--ak-brand);
	color: var(--ak-brand-ink);
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-14);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.2;
	border-radius: var(--ak-radius-pill);
	padding: 14px 28px;
	transition: background-color 0.18s var(--ak-ease), border-color 0.18s var(--ak-ease), color 0.18s var(--ak-ease);
}
.ast-custom-button:hover, .ast-button:hover, .wp-block-button__link:hover, input[type="submit"]:hover,
.button:hover, a.button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce button.button.alt:hover,
.woocommerce button.single_add_to_cart_button:hover, .woocommerce .woocommerce-button:hover {
	background-color: var(--ak-brand-hover);
	border-color: var(--ak-brand-hover);
	color: var(--ak-brand-ink);
}
/* 次级按钮：描边不填，防止整屏都是青块 */
.x-btn-ghost, .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--ak-ink);
	border: 1px solid var(--ak-line);
}
.x-btn-ghost:hover { background: var(--ak-ink); color: #fff; border-color: var(--ak-ink); }

/* ---------- 20 chrome：Astra 头部与导航 ---------- */
.site-header, .main-header-bar, .ast-below-header, .ast-above-header { background: var(--ak-surface); }
.main-header-bar { border-bottom: 1px solid var(--ak-line-soft); }
.ast-primary-menu > ul > li > a, .main-header-bar .main-navigation a, .menu-text {
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-nav);
	font-weight: 600;
	color: var(--ak-ink);
	letter-spacing: -0.01em;
}
/* 间距覆写：默认左右 15px 时 7 条一级加 logo 会撑到换行（第八单实测过这一发） */
.main-header-bar .main-navigation ul.menu > li { margin: 0; }
.main-header-bar .main-navigation ul.menu > li > a { padding: 8px 11px; }
.main-navigation a:hover, .main-navigation .current-menu-item > a, .main-navigation .current_page_item > a,
.main-navigation li:hover > a { color: var(--ak-brand-hover); }
/* Astra 的菜单下划线高亮条换品牌青（选择器按 Astra 4.x 类名写；若该版本没这层，只是高亮条退回默认色，不影响可读性） */
.ast-box-menu > li > a::after, .ast-primary-menu-highlight .current-menu-item > a::after,
.ast-primary-menu-highlight .menu-item:hover > a::after { background-color: var(--ak-brand); border-color: var(--ak-brand); }
.main-navigation .sub-menu, .ast-masthead-navigation .sub-menu {
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-tile);
	box-shadow: var(--ak-shadow);
	padding: 10px 0;
}
.main-navigation .sub-menu a { font-weight: 500; font-size: var(--ak-fs-14); padding: 8px 18px; }
.ast-breadcrumbs, .woocommerce-breadcrumb { font-size: var(--ak-fs-12); color: var(--ak-muted); }
.ast-breadcrumbs a, .woocommerce-breadcrumb a { color: var(--ak-muted-strong); }
.ast-breadcrumbs a:hover, .woocommerce-breadcrumb a:hover { color: var(--ak-brand-hover); }

/* 容器宽度：Astra 的 .ast-container 由 theme_mod 驱动，这里按原站尺度覆写 */
.ast-container, .site-content .ast-container, .ast-width-1200 .ast-container { max-width: var(--ak-maxw); }
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single { background: var(--ak-surface); }
.site-content .ast-container { padding-left: var(--ak-gutter); padding-right: var(--ak-gutter); }

/* ---------- 25 页脚（Navigate 四条的容器；链接归 WP 菜单，这里只管形状） ----------
   跨单标准：横排整体居中。Astra 4.14 的版权行本身是 flex 行，我们的块只拿到内容宽度，
   所以两处都要 flex:0 0 100%（第八单实测：不给这条，居中偏移 −318px）。 */
.site-footer, footer#colophon, .ast-footer-overlay, .site-below-footer-wrap {
	background: var(--ak-dark);
	color: var(--ak-dark-ink);
	font-size: var(--ak-fs-14);
}
.site-footer a, footer#colophon a { color: var(--ak-dark-ink); }
.site-footer a:hover, footer#colophon a:hover { color: var(--ak-brand); }
.ast-footer-copyright, .ast-copyright-primary-footer-container, .site-below-footer-wrap .ast-container {
	flex: 0 0 100%;
	justify-content: center;
	text-align: center;
}
.jsf-anker-nav {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	flex: 0 0 100%;
	gap: 8px 36px;
	padding: 10px 0 0;
	text-align: center;
}
.jsf-anker-nav-title {
	margin: 0;
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-16);
	font-weight: 700;
	letter-spacing: -0.01em;
	color: #fff;
}
.jsf-anker-nav nav { display: flex; flex: 0 1 auto; }
.jsf-anker-nav-ul {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 4px 30px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.jsf-anker-nav-ul > li { position: relative; margin: 0; list-style: none; }
.jsf-anker-nav-ul a {
	display: inline-block;
	padding: 2px 0;
	font-size: var(--ak-fs-14);
	color: var(--ak-dark-ink);
	text-decoration: none;
}
.jsf-anker-nav-ul a:hover, .jsf-anker-nav-ul a:focus { color: var(--ak-brand); text-decoration: underline; }
.jsf-anker-nav-ul .menu-item-has-children > a::after { content: " \203A"; opacity: 0.6; }
/* 桌面 hover 下拉：居中后浮层必须 left:50% + translateX(-50%)，用 left:0 会甩出右边界 */
.jsf-anker-nav-ul .sub-menu {
	display: none;
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	min-width: 200px;
	margin: 0;
	padding: 12px 14px;
	list-style: none;
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-tile);
	box-shadow: var(--ak-shadow);
	z-index: 30;
	text-align: left;
}
.jsf-anker-nav-ul .sub-menu > li { margin: 0 0 6px; list-style: none; }
.jsf-anker-nav-ul .sub-menu a { color: var(--ak-ink); font-size: var(--ak-fs-14); }
.jsf-anker-nav-ul .sub-menu a:hover { color: var(--ak-brand-hover); }
.jsf-anker-nav-ul > li:hover > .sub-menu, .jsf-anker-nav-ul > li:focus-within > .sub-menu { display: block; }

/* ---------- 30 cards：商品卡与分类卡 ---------- */
.ast-woocommerce-container, .woocommerce ul.products, .astra-shop-archive { background: transparent; }
.woocommerce ul.products, .astra-shop-archive { gap: var(--ak-gap); }
.woocommerce ul.products li.product {
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-card);
	box-shadow: var(--ak-shadow-sm);
	padding: 0 0 18px;
	margin-bottom: 0;
	overflow: hidden;
	transition: box-shadow 0.22s var(--ak-ease), transform 0.22s var(--ak-ease), border-color 0.22s var(--ak-ease);
}
.woocommerce ul.products li.product:hover {
	border-color: var(--ak-line);
	box-shadow: var(--ak-shadow);
	transform: translateY(-2px);
}
.woocommerce ul.products li.product a { display: block; }
.woocommerce ul.products li.product img { border-radius: 0; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: var(--ak-fs-16);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.3;
	padding: 14px 16px 4px;
	color: var(--ak-ink);
}
.woocommerce ul.products li.product .price {
	color: var(--ak-ink);
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-16);
	font-weight: 700;
	padding: 0 16px;
}
.woocommerce ul.products li.product .button {
	display: inline-block;
	margin: 12px 16px 0;
	font-size: var(--ak-fs-14);
	padding: 12px 22px;
}
.woocommerce ul.products li.product .onsale, .woocommerce span.onsale {
	min-height: 0;
	min-width: 0;
	line-height: 1;
	padding: 7px 12px;
	margin: 12px;
	background: var(--ak-promo);
	color: var(--ak-brand-ink);
	border-radius: var(--ak-radius-pill);
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-12);
	font-weight: 800;
	letter-spacing: 0.02em;
}
.woocommerce ul.products li.product .out-of-stock, .woocommerce p.out-of-stock {
	color: var(--ak-muted);
	font-weight: 700;
	font-size: var(--ak-fs-14);
}
/* 分类卡（首页/商店页用 .x-cat-card 这一层，装修步的 HTML 挂它） */
.x-cat-card, .woocommerce ul.products li.product-category {
	display: block;
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-card);
	overflow: hidden;
	box-shadow: var(--ak-shadow-sm);
	transition: box-shadow 0.22s var(--ak-ease), transform 0.22s var(--ak-ease);
}
.x-cat-card:hover, .woocommerce ul.products li.product-category:hover { box-shadow: var(--ak-shadow); transform: translateY(-2px); }
.x-cat-card h3, .woocommerce ul.products li.product-category .woocommerce-loop-category__title {
	margin: 0;
	padding: 14px 16px;
	font-size: var(--ak-fs-18);
	font-weight: 700;
	color: var(--ak-ink);
}
.x-cat-card p { margin: 0; padding: 0 16px 14px; font-size: var(--ak-fs-14); color: var(--ak-muted-strong); }
.x-cat-card .x-pill {
	display: inline-block;
	margin: 0 16px 16px;
	padding: 9px 20px;
	border: 1px solid var(--ak-line);
	border-radius: var(--ak-radius-pill);
	font-size: var(--ak-fs-14);
	font-weight: 600;
	color: var(--ak-ink);
}
/* 文字卡（源站那种无图说明卡） */
.x-info-card {
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-card);
	padding: 22px 20px;
}
.x-info-card h3 { font-size: var(--ak-fs-20); margin-top: 0; }
.x-eyebrow {
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-12);
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--ak-brand-hover);
}
/* 深色通栏带（源站的对比区常用深底） */
.x-dark-band { background: var(--ak-dark); color: var(--ak-dark-ink); border-radius: var(--ak-radius-card); }
.x-dark-band h2, .x-dark-band h3 { color: #fff; }
.x-dark-band a { color: var(--ak-brand); }

/* ---------- 40 product：单页 / 购物车 / 结账 ---------- */
.woocommerce div.product .product_title { font-size: var(--ak-fs-h2); font-weight: 700; }
.woocommerce div.product p.price, .woocommerce div.product span.price {
	color: var(--ak-ink);
	font-family: var(--ak-font-head);
	font-size: var(--ak-fs-24);
	font-weight: 800;
}
.woocommerce div.product p.price del, ul.products li.product .price del, .woocommerce-Price-amount del {
	color: var(--ak-muted);
	font-weight: 500;
	font-size: 0.82em;
}
.woocommerce div.product p.price ins, ul.products li.product .price ins {
	background: transparent;
	text-decoration: none;
	color: var(--ak-brand-press);
}
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	font-family: var(--ak-font-head);
	font-weight: 600;
	font-size: var(--ak-fs-16);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { color: var(--ak-brand-hover); }
.woocommerce div.product form.cart .button { vertical-align: top; }
.woocommerce div.product .variations label { font-weight: 700; font-size: var(--ak-fs-14); }
.woocommerce div.product .variations select { border-radius: var(--ak-radius-sm); padding: 10px 12px; }
.woocommerce-product-details__short-description { color: var(--ak-ink); font-size: var(--ak-fs-16); }
.woocommerce table.shop_table {
	background: var(--ak-surface);
	border: 1px solid var(--ak-line-soft);
	border-radius: var(--ak-radius-card);
}
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-top-color: var(--ak-line-soft); font-size: var(--ak-fs-14); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce form .form-row .select2-container .select2-selection {
	border: 1px solid var(--ak-line);
	border-radius: var(--ak-radius-sm);
	padding: 11px 12px;
	font-family: var(--ak-font-body);
	font-size: var(--ak-fs-14);
	background: var(--ak-surface);
}
.woocommerce form .form-row label { font-size: var(--ak-fs-14); font-weight: 600; color: var(--ak-ink); }
.woocommerce-checkout h3, .cart h1, .woocommerce-account h2 { font-family: var(--ak-font-head); }
.woocommerce div.product .stock { font-weight: 700; }
.woocommerce div.product .stock.in-stock { color: var(--ak-promo); }
.woocommerce div.product .stock.out-of-stock { color: var(--ak-muted); }
.woocommerce-info, .woocommerce-message, .woocommerce-error {
	background: var(--ak-surface);
	border-top: 3px solid var(--ak-brand);
	border-radius: var(--ak-radius-tile);
	color: var(--ak-ink);
	font-size: var(--ak-fs-14);
}
.woocommerce-error { border-top-color: var(--ak-alert); }
.notice:before { color: var(--ak-brand); }

/* ---------- 90 responsive：断点照原站 782 / 1023 / 1279 / ≥1440 ---------- */
@media (min-width: 1024px) {
	:root { --ak-fs-h1: var(--ak-fs-48); --ak-fs-h2: var(--ak-fs-36); }
}
@media (min-width: 1280px) {
	:root { --ak-fs-h1: var(--ak-fs-56); }
}
@media (min-width: 1440px) {
	.ast-container, .site-content .ast-container { max-width: var(--ak-maxw-wide); }
	:root { --ak-fs-h1: var(--ak-fs-64); }
}
@media (max-width: 1023px) {
	:root { --ak-gutter: clamp(16px, 5vw, 24px); --ak-stack: 44px; }
	.main-header-bar .main-navigation ul.menu > li > a { padding: 7px 9px; }
}
/* 移动端：页脚退竖排、仍居中，Inner Pages 的子项直接摊开（触屏没有 hover） */
@media (max-width: 782px) {
	.jsf-anker-nav { flex-direction: column; align-items: center; gap: 10px; padding-left: 20px; padding-right: 20px; }
	.jsf-anker-nav nav, .jsf-anker-nav-ul { flex-direction: column; align-items: center; gap: 12px; width: 100%; }
	.jsf-anker-nav-ul .sub-menu {
		position: static;
		display: block;
		transform: none;
		min-width: 0;
		border: 0;
		padding: 8px 0 0;
		box-shadow: none;
		background: transparent;
		text-align: center;
	}
	.jsf-anker-nav-ul .sub-menu > li { margin: 0 0 8px; }
	.jsf-anker-nav-ul .sub-menu a { color: var(--ak-dark-ink); }
	.woocommerce ul.products li.product .button { display: block; margin: 12px; text-align: center; }
	.woocommerce div.product .single_add_to_cart_button { width: 100%; }
	.entry-content, .page-content, .woocommerce-product-details__short-description { font-size: var(--ak-fs-14); }
	h1, .entry-title { font-size: var(--ak-fs-32); }
	h2 { font-size: var(--ak-fs-24); }
}
@media (max-width: 480px) {
	:root { --ak-fs-h1: 28px; --ak-fs-h2: 22px; }
	.ast-custom-button, .button, a.button, .woocommerce a.button, .woocommerce button.button { padding: 13px 22px; }
}

/* 尊重减弱动效偏好 */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; }
	.woocommerce ul.products li.product:hover, .x-cat-card:hover { transform: none; }
}

/* ---------- 26 home layout（build-home.mjs 的版式，类名与那边一一对应） ---------- */
.jsf-hero{position:relative;min-height:420px;display:flex;align-items:center;background-size:cover;background-position:center;background-color:#080a0f;color:#fff}
.jsf-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,15,.82) 0%,rgba(8,10,15,.45) 55%,rgba(8,10,15,.15) 100%)}
.jsf-hero-in{position:relative;width:100%;max-width:1280px;margin:0 auto;padding:56px 24px}
.jsf-hero-h1{font-size:48px;line-height:1.1;font-weight:800;margin:0 0 16px;color:#fff;letter-spacing:-.02em}
.jsf-hero-sub{font-size:18px;line-height:1.6;max-width:620px;margin:0 0 28px;color:#eaeaec}
.jsf-btn{display:inline-block;background:#00befa;color:#080a0f;font-weight:700;font-size:16px;padding:14px 34px;border-radius:9999px;text-decoration:none;transition:background .2s ease,transform .2s ease}
.jsf-btn:hover{background:#00a9e0;transform:translateY(-1px)}
.jsf-tile-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0 0 20px}
.jsf-tile{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #eaeaec;border-radius:16px;padding:16px;transition:box-shadow .2s ease,transform .2s ease}
.jsf-tile:hover{box-shadow:0 10px 28px rgba(0,0,0,.08);transform:translateY(-2px)}
.jsf-tile-img{display:block;aspect-ratio:1/1;overflow:hidden;border-radius:10px;background:#f5f5f7}
.jsf-tile-img img{width:100%;height:100%;object-fit:contain;display:block}
.jsf-tile-name{display:block;font-size:16px;font-weight:700;margin-top:12px;color:#1d1d1f}
.jsf-tile-num{display:block;font-size:12px;color:#86868c;margin-top:2px}
.jsf-doc-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.jsf-doc-links a{display:block;background:#f5f5f7;border-radius:9999px;padding:12px 18px;font-size:14px;color:#1d1d1f;text-decoration:none}
.jsf-doc-links a:hover{background:#eaeaec}
@media (max-width:1023px){.jsf-tile-row{grid-template-columns:repeat(3,1fr)}.jsf-hero-h1{font-size:40px}}
@media (max-width:782px){.jsf-hero{min-height:320px}.jsf-hero-in{padding:36px 18px}.jsf-hero-h1{font-size:30px}.jsf-hero-sub{font-size:16px}.jsf-tile-row{grid-template-columns:repeat(2,1fr)}.jsf-doc-links{grid-template-columns:1fr}}
