/* ============================================================
   AI不眠 — Header / Topbar / Footer
   ============================================================ */

.b-topbar {
	position: sticky;
	top: 0;
	z-index: var(--z-header);
	background: var(--bg-1);                 /* V3.10: 不透明背景, 避免 backdrop-filter 在国产 Android 浏览器引发的 ghost 渲染 bug */
	border-bottom: 1px solid var(--line);
	isolation: isolate;                       /* 干净 stacking context, 不再依赖 backdrop-filter 隐式创建 */
	/* 〔续后·站长报 iOS 27 Safari〕移除原 transform / -webkit-transform: translateZ(0)（GPU 单独层）：
	   iOS 27 下滚到顶、地址栏变高时，被提为合成层的 sticky 顶栏不被系统重新摆正 → 顶栏 + 底栏「上移后停在错位」
	   （全站、持久、非临时抖动；Blink 容忍故本机 headless 复现不出）。该提层原为消「sticky + 复杂 child 重影」(国产 Android)，
	   现重影已由上方 isolation:isolate + 不透明背景覆盖，去掉提层不复发。 */
}
/* 暗色模式 — 手动切换 (data-theme="dark") */
[data-theme="dark"] .b-topbar {
	background: var(--bg-1);                 /* var(--bg-1) 在 dark 模式下是 #131320 */
}
/* 暗色模式 — 系统偏好 (用户尚未点切换) */
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .b-topbar {
		background: var(--bg-1);
	}
}

/* sticky 顶栏在 admin 登录态下方让位给 WP admin bar */
.admin-bar .b-topbar { top: 32px; }
@media (max-width: 782px) {
	.admin-bar .b-topbar { top: 46px; }
}

.b-topbar__inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 0 var(--s-4);
	height: var(--header-h);
	display: flex;
	align-items: center;
	gap: var(--s-5);
}
@media (min-width: 768px) {
	.b-topbar__inner { padding: 0 var(--s-6); gap: var(--s-6); }
}

.b-topbar__logo {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	color: var(--ink-0);
	font-weight: 700;
	font-size: 18px;
	letter-spacing: -0.01em;
	flex-shrink: 0;
}
.b-topbar__logo:hover { color: var(--ink-0); }
.b-topbar__logo-mark {
	display: inline-flex;
	align-items: center; justify-content: center;
	width: 32px; height: 32px;
	background: linear-gradient(135deg, var(--brand) 0%, var(--accent) 100%);
	color: #fff;
	border-radius: var(--r-2);
	font-size: 18px;
	font-weight: 800;
}
.b-topbar__logo-text { white-space: nowrap; }
.b-topbar__logo-text small {
	display: block;
	font-size: 10px;
	font-weight: 600;
	color: var(--ink-3);
	letter-spacing: 0.08em;
	margin-top: -2px;
}

/* .b-topbar__nav 现在挂在 <nav> 外壳上（ul 留纯列表保住 list 语义，见 header-topbar.php）；
   盒模型/推右在 nav，flex 布局在内层 ul。 */
.b-topbar__nav {
	display: none;
	margin-left: auto;            /* 导航推到右侧、靠近 发布/登录（搜索框已挪到 logo 右边） */
}
.b-topbar__nav ul {
	display: flex;
	align-items: center;
	gap: var(--s-1);
	list-style: none;
	margin: 0;
	padding: 0;
}
/* 桌面主导航在 ≥1100px 才显示（与搜索框放宽、移动底栏隐藏同断点）；768–1099px 走底栏 tabbar + 顶栏销量榜直达，
   避免该「死区宽度」塞不下 logo+搜索+6项导航+发布+切换+登录 → 导航项被压成竖排乱码（每页中招）。 */
@media (min-width: 1100px) { .b-topbar__nav { display: flex; } }

.b-topbar__nav a {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 var(--s-3);
	border-radius: var(--r-2);
	color: var(--ink-2);
	font-weight: 500;
	font-size: 14px;
}
.b-topbar__nav a:hover { background: var(--bg-2); color: var(--ink-0); }
.b-topbar__nav a.is-active {
	color: var(--brand-600);      /* 亮色 --brand 在 brand-50 底仅 4.37:1 → brand-600 5.72 达 AA */
	background: var(--brand-50);
	font-weight: 600;
}
/* 暗色 --brand 已是提亮版（在暗 brand-50 底 5.42 达 AA）；brand-600 在暗底仅 3.26 → 还原。 */
[data-theme="dark"] .b-topbar__nav a.is-active { color: var(--brand); }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .b-topbar__nav a.is-active { color: var(--brand); }
}

