/* =========================================================
   Upastra Preloader — Module 1
   ========================================================= */

#up-preloader {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: opacity 0.8s ease;
}

#up-preloader.is-hiding {
	opacity: 0;
	pointer-events: none;
}

/* Video */
#up-preloader-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Mobile fallback image */
#up-preloader-mobile-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: none;
}

/* Logo overlay */
#up-preloader-logo {
	position: absolute;
	z-index: 2;
	display: none;
}

#up-preloader-logo.is-visible {
	display: block;
}

#up-preloader-logo img {
	max-width: 180px;
	max-height: 80px;
	object-fit: contain;
}

.up-logo-center         { top: 50%; left: 50%; transform: translate(-50%, -50%); }
.up-logo-top-left       { top: 24px; left: 24px; }
.up-logo-top-right      { top: 24px; right: 24px; }
.up-logo-bottom-left    { bottom: 24px; left: 24px; }
.up-logo-bottom-right   { bottom: 24px; right: 24px; }

/* Mute button */
#up-preloader-mute {
	position: absolute;
	bottom: 24px;
	right: 24px;
	z-index: 3;
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: #fff;
	backdrop-filter: blur(6px);
	transition: background 0.2s;
}

#up-preloader-mute:hover {
	background: rgba(255, 255, 255, 0.28);
}

#up-preloader-mute .up-icon-muted   { display: none; }
#up-preloader-mute .up-icon-unmuted { display: flex; }

#up-preloader-mute.is-muted .up-icon-muted   { display: flex; }
#up-preloader-mute.is-muted .up-icon-unmuted { display: none; }

/* Skip button */
#up-preloader-skip {
	position: absolute;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 999px;
	padding: 8px 22px;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.03em;
	cursor: pointer;
	backdrop-filter: blur(6px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.4s, background 0.2s;
}

#up-preloader-skip.is-visible {
	opacity: 1;
	pointer-events: auto;
}

#up-preloader-skip:hover {
	background: rgba(255, 255, 255, 0.24);
}
