/**
 * 全站间距最终覆盖（在 header 中紧接 header-spacing 后加载，覆盖 core 的 homepage.css）
 * 统一「首块上间距」与「块与块间距」，所有页面一致。
 * 变量在 header-spacing.css 的 :root，此处只做覆盖，新页用 .sanxio-first-content / .sanxio-content-section 即可。
 * 规范见 sanxio/docs/全站间距规范.md
 */

/* 模块导航底部分割线多余：与正文间距已够，统一去掉 */
.mdc-module-menu {
	border-bottom: none !important;
	box-shadow: none !important;
}

/* 固定头下方：spacer 后为 #search_tips、#destoon-card，不占垂直空间 */
.mdc-top-app-bar-spacer + #search_tips,
.mdc-top-app-bar-spacer + #search_tips + #destoon-card {
	min-height: 0 !important;
	margin: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
/* 移动端：不再使用 spacer/offset 可见占位，直接用 body padding-top 控制正文起点 */
@media (max-width: 767px) {
	/* 固定头从 0 开始 */
	.mdc-top-app-bar--fixed {
		top: 0 !important;
	}
	/* 前端所有页面正文起点 = 前端头高 + 一行块间距；member 页面自己控制 */
	body:not(.member-md3-page) {
		/* MD3 Top App Bar height is typically 56px on mobile */
		padding-top: var(--sanxio-header-mobile-front, 56px) !important;
	}

	/* 移除固定页头阴影渐变带来的“第三种颜色”
	 * 它会叠加在 spacer / banner-top-gap 上，导致蓝区在缺失时看起来“插进页头”。 */
	.mdc-top-app-bar {
		box-shadow: none !important;
		border-bottom: 1px solid var(--md-sys-color-outline-variant, rgba(0, 0, 0, 0.12)) !important;
	}

	/* 移动端不再使用 spacer 占位，高度清零，仅作为 JS 锚点 */
	.mdc-top-app-bar-spacer {
		height: 0 !important;
		min-height: 0 !important;
		background-color: transparent !important;
	}
}

/* device-desktop 渲染：强制使用桌面 spacer 高度（仅在宽视口生效）
 * 避免 device-desktop + 窄视口时：desktop 预留高度仍被应用，导致“上方大空白”。 */
@media (min-width: 768px) {
	/* 桌面端继续沿用原有 spacer 占位逻辑，不使用移动端 offset 层 */
	.mdc-top-app-bar-offset {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
	}
	#destoon-space.mdc-top-app-bar-spacer--overlay {
		position: static !important;
		left: auto !important;
		right: auto !important;
		pointer-events: auto !important;
	}

	body.device-desktop .mdc-top-app-bar-spacer {
		height: 102px !important;
		min-height: 102px !important;
	}
	body.device-desktop:has(.mdc-module-menu) .mdc-top-app-bar-spacer {
		height: 158px !important;
		min-height: 158px !important;
	}
}

/* 首块与区块：统一规则（使用全站统一间距组件）
 * - 首页首块（banner）上下都使用 --sanxio-content-gap
 * - 其余内容块/卡片之间统一使用 --sanxio-content-gap（移动端默认 10px） */
	body .sanxio-home-banner,
	.sanxio-home-banner {
		margin-top: var(--sanxio-content-gap, 12px) !important;
		margin-bottom: var(--sanxio-content-gap, 12px) !important;
	}

/* 搜索页：与首页一致，仅靠 spacer + .sanxio-banner-top-gap 控制菜单下间距，不再用负 margin */
.mdc-search-page {
	margin-top: 0 !important;
}

/* 内容区块（首页限时秒杀等 / 任意页区块）：外部间距只用上间距，归下方区块 */
body .sanxio-home-section,
.sanxio-home-section,
.sanxio-content-section {
	margin-top: var(--sanxio-content-gap, 8px) !important;
	margin-bottom: 0 !important;
}

