@font-face {
    font-family: 'gymtimer';
    src: url('gymtimer.otf') format('truetype'); /* Passe den Pfad an */
    /* Weitere Formate (z.B., woff, woff2) können hinzugefügt werden, um die Browser-Kompatibilität zu verbessern */
}

html {
    overflow: auto; /* Versteckt die vertikale Scrollleiste */
}

::-webkit-scrollbar {
    display: none; /* Versteckt die Scrollleiste in Webkit-Browsern */
}

body {
    font-family: gymtimer, sans-serif;
    text-align: center;
    background-color: rgb(191 57 57);

    color: rgb(255, 255, 255);
    margin-top: 0px;
    font-size: 16px;
    min-width: 345px;
    height: 100%;
    margin: 0px;

}

*:focus {
  outline: none !important;

}

input, textarea, select, [contenteditable="true"] {
  caret-color: black !important; /* Caret bleibt sichtbar */
}

#logo {
    width: 200px;
    height: 200px;
    margin-top: 25px;
    margin-bottom: 25px;
}

#timer {

    font-size: 68px;
    background-color: none;
    border-radius: 0px 0px 0px 0px;
    padding-bottom: 0px;
    padding-top: 16px;
    margin-left: 0px;
    margin-right: 0px;
    font-weight: 900;

}

/* ✅ Stopwatch-spezifisches Styling */
#timer.stopwatch {
  font-size: 34px;          /* wegen MM:SS:MMM / HH:MM:SS:MMM */
  color: #ffffff;
  padding-top: 187px;        /* etwas weniger, wirkt mittiger */
  font-weight: 900;
}

/* Stopwatch mit Stunden (HH:MM:SS:MMM) */
#timer.stopwatch.with-hours {
  font-size: 26px;   /* kleiner, damit alles passt */
  padding-top: 190px;
  color: #ffffff;
  font-weight: 900;
}


@media (min-width: 748px) and (min-height: 600px) {
    #timer {

      font-size: 100px;
      padding-top: 25px;
    }
  }



h1 {

    font-size: 100px;
    color: rgb(255, 64, 64);
    font-style: oblique;
    font-family: gymtimer, sans-serif;
    margin-top: 80px;
    margin-bottom: 50px;
}
#roundsDisplay {

    background-color: none;

    font-size: 12px;
    color: rgb(0, 0, 0);
    padding-top: 56px;
    padding-right: 90px;

}

@media (min-width: 748px) and (min-height: 600px) {
    #roundsDisplay {

      font-size: 18px;
      padding-top: 86px;
      padding-right: 140px;
    }
}



#timeround {
    position: fixed;
    width: 230px;
    height: 230px;
    background-image: url("img/timer/gymtimer.webp");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: black;
    display: none;
    font-size: 18px;
    animation: pump 0.3s ease;
  }

#stopwatchround {
  position: fixed;
  background-image: url("img/timer/stopwatch.webp"); /* <-- dein neues Bild */
  background-repeat: no-repeat;
  background-position: center;
  background-size: 320px;
  height: 400px;
  width: 400px;
  margin-top: 30px;
  color: black;
  display: none;
  animation: pump 0.3s ease;
}

#stopwatchTimer{
 font-size: 34px;
 color: white;
 padding-top:187px;

    }


/* Desktop ab 748px */
@media (min-width: 748px) and (min-height: 600px) {
  #timeround {
    width: 350px;
    height: 350px;
    font-size: 24px;
  }
}

@media (min-width: 748px) and (min-height: 600px) {
  #stopwatchround {
    background-size: 420px;

  }
}

@media (min-width: 748px) and (min-height: 600px) {
  #stopwatchTimer {
  font-size: 42px;          /* wegen MM:SS:MMM / HH:MM:SS:MMM */
  color: #ffffff;
  padding-top: 185px;        /* etwas weniger, wirkt mittiger */
  font-weight: 900;

  }
}

@media (min-width: 748px) and (min-height: 600px) {
  #stopwatchround.with-hours {
  font-size: 36px;   /* kleiner, damit alles passt */
  padding-top: 188px;
  color: #ffffff;
  font-weight: 900;

  }
}




#timeround-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 96vh; /* Setzt die Höhe des Containers auf die gesamte Bildschirmhöhe */
}

#menubottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background-color: rgb(255, 64, 64);
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    height: 80px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}


#phaseText {
  font-size: 57px;
  background-color: yellow;
  color: #000000;
  box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.4);
  margin-left: 0px;
  margin-right: 0px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;

  display: flex;
  flex-direction: column-reverse;
  height: 100px;


}

#settings {
   /* display: none; Standardmäßig ausgeblendet */
   position: fixed;
    color: white;
    background-color: rgb(191 57 57);
    top: 0px;
    left: 0;
    right: 0;
    bottom: 0;
    font-size: 25px;
    width: 100%;
    max-width: 400px;
    margin: auto;
    z-index: 1;
    overflow: scroll;
    margin-top: 20px;


}

.sidenav {
  height: 80%;
  width: 0;
  position: fixed;
  top: 20px;
  right: 0;
  background-color: rgb(255, 64, 64);
  overflow-x: hidden;
  overflow-y: auto; /* wichtig bei langen Inhalten */
  transition: width 0.1s ease;
  z-index: 999;
  box-shadow: -2px -2px 6px rgba(0, 0, 0, 0.5);
  border-radius: 10px 0px 0px 10px;
  padding-top: 10px;
}

.sidenav-content {
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none; /* verhindert Klicks während geschlossen */
}

.sidenav.open .sidenav-content {
  opacity: 1;
  pointer-events: auto;
}

.sidenav a{
  padding: 8px 70px 0px 15px;
  text-decoration: none;

  color: #fff;
  display: block;
  transition: 0.3s;
  text-align: left;
  white-space: nowrap;




}


.sidenav a:hover {
  color: #000;
}

.sidenav .closebtn {
  position: absolute;
  top: 20px;
  right: 0px;
  font-size: 35px;
  text-align: right;
  padding: 8px 50px;
  font-family: serif;
  color: black;

}

.closebtn2 img{

font-size: 35px;
color: black;

}




.setlogo{
margin-top: 0px;
background-color: rgb(255, 64, 64);
border-radius: 10px 10px 0px 0px;
padding-top: 8px;
padding-bottom: 10px;
color: #000;
position: fixed;
left: 0;
right: 0;
width: 100%;
margin-left: 0px;
margin-right: 0px;
z-index: 1;

}

.siteTitle{
    margin-top: 0px;
    background-color: rgb(255, 64, 64);
    top: 0;
    padding-top: 8px;
    padding-bottom: 10px;
    color: #000;
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
    font-size: 40px;
    height: 80px;
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.4);
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    }



 #workTime1, #breakTime1, #rounds1, #volume1, #myprofile {
 background-color: rgb(22 22 22);
 border-radius: 10px 10px 10px 10px;
 margin-left: 20px;
 margin-right: 20px;
 padding-top: 15px;
 padding-bottom: 15px;
 padding-left: 25px;
 padding-right: 25px;
 text-align: left;
 margin-bottom: 10px;


}



#fullTimeTimer {
    position: absolute;

    font-size: 15px;
    background-color: none;
    top: 55px;
    right: 35px;
    color: rgb(0, 0, 0);

}

@media (min-width: 748px) and (min-height: 600px) {
    #fullTimeTimer {

      font-size: 21px;
      top: 85px;
      right: 50px;
    }
  }


  #fullTimeTimer2 {
    background-color: rgba(255, 210, 63, 0.08);
    color: #ffd23f;
    border: 1px solid rgba(255, 210, 63, 0.20);
    padding: 8px 10px;
    border-radius: 10px;
  }

  #totalWorkTimeDisplay {
    background-color: rgba(255, 210, 63, 0.08);
    color: rgb(60, 204, 60);
    border: 1px solid rgba(255, 210, 63, 0.20);
    padding: 8px 10px;
    border-radius: 10px;
    margin-top: 10px;
  }



button {
    border-radius: 20%; /* Macht die Buttons rund */
    border: 0px none;
    border-color: rgb(255, 255, 255);
    background-color: none;
    height: 45px;
    box-shadow: 0 0px 0px none;
    text-transform: uppercase;


}

button i{
            color: black;

        }

/* Stil für das Start-Button */
#startButton {
    background-color: rgb(255, 64, 64);
    color: grey; /* Schriftfarbe für Start-Button */
    width: 45px; /* Breite des runden Buttons anpassen */
    height: 45px; /* Höhe des runden Buttons anpassen */

}

/* Stil für andere Buttons (Pause, Continue, Stop) */
#pauseButton,
#resumeButton {

    width: 45px; /* Breite der runden Buttons */
    height: 45px; /* Höhe der runden Buttons */
    background-color: rgb(255, 64, 64);
    color: grey; /* Schriftfarbe für andere Buttons */

}
#startButton i{

    padding-left: 8px;

}


#resumeButton i{

    padding-left: 9px;

}

#workTimeValue, #breakTimeValue, #roundsValue, #setsValue, #pauseAfterSetValue {
font-size: 40px;

}

#workTimeValue2, #breakTimeValue2, #pauseAfterSetValue2 {
font-size: 15px;


}

#slider-container {
    position: relative;
    overflow: hidden;
    font-family: gymtimer, sans-serif;
    text-align: center;
    background-color: #1f1f1f;
    background-image: url("img/gymbackground2.webp");

    color: rgb(255, 255, 255);
    margin-top: 0px;
    font-size: 16px;
    min-width: 345px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    height: 100%;
    margin: 0px;
    z-index: 2;
}

.button-container {
    display: flex; /* Aktiviert Flexbox */
    justify-content: flex-start; /* Aligns items to the start of the container */
    gap: 10px;
    padding-bottom: 10px;
}

.button-container button {
    margin-right: 10px; /* Fügt rechts an jedem Button einen Abstand hinzu */
}

/* Entfernen Sie den Abstand am letzten Button im Container */
.button-container button:last-child {
    margin-right: 0;
}


/********** Range Input Styles **********/
    /*Range Reset*/
    input[type="range"] {
       -webkit-appearance: none;
        appearance: none;
        background: transparent;
        cursor: pointer;
        width: 15rem;


    }

    /* Removes default focus */
    input[type="range"]:focus {
      outline: none;
    }

    /***** Chrome, Safari, Opera and Edge Chromium styles *****/
    /* slider track */
    input[type="range"]::-webkit-slider-runnable-track {
       background-color: #ff4040;
       border-radius: 0.5rem;
       height: 0.8rem;
    }

    /* slider thumb */
    input[type="range"]::-webkit-slider-thumb {
      -webkit-appearance: none; /* Override default look */
       appearance: none;
       margin-top: -7px; /* Centers thumb on the track */

       /*custom styles*/
       background-color: white;
       height: 25px;
       width: 25px;
       border-radius: 50%;
    }

    input[type="range"]:focus::-webkit-slider-thumb {
      border: 0px solid #ff4040;
      outline: 0px solid #ff4040;
      outline-offset: 0rem;

    }

    /******** Firefox styles ********/
    /* slider track */
    input[type="range"]::-moz-range-track {
       background-color: #ff4040;
       border-radius: 0.5rem;
       height: 0.5rem;
    }

    /* slider thumb */
    input[type="range"]::-moz-range-thumb {
       border: none; /*Removes extra border that FF applies*/
       border-radius: 0; /*Removes default border-radius that FF applies*/

       /*custom styles*/
       background-color: #ff4040;
       height: 2rem;
       width: 1rem;
    }

    input[type="range"]:focus::-moz-range-thumb {
      border: 0px solid #ff4040;
      outline: 0px solid #ff4040;
      outline-offset: 0rem;
    }

   /* Stil für andere Buttons (Pause, Continue, Stop) */

#stopButton, #skipRoundButton {
    width: 45px; /* Breite der runden Buttons */
    height: 45px; /* Höhe der runden Buttons */
    background-color: rgb(255, 64, 64);
    color: black; /* Schriftfarbe für andere Buttons */


}

/* Stil für den Toggle-Settings-Button */
#toggleSettingsButton {
    border-radius: 20%; /* Macht den Toggle-Settings-Button rund */
    width: 45px; /* Breite des runden Buttons anpassen */
    height: 45px; /* Höhe des runden Buttons anpassen */
    background-color: rgb(255, 64, 64);
    color: black; /* Schriftfarbe für den Toggle-Settings-Button */

}



    #settingslogo {
    border-radius: 20%; /* Macht den Toggle-Settings-Button rund */
    width: 45px; /* Breite des runden Buttons anpassen */
    height: 45px; /* Höhe des runden Buttons anpassen */
    background-color: rgb(255, 64, 64);
    color: black; /* Schriftfarbe für den Toggle-Settings-Button */


}

#toggleMenuButton {
    border-radius: 20%; /* Macht den Toggle-Settings-Button rund */
    width: 45px; /* Breite des runden Buttons anpassen */
    height: 45px; /* Höhe des runden Buttons anpassen */
    background-color: rgb(255, 64, 64);
    color: black; /* Schriftfarbe für den Toggle-Settings-Button */

}



#muteButton {
    border-radius: 20%; /* Macht den Toggle-Settings-Button rund */
    width: 40px; /* Breite des runden Buttons anpassen */
    height: 40px; /* Höhe des runden Buttons anpassen */
    background-color: rgb(255, 64, 64);
    color: black; /* Schriftfarbe für den Toggle-Settings-Button */
    font-size: 8px;


}

.toggle-label {
position: relative;
display: inline-block;
width: 50px;
height: 26px;

}

.toggle-label input[type="checkbox"] {
 display: none;
}

/* Der Hintergrund des Schalters */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 34px;
}

/* Der weiße Punkt (Dot) */
.slider:before {
  position: absolute;
  content: "";
  height: 22px;
  width: 22px;
  left: 2px;

  /* Zentrierungstrick: */
  top: 50%;
  /* Verschiebt den Punkt um die Hälfte seiner eigenen Höhe nach oben */
  transform: translateY(-50%);

  background-color: white;
  transition: .4s;
  border-radius: 50%;
}

/* Hintergrundfarbe wenn aktiv */
input[type="checkbox"]:checked + .slider {
  background-color: rgb(255, 64, 64);
}

/* Bewegung des Punktes wenn aktiv */
input[type="checkbox"]:checked + .slider:before {
  /* WICHTIG: translateY(-50%) muss erhalten bleiben, damit er nicht absinkt! */
  transform: translateX(24px) translateY(-50%);
}

.bottomSettingsPage i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
    }

.bottomSettingsPage {
    background-color: rgb(255, 64, 64);
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

.bottomDashboardPage i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
    }

.bottomDashboardPage {
    background-color: rgb(255, 64, 64);
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

.popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  background-color: none;
  z-index: 1;
  justify-content: center;
  align-items: center;
  text-align: center;
  z-index: 2;
  animation: pump 0.3s ease;

}

.popup-content {
  background-color: none;
  border-radius: 5px;




}

#closeButton {
  position: fixed;
  bottom: 0;
  height: 50px;
  transform: translateX(-50%);
  background-color: #FF4040;
  border-radius: 0px 0px 0px 0px;
  font-size: 20px;
  cursor: pointer;
  font-family: serif;
  padding: 15px;
  width: 100%;
  font-family: gymtimer, sans-serif;
  text-align: center;

}

.popupimg {

padding-left: 40px;
padding-right: 40px;
padding-top: 10px;
}




#shareButton{
  background-color: #FF4040;
  padding: 15px;
  margin-right: 10px;
  border: none;
  font-size: 20px;
  border-radius: 5px;
  cursor: pointer;
  width: 100px;
}

#gymypopup {
    font-size: 35px;
    color: black;
}
#checkpopup {
    margin-top: 0px;
    padding-top: 0px;

    color: #3ccc3c;
}


#pointsPopup {
    display: flex;
    justify-content: center; /* Zentriert die Inhalte horizontal */
    align-items: center; /* Zentriert die Inhalte vertikal */
    text-decoration: none;
    justify-content: center;
}

#pointsPopup img{

    width: 32px;
    height: 32px;
}




#profileDropdown {
background-color: rgb(255, 255, 255);
font-family: 'gymtimer';
font-size: 18px;
width: 38%;

border-radius: 5px;
padding: 13px 10px 13px 10px;
border: none;
outline: none;
scroll-behavior: smooth;

}

#country-register, #country-select {
    background-color: rgb(131 37 37);
    font-family: 'roboto';
    font-size: 15px;
    width: 250px;
    margin-bottom: 15px;
    margin-top: 15px;
    color: white;
    border-radius: 5px;
    padding: 13px 10px 13px 10px;
    border: none;
    outline: none;
    scroll-behavior: smooth;

    }



    ::placeholder {
      color: black;
      opacity: 0.3; /* Firefox */


    }

#current-password, #old-password, #new-password, #confirm-password, #confirmPassword, #newNickname, #email-login,  #new-email, #password-login, #email-register, #password-register, #nickname-register, #password-confirm, #access-code{
    background-color: white;
    color:#000;
    width: 250px;
    font-size: 15px;
    font-family: 'roboto';
    border-radius: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 10px 0px 10px 0px;
    border: none;
    outline: none;
    text-align: center;

    }

    #email-reset, #walletNicknameModalInput {
        background-color: white;
        color:#000;
        width: 87%;
        font-size: 15px;
        font-family: 'gymtimer';
        border-radius: 5px;
        margin-top: 5px;
        margin-bottom: 15px;
        padding: 10px 0px 10px 0px;
        border: none;
        outline: none;
        text-align: center;


    }



 #current-password[type=password], #old-password[type=password], #new-password[type=password], #confirm-password[type=password], #confirmPassword[type=password], #new-email[type=text], #newNickname[type=text], #access-code[type=text], #email-login[type=text],  #new-email[type=text], #email-reset[type=text], #password-login[type=password], #email-register[type=email], #password-register[type=password], #password-confirm[type=password], #nickname-register[type=text] {
    text-align: center;


}

::placeholder {
color: black;
opacity: 0.3; /* Firefox */


}







#profileDisplay{
background-color: rgb(135 40 40);
font-size: 20px;
border-radius: 10px 10px 10px 10px;
margin-top: 20px;
margin-bottom: 15px;



}

#achievementsPage {
/* display: none; Standardmäßig ausgeblendet */
        color: white;
        background-color: rgb(191 57 57);
        margin-top: 20px;
        font-size: 25px;
        width: 100%;
        margin-left: 0px;
        margin-right: 0px;




}


.achievement-container2, #achievementsList {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Zentriert die Flex-Items horizontal */
    max-width: 400px;
    margin: auto;
}

.achievement {
    flex: 1 1 20%; /* Jedes Element passt sich flexibel an, aber nicht breiter als 30% */
    margin: 5px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 10px;
    padding: 5px;
    margin-bottom: 20px;
    background-color: rgba(0, 0, 0, 0.8);
    border-radius: 10px 10px 10px 10px;
    max-width: 30%; /* Maximale Breite, um sicherzustellen, dass nicht mehr als drei Elemente in einer Zeile erscheinen */
}
.achievement img{

width: 70%;
}

.achievement2 {
    flex: 1 1 46%; /* Jedes Element passt sich flexibel an, aber nicht breiter als 30% */
    margin: 5px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 10px;
    padding: 5px;
    background-color: rgb(22 22 22);
 border-radius: 10px 10px 10px 10px;
    max-width: 46%; /* Maximale Breite, um sicherzustellen, dass nicht mehr als drei Elemente in einer Zeile erscheinen */
}
.achievement2 img{

width: 90%;
}

.achievementDaily {
    flex: 1 1 20%; /* Jedes Element passt sich flexibel an, aber nicht breiter als 30% */
    margin: 3px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 10px;
    padding: 5px;
    margin-bottom: 20px;
    background-color: rgb(135 40 40);
    border-radius: 10px 10px 10px 10px;
    max-width: 30%; /* Maximale Breite, um sicherzustellen, dass nicht mehr als drei Elemente in einer Zeile erscheinen */
}

.achievementDaily img{

    width: 70%;
    }

.topBox {
    display: flex;

    background-color: rgb(22 22 22);
    width: 100%;
    padding: 20px;
    margin-left: 12px;
    margin-right: 12px;
    margin-bottom: 10px;
    height: 100px;
    border-radius: 10px;
    background-image: url(img/achievements_logo.webp);
    background-repeat: no-repeat;
    background-position: -20px top;
    animation: pump 0.3s ease;

}

.topBox2 {
    display: flex;

    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    margin-right: 12px;
    margin-bottom: 10px;
    height: 160px;
    border-radius: 10px;
    background-image: url(img/voucher_logo.webp);
    background-repeat: no-repeat;
    background-position: -20px top;

}
#achievementCount2 {

    font-size: 20px;
    margin-top: 25px;
    text-transform: uppercase;
   margin-left: 140px;
}

