﻿.falling-text span {
  display: inline-block;
  opacity: 1;
  transform: translateY(0) rotate(0);
  transition: all 2.5s ease-out;
}

.falling-text span.animate {
  opacity: 0;
  transform: translateY(+500px) rotate(0.5turn);
}

/* Lock Container */
.lock-container {
	background: #2b2b36;
	padding: 30px 40px;
	border-radius: 15px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.5), inset 0 2px 5px rgba(255,255,255,0.1);
	display: flex;
	gap: 15px;
	border: 2px solid #3f3f50;
}
/* Individual Dial Window */
.dial-window {
	width: 50px;
	height: var(--dial-height);
	background: #0f0f14;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	box-shadow: inset 0 5px 10px rgba(0,0,0,0.8), inset 0 -5px 10px rgba(0,0,0,0.8);
	border: 1px solid #4a4a5a;
	cursor: pointer;
}
/* Moving Ribbon containing numbers */
.dial-ribbon {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
	display: flex;
	flex-direction: column;
}
/* Individual Number Styles */
.number {
	height: var(--num-height);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	font-weight: bold;
	user-select: none;
	color: #a0a0b0;
}
/* Highlight the active middle number line */
.dial-window::after {
	content: '';
	position: absolute;
	left: 0;
	top: calc(50% - 1px);
	width: 100%;
	height: 2px;
	background: rgba(255, 215, 0, 0.4);
	pointer-events: none;
}

div {
	cursor: pointer
}

html {
	scroll-behavior: smooth;
	background-color: #121212;
	color: #F5F5DC;
	cursor: pointer;
}

div {
	background-color: #121212;
	color: #F5F5DC;
}
div {
	width: 100%;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 100%;
}

a {
	text-decoration: none;
}

a {
	background-color: #121212;
	color: #C0B283;	
}

a:hover {
	background-color: #121212;
	color: #880808;	
}

.theme-default { color: #C0B283; }
.theme-default:hover { color: #880808; }

/* Saffron (Bright Yellow) -> Darker golden yellow for better contrast */
.theme-saffron { color: #F1C338; }
.theme-saffron:hover { color: #d4a316; }

/* Coquelicot (Vibrant Poppy Red) -> Darker scarlet crimson */
.theme-coquelicot { color: #FF3800; }
.theme-coquelicot:hover { color: #cc2d00; }

/* Sinopia (Burnt Earth Orange) -> Deeper brick red-orange */
.theme-sinopia { color: #CB410B; }
.theme-sinopia:hover { color: #a13207; }

/* Chartreuse (Neon Lime) -> Darker pear-green so it stays readable on hover */
.theme-chartreuse { color: #CCFF00; }
.theme-chartreuse:hover { color: #a3cc00; }

/* Verdigris (Teal/Turquoise) -> Richer deep teal */
.theme-verdigris { color: #43B3AE; }
.theme-verdigris:hover { color: #328f8b; }

/* Glaucous (Periwinkle Blue) -> Deeper slate blue */
.theme-glaucous { color: #6082B6; }
.theme-glaucous:hover { color: #466595; }

div {
	line-height: 125%;
	font-family: "Georgia", Georgia, serif;
}

div.screen {
	position: relative;
	left: 20%;
	width: 60%;
	font-size: 150%;
}

iframe.hidden
{
	display:none
}

@media (orientation: portrait) and (max-width: 1200px) {
	div.screen {
		position: relative;
		left: 20%;
		width: 60%;
		font-size: 150%;
	}
}

@media(orientation: portrait){
	div.screen{
		position: relative;
		left: 0%;
		width: 100%;
		font-size: 100%;
	}
}

@media (orientation: landscape) and (max-width: 1600px) {
	div.screen {
		position: relative;
		left: 15%;
		width: 70%;
		font-size: 150%;
	}
}

@media (orientation: landscape) and (max-width: 1400px) {
	div.screen {
		position: relative;
		left: 10%;
		width: 80%;
		font-size: 150%;
	}
}

@media (orientation: landscape) and (max-width: 1200px) {
	div.screen {
		position: relative;
		left: 5%;
		width: 90%;
		font-size: 150%;
	}
}

@media (orientation: landscape) and (max-width: 1000px) {
	div.screen {
		position: relative;
		left: 0%;
		width: 100%;
		font-size: 125%;
	}
}

@media (orientation: landscape) and (max-width: 800px) {
	div.screen {
		position: relative;
		left: 0%;
		width: 100%;
		font-size: 110%;
	}
}

@media (orientation: landscape) and (max-width: 600px) {
	div.screen {
		position: relative;
		left: 0%;
		width: 100%;
		font-size: 100%;
	}
}

/**
 * Disable smooth scrolling when users have prefers-reduced-motion enabled
 */
@media screen and (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/*
@media(orientation: landscape){
	div.screen {
		position: relative;
		left: 33%;
		width: 33%;
		font-size: 16px;
	}
}
*/