body {
    margin: 0;
    padding: 0;
    background-color: #807ce0;
    display: flex;
    flex-direction: column;
    height: 100vh;
    position: fixed;
    top: 0;
    cursor: none !important;
  }



  .studio.active {
    background-color: #807ce0 !important;
  }


  .container {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    overflow: hidden;
  }

  .wrap{
    flex: 1;
  overflow-y: scroll;
  margin-top: -5vw;
  padding-top: 5vw;
  height: 100vh;
  margin-bottom: -5vw;
  padding-bottom: 5vw;
}

  .wrap-mobile {
    display: none;
  }
  /* #last {
    margin-bottom: 1vh;
  } */

  .circle {
    flex: 1;
    aspect-ratio: 1 / 1;
    background-color: black;
    border-radius: 50%;
    margin-left: -4%;
    position: relative;
    z-index: 1;
  }

  .circle:first-child {
    margin-left: 0;
  }


  .circle-link {
    flex: 1;
    aspect-ratio: 1 / 1;
    background-color: #ffffff; /* Different color if needed */
    border-radius: 50%;
    position: relative;
    z-index: 1;
    transition: ease-in-out 0.1s;
  }

  #left {
    margin-right: 4%;
  }



  /* The overlay container for text + input */
  .overlay {
    position: absolute;
    top: 50%;
    left: 55.5%;
    transform: translate(-50%, -50%);
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: 90vw;
    height: 100%;
  }

  .overlay-long-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;

    width: 100vw;
    height: 100%;
  }


  .overlay-text {
    font-family: clash;
    font-size: 1.4vw;
    font-variation-settings: "wght" 510;
    color: black;
    
    /* Centering */
    display: flex;
    justify-content: center;
    align-items: center;    
    text-align: center;    
  
    height: 100%;        
    width: 100%;     
  }

  h1 {
    font-size: 1.7vw;
    margin: 0.2vw;
    color: white;
  }

  h2 {
    font-size: 1.7vw;
    color: white;
    margin: 0;
  }

  p {
    font-size: 1.7vw;
    margin: 0;
    color: white;
    text-align: center;
  }

  .text {
    font-family: clash;
    font-size: 1.5rem;
    color: white;
    text-align: center;
    border-radius: 1rem;
    font-variation-settings: "wght" 510;
  }

  .alert .circle {
    background-color: rgb(108, 240, 0);
  }

  #text-left {
    left: 40%;
  }

  #text-right {
    left: 57%;
  }

  


  .size-slider {
    position: absolute;
    top: 50%;
    left: 30.5%;
    transform: translate(-50%, -50%);
    z-index: 10;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse; /* reverse the visual order */
    align-items: center;
    width: auto;
    height: 63%;
  }

  .size-wrapper {
    flex: 1;
    display: flex;
    justify-content: center;
    height: 100%;
  }

  .size-circle {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: 100%;
    background-color: white;
    color: black !important;
    border-radius: 50%;
    transition: background-color 0.2s ease;

    font-family: clash;
    font-size: 1vw;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
  }

  .size-circle:hover {
    color: black !important;
  }

  
  .size-circle.active {
    background-color:  rgb(108, 240, 0);
  }

  .size-wrapper:hover .size-circle {
    background-color:  rgb(108, 240, 0);
  }

  .size-wrapper:hover ~ .size-wrapper .size-circle {
    background-color:  rgb(108, 240, 0);
  }




  .textfeld {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 19px;
    color: black;
    width: 50%;
    height: 35%;

    aspect-ratio: 5 / 1;

    border: none;
    border-radius: 200px;
    background: white;
    text-align: left;
    user-select: text;
    resize: none;
    padding:  1% 5%;
    overflow: auto;
  }

  .textfeld::placeholder {
    color: rgb(0, 0, 0);
    font-size: 19px;
    opacity: 0.6;
    font-family: clash;
    text-align: center; 
}

textarea:focus {
  outline: none;
}

textarea:not(:placeholder-shown) {
  background-color: rgb(108, 240, 0);
}


#budget-area {
  left: 80%;
  width: 45vw;
}

.upload-button {
  position: absolute;
  top: 50%;
  left: 55.5%;
  transform: translate(-50%, -50%);
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 53%;
  height: 35%;
  border: none;
  border-radius: 200px;
  background: white;
  color: black;

  font-family: clash;
  font-size: 1.5vw;
  transition: ease-in-out 0.3s;
  font-variation-settings: "wght" 410;
}

.upload-input {
  display: none; /* Hide the real input */
}

.upload-button.active {
  background-color: rgb(108, 240, 0); /* Change to your preferred color */
  color: white;
}

.upload-button:hover {
  color: rgb(108, 240, 0);
}

.send-button {
  position: absolute;
  top: 50%;
  left: 51%;
  transform: translate(-50%, -50%);
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 15%;
  height: 77%;
  border: none;

  color: white;
  background-color: transparent;
  transition: ease-in-out 0.3s;
  font-family: tiny;
  font-size: 8vw;
  line-height: 1;
  padding-bottom: 1%;
  font-variation-settings: "wght" 170;
}

