:root {
  --fondo: #000B29;
  --titulo: #001C60;
  --enfasis: #000B29;
}

@font-face {
  font-family: 'Quiniela';
  src: url('../font/NerkoOne-Regular.otf');
}

html,
body {
  height: 100%;
  font-family: Arial, Helvetica, sans-serif;
  background-image: url("../img/fondo.png");
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  color: white !important;
  background-color: var(--titulo);
  font-size: 12pt;
}

h1 {
  color: black !important;
}

.login {
  display: flex;
  align-items: center;
  background-color: #f5f5f5;
}

.error {
  color: red;
  font-weight: bold;
}

.info {
  color: blue;
  font-weight: bold;
}

.success {
  color: green;
  font-weight: bold;
}

.clear {
  clear: both;
  content: "&nbsp;";
  display: block;
  height: 12pt;
}

.table-responsive {
  border: 1px solid gray;
  border-radius: 5px;
  padding: 5px;
  margin: 5px 0px;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.alert {
  margin: 10px 0px;
}

/* ************************************************************************************************************************* */

.form-signin form {
  background-color: white;
  padding: 10px;
  border-radius: 10px;
  border: 0px solid white;
}

.form-floating label{
  color: black !important;
}

.form-signin {
  max-width: 330px;
  padding: 15px;
}

.form-signin .form-floating:focus-within {
  z-index: 2;
}

.form-signin input[type="text"] {
  margin-bottom: 5px;
  text-align: center;
}

/* ************************************************************************************************************************* */

.main {
  text-align: center;
}

.tiempo {
  position: fixed;
  width: 175px;
  height: auto;
  display: block;
  top: 10px;
  right: 0px;
  left: auto;
  padding: 5px;
  text-align: right;
  border: 1px solid var(--titulo);
  background-color: var(--titulo);
  color: white;
  font-weight: bold;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}

.tiempo span {
  float: left;
}

.datos {
  margin: 100px 10% 10px 10%;
  background-color: rgba(255, 255, 255, .75);
  display: block;
  width: auto;
  height: auto;
  padding: 10px;
  border-radius: 10px;
  text-align: left;
  color: var(--titulo) !important;
}

.datos h1{
  color: var(--enfasis) !important;
}

.datos .form-floating{
  margin: 20px;
}

.partido {
  width: 100%;
  height: auto;
  text-align: center;
  margin: 5px 0px;
  background-color: rgba(255, 255, 255, .5);
  border-radius: 10px;
  padding: 10px 0px;
  color: var(--titulo) !important;
}

.partido div{
  width: 30%;
  height: auto;
  margin: 0px;
  padding: 0px;
}

.partido img {
  width: 100%;
  height: auto;
  max-width: 120px;
  max-height: 80px;
  object-fit: contain;
}

.select {
  border: 5px var(--titulo) solid;
  padding: 5px !important;
  border-radius: 10px;
  width: 33% !important;
  height: 120px !important; 
}

.select label {
  color: var(--enfasis);
}

.select input[type='radio'] {
  display: none;
}

.fecha {
  float: left;
}

.hora {
  float: right;
}

.quiniela{
  background-color: white;
  margin: 10px;
  color: black;
  padding: 10px;
  border-radius: 10px;
  max-width: 600px;
}

.quiniela h1 {
  text-align: center;
}

.datos-quiniela {
  color: black !important;
}

.modal {
  --bs-modal-width: 70% !important;
}

.col {
  width: 45%;
  height: auto;
  display: block;
}

.cright {
  float: right;
}

.cleft {
  float: left;
}

.modal-body {
  background-color: var(--fondo) !important;
}

@media (max-width: 700px) {
  .cleft {
    display: none;
  }

  .cright {
    width: 100%;
  }
}

.ftoken {
  z-index: 1000;
  position: relative;
}

.form-signin form {
  background-color: var(--titulo) !important;
}

.form-signin form h1 {
  color: #F9F6EC !important;
}

.btn-dorado {
  background-color: #03AEEE;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
}

.particulas {
  width: 100%;
  height: 100%;
  background-image: url("../img/particulas.png");
  background-repeat: repeat-y;
  position: fixed;
  background-size: 100%;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 0 !important;
  display: none;
}

.logo {
  width: 100px;
  height: 100px;
  float: left;
  position: fixed;
  bottom: 10px;
  left: 10px;
}

.logoCasino {
  width: 100px;
  height: 100px;
  float: right;
  position: fixed;
  bottom: 10px;
  right: 10px;
}

.logo img {
  width: auto;
  height: 100%;
}

.logoCasino img {
  width: 100%;
  height: auto;
}

/* ************************************************************************************************************************* */

.resultados {
  overflow: auto;
}

.resultados th {
  color: var(--titulo);
}

.resultados .color-morado {
  color: var(--enfasis) !important;
}

.form-check-input[type=radio] {
  display: none;
}

.footer {
  position: fixed;
  bottom: 0;
  text-align: center;
  width: 100%;
}

.footer a {
  color: white;
  text-decoration: none;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 8pt;
}

@media print {
  .no-print {
    display: none;  
  }
}

.resultados .table-responsive {
  background-color: rgba(255, 255, 255, .70);
  padding: 5px;
  margin: 5px 5px;
  color: white !important;
  font-size: 12pt;
  z-index: 1;
  position: relative;
}

/* ************************************************************************************************************************* */

.modal-content {
  background-color: #d7ab53 !important;
}

/* *** Flag Showcase *** */
.flag-showcase {
  height: 200px;
  position: relative;
  overflow: hidden;
  perspective: 900px;
}

.flag-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
}

.flag-slide img {
  height: 150px;
  width: auto;
  max-width: 88%;
  object-fit: contain;
  filter: drop-shadow(0 6px 18px rgba(0,0,0,0.6));
}

@keyframes flagEnter {
  0%   { transform: rotateY(-90deg) scale(0.7); opacity: 0; }
  65%  { transform: rotateY(10deg)  scale(1.08); opacity: 1; }
  100% { transform: rotateY(0deg)   scale(1);    opacity: 1; }
}

@keyframes flagExit {
  0%   { transform: rotateY(0deg)  scale(1);   opacity: 1; }
  100% { transform: rotateY(90deg) scale(0.7); opacity: 0; }
}

@keyframes flagFloat {
  0%, 100% { transform: rotateY(0deg)  scale(1)    translateY(0px); }
  33%       { transform: rotateY(2deg)  scale(1.02) translateY(-5px); }
  66%       { transform: rotateY(-2deg) scale(1.02) translateY(4px); }
}

.flag-slide.active {
  opacity: 1;
  pointer-events: auto;
  animation: flagEnter 0.75s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.flag-slide.active.floating {
  animation: flagFloat 4s ease-in-out infinite;
}

.flag-slide.exiting {
  opacity: 1;
  animation: flagExit 0.5s ease-in forwards;
}