.b-topbar__search {
	display: none;                /* 移动端默认隐藏,走顶栏下方的移动 sticky 搜索条 */
	flex: 0 1 300px;              /* 紧邻 logo、适中宽度（不再 flex:1 拉满整条） */
	max-width: 300px;
}
.b-topbar__search .b-input { min-height: 38px; padding: 0 var(--s-4) 0 40px; }
.b-topbar__search .b-search__icon { left: 12px; width: 16px; height: 16px; }
@media (min-width: 768px)  { .b-topbar__search { display: flex; } }
@media (min-width: 1100px) { .b-topbar__search { flex-basis: 360px; max-width: 360px; } }


.b-topbar__actions {
	display: flex;
	align-items: center;
	gap: var(--s-2);
	flex-shrink: 0;
}
/* <1100：桌面主导航（带 margin-left:auto）已隐藏，操作区会紧跟 logo 左对齐、右侧留一大块空白。
   这里让操作区自己靠右顶满右边缘（🌙 / 登录 / 通知 / 分类 贴右），空白回到 logo 与操作区之间（正常版式）。
   ≥1100 不加此规则：由可见主导航的 margin-left:auto 负责推右，避免两处 auto 互抢出现裂缝。 */
@media (max-width: 1099px) {
	.b-topbar__actions { margin-left: auto; }
}

.b-topbar__publish {
	display: none;
}
@media (min-width: 1100px) { .b-topbar__publish { display: inline-flex; } } /* 与主导航同断点；768–1099 发布走底栏 tabbar */

/* 游客「登录」钮与发布钮同款断点（体检批 2026-07-04 #7：模板注释一直承诺"移动端由 CSS 隐藏（登录已并入 ☰）"
   但规则从未写过 → 游客移动端顶栏同时出现 [☰][登录] 重复入口、320 更挤）。 */
.b-topbar__login {
	display: none;
}
@media (min-width: 1100px) { .b-topbar__login { display: inline-flex; } }

/* 320 窄屏防横溢（体检 2026-07-04 N1）：顶栏 logo(99·shrink:0) + 动作区(≈198·shrink:0) + 间距的最小内容宽
   ≈333px > 320 → 全站整页可左右晃 13px（340 起自然放下）。≤359 只收容器内边距与间距，44px 触控目标不缩。 */
@media (max-width: 359px) {
	.b-topbar__inner { padding: 0 var(--s-2); gap: var(--s-2); }
	.b-topbar__actions { gap: var(--s-1); }
}

/* 主题切换按钮 */
.b-theme-toggle {
	display: inline-flex;
	align-items: center; justify-content: center;
	width: 44px; height: 44px;   /* 触控目标 ≥44px（图标 18px 居中，余白透明=视觉仍是图标） */
	border-radius: var(--r-2);
	background: transparent;
	border: none;
	color: var(--ink-1);
	cursor: pointer;
	font-size: 18px;
	transition: background var(--dur-1) var(--ease);
}
.b-theme-toggle:hover { background: var(--bg-2); color: var(--ink-0); }
.b-theme-toggle__sun, .b-theme-toggle__moon { display: none; }
:root:not([data-theme="dark"]) .b-theme-toggle__moon { display: inline; }
[data-theme="dark"] .b-theme-toggle__sun { display: inline; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]):not([data-theme="dark"]) .b-theme-toggle__moon { display: none; }
	:root:not([data-theme="light"]):not([data-theme="dark"]) .b-theme-toggle__sun  { display: inline; }
}

