body {
	padding: 0;
	margin: 0
}

#unity-container {
	position: fixed;
	width: 100%;
	height: 100%;
}

#unity-canvas {
	width: 100%;
	height: 100%;
	background: black
}

#richcast-overlay {
	width: 100%;
	height: 100%;
	transition: opacity 2s ease;
	opacity: 1;
}

#richcast-overlay.fade-out {
	opacity: 0;
}

#richcast-container {
	position: absolute;
	top: 0%;
	left: 0%;
	bottom: 0%;
	right: 0%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background-color: black;	
	gap: 15px;
}

#richcast-project-container {
	flex: 4;
	display: none;
	justify-content: center;
	min-height: 0;
	min-width: 0;
	/* background-color: aqua; */
}

#richcast-logo-container {
	flex: 1;
	flex-direction: column;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	/* background-color: red; */
}

#richcast-spinner-container {
	width: 40px;
	height: 40px;
	margin: auto;
	/* background-color: yellow; */
}

#richcast-panivox-container {
	flex: 0.2;
	flex-direction: column;
	padding: 10px 25px 25px;
	align-items: end;
	justify-content: center;
	box-sizing: border-box;
	display: flex;
	gap: 5px;	
	opacity: 0;
	animation: fadeIn 2s forwards;		
	animation-delay: 2s, 0s;	
	/* background-color: green; */
}

#richcast-panivox-logo {
	width: 200px;
	height: 60px;
	scale: 0.8;
	background: url('panivox-logo.jpg') no-repeat center;
	margin: auto;
}

#richcast-panivox-text {
	color: lightgray;
	font-size: 14px;
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	margin: auto;
}

#richcast-logo-text {
	color: lightgray;
	font-size: 14px;
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	margin: auto;
	display: none;
	animation: fadeIn 4s forwards;	
}

#unity-version-number {
	color: lightgray;
	font-size: 14px;
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
    margin: auto;
}

#richcast-logo {
	width: 320px;
	height: 90px;
	margin: auto;
    justify-content: center;
    align-items: center;
    text-align: center;	
	position: relative;
}

#richcast-logo-static {
	width: 100%;
	height: 100%;
	background: url('richcast-logo-static.jpg') no-repeat center center;
	display: none;
	opacity: 0;
	animation: fadeIn 4s forwards;	
	background-size: contain;
}

#richcast-logo-video {
	width: 100%;
	height: 100%;
	display: block;
}

#richcast-logo-video video {
	width: 100%;
	height: 100%;
	object-fit: cover; /* Ensures the video covers the div without distortion */
}

#richcast-project-image-portrait {
	width: auto;
	height: 100%;
	margin: 0;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	opacity: 0;
	animation: fadeIn 4s forwards, scaleUp 2s forwards;
}

#richcast-project-image-landscape {
	width: auto;
	height: 100%;
	margin: 0;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	opacity: 0;
	animation: fadeIn 4s forwards, scaleUp 2s forwards;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes scaleUp {
	from {
		transform: scale(0.33);
	}
	to {
		transform: scale(1);
	}
}

/* landscape */
@media (min-aspect-ratio: 1/1) {
	#richcast-project-image-portrait {
		display: none;
	}
	#richcast-project-image-landscape {
		display: flex;
	}
	#richcast-no-project-spacer {
		flex: 0;
	}
}
  
/* portrait */
@media (max-aspect-ratio: 1/1) {
	#richcast-project-image-portrait {
		display: flex;
	}
	#richcast-project-image-landscape {
		display: none;
	}
	#richcast-no-project-spacer {
		flex: 0;
	}
}

#richcast-loader-spinner {
	width: 100%;
	height: 100%;
	margin: auto;
	opacity: 0;
	animation: fadeIn 3s forwards, spin 1s linear infinite;
	animation-delay: 7s, 0s;
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

#unity-warning {
	position: absolute;
	left: 50%;
	top: 5%;
	transform: translate(-50%);
	background: black;
    color: white;
    padding: 15px 20px;
    border-radius: 8px;
    font-size: 16px;
    font-family: Arial, sans-serif;
	display: none;
    max-width: 80%;
    text-align: center;
    z-index: 1000;
	flex-direction: column; 
	align-items: center;
	gap: 10px;
}

#unity-warning.error {
    background: rgba(255, 64, 64, 0.9) !important;
    border-left: 5px solid #ff5555 !important;
}

#unity-warning.warning {
    background: rgba(193, 156, 8, 0.9) !important;
    border-left: 5px solid #ffcc00 !important;
}

#unity-warning-code {
	align-self: flex-end;
	font-size: 12px;
	color: #ccc;
}

.refresh-button {
	top: 10px;
	right: 10px;
	padding: 10px 20px;
	background-color: #007bff;
	color: white;
	border: none;
	border-radius: 5px;
	font-size: 16px;
	font-family: Arial, sans-serif;
	cursor: pointer;
	transition: background-color 0.3s ease, transform 0.3s ease;
	z-index: 1000;
}

.refresh-button:hover {
	background-color: #2f6baf;
	transform: scale(1.05);
}

.refresh-button:active {
	background-color: #2f6baf;
	transform: scale(1);
}

#diagnostics-icon {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 30px;
	height: 30px;
	background: url('diagnostics-icon.png') no-repeat center;
	display: flex
}

#unity-footer { position: relative; bottom: 5%; }
.unity-mobile #unity-footer { display: none }
#unity-build-title { float: right; margin-right: 10px; line-height: 38px; font-family: arial; font-size: 18px }
