/* Dropdowns da barra de navegacao abrem com uma pequena queda, sem estalo seco. */
[data-app-barra-navegacao] {
  z-index: 1200;
  isolation: isolate;
}

[data-app-barra-navegacao] > .container:first-child {
  position: relative;
  z-index: 2;
}

[data-menu-navegacao-gatilho] {
  -webkit-user-select: none;
  user-select: none;
}

[data-menu-navegacao-gatilho]::-webkit-details-marker {
  display: none;
}

[data-menu-navegacao-painel] {
  transform-origin: top center;
  will-change: height, opacity, transform;
}

[data-menu-navegacao-modo='desktop'] > [data-menu-navegacao-painel] {
  width: min(28rem, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
}

@media (min-width: 1280px) {
  [data-menu-navegacao-modo='desktop'] > [data-menu-navegacao-painel] {
    width: 30rem;
  }
}

#navegacao-celular {
  position: relative;
  z-index: 1;
  transform-origin: top center;
  will-change: height, opacity, transform;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.18);
}

#alternar-navegacao {
  min-width: 2.5rem;
  min-height: 2.5rem;
}

#alternar-navegacao[aria-expanded='true'] {
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
}

[data-menu-navegacao-modo='mobile'] {
  position: relative;
}

[data-menu-navegacao-modo='mobile'][open] {
  z-index: 2;
}

[data-menu-navegacao][data-menu-estado='opening'] [data-menu-navegacao-painel],
[data-menu-navegacao][data-menu-estado='closing'] [data-menu-navegacao-painel] {
  pointer-events: none;
}

#navegacao-celular[data-menu-celular-estado='opening'],
#navegacao-celular[data-menu-celular-estado='closing'] {
  pointer-events: none;
}

[data-menu-navegacao-seta] {
  transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1), color 0.18s ease;
}

[data-menu-navegacao][open] [data-menu-navegacao-seta],
[data-menu-navegacao][data-menu-estado='opening'] [data-menu-navegacao-seta] {
  transform: rotate(-180deg);
}

[data-menu-navegacao][data-menu-estado='closing'] [data-menu-navegacao-seta] {
  transform: rotate(0deg);
}

html[data-menu-celular-aberto='true'],
body[data-menu-celular-aberto='true'] {
  overflow: hidden;
}

@media (max-width: 767px) {
  [data-app-barra-navegacao][data-menu-celular-expandido='true'] {
    position: fixed;
    inset-inline: 0;
    top: 0;
    width: 100%;
    background-color: #ffffff;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  html.dark [data-app-barra-navegacao][data-menu-celular-expandido='true'],
  html[data-tema='dark'] [data-app-barra-navegacao][data-menu-celular-expandido='true'] {
    background-color: #101828;
  }

  #navegacao-celular {
    position: fixed;
    inset-inline: 0;
    top: 4rem;
    width: 100%;
    height: calc(100dvh - 4rem);
    max-height: calc(100dvh - 4rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: inherit;
  }

  #navegacao-celular > .container {
    padding-bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
  }
}
