/**
 * Modal de login/cadastro (React, chunk 07~vmg8a4i.nv.js)
 * Overlay: fixed inset-0 z-[9999] flex … justify-center px-4
 */

/* Mobile: sheet na parte inferior, altura limitada e corpo com scroll */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 {
  align-items: flex-end !important;
  padding: 0 !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\] {
  display: flex;
  flex-direction: column;
  width: 100% !important;
  max-width: 100% !important;
  max-height: min(92dvh, 100%);
  margin: 0;
  border-radius: 20px 20px 0 0 !important;
  overflow: hidden;
}

/* Área do formulário rolável */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-white {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

/* Cabeçalho e rodapé fixos dentro do modal */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.border-b.border-\[\#edf0f2\],
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.border-t.border-\[\#edf0f2\] {
  flex-shrink: 0;
}

/* Cabeçalho mais compacto no mobile */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\] {
  padding: 1rem 1.25rem 1.25rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\]
  img[alt="Eventim"] {
  height: 2rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\]
  h2 {
  font-size: 1.375rem !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\]
  .mt-5
  > p,
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\]
  p.text-white\/80 {
  font-size: 0.8125rem !important;
  line-height: 1.5 !important;
  margin-top: 0.5rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#2a2f7f\]
  .mt-6 {
  margin-top: 0.75rem !important;
}

/* Corpo e rodapé */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-white.px-7 {
  padding: 1rem 1.25rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
  > div.relative.w-full.max-w-\[560px\]
  > div.bg-\[\#f8f9fb\].px-7 {
  padding: 0.875rem 1.25rem !important;
}

/* Campos e botões menores no mobile */
.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 input {
  height: 48px !important;
  min-height: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  font-size: 16px !important; /* evita zoom automático no iOS */
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 .mb-5 {
  margin-bottom: 0.875rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 button.h-\[56px\] {
  height: 48px !important;
  min-height: 48px !important;
  font-size: 0.875rem !important;
}

.fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 .mt-7 {
  margin-top: 1rem !important;
}

/* Desktop: modal centralizado */
@media (min-width: 640px) {
  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4 {
    align-items: center !important;
    padding: 1rem !important;
  }

  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\] {
    max-width: 28rem !important;
    max-height: min(90dvh, 720px);
    border-radius: 1.25rem !important;
  }

  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\]
    > div.bg-\[\#2a2f7f\] {
    padding: 1.25rem 1.5rem 1.5rem !important;
  }

  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\]
    > div.bg-white.px-7 {
    padding: 1.25rem 1.5rem !important;
  }

  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\]
    > div.bg-\[\#f8f9fb\].px-7 {
    padding: 1rem 1.5rem !important;
  }
}

@media (min-width: 768px) {
  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\] {
    max-width: 32rem !important;
  }

  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\]
    > div.bg-\[\#2a2f7f\]
    h2 {
    font-size: 1.75rem !important;
  }
}

/* Telas muito baixas (landscape mobile) */
@media (max-height: 500px) {
  .fixed.inset-0.z-\[9999\].flex.items-center.justify-center.px-4
    > div.relative.w-full.max-w-\[560px\] {
    max-height: 100dvh;
    border-radius: 0 !important;
  }
}
