/*Imagem Fixa da popup de login usuario ja conectado*/
:root {
    --cor-amarela: #ffd600;
    --cor-texto-popup: #6F6F6F;
    --cor-circulo-icone: #f1f1f1;
    --cor-titulo-popup: #1e1e1e;
}

.popup-layout.dxpc-mainDiv,
.popup-layout > .dxpc-contentWrapper {
    border-radius: 10px;
}

/*Necessário utilizar a classe abaixo, caso contrário, 
no firefox a popup de termo de uso não irá exibir o conteúdo corretamente*/
.popup-layout .dxpc-content {
    width: 100% !important;
    height: 100% !important;
    max-height: 700px;
    box-sizing: border-box;
    overflow: auto;
}

.content-popup {
    padding-bottom: 4px;
    padding-right: 14px;
    padding-left: 14px;
    padding-top: 14px;
}
.content-popup-internal {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;    
}

.texto-popup {    
    text-align: center;
    text-align-last: center;
    color: var(--cor-texto-popup);
}

.texto-popup-termos-uso {
    text-align: left !important;
    text-align-last: left !important;
    color: var(--cor-texto-popup);
}

.popup-imagem-titulo {
    padding: 12px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.icone-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: var(--cor-circulo-icone);
    border-radius: 50%;
}

.titulo-popup {
    font-size: var(--tamanho-titulo);
    color: var(--cor-titulo-popup);
    font-weight: bold;
    margin-top: 12px;
}

.icone-container .icone {
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.warning-icon i {
    color: var(--cor-amarela);
}

.icone i {
    font-size: 30px;
}

.espacamento-botao-popup {
    display: flex;
    gap: 10px;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    box-sizing: border-box;
}

.espacamento-botao-popup input {
    flex: 1;
    text-align: center;
    box-sizing: border-box;
}

.texto-popup > span {
    padding: 0px!important;
}
/* ================================================================
   CORRECAO RESPONSIVA + BOTOES SEMPRE VISIVEIS + FONTE  (v4)
   Modal "Termo de Uso" / popups de login (.popup-layout).
   Vale para DESKTOP e MOBILE (CSS compartilhado). Somente CSS
   (override) - nao altera .ascx, code-behind, DLL nem regra de negocio.

   Como funciona:
   - O modal e SEMPRE centralizado na tela, com ~12px de margem ate a
     borda; nunca ultrapassa a viewport (largura e altura).
   - A area de conteudo usa FLEXBOX: a AREA DE TEXTO rola e os BOTOES
     ficam FORA da rolagem, ocupando a altura real que precisarem.
     Assim os botoes NUNCA sao cortados, em qualquer tamanho de tela.
   - min(700px, ...) preserva o tamanho de desktop (modal nao fica gigante).
   Testado de 320px a 1920px, retrato e paisagem, com rodape alto.
   ================================================================ */

/* 1) Modal sempre centralizado e dentro da tela (com margem). */
.popup-layout.dxpc-mainDiv {
    position: fixed !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    max-width: calc(100vw - 24px) !important;
    max-height: min(700px, calc(100dvh - 24px)) !important;
    box-sizing: border-box;
}

/* 2) Container do conteudo em coluna flex: texto (flexivel) + botoes (fixos). */
.popup-layout .dxpc-content {
    display: flex !important;
    flex-direction: column !important;
    max-height: min(700px, calc(100dvh - 24px)) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box;
}

/* 3) SOMENTE a area de texto (titulo + termo) rola e ocupa o espaco restante. */
.popup-layout .content-popup {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    box-sizing: border-box;
}

/* 4) Rodape dos botoes: altura natural (nunca encolhe), sempre visivel. */
.popup-layout .espacamento-botao-popup {
    flex: 0 0 auto !important;
    background: #fff;
    border-top: 1px solid #eee;
    padding-top: 12px;
    padding-bottom: 12px;
}
.popup-layout .espacamento-botao-popup input {
    min-height: 44px; /* area de toque adequada em touch */
}

/* 5) Texto do Termo: quebra natural, sem rolagem horizontal. */
.popup-layout .texto-popup,
.popup-layout .texto-popup-termos-uso {
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

/* 6) Ajuste fino para celulares muito estreitos (<= 380px). */
@media (max-width: 380px) {
    .content-popup {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    .espacamento-botao-popup {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

/* 7) Fonte do projeto no modal (titulo, texto e botoes). */
.popup-layout .content-popup,
.popup-layout .titulo-popup,
.popup-layout .texto-popup,
.popup-layout .texto-popup-termos-uso,
.popup-layout .texto-popup span,
.popup-layout .espacamento-botao-popup input {
    font-family: "Segoe UI", Roboto, Arial, sans-serif !important;
}
/* ===================== FIM DA CORRECAO ===================== */