/* 用户菜单 */
.b-user-menu {
	position: relative;
}
.b-user-menu__trigger {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	background: transparent;
	border: none;
	padding: var(--s-1);
	border-radius: var(--r-pill);
	cursor: pointer;
}
.b-user-menu__trigger:hover { background: var(--bg-2); }
.b-user-menu__dropdown {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	min-width: 200px;
	background: var(--bg-0);
	border: 1px solid var(--line);
	border-radius: var(--r-3);
	box-shadow: var(--sh-3);
	padding: var(--s-2);
	opacity: 0;
	transform: translateY(-6px);
	pointer-events: none;
	transition: opacity var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);
	z-index: var(--z-header-pop);
}
.b-user-menu[data-open="true"] .b-user-menu__dropdown {
	opacity: 1; transform: translateY(0); pointer-events: auto;
}
.b-user-menu__item {
	display: flex;
	align-items: center;
	gap: var(--s-3);
	min-height: 44px;   /* 触控目标 ≥44px（DESIGN-LOCKED §9） */
	padding: var(--s-2) var(--s-3);
	border-radius: var(--r-2);
	color: var(--ink-1);
	font-size: 14px;
}
.b-user-menu__item:hover { background: var(--bg-2); color: var(--ink-0); }
.b-user-menu__sep { height: 1px; background: var(--line); margin: var(--s-2) 0; }