#achievementCount {

    font-size: 19px;
    margin-top: 25px;
    text-transform: uppercase;
   margin-left: 140px;
}

.special-font {

    font-family: 'roboto';
    font-weight: bold;
}


.achievementClaim {
  font-size: 10px;
  padding: 15px;
  margin: 15px;
  border: solid 2px black;
  border-radius: 10px;
  width: 100%;
  position: relative; /* Shine braucht das */
  overflow: hidden;   /* Damit Shine nicht rausguckt */
  background-image: url('https://app.gymbattlz.com/appdata/img/shop_items/shopgiftbackground.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;

}

.achievementClaim::after {
  content: '';
  position: absolute;
  top: -20%;
  left: 0;
  width: 20%; /* Schmaler Streifen, passe ggf. an */
  height: 140%;
  background: rgba(255, 255, 255, 0.007);
  transform: translateX(-100%) skewX(-16deg);
  animation: achievement-claim-shine 10s infinite linear;
  z-index: 2;
  pointer-events: none;
  border-radius: 10px;
}

@keyframes achievement-claim-shine {
  0%   { transform: translateX(-100%) skewX(-16deg);}
  22%  { transform: translateX(600%) skewX(-16deg);}
  100% { transform: translateX(600%) skewX(-16deg);}
}

/* Damit Bilder im Container nicht gestört werden */
.achievementClaim img {
  width: 20%;
  position: relative;
  z-index: 1;
  background-color: #00000061;
  padding: 10px;
  border-radius: 8px;
}

#claimButton {

    background-color: green;
    color: white;
    border-radius: 0px 0px 10px 10px;
    font-size: 20px;
    cursor: pointer;
    font-family: serif;
    border-radius: 5px;
    padding: 0px;
    width: 100px;
    font-family: gymtimer, sans-serif;
    text-align: center;
    box-shadow: 0 3px rgb(135 40 40);

}

#claimButton:disabled {
    background-color: grey;
    color: white; /* Ändert die Textfarbe, falls gewünscht */
    cursor: not-allowed;
}

.closebottom {

        background-color: rgb(255, 64, 64);

        margin-left: 0px;
        margin-right: 0px;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
        color: black;
        padding: 8px;
        box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

.achievement-text{
color: grey;
}

.closebottom i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

#resetPasswordButton{

background-color: none;
background: none;
font-size: 10px;
font-family: 'roboto';
}

#resetPasswordButton:hover {

    color: white;
}


.modal-confirmNotification, .submitChange,  .modal-confirmSettings, .buddyUpgradeButton, .select-button, .deselect-button, .buttonAll, .buttonAll2, .modal-confirmNews, .modal-confirm, .modal-confirmLogin, .modal-cancel, .modal-cancelLogin, #claimAllButton, #deleteSubmit, #closeDelete, #saveSettingsButton, #redeemButton, #fb-logout-button, #generateLinkButton, #copyButton, .tournamentRewardButton, #login-btn, #signup-btn, #registerSubmit {

background-color: rgb(255, 64, 64);
padding: 10px;
font-style: normal;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
display: inline-block;
margin: 0 auto;
width: 120px;
text-decoration: none;
color: white;
font-family: gymtimer, sans-serif;
font-size: 15px;
box-shadow: 0 3px rgb(135 40 40);
}


#delete-profile-button, #logout-button, #change-password-button, #change-email-button  {

background-color: rgb(255, 64, 64);
padding: 10px;
font-style: normal;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
display: inline-block;
margin: 0 auto;
width: 100%;
text-decoration: none;
color: white;
font-family: gymtimer, sans-serif;
font-size: 15px;
box-shadow: 0 3px rgb(135 40 40);
}

#loginSubmit, #leaveGymButton {

background-color: rgb(255, 64, 64);

font-style: normal;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
display: inline-block;
margin: 0 auto;
width: 100%;
text-decoration: none;
color: white;
font-family: gymtimer, sans-serif;
font-size: 20px;
box-shadow: 0 3px rgb(135 40 40);
margin-top: 5px;
}

#uploadProfilePictureBtn {

    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 180px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    margin-bottom: 20px;
    }



.modal-confirmNotification:hover, .submitChange:hover, #change-password-button:hover, #change-email-button:hover, .customUploadButtonGymwars:hover, .modal-confirmSettings:hover, #customUploadButton:hover, #uploadProfilePictureBtn:hover, .buddyUpgradeButton:hover, .select-button:hover, .deselect-button:hover, .buttonAll:hover, .buttonAll2:hover, .modal-confirmNews:hover, .modal-confirm:hover, .modal-cancel:hover,.modal-confirmLogin:hover, .modal-cancelLogin:hover, #claimAllButton:hover, #deleteSubmit:hover, #closeDelete:hover, #delete-profile-button:hover, #logout-button:hover, #saveSettingsButton:hover, #redeemButton:hover, #fb-logout-button:hover, #generateLinkButton:hover, #copyButton:hover, .tournamentRewardButton:hover, #login-btn:hover, #leaveGymButton:hover,  #signup-btn:hover, #registerSubmit:hover, #loginSubmit:hover {

    background-color: #007bff;
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transition: transform 330ms ease-in-out;

}

.modal-confirmNotification:active, .submitChange:active, #change-password-button:active, #change-email-button:active, .customUploadButtonGymwars:active, .modal-confirmSettings:active, #customUploadButton:active, #uploadProfilePictureBtn:active, .buddyUpgradeButton:active, .select-button:active, .deselect-button:active, .buttonAll2:active,  .modal-confirmNews:active, .modal-confirm:active, .modal-cancel:active, .modal-confirmLogin:active, .modal-cancelLogin:active, #claimAllButton:active, #deleteSubmit:active, #closeDelete:active, #delete-profile-button:active, #logout-button:active, #saveSettingsButton:active, #redeemButton:active, #fb-logout-button:active, #generateLinkButton:active, #copyButton:active, .tournamentRewardButton:active, #login-btn:active, #leaveGymButton:active,  #signup-btn:active, #registerSubmit:active, #loginSubmit:active {

    background-color: #007bff;
    color: white;
}


.profile-button-row {
  display: flex;
  gap: 14px;
  justify-content: center;
  align-items: center;
  margin: 0px 0 20px 0;
  flex-wrap: wrap;
}
.profile-button-row button {
  padding: 8px 14px;
  border-radius: 7px;
  background: #333;
  color: #fff;
  border: none;
  transition: background 0.2s;
  min-width: 130px;
  cursor: pointer;
  font-size: 15px;
}
.profile-button-row button:hover {
  background: #ff4040;
}


.profile-header {
    display: flex;
    align-items: center;
    gap: 10px; /* Abstand zwischen Dropdown und Button */
    margin-bottom: 10px;
    background-color: rgb(22 22 22);
    padding: 10px;
    margin-left: 20px;
    margin-right: 20px;
    border-radius: 8px;
    justify-content: flex-start;
}

.profile-header select {
    padding: 5px 10px;
    font-size: 14px;
}

#addLink {
    color: white;
    text-decoration: none;
    font-size: 20px;
    display: flex;
    background-color: rgb(255, 64, 64);
    gap: 5px;
    padding: 10px;
    border-radius: 5px;
    height: 25px;
    align-items: center;
    box-shadow: 0 3px rgb(135 40 40);
}

#changeCountryBtn {

    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;

    box-shadow: 0 3px rgb(135 40 40);
    }





#changeCountryBtn:hover {
    background-color: #007bff;
}

#changeCountryBtn:active {
background-color: #007bff;
color: white;
}

#deleteSubmit, #closeDelete, #nicknameSubmit, #closeNickname{

background-color: rgb(255, 64, 64);
padding: 10px;
font-style: normal;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
display: inline-block;
margin: 0 auto;
width: 120px;
text-decoration: none;
color: white;
font-family: gymtimer, sans-serif;
font-size: 20px;

}

#deleteSubmit:hover, #closeDelete:hover, #nicknameSubmit:hover, #closeNickname:hover{
    background-color: #007bff;
}

#deleteSubmit:active, #closeDelete:active, #nicknameSubmit:active, #closeNickname:active{
    background-color: #007bff;
}

#login-btn:active, #signup-btn:active {
    background-color: #007bff;
    color: white;

}


.removeFriendButton{

    background-color: rgb(255, 0, 0);
    padding: 5px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    height: 18px;

    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 12px;
    margin-left: 10px;
    min-height: 30px;

    }


    #friendsList {
    display: flex; /* Verwende Flexbox */
    flex-direction: column; /* Elemente vertikal anordnen */
    align-items: left; /* Horizontales Zentrieren der Kind-Elemente */
    width: 100%; /* Optional: Setzt die Breite des Containers */
    color: #000;
    justify-content: center;


}



#leaderboard {

    color: #000;
    max-width: 366px;
    margin: auto;
    padding: 20px;
    margin-top: 275px;

}

#countdownTimerTournament {

    background-color: #000;
    font-size: 15px;
    padding: 5px;
    width: 100%;
    position: fixed;
    top: 98px;
    z-index: 2;

}

#tournamentStatus {

    padding-top: 20px;
}

.scrollableLeaderboardList {
  /*  max-height: 350px; /* Adjust based on your design needs */
    overflow-y: auto; /* Enables vertical scrolling */
    padding-top: 5px; */
    border: 0px solid #ccc; /* Optional: adds a border around the scrollable area */
    border-radius: 10px; /* Optional: rounds the corners of the scrollable area */
    background-color: none;

}

.scrollableFriendsList {
    min-height: 50px; /* Adjust based on your design needs */
    overflow-y: auto; /* Enables vertical scrolling */

    border: 0px solid #ccc; /* Optional: adds a border around the scrollable area */
    border-radius: 10px; /* Optional: rounds the corners of the scrollable area */
    background-color: none;
}

.buddy-list{
    max-height: 300px;
    overflow-y: auto; /* Enables vertical scrolling */
    margin-top: 10px;
    margin-bottom: 20px;
    border-radius: 8px; /* Optional: rounds the corners of the scrollable area */
    background-color: rgb(135 40 40); /* Optional: background color */
    color: #000;
    font-size: 10px;
    box-shadow:
    inset 0 6px 6px -6px rgba(0, 0, 0, 0.4),   /* oben */
    inset 0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.scrollableAGBS {
    max-height: 250px; /* Adjust based on your design needs */
    overflow-y: auto; /* Enables vertical scrolling */
    padding-top: 70px;
    margin-top: 10px;
    margin-left: 40px;
    margin-right: 40px;
    border: 1px solid #ccc;/* Optional: adds a border around the scrollable area */
    border-radius: 8px; /* Optional: rounds the corners of the scrollable area */
    background-color: #f0f0f0; /* Optional: background color */
    color: #000;
    font-size: 10px;
}


#upgradeButton {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    height: auto;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 20px;
    box-shadow: 0 3px rgb(135 40 40);

    }

#upgradeButton:hover {
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    background-color: #007bff;
    transition: transform 330ms ease-in-out;
}


#editProfileButton, #deleteProfileButton, #deleteProfileButton2, #startButton2, #playProfileButton {

background-color: rgb(255, 64, 64);
padding: 13px;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
width: 45px;
font-family: gymtimer, sans-serif;
font-size: 15px;
box-shadow: 0 3px rgb(135 40 40);

}




.profile-details {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s ease;
  margin: 0 20px;
  border-radius: 10px;
  background: rgba(0,0,0,0.15);
}
.profile-details.expanded {
  border-radius: 0px 0px 10px 10px;
}



.playProfileButton2 {

background-color: rgb(255, 64, 64);
padding: 13px;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;

font-family: gymtimer, sans-serif;
font-size: 15px;
box-shadow: 0 3px rgb(135 40 40);
margin-right: 20px;
height: 40px;
}

#deleteProfileButton3 {

background-color: rgb(255, 64, 64);
margin-left: 15px;
margin-top: -5px;
border-radius: 5px 5px 5px 5px;
text-align: center;
text-decoration: none;
display: inline-block;
width: 38px;
height: 35px;
font-family: gymtimer, sans-serif;
font-size: 20px;
box-shadow: 0 3px rgb(135 40 40);
}

#multiplierArea {
    position: fixed; /* Fixierte Positionierung */
    top: 113px; /* 200px vom oberen Rand entfernt */

    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    background-image: url(img/multiplier_icon.webp);
    background-size: 42px 42px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 42px;
    height: 42px;
    z-index: 1;
    margin-left: 210px;
    margin-top: -10px;


}

#userProfile {
    position: fixed; /* Fixierte Positionierung */
    top: 45px; /* 200px vom oberen Rand entfernt */
    left: 5px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    width: 62px;
    height: 100px;

}



#userProfileImage{
    position: relative;
    top: 50px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 4px solid #FF4040;
    left: 3px;
    animation: pump 0.3s ease;
    box-shadow: 0px 0px 3px rgb(135 40 40);
}

#userProfileBadge{
    position: relative;
    width: 24px !important;
    height: 24px !important;
    top: 110px;
    left: 25px;
    z-index: 1;
    border: 2px solid #FF4040;
    border-radius: 50%;
    animation: pump 0.3s ease;
    object-fit: cover;
}



.multiplierDisplay {

    padding-right: 0px;
    padding-top: 2px;
    align-items: center; /* Zentriert den Inhalt vertikal */
    justify-content: center; /* Zentriert den Inhalt horizontal */
    font-size: 10px;

    }


.multiplierDisplay2 {


    align-items: center; /* Zentriert den Inhalt vertikal */
    justify-content: center; /* Zentriert den Inhalt horizontal */
    font-size: 16px;
    background-color: rgb(128 128 128 / 63%);

    margin: auto;
    border-radius: 4px;
    padding: 4px;

    }


    #pointsbarArea {
        position: fixed; /* Fixierte Positionierung */
        top: 115px; /* 200px vom oberen Rand entfernt */
        display: flex;
        flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
        justify-content: center; /* Zentriert die Kinder vertikal */
        align-items: left; /* Zentriert die Kinder horizontal */
        background-image: url(img/pointsbar.webp);
        background-size: 232px 41px; /* Setze die Größe des Hintergrundbildes */
        background-repeat: no-repeat;
        width: 232px;
        height: 41px;
        left: 0;
        right: 0;
        margin: auto;


    }

    .pointsbarDisplay {
        position: fixed;
        padding-left: 45px;
        padding-top: 0px;


        }

        .pointsbarDisplay2 {
            position: fixed;
            padding-left: 134px;
            padding-top: 2px;

            }


.rankArea {
    position: fixed; /* Fixierte Positionierung */
    bottom: 80px; /* 200px vom oberen Rand entfernt */
    right: 5px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    width: 55px;
    height: 55px;


}

.rankArea img{
    width: 55px;
    height: 55px;

}



.levelArea {
    position: fixed; /* Fixierte Positionierung */
    bottom: 80px; /* 200px vom oberen Rand entfernt */
    right: 60px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    background-image: url(img/level/level_infinity.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    color: black;


}

.levelArea img{
    width: 55px;
    height: 55px;

}


.rankAreaMenu {
    position: absolute; /* Fixierte Positionierung */
    top: 145px; /* 200px vom oberen Rand entfernt */
    right: 165px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    width: 55px;
    height: 55px;

}

.rankAreaMenu img{
    width: 55px;
    height: 55px;

}



.levelAreaMenu {
    position: absolute; /* Fixierte Positionierung */
    top: 145px; /* 200px vom oberen Rand entfernt */
    right: 100px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    background-image: url(img/level/level_infinity.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    color: black;


}

.levelAreaMenu img{
    width: 55px;
    height: 55px;

}

#currentBuddy {
    position: fixed; /* Fixierte Positionierung */
    bottom: 90px; /* 200px vom oberen Rand entfernt */
    left: 15px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    width: 65px;
    height: 65px;
    border: solid 3px white;
    border-radius: 5px;
    animation: pump 0.3s ease;


}

#currentBuddy img{
    width: 65px;
    height: 65px;

}

#tournamentButtonArea2 {
    position: fixed; /* Fixierte Positionierung */
    top: 180px; /* 200px vom oberen Rand entfernt */
    right: 6px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    background-color: none;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#gymWarsButtonArea {
    position: fixed; /* Fixierte Positionierung */
    bottom: 60px; /* 200px vom oberen Rand entfernt */
    left: 90px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    background-color: none;
    width: 55px;
    height: 55px;


}

#gymWarsButtonArea2 {
    position: fixed; /* Fixierte Positionierung */
    bottom: 84px; /* 200px vom oberen Rand entfernt */
    left: 143px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */

    background-image: url(img/studio_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#gymWarsButtonArea2:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}

/* GymWars: gesperrter Zustand */
#gymWarsButtonArea2.locked {
  filter: grayscale(100%);
  opacity: 0.5;
  cursor: not-allowed;
  animation: none;           /* Animation aus */
}
#gymWarsButtonArea2.locked:active {
  background-size: 55px 55px; /* Kein "Shrink" beim Tippen */
}


#pvpButtonArea.locked {
  filter: grayscale(100%);
  opacity: 0.5;
  cursor: not-allowed;
  animation: none;
}

#pvpButtonArea.locked:active {
  background-size: 55px 55px; /* kein Klick-Feedback */
}

#battlepassButtonArea {
    position: fixed; /* Fixierte Positionierung */
    bottom: 60px; /* 200px vom oberen Rand entfernt */
    left: 90px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    background-color: none;
    width: 55px;
    height: 55px;


}

#battlepassButtonArea2 {
    position: fixed; /* Fixierte Positionierung */
    top: 220px; /* 200px vom oberen Rand entfernt */
    left: 75px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */

    background-image: url(img/pass_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#battlepassButtonArea2:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}


#rankingButtonArea {
    position: fixed; /* Fixierte Positionierung */
    bottom: 60px; /* 200px vom oberen Rand entfernt */
    left: 90px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    background-color: none;
    width: 55px;
    height: 55px;


}

#rankingButtonArea2 {
    position: fixed; /* Fixierte Positionierung */
    bottom: 89px; /* 200px vom oberen Rand entfernt */
    left: 90px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */

    background-image: url(img/world_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#rankingButtonArea2:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}

#mainCountdownTimer{
    width: 45px;
    margin-top: 40px;
    margin-left: 2px;
    font-size: 8px;
    z-index: 9999;
    background-color: black;
    color: white;
    padding: 3px;
    border-radius: 5px 5px 5px 5px;
    font-family: 'roboto';


}

.multiplier-timer {

    margin-top: 45px;

    font-size: 8px;
    z-index: 9999;
    background-color: black;

    padding: 3px;
    border-radius: 5px 5px 5px 5px;
    font-family: 'roboto';

}

#tournamentButtonArea {
    position: absolute; /* Fixierte Positionierung */

    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */

    background-image: url(img/cup.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#tournamentButtonArea:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}

#newsButtonArea {
    position: fixed; /* Fixierte Positionierung */
    top: 130px; /* 200px vom oberen Rand entfernt */
    right: 5px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    align-items: flex-start; /* Ausrichtung der Buttons am Anfang (links) */
    background-image: url(img/news_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;
}

#newsButtonArea:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}

#notificationButtonArea {
    position: fixed; /* Fixierte Positionierung */
    top: 30px; /* 200px vom oberen Rand entfernt */
    left: 10px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    align-items: flex-start; /* Ausrichtung der Buttons am Anfang (links) */
    background-image: url(img/notification_icon.webp);
    background-size: 45px 45px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 45px;
    height: 45px;
    animation: pump 0.3s ease;
    z-index: 1;
}

#notificationButtonArea:active {
    width: 45px; /* Macht das div beim Klicken 3px schmaler */
    height: 45px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 45px 45px; /* Passt die Größe des Hintergrundbildes an */
}

#dailysArea {
    position: fixed; /* Fixierte Positionierung */
    top: 160px; /* 200px vom oberen Rand entfernt */
    left: 75px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    align-items: flex-start; /* Ausrichtung der Buttons am Anfang (links) */
    background-image: url(img/dailys_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;
}

#dailysArea:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}


#active-game-container {
    position: fixed !important;
    top: 246px !important;
    right: 6px !important;

    display: flex;
    flex-direction: column;      /* vertikal stapeln */
    justify-content: flex-start; /* immer oben anfangen */
    align-items: flex-start;     /* links ausrichten */

    /* Nimm Höhe und Breite lieber weg, damit sich der Container dynamisch anpasst */
    width: auto;
    height: auto;
    padding: 0;                  /* kein zusätzlicher Innenabstand */
    background: none;            /* falls vorher ein Background war */
  }




#profileButtonArea {
    position: fixed; /* Fixierte Positionierung */
    top: 190px; /* 200px vom oberen Rand entfernt */
    left: 10px; /* 200px vom linken Rand entfernt */
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    align-items: flex-start; /* Ausrichtung der Buttons am Anfang (links) */
}