.send-button:hover {
  font-variation-settings: "wght" 130;
  color: rgb(108, 240, 0);
}

.logos {
  position: relative;
  width: 100vw;
  bottom: 0;
  display: flex;
  overflow: hidden;
  white-space: nowrap;
  /* margin-bottom: 0.3em; */
  z-index: 20;
}

.logos-slide {
  will-change: transform;
  display: flex;
}

.style {
  font-family: clash;
  font-size: 1.5rem;
  padding: 0.2em 0.5em;
  border-radius: 5em;
  color: black;
  background-color: white;
  font-variation-settings: "wght" 550 ;

}
.circle-inline {
  display: inline-block;
  aspect-ratio: 1 / 1;
  height: 100%;
  background-color: white;
  border-radius: 50%;
}

.insta{
  text-decoration: underline;
  color: inherit;
}



.calendar {
  padding: 1rem;
  background: white;
  border-radius: 3vw;
  position: absolute;
  top: 75%;
  left: 52%;
  width: 28%;
  height: auto;
  z-index: 100;
  box-shadow: 0 1px 3px white;
  overflow: hidden;
}

.calendar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}

.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 36px);
  gap: 0;
  justify-content: center;
}

#month-label, #month-label-mobile {
  color: black;
  font-family: clash;
}

.calendar-grid div:nth-child(-n+7) {
  font-family: clash;
  color: black;
  padding-bottom: 6px;
  text-align: center;
  width: 36px;
}

.calendar-day {
  font-family: clash;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  border-radius: 50%;
  cursor: none;
  background: #f4f4f4;
  color: black;
  user-select: none;
  transition: background-color 0.2s, color 0.2s;
}

.calendar-day.active {
  background-color: rgb(108, 240, 0);
  color: black;
}

.calendar-day:hover {
  background-color: rgb(108, 240, 0);
}

.hidden {
  display: none;
}

.uhrzeit {
  margin-top: 1rem;
  color: black;
  font-family: clash;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.uhrzeit input {
  color: black;
  font-family: clash;
  width: 35%;
  border: none;
  background-color: #f4f4f4;
  padding: 0.3rem;
  font-size: 1rem;
  border-radius: 5vw;
  text-align: center;
  margin-bottom: 0.25rem;
}

input[type="time"]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}

#prev-month, #next-month{
  aspect-ratio: 1/1;
  width: 10%;
  border-radius: 50%;
  border: none;
  background-color: black;
  color: white;
  text-align: center;
}

#prev-month:hover, #next-month:hover {
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: rgb(108, 240, 0);
  color: black;
  border: none;
}

#prev-month-mobile, #next-month-mobile{
  aspect-ratio: 1/1;
  width: 10%;
  border-radius: 50%;
  border: none;
  background-color: black;
  color: white;
  text-align: center;
}

#prev-month-mobile:hover, #next-month-mobile:hover {
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: rgb(108, 240, 0);
  color: black;
  border: none;
}

@media (max-width: 900px) {
  body {
    position: relative;
  }

  .wrap {
    display: none;
  }

  .wrap-mobile {
    display: unset;
    flex: 1;
    overflow-y: scroll;
    /* margin-top: -5vw;
    padding-top: 5vw; */
    height: 100%;
    overflow: visible;
  }

  .calendar {
    padding: 1rem;
    background: white;
    border-radius: 3vw;
    position: fixed;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    width: 80vw;
    z-index: 1000;
    box-shadow: 0 1px 10px rgba(0,0,0,0.15);
    overflow: hidden;
  }

  .circle {
    margin-left: -15%;
  }

  #left {
    margin-right: 10%;
  }

  .overlay-text {
    letter-spacing: 2%;
    font-size: 4vw;
    flex-direction: column;
    color: white;
  }

  .size-slider {
    left: 50%;
    height: 50%;
    width: 80%;
  }

  .overlay {
    left: 50%;
  }

  .upload-button {
    left: 50%;
    font-size: 4vw;
    width: 80%;
    height: 40%;
  }

  .send-button {
    left: 50%;
    margin-bottom: 5%;
    font-size: 20vw;
    width: 80%;
    height: 40%;
  }

  .size-circle {
    font-size: 2vw;
  }

  .logos {
    position: fixed;
  }

  .wrap-mobile .container:last-child {
    margin-bottom: 13.1%;
  }

  .textfeld {
    font-size: 17px;
    height: 50%;
    width: 80%;
    padding:  3% 5%;
  }

  .textfeld::placeholder {
    font-size: 17px;

  }

  p {
    font-size: 3.8vw;
    margin: 0;
    color: white;
  }

  h2 {
    font-size: 3.9vw;
    margin: 0;
    color: white;
  }

  .overlay-long-text {
    width: 80vw;
  }

}

.alex{
  height: 0;
}
  