/* LogoWall：卡片内 Logo 网格，含 Light/Dark/护眼主题自适应 */

/* 每个 Logo 的卡片化底衬 + 悬停去灰 */
.logo-wall__link {
	--lw-bg: #f6f8fa;
	--lw-border: #ebeef1;
	--lw-hover-bg: #e8ecf1;
	--lw-hover-border: #c8ced6;
	--lw-hover-shadow: 0 6px 20px rgba(30, 60, 110, .10), 0 1px 3px rgba(30, 60, 110, .06);
	--lw-img-border: #d0d7de;
	background: var(--lw-bg);
	border: 1px solid var(--lw-border);
	border-radius: .625rem;
	min-height: 100px;
	padding: 1rem;
	box-sizing: border-box;
	overflow: hidden;
	transition: all .2s ease;
}

.logo-wall__link:hover {
	background: var(--lw-hover-bg);
	border-color: var(--lw-hover-border);
	box-shadow: var(--lw-hover-shadow);
	transform: translateY(-3px);
}

.logo-wall__img {
	max-height: 52px;
	max-width: 88%;
	border: 1px solid var(--lw-img-border);
	filter: grayscale(40%) opacity(50%);
	transition: filter .25s ease, border-color .2s ease;
}

.logo-wall__link:hover .logo-wall__img {
	filter: grayscale(0%) opacity(100%);
}

/* 空目录提示 */
.logo-wall__empty {
	word-break: break-all;
}

/* 轮翻模式：多页叠放在同一网格单元，容器高度取最高页，切换时整页淡入淡出 */
.logo-wall-pages {
	position: relative;
	display: grid;
}

/* 翻页箭头：悬停 / 键盘聚焦时出现，背景色跟随主题 */
.logo-wall__nav {
	position: absolute;
	top: 50%;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 1px solid var(--tblr-border-color, #e5e9f0);
	border-radius: 50%;
	background: var(--tblr-bg-surface, #fff);
	color: var(--tblr-body-color, #182433);
	box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
	cursor: pointer;
	opacity: .55;
	transform: translateY(-50%);
	transition: opacity .2s ease, background-color .2s ease;
}

.logo-wall__nav--prev {
	left: -.5rem;
}

.logo-wall__nav--next {
	right: -.5rem;
}

.logo-wall__nav:hover,
.logo-wall__nav:focus-visible {
	opacity: 1;
	background: var(--tblr-bg-surface-secondary, #f1f3f7);
}

.logo-wall__nav:focus-visible {
	outline: 2px solid var(--tblr-primary, #206bc4);
	outline-offset: 2px;
}

/* 触屏无悬停：箭头加深一些，避免难以发现 */
@media (hover: none) {
	.logo-wall__nav {
		opacity: .85;
	}
}

.logo-wall__page {
	grid-area: 1 / 1 / 2 / 2;
	opacity: 0;
	visibility: hidden;
	transition: opacity .35s ease, visibility 0s linear .35s;
	pointer-events: none;
}

.logo-wall__page.is-active {
	opacity: 1;
	visibility: visible;
	transition: opacity .35s ease, visibility 0s linear 0s;
	pointer-events: auto;
}

@media (prefers-reduced-motion: reduce) {
	.logo-wall__page,
	.logo-wall__page.is-active {
		transition: none;
	}
}

/* 滑动翻页：视口内轨道各页并排，整轨左右位移（首尾克隆用于无缝循环） */
.logo-wall-pages--slide .logo-wall__viewport {
	overflow: hidden;
}

.logo-wall-pages--slide .logo-wall__track {
	display: flex;
	transition: transform 1s cubic-bezier(.4, 0, .2, 1);
	will-change: transform;
}

.logo-wall-pages--slide .logo-wall__page {
	flex: 0 0 100%;
	min-width: 100%;
	opacity: 1;
	visibility: visible;
	transition: none;
	pointer-events: auto;
}

.logo-wall-pages--slide .logo-wall__page--clone,
.logo-wall-pages--slide .logo-wall__page[aria-hidden="true"] {
	pointer-events: none;
}

/* Dark 主题：深色表面；LOGO 底衬柔化为浅灰（透明底 LOGO 仍可读、不刺眼） */
html[data-bs-theme="dark"] .logo-wall__link {
	--lw-bg: #141d29;
	--lw-border: #26313f;
	--lw-hover-bg: #1c2836;
	--lw-hover-border: #3b4c60;
	--lw-hover-shadow: 0 6px 20px rgba(0, 0, 0, .40), 0 1px 3px rgba(0, 0, 0, .30);
	--lw-img-border: #465364;
}

/* 护眼主题：低饱和米绿，与 --tblr 护眼变量同族 */
html[data-vc-theme="eye"] .logo-wall__link {
	--lw-bg: #e9f0dc;
	--lw-border: #d2dcc2;
	--lw-hover-bg: #dfe8cc;
	--lw-hover-border: #aebf97;
	--lw-hover-shadow: 0 6px 20px rgba(70, 95, 55, .12), 0 1px 3px rgba(70, 95, 55, .08);
}
