.popup {
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding-left: 4px;
  padding-right: 4px;
  z-index: 40;
}

@media (min-width: 375px) {
  .popup {
    padding-inline: 20px;
  }
}

@media (min-width: 640px) {
  .popup {
    padding-inline: 80px;
  }
}

.popup-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 1440px;
  align-items: center;
  justify-content: center;
  z-index: 50;
  background: linear-gradient(to bottom right, #ffffff, #d9d9d9);
  border-radius: 20px;
  padding: 36px 16px;
}

.popup-overlay {
  z-index: 40;
  width: 100vw;
  height: 100vh;
  position: absolute;
  inset: 0;
  background-color: var(--primary);
}

.popup.pink-theme .popup-overlay {
  background-color: pink;
}

.popup-title {
  font-weight: bold;
  padding-left: 16px;
  padding-right: 16px;
  font-size: 1.125rem;
  color: black;
  text-align: center;
}

@media (min-width: 768px) {
  .popup-title {
    padding-left: 96px;
    padding-right: 96px;
    font-size: 1.875rem;
  }
}

@media (min-width: 1280px) {
  .popup-title {
    padding-left: 208px;
    padding-right: 208px;
    font-size: 3rem;
  }
}

.popup-title-highlighted {
  color: var(--primary);
}

.popup.pink-theme .popup-title-highlighted {
  color: pink;
}

.popup-content {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.popup-content img {
  max-width: 147px;
  height: auto;
}

@media (min-width: 640px) {
  .popup-content img {
    max-width: 200px;
  }
}

@media (min-width: 768px) {
  .popup-content img {
    max-width: 350px;
  }
}

@media (min-width: 1024px) {
  .popup-content img {
    max-width: 460px;
  }
}

@media (min-width: 1280px) {
  .popup-content img {
    max-width: 532px;
  }
}

.popup-info {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
}

.popup-info .popup-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.popup-info .popup-text span {
  font-weight: bold;
  color: black;
  font-size: 1.125rem;
}

@media (min-width: 768px) {
  .popup-info .popup-text span {
    font-size: 1.875rem;
  }
}

.popup-info .popup-text small {
  font-weight: bold;
  font-size: 0.75rem;
  color: var(--primary);
}

@media (min-width: 768px) {
  .popup-info .popup-text small {
    font-size: 1.5rem;
  }
}

.popup.pink-theme .popup-info .popup-text {
  color: var(--pink);
}

.popup-buttons {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.popup-buttons .popup-button-agree {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 147px;
  background: var(--custom-green-gradient);
  border: 2px solid var(--primary-light);
  border-radius: 4px;
  color: white;
  font-weight: bold;
  font-size: 0.75rem;
  padding: 12px 8px;
  text-align: center;
}

@media (min-width: 768px) {
  .popup-buttons .popup-button-agree {
    max-width: 300px;
    font-size: 1.25rem;
  }
}

.popup.pink-theme .popup-buttons .popup-button-agree {
  background: var(--custom-pink-gradient);
  border-color: var(--pink);
}

.popup-buttons .popup-button-deny {
  max-width: 147px;
  background: var(--custom-gray-gradient);
  border: 1px solid #a5a5a5;
  border-radius: 4px;
  color: black;
  font-weight: bold;
  font-size: 0.75rem;
  padding: 12px 8px;
  text-align: center;
}

@media (min-width: 768px) {
  .popup-buttons .popup-button-deny {
    max-width: 300px;
    font-size: 1.25rem;
  }
}

.popup-shipping {
  font-weight: bold;
  color: black;
  text-align: center;
  font-size: 12px;
}

@media (min-width: 1024px) {
  .popup-shipping {
    font-size: 20px;
  }
}