/* ---------- 通知铃铛（顶栏，登录态；inc/notifications.php 接 bumian/topbar/before_user）---------- */
.b-notif { position: relative; }
.b-notif__trigger {
	position: relative;
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px;   /* 触控目标 ≥44px（图标 20px 居中，余白透明=视觉仍是图标；与主题切换/销量榜一致，DESIGN-LOCKED §9/§14.1） */
	background: transparent; border: none; padding: 0;
	border-radius: var(--r-pill); color: var(--ink-1); cursor: pointer;
}
.b-notif__trigger:hover { background: var(--bg-2); }
.b-notif__badge {
	position: absolute; top: 6px; right: 6px;   /* 锚定 20px 图标右上角（按钮 44px、图标居中余白 12px） */
	min-width: 16px; height: 16px; padding: 0 4px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: var(--r-pill);
	background: var(--danger); color: #fff;
	font-size: 10px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums;
}
.b-notif__badge.is-zero { display: none; }
.b-notif__dropdown {
	position: absolute;
	top: calc(100% + 6px); right: 0;
	width: 320px; max-width: calc(100vw - var(--s-6));
	background: var(--bg-0); border: 1px solid var(--line);
	border-radius: var(--r-3); box-shadow: var(--sh-3);
	opacity: 0; transform: translateY(-6px); pointer-events: none;
	transition: opacity var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);
	z-index: var(--z-header-pop); overflow: hidden;
}
.b-notif[data-open="true"] .b-notif__dropdown { opacity: 1; transform: translateY(0); pointer-events: auto; }
.b-notif__head {
	display: flex; align-items: center; justify-content: space-between;
	padding: var(--s-3) var(--s-4); border-bottom: 1px solid var(--line);
}
.b-notif__title { font-size: 14px; font-weight: 700; color: var(--ink-0); }
.b-notif__all { font-size: 13px; color: var(--brand); }
.b-notif__list { max-height: 60vh; overflow-y: auto; }
.b-notif__loading,
.b-notif__empty { padding: var(--s-6) var(--s-4); text-align: center; color: var(--ink-3); font-size: 14px; }
.b-notif__empty span { display: block; font-size: 26px; margin-bottom: var(--s-2); }
.b-notif__item {
	display: flex; gap: var(--s-3); align-items: flex-start;
	padding: var(--s-3) var(--s-4); border-bottom: 1px solid var(--line);
	color: var(--ink-1); text-decoration: none;
}
.b-notif__item:last-child { border-bottom: 0; }
a.b-notif__item:hover { background: var(--bg-2); }
.b-notif__item.is-unread { background: var(--brand-50); }
.b-notif__icon { flex: none; font-size: 16px; line-height: 1.5; }
.b-notif__body { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.b-notif__text { font-size: 13px; line-height: 1.5; color: var(--ink-1); }
.b-notif__time { font-size: 11px; color: var(--ink-3); }
/* 移动端：铃铛不在视口最右（其右还有用户菜单）→ 下拉锚到视口、整宽减边距，避免溢出屏幕左侧。 */
@media (max-width: 767px) {
	.b-notif__dropdown {
		position: fixed;
		top: calc(var(--header-h) + 4px);
		left: var(--s-3); right: var(--s-3);
		width: auto; max-width: none;
	}
}

/* 账户中心「通知」端点页（/my-account/notifications/）：整段列表，复用上面的 .b-notif__item 行。 */
.b-acct-notifs .b-notif-page { list-style: none; margin: 0; padding: 0; border: 1px solid var(--line); border-radius: var(--r-3); overflow: hidden; }
.b-acct-notifs .b-notif-page > li { display: block; }

/* 顶栏移动端（≤1099）直达入口：问答 / 卖家中心（PC ≥1100 隐藏，走主导航）。
   纯文字标签，与桌面主导航一致；触控热区高度 ≥44px（DESIGN-LOCKED §9）。 */
.b-topbar__mlink {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 var(--s-2);
	border-radius: var(--r-2);
	color: var(--ink-1);
	font-size: 15px;   /* 续20: 顶栏「社区/问答」链接字号 13→15（用户要大一圈、不跨度太大） */
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;   /* 标签恒单行，不逐字换行 */
}
@media (hover: hover) and (pointer: fine) {
	.b-topbar__mlink:hover { background: var(--bg-2); color: var(--brand); }
}
.b-topbar__mlink[aria-current="page"] { color: var(--brand); }
@media (min-width: 1100px) { .b-topbar__mlink { display: none; } } /* PC 走主导航，本入口仅 ≤1099 出现 */

/* 顶栏移动端汉堡菜单（≤1099）：收纳 销量榜 + 主题切换；PC ≥1100 隐藏（主题切换走常驻 🌙、销量榜走主导航）。 */
.b-topbar__menu { position: relative; display: inline-flex; }
@media (min-width: 1100px) { .b-topbar__menu { display: none; } }
/* 移动端把 actions 直属的常驻 🌙 收进汉堡 → 隐藏它（汉堡内那枚是嵌套层、不被本规则命中）。 */
@media (max-width: 1099px) { .b-topbar__actions > .b-theme-toggle { display: none; } }
/* 移动端（≤1099）把 🔔 通知铃铛移到操作区最左（消息排在「问答」左边，用户指定）；纯视觉 order、
   不改 DOM。PC（≥1100）不加此规则 → 铃铛位置（🔔 贴头像）一行不变。 */
@media (max-width: 1099px) { .b-topbar__actions > .b-notif { order: -1; } }
.b-topbar__menu-trigger {
	display: inline-flex;
	align-items: center; justify-content: center;
	width: 44px; height: 44px;
	border-radius: var(--r-2);
	background: transparent; border: none;
	color: var(--ink-1); cursor: pointer;
	transition: background var(--dur-1) var(--ease);
}
.b-topbar__menu-trigger:hover { background: var(--bg-2); color: var(--ink-0); }
.b-topbar__menu-dropdown {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	min-width: 180px;
	background: var(--bg-0);
	border: 1px solid var(--line);
	border-radius: var(--r-3);
	box-shadow: var(--sh-3);
	padding: var(--s-2);
	opacity: 0;
	transform: translateY(-6px);
	pointer-events: none;
	transition: opacity var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);
	z-index: var(--z-header-pop);
}
.b-topbar__menu[data-open="true"] .b-topbar__menu-dropdown {
	opacity: 1; transform: translateY(0); pointer-events: auto;
}
.b-topbar__menu-item {
	display: flex;
	align-items: center;
	gap: var(--s-3);
	width: 100%;
	min-height: 44px;   /* 触控目标 ≥44px（DESIGN-LOCKED §9） */
	padding: var(--s-2) var(--s-3);
	border-radius: var(--r-2);
	background: transparent; border: none;
	color: var(--ink-1);
	font-size: 14px;
	font-family: inherit;
	text-align: left;
	cursor: pointer;
}
.b-topbar__menu-item:hover { background: var(--bg-2); color: var(--ink-0); }
/* ☰ 菜单分隔线（账户项 / 销量榜·主题 / 登录·退出 三段之间）。 */
.b-topbar__menu-sep { height: 1px; background: var(--line); margin: var(--s-1) 0; }
/* 项变多（账户 + 销量榜/主题 + 登录/退出）→ 超高时菜单内滚动，避免溢出短屏。 */
.b-topbar__menu-dropdown { max-height: calc(100vh - var(--header-h) - var(--s-5)); overflow-y: auto; overscroll-behavior: contain; }

