body, html {
  height: 100%;
  margin: 0;
}

a{
	text-decoration: none;
}

.cont_carta{
	float: left; border: none; padding: 1px; min-width: 220px; margin-left: 20px; margin-bottom: 50px;
	background: #d6d6d6; text-align: center;
	border-radius: 5px;
	box-shadow: 5px 10px 8px #888888;
}

.cont_carta_carpeta{
	float: left; border: none; padding: 1px; min-width: 320px; margin-left: 20px; margin-bottom: 50px;
	background: #ffdd99; text-align: center;
	border-radius: 5px;
	box-shadow: 5px 10px 8px #888888;
}

/* 
.cont_figura{border: none; padding: 2px; float: left; min-width: 75px ; height: 100%;}
*/ 
.cont_figura{border: solid 1px yellow; padding: 2px; float: left; min-width: 75px}
.cont_figura img{border: none; max-width: 75px;}


@media (max-width:376px){
	.cont_carta{width: 90%; height: auto;}
	.cont_figura{width: 100%; max-width: 25%; height: auto;}
	.cont_figura img{width: 100%;}
}

.cont_carta_pocitos{
	float: left; background: #d6d6d6; width: 750px; height: auto; 
	margin-left: 80px; border: none; margin-bottom: 50px;
	border-radius: 5px;
	box-shadow: 5px 10px 8px #888888;
}	


.bg {
  /* The image used */
  background-image: url("imagenes/fondo_elsol_online.jpg");

  /* Full height */
  height: 100%;

  /* Center and scale the image nicely */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.error{
	font-family: Verdana, Arial; font-size: 1em; color: #cc0000; 
	line-height: 1.5em;
	margin: 0.5em auto;
	background: #ffffff;
	border: solid 1px #cc0000;
	max-width: 350px;
	padding: 0.5em;
}

.msg_login{
	font-family: Verdana, Arial; font-size: 1.2em; color: navy; 
	line-height: 1.5em;
	margin: 0.5em auto;
	background: #ffffff;
	border: solid 1px navy;
	max-width: 350px;
	padding: 0.5em;
}

.Instrucciones_pantallas{
	font-family: Verdana, Arial; font-size: 1em; color: #000000; 
	line-height: 1.5em;
	margin: 0.5em auto;
	border: solid 1px orange;
	background: #ffffff;
	max-width: 350px;
	padding: 0.5em;
	border-radius: 12px;
	-ms-border-radius: 12px;
	-moz-border-radius: 12px;
	-webkit-border-radius: 12px;
	-khtml-border-radius: 12px;
}

#cont_crear_tabla{
	border: none;
	min-width: 270px;
	max-width: 445px;
	margin: 0 auto;
}

#contenedor_escoger_54_figuras{
	min-width: 440px;
	padding-top: 10px;
	padding-bottom: 10px;
}

	#contenedor_escoger_54_figuras img{opacity: 0.7; cursor: pointer; border: solid 1px transparent;}
	#contenedor_escoger_54_figuras img:hover{opacity: 1; border: solid 1px black;}

#contenedor_escoger_16_figuras{
	margin: 0 auto;
	margin-top: 30px;
	padding: 20px;
	background-color: #fff;
	border: solid 2px #e0e0e0;
	min-width: 325px;
	max-width: 325px;

	border-radius: 12px;
	-ms-border-radius: 12px;
	-moz-border-radius: 12px;
	-webkit-border-radius: 12px;
	-khtml-border-radius: 12px;
}

#popupCaptchaCorrecto{
	border: solid 1px #d3d3d3;
	border-radius: 12px;
	-ms-border-radius: 12px;
	-moz-border-radius: 12px;
	-webkit-border-radius: 12px;
	-khtml-border-radius: 12px;
	width:400px;
	height:170px;
	padding: 1.5em 1em 1em 1em;
	line-height: 1.5em;
	position:fixed;
	top:50%;
	left:50%;
	margin-left: -200px;
	margin-top: -75px;
	background: #FFFFFF;
	font-family: verdana;
	font-size: 1.5em;
	text-align: center;
	font-weight: bold;
	color: #008000;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	z-index: 9998;
}

