/* ===================================================
   MODAL QUE ENCAIXA NA TELA — classe .inmap-modal-fit (ADR-288/289)
   Usada no Dashboard/Estatísticas e no Relatório de Atributos.

   94 % da altura da tela e largura proporcional (até 1400 px, no máximo
   ~1,65 × a altura, para o conteúdo não esticar nem espremer). O
   .modal-content é um flex em coluna: cabeçalho e rodapé fixos, corpo com
   o resto — sem rolagem vertical no modal. O conteúdo do corpo decide
   como usar essa altura (ex.: layout em duas colunas).

   No celular (< 900 px) não cabe tudo: volta ao modal normal, que rola.
   =================================================== */

.inmap-modal-fit .modal-dialog {
    width: min(1400px, 96vw, calc(94vh * 1.65));
    max-width: 96vw;
    height: 94vh;
    margin: 3vh auto;
}

.inmap-modal-fit .modal-content {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.inmap-modal-fit .modal-header,
.inmap-modal-fit .modal-footer { flex: 0 0 auto; }

.inmap-modal-fit .modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Filhos diretos do corpo: tamanho natural; o que tiver .inmap-modal-fit-fill
   ocupa o resto (não pode ser flex se algum JS alternar o display dele). */
.inmap-modal-fit .modal-body > * { flex: 0 0 auto; }
.inmap-modal-fit .modal-body > .inmap-modal-fit-fill {
    flex: 1 1 auto;
    min-height: 0;
}

@media (max-width: 900px) {
    .inmap-modal-fit .modal-dialog { width: auto; height: auto; margin: 10px; }
    .inmap-modal-fit .modal-content { height: auto; display: block; }
    .inmap-modal-fit .modal-body { display: block; overflow: visible; }
}