.profile-button {
    width: 55px; /* Setze eine feste Breite */
    height: 55px; /* Setze eine feste Höhe, gleich der Breite für einen Kreis */
    display: flex;
    align-items: center; /* Zentriert den Inhalt vertikal */
    justify-content: center; /* Zentriert den Inhalt horizontal */
    padding: 30px 0 0; /* Erhöht den oberen Padding um 3px */
    overflow: hidden; /* Versteckt überstehenden Text */
    font-size: 8px; /* Anpassung der Schriftgröße, falls notwendig */
    text-overflow: ellipsis; /* Zeigt '...' bei überstehendem Text */
    white-space: nowrap; /* Verhindert Zeilenumbrüche im Text */
    background-image: url(img/quickprofil_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    background-color: Transparent;
    color: white;
    margin: 0px;
    font-family: 'roboto';
    font-weight: bold;
    animation: pump 0.3s ease;

}


.profile-button:hover {

    transform: scale(0.98);
    transition: all .2s ease-in-out;
}

input.profile-checkbox {

    transform: scale(1.3);
      margin: 3px;

}

.toggle-small {
  width: 30px;
  height: 16px;
  position: relative; /* Sicherstellen, dass der Container die Basis ist */
  display: inline-block;
}

.toggle-small .slider:before {
  height: 12px;
  width: 12px;
  left: 2px;

  /* Wir nutzen top + translateY für die perfekte Mitte */
  top: 50%;
  transform: translateY(-50%);

  /* bottom: 2px entfernen wir, da es mit transform kollidiert */
  bottom: auto;
}

.toggle-small input[type="checkbox"]:checked + .slider:before {
  /* Hier müssen wir translateX UND translateY kombinieren */
  transform: translateX(14px) translateY(-50%);
}


.siteBackground {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgb(191 57 57);
    z-index: -1;

    }




#dashboard {
/* display: none; Standardmäßig ausgeblendet */
        position: fixed;
        color: white;
        background-color: unset;
        top: 0px;
        left: 0;
        right: 0;
        bottom: 0;
        font-size: 25px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        max-width: 400px;
        margin-top: 20px;
        overflow: auto;


}


.dashboard2 {
background-color: rgb(22 22 22);
     border-radius: 10px 10px 10px 10px;
     margin-left: 20px;
     margin-right: 20px;
     padding-top: 30px;
     padding-bottom: 30px;
     padding-left: 25px;
     padding-right: 25px;
     display: flex;
     flex-direction: column;

}

.dashboardPoints {

    border-radius: 10px;
    padding-left: 25px;
    padding-right: 25px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Abstand zwischen den Bausteinen */
    justify-content: space-between;
}

.baustein {
    flex: 1 1 calc(50% - 20px); /* Basisbreite: 50% minus Abstand */
    align-items: flex-end;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 10px; /* Optional: Abgerundete Ecken */
    background-color: rgb(22 22 22); /* Leicht transparente Hintergrundfarbe */
    text-align: right;
    padding-right: 20px;

}

.baustein a {
    display: block;
    font-size: 15px;
    color: rgb(255, 255, 255);
    margin-bottom: 15px;
    text-align: left;
}


.bausteinLevel {
    flex: 1 1 calc(50% - 20px); /* Basisbreite: 50% minus Abstand */
    align-items: flex-end;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 10px; /* Optional: Abgerundete Ecken */
    background-color: rgb(22 22 22); /* Leicht transparente Hintergrundfarbe */
    height: 100%;

}

.bausteinLevel img{

    height: 32px;
    vertical-align: sub;

}

.bausteinLevel a {
    display: block;
    font-size: 15px;
    color: rgb(255, 255, 255);
    margin-bottom: 15px;
    text-align: left;
}

.bausteinRedeem {
background-color: rgb(22 22 22);
     border-radius: 10px 10px 10px 10px;
     margin-left: 20px;
     margin-right: 20px;
     padding-left: 10px;
     padding-right: 10px;
     text-align: left;
     font-size: 15px;
     padding-top: 10px;

}



.dashboard3 {
    background-color: rgba(255, 64, 64);
         border-radius: 10px 10px 10px 10px;
         margin-left: 10px;
         margin-right: 10px;
         padding-top: 10px;
         padding-bottom: 10px;
         padding-left: 15px;
         padding-right: 15px;

    }

    .dashboard4 {
        background-color: rgba(0, 0, 0, 0.8);
             border-radius: 10px 10px 10px 10px;
             margin-left: 10px;
             margin-right: 10px;
             padding-top: 20px;
             padding-bottom: 0px;
             padding-left: 35px;
             padding-right: 35px;

        }


.dashboard2 a {

   text-align: left;

}

.timerBox {
    background-color: rgba(0, 0, 0, 0.8);
    border-radius: 10px 10px 10px 10px;
    margin-left: 10px;
    margin-right: 10px;
    padding-top: 20px;
    padding-bottom: 0px;
    padding-left: 35px;
    padding-right: 35px;

}

.navback {
    background-color: rgb(135 40 40);
    border-radius: 5px 0px 0px 5px;
    margin-left: 45px;
    margin-right: 0px;
    padding-left: 25px;
    padding-right: 0px;
    margin-top: 85px;

}

#currentVersionDisplay {

    font-size: 10px;
}

.social-container {
    display: flex;
    justify-content: center;
    margin: 0px 0px 20px 0px;
    gap: 10px; /* Adjust this value to control the space between icons */
    padding: 10px;

    border-radius: 5px;
    background-color: rgb(135 40 40);
}
.social-container a {
    display: inline-block;
    padding: 0;
}
.social-container img {
    width: 24px;
    height: 24px;
    margin: 0; /* Adjust this value to control the space between icons */
}

.close-container {
    display: none;
    justify-content: center;
    gap: 10px; /* Adjust this value to control the space between icons */
    padding-top: 10px;

    background-color: rgb(255, 64, 64);
    position: fixed;
    width: 100%;
    height: 70px;
    bottom: 0;
    z-index: 99999;

}

.closebottom2 {

        background-color: unset;

}



.closebottom2 i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

.closebottom3 {

    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottom3 i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

.closebottomSpinner {
    height: 60px;
    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottomSpinner i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}


.closebottomStopTimer {

    background-color: rgb(255, 64, 64);
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
    height: 60px;
}



.closebottomHeist i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

.closebottomHeist {
    height: 60px;
    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

.closeBattlepass i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

.closeBattlepass {
    height: 60px;
    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottomStopTimer i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}


.closebottom5 {
    height: 60px;
    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottomRanking i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}


.closebottomRanking {

    background-color: rgb(255, 64, 64);
    height: 60px;
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

.closebottomAchievments i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
    }


.closebottomAchievments {

background-color: rgb(255, 64, 64);

margin-left: 0px;
margin-right: 0px;
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1;
color: black;
padding: 8px;
box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);

}


.closebottomGymwars i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
    }


    .closebottomGymwars {

        background-color: rgb(255, 64, 64);

        margin-left: 0px;
        margin-right: 0px;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1;
        color: black;
        padding: 8px;
        box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
    }



.closebottom5 i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}

.closebottomShop {

    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottomShop i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}


.closebottomVoucher {

    background-color: rgb(255, 64, 64);

    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



.closebottomVoucher i{
font-size: 35px;
padding-top: 5px;
height: 44px;
}



    #tournamentpage {
      display: flex;
      justify-content: center;
      align-items: center;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; /* Stellt sicher, dass der gesamte Viewport abgedeckt ist */
      font-size: 25px;
      background-color: rgb(191 57 57);
      z-index: 10; /* Setzt sicher, dass das Element über anderen Elementen liegt */

    }


#activityspage {
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; /* Stellt sicher, dass der gesamte Viewport abgedeckt ist */
  font-size: 25px;
  background-color: rgb(191 57 57);
  z-index: 10; /* Setzt sicher, dass das Element über anderen Elementen liegt */
  max-width: 400px;
  margin: auto;
  margin-top: 20px;

}

#rankingpage {
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; /* Stellt sicher, dass der gesamte Viewport abgedeckt ist */
  font-size: 25px;
  background-color: rgb(191 57 57);
  z-index: 10; /* Setzt sicher, dass das Element über anderen Elementen liegt */
  max-width: 400px;
  margin: auto;

}



#globalRankingList {

    margin-left: 20px;
    margin-right: 20px;
    color: #000;
    margin-top: 275px;


}

#shoppage {

    color: white;
    background-color: rgb(191 57 57);
    height: 100%;
    font-size: 25px;
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 20px;


 }


 .shoppage-container2, #items {
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    padding-left: 10px;
    padding-right: 10px;
    max-width: 400px;
    justify-content: center;
}






.shopItem {
    flex: 1 1 30%; /* Jedes Element passt sich flexibel an, aber nicht breiter als 30% */
    margin: 5px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 15px;
    padding: 5px;
    margin-bottom: 20px;
    background-color: rgb(22 22 22);
    border-radius: 10px 10px 10px 10px;
   
    
    animation: pump 0.3s ease;
}

#items:only-child .shopItem,
#items > .shopItem:only-child {
    flex: 1 1 100%;
   
}


.shopItem img{
    width: 24px;
    height: auto;
    vertical-align: sub;
}



#bundles {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  margin: auto;
  max-width: 400px;
  padding: 0 10px 0 20px;

  scroll-snap-type: x mandatory; /* enable snap */
  scroll-padding: 0 20px;        /* matches left padding for centering */
}

.bundleItem {
  flex: 0 0 auto !important;
  scroll-snap-align: center;     /* center each card when snapped */
  /* deine bestehenden Größen/Abstände bleiben wie sie sind */
}

  /* Scrollbar ausblenden (Webkit + Firefox + IE) */
  #bundles::-webkit-scrollbar { display: none; }
  #bundles { -ms-overflow-style: none; scrollbar-width: none; }


.bundleItem {

    margin: 5px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 15px;
    padding: 5px;
    background-color: rgb(22 22 22);
    border-radius: 10px 10px 10px 10px;
    max-width: 100%; /* Maximale Breite, um sicherzustellen, dass nicht mehr als drei Elemente in einer Zeile erscheinen */
}
.bundleItem  img{
    width: 20px;
    height: auto;
    vertical-align: text-bottom;


}





.imageContainer {
    position: relative;
    width: 100%; /* Adjust the width as necessary */
    border-radius: 10px; /* Optional, for rounded corners */
}

.itemImage {
    width: 100%; /* This will make the image fill the container */
    border-radius: 10px;
}

.countdown {
    position: absolute;
    bottom: 10px; /* Position as needed */
    left: 10px; /* Position as needed */
    color: white; /* Ensures the text is visible on darker backgrounds */
    background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
    padding: 5px;
    border-radius: 5px;
    font-size: 10px;
    font-family: 'roboto';
    font-weight: bold;
    text-transform: uppercase;
}

.countdown2 {

    color: white; /* Ensures the text is visible on darker backgrounds */
    background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
    padding: 3px;

    border-radius: 3px;
    font-size: 8px;
    font-family: 'roboto';
    font-weight: bold;
    text-transform: uppercase;
    position: absolute;

}

.countdown2 img {
    width: 10px;
    height: auto;
    vertical-align: text-bottom;
}


.shopItem2 {
    flex: 1 1 46%; /* Jedes Element passt sich flexibel an, aber nicht breiter als 30% */
    margin: 5px; /* Etwas Abstand zwischen den Elementen */
    box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
    font-size: 10px;
    padding: 5px;
    background-color: rgba(0, 0, 0, 0.8);
 border-radius: 10px 10px 10px 10px;
    max-width: 46%; /* Maximale Breite, um sicherzustellen, dass nicht mehr als drei Elemente in einer Zeile erscheinen */
}
.shopItem2 img{

width: 90%;
}

.buyButton {

    background-color: rgb(255, 64, 64);
    padding: 0px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 20px;
    margin-top: 10px;
    height: 45px;
    box-shadow: 0 3px rgb(135 40 40);

    }

    .buyButton:active {
        background-color: #007bff;
    }


    .buyButton:hover{
        background-color: #007bff;

    }

    .buyButton:disabled {
        background-color: grey;
        color: white;
        cursor: not-allowed;

    }

    .itemContent {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%; /* Stellen Sie sicher, dass das Eltern-Element eine Höhe hat */
    }

    .buttonContainer {
        margin-top: auto; /* Schiebt den Button nach unten */
    }

    #overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: black;
        opacity: 0.8;
        z-index: -1; /* Stellen Sie sicher, dass das Overlay über dem Body-Inhalt liegt */
    }

#voucherpage {

    color: white;
    background-color: rgb(191 57 57);
    top: 0;
    left: 0;
    right: 0;
    font-size: 25px;
    width: 100%;
    height: 100%;
    margin-left: 0;
    margin-right: 0;
}

.voucherpage-container3 {

    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    background-color: unset;
    border-radius: 10px;
    margin: 20px;
    padding: 10px;
}

.voucherpage-container2 {
    background-color: unset;
    border-radius: 10px;
    padding: 10px;
    max-width: 400px;
    margin: auto;
    margin-top: 30px;
}



#availableVouchers, #redeemedVouchers {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    min-width: 0;
    justify-content: center;
}

.voucherItem {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    height: 180px;
    width: 100%;
    padding: 10px;
    position: relative; /* Ermöglicht absolute Positionierung der Kinder */
    box-sizing: border-box;
    background: rgb(22 22 22);
    border-radius: 10px 10px 10px 10px;
    color: black;
    font-size: 12px;
    margin-bottom: 5px;
    margin-top: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    animation: pump 0.3s ease;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.voucherItem::after {
  content: '';
  position: absolute;
  top: -20%;
  left: 0;
  width: 30%;
  height: 140%;
  background: rgba(255, 255, 255, 0.010);
  transform: translateX(-100%) skewX(-16deg);
  animation: voucher-single-shine 10s infinite linear;
  z-index: 2;
  pointer-events: none;
}

.voucherItem::before {
  content: '';
  position: absolute;
  top: -20%;
  left: 0;
  width: 20%;
  height: 140%;
  background: rgba(255, 255, 255, 0.021);
  transform: translateX(-100%) skewX(-16deg);
  animation: voucher-single-shine 10s infinite linear;
  z-index: 2;
  pointer-events: none;
}

@keyframes voucher-single-shine {
  0%   { transform: translateX(-100%) skewX(-16deg);}
  22%  { transform: translateX(600%) skewX(-16deg);}
  100% { transform: translateX(600%) skewX(-16deg);}
}


.voucherItem > * {
  position: relative;
  z-index: 3;
}


.voucherRedeemButton, .voucherValid, .voucherDescription, .voucherTitle, .voucherImage, .voucherDiscount, .voucherCode, .voucherAvailable, .voucherLink {
    position: absolute; /* Absolute Positionierung innerhalb des .voucherItem Containers */

}

.voucherTitle {
    top: 30px;
    left: 20px;
    font-size: 18px;
    color: rgb(255, 255, 255);

}

.voucherDiscount {
    top: 36px;
    left: 20px;
    font-size: 50px;
    color: rgb(255, 255, 255);

}

.voucherDescription {
    top: 50px;
    left: 20px;
    font-size: 10px;
    color: rgb(255, 255, 255);


}

.voucherImage{
    top: 20px;
    right: 20px;
}

.voucherImage img{
    height: 80px !important;
    width: 140px !important;
    border-radius: 10px;
}



.voucherValid {
    bottom: 60px;
    right: 24px;
    font-size: 10px;
    color: rgb(255, 255, 255);


}

.voucherCode {
    bottom: 20px;
    right: 20px;
    font-size: 20px;
    color: rgb(255, 0, 0);
    border-radius: 3px;


    padding: 5px;
    width: 160px;
    background: white;

}

.voucherLink {
    position: absolute;
    bottom: 20px; /* Abstand vom unteren Rand des Containers */
    left: 20px; /* Setzt den Startpunkt des Elements in die Mitte des Containers */

    background-color: rgb(255, 64, 64);
    border-radius: 5px 5px 5px 5px;
    font-size: 20px;


    width: 100px; /* Feste Breite */
    text-align: center;
    color: white;
    font-family: gymtimer, sans-serif;
    text-decoration: none;
    padding: 5px;
    box-shadow: 0 3px rgb(135 40 40);

}
#deleteStudioButton{


    background-color: rgb(255, 64, 64);
    border-radius: 5px 5px 5px 5px;
    font-size: 15px;
    min-height: 25px !important;
    width: 100%; /* Feste Breite */
    text-align: center;
    color: white;
    font-family: gymtimer, sans-serif;
    width: 160px;
    float: right;
    box-shadow: 0 3px rgb(135 40 40);
    position: relative;




}

.voucherRedeemButton {
    position: absolute;
    bottom: 20px; /* Abstand vom unteren Rand des Containers */
    left: 20px; /* Setzt den Startpunkt des Elements in die Mitte des Containers */

    background-color: rgb(255, 64, 64);
    border-radius: 5px 5px 5px 5px;
    font-size: 20px;
    min-height: 35px !important;
    width: 100px; /* Feste Breite */
    text-align: center;
    color: white;
    font-family: gymtimer, sans-serif;
    box-shadow: 0 3px rgb(135 40 40);
}

.voucherRedeemButton:hover, #deleteStudioButton:hover {
    background-color: #007bff;
}

.voucherRedeemButton.active, #deleteStudioButton:active {
    background-color: #007bff;
    color: white;
}

.voucherAvailable {
    top: 20px; /* Beispiel: Anpassen nach Bedarf */
    right: 20px;
    font-size: 10px;
    color: rgb(255, 255, 255);
    font-family: gymtimer, sans-serif;
    font-size: 15px;

}

.voucherItem img {
    width: 24px;
    height: auto;
    vertical-align: sub;
}


.voucher-slider-container {
    overflow: hidden;
    width: 100%;
    height: 200px; /* Höhe des Sliders anpassen */
    position: relative;
    margin-top: 20px; /* Abstand nach oben zum availableVouchers */
}

.voucher-slider {
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform 0.5s ease;
}


#voucherFilterBar {
    position: fixed; /* bleibt sichtbar, wenn man scrollt */
    top: 80px; /* Abstand vom oberen Rand */
    left: -5px;

    margin-right: 10px;
    border-radius: 8px;
    background-color: rgb(135 40 40); /* Hintergrundfarbe passend zum Theme */
    padding: 10px;
    z-index: 10; /* damit es über anderen Elementen liegt */
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #333;
    font-size: 18px;
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.4);
}

#voucherSort {
    padding: 5px;
    font-size: 16px;
    font-family: 'gymtimer';
    border-radius: 5px;
}



#gamepage {
/* display: none; Standardmäßig ausgeblendet */
display: flex;
justify-content: center;
align-items: center;
height: 100%;
font-size: 25px;


}




.pointsResult {


    padding-top: 3px;
    color: gold;
    font-size: 25px;


}

.ticketsResult {
    color: rgb(255, 94, 0);
}

.energyResult {

    color: #00D4FD;
    font-size: 25px;

}

.totalPointsResult, .totalEnergyResult {

    color: rgb(136, 136, 136);
    font-size: 25px;

}





.dashboard2 .user-image {

width: 150px;
height: 150px;
border-radius: 50%;




}

.userPictureWithBadge{
    position: relative;
    height: 150px;

    margin-left: auto;
    margin-right: auto;

}

.user-badge {


    left: 120px; /* Hier kannst du die Verschiebung des Bildes anpassen */
    top: 40px; /* Hier kannst du die vertikale Position des Bildes anpassen */

    z-index: 0; /* Damit das Bild hinter dem Text liegt */
    height: 70px;
    width: 70px;
    border-radius: 50%;

    background-color: unset;
    object-fit: cover;

    }

.userImage-wrapper {

    overflow: hidden;


}

.badge-wrapper {
    position: absolute;
    left: 120px;
    top: 40px;
    transform: translateY(-50%);

    width: 70px;
    height: 70px;

    border-radius: 50%;
    overflow: hidden;

    background-color: rgb(22,22,22); /* gleiche Farbe wie Border */
    border: 5px solid rgb(22,22,22);
}




#gymy1 {
    position: relative;
    display: inline-block; /* Damit der Container nur so breit ist wie der Text */
    left: 40px;
    font-size: 30px;
  }

  #user-image2 {
    position: absolute;
    left: 0; /* Hier kannst du die Verschiebung des Bildes anpassen */
    right: 0;
    margin: auto;

    transform: translateY(-50%); /* Zentriert das Bild vertikal */

    height: 120px;
    width: 120px;
    border-radius: 50%;
    border: 7px solid #FF4040;

  }

  #user-badge2 {
    position: absolute;
    left: 172px; /* Hier kannst du die Verschiebung des Bildes anpassen */
    top: 70px; /* Hier kannst du die vertikale Position des Bildes anpassen */
    transform: translateY(-50%); /* Zentriert das Bild vertikal */
    z-index: 99999; /* Damit das Bild hinter dem Text liegt */
    height: 50px;
    width: 50px;
    border-radius: 50%;
    border: 5px solid #FF4040;
    background-color: #FF4040;
    object-fit: cover;

  }

  #nickname2 {
    position: absolute;
    text-align: center; /* Hier kannst du die Ausrichtung des Nicknamens anpassen */
    left: 125px; /* Hier kannst du die Verschiebung des Bildes anpassen */
    top: 150px;
    color:white;
    font-size: 25px;
  }



