::-webkit-scrollbar { 
	width: 16px;
}
::-webkit-scrollbar-track { 
	background-color: #333;
} 
::-webkit-scrollbar-thumb { 
	background-color: #424e69;
}
::-webkit-scrollbar-thumb:hover { 
	background-color: #8295d5;
}

@font-face { 
	font-family: 'Obviously'; 
	src: url('../fonts/fonnts.com-obviously_lght.otf'); 
	font-weight: 200;
}
@font-face { 
	font-family: 'Obviously'; 
	src: url('../fonts/fonnts.com-obviously_bold.otf'); 
	font-weight: bold;
}

* { 
	font-family: 'Obviously', sans-serif;
	font-size: 20px;
	color: #fff;
	font-weight: 200;
	font-style: italic;
}

html, body { 
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}
html  { 
	background-color: #000;
	background-image: url('../img/fondo.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
body { 
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}


#score, #highscore  { 
	position: absolute;
	display: inline;
	top: 780px;
	margin: 0px;
	padding: 0px;
	width: 160px;
}
#highscore { 
	left: 180px;
}
#score h2, #score span, #highscore h2, #highscore span { 
	display: block;
	text-transform: uppercase;
	font-weight: normal;
	letter-spacing: 2px;
	font-size: 16px;
	height: 21px;
	margin: 0px;
	padding: 0px;
	text-align: right;
	padding-right: 15px;
	color: #ff5e00;
	text-shadow: 0 0 10px #ff5e00;
}
#score span, #highscore span { 
	padding-right: 0px;
}
#highscore span { 
	padding-right: 40px;
}
#message { 
	position: absolute;
	display: inline;
	top: 830px;
	left: 170px;
	margin: 0px;
	padding: 0px;
	width: 210px;
	height: 30px;
	text-transform: uppercase;
	font-weight: normal;
	letter-spacing: 2px;
	font-size: 20px;
	color: #ffd23f;
	text-align: center;
	text-shadow: 0 0 10px #ffd23f, 0 0 20px #ff5e00;
}
#message.red { 
	color: #ff1053;
	text-shadow: 0 0 20px #ff1053, 0 0 40px #ff1053;
}

span.combo, span.fruits { 
	position: absolute;
	letter-spacing: 1.5px;
	font-size: 14px;
	color: #89dfff;
	font-weight: normal;
}

#panel, #home { 
	width: 550px;
	height: 977px;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(var(--game-scale, 1));
	padding: 5px 10px 10px 10px;
	background-color: rgba(0, 0, 0, 0.3);
	border-radius: 12px;
	box-shadow: 0px 5px 40px rgba(0,0,0,0.8), 0 0 20px rgba(255, 16, 83, 0.4);
	border: 1px solid rgba(255, 16, 83, 0.3);
	backdrop-filter: blur(8px);
}
/* Ocultar el panel del juego por defecto — initGame(true) lo muestra con jQuery */
#panel {
	display: none;
}			
#board, #canvas-board, #canvas-paths, #canvas-fruits, #canvas-pacman, #canvas-bubbles, #canvas-ghost-blinky, #canvas-ghost-pinky, #canvas-ghost-inky, #canvas-ghost-clyde { 
	width: 550px;
	height: 550px;
	position: absolute;
}

/* FIREBALL GEOMETRY FILTERS: Board In-Game */
#canvas-ghost-blinky { filter: drop-shadow(0 0 10px #ff1053); }
#canvas-ghost-pinky  { filter: drop-shadow(0 0 10px #ff5e00); }
#canvas-ghost-inky   { filter: drop-shadow(0 0 10px #ffd23f); }
#canvas-ghost-clyde  { filter: drop-shadow(0 0 10px #ffffff); }

/* FIRE AND EMBERS CORE SYSTEM */
#fire-container {
	position: fixed;
	bottom: -150px;
	left: 0;
	width: 100vw;
	height: 100vh;
	pointer-events: none;
	z-index: 1000;
	overflow: hidden;
	mix-blend-mode: color-dodge;
	/* Base Flame Overlay */
	background: radial-gradient(ellipse at 50% 100%, rgba(255, 16, 83, 0.45) 0%, rgba(255, 94, 0, 0.25) 30%, transparent 60%);
	animation: flamePulsate 3s ease-in-out infinite alternate;
}
@keyframes flamePulsate {
	0% { opacity: 0.7; transform: scaleY(1); }
	100% { opacity: 1; transform: scaleY(1.3); }
}

/* Ember Particle Component */
.ember {
	position: absolute;
	bottom: 0;
	width: 6px;
	height: 6px;
	background: #FFD23F;
	border-radius: 50%;
	box-shadow: 0 0 10px #FFD23F, 0 0 20px #FF5E00, 0 0 30px #FF1053;
	animation: emberFly 3s linear infinite;
	opacity: 0;
}
@keyframes emberFly {
	0% { transform: translateY(0) scale(1.5); opacity: 1; }
	50% { opacity: 1; }
	100% { transform: translateY(-70vh) scale(0.5); opacity: 0; }
}
#canvas-paths { 
	display: none;
}
#board {  
	position: absolute;
	top: 200px;
}

