/* 开屏动画：标志扫光
   结构见 module/loading/concise.php —— 两层同一张图，
   底图压暗定住位置，上层用移动的 mask 只露出中间一道光带。 */

.qj_loading {
	position: fixed;
	background: var(--background);
	width: 100%;
	margin-top: -150px;
	height: 300%;
	z-index: 9999999999999
}

.qj_loading>div {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ymw-splash__mark {
	position: relative;
	width: 216px;
	height: 60px;
}

.ymw-splash__mark img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	/* 标志是深藏蓝，暗色底上要反白，否则等于没画 */
	filter: var(--ymw-splash-logo-filter, none);
}

.ymw-splash__base {
	/* 底图不能太淡：低于三成时整块看起来像「被擦掉一半」，
	   而不是「一道光扫过去」。四成既能看清标志，也留出高光空间。 */
	opacity: .42;
}

.ymw-splash__lit {
	opacity: 1;
	-webkit-mask-image: linear-gradient(100deg, transparent 28%, #000 50%, transparent 72%);
	mask-image: linear-gradient(100deg, transparent 28%, #000 50%, transparent 72%);
	-webkit-mask-size: 260% 100%;
	mask-size: 260% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	animation: ymw-sweep 1.5s linear infinite;
}

@keyframes ymw-sweep {
	0% {
		-webkit-mask-position: 135% 0;
		mask-position: 135% 0;
	}

	100% {
		-webkit-mask-position: -35% 0;
		mask-position: -35% 0;
	}
}

/* 暗色：系统级 */
@media (prefers-color-scheme: dark) {
	:root {
		--ymw-splash-logo-filter: brightness(0) invert(1);
	}
}

/* 暗色：手动切换写的是 html 的行内 color-scheme，比媒体查询优先 */
html[style*="color-scheme: light"] {
	--ymw-splash-logo-filter: none;
}

html[style*="color-scheme: dark"] {
	--ymw-splash-logo-filter: brightness(0) invert(1);
}

/* 减弱动态效果时不扫光，直接显示完整标志 */
@media (prefers-reduced-motion: reduce) {
	.ymw-splash__lit {
		animation: none;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.ymw-splash__base {
		opacity: .5;
	}
}
