/* scroll-fix.css
   Correção global: mantém rolagem vertical e horizontal disponível em todas as páginas.
   Carregar por último no <head>. */

html {
    min-height: 100%;
    height: auto !important;
    overflow-x: auto !important;
    overflow-y: scroll !important;
    scrollbar-gutter: stable both-edges;
}

body {
    min-height: 100vh;
    height: auto !important;
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
}

/* Garante que elementos largos, tabelas, cálculos e formulários não sejam cortados no Chrome. */
table,
pre,
code,
canvas,
svg,
iframe,
img,
.calculadora,
.tabela,
.table-wrapper,
.form-container,
.container,
.page,
main {
    max-width: none;
}

/* Permite arrastar/rolar horizontalmente blocos de conteúdo que excedam a tela. */
main,
.page,
.container,
.table-wrapper,
.form-container {
    overflow-x: auto;
}

/* Mantém header e footer dentro da viewport para não criarem barra horizontal artificial. */
#header-nav-container,
#footer-container,
.site-header,
.site-nav,
footer {
    max-width: 100%;
    overflow-x: clip;
}

/* Evita que páginas com layout fixo cortem conteúdo no Chrome. */
body > main {
    min-height: auto;
}
