/*
  Adaptado V71 - correção do menu mobile.
  Somente CSS. Não altera backend, rotas, pedidos, créditos ou eventos.

  Problema corrigido:
  dashboard-modern-v58.css força a sidebar para position:relative!important.
  No celular isso fazia a sidebar fechada continuar ocupando uma viewport
  inteira no fluxo da página, criando o grande espaço branco antes do app.

  Solução:
  no mobile a sidebar volta a ser um drawer FIXO/off-canvas. Fechada não
  ocupa espaço; aberta desliza por cima da tela com overlay.
*/

@media (max-width: 920px) {
  html,
  body,
  #root {
    min-height: 100%;
  }

  .adaptadoShellV41 {
    display: block !important;
    min-height: 100dvh !important;
    align-items: initial !important;
  }

  /* Drawer fechado: totalmente fora do fluxo e fora da tela. */
  .adaptadoSidebarV41 {
    position: fixed !important;
    z-index: 1002 !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: min(84vw, 320px) !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-104%, 0, 0) !important;
    transition: transform .24s ease, visibility .24s ease !important;
    border-radius: 0 24px 24px 0 !important;
    box-shadow: 20px 0 60px rgba(5, 20, 83, .28) !important;
  }

  /* Drawer aberto. A classe .open já é controlada pelo React atual. */
  .adaptadoSidebarV41.open {
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
  }

  /* Fundo escurecido somente enquanto o menu estiver aberto. */
  .adaptadoSidebarOverlayV41 {
    position: fixed !important;
    z-index: 1001 !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(6, 17, 61, .48) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .2s ease, visibility .2s ease !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
  }

  .adaptadoSidebarOverlayV41.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  /* O conteúdo começa imediatamente no topo; nenhum espaço reservado ao menu. */
  .adaptadoMainV41 {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 12px 30px !important;
    transform: none !important;
  }

  .adaptadoTopbarV41 {
    margin-top: 0 !important;
  }
}

@supports not (height: 100dvh) {
  @media (max-width: 920px) {
    .adaptadoShellV41 {
      min-height: 100vh !important;
    }

    .adaptadoSidebarV41,
    .adaptadoSidebarOverlayV41 {
      height: 100vh !important;
      min-height: 100vh !important;
      max-height: 100vh !important;
    }
  }
}
