
/* V319 - Mobile: pilha automática sem espaço vazio quando Roteiro IA não existe */

@media(max-width:900px){
  :root{
    --mfloat-right-v319:14px;
    --mfloat-bottom-v319:20px;
    --mfloat-size-v319:54px;
    --mfloat-gap-v319:10px;
    --mfloat-step-v319:calc(var(--mfloat-size-v319) + var(--mfloat-gap-v319));
  }

  /*
    Estado deslogado:
    - Roteiro IA não existe.
    - Acessibilidade assume o topo da pilha.
    - WhatsApp fica abaixo.
  */

  body .whatsapp-float-v252{
    position:fixed!important;
    right:var(--mfloat-right-v319)!important;
    bottom:var(--mfloat-bottom-v319)!important;
    width:var(--mfloat-size-v319)!important;
    height:var(--mfloat-size-v319)!important;
    min-width:var(--mfloat-size-v319)!important;
    min-height:var(--mfloat-size-v319)!important;
    max-width:var(--mfloat-size-v319)!important;
    max-height:var(--mfloat-size-v319)!important;
    z-index:2147482500!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
  }

  body .whatsapp-float-v252 .whatsapp-float-btn-v252{
    width:var(--mfloat-size-v319)!important;
    height:var(--mfloat-size-v319)!important;
    min-width:var(--mfloat-size-v319)!important;
    min-height:var(--mfloat-size-v319)!important;
    max-width:var(--mfloat-size-v319)!important;
    max-height:var(--mfloat-size-v319)!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
  }

  body .casttur-a11y-widget{
    position:fixed!important;
    right:var(--mfloat-right-v319)!important;
    bottom:calc(var(--mfloat-bottom-v319) + var(--mfloat-step-v319))!important;
    top:auto!important;
    left:auto!important;
    width:var(--mfloat-size-v319)!important;
    height:var(--mfloat-size-v319)!important;
    min-width:var(--mfloat-size-v319)!important;
    min-height:var(--mfloat-size-v319)!important;
    max-width:var(--mfloat-size-v319)!important;
    max-height:var(--mfloat-size-v319)!important;
    z-index:2147482501!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body .casttur-a11y-widget .casttur-a11y-toggle{
    width:var(--mfloat-size-v319)!important;
    height:var(--mfloat-size-v319)!important;
    min-width:var(--mfloat-size-v319)!important;
    min-height:var(--mfloat-size-v319)!important;
    max-width:var(--mfloat-size-v319)!important;
    max-height:var(--mfloat-size-v319)!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
  }

  /*
    Estado logado:
    - Roteiro IA existe.
    - Roteiro IA fica no topo.
    - Acessibilidade fica no meio.
    - WhatsApp fica embaixo.
  */

  body .ai-route-float-v292{
    position:fixed!important;
    right:var(--mfloat-right-v319)!important;
    bottom:calc(var(--mfloat-bottom-v319) + (var(--mfloat-step-v319) * 2))!important;
    top:auto!important;
    left:auto!important;
    width:var(--mfloat-size-v319)!important;
    height:var(--mfloat-size-v319)!important;
    min-width:var(--mfloat-size-v319)!important;
    min-height:var(--mfloat-size-v319)!important;
    max-width:var(--mfloat-size-v319)!important;
    max-height:var(--mfloat-size-v319)!important;
    z-index:2147482502!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
  }

  body:has(.ai-route-float-v292) .casttur-a11y-widget{
    bottom:calc(var(--mfloat-bottom-v319) + var(--mfloat-step-v319))!important;
  }

  body:has(.ai-route-float-v292) .whatsapp-float-v252{
    bottom:var(--mfloat-bottom-v319)!important;
  }

  /* Centraliza ícones internos */
  body .ai-route-float-v292 svg,
  body .casttur-a11y-toggle svg,
  body .whatsapp-float-v252 svg{
    display:block!important;
    margin:auto!important;
    position:static!important;
    transform:none!important;
  }

  body .ai-route-float-v292 > *,
  body .casttur-a11y-toggle > *,
  body .whatsapp-float-v252 .whatsapp-float-btn-v252 > *{
    margin:auto!important;
    position:static!important;
    transform:none!important;
  }

  /* Painéis/modal na frente, ajustados conforme pilha */
  body .whatsapp-float-v252 .whatsapp-panel-v252{
    position:fixed!important;
    right:var(--mfloat-right-v319)!important;
    bottom:calc(var(--mfloat-bottom-v319) + var(--mfloat-step-v319))!important;
    width:min(360px, calc(100vw - 28px))!important;
    max-width:calc(100vw - 28px)!important;
    z-index:2147483000!important;
  }

  body .casttur-a11y-widget .casttur-a11y-panel{
    position:fixed!important;
    right:var(--mfloat-right-v319)!important;
    bottom:calc(var(--mfloat-bottom-v319) + (var(--mfloat-step-v319) * 2))!important;
    top:auto!important;
    left:auto!important;
    width:min(320px, calc(100vw - 28px))!important;
    max-width:calc(100vw - 28px)!important;
    transform:none!important;
    z-index:2147483000!important;
  }

  body:has(.ai-route-float-v292) .casttur-a11y-widget .casttur-a11y-panel{
    bottom:calc(var(--mfloat-bottom-v319) + (var(--mfloat-step-v319) * 3))!important;
  }

  body .casttur-a11y-widget.open .casttur-a11y-panel{
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  /* Label do IA não ocupa espaço na pilha */
  body .ai-route-float-v292 span{
    display:none!important;
  }
}

@media(max-width:420px){
  :root{
    --mfloat-right-v319:10px;
    --mfloat-bottom-v319:16px;
    --mfloat-size-v319:50px;
    --mfloat-gap-v319:8px;
  }

  body .whatsapp-float-v252 .whatsapp-panel-v252,
  body .casttur-a11y-widget .casttur-a11y-panel{
    right:10px!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
  }
}