/* Container für Sterne */
#stars {
    color: yellow; /* Standardfarbe der Sterne */
    padding: 20px;
    bottom: 0;
    display: flex; /* Sterne horizontal anordnen */
    justify-content: center; /* Zentriert anzeigen */
    gap: 10px; /* Abstand zwischen Sternen */
    align-items: flex-end; /* Sterne unten ausrichten */
}

/* Einzelne Sterne */
#stars i {
    text-shadow: 0 0 20px rgb(0, 0, 0); /* Schwarzer Glow-Effekt */
    opacity: 0; /* Startet unsichtbar */
    animation: zoomIn 0.5s ease-out forwards, pulse 2s infinite;
}

/* Verzögerung für die Animation der einzelnen Sterne */
#stars i:nth-child(1) {
    font-size: 60px;
    animation-delay: 0.2s;
}

#stars i:nth-child(2) {
    font-size: 80px;
    animation-delay: 0.4s; /* Verzögerter Start */
    transform: translateY(-20px);
    animation: zoomIn 1s ease-out forwards, pulse 3s ease-in-out infinite;
}

#stars i:nth-child(3) {
    font-size: 60px;
    animation-delay: 0.6s;
}

/* Animation: Zoom-In */
@keyframes zoomIn {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Animation: Pulsieren optimiert */
@keyframes pulse {
    0%,
    100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05); /* Leichtes Vergrößern */
    }
}

/* Hover-Effekt für Interaktivität */
#stars i {
    text-shadow: 0 0 20px rgb(0, 0, 0);
    opacity: 0; /* Unsichtbar zu Beginn */
    animation: zoomIn 1s ease-out forwards, pulse 3s ease-in-out infinite;
    transition: transform 0.5s ease-in-out, color 0.3s ease; /* Sanfter Hover-Übergang */
}


    #minigames-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; /* Zentriert die Elemente horizontal */
        align-items: center; /* Zentriert die Elemente vertikal (falls nötig) */
        gap: 5px; /* Abstand zwischen den Elementen */
        /* Optional: Stellen Sie sicher, dass der Container selbst mittig ausgerichtet ist, falls er in einem größeren Elternelement enthalten ist */
        margin: 0 auto; /* Zentriert den Container selbst, wenn er eine spezifische Breite hat */
        background-color: rgba(0, 0, 0, 0.8);
        border-radius: 10px 10px 10px 10px;
        margin-left: 10px;
        margin-right: 10px;
        padding: 15px;
    }

    .game {
        width: 100%; /* Feste Breite */
        height: 100%; /* Feste Höhe */
        box-sizing: border-box; /* Inklusive Padding und Border in der Breitenberechnung */
        padding: 0px;
        background-color: unset;
        border-radius: 8px;
        text-align: center; /* Zentriert den Text innerhalb jedes Spiels */
        color: white; /* Textfarbe */
        cursor: pointer; /* Ändert den Cursor beim Hover über aktive Spiele */
        display: flex; /* Ermöglicht die Zentrierung von Inhalten */
        justify-content: center; /* Zentriert Inhalte horizontal */
        align-items: center; /* Zentriert Inhalte vertikal */
        overflow: hidden; /* Verhindert, dass Inhalte über das Element hinausgehen */
    }

    .game.inactive {
        display: none !important;

    }











.login-popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / 62%);

  z-index: 5;
  justify-content: center;
  align-items: center;
  text-align: center;
  }

  .login-content {
    background: rgb(191 57 57);

  }

  .cancelAgbs {

    background-color: rgb(0, 0, 0);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 120px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 20px;

    }

    .fb-login-button {

        background-color: blue;
        padding: 10px;
        font-style: normal;
        border-radius: 5px 5px 5px 5px;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        margin: 0 auto;
        width: 120px;
        text-decoration: none;
        color: white;
        font-family: gymtimer, sans-serif;
        font-size: 20px;
        margin-top: 15px;
        margin-bottom: 15px;
        }

        .dashboard2 .rankImage {
            width: 100px !important;
            height: auto !important;
            margin-bottom: 15px !important;
        }

/* MINIGAMES ************************************/

#heist {
    position: fixed;
    height: 100%;
    width: 100%;

    background-color: rgba(0, 0, 0, 0.9);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    top: 0px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;


  }

#gamestoptimer {
    position: fixed;
    height: 100%;
    width: 100%;

    background-color: rgba(0, 0, 0, 0.9);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    top: 0px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;

  }



.StopTimerContainer {
      position: fixed;
      background-image: url("https://app.gymbattlz.com/appdata/img/events/stoptimer/stopclockbackhand.webp");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: 100%;
      height: 286px;
      width: 343px;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      margin: auto;

      animation: pump 0.3s ease;
}




 #clockDisplay {
    position: absolute;
    top: 130px;

    left: 50%; /* Setzt den Startpunkt des Containers in der Mitte der Seite (horizontal) */
    transform: translateX(-50%);
    font-size: 34px;
    color: #ffffff;
  }


  #clockButton {
      position: absolute;
      top: 80%;
      left: 50%;
      transform: translateX(-50%);
      width: 90px;
      height: 90px;
      font-size: 20px;
      color: #ffffff;
      font-family: gymtimer, sans-serif;
      text-transform: uppercase;
      letter-spacing: 1px;
      background: linear-gradient(135deg, #FF4040 0%, #D33131 100%);
      border: none;
      border-radius: 50%; /* Macht den Button rund */
      outline: none;
      cursor: pointer;
      box-shadow: 0 10px 0 0 #8C0606, 0 15px 20px rgba(0, 0, 0, 0.3);
      transition: all 0.3s ease, transform 0.1s ease-in-out;
      outline: 3px solid black;
  }

  /* Hover-Effekt */
  #clockButton:hover {
      background: linear-gradient(135deg, #FF6A6A 0%, #E03E3E 100%);
      box-shadow: 0 12px 0 0 #8C0606, 0 18px 25px rgba(0, 0, 0, 0.4);
      transform: translateX(-50%) translateY(-3px);
  }

  /* Aktive-Klick-Effekt */
  #clockButton:active {

      box-shadow: 0 4px 0 0 #8C0606, 0 5px 6px rgba(0, 0, 0, 0.3);
      transform: translateX(-50%) translateY(2px);
      background: linear-gradient(135deg, #D33131 0%, #A62626 100%);
  }

  #clockButton.locked {
  font-size: 11px;        /* 👈 kleinere Schrift */
  letter-spacing: 0.5px; /* optional, sieht cleaner aus */
  background: grey;
  box-shadow: 0 10px 0 0 #3a3a3a, 0 15px 20px rgba(0, 0, 0, 0.3);
  cursor: not-allowed;
}




  /* Animation beim Start */
  @keyframes pulseGlow {
      0% {
          box-shadow: 0 0 10px rgba(255, 64, 64, 0.6), 0 0 20px rgba(255, 64, 64, 0.4);
      }
      50% {
          box-shadow: 0 0 15px rgba(255, 64, 64, 0.8), 0 0 30px rgba(255, 64, 64, 0.5);
      }
      100% {
          box-shadow: 0 0 10px rgba(255, 64, 64, 0.6), 0 0 20px rgba(255, 64, 64, 0.4);
      }
  }

  /* Animation hinzufügen */
  #clockButton.pulse {
      animation: pulseGlow 1.5s infinite ease-in-out;
  }



  #clockCost {
     display: flex;
     align-items: center; /* Vertikale Ausrichtung zentrieren */
     position: absolute;
     top: 94px;
     left: 140px; /* Setzt den Startpunkt des Containers in der Mitte der Seite (horizontal) */
     transform: translateX(-50%);
     font-size: 10px;
     font-family: gymtimer, sans-serif;
     color: black;
   }

  #clockCost img {

    width: 16px;
    height: 16px;
    padding-bottom: 3px;
}

#clockText {
    width: 110px; /* Die Breite deines Lauftext-Bereichs */
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
    top: 175px;
    left: 50%;
    transform: translateX(-50%);

    border-radius: 5px;
    padding: 5px 0;
}

.scrolling-text {
    display: inline-block;
    white-space: nowrap;
    animation: scrollText 10s linear infinite;
    color: black;
    font-size: 14px;

}

/* Keyframes für die Animation */
@keyframes scrollText {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

#spinner {
    position: fixed;

    width: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    top: 0px;
    bottom: 60px;
    left: 0;
    right: 0;
    z-index: 1;

  }

  .spinnerTickets{
    display: flex;
    align-items: center;
    position: fixed;
    right: 10px;
    top: 10px;
    font-size: 15px;

  }

.spinnerTickets2{
    display: flex;
    align-items: center;
    position: absolute;
    top: 87px;
    left: 195px;
    font-size: 16px !important;
    z-index: 1;
    flex-direction: row;
    justify-content: flex-end;
    line-height: 2;
  }

  .spinnerTickets2 img{
    width: 16px;
    height: 16px;

  }

  .spinnerTickets3{
    display: flex;
    align-items: center;
    position: absolute;
    top: 55px;
    right: 20px;
    font-size: 16px !important;
    z-index: 1;
    flex-direction: row;
    justify-content: flex-end;
    background-color: rgb(0 0 0 / 23%);
    padding: 5px 5px 5px 10px;
    border-radius: 3px;
    z-index: 2;
  }

  .spinnerTickets3 img{
    width: 20px;
    height: 20px;

  }

  #ticketsResult3 {

    color: white;
    padding: 0px 2px 0px 0px;
    font-size: 16px;

  }



  .spinnerLogo {


      width: 270px;

      margin-left: 10px;

    }

    .stopTimerLogo {
      position: relative;
      top: -80px;
      width: 270px;
      left: 0; /* Setzt den Startpunkt des Containers in der Mitte der Seite (horizontal) */
      right: 0;
      margin: auto;
      animation: pump 0.3s ease;
    }





@keyframes markerSwing {
  0%   { transform: translateX(-50%) rotate(0deg); }
  25%  { transform: translateX(-50%) rotate(4deg); }
  50%  { transform: translateX(-50%) rotate(-4deg); }
  75%  { transform: translateX(-50%) rotate(4deg); }
  100% { transform: translateX(-50%) rotate(0deg); }
}




#pointsSpinner {
    display: flex;
    justify-content: center; /* Zentriert die Inhalte horizontal */
    align-items: center; /* Zentriert die Inhalte vertikal */
    text-decoration: none;
    position: fixed;
    bottom: 25px;
    width: 80px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #FF4040;
    border-radius: 15px 15px 0px 0px;
    padding-bottom: 50px;
    padding-right: 15px;
    padding-left: 15px;
    padding-top: 5px;
    justify-content: center;
}

#pointsSpinner img{

    width: 28px;
    height: 28px;
}







.blur {
    animation: blur 0s;
      }

  @keyframes blur {
    0% {
      filter: blur(1.2px);
    }
    80% {
      filter: blur(1.2px);
    }
    100% {
      filter: blur(0px);
    }
  }


  .gymbattleLogo {

    height: 120px;

  }



  #register-form {
    display: none;
    width: 250px;
    max-width: 400px;
    margin: auto;
    font-size: 12px;
    font-family: 'roboto';
}

#login-form {
    display: none;
    width: 250px;
    max-width: 400px;
    margin: auto;
    font-size: 12px;
    font-family: 'roboto';
}

#deleteProfileModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: #ff0000;
    padding: 20px;
    border-radius: 10px;
    z-index: 1000;
    max-width: 400px;
    margin: auto;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
#deleteProfileModal:target {
    display: block;
    position: fixed;
    background: #ff0000;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}


#changeNicknameModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 20px;
    border-radius: 10px;
    z-index: 1000; /* Sorgt dafür, dass das Modal über anderen Inhalten erscheint */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
#changeNicknameModal:target {
    display: block;
    position: fixed;
    background: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}



/* Allgemeiner Stil für das Popup */
.badgePopup {
    position: fixed; /* Popup fixiert über dem Inhalt */
    z-index: 100; /* Stellt sicher, dass das Popup über anderen Elementen angezeigt wird */
    left: 0;
    top: 0;
    width: 100%; /* Vollbildbreite */
    height: 100%; /* Vollbildhöhe */
    display: flex;
    justify-content: center; /* Zentriert den Inhalt horizontal */
    align-items: center; /* Zentriert den Inhalt vertikal */
    animation: pump 0.3s ease;

}

/* Stil für den Inhalt des Popups */
.badge-content {
    background-color: rgb(191 57 57); /* Weißer Hintergrund für den Popup-Inhalt */
    padding: 20px; /* Innenabstand */
    border-radius: 10px; /* Abgerundete Ecken */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Leichter Schatten für Tiefe */
    text-align: center; /* Zentriert den Text */
    max-width: 260px; /* Maximale Breite des Popups */
    width: 100%; /* Passt sich der Bildschirmbreite an, max. jedoch 600px */
    font-size: 20px;
    max-height: 80vh; /* Setzt eine maximale Höhe, abhängig von der Bildschirmhöhe */
    overflow-y: visible; /* Ermöglicht das vertikale Scrollen, wenn der Inhalt die max Höhe überschreitet */
    position: relative; /* Für korrekte Positionierung des Scrollbars */
    min-height: 400px;
}

#badgeSelection {

    background-color: rgb(135 40 40);
    border-radius: 8px;
    min-height: 240px;
    max-height: 240px;
    box-shadow: inset 0 6px 6px -6px rgba(0, 0, 0, 0.4),   /* oben */
    inset 0 -6px 6px -6px rgba(0, 0, 0, 0.4);
    overflow-y: auto;
    padding-top: 8px;

}


/* Stil für die Badge-Optionen */
.badge-option {
    margin: 3px; /* Außenabstand zwischen den Badges */
    width: 50px; /* Breite der Badge-Optionen */
    height: 50px; /* Höhe der Badge-Optionen */
    object-fit: cover; /* Stellt sicher, dass die Bilder ihre Proportionen beibehalten */
    cursor: pointer; /* Zeigt den Cursor als Pointer */
    border: 2px solid #FF4040; /* Transparenter Rand, wird bei Auswahl geändert */
    border-radius: 50%; /* Kreisförmige Badges */
}

/* Hover-Stil für die Badge-Optionen */
.badge-option:hover {
    border-color: #007bff; /* Blauer Rand bei Hover */
}

/* Stil für gesperrte Badges */
.badge-locked {
    opacity: 0.5; /* Halbtransparent für gesperrte Badges */
}

.badge-menu, .filter-menu {
    display: flex;
    justify-content: space-around;
    height: 80px;
}

.badge-menuDashboard {
    display: flex;
    justify-content: space-around;
    margin-top: 15px;
}

.menu-btn, .shop-menu-btn {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 2px;
    width: 100%;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
}


.menu-btn:hover, .shop-menu-btn:hover {
    background-color: #007bff;
}

.menu-btn.active, .shop-menu-btn:active {
    background-color: #007bff;
    color: white;
}


#editNameBtn {

    background-color: rgb(255, 64, 64);
    width: 24px;
    height: 24px;
   vertical-align: top;
    box-shadow: 0 3px rgb(135 40 40);

}

#editDescBtn {

    background-color: rgb(255, 64, 64);
    width: 24px;
    height: 24px;
    position: absolute;
    right: 45px;
    top: 347px;
    box-shadow: 0 3px rgb(135 40 40);

}

#editImageBtn {

    background-color: rgb(255, 64, 64);
    width: 24px;
    height: 24px;
    position: absolute;
    top: 276px;
    right: 45px;
    box-shadow: 0 3px rgb(135 40 40);

}

.modalNotification {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 20px;
    border-radius: 8px;
    z-index: 9999;
    width: 280px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

.modalNotification:target {
    display: block;
    position: fixed;
    background: rgb(191 57 57);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}

.modalNews {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 20px;
    border-radius: 8px;
    z-index: 8998;
    width: 260px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

.modalNews:target {
    display: block;
    position: fixed;
    background: rgb(191 57 57);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}

.modalSettings {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    padding: 20px;
    border-radius: 10px;
    z-index: 9999;
    width: 270px;
    animation: pump5050 0.3s ease;
}

.modalSettings:target {
    display: block;
    position: fixed;
    background: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

/*MODAL CLAIM*/

/* ===== Claim Modal Overlay (full screen) ===== */
.modalClaim {
  position: fixed;
  inset: 0; /* top/right/bottom/left: 0 */
  background: rgba(0, 0, 0, 0.85); /* schwarzer transparenter Hintergrund */
  display: none; /* via JS auf block/flex */
  align-items: center;
  justify-content: center;
  z-index: 10000;
}

/* Box in der Mitte (ohne farbigen Kasten – Text schwebt über dem Stern) */
.modal-claim-box {
  position: relative;
  width: min(90vw, 320px);
  text-align: center;
  color: #fff;
  padding: 24px 16px 16px;
}

/* Rotierender Stern im Hintergrund */
.modal-claim-star {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  transform: translate(-50%, -50%);
  opacity: 0.25;            /* leicht transparent */
  pointer-events: none;      /* keine Klicks abfangen */
  animation: claim-rotate 8s linear infinite;
  filter: drop-shadow(0 0 20px rgba(255,255,255,0.15));
}

/* Titel & Message liegen über dem Stern */
.modal-claim-title {
  position: relative;
  font-size: 18px;
  line-height: 0;
  margin: 0 0 8px 0;
  text-shadow: 0 2px 8px rgba(0,0,0,0.6);
}

.modal-claim-message {
  position: relative;
  margin: 0 0 16px 0;
  font-size: 30px;
  text-shadow: 0 2px 6px rgba(0,0,0,0.6);
}

/* Claim-Button */
.modal-claim-confirm {
  position: relative;
  cursor: pointer;
  background-color: green;
  color: white;
  font-size: 20px;
  border-radius: 5px;
  padding: 0px;
  width: 100px;
  font-family: gymtimer, sans-serif;
  text-align: center;
  box-shadow: 0 3px rgb(0, 58, 0);
}
.modal-claim-confirm:active {
  transform: translateY(2px);
  box-shadow: 0 4px 0 #a8861a, 0 6px 16px rgba(0,0,0,0.35);
}

/* Rotation */
@keyframes claim-rotate {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(360deg); }
}





/* Stil für den Hintergrund des Modals */
.modal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    padding: 20px;
    border-radius: 10px;
    z-index: 19000;
    width: 250px;
    animation: pump5050 0.3s ease;

}

.modal:target {
    display: block;
    position: fixed;
    background: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.modalLogin {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(22 22 22);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    padding: 20px;
    border-radius: 10px;
    z-index: 19000;
    width: 250px;
    animation: pump5050 0.3s ease;
    z-index: 999999;
    border: solid 1px rgb(191 57 57);
}

.modalLogin:target {
    display: block;
    position: fixed;
    background: rgb(22 22 22);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;

}

#resetPasswordModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(22 22 22);
    padding: 20px;
    border-radius: 10px;
    z-index: 999999; /* Sorgt dafür, dass das Modal über anderen Inhalten erscheint */
    border: solid 1px rgb(191 57 57);
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
#resetPasswordModal:target {
    display: block;
    position: fixed;
    background: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.buddyModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 10px 10px 20px 10px;
    border-radius: 10px;
    z-index: 1; /* Sorgt dafür, dass das Modal über anderen Inhalten erscheint */
    min-width: 310px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
.buddyModal:target {
    display: block;
    position: fixed;
    background: rgb(191 57 57);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.dailysModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 10px 10px 20px 10px;
    max-width: 400px;
    margin: auto;
    border-radius: 10px;
    z-index: 1000; /* Sorgt dafür, dass das Modal über anderen Inhalten erscheint */
    width: 80%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    animation: pump5050 0.3s ease;
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
.dailysModal:target {
    display: block;
    position: fixed;
    background: rgb(191 57 57);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}

.supportModal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgb(191 57 57);
    padding: 20px;
    border-radius: 10px;
    z-index: 1000; /* Sorgt dafür, dass das Modal über anderen Inhalten erscheint */
    width: 80%;
    max-width: 400px;
    animation: pump5050 0.3s ease;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}

/* Hintergrund abdunkeln, wenn Modal sichtbar ist */
.supportModal:target {
    display: block;
    position: fixed;
    background: rgb(191 57 57);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.achievements-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 20px;

}

.support-container {

    display: flex;
    flex-direction: column;
    margin-top: 20px;

}
#user-id {
    font-size: 12px;
    margin-top: 0;
}

.active-multiplier {

    position: fixed; /* Fixierte Positionierung */
    top: 280px; /* 200px vom oberen Rand entfernt */
    right: 75px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    justify-content: center; /* Zentriert die Kinder vertikal */
    align-items: center; /* Zentriert die Kinder horizontal */
    background-image: url("https://app.gymbattlz.com/appdata/img/shop_items/item3empty.webp");
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
}

.active-multiplier span {
    position: absolute;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    color: yellow;
}

.rankWithBadge {


    margin: 0 auto; /* Setzt die Seitenmargen auf 'auto' */
    position: relative;
    width: 100px;
    height: 100px;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.levelWithBadge {

    background-image: url(img/level/level_infinity.webp);
    margin: 0 auto; /* Setzt die Seitenmargen auf 'auto' */
    position: relative;
    width: 100px;
    height: 100px;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color:#000;
}

.userProfilePopupEnergy {

    font-size: 12px;
    background-color: rgb(128 128 128 / 63%);
    border-radius: 4px;

    margin: auto;
    padding: 4px;

}



.rankDisplay {
    color: #000;
    position: absolute; /* Absolute Positionierung innerhalb des relativ positionierten Containers */
    bottom: 38px; /* Abstand vom unteren Rand des Containers */
    width: 100%; /* Stellt sicher, dass der Text zentriert ist */
    text-align: center; /* Zentriert den Text horizontal */
}

.rankMenu {

    font-size: 20px;
}

#rankWithBadgeStart {


    margin: 0 auto; /* Setzt die Seitenmargen auf 'auto' */
    position: relative;
    width: 55px;
    height: 55px;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

#rankDisplayStart {
    color: #000;
    position: absolute; /* Absolute Positionierung innerhalb des relativ positionierten Containers */
    bottom: 18px; /* Abstand vom unteren Rand des Containers */
    width: 100%; /* Stellt sicher, dass der Text zentriert ist */
    text-align: center; /* Zentriert den Text horizontal */
}

#rankDisplayStart2 {
    color: #000;
    position: absolute; /* Absolute Positionierung innerhalb des relativ positionierten Containers */
    bottom: 17px; /* Abstand vom unteren Rand des Containers */
    width: 100%; /* Stellt sicher, dass der Text zentriert ist */
    text-align: center; /* Zentriert den Text horizontal */
}