/* 移动端头像 = 直接进个人中心的链接（≤1099 显示；≥1100 由 .b-user-menu 头像下拉接管、本链接隐藏）。 */
.b-topbar__avatar-link {
	display: inline-flex;
	align-items: center;
	padding: var(--s-1);
	border-radius: var(--r-pill);
}
.b-topbar__avatar-link:hover { background: var(--bg-2); }
@media (min-width: 1100px) { .b-topbar__avatar-link { display: none; } }
/* 移动端（≤1099）：桌面头像下拉隐藏——账户菜单已并入 ☰、移动头像走上面的链接。
   游客「登录」按钮仍单独留在顶栏外面（移动端照常显示，与改版前一致）；退出走 ☰。 */
@media (max-width: 1099px) {
	.b-topbar__actions > .b-user-menu { display: none; }
}

/* 手机底栏 (固定) */
.b-mobile-tabbar {
	position: fixed;
	bottom: 0; left: 0; right: 0;
	height: var(--mobile-tab-h);
	background: var(--bg-0);
	border-top: 1px solid var(--line);
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	z-index: var(--z-tabbar);
	padding-bottom: env(safe-area-inset-bottom);
}
@media (min-width: 1100px) { .b-mobile-tabbar { display: none; } } /* 底栏隐藏与桌面主导航出现对齐到 1100，消除 768–1099 的「桌面导航被压 + 底栏」双导航 */
.b-mobile-tabbar__item {
	display: flex; flex-direction: column;
	align-items: center; justify-content: center;
	gap: 2px;
	color: var(--ink-3);
	font-size: 11px;          /* 图标 + 标签：标签字号配 20px 图标。 */
	min-height: 44px;          /* 触控目标 ≥ 44px。 */
	font-weight: 600;
}
/* 各项图标（emoji）；「发布」的图标由下方 --publish 规则覆盖成渐变圆钮。 */
.b-mobile-tabbar__icon { font-size: 20px; line-height: 1; }
.b-mobile-tabbar__item.is-active { color: var(--brand); }
.b-mobile-tabbar__item:hover { color: var(--brand); }
.b-mobile-tabbar__item--publish span:first-child {
	width: 36px; height: 36px;
	background: linear-gradient(135deg, var(--brand), var(--accent));
	color: #fff;
	border-radius: var(--r-pill);
	display: inline-flex;
	align-items: center; justify-content: center;
	font-size: 22px;
	margin-top: -10px;
	box-shadow: 0 4px 12px rgba(109, 77, 255, 0.35);
}

/* ============================================================
   Footer
   ============================================================ */
.b-footer {
	margin-top: var(--s-7);   /* 批46:页脚上距 64→32 */
	background: var(--bg-0);
	border-top: 1px solid var(--line);
	color: var(--ink-2);
}
@media (max-width: 768px) { .b-footer { margin-top: var(--s-6); } }   /* 批46:32→24 */
@media (max-width: 479px) { .b-footer { margin-top: var(--s-5); } }   /* 批46:24→20 */
.b-footer__inner {
	/* 水平 padding + max-width 走 .b-container (PHP 里同时挂这两个 class). 极简页脚内容少 → 顶 padding 收一档. */
	padding-top: var(--s-7);
	padding-bottom: var(--s-6);
}

.b-footer__grid {
	display: grid;
	grid-template-columns: 1.4fr minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--s-7);
	margin-bottom: var(--s-7);
}
/* mobile breakpoints 统一在 V3.8 块 — 见文件底部 */

.b-footer__brand h3 {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	font-size: 18px;
	color: var(--ink-0);
	margin-bottom: var(--s-3);
}
.b-footer__brand p { font-size: 13px; color: var(--ink-3); margin: 0 0 var(--s-4); max-width: 320px; }
.b-footer__col h4 {
	font-size: 13px;
	font-weight: 600;
	color: var(--ink-0);
	margin: 0 0 var(--s-4);
	letter-spacing: 0.02em;
}
.b-footer__col ul {
	list-style: none;
	margin: 0; padding: 0;
	display: flex; flex-direction: column;
	gap: var(--s-2);
}
.b-footer__col a {
	color: var(--ink-2);
	font-size: 13px;
}
.b-footer__col a:hover { color: var(--brand); }

