:root{}
@font-face{
    font-family: "josefinFont";
    src:url('../Fuentes/JosefinSans.ttf') format('truetype');
} 
html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: sans-serif;
  background: url('../Media/im1.jpg') no-repeat center center fixed;
  background-size: cover;
}

#startBtn {
  position: absolute;
  top: 70%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 10px 20px;
  font-size: 20px;
  background: #ffffff;
  color: #8b7b68;
  border: 2px;
  border-radius: 12px;
  
  border-color: #8b7b68;
  cursor: pointer;
  z-index: 2;
  opacity: 0;
  animation: slideInFade 1.5s ease-out forwards;
  border: 1px solid #8b7b68;
  color: #8b7b68;
  border-radius: 10px;
}

@keyframes slideInFade {
  from { opacity: 0; transform: translate(-50%, 150%); }
  to { opacity: 1; transform: translate(-50%, -50%); }
}

#viewerContainer {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.95);
  z-index: 1;
  overflow: auto;
  text-align: center;
  padding-bottom: 50px;
}

#pdfWrapper {
  position: relative;
  display: inline-block;
}

#pdfViewer {
  display: block;
  max-width: 100%;
  height: auto !important;
}

.pdf-link {
  position: absolute;
  display: block;
  z-index: 10;
  border: 2px dashed transparent;
  text-indent: -9999px;
}

#downloadBtn {
  margin: 20px auto;
  padding: 10px 20px;
  font-size: 16px;
  background-color: #000000;
  color: white;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  display: none;
}

/* Estilo del contador*/
#countdown {
  position: absolute;
  z-index: 10;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 36px;                /* separación entre columnas */
  pointer-events: none;
  font-family: 'josefinFont', sans-serif;
  color: #666362;
}

.cd-block {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cd-value {
  font-size: 25px;
  font-weight: 400;
  letter-spacing: 2px;
  font-family: 'josefinFont', sans-serif;
}

.cd-label {
  margin-top: 6px;
  font-size: 20px;
  letter-spacing: 2px;
  font-family: 'josefinFont', sans-serif;
}

/* mensaje cuando termine la cuenta */
.cd-finished {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 1px;
}

/* Círculo que marca la cantidad de invitados */
#guestMarker {
  position: absolute;
  z-index: 9;              /* debajo de los links y del contador */
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-color: #b0987d;  /* color de relleno, ajusta al tono del diseño */
  pointer-events: none;
  display: none;           /* se muestra solo cuando hay ?inv= */
}