#error-screen {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #FF4040;
    z-index: 9998;
}

/*
#loading-screen {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #FF4040;
    z-index: 9999;
     transition: transform 0.8s ease-in-out; 
}


#loading-screen.slide-out {
    transform: translateX(100%);
}

#loading-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    position: fixed;       
    top: 0;
    left: 0;
    width: 100vw;          
    height: 100vh;         

    background-image: url('img/loadingscreen.webp'); 
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover; 
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    z-index: 999999;       
}
*/

/* NEU */

#loading-screen {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #FF4040;
    z-index: 9999;
    transition: transform 0.8s ease-in-out;
}

#loading-screen.slide-out {
    transform: translateX(100%);
}

#loading-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;

    background-image: url('img/loadingscreen.webp');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
    z-index: 999999;
    overflow: hidden;
}

#loading-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
    pointer-events: none;
}

#loading-logo,
#loading-bar,
#loading-text {
    position: relative;
    z-index: 2;
}

/*NEU*/





#loading-text {
    /* margin-top: 10px; /* Abstand zwischen Text und Balken */
    position: fixed;
    bottom: 30px;
    font-size: 15px;
}

#loading-bar {
    width: 0; /* Beginnt mit 0% Breite */
    height: 20px;
    background-color: transparent;
    border-radius: 5px 5px 5px 5px;
    transition: width 0.3s ease; /* Fügt eine Animation hinzu, wenn die Breite des Balkens geändert wird */
}

#loading-logo {
    position: fixed;
    bottom: 50px;
    width: 8vh; /* Größe des Logos anpassen */
    height: auto;
    margin-bottom: 5px; /* Abstand zwischen Logo und Text */
    animation: spin 4s linear infinite;

}



@keyframes spin {
    from {
      transform: rotate(0deg);
    }
    to {
      transform: rotate(360deg);
    }
  }

#login-logo {
    width: 200px; /* Größe des Logos anpassen */
    height: auto;
    margin-bottom: 5px; /* Abstand zwischen Logo und Text */
}

#navLogo {
    width: 200px; /* Größe des Logos anpassen */
    height: auto;

}

/* Container für die Buddy-Informationen */
.buddy-container {
    background-color: rgba(255,255,255,.05);
    border-radius: 8px;
    margin: 10px;
    flex-wrap: wrap;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px; /* Abstand zwischen den Elementen */
    max-width: 290px;
    box-shadow: none;
    border: 1px solid rgba(255,255,255,.12);
}



/* Bild des Buddys */
.buddy-img {
    flex: 0 0 60px; /* Feste Breite des Bildes */
    height: 100px; /* Feste Höhe des Bildes */
    border-radius: 8px;
    margin-left: 10px;
    margin-top: 10px;
}

.buddyZZZ-img {

height: 150px;

}

/* Container für die Details des Buddys */
.buddy-details {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    margin-top: 10px;
    padding-left: 20px;
    align-items: flex-start;
}

.buddy-details a {
    font-size: 11px;
    color: rgb(255, 255, 255);
    margin-bottom: 5px;
    font-family: 'roboto';

}

.buddy-details img{
    height: 10px;
    width: 10px;
}

/* Container für die Buddy-Aktionen (Buttons) */
.buddy-actions {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.buddy-actions button {
    margin: 5px;
    padding: 10px;
    background-color: rgb(255, 64, 64);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 15px;
    width: 80px;
    box-shadow: 0 3px rgb(135 40 40);
}

.buddy-actions button:hover {
    background-color: #0056b3;
}

.buddy-actions button.deselect-button {
    background-color: #0056b3;
}

.buddy-actions button.deselect-button:hover {
    background-color: #c82333;
}


.buddy-actions button.claim-rewards-button {

    background-color: rgb(255, 64, 64);
    font-family: gymtimer, sans-serif;
    color: yellow;
    font-size: 10px;
    width: 100px;
    box-shadow: 0 3px rgb(135 40 40);
}

.buddy-actions button.upgrade-button {
    background-color: #28a745;
    font-family: gymtimer, sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;

    border: none;
    color: white;
    cursor: pointer;
}

.buddy-actions button.upgrade-button:hover {
    background-color: #218838;
}

.buddy-actions .upgrade-text {
    font-size: 10px;
    margin-bottom: 0px;
}

.buddy-actions .upgrade-details {
    display: flex;
    align-items: center;
    padding-left: 5px;
}

.buddy-actions .upgrade-number {
    font-size: 14px;

}

.buddy-actions .upgrade-icon {
    width: 24px;
    height: 24px;
    padding-bottom: 5px;
}

.close-profilePicturePopup-btn2 {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 120px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    box-shadow: 0 3px rgb(135 40 40);
}

.close-profilePicturePopup-btn, .close-badgePopup-btn {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 120px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    margin-top: 10px;
    box-shadow: 0 3px rgb(135 40 40);

}

 .supportCloseButton, .buddyCloseButton, .buddyButton, #buddyButton button {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 120px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    box-shadow: 0 3px rgb(135 40 40);
}


.buddyButtons {
    display: flex;
    justify-content: space-around;

}

.info-icon {
    width: 30px;
    height: 30px;
    cursor: pointer;
    margin-left: 10px;
    vertical-align: middle;
}

.infoBoxImg {
    position: fixed;
    top: 50px;
    right: 10px;
    z-index: 2;
}

.infoBoxImg4 {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 2;
}



.infoBoxImg2 {
    position: absolute;
    top: 55px;
    right: 156px;
}

.infoBoxImg3 {
    position: absolute;
    top: 15px;
    right: 40px;
}


.goldenEggs {
    position: fixed;
    top: 12px;
    left: 10px;
    color: yellow;
    display: flex;
    align-items: center; /* Vertikale Ausrichtung auf der gleichen Höhe */
    width: 55px;
    padding: 2px;
    border-radius: 5px;
    background-color: rgb(135 40 40);
    justify-content: flex-start;
}

.goldenEggs img {

    width: 24px;
    height: 24px;
}

.info-box {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(255, 255, 255);
    padding: 10px 10px 60px;
    border-radius: 3px;
    z-index: 1000; /* Ensure it is on top of other content */
    max-height: 80vh; /* Maximum height of the info box */
    overflow-y: auto; /* Enable vertical scrolling */
    width: 75vw; /* Set a width for the info box */
    box-sizing: border-box; /* Include padding in width/height calculations */
    max-width: 400px;
    animation: pump5050 0.3s ease;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}

.info-content {
    max-height: 20vh; /* Max height for the content area */
    overflow-y: auto; /* Enable vertical scrolling for the content area */
    color: black;
    background-color: #c9c9c9;
    font-family: 'roboto';
    text-align: left;
    font-size: 11px;
    border: solid 2px rgb(131, 131, 131);
    border-radius: 3px;
    padding: 5px;
}





.info-box p {
    margin: 0;
}

.info-box button {
    position: fixed;
    right: 0;
    left: 0;
    bottom: 0;

    background-color: rgb(255, 64, 64);
    color: white;
    border: none;
    border-radius: 0px;
    cursor: pointer;
}



.info-box button:hover {
    background-color: #218838;
}

.no-buddy-container {

    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
}



#gymwarspage {
    /* display: none; Standardmäßig ausgeblendet */
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 15px;
    font-family: gymtimer, sans-serif;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;

    }


#studioWars {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0px;
    bottom: 0;
    left: 0;
    right: 0;
    color: rgb(255, 255, 255);
    background-color: rgb(191 57 57);
    max-width: 375px;
    margin: auto;
    overflow: scroll;
}
.GymWarsLeaderboard-item, .GymWarsReward-item {
    background-color: rgba(255, 255, 255);
    margin: 20px;
    padding: 10px;
    border-radius: 8px;
    max-width: 355px;
    justify-content: space-between;
    align-items: center;
    color: black;
    font-family: gymtimer, sans-serif;

}
.GymWarsLeaderboard-item span, .GymWarsReward-item p span {
    flex: 1;

}

.studio-item {
    background-color: rgb(135 40 40);
    margin: 3px;
    padding: 0px;

    display: inline-block; /* Änderung zu inline-block für Dreierreihen */
    text-align: center; /* Zentriert den Inhalt horizontal */
    color: black;
    font-family: gymtimer, sans-serif;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    border-radius: 10px;


}

.studio-item:hover {

    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transition: transform 330ms ease-in-out;

}

/* Flexbox-Eigenschaften für den Inhalt der Studio-Elemente */
.studio-item > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* Flex-Verhältnis für den Textinhalt in den Studio-Elementen */
.studio-item span {
    flex: 1;
}

/* Styling für das Bild innerhalb der Studio-Elemente */
.studio-item img {
    width: 50px;
    height: 50px;
    cursor: pointer; /* Macht das Bild anklickbar */
    margin-bottom: 0px; /* Abstand unter dem Bild */
}

.gymWarsButtons {
    padding: 10px;
    height: 35px;
    border-radius: 5px;
    background-color: #00ABFF;
    color: white;
    border: none;
    cursor: pointer;
    font-family: gymtimer, sans-serif;
    box-shadow: 0 3px #01496d;
}
.gymWarsButtons:hover {
    background-color: #00ABFF;
}

.gymWarsDonateButton {
    display: flex;
    align-items: center;
    border-radius: 5px;
    background-color: #00ABFF;
    color: white;

    cursor: pointer;
    font-family: gymtimer, sans-serif;
    margin-left: 5px;
    min-height: 40px !important;
    box-shadow: 0 3px #006799;
}
.gymWarsDonateButton:hover {
    background-color: #00ABFF;
}

.gymWarsDonateButton img {
    margin-left: 5px; /* Adds space between text and image */
    width: 20px;
    height: 20px;
}

.studio-list{

    width: 90%;
    overflow-y: auto; /* Enables vertical scrolling */
    margin: auto;

    color: #000;
    position: relative;
    top: 335px;
    left: 0;
    right: 0;
    bottom: 5px;
    padding-bottom: 180px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 10px;
    border-radius: 10px;

}

.studio-list0{

    max-width: 400px;
    width: 90%;
    overflow-y: auto; /* Enables vertical scrolling */
    margin: auto;
    background-color: unset;
    color: #000;
    margin-top: 235px;


}

.studioPlayer-list{
    display: none;


    width: 80%;
    overflow-y: auto; /* Enables vertical scrolling */
    margin: auto;


    color: #000;


    position: relative;
    top: 195px;
    left: 0;
    right: 0;
    bottom: 5px;
    padding-bottom: 180px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 10px;

}

.gymWars-top-three {
    display: flex;
    justify-content: center;
    align-items: flex-end;
   position: fixed;
   left: 0;
   right: 0;
   margin: auto;
   top: 95px;
   z-index: 1;
   max-width: 370px;
   background: rgb(135, 40, 40);
   border-radius: 0px 0px 12px 12px;
   padding: 5px;
   height: 230px;

}

.gymWars-top-three-item div.studio-name {

}

.gymWars-top-three-item div.gym-energy {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gymWars-top-three-item div.gym-energy img {
    margin-left: 5px; /* Abstand zwischen Text und Icon */
}

.gymWars-top-three .first-place {
    order: 2;

    margin-bottom: 10px;

}


.gymWars-top-three .second-place {
    order: 1;

}

.gymWars-top-three .third-place {
    order: 3;

}

.gymWars-top-three-item {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gymWars-top-three-item img {

}

.gymWars-top-three-item div {

}

.gymWars-rest {
    display: flex;
    flex-direction: column;
    padding-bottom: 80px;
}

.gymWars-Leaderboard-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2px;
    background-color: white;
    border-radius: 5px;
    border: solid 2px black;
    padding: 10px;
}

.studio-rank {
    font-size: 15px; /* Größere Schriftart für die Platzierung */
    font-weight: bold;
    margin-right: 10px; /* Abstand zwischen Platzierung und Bild */
    width: 20px;
}

.studio-image {
    width: 35px;
    height: 35px;
    margin-right: 10px; /* Abstand zwischen Bild und Name */
}

.studio-name {
    flex-grow: 1;
    font-size: 12px;
}

.studio-energy {
    display: flex;
    align-items: center;
    font-size: 12px;
}

.energy-icon {
    width: 20px;
    height: 20px;
    margin-left: 5px; /* Abstand zwischen GymEnergy und Energy Icon */
}

.boost-icon {
    width: 100px !important;
    height: 100px !important;
}

.gymWars-Leaderboard-item img{

    border-radius: 50%;
}

.gymWars-Leaderboard-item span {
    margin-left: 2px;
}

.gymWars-Leaderboard-item div {
     text-align: left;
}

#amountDonate {
    background-color: #00ABFF;
    color: #000;
    width: 160px;
    font-size: 15px;
    font-family: 'gymtimer';
    border-radius: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: 10px;
    padding: 10px 0px;
    border: none;
    outline: none;
    border: solid 2px white;
    height: 15px;
}

#amountDonate[type=text] {
    text-align: center;
}

.gymWarsDonateMenu {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-bottom: 95px;
    background-color: #009ae5;
    height: 65px;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
    display: flex;
    justify-content: center;
    align-items: center;
}


#studioWarsPhase {
    position: fixed;
    top: 97px;
    left: 0;
    right: 0;
    background-color: #00ABFF;
    height: 24px;
    align-content: center;
    padding: 3px;
    margin-bottom: 30px;
    color: white;
    z-index: 3;
}

.chosenStudio {

    background-color: rgb(255, 64, 64);
    position: fixed;
    left: 40px;
    right: 40px;
    top: 130px;
    border-radius: 10px;
    padding: 10px;
    height: 35px;
    max-width: 400px;
    margin: auto;
    border: solid 2px black;
    z-index: 2;

}

#chosenStudio2 {

margin-top: 150px;
margin-bottom: 20px;
}


#chooseYourStudio {

position: fixed;
top: 100px;
right: 0;
left: 0;
color: black;
}

 .closeGymwars, .closeRanking, .closebottom4, .closeShop, .closeAchievments, .closeVoucher, .closeActivitys, .closeSettings {

    background-color: unset;
}

#myStudioSection {


    background-color: unset;
    max-width: 340px;

    border-radius: 8px;
    padding: 15px 15px 35px 15px;
    text-align: left;
    line-height: 0.4;


}

#gymHeaderBlock, #joinPolicyBlock, #joinPolicyControls, #membersBlock {

    background: rgb(22 22 22);
    padding: 20px 20px 20px 20px;
    border-radius: 8px;

}

#studioWarsRewards {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;

}

#createStudioForm,
#studioCreateForm {
  text-align: center;
  background-color: rgb(22 22 22);

  padding: 20px;
  border-radius: 8px;
  max-width: 280px;
  margin: 0 auto;
  margin-top: 140px;
}

.create-header {
  color: white;
  font-size: 28px;
  margin-bottom: 20px;
  margin-top: 50px;

}

.create-label {
  color: white;
  font-size: 14px;

  display: block;
  margin: 10px 0 5px;
  text-align: left;
}

.create-input,
.create-textarea, #modalInput {
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  border: none;
  font-size: 14px;
  box-sizing: border-box;
  background-color: rgb(165 49 49);
  color: rgb(255, 255, 255);
  font-family: 'gymtimer';
}

.create-textarea {
  resize: none;
}

.create-button {
  background-color: #007bff;
  color: white;

  font-size: 20px;
  padding: 12px 20px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  width: 100%;
  margin-top: 20px;
  transition: background-color 0.2s ease;
  font-family: gymtimer, sans-serif;
}

.create-button:hover {
  background-color: #0056cc;
}



.twitter-share-button {

    background-color: rgb(255, 64, 64);
    border-radius: 5px;
    font-size: 10px;
    min-height: 25px !important;
    width: 40px; /* Feste Breite */
    text-align: center;
    color: white;
    height: 20px !important;
    font-family: gymtimer, sans-serif;
    box-shadow: 0 3px rgb(135 40 40);
}

.twitter-share-button:hover {
    background-color: #007bff;
}

.twitter-share-button.active {
    background-color: #007bff;
    color: white;
}

#clock {
    position: absolute;
    top: 30px;
    right: 10px;
    font-size: 15px;
    color: black; /* Farbe des Textes, kann angepasst werden */
    background-color: none; /* Hintergrundfarbe mit Transparenz */
    padding: 5px;
    border-radius: 5px;
    z-index: 1;
}


/* Allgemeine Container-Einstellungen für das Popup */
/* Allgemeine Container-Einstellungen für das Popup */
#userProfilePopup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px 20px 20px; /* Zusätzlicher Padding-Bereich für den unteren Teil */
    background-color: rgb(191 57 57); /* Dunkler Hintergrund ähnlich dem Beispielbild */
    border-radius: 15px; /* Rundungen für das Popup */
    width: 270px; /* Breite des Popups */
    z-index: 1000;
    color: #fff; /* Weiße Schriftfarbe */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7); /* Leichter Schatten für Tiefe */
    text-align: center; /* Zentriert den Text innerhalb des Popups */
    box-sizing: border-box;
    animation: pump5050 0.3s ease;
    z-index: 11111;

}

/* Stil für den Overlay-Hintergrund */
#userProfilePopupOverlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Halbtransparenter schwarzer Hintergrund */
    z-index: 11111;
}

/* Container für das Profilbild */
#profileContainer {
    position: relative;
    display: inline-block;
    width: 100%;
    text-align: center;
}

/* Profilbild als runder Background-Kreis */
#userProfilePopupPicture {
    width: 120px;
    height: 120px;
    margin: 0 auto;
    border-radius: 50%;
    border: 4px solid rgb(191 57 57);

    background-color: #000;             /* wichtig: dunkler Hintergrund unter Transparenz */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Badge als runder Background-Kreis über dem Profilbild */
#userProfilePopupBadge {
    position: absolute;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    border: 4px solid rgb(191 57 57);

    background-color: #000;             /* ebenfalls schwarz unter Transparenz */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    /* Position: unten rechts über dem Profilbild (kannst du bei Bedarf fein-tunen) */
    bottom: 5px;
    right: calc(50% - 60px);
}


/* Stil für die Informationen (Name, Email) */
#userInfo {
    margin-top: 20px; /* Abstand zum Profilbild */
    margin-bottom: 10px;
}

#userProfilePopupNickname {
    font-size: 30px;
    margin-bottom: 5px;
}

#userProfilePopupEmail {
    font-size: 14px;
    color: #bbb; /* Leicht helleres Grau für die Email-Adresse */
}