/* 〔0.4.756〕Cookie 设置：按钮重置成和页脚链接同款（撤回同意入口，PIPL）。 */
.b-footer__cookie-reset {
	appearance: none;
	-webkit-appearance: none;
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font: inherit;
	font-size: 13px;
	line-height: inherit;
	color: var(--ink-2);
	cursor: pointer;
	text-align: left;
}
.b-footer__cookie-reset:hover { color: var(--brand); }

.b-footer__bottom {
	border-top: 1px solid var(--line);
	padding-top: var(--s-5);
	display: flex;
	flex-direction: column;        /* 极简:合规 / 版权 / 备案 居中堆叠(原桌面 row space-between) */
	align-items: center;
	text-align: center;
	gap: var(--s-2);
	font-size: 12px;
	color: var(--ink-3);
}
.b-footer__compliance {
	display: flex; gap: var(--s-3); flex-wrap: wrap; justify-content: center;
}
.b-footer__compliance span { color: var(--ink-3); }

/* 极简页脚(用户拍板「整站极简」,2026-06-04):完整 4 栏网格 + 品牌区**全程隐藏**(链接仍在 DOM 利于 SEO);
   桌面与移动统一只显「关键链接一行 + 合规 + 版权/备案」居中。桌面同移动一套极简观感。 */
.b-footer__grid,
.b-footer__brand { display: none; }
.b-footer__mini {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	row-gap: var(--s-1);
	margin-bottom: var(--s-5);
}
.b-footer__mini-link { color: var(--ink-2); font-size: 13px; padding: var(--s-2) 0; }   /* 仅纵向 8px ≈ 触控行高;横向间距交给分隔点,省去首尾留白 → 常见宽度(375/393)单行容下 */
.b-footer__mini-link:hover { color: var(--brand); }
.b-footer__mini-sep { color: var(--ink-4); font-size: 13px; margin: 0 var(--s-2); }

/* ============================================================
   V3.8 移动端 sticky 搜索条 — 顶栏下方常驻
   ============================================================ */
.b-search-bar {
	display: none;  /* 桌面用顶栏内置搜索 */
}
@media (max-width: 767px) {
	.b-search-bar {
		display: block;
		position: sticky;
		top: var(--header-h);
		z-index: var(--z-subbar);  /* 98 < 顶栏 100 */
		background: var(--bg-1);                /* V3.10: 不透明,与 topbar 一致, 防 ghost 渲染 */
		border-bottom: 1px solid var(--line);
		padding: 8px 0;
		isolation: isolate;
		/* 〔续后·站长报 iOS 27 Safari〕同 .b-topbar：移除 translateZ(0) GPU 提层——iOS 27 滚到顶、地址栏变高时
		   被提为合成层的 sticky 搜索条不被系统重新摆正 → 顶栏/底栏「上移后停在错位」。重影已由 isolation + 不透明背景覆盖。 */
	}
	/* WP admin-bar 让位 — sticky 顶栏推下 32/46,搜索条跟着推下 */
	.admin-bar .b-search-bar { top: calc(var(--header-h) + 32px); }
	@media (max-width: 782px) {
		.admin-bar .b-search-bar { top: calc(var(--header-h) + 46px); }
	}
}
/* 暗色模式 — 手动 + 系统两套都覆盖 (var(--bg-1) 在 dark 模式 = #131320,自动跟着切) */
[data-theme="dark"] .b-search-bar { background: var(--bg-1); }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .b-search-bar { background: var(--bg-1); }
}

.b-search-bar__form {
	width: 100%;
	position: relative;
}
.b-search-bar__form .b-input {
	width: 100%;
	min-height: 40px;
	padding: 0 var(--s-4) 0 40px;
	background: var(--bg-1);
	border: 1px solid var(--brand);   /* 常驻高亮：默认即品牌边框（光晕由通用 .b-search .b-input 提供，聚焦态见下方 :focus） */
	border-radius: var(--r-pill);
	/* font-size 故意省略,继承 .b-input @ <768 = 16px (iOS Safari 防自动放大) */
	transition: border-color var(--dur-1) var(--ease), background var(--dur-1) var(--ease);
}
.b-search-bar__form .b-input:focus {
	background: var(--bg-0);
	border-color: var(--brand);
	outline: none;
	box-shadow: 0 0 0 3px var(--brand-50);
}
.b-search-bar__form .b-search__icon {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px; height: 18px;
	color: var(--ink-3);
	pointer-events: none;
}

