
body {font-family:'Lato',sans-serif; margin-top: 50px;height:85vh;max-width:100%;background-color:white;background-repeat: no-repeat;
margin:auto auto;align-items:center;justify-content:center;object-fit:contain;display:block;}
/* Estructura común para todas las páginas */
.main {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start; /* CORRECCIÓN: Cambiado a flex-start para que el contenido empiece arriba y fluya hacia abajo */
	
	/* CORRECCIÓN: Usamos min-height en vez de height rígido para que la página crezca si hay mucho contenido */
	min-height: calc(100vh - 50px); 
	max-width: 100%;
	width: 100%;
	padding-top: 60px;
	font-family: 'Helvetica Neue', Arial, sans-serif;
	background-color: white;
	box-sizing: border-box; /* Crucial para que el padding-top no agrande el contenedor */
}

/* Colores específicos según el ID de la página actual */
#primero {
  background-color: black;   /* Comunidad */
}

#segundo {
  background-color: white; /* Tienda */
}

#tercero {
  background-color: white; /* Carrito */
}

#cuarto {
  background-color:white;   /* Login /  */
}
/*background-image:url("/assets/images/xmas-bg.jpg");background-repeat:repeat-x;*/

.dropbtn {padding: 16px;border: none;}
.dropdown {cursor:pointer;display: inline-block;z-index=0}
.dropdown-content {display:none;position:absolute;background-color: #f1f1f1;min-width: 160px;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);z-index: 1;}
.dropdown-content a {color:black;padding: 12px 16px;text-decoration:none;display:block;}
.dropdown-content a:hover {background-color: #ddd;}
.dropdown:hover .dropdown-content {display: block;}
.dropdown:hover .dropbtn {background-color: #3e8e41;}

.navbar {width: 100%;height:50px;font-size: 14px;overflow: hidden;background-color: #164ba1;position: fixed;top: 0;left:0;}
.navbar a {float: left;display: block;color: #f2f2f2;text-align: center;padding: 0 10px;line-height: 45px;text-decoration: none;}
.navbar a:hover {background: #ddd;color: black;}

.row {display:flex;}
.column {flex:50%;}

.tooltip:hover .tooltiptext {visibility:visible;opacity:1;animation: growww .5s;}
.tooltip {position: relative;display:inline-block;}
.tooltip .tooltiptext {text-shadow:none;font-size:12px;font-weight:600;visibility:hidden;background-color:#fcfad2;color:black;text-align:center;border-radius:6px;padding:5px 10px;position:absolute;z-index:9999;bottom:125%;left:50%;margin-left:-50px;width:80px;opacity:0;transition:opacity0.3s;}
.tooltip .tooltiptext::after {content:'';position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#fcfad2 transparent transparent transparent;}
.tooltip:hover .tooltiptext {visibility:visible;opacity:1;z-index: 9999;box-shadow: 4px 4px 2px 1px rgb(0 0 0 / 20%);}
button.gris{width: 90px;height:40px;background-color: #6c757d;color: white;border-radius: 10px;border: none;font-size: 16px;padding: 10px;cursor:pointer;}
button{width: 80px;background-color: #04AA6D;color: white;border-radius: 10px;border: none;padding: 10px;cursor:pointer;background-image: linear-gradient(-180deg, #74E0B8 10%, rgba(12, 129, 2) 70%);}
button:hover {text-shadow: 2px 2px 4px black, 0 0 30px white, 0 0 30px white;box-shadow: 4px 4px 2px 1px rgb(0 0 0 / 20%);margin-top:-2px;margin-bottom:2px;background-image: linear-gradient(-180deg, #0E7613 10%, #0E7613 100%);}
.advice{font-weight:bold;font-size:14px;padding:10px;border-radius:10px;width:300px;background-color:rgba(255,255,255,0.6);box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);}
.slayer{width:450px;}
.container {width:100%;margin-bottom:1px;padding: 2px;border-radius: 10px;margin-top:1px;margin-left:10px;margin-right:10px;}
.sidenav {
	height: 100%;
	width: 0;
	position: fixed;
	z-index: 1;
	top: 0;
	left: 0;
	background-color: #327ffc;
	overflow-x: hidden;
	transition: 0.5s;
	padding-top: 60px;
	
}

.sidenav a {
	padding: 8px 8px 8px 50px;
	text-decoration: none;
	font-size: 20px;
	font-family: Verdana;
	color: cyan;
	display: block;
	transition: 0.3s;
}

.sidenav a:hover {
	color: #ffffff;
	text-shadow: 2px 2px 4px black, 0 0 30px white, 0 0 30px white;
	
}

.sidenav .closebtn {
	position: absolute;
	top: 0;
	right: 25px;
	font-size: 36px;
	margin-left: 50px;
}
h1 {
  color: blue;
}
h2 {
  color: #1f2935;
}
p {
	margin-top:1px;
	margin-bottom:1px;
	margin-left:1px;
	margin-right:1px;
        color: black;
  }
.pantallaoscura {display: none;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);	background-color:rgba(0,0,0,0.6);}
.dialogo-ventana {animation-duration:1s;animation-name:slidein;border-radius:15px;background-color:#fefefe;
  font-family:'Lato', sans-serif;font-size:11; margin:0;padding:20px;border:1px solid #888;
  width:80%;height:200px;position: absolute;top: 50%;left: 50%;
  -ms-transform:translate(-50%, -50%);
  transform:translate(-50%, -50%);}
.dialogo-ventana {cursor:pointer;}

table.tablavisible {
	text-align:center;
	color: black;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
	width:98%;
	border-collapse:collapse; 
	padding: 7px;
	border:1px;
	border-radius: 15px;
}

table.tablavisible, tr {text-align:center;}
table.tablavisible, tr:nth-of-type(even){background-color: rgba(255,255,255,1);}
table.tablavisible, tr:nth-of-type(odd){background-color: #D9EEE1;border:1px;}
table.tablavisible, tr:first-of-type {background-color: #059862;color: white;}
table.tablavisible, tr:last-of-type {border-bottom: 4px solid #059862;}
table.tablavisible {border-collapse: collapse;}
table.tablavisible td {border: 2px solid #b8d1f3;}
table.tablavisible tr:first-child td {border-top: 0;}
table.tablavisible tr td:first-child {border-left: 0;}
table.tablavisible tr:last-child td {border-bottom: 0;}
table.tablavisible tr td:last-child {border-right: 0;}

table.tablainvisible, tr {text-align:left; background-color: rgba(0,0,0,0);border:}


.tablainvisible tr{padding-top: 0px;background: transparent;}
.tablainvisible td{padding-top: 0px;}
.tablainvisible {--border:1px solid black;
	color: black;
	}
.search-box{
    transform:translate(0%,-50%);
    height:20px;
	
}
.search-box:hover > .txt{
    width:150px;
    padding:0 6px;
    transition: all 0.4s;
	background:#fff;
	
}
.search-box:hover > .btn{
    background:#04AA6D;
}
.btn{
    color:#04AA6D;
    float:left;
    width:80px;
    height:40px;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    transition:0.4s;
    cursor:pointer;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
	box-shadow:inset 0 0 10px #fff;
}
.btn > i{
    font-size:16px;
    color:#04AA6D;;
     
}
 
.txt{
    border:none;
    background:none;
    outline:none;
    float:left;
    padding:0;
    color:#000;;
    font-size:16px;
    transition:0.4s;
    line-height:40px;
    width:0px;
    font-weight:bold;
}

.seleccion {
	width: 60px;
	padding: 12px;
	border: 0px solid #ccc;
	border-radius: 10px;
	box-sizing: border-box;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 16px;
	background-color: white;
}
textarea{
	border: 0px solid #ccc;
	border-radius: 10px;
    box-sizing: border-box;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 14px;
	width: 220px;
	resize:none;
	font-family: 'Lato', sans-serif;
	padding:10px;
}
input {
	width: 200px;
	height:40px;
	padding: 12px;
	border: 1px solid #ccc;
	border-radius: 10px;
	box-sizing: border-box;
	margin-top: 10px;
	margin-bottom: 10px;
}

input.largo {
	width: 95%;
	height:40px;
	padding: 12px;
	border: 0px solid #ccc;
	border-radius: 10px;
	box-sizing: border-box;
	margin-top: 10px;
	margin-bottom: 10px;
}
input[type=date] {
	background-color: white;
	cursor:pointer;
	font-family: 'Lato', sans-serif;
}
input[type=email] {
	background-color: white;
	cursor:pointer;
	font-family: 'Lato', sans-serif;
}
input[type=submit] {
	width: 80px;
	height:40px;
	background-color: #04AA6D;
	color: white;
	border-radius: 10px;
	font-size: 16px;
	cursor:pointer;
}

input[type=submit]:hover {
	text-shadow: 2px 2px 4px black, 0 0 30px white, 0 0 30px white;
}
button:hover {
	text-shadow: 2px 2px 4px black, 0 0 30px white, 0 0 30px white;
}

.row {
  display: flex;
}

.column {
  flex: 50%;
}

@media (orientation: landscape) { 
.imagen { height:85%;}
.parrafo {line-height:2em;font-size:18px;padding: 10px 10px;}
#primero {height:100vh;}
}
@media (orientation: portrait) {
	.imagen {width: 100%;}
	#primero {height:85vh;}
	}
	
	}
/* Elimina el width: 400px fijo que rompe el diseño */
.slayer {
    width: 100% !important; 
    max-width: 100vw;       /* 100% del ancho visual */
    margin: 0;
    padding: 0;
}

/* Para pantallas como la de Xiaomi (360px de ancho lógico) */
@media screen and (max-width: 600px) {
    body.sidenav { padding-top: 15px; }
    body.sidenav a { font-size: 18px; }
    
    .slayer {
        width: 95%;    /* Deja un pequeño margen a los lados */
    }
}

@keyframes slidein {
  from {position: absolute;top:-100%;left:50%;-ms-transform:translate(-50%,-50%);transform:translate(-50%, -50%);}
  to {position: absolute;top: 50%;left: 50%;-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);}
}
@keyframes growww {
	from{transform:scale(0);}
	to{ transform:scale(1);}
	}