/* Stil für die Social Media Links */
#socialMediaLinks {

    text-align: center;
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: center;
    font-size: 10px;
    padding-bottom: 20px;
}

.icon {
    width: 24px;
    height: 24px;
    vertical-align: middle;
}

.icon:hover {
    opacity: 0.8; /* Leichter Hover-Effekt */
}

/* Stil für den Schließen-Button */
.close-profilePopup-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 30px;
    font-weight: bold;
    color: #000000; /* Weiße Schriftfarbe */
    cursor: pointer; /* Zeigt den Cursor als Pointer, um Klickbarkeit anzuzeigen */
    background: none;
    border: none;
    outline: none;
    z-index: 1;

}

.close-profilePopup-btn:hover {
    color: #ff0000; /* Rote Farbe beim Hover */
}

#userProfilePopupBadge {
    position: absolute;
    top: 70px;
    right: 40px; /* Position relativ zum Profilbild */
    z-index: 1002;
}

#popupBadge {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-bottom: 10px;

    border: 4px solid rgb(165 49 49); /* Gleiche Farbe wie der Popup-Hintergrund für sauberes Aussehen */
    background-color: white;

}




.icon-container3 {
    position: fixed;
    top: 10px;
    left: 12px;
    width: 45px;
    height: 45px;
    display: inline-block;
    text-align: center;

}

.icon-container2 {
    position: fixed;
    top: 55px;
    left: 12px;
    width: 45px;
    height: 45px;
    display: inline-block;
    text-align: center;
}

.icon-container {
    position: fixed;
    top: 100px;
    left: 10px;
    width: 45px;
    height: 45px;
    display: inline-block;
    text-align: center;
    margin-top: 7px;
}

.icon-large {
    width: 45px;
    height: 45px;

}

.icon-large2 {
    width: 45px;
    height: 45px;
    border-radius: 10px;
    border: solid 2px black;

}

.icon-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: black;
    font-size: 16px;

}

.gymenergy-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    background-color: unset;
    padding: 5px;
    border-radius: 4px;
    width: 150px;
    margin: auto;
}

.energy-value {
    font-size: 18px;

    color: rgb(255, 255, 255);
}

.icon-small {
    width: 24px;
    height: 24px;

}



#userProfilePopupFriendButton {


    padding: 5px;
    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    height: 18px;
    min-height: 30px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 12px;


    }

.addFriendButton {

        background-color: #28a745;
        padding: 5px;
        font-style: normal;
        border-radius: 5px 5px 5px 5px;
        height: 18px;
        min-height: 30px;
        text-decoration: none;
        color: white;
        font-family: gymtimer, sans-serif;
        font-size: 12px;
        box-shadow: 0 3px rgb(135 40 40);


}



    .friendRequestButton {
        background-color: rgb(255, 64, 64);
        padding: 5px;
        font-style: normal;
        border-radius: 5px;
        height: 18px;
        width: 50px;
        text-decoration: none;
        color: white;
        font-family: gymtimer, sans-serif;
        font-size: 12px;

        min-height: 30px;
        border: none; /* Entfernt den Standard-Button-Rand */
        cursor: pointer; /* Zeigt den Cursor als Hand-Icon */
        box-shadow: 0 3px rgb(135 40 40);
    }

    .friendRequestButton.accept {
        background-color: #28a745; /* Grüne Farbe für den Accept-Button */
    }

    .friendRequestButton.reject {
        background-color: rgb(255, 64, 64); /* Rote Farbe für den Reject-Button */
    }


    /* SOCIAL MEDIA LINKS */


    #socialMediaSettings {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
    }

    .social-media-input-group {
        margin-bottom: 20px;
        margin-top: 20px;
        border: 1px solid rgba(255,255,255,.12);
        border-radius: 6px;
    }

    .social-media-input-group label {
        display: block;
        text-transform: uppercase;
        font-size: 15px;
        text-align: left;
        background-color: rgba(0,0,0,.18);
        border-radius: 5px 5px 0px 0px;
        padding: 5px;
    }

    .input-button-container {
        display: flex;
        align-items: center;
        gap: 10px;
        justify-content: center;
        padding: 0px 12px 10px 12px;
    }

    .input-button-container input {
        flex: 2;
        padding: 10px;
        border-radius: 0;
        border: none;
        font-size: 15px;
        background-color: #FF4040; /* Red background for input */
        color: white;
        text-transform: uppercase;
    }

    .input-button-container .edit-btn {
        flex: 1;
        padding: 10px;
        background-color: #FFDD44; /* Yellow background for button */
        border: none;
        cursor: pointer;
        text-transform: uppercase;

        color: black;
        height: 100%; /* Makes the button height match the input field */
    }

    .input-button-container .edit-btn:hover {
        background-color: #FFC107; /* Darker yellow on hover */
    }


    #instagram, #twitter, #tiktok {
        background-color: rgb(165 49 49);

        width: 250px;

        font-family: 'gymtimer';
        border-radius: 6px;
        padding: 10px 0px 10px 0px;
        border: none;
        outline: none;

    }

    #instagram[type=text], #twitter[type=text], #tiktok[type=text] {
         text-align: left;
         padding-left: 10px;
    }


     .save-btn {
            background-color: rgb(255, 64, 64);
            padding: 10px;
            font-style: normal;
            border-radius: 4px;
            text-align: center;
            text-decoration: none;
            display: inline-block;
            margin: 0 auto;
            text-decoration: none;
            color: white;
            font-family: gymtimer, sans-serif;
            height: 38px;



     }


/*
        .circular-slider {
            position: absolute;
            width: 100px;
            height: 100px;
            border-radius: 50%;

            box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
            background: radial-gradient(circle, transparent 50%, rgb(255, 64, 64) 55%);

           right: 50px;
           margin-top: -90px;
        }

        .knob {
            position: absolute;
            width: 20px;
            height: 20px;
            background: #ffffff;
            border-radius: 50%;
            transform: translate(-50%, -50%);
            cursor: pointer;
            touch-action: none;
            border: 1px solid rgb(114, 114, 114);
             box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
        }


*/

.circular-slider {
    position: sticky;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    background: radial-gradient(circle, transparent 50%, rgb(255, 64, 64) 55%);
    left: 270px;
    margin-top: -80px;
}

.circular-sliderOption {
    position: sticky;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    background: radial-gradient(circle, transparent 50%, rgb(255, 64, 64) 55%);
    left: 250px;
    margin-top: -80px;
}

.knob {
    position: absolute;
    width: 15px;
    height: 15px;
    background: #ffffff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
    touch-action: none;
    border: 1px solid rgb(114, 114, 114);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}



/* TOURNAMENT SPRING */

#tournamentButtonArea2Sprint {

    position: fixed; /* Fixierte Positionierung */
    top: 155px; /* 200px vom oberen Rand entfernt */
    right: 76px;
    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */
    background-color: none;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#tournamentButtonAreaSprint {
    position: absolute; /* Fixierte Positionierung */

    display: flex;
    flex-direction: column; /* Ordne die Buttons vertikal untereinander an */

    background-image: url(img/sprint_icon.webp);
    background-size: 55px 55px; /* Setze die Größe des Hintergrundbildes */
    background-repeat: no-repeat;
    width: 55px;
    height: 55px;
    animation: pump 0.3s ease;

}

#tournamentButtonAreaSprint:active {
    width: 55px; /* Macht das div beim Klicken 3px schmaler */
    height: 55px; /* Macht das div beim Klicken 3px kürzer */
    background-size: 59px 59px; /* Passt die Größe des Hintergrundbildes an */
}

 #tournamentpageSprint {
        display: flex;
        justify-content: center;
        align-items: center;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; /* Stellt sicher, dass der gesamte Viewport abgedeckt ist */
        font-size: 25px;
        background-color: rgb(191 57 57);
        z-index: 10; /* Setzt sicher, dass das Element über anderen Elementen liegt */
        max-width: 400px;
        margin: auto;
 }

#mainCountdownTimerSprint{
    width: 45px;
    margin-top: 40px;
    margin-left: 2px;
    font-size: 8px;
    z-index: 9999;
    background-color: black;
    color: white;
    padding: 3px;
    border-radius: 5px 5px 5px 5px;
    font-family: 'roboto';



}



.scrollableLeaderboardListSprint {
    /*  max-height: 350px; /* Adjust based on your design needs */
      overflow-y: auto; /* Enables vertical scrolling */
      padding-top: 5px; */
      border: 0px solid #ccc; /* Optional: adds a border around the scrollable area */
      border-radius: 10px; /* Optional: rounds the corners of the scrollable area */
      background-color: none;

}

#leaderboardSprint {

      color: #000;
      margin-left: 20px;
      margin-right: 20px;
      margin-top: 295px;

}
#countdownTimerTournamentSprint {

    background-color: #000;
    font-size: 15px;
    padding: 5px;
    width: 100%;
    position: fixed;
    top: 98px;
    right: 0;
    left: 0;
    z-index: 2;

}
.closeSprint {

    background-color: rgb(255, 64, 64);
    height: 60px;
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}
.closeSprint i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
}

/* NEWS */

.modal-contentNews {
    max-height: 250px; /* Legen Sie eine maximale Höhe fest */
    overflow-y: auto; /* Aktiviert Scrollen bei vertikalem Überlauf */
    margin: 10px 0; /* Abstand oben und unten */
    padding: 0px 10px 10px 10px; /* Innenabstand */
    background-color: rgb(135 40 40); /* Optional: Hintergrundfarbe */
    border-radius: 5px; /* Optional: Abgerundete Ecken */

    box-shadow:
    inset 0 6px 6px -6px rgba(0, 0, 0, 0.4),   /* oben */
    inset 0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}





/* FIRENDS  */

#friendpage {
    /* display: none; Standardmäßig ausgeblendet */
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    margin-top: 30px;
    background-color: rgb(191 57 57);


    }


#searchResults {

    flex-direction: column;
    align-items: left;
    width: 100%;
    max-height: 55vh;
    overflow-y: auto;
    color: #000000;
    justify-content: center;
}

#searchResults .friendItem {
    display: flex;
    align-items: center;
    height: 40px;
    font-size: 12px;
    background-color: #d8d8d8;
    border-radius: 10px;
    margin-bottom: 5px;
    padding: 5px;
}

#searchResults .friendItem button {
    margin-left: auto;
    background-color: rgb(255, 64, 64);
    color: white;
    border-radius: 5px;
    padding: 5px 10px;
    cursor: pointer;
}



#searchResults .pendingFriendButton {
    background-color: grey !important;
    cursor: not-allowed;
    height: 40px;
    font-size: 12px;
    font-family: gymtimer, sans-serif;
}

.friend-section {
    display: none; /* Standardmäßig ausblenden */
    padding: 20px;
    padding-top: 60px;
    max-width: 400px;
    margin: auto;

}


#searchFriendInput {
    background-color: rgb(165 49 49);
    color: black;
    width: 250px;

    font-family: 'gymtimer';
    border-radius: 5px 0px 0px 5px;
    padding: 10px 0px 10px 0px;
    border: none;
    outline: none;


}

#searchFriendInput[type=text] {
     text-align: left;
     padding-left: 10px;
     color: white;
}


#searchFriendButton, #addFriendButton {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 0px 5px 5px 0px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    height: 38px;



}

.friends-input-button-container {
    display: flex;
    align-items: center;
}

.friends-input-button-container input {
    flex: 2;
    padding: 10px;
    border-radius: 0;
    border: none;
    font-size: 15px;
    background-color: #FF4040; /* Red background for input */
    color: white;
    text-transform: uppercase;
}

.friends-input-button-container .edit-btn {
    flex: 1;
    padding: 10px;
    background-color: #FFDD44; /* Yellow background for button */
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    color: black;
    height: 100%; /* Makes the button height match the input field */
}

.friends-input-button-container .edit-btn:hover {
    background-color: #FFC107; /* Darker yellow on hover */
}

#friendLinkInput {
    background-color: rgb(165 49 49);
    color: black;
    width: 250px;

    font-family: 'gymtimer';
    border-radius: 5px 0px 0px 5px;
    padding: 10px 0px 10px 0px;
    border: none;
    outline: none;

}

#profileNameInput, #code, #profileDescriptionInput, #editProfileDescription, #editProfileName {
    background-color: rgb(165 49 49);
    color: black;
    width: 95%;
    margin-bottom: 10px;

    font-family: 'gymtimer';
    border-radius: 5px 5px 5px 5px;
    height: 43px;
    border: none;
    outline: none;

}

#profileNameInput[type=text], #code[type=text], #friendLinkInput[type=text], #profileDescriptionInput[type=text], #editProfileName[type=text], #editProfileDescription[type=text] {
    text-align: left;
    padding-left: 10px;
   color: white;

}

::placeholder {
    color: black;
    opacity: 0.3; /* Firefox */


}

.invite-friend-points {
    display: inline-flex; /* Flexbox für Inline-Ausrichtung */
    align-items: center; /* Vertikale Ausrichtung in der Mitte */
    gap: 5px; /* Abstand zwischen Text und Icon */
    font-size: 25px; /* Schriftgröße für Text */

}

.points-icon2 {
    width: 20px; /* Breite des Icons */
    height: 20px; /* Höhe des Icons */
    vertical-align: middle; /* Sicherstellen, dass das Icon vertikal zentriert ist */
}

#linkCodeDisplay {
    padding: 5px;
    background-color: rgb(165 49 49);
    font-size: 25px;
}

.code-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px; /* Abstand zwischen Code und Button */
}

.bottomFriendsPage i{
    font-size: 35px;
    padding-top: 5px;
    height: 44px;
    }

.bottomFriendsPage {
    background-color: rgb(255, 64, 64);
    margin-left: 0px;
    margin-right: 0px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    color: black;
    padding: 8px;
    box-shadow:  0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}



/* DASHBOARD */

/*NICKNAME*/

.nickname-container {
    display: flex; /* Flexbox aktivieren */
    align-items: center; /* Vertikal zentrieren */
    justify-content: center;

    gap: 10px; /* Abstand zwischen den Elementen */
    margin: 10px 0; /* Optional: Abstand zum nächsten Element */
}

.nickname {
    font-size: 25px;
    margin-left: 15px;
    margin-top: 10px;
    color: #ffffff;
    white-space: nowrap; /* Verhindert Zeilenumbrüche */
}

#change-nickname-button {
    font-size: 12px;
    padding: 5px 10px;
    border: none;
    border-radius: 5px;
    background-color: rgb(255, 64, 64);
    color: white;
    cursor: pointer;
    white-space: nowrap; /* Verhindert Zeilenumbrüche */
    font-family: gymtimer, sans-serif;
    box-shadow: 0 3px rgb(135 40 40);
    height: 30px;
}

#change-nickname-button:hover {
    background-color: #0056b3;
}

#change-nickname-button:active {
    transform: scale(0.95);
}

/* Dashboard Profile Picture */

.profilePicturePopup {
    position: fixed; /* Popup fixiert über dem Inhalt */
    z-index: 100; /* Stellt sicher, dass das Popup über anderen Elementen angezeigt wird */
    left: 0;
    top: 0;
    width: 100%; /* Vollbildbreite */
    height: 100%; /* Vollbildhöhe */
    background-color: none; /* Dunkler Hintergrund */
    display: flex;
    justify-content: center; /* Zentriert den Inhalt horizontal */
    align-items: center; /* Zentriert den Inhalt vertikal */
}

.profilePicture-content {
    background-color: rgb(191 57 57);

    padding: 20px; /* Innenabstand */
    border-radius: 10px; /* Abgerundete Ecken */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7); /* Leichter Schatten für Tiefe */
    text-align: center; /* Zentriert den Text */
    max-width: 250px; /* Maximale Breite des Popups */
    width: 100%; /* Passt sich der Bildschirmbreite an, max. jedoch 600px */
    font-size: 20px;
    animation: pump 0.3s ease;
}

.profilePicture-content2 {
    background-color: rgb(191 57 57); /* Weißer Hintergrund für den Popup-Inhalt */
    padding: 20px; /* Innenabstand */
    border-radius: 8px; /* Abgerundete Ecken */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7); /* Leichter Schatten für Tiefe */
    text-align: center; /* Zentriert den Text */
    max-width: 230px;
    width: 230px; /* Maximale Breite des Popups */
    display: block;
    font-size: 20px;
    animation: pump 0.3s ease;
}






.profilePicturelocked  {

    opacity: 0.5;
}

/* ✅ Haupt-Grid für die Profilbild-Auswahl */
.profile-picture-grid {
    display: flex;
    flex-direction: column; /* Sektionen untereinander anzeigen */
    gap: 20px; /* Abstand zwischen den Sektionen */
    margin-top: 20px;
    height: 300px;
    overflow-y: auto; /* Scrollbar bei Bedarf */
    padding: 10px;
    border-radius: 8px;
    align-items: center; /* Zentrierung der Sektionen horizontal */
    box-shadow:
    inset 0 6px 6px -6px rgba(0, 0, 0, 0.4),   /* oben */
    inset 0 -6px 6px -6px rgba(0, 0, 0, 0.4);
}

/* ✅ Abschnitt für Profilbilder (Uploaded & Standard) */
.profile-picture-section {
    display: grid;
    grid-template-columns: repeat(2, 60px); /* Genau 3 Bilder pro Reihe */
    gap: 10px; /* Abstand zwischen den Bildern */
    justify-content: center; /* Zentrierung der Bilder in der Sektion */
    background-color: rgb(135 40 40);
    padding-top: 20px;
    padding-bottom: 35px;
    width: 100%;
    border-radius: 10px 10px 10px 10px;
}

/* ✅ Wrapper für jedes Profilbild */
.profile-picture-wrapper {
    position: relative;

    justify-content: center;
    align-items: center;

    border-radius: 50%;
}

/* ✅ Profilbild selbst */
.profile-picture-option {
    width: 100%;
    height: 100%;
    object-fit: cover;
    cursor: pointer;
    border: 2px solid #FF4040;
    border-radius: 50%;
    overflow: hidden;
    transition: border-color 0.3s;
    height: 60px;
    width: 60px;
}

/* ✅ Löschen-Button für Benutzer-Uploads */
.profile-picture-wrapper .delete-icon {
    position: absolute;
    top: 0;
    right: 0;
    background: red;
    color: white;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    text-align: center;
    line-height: 18px;
    font-size: 12px;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    border: 1px solid white;
    transition: background 0.3s;
}

/* ✅ Titel für die Sektion */
.profile-picture-section h4 {
    grid-column: span 3; /* Titel über die volle Breite der Sektion */
    text-align: center;
    margin-bottom: 10px;
    margin-top: 0px;


}





/* ✅ Hover-Effekt für Profilbilder */
.profile-picture-option:hover {
    border-color: #007bff;
}

/* ✅ Profilbild-Bild */
.profile-picture-option img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: block;
}

/* ✅ Gelockte (nicht freigegebene) Profilbilder */
.profilePicturelocked {
    opacity: 0.5;
    cursor: not-allowed;

}



/* ✅ Hover-Effekt für Löschen-Button */
.profile-picture-wrapper .delete-icon:hover {
    background: darkred;
}



/* ✅ Responsives Design für kleinere Bildschirme */

    .profile-picture-section {
        grid-template-columns: repeat(2, 60px); /* Zwei Bilder pro Reihe auf kleinen Bildschirmen */
        gap: 8px;
        background-color: rgb(135 40 40);
        border-radius: 10px 10px 10px 10px;
        padding-bottom: 35px;
        padding-top: 20px;
        width: 100%;

    }

    .profile-picture-wrapper {
        width: 60px;
        height: 60px;
    }

    .profile-picture-option {
        border-width: 2px;
        height: 60px;
    }

    .profile-picture-wrapper .delete-icon {
        width: 16px;
        height: 16px;
        font-size: 10px;
        line-height: 16px;
    }





/* ✅ Benutzerdefinierter Upload-Button */
#customUploadButton {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    color: white;
    font-family: 'gymtimer', sans-serif;
    font-size: 15px;
    cursor: pointer;
    border: none;
    height: 45px;
    width: 180px;
    margin-bottom: 10px;
    margin-top: 20px;
}

.customUploadButtonGymwars {
    background-color: rgb(255, 64, 64);
    padding: 10px;
    font-style: normal;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    color: white;
    font-family: 'gymtimer', sans-serif;
    font-size: 15px;
    cursor: pointer;
    border: none;
    width: 180px;
}





.popupBlackBackground {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Halbtransparenter schwarzer Hintergrund */
    z-index: 2;
}

.popupBlackBackground2 {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Halbtransparenter schwarzer Hintergrund */
    z-index: 2;
}

.friend-invite {

    width: 220px;
    height: 220px;
    animation: pump 0.3s ease;
}