/* 移动端搜索条左侧「返回上一步」← （仅 <768 渲染 .b-search-bar、且非首页才出按钮；PC 无搜索条故天然不出现）。 */
.b-search-bar__row { display: flex; align-items: center; gap: var(--s-2); }
.b-search-bar__row > .b-search-bar__form { flex: 1 1 auto; min-width: 0; }
.b-search-bar__back {
	flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	width: 40px; height: 40px; padding: 0;
	border: 1px solid var(--line); border-radius: var(--r-pill);
	background: var(--bg-0); color: var(--ink-1);
	cursor: pointer;
	transition: background var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);
}
.b-search-bar__back:hover { background: var(--bg-2); }
.b-search-bar__back:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
/* 首页：返回键位置改放「全部」入口（纯文字、去全部作品列表）。样式对齐返回键，文字故用自适应宽度。 */
.b-search-bar__all {
	flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	height: 40px; padding: 0 var(--s-3);
	border: 1px solid var(--line); border-radius: var(--r-pill);
	background: var(--bg-0); color: var(--ink-1);
	font-size: 14px; font-weight: 600; white-space: nowrap; text-decoration: none;
	transition: background var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease);
}
.b-search-bar__all:hover { background: var(--bg-2); }
.b-search-bar__all:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }

/* 极简页脚的全程规则(隐藏网格/品牌、显 mini 一行、底部居中堆叠)已上移到基样式=全宽生效;
   此处只留移动端把顶部 padding 再收一档(内容更少)。 */
@media (max-width: 767px) {
	.b-footer__inner { padding-top: var(--s-6); }
}

/* footer__bottom — 版权 + 合规 一行 (桌面) / 两行 (mobile) */
.b-footer__copyright {
	font-size: 12px;
	color: var(--ink-4);
}
/* ICP 备案号（工信部强制：境内每页页脚显示，链 beian.miit.gov.cn）。
   用 --ink-3（亮 5.24/暗 5.09 达 AA）而非 --ink-4（3:1 弱文字层）：法定必显信息应清晰可读；版权语保留 --ink-4 fine print。 */
.b-footer__beian { font-size: 12px; display: inline-flex; gap: var(--s-3); flex-wrap: wrap; justify-content: center; }
.b-footer__beian a { color: var(--ink-3); text-decoration: none; transition: color var(--dur-1) var(--ease); }
.b-footer__beian a:hover { color: var(--brand); }
/* 〔续46〕经营者主体公示（营业执照 / 经营许可证，电商法第 15 条）。 */
.b-footer__biz { font-size: 12px; color: var(--ink-3); display: inline-flex; gap: var(--s-3); flex-wrap: wrap; justify-content: center; margin-top: var(--s-1); }
@media (max-width: 640px) {
	/* 更窄屏再收紧字号/间距;方向=column、居中 继承上面 767 块。 */
	.b-footer__bottom { gap: var(--s-2); padding-top: var(--s-4); }
	.b-footer__compliance { font-size: 11px; gap: var(--s-2); row-gap: var(--s-1); }
	.b-footer__copyright  { font-size: 11px; }
	.b-footer__beian      { font-size: 11px; }
}

/* ============================================================
   V3.19 — 搜索提交按钮(替代浏览器原生清除 X)
   ============================================================ */
/* 隐藏 type=search 浏览器原生清除 X(用户红线:不要那个 X,要确认搜索符号) */
.b-search .b-input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; display: none; }
.b-search .b-input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; appearance: none; }
.b-search .b-input[type="search"]::-ms-clear { display: none; width: 0; height: 0; }

/* 右侧搜索提交按钮(箭头 = 确认搜索) */
.b-search { position: relative; }
.b-search .b-input { padding-right: 46px; }
.b-search__submit {
	position: absolute;
	right: var(--s-2);
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center; justify-content: center;
	width: 32px; height: 32px;
	border: none;
	border-radius: var(--r-2);
	background: var(--brand-solid);
	color: #fff;
	cursor: pointer;
	transition: background var(--dur-1) var(--ease);
}
.b-search__submit:hover { background: var(--brand-600); }
.b-search__submit svg { width: 16px; height: 16px; }
/* 透明扩点击区到 ≈44px（视觉仍是 32px 按钮）。 */
.b-search__submit::before { content: ""; position: absolute; inset: -6px; }