#popupCaptchaError{
	border: 1px solid #C00000;
	border-radius: 4px;
	-ms-border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-khtml-border-radius: 4px;
	width:400px;
	height:100px;
	line-height: 100px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	position:fixed;
	top:50%;
	left:50%;
	margin-left: -200px;
	margin-top: -50px;
	background: #FFFFFF;
	text-align: center;
	font-weight: bold;
	font-family: arial;
	color: #C00000;
	z-index: 9998;
}

#Div_Principal{
	width: auto;
	border: none;
	text-align: center;
}

div {
	  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.titulos_claros{
	font-family: Verdana, Arial; font-size: 1.7em; color: #0f33aa; 
}

h1 {
	text-align: center;
}

h1.h1_estilos{
	font-family: Verdana, Arial; font-size: 2em; color: #0f33aa; 
}

h2.h2_estilos{
	font-family: Arial; font-size: 1.2em; color: #7f44ff; 
}

.formulario{
	border: solid 1px black;
	text-align: center;
}

input {
	font-family: Verdana, Arial; font-size: 1em; color: #000000;
	background-color: #f7f7f7; border: #000099; border-style: solid;
    border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px;
    border-left-width: 1px;
	vertical-align: super;
	border-radius: 5px;
	border: solid 1px gray;
	padding: 0.5em;
}

.contenedor_de_tabla {
	width: 380px;
	display: grid;
	grid-template-columns: auto auto auto auto;
	grid-gap: 5px;
	border: none;
	float: left;
	overflow: scroll;
}

#contenedor_cartas_de_tabla {
	width: 380px;
	display: inline-block;
	padding: 0px;
	border: solid 10px transparent;
	height: 600px;
	float: left;
	text-align: center;
	margin-bottom: 60px;
}

#contenedor_cartas_individuales{
	width: 88px;
	height: 133px;
	float: left;
	border: solid 3px #d6d6d6;

}

.titulos_tablas{
	clear: both;
	border: none;
	text-align: center;
	font: bold 1.5em arial;
	color: #445795;
}

.ver_mis_tablas_titlos{
	font-family: Verdana, Arial; font-size: 1.8em; color: #0f33aa;
	font-weight: bold;
	padding: 1px;
	border: none;
	text-align: center;
}

.titulos_tablas_ganadoras{
	clear: both;
	margin: 3px 0 0 0;
	border-radius: 5px;
	text-align: center;
	font-family: Roboto Slab, arial;
	font-size: 1.6em;
	font-weight: bold;
	color: white;
	background: #4b453e;
	padding: 5px;
	max-width: 323px;
	height: 115px;
}

.titulos_tablas_uso_interno{
	clear: both;
	border: none;
	text-align: center;
	font: bold 1.5em arial;
	color: white;
	padding: 0px;
	width: 100%;
}

.desmarcada img {
	width: 80px;
	opacity: 0.18;
}

.marcada img {
	width: 80px;
	opacity: 1;
}

.colorear {
	filter: grayscale(100%);
}

select{
	font-size: 20px;
}

.btn_enviar{
	font-family: Verdana, Arial; font-size: 1em; color: #0f33aa;
	padding: 10px;
	border: solid 2px #cccccc;
}

.btn_enviar:hover {
  background-color: yellow;
  cursor: pointer;
}


.link_boton{
	font-family: Verdana, Arial; font-size: 1em; color: #0f33aa;
	background-color: #efefef;
	padding: 10px;
	border: solid 2px #cccccc;
	border-radius: 8px;
}

.link_boton:hover {
  background-color: yellow;
  cursor: pointer;
}

.btn_normal_pocito{
	font-family: Verdana, Arial; font-size: 1em; color: #ffffff;
	background-color: #248606;
	padding: 10px;
	border: none;
	text-decoration: none;
	border-radius: 5px;
}

.btn_normal_pocito:hover {
  background-color: #2ea908;
  cursor: pointer;
}

.btn_regresar{
	font-family: Verdana, Arial; font-size: 1em; color: #0f33aa;
	padding: 10px;
	border: solid 2px #cccccc;
	text-decoration: none;
	border-radius: 10px;
}

.btn_elegir_tabla{
	font-family: Verdana, Arial; font-size: 1.3em; color: #0f33aa;
	padding: 5px 10px;
	margin: 5px 0px;
	font-weight: bold;
	border: solid 1px #0f33aa;
}