#inviteFriendsSection {
    position: fixed;               /* Fixiert den Container relativ zum Viewport */
    top: 50%;                      /* Positioniert den Container 50% von oben */
    left: 50%;                     /* Positioniert den Container 50% von links */
    transform: translate(-50%, -50%); /* Zentriert den Container genau in der Mitte */

    flex-direction: column;        /* Ordnet die Kinder untereinander an */
    align-items: center;           /* Zentriert die Kinder horizontal */
    justify-content: center;       /* Zentriert die Kinder vertikal */
    text-align: center;            /* Zentriert den Textinhalt */
    /* Optional: Falls der Container den gesamten Bildschirm abdecken soll */

    padding-top: 0px !important;
}


/* LEVEL POPUP */

.popupLevelUp {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }

  /* Popup-Box (falls du sie stylen willst) */
  .popup-content-levelUp {
    padding: 20px 40px;
    border-radius: 8px;
    background: transparent; /* oder eine Farbe, wenn du magst */
  }

  /* Jede einzelne Zeile */
  #levelUpAnim .line {
    font-size: 70px;
    color: yellow;
    opacity: 0;
    /* Animation defined below */
    animation: fadeUp 1.5s ease forwards;
  }

  /* Versetzte Starts per JS über inline style.animationDelay */

  /* Keyframes: fade in, kurz halten, fade out nach oben */
  @keyframes fadeUp {
    0%   { opacity: 0; transform: translateY(20px); }
    20%  { opacity: 1; transform: translateY(0);    }
    60%  { opacity: 1; transform: translateY(0);    }
    100% { opacity: 0; transform: translateY(-20px); }
  }

/* ANIMATION FLY IN VOUCHER */

/* Bild ist normal sichtbar und zoomt dann nach hinten weg */
.voucherFlyIn {
    width: 110px;
    height: 110px;
    border-radius: 15px;
    object-fit: cover;

    /* Start normal */
    transform: scale(1) translateZ(0);
    opacity: 1;

    animation: voucherImpactReverse 0.9s ease-out forwards;
}

/* Reverse: vor dem Display → zurückfliegen → shake → normal */
@keyframes voucherImpactReverse {
    0% {
        transform: scale(2) translateZ(200px); /* sehr nah am Gesicht */
        opacity: 0.2;
    }
    20% {
        transform: scale(1.2) translateZ(40px);
        opacity: 1;
    }
    50% {
        transform: scale(1) translateZ(0); /* Aufprallpunkt */
    }
    65% {
        transform: scale(1.05) rotate(0.7deg); /* Shake */
    }
    85% {
        transform: scale(0.98) rotate(-0.7deg);
    }
    100% {
        transform: scale(1) rotate(0deg); /* stabil stehen bleiben */
        opacity: 1;
    }
}



/* Animation */

@keyframes pump {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.1); }
    100% { transform: scale(1); }
}

@keyframes pump50 {
    0%   { transform: translateX(-50%) scale(1); }
    50%  { transform: translateX(-50%) scale(1.1); }
    100% { transform: translateX(-50%) scale(1); }
}

@keyframes pump5050 {
    0%   { transform: translate(-50%, -50%) scale(1); }
    50%  { transform: translate(-50%, -50%) scale(1.1); }
    100% { transform: translate(-50%, -50%) scale(1); }
  }



  #energy-collect-container {
    position: relative;
    width: 50px;
    height: 50px;
    overflow: visible;
    z-index: 1;
    top: -4px;
    left: 90px;
  }

  #energy-collect-container img.coin {
    position: absolute;
    bottom: 0;
    left: calc(50% + var(--left-offset, 0px));
    width: 32px;
    height: 32px;
    animation: vibrate 0.3s linear 1 forwards;
    pointer-events: none;
  }

  @keyframes coin-anim {
    from {
      transform: translateY(0) scale(1);
      opacity: 1;
    }
    to {
      transform: translateY(-100px) scale(0.5);
      opacity: 0;
    }
  }

 @keyframes vibrate {
  0%   { transform: translateX(-50%) translateY(0); }
  20%  { transform: translateX(-50%) translate(-1px, 1px); }
  40%  { transform: translateX(-50%) translate(-1px, -1px); }
  60%  { transform: translateX(-50%) translate(1px, 1px); }
  80%  { transform: translateX(-50%) translate(1px, -1px); }
  100% { transform: translateX(-50%) translateY(0); }
}


  /* Heist Container */
  #heistContainer {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 375px;
    width: 320px;
    max-width: 400px;
    max-height: 400px;
    height: 320px;
    background-image: url(https://app.gymbattlz.com/appdata/img/events/heist/vault.webp);
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 8px;
    font-family: gymtimer, sans-serif;
    text-align: center;
    

  }



#shieldImage {
  position: absolute;
  top: 277px;    /* Dein gewünschter Abstand von oben */
  right: 30px;  /* Dein gewünschter Abstand von rechts */
  display: none;
 
}

#shieldImage img {
  width: 48px;  /* Beispielgröße */
  height: auto;
}

#heistLogo {
  position: absolute;
  top: -13px;    /* Dein gewünschter Abstand von oben */
  right: 70px;  /* Dein gewünschter Abstand von rechts */
  z-index: 100; /* Damit es immer oben liegt */
}

#heistLogo img {
  width: 180px;  /* Beispielgröße */
  height: auto;
}

  /* Mega-Heist: */
#heistContainer.mega {
  background-image: url('https://app.gymbattlz.com/appdata/img/events/heist/vaultmegaopen.webp');
}

#heistContainer.normal {
  background-image: url('https://app.gymbattlz.com/appdata/img/events/heist/vaultnormalopen.webp');
}

#heistContainer.closed {
  background-image: url('https://app.gymbattlz.com/appdata/img/events/heist/vault.webp');
}

.heist-result-header {
  position: fixed;
  top: -15px;
  font-size: 33px;
  text-align: center;
  left: 0;
  right: 0;
  margin: auto;
  width: 180px;



}

.heistenergy-icon {
  width: 28px;
  height: 28px;
  vertical-align: sub;
 
}

/* Die normalen Zeilen darunter */
.heist-result-lineLocker {
  font-size: 10px;
  text-align: center;
  position: fixed;
  left: 0;
  right: 0;
  background: #00000091;
  width: 149px;
  padding: 4px;
  margin-left: 85px;
  border-radius: 4px;
  color: white;
}

.heist-result-lineCorrect {
  font-size: 0.8rem;
  text-align: center;
  position: fixed;
  
  width: 25%;
  padding: 4px;
  color: yellow;
  border-radius: 4px;
  top: 185px;
  background-color: #00000091;


}

.heist-result-lineStolen {
  font-size: 25px;
  text-align: center;
  position: fixed;
  left: 0;
  right: 0;
  color: #00A4FF;
  background: #00000091;
  max-width: 100%;
  border-radius: 6px;
  margin: auto;
  margin-left: 84px;
  margin-right: 77px;
  padding: 4px;
  top: 135px;


}

  /* Input-Felder */
  #heistInputs {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 12px;
    font-family: gymtimer, sans-serif;
  }
  #heistInputs input {
    width: 20px;
    padding: 8px;
    font-size: 18px;
    text-align: center;
    border: 2px solid #ff4040;
    border-radius: 5px;
    background-color: #fff5f5;
    font-family: gymtimer, sans-serif;
  }

  /* Heist-Button */
  #heistBtn {
    position: fixed;
    top: 120px;
    left: 0;
    right: 0;
    margin: auto;
    padding: 8px;
    background-color: #00A4FF;
    color: white;
    font-size: 16px;
    border: solid 2px black;
    border-radius: 5px;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    font-family: gymtimer, sans-serif;
    width: 130px;
    line-height: 0.9;
    box-shadow: 0 3px 0 0px #004368;
  }
  #heistBtn:hover:not(.heistBtnDisabled) {
    transform: scale(1.05);
  }
  #heistBtnDisabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: grey;
  }

   #confirmBtn {
    padding: 10px 20px;
    background-color: #ff4040;
    color: white;
    font-size: 16px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    font-family: gymtimer, sans-serif;
  }
  #confirmBtn:hover:not(.heistBtnDisabled) {
    transform: scale(1.05);
  }
  #confirmBtnDisabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: grey;
  }

  #shieldBtn {
    position: fixed;
    top: 180px;
    right: 0;
    left: 0;
    margin: auto;
    padding: 8px;
    background-color: #00A4FF;
    color: white;
    font-size: 16px;
    width: 130px;
    border-radius: 5px;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
    font-family: gymtimer, sans-serif;
    border: solid 2px black;
    line-height: 0.9;
    box-shadow: 0 3px 0 0px #004368;
  }
  #shieldBtn:hover:not(.heistBtnDisabled) {
    transform: scale(1.05);
  }
  #shieldBtnDisabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: grey;
    box-shadow: 0 3px 0 3px #4e4e4e;
  }

.code-display {
  position: fixed;
  background: #B5C5AD;
  border-radius: 5px;
  left: 90px;
  top: 55px;
  width: 137px;
  font-size: 2rem;
  letter-spacing: 0.5rem;
  margin: 1rem 0;
  min-height: 2.5rem;
  display: none;
  padding: 3px;
  color: black;
  border: solid black 2px;
}

.numpad {
  position: fixed;
  left: 88px;
  bottom: 80px;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  max-width: 150px;
  margin: 0 auto 1rem;
}

.numpad button {
  font-size: 1.5rem;
  padding: 0.5rem;
  cursor: pointer;
  border: solid 2px black;
  background: lightslategray;
  font-family: 'gymtimer';
  line-height: 1.2;
}

  /* Ergebnis-Anzeige */
  .heistDisplay {
    position: fixed;
    top: 100px;
    left: 85px;
    width: 280px;
    margin-top: 12px;
    min-height: 60px;
   
    font-size: 15px;
    color: #333;

  }

  /* Animation für richtige/wrong Eingaben */
  @keyframes flashCorrect {
    from { background-color: #d4edda; }
    to   { background-color: transparent; }
  }
  @keyframes flashWrong {
    from { background-color: #f8d7da; }
    to   { background-color: transparent; }
  }

  .heist-correct {
    animation: flashCorrect 0.8s ease-out forwards;
  }
  .heist-wrong {
    animation: flashWrong 0.8s ease-out forwards;
  }

  /* GymEnergy-Anzeige */
  #energyDisplay {

    color: #000000;
    position: fixed;
    top: 283px;
    right: 0;
    left: 0;
    margin: auto;
    width: 200px;
    background-color: #00A4FF;
    border-radius: 5px;
    padding: 5px 5px 0px 5px;
    border: solid black 2px;
    font-size: 20px;

  }

  @keyframes smash {
  0% {
    transform: scale(1) rotate(0deg);
  }
  20% {
    transform: scale(1.05) rotate(2deg);
  }
  40% {
    transform: scale(0.95) rotate(-2deg);
  }
  60% {
    transform: scale(1.02) rotate(1deg);
  }
  80% {
    transform: scale(0.98) rotate(-1deg);
  }
  100% {
    transform: scale(1) rotate(0deg);
  }
}

@keyframes smash5050 {
  0% {
    transform: translate(-50%, -50%) scale(1)   rotate(0deg);
  }
  10% {
    transform: translate(-50%, -50%) scale(1.05) rotate(2deg);
  }
  20% {
    transform: translate(-50%, -50%) scale(0.95) rotate(-2deg);
  }
  30% {
    transform: translate(-50%, -50%) scale(1.02) rotate(1deg);
  }
  40% {
    transform: translate(-50%, -50%) scale(0.98) rotate(-1deg);
  }
  50% {
    transform: translate(-50%, -50%) scale(1)   rotate(0deg);
  }
  60% {
    transform: translate(-50%, -50%) scale(1.05) rotate(2deg);
  }
  70% {
    transform: translate(-50%, -50%) scale(0.95) rotate(-2deg);
  }
  80% {
    transform: translate(-50%, -50%) scale(1.02) rotate(1deg);
  }
  90% {
    transform: translate(-50%, -50%) scale(0.98) rotate(-1deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(5)   rotate(0deg);
  }


}

.smash5050 {
  animation: smash5050 7s infinite ease-in-out;
  transform-origin: center center;
}

  .heist-intro {
    position: fixed;
    top: 120px;
    left: 85px;
    width: 150px;
    margin-top: 12px;
    min-height: 60px;
    white-space: pre-line; /* Zeilenumbrüche anzeigen */
    font-size: 20px;
    color: #000;
    animation: smash 3s ease-in-out infinite both;
  }

  .fade-up {
    opacity: 0;
    display: block;
    animation: fadeUp 3s ease-in-out forwards;
  }

  @keyframes fadeInUp {
    0%   { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
  }

  .fade-in-up {
    opacity: 0;
    animation: fadeInUp 1s ease-out forwards;
  }

  .heist-cooldown {
    font-size: 1.2em;

    color: darkslategrey;
    margin-top: 10px;
  }


  /* ACITVITYS */

 .calendar-container {
  background: rgb(22 22 22);
  border-radius: 12px;
  padding: 14px;
  margin-bottom: 10px;
  margin-left: 20px;
  margin-right: 20px;
}

.calendar-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
  font-size: 18px;
}

.calendar-table {
  width: 100%;
  font-size: 16px;
  table-layout: fixed;
}

/* Header */
.calendar-table th {
  text-align: center;
  height: 24px;
  font-weight: 800;
  color: #fff;
  opacity: 0.85;
}

/* Day cells */
.calendar-table td {
  position: relative;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  cursor: pointer;

  /* Inhalte manuell positionieren */
  text-align: left;
  vertical-align: top;

  /* etwas Luft für Tag + Icon */
  padding: 3px 4px;

  /* Zahl im TD nicht direkt anzeigen (wir nutzen data-day) */
  color: transparent;
  font-weight: 800;
}

/* 📅 Tag links oben */
.calendar-table td::before {
  content: attr(data-day);
  position: absolute;
  top: 3px;
  left: 5px;
  font-size: 13px;
  font-weight: 900;
  color: #fff;
}

/* ✅ Eintrag vorhanden (gelber Rand) */
.calendar-table .has-entry {
  border: 2px solid #FFD23F;
}

/* ⭐ Selected */
.calendar-table .selected {
  background: #FFD23F;
}

/* ✅ Workout gemacht: Haken rechts unten */
.calendar-table td.did-workout::after {
  content: "💪";
  position: absolute;
  bottom: 3px;
  right: 1px;
  font-size: 14px;
  font-weight: 900;
  color: rgb(60, 204, 60);
  text-shadow: 0 1px 2px rgba(0,0,0,0.6);
}

/* ❌ Kein Workout: rot + X rechts unten */
.calendar-table td.no-workout {
  background: rgba(255, 64, 64, 0.35);
}

.calendar-table td.no-workout::after {
  content: "❌";
  position: absolute;
  bottom: 3px;
  right: 1px;
  font-size: 14px;
  font-weight: 900;
  color: rgb(255, 64, 64);
  text-shadow: 0 1px 2px rgba(0,0,0,0.6);
}

/* ✅ Selected gewinnt: Datum + Icon werden weiß */
.calendar-table td.selected::before,
.calendar-table td.selected::after {
  color: #fff;
}

/* --- Stats UI bleibt wie gehabt --- */

#dayStatsContainer, #weeklyStatsContainer, #monthStatsContainer, #daySessionsContainer {

  font-size: 16px;

  margin: 20px;
}

#prevMonth, #nextMonth, #prevWeek, #nextWeek, #prevMonth2, #nextMonth2 {
  background-color: rgb(255, 64, 64);
}

.stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

.stat-card {
  background: rgb(22 22 22);
  border-radius: 10px;
  padding: 14px 12px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #fff;
}

.stat-title {
  font-size: 13px;
  margin-bottom: 4px;
}

.stat-value {
  font-size: 21px;
  color: #FFD23F;
}

.stat-date {
  font-size: 13px;
  margin-top: 6px;
  color: #888;
  text-align: right;
}


/* ACTIVITY PROFILES */

.session-list {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

/* GRID-AREAS */
.session-card {
  background: rgb(22 22 22);
  border-radius: 12px;
  padding: 12px;
  border: 2px solid rgba(255, 255, 255, 0.06);

  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "workout type"
    "dates   total"
    "details details";
  gap: 8px 10px;

  cursor: pointer;
}

/* ---------- HEADER ---------- */

.session-workout {
  grid-area: workout;
  font-size: 20px;
  letter-spacing: 0.7px;
  color: #fff;
  opacity: 0.92;
  text-align: left;
}

.session-type {
  grid-area: type;
  font-size: 13px;
  letter-spacing: 0.6px;
  opacity: 0.95;
  text-align: right;
  white-space: nowrap;
}

/* ---------- DATES ---------- */

.session-dates {
  grid-area: dates;
  display: grid;
  gap: 4px;
  font-size: 12px;
  opacity: 0.75;
  align-content: start;
}

.session-date-row {
  display: flex;
  justify-content: flex-start;
  gap: 10px;
}

.session-date-row .dk {
  opacity: 0.65;
}

.session-date-row .dv {
  opacity: 0.95;
}

/* ---------- TOTAL + CHEVRON ---------- */

.session-total {
  grid-area: total;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 6px;
}

.session-total .tv {
  font-size: 14px;
  color: #FFD23F;
  background: rgba(255, 210, 63, 0.08);
  border: 1px solid rgba(255, 210, 63, 0.20);
  padding: 8px 10px;
  border-radius: 10px;
  white-space: nowrap;
}

/* Chevron unten rechts */
.session-chevron {
  font-size: 14px;
  opacity: 0.6;
  transition: transform 200ms ease, opacity 200ms ease;
}

.session-card.open .session-chevron {
  opacity: 1;
}

/* ---------- DETAILS (SLIDE) ---------- */

.session-details {
  grid-area: details;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transform: translateY(-4px);
  transition: max-height 260ms ease, opacity 220ms ease, transform 220ms ease;
}

.session-details.open {
  max-height: 600px;
  opacity: 1;
  transform: translateY(0);
}

/* Profil */
.session-profile {
  font-size: 12px;
  opacity: 0.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-top: 10px;
  text-align: left;
}

.session-profile span {
  color: #FFD23F;
  opacity: 1;
}

/* Lines */
.session-lines {
  display: grid;
  gap: 6px;
  margin-top: 8px;
}

.session-line {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 13px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 10px;
  padding: 8px 10px;
}

.session-line .k {
  opacity: 0.7;
}

.session-line .v {
  color: #FFD23F;
}

/* Farben */
.session-line .v.work {
  color: rgb(60, 204, 60);
}
.session-line .v.break {
  color: rgb(255, 64, 64);
}

/* ---------- TYPE COLORS ---------- */

.session-stopwatch { border-color: rgba(0, 212, 253, 0.35); }
.session-stopwatch .session-type { color: rgb(0, 212, 253); }

.session-steps { border-color: rgba(60, 204, 60, 0.35); }
.session-steps .session-type { color: rgb(60, 204, 60); }

.session-interval { border-color: rgba(255, 210, 63, 0.35); }
.session-interval .session-type { color: #FFD23F; }

.session-empty {
  margin-top: 10px;
  opacity: 0.8;
  font-size: 13px;
}


#daySessionsContainer {
  margin: 20px;
}

/* Wrapper für Stats & Sessions */
.day-block {
  background: rgb(135 40 40);
  border-radius: 10px;
  padding: 14px;
  margin-bottom: 14px;
}

.day-block-title {
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 1px;
  color: #FFD23F;
  margin-bottom: 10px;
}

/* Sessions optisch leicht absetzen */
.day-block-sessions {
  background: rgb(95 30 30);
}

.session-delete-btn {
  margin-left: 10px;
  background: rgb(255, 64, 64);
  border: none;
  padding: 6px 6px;
  border-radius: 4px;
  cursor: pointer;
  color: white;
  height: 26px;
}

.session-delete-btn:hover {
  background: rgba(255, 64, 64, 0.18);
  color: rgb(255, 64, 64);
}







.disabledButtonStyle {
    background-color: grey !important;
    cursor: not-allowed !important;
    opacity: 0.5;
}


.modalNotification ul {
  max-height: 60vh;
  overflow-y: auto;
  padding: 0;
  margin: 0;
  list-style: none;
  background-color: rgb(135 40 40);
  border-radius: 5px;
  font-family: roboto;
  font-weight: bold;
}

.notification {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border-bottom: 1px solid #ff4040;
  cursor: pointer;
}

.notification.unread {
  background-color: #00000047;
}

.notif-avatar {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  object-fit: cover;
}

.notif-message {
  width: 250px;
  font-size: 10px;
  text-align: left;
}

.notif-time {
  font-size: 8px;
  color: #ababab;
}



/* TELEGRAM */



#telegram-direct-login:hover {
  background-color: #1c8cc7;
}

#telegram-direct-login:active {
  transform: scale(0.98);
}