/* ========== 设置/搜索抽屉：使用全站统一间距变量 ========== */
/* 顶部设置图标与下方卡片标题图标左右对齐：与卡片内间距一致（2×card-padding-x） */
#searchDrawer .mdc-drawer__header,
#settingsDrawer .mdc-drawer__header {
	padding-left: calc(2 * var(--sanxio-card-padding-x, 10px)) !important;
}
#searchDrawer .mdc-drawer__content,
#settingsDrawer .mdc-drawer__content {
	padding: var(--sanxio-block-padding-y, 8px) var(--sanxio-block-padding-x, 10px) !important;
}
/* 两卡片之间：仅用父级 gap 控制；section 不再用 margin-bottom */
.mdc-settings-drawer-content {
	gap: var(--sanxio-content-gap, 10px) !important;
}
.mdc-settings-drawer-content .mdc-settings-section {
	margin-bottom: 0 !important;
}
.mdc-settings-drawer-content .mdc-settings-section:last-child {
	margin-bottom: 0 !important;
}
.mdc-settings-drawer-content .mdc-settings-card {
	margin-bottom: var(--sanxio-content-gap, 10px) !important;
}
.mdc-settings-drawer-content .mdc-settings-card:last-child,
.mdc-settings-drawer-content > .mdc-settings-card:last-child {
	margin-bottom: 0 !important;
}
/* 抽屉内卡片统一用全站卡片内间距变量 */
.mdc-settings-drawer-content .mdc-settings-card-header {
	padding: var(--sanxio-card-padding-y, 8px) var(--sanxio-card-padding-x, 10px) !important;
	align-items: center !important;
}
/* 卡片标题文字行高与图标同高（24px），减少图标与标题“有一点点偏”的视觉偏差 */
.mdc-settings-drawer-content .mdc-settings-card-header-title {
	line-height: 24px !important;
}
/* 卡片标题图标视觉微偏上时向下微调（Material Symbols 与中文基线差异） */
.mdc-settings-drawer-content .mdc-settings-card-header .mdc-settings-card-header-icon,
.mdc-settings-drawer-content .mdc-settings-card-header-icon {
	transform: translateY(2px) !important;
}
.mdc-settings-drawer-content .mdc-settings-item,
.mdc-settings-drawer-content .mdc-settings-item-link {
	padding-left: var(--sanxio-card-padding-x, 10px) !important;
	padding-right: var(--sanxio-card-padding-x, 10px) !important;
}
.mdc-settings-drawer-content .mdc-settings-item {
	padding-top: var(--sanxio-card-padding-y, 8px) !important;
	padding-bottom: var(--sanxio-card-padding-y, 8px) !important;
	margin-bottom: calc(var(--sanxio-content-gap, 10px) / 2) !important;
}
.mdc-settings-drawer-content .mdc-settings-item:last-child {
	margin-bottom: 0 !important;
}
.mdc-settings-drawer-content .mdc-settings-item-link {
	padding-top: var(--sanxio-card-padding-y, 8px) !important;
}
.mdc-settings-drawer-content .mdc-settings-item-link:last-child,
.mdc-settings-drawer-content .mdc-settings-card .mdc-settings-item-link:last-child {
	padding-bottom: var(--sanxio-card-padding-y, 8px) !important;
}
.mdc-settings-drawer-content .mdc-settings-item--vertical {
	padding-left: var(--sanxio-card-padding-x, 10px) !important;
	padding-right: var(--sanxio-card-padding-x, 10px) !important;
	padding-top: var(--sanxio-card-padding-y, 8px) !important;
	gap: var(--sanxio-content-gap, 10px) !important;
}
.mdc-settings-drawer-content .mdc-settings-card .mdc-settings-item--vertical:last-child {
	padding-bottom: var(--sanxio-card-padding-y, 8px) !important;
}
/* 列表项图标与卡片标题图标一致：向下微调，减轻“偏上”感 */
.mdc-settings-drawer-content .mdc-settings-item-icon {
	transform: translateY(2px) !important;
}
.mdc-settings-drawer-content .mdc-settings-buttons-group {
	gap: var(--sanxio-content-gap, 10px) !important;
	margin-top: var(--sanxio-content-gap, 10px) !important;
}
/* 移动端抽屉：内容区仍用 block-padding，卡片内用 card-padding */
@media (max-width: 767px) {
	.mdc-settings-drawer-content {
		gap: var(--sanxio-content-gap, 10px) !important;
	}
	#searchDrawer .mdc-drawer__content,
	#settingsDrawer .mdc-drawer__content {
		padding: var(--sanxio-block-padding-y, 8px) var(--sanxio-block-padding-x, 10px) !important;
	}
	.mdc-settings-drawer-content .mdc-settings-item,
	.mdc-settings-drawer-content .mdc-settings-item-link {
		padding-left: var(--sanxio-card-padding-x, 10px) !important;
		padding-right: var(--sanxio-card-padding-x, 10px) !important;
		padding-top: var(--sanxio-card-padding-y, 8px) !important;
	}
	.mdc-settings-drawer-content .mdc-settings-item--vertical {
		padding-left: var(--sanxio-card-padding-x, 10px) !important;
		padding-right: var(--sanxio-card-padding-x, 10px) !important;
		padding-top: var(--sanxio-card-padding-y, 8px) !important;
	}
	.mdc-settings-drawer-content .mdc-settings-card .mdc-settings-item--vertical:last-child {
		padding-bottom: var(--sanxio-card-padding-y, 8px) !important;
	}
	.mdc-settings-drawer-content .mdc-settings-card-header {
		padding: var(--sanxio-card-padding-y, 8px) var(--sanxio-card-padding-x, 10px) !important;
	}
	.mdc-settings-drawer-content .mdc-settings-card .mdc-settings-item-link:last-child {
		padding-bottom: var(--sanxio-card-padding-y, 8px) !important;
	}
}
