/** Shopify CDN: Minification failed

Line 128:0 Unexpected "}"

**/
/* --- ILLE-LEGAL LOBBY RESPONSIIVISUUS (ANKKUROITU) --- */
.ille-vault-super-wrapper { 
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
  pointer-events: none; 
  z-index: 20; 
}

.crack-button, .gary-notepad, .vault-timer { 
  pointer-events: auto; 
  position: absolute; 
  /* Tämä keskittää elementit tarkasti ankkuripisteeseen */
  transform: translate(-50%, -50%); 
}

/* --- DESKTOP-SIJAINNIT --- */
.vault-timer { 
  left: 79%; /* Vaihdettu kaikki vasemmasta reunasta laskettavaksi */
  top: 62%; 
  color: #ff0000; 
  font-family: monospace; 
  font-size: 38px; /* Kiinteä koko, ei enää kutistu näkymättömiin */
  text-shadow: 0 0 5px #ff0000; 
  white-space: nowrap;
  /* LISÄÄ NÄMÄ RIVIT: Tausta ja kehykset */
  background: rgba(0, 0, 0, 0.85); /* Tumma, 85% peittävä tausta */
  padding: 8px 12px; /* Ilmaa tekstin ympärille */
  border: 1px solid #440000; /* Tummanpunainen reunus */
  border-radius: 4px; /* Hieman pyöristetyt kulmat */
}


.crack-button { 
  left: 7%; 
  top: 67%; 
  background: rgba(0, 0, 0, 0.9); 
  padding: 36px 72px; 
  border: 1px solid #440000; 
  color: #ffd700 !important; 
  text-decoration: none;
  font-weight: bold;
  white-space: nowrap;
  z-index: 30; 
}

.gary-notepad { 
  left: 65%; 
  top: 69%; 
  width: 45px; 
  height: 45px; 
  background: #fefabc; 
  border-left: 6px solid #ffd700; 
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); 
  overflow: hidden; 
  z-index: 30; 
}

.gary-notepad:hover { 
  width: 300px; 
  height: 250px; 
  padding: 15px; 
}
/* --- PIENI PÖYTÄKONE / ISO TABLETTI (900px - 1100px) --- */
@media screen and (min-width: 900px) and (max-width: 1100px) {
  .vault-timer { left: 82%; top: 60%; font-size: 20px; }
  .crack-button { left: 17%; top: 62%; font-size: 14px; }
  .gary-notepad { left: 63%; top: 65%; width: 35px; height: 35px; }
}

/* --- KRIITTINEN VÄLIALUE / PIENI TABLETTI (750px - 899px) --- */
/* Tämä ottaa kiinni juuri sen alueen ennen mobiilihyppyä! */
@media screen and (min-width: 750px) and (max-width: 899px) {
  .vault-timer { left: 80%; top: 56%; font-size: 16px; }
  .crack-button { left: 20%; top: 58%; font-size: 12px; padding: 8px 16px; }
  .gary-notepad { left: 60%; top: 60%; width: 30px; height: 30px; }
}
/* -/* --- MOBIILI-SIJAINNIT (KORJATTU KOOT JA PAIKAT) --- */
@media screen and (max-width: 749px) {
  .vault-timer { 
    left: 80%; 
    top: 28%; 
    font-size: 12px !important; /* Pakotetaan pieni fontti */
    padding: 4px 8px !important; /* Pienennetään laatikon kokoa */
    border-radius: 2px;
  }

  .crack-button { 
    left: 20%; 
    top: 30%; 
    font-size: 11px !important; /* Pieni fontti */
    padding: 8px 16px !important; /* Pakotetaan järkevä padding (ei 72px!) */
    border-radius: 4px;
  }

  .gary-notepad { 
    left: 65%;
    top: 33%; 
    width: 25px !important; /* 16px oli ehkä vähän liian pieni sormelle */
    height: 25px !important; 
    border-left-width: 3px !important; /* Ohennetaan keltaista reunaa */
  }

  .gary-notepad:hover { 
    width: 220px; 
    height: 180px; 
    padding: 10px;
  }
}
  
  /* PAVEL-FIX KORJATTUNA SISÄÄN */
  div[class*="hotspot"], 
  img[src*="hotspot-images"], 
  .ui-chunx-hotspot-content {
    height: auto !important; 
    max-height: 40vh !important; 
    width: 90vw !important; 
    margin: 0 auto !important;
    position: relative !important;
  }
}
/* --- RAFFLE PAGE VIP LOCKOUT STYLES --- */
.vip-lockout-box {
  border: 3px solid #ff0000;
  padding: 30px 20px;
  background: #000;
  text-align: center;
  margin: 20px 0;
  border-radius: 4px;
}

.lockout-title {
  color: #ff0000;
  font-family: 'Courier New', monospace;
  font-size: 26px;
  text-transform: uppercase;
  margin: 0 0 10px 0;
}

.lockout-text {
  color: #ffffff;
  font-size: 16px;
  margin-bottom: 25px;
}

.vip-join-button {
  display: block;
  background: #ffd700;
  color: #000 !important;
  font-weight: bold;
  padding: 18px;
  text-decoration: none;
  text-transform: uppercase;
  border-radius: 2px;
  transition: transform 0.2s;
}

.vip-join-button:hover {
  transform: scale(1.05);
}

.vip-login-link {
  display: inline-block;
  margin-top: 15px;
  color: #999;
  font-size: 13px;
  text-decoration: underline;
}

.vip-access-granted {
  color: #ffd700;
  font-family: monospace;
  font-weight: bold;
  margin-bottom: 15px;
  letter-spacing: 1px;
}

.status-indicator {
  animation: blink-status 1s infinite;
}

@keyframes blink-status {
  0% { opacity: 1; }
  50% { opacity: 0.3; }
  100% { opacity: 1; }
}
/* Oletuksena molemmat piiloon, ettei sivu sekoile ladatessa */
.lobby-desktop, .lobby-mobile {
  display: none !important;
}

/* TYÖPÖYTÄ: Näytetään vain, kun ruutu on yli 768px */
@media screen and (min-width: 769px) {
  .lobby-desktop {
    display: block !important;
  }
}

/* MOBIILI: Näytetään vain, kun ruutu on max 768px */
@media screen and (max-width: 768px) {
  .lobby-mobile {
    display: block !important;
  }
}