#telegram-direct-login svg {
  flex-shrink: 0;
}



/* ==== Onboarding / Tutorial (Card only, no spotlight) ==== */
.gb-onb.hidden { display: none; }
.gb-onb {
  position: fixed; inset: 0;
  z-index: 8999;
  display: flex; align-items: center; justify-content: center;
  font-family: gymtimer, sans-serif;
}

.gb-onb-backdrop {
  position: absolute; inset: 0;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(2px);
}

.gb-onb-card {
  position: relative; z-index: 1;
  width: min(300px, 92vw);  /* max width 300px */
  background: rgb(0 0 0 / 78%);
  color: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
  display: flex; flex-direction: column; gap: 14px;
  padding: 16px;
  text-align: center;
  width: 100%;
  height: 100%;
  margin: auto;
  justify-content: center;
}

.gb-onb-progress { display:flex; gap:10px; padding:10px; justify-content:center; }
.gb-onb-progress .dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #333; opacity: 0.7;
  transition: transform .2s, background .2s, opacity .2s;
}
.gb-onb-progress .dot.active { background:#ff4040; opacity:1; transform:scale(1.2); }

.gb-onb-title { font-size:20px; margin:4px 0; color:yellow;}
.gb-onb-text { font-size:14px; line-height:1.4; opacity:.95; margin:0 auto; width: 250px; }
.gb-onb-media img { max-width:300px; }

.gb-onb-actions { display:flex; gap:8px; align-items:center; justify-content:center; }
.gb-onb-btn { cursor:pointer; border:0; border-radius:8px; padding:8px 12px; font-size:14px; font-family: gymtimer, sans-serif; }
.gb-onb-btn-primary { background:#ff4040; color:#fff; }
.gb-onb-btn-secondary { background:#2a2a2a; color:#fff; }

/* LANDSCAPE */



@media (max-height: 589px) {
  .levelArea {
    bottom: 80px;
    right: 60px; /* enger an den unteren Rand */
  }
}


@media (max-height: 589px) {
  #gymWarsButtonArea2{
    display: none;
  }
}


@media (max-height: 589px) {
  #tournamentButtonArea2Sprint {
    top: 105px;
    right: 70px;
  }
}



@media (max-height: 589px) {
  #tournamentButtonArea2 {
    top: 105px;
    right: 140px;

  }
}

@media (max-height: 589px) {
  #battlepassButtonArea, #battlepassButtonArea2 {
    top: 165px;
    right: 140px;

  }
}

@media (max-height: 589px) {
  #dailysArea {
    top: 105px;


  }
}



@media (max-height: 589px) {
  #profileButtonArea {

    flex-direction: row;
    bottom: 85px;
    top: unset;
  }
}




@media (max-height: 589px) {
  #active-game-container {

    display: none;

  }
}



@media (max-height: 589px) {
  #currentBuddy {

    display: none;

  }
}



@media (max-height: 589px) {
  #rankingButtonArea2 {
    top: 105px;
    left: 140px;

  }
}






@media (max-height: 589px) {
  #newsButtonArea {
    top: 105px;
    right: 10px;

  }
}




@media (max-height: 589px) {
  .active-multiplier {
    top: 160px;
    right: 10px;

  }
}



@media (max-height: 589px) {
  #pvpButtonArea {
   display: none !important;

  }
}



.indicator {
    position: absolute;
    top: 2px;
    right: 2px;
    background-color: red;
    color: white;
    font-size: 10px;
    font-weight: bold;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: none;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 3px rgba(0,0,0,0.4);
    border: solid 1px black;
  }




/* PVP */


#pvpButtonArea {
    position: fixed;
    top: 220px;        /* passe an, wo du es willst */
    right: 77px;
    width: 55px;
    height: 55px;
    background-image: url('img/pvp_icon.webp'); /* eigenes Icon */
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
    cursor: pointer;
}
#pvpButtonArea2 {
    width: 100%;
    height: 100%;
}


.modalPVP {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}
.modalPVP-content {
    background: rgb(191 57 57);
    color: #fff;

    border-radius: 10px;
    padding: 0px 20px;
    max-width: 300px;
    text-align: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}
.modalPVP-close {
    background: rgb(255, 64, 64);
    height: 70px;
    margin-left: 0;
    margin-right: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    color: black;
    padding: 8px;
    box-shadow: 0 -6px 6px -6px rgba(0, 0, 0, 0.4);
    border-radius: 0px;
    padding-bottom: 70px;


}





.modal-PVP-star {
  position: absolute;
  top: 20%;
  left: 50%;
  width: 200px;
  height: 200px;
  transform: translate(-50%, -50%);
  opacity: 0.25;            /* leicht transparent */
  pointer-events: none;      /* keine Klicks abfangen */
  animation: claim-rotate 8s linear infinite;
  filter: drop-shadow(0 0 20px rgba(255,255,255,0.15));
}


.shopButton, #viewPVPHistoryButton, #viewPVPStatsButton, #startPVPButton {
    background-color: rgb(255, 64, 64);

    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    width: 120px;
    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    box-shadow: 0 3px rgb(135 40 40);
}


.replayButton {
    background-color: rgb(255, 64, 64);

    font-style: normal;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;

    text-decoration: none;
    color: white;
    font-family: gymtimer, sans-serif;
    font-size: 15px;
    box-shadow: 0 3px rgb(135 40 40);
}

#pvpSearchStatus {
    display:none;
            position: fixed;
            bottom: 200px;

            background: rgba(0,0,0,0.7);
            color: #fff;
            font-size: 10px;
            padding: 4px;
            border-radius: 5px;
            text-align: center;
            line-height: 1.7;


}

#loading-logoPVP {
    width: 15px; /* Größe des Logos anpassen */
    height: 15px;
    
    animation: spin 4s linear infinite;

}

/* RANKING TOGGLE */


.rankingToggle {


    display: flex;
    background: rgba(0,0,0,0.45);
    border-radius: 20px;
    padding: 3px;
    z-index: 10;
    height: 46px;
    width: 100px;
}

.rankingToggle .toggle-btn {
    border: none;
    background: transparent;
    padding: 4px 8px;
    border-radius: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.rankingToggle .toggle-btn img {
    width: 20px;
    height: 20px;
}

.rankingToggle .toggle-btn.active {
    background: #ffffff;
}

.disabled {
  opacity: 0.4;
  pointer-events: none;
}



/* COLLECT BUTTON */

.collect-reward-icon {
width: 32px;
height: 32px;
object-fit: contain;
pointer-events: none;
}


/* Template-Icons im DOM verstecken */
#collect-gymenergyIcon,
#collect-pointsIcon,
#collect-ticketsIcon {
display: none;
}


.collect-floating-icon {
position: fixed;
z-index: 10001;
pointer-events: none;
font-size: 26px;
animation: collect-sprayFromButton 0.9s ease-out forwards;
}


/*
Icons sprühen von einem Startpunkt (hier: Bildschirmmitte),
fliegen kurz weg, werden größer,
schrumpfen wieder und verschwinden.
*/
@keyframes collect-sprayFromButton {
0% {
transform: translate(0, 0) scale(0.0);
opacity: 0;
}
35% {
transform: translate(var(--dx), var(--dy)) scale(1.6);
opacity: 1;
}
100% {
transform: translate(calc(var(--dx) * 1.4), calc(var(--dy) * 1.4)) scale(0.0);
opacity: 0;
}
}


/* BATTLEPASS */

/* =========================
   BATTLEPASS (GYMBATTLE STYLE)
   ========================= */
.bp-top{
  margin-top: 110px; /* wegen siteTitle fixed */
  display:flex;
  gap:12px;
  justify-content:center;
  align-items:center;
  padding: 10px 12px;
  flex-direction: column;
}

.bp-avatar{
  width:315px;

  border-radius:14px;

  display:flex;
  justify-content:center;
  align-items:center;

  overflow:hidden;
  border: solid 2px black;
}
.bp-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.bp-progress{
  width: 100%;
  max-width: 300px;
  background: rgb(22 22 22);
  border-radius:14px;
  padding:10px;
  box-shadow: 0 6px 6px -6px rgba(0,0,0,.4);
}

.bp-progress-row{
  display:flex;
  align-items:center;
  gap:8px;
}

.bp-badge{
  background: rgb(255, 64, 64);
  color: #000;
  font-weight:900;
  border-radius:10px;
  padding:6px 8px;
  font-size:12px;
  box-shadow: 0 3px rgb(135 40 40);
}

.bp-level{
  background: yellow;
  color:#000;
  border-radius:10px;
  padding:6px 8px;
  font-size:12px;
  font-weight:900;
  min-width: 52px;
  text-align:center;
}

.bp-bar{
  position:relative;
  flex:1;
  height: 22px;
  border-radius: 12px;
  background: rgba(255,255,255,.12);
  overflow:hidden;
  border: 1px solid rgba(255,255,0,.25);
}
.bp-bar-fill{
  height:100%;
  width:0%;
  background: linear-gradient(90deg, rgb(255, 64, 64), yellow);
}
.bp-bar-text{
  position:absolute;
  inset:0;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:12px;
  font-weight:900;
  color:#fff;
  text-shadow: 0 2px 4px rgba(0,0,0,.7);
}

.bp-timer{
  margin-top:6px;
  font-size:12px;
  opacity:.9;
  display:flex;
  justify-content:center;
  gap:6px;
}

.bp-actions{
  margin-top:8px;
  display:flex;
  gap:8px;
  justify-content:center;
}

.bp-grid{
  max-width: 320px;
  margin: 10px auto 90px auto; /* bottom menubar */
  padding: 0 12px;
}

.bp-header{
  margin-top:10px;
  border-radius: 12px;
  overflow:hidden;
}

.bp-row{
  display:grid;
  grid-template-columns: 1fr 52px 1fr;
  align-items:center;
  gap:10px;
  padding: 8px 10px;
}

.bp-row.bp-header{
  background: rgb(135 40 40);
  color:#fff;

}

.bp-mid{
  display:flex;
  justify-content:center;
  align-items:center;

  color:#fff;
}

.bp-tiers{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.bp-tier{
  background: rgba(0,0,0,.25);
  border-radius: 14px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.08);
}

.bp-tier-inner{
  display:grid;
  grid-template-columns: 1fr 52px 1fr;
  align-items:center;
  gap:10px;
}

.bp-tier-num{
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(255,255,255,.12);
  display:flex;
  justify-content:center;
  align-items:center;
  font-weight:900;
  border: 1px solid rgba(255,255,0,.18);
}

.bp-reward{
  border-radius: 14px;
  padding: 10px;
  min-height: 120px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  box-shadow: 0 6px 6px -6px rgba(0,0,0,.4);
  flex-direction: column;
}

.bp-reward.free{
  background: rgba(80, 160, 255, .20);
  border: 1px solid rgba(80,160,255,.45);
}

.bp-reward.premium{
  background: rgba(255, 120, 220, .20);
  border: 1px solid yellow;
}

.bp-reward-left{
  display:flex;
  align-items:center;
  gap:10px;
  flex-direction: column;
}

.bp-reward img{
  width: 38px;
  height: 38px;
  object-fit:contain;
}

.bp-lock{
  opacity:.7;
  font-size:12px;
  background: rgba(0,0,0,.35);
  padding: 4px 8px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
}

.bp-claim{
  background: green;
  color: white;
  border: none;
  border-radius: 12px;
  padding: 8px 10px;
  font-family: gymtimer, sans-serif;
  box-shadow: 0 3px rgb(135 40 40);
  cursor:pointer;
  font-size: 12px;
  height: 30px;
}

.bp-claim[disabled]{
  opacity:.45;
  cursor:not-allowed;
}

.bp-claimed{
  opacity:.8;
  font-size:12px;
  background: rgba(0,0,0,.35);
  padding: 6px 8px;
  border-radius: 10px;
}


.bp-premium-disabled {
  opacity: 0.45;
  filter: grayscale(1);
  pointer-events: none; /* <- macht ALLES in der Premium-Box unclickable */
}

.bp-premium-note {
  margin-top: 4px;
  font-size: 11px;
  opacity: 0.9;
}


/* NEU */

#setsDisplay {
  background-color: none;
  font-size: 12px;
  color: rgb(0,0,0);
  padding-top: 83px;
  padding-left: 0px; /* gegenüber roundsDisplay spiegeln */
  position: absolute;
  left: 0;
  right: 0;
}

@media (min-width: 748px) and (min-height: 600px) {
  #setsDisplay {
    font-size: 16px;
    padding-top: 130px;
    padding-left: 0px;
  }
}

/* optional: die neuen Blocks wie Work/Break/Rounds stylen */
#sets1, #pauseAfterSet1 {
  background-color: rgb(41 41 41);
  border-radius: 10px;
  margin-left: 20px;
  margin-right: 20px;
  padding: 15px 25px;
  text-align: left;
  margin-bottom: 10px;
}

#setsPauseContent {
  transition: none;
}

/* AUTH */


#login-popup.login-popup {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
  align-items: center;
  justify-content: center;
}

#login-popup .gb-auth-backdrop {
  position: absolute;
  inset: 0;

}

#login-popup .login-content {
  position: relative;

  /* ❌ feste Höhe entfernen */
  height: auto;

  /* ✅ Inhalt bestimmt die Höhe */
  max-height: 90vh;        /* nie höher als Viewport */
  overflow-y: auto;        /* nur scrollen wenn nötig */

  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
  transition: max-height 0.25s ease, padding 0.2s ease;
}


.gb-auth-tabs {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin: 10px 0 14px;
}


/* POWER */
/* =========================
   POWER MINI STATUS BAR
   ========================= */

#powerMiniBarContainer {
  position: fixed;
  top: 152px;
  width: 100px;
  border: solid 2px black;
  height: 16px;
  margin: 6px auto 10px auto;
  background: rgb(22 22 22);

  border-radius: 10px;
  overflow: hidden;


}

#powerMiniBarFill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0%;

  background-color: green; /* kräftiges Power-Gelb */
    border-radius: 20px;

  transition: width 0.4s ease;
}


#powerMiniBarText {
  position: relative;
  z-index: 2;

  font-size: 11px;

  text-align: center;
  line-height: 16px;

  color: white;

  pointer-events: none;
}



/* STOPWATCH HEADER (GENERIC) */
.stopwatch-header{
  background: rgb(22,22,22);
  border-radius: 10px;
  padding: 20px;
  margin: 0px 20px 10px 20px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  user-select:none;
}

/* LEFT */
.stopwatch-header .stopwatch-left{
  display:flex;
  align-items:center;
  gap:10px;
}
.stopwatch-header .stopwatch-left i{
  color:#fff;
  font-size:18px;
}
.stopwatch-header .stopwatch-title{
  color:#fff;
  font-size:16px;
  opacity:0.9;
  text-align:left;
}

/* RIGHT SWITCH WRAP */
.stopwatch-header .stopwatch-switch{
  display:flex;
  align-items:center;
  gap:10px;
}

/* texts */
.stopwatch-header .stopwatch-switch-text{
  color:#fff;
  font-size:12px;
  opacity:0.7;
}

/* label wrapper */
.stopwatch-header .stopwatch-switch-wrap{
  display:inline-flex;
  align-items:center;
  cursor:pointer;
}

/* ✅ Neutralize any global input styles */
.stopwatch-header .stopwatch-switch-wrap input{
  all: unset;
  display:none !important;
}

/* Custom UI (the visible toggle) */
.stopwatch-header .stopwatch-switch-ui{
  width:44px;
  height:22px;
  border-radius:999px;
  background:#444;
  position:relative;
  display:inline-block;
  transition: background 0.2s ease;
}

/* knob */
.stopwatch-header .stopwatch-switch-ui::after{
  content:"";
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  position:absolute;
  top:2px;
  left:2px;
  transition: transform 0.2s ease;
}

/* ✅ checked state – works for ANY toggle input */
.stopwatch-header .stopwatch-switch-wrap input:checked + .stopwatch-switch-ui{
  background:#2f8f2f;
}
.stopwatch-header .stopwatch-switch-wrap input:checked + .stopwatch-switch-ui::after{
  transform: translateX(22px);
}

/* ON/OFF text highlight (generic, no IDs needed) */
.stopwatch-header .stopwatch-switch:has(input:checked) .on{
  opacity:1;
  color:#3ccc3c;
}
.stopwatch-header .stopwatch-switch:has(input:checked) .off{
  opacity:0.35;
}

/* Text-Stack (Title + Subtitle) */
.stopwatch-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Subtitle unter dem Titel */
.stopwatch-subtitle {
  font-size: 13px;
  color: #ababab;
  line-height: 1.3;
  max-width: 240px;
}


/* =========================
   STEPS MODE (BeastToggle ON)
   ========================= */

/* Beispiel: alles im Timer-Bereich ausblenden */
body.steps-mode #timerContainer,
body.steps-mode #timerContainer2,
body.steps-mode #timeround,
body.steps-mode #stopwatchHeader {
  display: none !important;
}

/* Beispiel: andere UI-Boxen ausblenden/faden – passe an */
body.steps-mode .timer-settings,
body.steps-mode #setsPauseHeader,
body.steps-mode #setsPauseContent {
  display: none !important;
}

/* Wenn du lieber "faden" willst statt hide:
body.steps-mode #someBox { opacity: 0.35; pointer-events: none; }
*/



/* NICKNAME PUPLIC PROFILE DASHBOARD */

.publicProfileBox{
  background: rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  padding: 12px;
  color: #fff;
  text-align: left;
  margin-bottom: 20px;
}

.publicProfileRow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.publicProfileTitle{

  font-size:14px;

}

.publicProfileSub{
  font-size:12px;
  opacity:.85;
  margin-top:4px;
}

.publicProfileLinkWrap{
  margin-top:12px;
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:space-between;
  background: rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 6px;
  padding: 10px 12px;
}

.publicProfileLinkText{
  color: #ffef7a;
  font-size: 11px;
  font-family: fantasy;
  text-decoration:none;
  max-width: 75%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.copyLinkBtn{
  border:none;
  border-radius: 4px;
  padding: 10px;
  font-family: gymtimer, sans-serif;
  cursor:pointer;
  background: rgb(255, 64, 64);
  color:#fff;
  font-size: 12px;
  height: 38px;
}
.copyLinkBtn:active{ transform: translateY(1px); }

/* ✅ Toggle Switch */
.switch{
  position:relative;
  display:inline-block;
  width:52px;
  height:30px;
}
.switch input{ display:none; }
.slider{
  position:absolute;
  cursor:pointer;
  top:0; left:0; right:0; bottom:0;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.18);
  transition:.2s;
  border-radius: 999px;
}
.slider:before{
  position:absolute;
  content:"";
  height:24px;
  width:24px;
  left:3px;
  top:50%;
  transform: translateY(-50%);
  background: #fff;
  transition:.2s;
  border-radius:999px;
}
.switch input:checked + .slider{
  background: #ff4040;
}
.switch input:checked + .slider:before{
  transform: translate(22px, -50%);
}







/* Hauptcontainer für das gesamte Widget */
.gb-wheel-frame {
    position: relative;
    width: 320px;
    height: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;    /* Horizontale Zentrierung */
    justify-content: center; /* Vertikale Zentrierung */
}

/* Der rotierende Teil */
.gb-wheel-stage {
    position: relative;
    width: 280px;
    height: 280px;
    margin-top: 10px;
}

.gb-wheel-inner {
    width: 100%;
    height: 100%;
    position: absolute;
    transition: transform 4s cubic-bezier(0.15, 0, 0.1, 1);
    will-change: transform;
}

.gb-wheel-img {
    width: 100%;
    height: 100%;
    display: block;
    transform: rotate(0deg);
    animation: pump 0.3s ease;
}

/* Die Preis-Labels */
.gb-wheel-label {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90px; /* Radius des Rades */
    height: 30px;
    margin-top: -15px;
    transform-origin: left center;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    pointer-events: none;
    z-index: 5;

}

.gb-wheel-label span {
    color: #ffffff;
    text-shadow: 0px 0px 3px rgba(0,0,0,0.6);
   transform: rotate(90deg);

    font-size: 14px;


    white-space: nowrap;
}

/* Der statische Marker (oben) */
.gb-wheel-marker {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 44px;
    z-index: 10;
}

.gb-wheel-marker.animated {
  animation: markerSwing 0.25s infinite ease-in-out;
}

/* Der Button */
.gb-wheel-btn {
    margin-top: 20px;
    padding: 12px 30px;
    background: rgb(255, 64, 64);
    color: white;
    border: none;
    border-radius: 5px;
    font-family: gymtimer, sans-serif;
    cursor: pointer;
    box-shadow: 0 3px rgb(135 40 40);
    font-size: 15px;
}

.gb-wheel-btn:disabled {
    background: #666;
    box-shadow: none;
    cursor: not-allowed;
}