/* VTuber Places v1.1.1809 — Advanced Places Pass 1 */
.vtpAdvancedPlacePresentation {
  min-width: 0;
}

.vtpAdvancedPlacePresentation.is-soft {
  animation: vtpPlaceSoftArrival 560ms cubic-bezier(.2,.72,.28,1) both;
}

.vtpAdvancedPlacePresentation.is-staged .placeDocSection {
  animation: vtpPlaceSceneArrival 520ms cubic-bezier(.2,.72,.28,1) both;
}

.vtpAdvancedPlacePresentation.is-staged .placeDocSection:nth-child(2) { animation-delay: 80ms; }
.vtpAdvancedPlacePresentation.is-staged .placeDocSection:nth-child(3) { animation-delay: 160ms; }
.vtpAdvancedPlacePresentation.is-staged .placeDocSection:nth-child(4) { animation-delay: 240ms; }
.vtpAdvancedPlacePresentation.is-staged .placeDocSection:nth-child(5) { animation-delay: 320ms; }
.vtpAdvancedPlacePresentation.is-staged .placeDocSection:nth-child(n + 6) { animation-delay: 400ms; }

@keyframes vtpPlaceSoftArrival {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}

@keyframes vtpPlaceSceneArrival {
  from { opacity: 0; transform: translateY(16px) scale(.995); }
  to { opacity: 1; transform: none; }
}

.vtpAdvancedPlacesHero {
  overflow: hidden;
}

.vtpAdvancedPlacesHeroArt {
  display: grid;
  grid-template-columns: repeat(3, minmax(68px, 1fr));
  align-items: end;
  gap: 10px;
  min-height: 190px;
  padding: 26px;
}

.vtpAdvancedPlacesHeroArt span {
  display: block;
  border: 1px solid rgba(255,255,255,.8);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(242,224,255,.7));
  box-shadow: 0 18px 45px rgba(74,44,96,.12);
}

.vtpAdvancedPlacesHeroArt span:nth-child(1) { height: 78px; }
.vtpAdvancedPlacesHeroArt span:nth-child(2) { height: 126px; }
.vtpAdvancedPlacesHeroArt span:nth-child(3) { height: 98px; }

.vtpPlacePresentationForm {
  display: grid;
  gap: 18px;
  margin-top: 20px;
}

.vtpPlacePresentationChoices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  border: 0;
  margin: 0;
  padding: 0;
}

.vtpPlacePresentationChoice {
  position: relative;
  display: grid;
  min-height: 190px;
  padding: 20px;
  border: 1px solid rgba(126,87,145,.2);
  border-radius: 24px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 14px 34px rgba(82,50,97,.08);
  cursor: pointer;
}

.vtpPlacePresentationChoice:has(input:checked) {
  border-color: #b763ba;
  background: linear-gradient(145deg, rgba(255,242,249,.96), rgba(240,239,255,.96));
  box-shadow: 0 0 0 3px rgba(183,99,186,.13), 0 18px 42px rgba(82,50,97,.12);
}

.vtpPlacePresentationChoice input {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 20px;
  height: 20px;
  accent-color: #9b55ac;
}

.vtpPlacePresentationChoice strong,
.vtpPlacePresentationChoice small {
  display: block;
}

.vtpPlacePresentationChoice strong {
  align-self: end;
  margin-top: 74px;
  color: #2d1837;
  font-size: 21px;
}

.vtpPlacePresentationChoice small {
  margin-top: 8px;
  color: #725d79;
  font-size: 14px;
  line-height: 1.55;
}

.vtpPlacePresentationCue {
  position: absolute;
  top: 24px;
  left: 20px;
  display: flex;
  width: 86px;
  height: 48px;
  align-items: flex-end;
  gap: 5px;
}

.vtpPlacePresentationCue i {
  display: block;
  flex: 1;
  border-radius: 8px;
  background: linear-gradient(180deg, #f88fb7, #9a78df);
}

.vtpPlacePresentationCue i:nth-child(1) { height: 45%; }
.vtpPlacePresentationCue i:nth-child(2) { height: 100%; }
.vtpPlacePresentationCue i:nth-child(3) { height: 70%; }

.vtpPlacePresentationActions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.vtpAdvancedPlacesNotice {
  padding: 13px 16px;
  border: 1px solid rgba(77,161,116,.25);
  border-radius: 16px;
  background: #f3fbf6;
  color: #285a3f;
  font-weight: 800;
}

@media (max-width: 820px) {
  .vtpPlacePresentationChoices { grid-template-columns: 1fr; }
  .vtpPlacePresentationChoice { min-height: 152px; }
}

@media (prefers-reduced-motion: reduce) {
  .vtpAdvancedPlacePresentation.is-soft,
  .vtpAdvancedPlacePresentation.is-staged .placeDocSection {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
