body {
  background: var(--color-base-bg-light);
  font-family: 'Plus Jakarta Sans', 'Noto Sans', sans-serif;
}

body.halloween-platform-bg {
  position: relative;
  z-index: 0;
}

body.halloween-platform-bg::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  pointer-events: none;
  background-color: var(--color-base-primary);
  opacity: 0.18;
  -webkit-mask:
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 4% 10% / 128px 128px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 22% 32% / 98px 98px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 41% 14% / 114px 114px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 63% 35% / 92px 92px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 82% 12% / 124px 124px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 12% 58% / 108px 108px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 36% 74% / 126px 126px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 58% 64% / 104px 104px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 77% 82% / 118px 118px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 91% 56% / 90px 90px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 7% 84% / 96px 96px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 28% 8% / 84px 84px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 49% 88% / 88px 88px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 69% 6% / 80px 80px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 88% 30% / 86px 86px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 94% 74% / 82px 82px;
  mask:
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 4% 10% / 128px 128px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 22% 32% / 98px 98px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 41% 14% / 114px 114px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 63% 35% / 92px 92px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 82% 12% / 124px 124px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 12% 58% / 108px 108px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 36% 74% / 126px 126px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 58% 64% / 104px 104px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 77% 82% / 118px 118px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 91% 56% / 90px 90px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 7% 84% / 96px 96px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 28% 8% / 84px 84px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 49% 88% / 88px 88px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 69% 6% / 80px 80px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 88% 30% / 86px 86px,
      url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 94% 74% / 82px 82px;
}

@media (max-width: 600px) {
  body.halloween-platform-bg::before {
    -webkit-mask:
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 3% 10% / 84px 84px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 21% 30% / 72px 72px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 43% 12% / 78px 78px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 64% 31% / 68px 68px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 83% 10% / 82px 82px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 12% 56% / 76px 76px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 36% 72% / 84px 84px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 58% 63% / 74px 74px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 76% 82% / 80px 80px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 92% 55% / 66px 66px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 7% 84% / 68px 68px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 28% 7% / 62px 62px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 48% 88% / 64px 64px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 68% 6% / 58px 58px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 88% 30% / 60px 60px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 95% 74% / 56px 56px;
    mask:
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 3% 10% / 84px 84px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 21% 30% / 72px 72px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 43% 12% / 78px 78px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 64% 31% / 68px 68px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 83% 10% / 82px 82px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 12% 56% / 76px 76px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 36% 72% / 84px 84px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 58% 63% / 74px 74px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 76% 82% / 80px 80px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 92% 55% / 66px 66px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 7% 84% / 68px 68px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 28% 7% / 62px 62px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 48% 88% / 64px 64px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 68% 6% / 58px 58px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 88% 30% / 60px 60px,
        url("../img/halloween/calabaza2.e2a517cb43d5.svg") no-repeat 95% 74% / 56px 56px;
  }
}

/* Footer personalizado igual que el header */
.footer-beauty {
  background-color: var(--color-base-bg-light) !important;
  font-family: 'Plus Jakarta Sans', 'Noto Sans', sans-serif;
  font-size: 1rem;
}

/* Color de texto principal */
.text-main {
  color: var(--color-text-primary) !important;
}

/* Color de texto secundario (como Eyebrow specialist) */
.text-beauty-secondary {
  color: var(--color-base-primary) !important;
}

.btn-glow {
  background: var(--color-base-primary);
  color: var(--color-white);
  border-radius: 24px;
  font-weight: 500;
  font-size: 1.2rem;
  padding: 10px 40px;
  border: none;
}

.btn-glow:hover {
  background: var(--color-primary-hover);
  color: var(--color-white);
}

/* Estilo para los mensajes de error */
.form-text.error-message {
  color: var(--color-error);
}

.platform-confirm-modal .modal-content {
  border-radius: 1rem;
  border: 1px solid var(--color-border);
  box-shadow: 0 1rem 2rem var(--shadow-overlay);
}

.platform-confirm-content {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
}

.platform-confirm-icon {
  width: 2.1rem;
  height: 2.1rem;
  min-width: 2.1rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--color-warning) 0%, var(--color-warning) 100%);
  color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1rem;
  box-shadow: 0 0.4rem 0.8rem var(--color-warning-shadow);
}

.platform-confirm-text {
  color: var(--color-text-secondary-dark);
  line-height: 1.45;
  font-size: 0.96rem;
}

.phone-country-native-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.phone-country-dropdown {
  position: relative;
}

.phone-country-dropdown-trigger {
  box-sizing: border-box;
  width: 100%;
  font: inherit;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  background-color: var(--color-white);
  color: var(--color-text-primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  text-align: left;
  cursor: pointer;
}

.phone-country-dropdown-trigger:focus,
.phone-country-dropdown.is-open .phone-country-dropdown-trigger {
  border-color: var(--color-base-primary);
  box-shadow: 0 0 0 0.25rem var(--color-focus-ring);
  outline: none;
}

.phone-country-dropdown-trigger-content {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
}

.phone-country-dropdown-flag {
  line-height: 1;
}

.phone-country-dropdown-code {
  color: var(--color-text-secondary-dark);
  font-weight: 500;
}

.phone-country-dropdown-chevron {
  color: var(--color-text-secondary);
  font-size: 0.7rem;
  line-height: 1;
  transition: transform 0.2s ease;
}

.phone-country-dropdown.is-open .phone-country-dropdown-chevron {
  transform: rotate(180deg);
}

.phone-country-dropdown-panel {
  position: absolute;
  top: calc(100% + 0.45rem);
  left: 0;
  width: min(290px, 95vw);
  z-index: 1060;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  background-color: var(--color-white);
  box-shadow: 0 0.75rem 1.5rem var(--shadow-medium);
  padding: 0.5rem;
}

.phone-country-dropdown-search {
  border-radius: 10px;
  margin-bottom: 0.45rem;
}

.phone-country-dropdown-options {
  max-height: 240px;
  overflow-y: auto;
}

.phone-country-dropdown-option {
  width: 100%;
  border: none;
  border-radius: 8px;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.6rem;
  color: var(--color-text-primary);
}

.phone-country-dropdown-option:hover {
  background: var(--color-primary-light);
}

.phone-country-dropdown-option.is-selected {
  background: var(--color-primary-light);
}

.phone-country-dropdown-option-main {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-width: 0;
}

.phone-country-dropdown-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.halloween-font-geepers {
  font-family: "Geepers", "Creepster", "Plus Jakarta Sans", "Noto Sans", sans-serif !important;
}