#canvas-lifes, #canvas-level-fruits { 
	height: 30px;
	top: 880px;
	position: absolute;
	z-index: 111111;
}
#canvas-lifes { 
	width: 120px;
	left: 50px;
}
#canvas-level-fruits { 
	width: 265px;
	right: 50px;
}



/* Global Corporate Footer */
.iglu-brand-footer {
	position: absolute; /* Revertido a Absolute para obedecer al contenedor principal */
	bottom: 20px;
	left: 0;
	right: 0;
	text-align: center;
	color: #ffffff;
	text-decoration: none;
	font-family: "Obviously", "Quadrit", sans-serif;
	font-size: 18px;
	letter-spacing: 3px;
	z-index: 99999;
	text-transform: uppercase;
	opacity: 0.6;
	transition: opacity 0.3s ease, text-shadow 0.3s ease;
}

.iglu-brand-footer:hover {
	opacity: 1;
	text-shadow: 0 0 10px #ffffff, 0 0 20px #ff1053;
}

#control { 
	position: absolute;
	margin: auto;
	left: 0px;
	right: 0px;
	bottom: -40px;
	width: 550px;
	height: 140px;
	background-color: #666;
	opacity: 0.7;
	display: none;
}
#control-up, #control-down, #control-up-second, #control-down-second, #control-left, #control-right, #control-up-big, #control-down-big, #control-left-big, #control-right-big { 
	position: absolute;
	margin: auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 64px;
	cursor: pointer;
	width: 64px;
	height: 64px;
	padding: 5px;
}
#control-up { 
	top: 0px;
	left: 70px;
	background-image: url('../img/move-up.png');
}
#control-down { 
	bottom: 0px;
	right: 70px;
	background-image: url('../img/move-down.png');
}
#control-up-second { 
	top: 0px;
	right: 70px;
	background-image: url('../img/move-up.png');
}
#control-down-second{ 
	bottom: 0px;
	left: 70px;
	background-image: url('../img/move-down.png');
}
#control-left { 
	bottom: 0px;
	top: 0px;
	left: 0px;
	background-image: url('../img/move-left.png');
}
#control-right { 
	bottom: 0px;
	top: 0px;
	right: 0px;
	background-image: url('../img/move-right.png');
}

#control-up-big, #control-down-big, #control-left-big, #control-right-big { 
	position: absolute;
	opacity: 0.2;
	margin: auto;
	padding: 0px;
	display: none;
	background-size: 98px;
	z-index: 999999;
}
#control-up-big { 
	bottom: 10px;
	left: 0px;
	right: 0px;
	width: 125px;
	height: 125px;
	background-image: url('../img/move-up-big.png');
}
#control-down-big { 
	bottom: -120px;
	left: 0px;
	right: 0px;
	width: 125px;
	height: 125px;
	background-image: url('../img/move-down-big.png');
}
#control-left-big { 
	left: 80px;
	bottom: -90px;
	width: 125px;
	height: 175px;
	background-image: url('../img/move-left-big.png');
}
#control-right-big { 
	right: 80px;
	bottom: -90px;
	width: 125px;
	height: 175px;
	background-image: url('../img/move-right-big.png');
}



h1 { 
	margin: 0px 0px 74px 0px;
	padding: 0px;
	font-size: 24px;
	letter-spacing: 3px;
	color: #fff;
	text-transform: uppercase;
	font-style: italic;
	text-shadow: 0 0 5px #ff1053, 0 0 15px #ff1053, 0 0 30px #ff1053;
}
h3 { 
	margin: 0px;
	padding: 0px;
	font-size: 20px;
	letter-spacing: 2px;
	color: #ffd23f;
	text-transform: uppercase;
	font-style: italic;
	text-shadow: 0 0 10px #ffd23f;
}

.sound { 
	position: absolute;
}
.sound img { 
	height: 28px;
}
#home .sound { 
	bottom: 0px;
	right: 5px;
}
#panel .sound { 
	top: 77px;
	right: 5px;
}

.putchu { 
	position: absolute;
	top: 450px;
	left: 130px;
	background-color: #4c6441;
	padding: 10px 25px 40px 95px;
	text-transform: uppercase;
}
.putchu img { 
	position: absolute; 
	bottom: -5px;
	left: 5px;
}
#panel .putchu { 
	top: 0px;
	right: 5px;	
	left: auto;
	font-size: 16px;
	padding: 10px 25px 30px 65px;
}

#sound { 
	position: absolute;
}

.ui-mobile {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}