.num_tabla_maletin{
	font-family: Verdana, Arial; font-size: 1.3em; color: #ffffff;
	padding: 5px 10px;
	margin: 5px 0px;
	font-weight: bold;
	border: none;
}

.btn_elegir_tabla:hover {
  background-color: yellow;
  cursor: pointer;
}

button{
	font-size: 0.8em;
	vertical-align: super;
	border-radius: 10px;
	border: solid 1px gray;
}

a.button {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;

    text-decoration: none;
    color: initial;
}

/* Agregados para el menu de hamburguesa el 08-Julio-2025 */

    .carpeta-activa {
      background-color: #fff8cc;
    }

    .maletin-activa {
      background-color: #ffe5e5;
    }

    .navbar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0.875rem 1.25rem;
      background-color: #fff;
      border-bottom: 1px solid #ddd;
      position: sticky;
      z-index: 9999;
	  top: 0;
	  font-family: 'Segoe UI', sans-serif;
    }

    .hamburger {
      font-size: 1.6rem;
      cursor: pointer;
      user-select: none;
      display: block;
    }

    .dropdown {
      position: absolute;
      top: 60px;
      right: 20px;
      width: 180px;
      background-color: #fff;
      border-radius: 8px;
      box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      opacity: 0;
      transform: scaleY(0);
      transform-origin: top;
      transition: transform 0.25s ease, opacity 0.25s ease;
      display: flex;
      flex-direction: column;
    }

    .dropdown.open {
      opacity: 1;
      transform: scaleY(1);
    }

    .dropdown a,
    .menu-horizontal a {
      padding: 0.75rem 1rem;
      text-decoration: none;
      font-size: 1rem;
      color: #333;
      transition: background-color 0.2s;
    }

    .dropdown a:hover,
    .menu-horizontal a:hover {
      background-color: #f0f0f0;
    }

    .dropdown a.active,
    .menu-horizontal a.active {
      font-weight: bold;
      color: #000;
      border-left: 4px solid currentColor;
      background-color: #f9f9f9;
    }

    /* Estilo para menú horizontal visible en pantallas grandes */
    .menu-horizontal {
      display: none;
      gap: 1rem;
    }

    /* Separador (espacio entre las opciones) */
    .menu-separator {
      height: 1px;
      background: #ddd;
      margin: 0.25rem 0;
    }

    /* 📱 Pantallas pequeñas */
    @media (max-width: 768px) {
      html {
        font-size: 15px;
      }

      .dropdown {
        width: 180px;
      }

      .dropdown a {
        font-size: 0.95rem;
        padding: 0.625rem 0.875rem;
      }

      .menu-horizontal {
        display: none;
      }

      .hamburger {
        display: block;
      }
    }

    /* 💻 Pantallas grandes */
    @media (min-width: 769px) {
      .dropdown,
      .hamburger {
        display: none !important;
      }

      .menu-horizontal {
        display: flex;
        align-items: center;
      }

      .menu-horizontal a {
        border-left: none;
        border-bottom: 3px solid transparent;
      }

      .menu-horizontal a.active {
        border-bottom: 3px solid currentColor;
        background-color: transparent;
      }
    }
	
/* Contenedor principal */
.menu-header {
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Contenedor del título */
.menu-titulo-pagina {
  display: flex;
  align-items: center;
  flex-wrap: nowrap; /* <-- Importante: NO permite que se apilen */
  color: #ff6600; /* Naranja fuerte */
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
}

/* Logo */
.menu-logo {
  width: 50px;
  height: 50px;
  margin-right: 12px;
  flex-shrink: 0; /* evita que el logo se reduzca demasiado */
}

/* Texto */
.menu-text {
  line-height: 1.2;
  white-space: nowrap; /* evita saltos de línea si es posible */
}

/* Responsivo: solo reduce tamaño en pantallas pequeñas */
@media (max-width: 768px) {
  .menu-titulo-pagina {
    font-size: 1.5rem;
  }

  .menu-logo {
    width: 48px;
    height: 48px;
    margin-right: 10px;
  }
}

@media (max-width: 480px) {
  .menu-titulo-pagina {
    font-size: 1.2rem;
  }

  .menu-logo {
    width: 45px;
    height: 45px;
    margin-right: 8px;
  }
}
