@charset "UTF-8";

/* Estilos válidos para todas as páginas da aplicação */

body {
    font-size: small;
}


/* Set padding to keep content from hitting the edges */

.body-content {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0px;
}


/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/

.dl-horizontal dt {
    white-space: normal;
}


/* ------------------------- */

.titulo-site {
    font-family: Libre Franklin, Helvetica, Arial, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}

table.table td,
table.table th {
    vertical-align: middle;
}

table.table th {
    text-align: center;
}

.border-left-thick {
    border-left-width: thick !important;
}


/* Questionário */

.questionario .list-group-item.active {
    background-color: #8E8C84;
    color: #fff;
}

.questionario .list-group-item.active:before {
    font-family: FontAwesome;
    content: "\f101";
    margin-right: 0.25em;
}


/* EasyAutocomplete */

.eac-square input {
    background-image: url("../img/icon_search.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
}


/* modal */

@media (min-width: 992px) {
    .modal-lg {
        max-width: 980px;
    }
}

.blockUI span {
    font-size: large;
    font-weight: 400;
}


/* List-items personalizados */


/* --pendencia-aviso */

.list-group-item-pendencia-aviso {
    color: #7f401f;
    background-color: #f5ffb2;
}

.list-group-item-pendencia-aviso:hover,
.list-group-item-pendencia-aviso:focus {
    color: #7f401f;
    background-color: #fcdac8;
}

.list-group-item-pendencia-aviso.list-group-item-action.active {
    color: #7f401f;
    background-color: #fcdac8;
    border-color: #0c6251;
}


/* --pendencia-erro */

.list-group-item-pendencia-erro {
    font-weight: bold;
    color: #712b29;
    background-color: #d1a39e;
}

.list-group-item-pendencia-erro:hover,
.list-group-item-pendencia-erro:focus {
    color: #712b29;
    background-color: #efbbb9;
}

.list-group-item-pendencia-erro.list-group-item-action.active {
    color: #fff;
    background-color: #712b29;
    border-color: #712b29;
}


/* --pendencia-erro e aviso */

.list-group-item-pendencia-aviso,
.list-group-item-pendencia-erro,
#dvValidarPendencias .list-group-item-success {
    cursor: pointer
}

.list-group-item-pendencia-aviso a,
.list-group-item-pendencia-erro a,
#dvValidarPendencias .list-group-item-success a {
    display: contents;
    color: blue;
}


/* -- customizações diversas -- */

.badge-aditivo {
    font-size: 0.9em;
}


/* -- inverte carets dos collapses */

a[aria-expanded='false']>.caret,
button[aria-expanded='false']>.caret {
    transform: rotate(180deg);
}


/* ------ Iluminar elementos  de testes automatizados ----------
*[class*="tta-"] { -webkit-box-shadow:0px 0px 30px 3px #d6ff00 ; -moz-box-shadow:0px 0px 30px 3px #d6ff00 ; box-shadow:0px 0px 30px 3px #d6ff00 ; }
*/

div.growlUIInterno {
    background: url('../img/bloqueado.svg') no-repeat 10px 10px;
}

div.growlUIInterno h1 {
    font-size: 1.5em;
}

div.growlUIInterno h2 {
    font-size: 1em;
}

div.growlUIInterno h1,
div.growlUIInterno h2 {
    color: white;
    padding: 5px 5px 5px 75px;
    text-align: left;
}

.BloqueioEdicaoSecao {
    cursor: no-drop !important;
}

@media screen and (max-width: 800px) {
    #areaBanner h3 {
        font-size: x-small;
    }
}

@media screen and (min-width: 801px) and (max-width: 1200px) {
    #areaBanner h3 {
        font-size: small;
    }
}

.sc-div>.form-group {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.sc-div>.form-group>label {
    margin-top: auto;
}


/* Tela de consulta de licença */

.recapResize {
    transform: scale(0.78);
    -moz-transform: scale(0.78);
    -ms-transform: scale(0.78);
    -o-transform: scale(0.78);
    -webkit-transform: scale(0.78);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
}

.input-group-addon.primary {
    color: rgb(255, 255, 255);
    background-color: rgb(50, 118, 177);
    border-color: rgb(40, 94, 142);
}

.input-group-addon.success {
    color: rgb(255, 255, 255);
    background-color: rgb(92, 184, 92);
    border-color: rgb(76, 174, 76);
}

.input-group-addon.info {
    color: rgb(255, 255, 255);
    background-color: rgb(57, 179, 215);
    border-color: rgb(38, 154, 188);
}

.input-group-addon.warning {
    color: rgb(255, 255, 255);
    background-color: rgb(240, 173, 78);
    border-color: rgb(238, 162, 54);
}

.input-group-addon.danger {
    color: rgb(255, 255, 255);
    background-color: rgb(217, 83, 79);
    border-color: rgb(212, 63, 58);
}

.btnModalCloseCorner {
    position: absolute;
    right: -20px;
    top: -20px;
    z-index: 900;
    width: 40px;
    height: 40px;
    padding: 9px 13px;
    font-size: 18px;
    line-height: 1.33;
    border-radius: 20px;
    border-color: #fff
}

.infoAlternativa .text-danger,
.infoPergunta .text-danger {
    color: #FF0000 !important;
}

.infoAlternativa a.text-danger:hover,
.infoAlternativa a.text-danger:focus,
.infoPergunta a.text-danger:hover,
.infoPergunta a.text-danger:focus {
    color: #FF0000 !important;
}


/* Cabecalho Internet */

.tta-cabecalho-sistema {
    display: none;
}


/* Cabeçalho links e usuario */

.tta-cabecalho-aplicacao {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 5px;
    margin-top: 5px;
    padding-right: 10px;
}

.tta-cabecalho-aplicacao .nav-link {
    white-space: nowrap;
}

.logo-sistema-icone {
    width: 48px;
    height: 48px;
    background: url('../img/logo_sistema_icone.png') 5px 0px / 48px 48px;
    min-width: 50px;
}

.logo-cliente {
    /*width: 153px;min-width: 150px;height: 50px; margin-top:-5px; background: url('../img/logo_cidade.svg') 5px no-repeat; padding-left:5px; border-left: 1px solid gainsboro*/
}

.tta-cabecalho-aplicacao #sessaoUsusario {
    padding-right: 5px;
    margin-top: 5px;
}

.usuario-img {
    display: block;
    float: right;
    width: 32px;
    margin-top: 5px;
}

.usuario-dados {
    display: block;
}

.tta-acao-inicio {
    display: none;
}


/*Link Inicio removido, pois é acessível pelo ícone do sistema */

.tta-rodape-sistema {
    background-color: #3e3f3a!important;
    color: #fff;
    width: 100%;
    display: flex;
    flex-flow: row-reverse;
    padding: 0 15px;
}

.tta-rodape-sistema span {
    padding-left: 10px
}


/* Cabecalhos Titulos de párina internet */

.tta-cabecalho-pagina {
    box-shadow: inset 0 7px 9px -7px rgba(0, 0, 0, 0.4);
    margin: 0 -15px 15px -15px;
    padding-left: 20px;
    padding-top: 25px;
}


/* ==========================================================
   HOME MODERNA
   As regras abaixo afetam somente a página que contém #HomeContent
   ========================================================== */

body:has(#HomeContent) {
    background: radial-gradient(circle at 8% 16%, rgba(25, 156, 184, 0.10), transparent 24%), radial-gradient(circle at 91% 10%, rgba(255, 183, 40, 0.12), transparent 25%), #f5f9fc;
}


/* Topo moderno somente na Home */

body:has(#HomeContent) .tta-cabecalho-aplicacao {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    min-height: 88px;
    margin: 22px 30px 0;
    padding: 10px 24px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid #e5edf2;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(18, 52, 70, 0.10);
    position: relative;
    z-index: 10;
}

body:has(#HomeContent) .tta-cabecalho-aplicacao .logo-sistema-icone {
    width: 58px;
    height: 58px;
    min-width: 58px;
    margin-right: 14px;
    background-position: center;
    background-size: 48px 48px;
    background-repeat: no-repeat;
}

body:has(#HomeContent) .tta-cabecalho-aplicacao>.col {
    color: #173246;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.35;
}

body:has(#HomeContent) .tta-cabecalho-aplicacao>.col-auto {
    display: flex;
    align-items: center;
    gap: 10px;
}

body:has(#HomeContent) .tta-cabecalho-aplicacao .btn,
body:has(#HomeContent) .tta-cabecalho-aplicacao .nav-link {
    min-height: 44px;
    padding: 11px 19px;
    border-radius: 9px;
    font-weight: 700;
    text-transform: uppercase;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body:has(#HomeContent) .tta-cabecalho-aplicacao .btn:hover,
body:has(#HomeContent) .tta-cabecalho-aplicacao .nav-link:hover {
    transform: translateY(-2px);
}


/* Remove o posicionamento antigo da Home */

#home_index_content {
    position: relative !important;
    top: auto !important;
    width: auto !important;
    margin: 0 !important;
}


/* Área principal da Home */

#HomeContent {
    max-width: 1460px;
    margin: 0 auto;
    padding: 18px 30px 40px;
}


/* Hero principal: */

#HomeContent #siteBanner {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    align-items: center;
    min-height: 440px;
    width: 100%;
    margin: 0;
    padding: 68px 56% 68px 72px;
    border: 1px solid rgba(211, 225, 233, 0.9);
    border-radius: 0 0 26px 26px;
    background-color: #f8fcff;
    background-image: url('../CustomContent/crayon.jpg');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover !important;
    box-shadow: 0 20px 50px rgba(24, 61, 82, 0.12);
    font-family: "Libre Franklin", Helvetica, Arial, sans-serif;
}


/* Degradê que garante leitura no lado esquerdo */

#HomeContent #siteBanner::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    /* background: linear-gradient(90deg, rgba(248, 252, 255, 1) 0%, rgba(248, 252, 255, 1) 42%, rgba(248, 252, 255, 0.96) 48%, rgba(248, 252, 255, 0.18) 67%, rgba(248, 252, 255, 0) 100%); */
    /* Maior recuo para leitura */
    background: linear-gradient( 90deg, rgba(248, 252, 255, 1) 0%, rgba(248, 252, 255, 1) 26%, rgba(248, 252, 255, .95) 31%, rgba(248, 252, 255, .18) 43%, rgba(248, 252, 255, 0) 56%);
}


/* Título moderno */

#HomeContent #siteBanner::after {
    content: "Plataforma de\A Inscrições\A \A CMDCA/SP";
    white-space: pre-line;
    position: relative;
    z-index: 2;
    display: block;
    color: #07314d;
    font-size: clamp(46px, 5vw, 76px);
    font-weight: 800;
    line-height: 1.09;
    /* letter-spacing: -2.5px; */
    text-shadow: none;
}


/*
  Inclusão dos logos CMDCA e Prefeitura de SP
*/

#HomeContent #siteBanner>div {
    display: block !important;
    position: absolute;
    top: 50%;
    right: 7%;
    z-index: 2;
    width: 38%;
    height: 160px;
    max-width: 350px;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
    background-image: url('../CustomContent/logos-cmda-sp.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px;
    overflow: hidden;
    pointer-events: none;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    border-radius: 22px;
    border: 1px solid rgba(230, 236, 242, 0.9);
    padding: 28px 36px;
    background-color: rgba(255, 255, 255, .65);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

#HomeContent #siteBanner>div * {
    display: none !important;
}


/* Painel de informações abaixo do banner */

#HomeContent #solicitacao {
    position: relative;
    margin: 26px 0 0;
    padding: 15px 34px 15px 92px;
    min-height: 120px;
    background: linear-gradient(135deg, #f1fbfd 0%, #ffffff 58%, #f6fbfd 100%);
    border: 1px solid #d9eaf0;
    border-radius: 20px;
    box-shadow: 0 12px 30px rgba(24, 61, 82, 0.07);
    color: #304653;
}

#HomeContent #solicitacao::after {
    content: "i";
    position: absolute;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, #077c8b, #12a2b7);
    color: #fff;
    font-family: Georgia, serif;
    font-size: 28px;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(10, 136, 154, 0.22);
}

#HomeContent #solicitacao h5,
#HomeContent #solicitacao a {
    display: none !important;
}

#HomeContent div#solicitacao::before {
    content: "Portal de Inscrições do Conselho Municipal dos Direitos da Criança e do Adolescente.\A Quaisquer dúvidas poderão ser encaminhadas ao e-mail:\A cmdca@prefeitura.sp.gov.br";
    white-space: pre-line;
    display: block;
    color: #334a57;
    font-size: 17px;
    line-height: 1.75;
}

#HomeContent #autenticidade {
    display: none !important;
}


/* Rodapé mais leve somente na Home */

body:has(#HomeContent) .tta-rodape-sistema {
    min-height: 54px;
    align-items: center;
    background-color: #173441 !important;
    padding: 0 30px;
}

@media screen and (max-width: 1050px) {
    body:has(#HomeContent) .tta-cabecalho-aplicacao {
        margin: 14px 16px 0;
    }
    #HomeContent {
        padding: 16px 16px 30px;
    }
    #HomeContent #siteBanner {
        min-height: 410px;
        padding: 55px 48% 55px 48px;
        background-size: 62% 100%;
    }
    #HomeContent #siteBanner::after {
        font-size: clamp(42px, 5vw, 62px);
    }
}

@media screen and (max-width: 760px) {
    body:has(#HomeContent) .tta-cabecalho-aplicacao {
        flex-wrap: wrap;
        gap: 12px;
        padding: 14px;
        border-radius: 14px;
    }
    body:has(#HomeContent) .tta-cabecalho-aplicacao>.col-auto {
        width: 100%;
        justify-content: center;
        padding-left: 0 !important;
    }
    #HomeContent #siteBanner {
        align-items: flex-start;
        min-height: 650px;
        padding: 46px 30px;
        border-radius: 0 0 20px 20px;
        background-position: center bottom;
        background-size: 100% 55%;
    }
    #HomeContent #siteBanner::before {
        background: linear-gradient(180deg, rgba(248, 252, 255, 1) 0%, rgba(248, 252, 255, 1) 39%, rgba(248, 252, 255, 0.92) 51%, rgba(248, 252, 255, 0.08) 72%, rgba(248, 252, 255, 0) 100%);
    }
    #HomeContent #siteBanner::after {
        font-size: clamp(39px, 11vw, 56px);
        letter-spacing: -1.5px;
    }
    /* No celular, as logos ficam logo abaixo do texto CMDCA/SP */
    #HomeContent #siteBanner>div {
        top: 255px;
        left: 30px;
        right: auto;
        width: calc(100% - 60px);
        height: 120px;
        max-width: none;
        transform: none;
        background-position: left center;
    }
    #HomeContent #solicitacao {
        padding: 80px 24px 26px;
    }
    #HomeContent #solicitacao::after {
        left: 24px;
        top: 24px;
        transform: none;
    }
}

@media screen and (max-width: 480px) {
    body:has(#HomeContent) .tta-cabecalho-aplicacao>.col-auto {
        flex-direction: column;
    }
    body:has(#HomeContent) .tta-cabecalho-aplicacao .btn,
    body:has(#HomeContent) .tta-cabecalho-aplicacao .nav-link {
        width: 100%;
    }
    #HomeContent #siteBanner {
        min-height: 590px;
        padding: 38px 24px;
        background-size: 100% 50%;
    }
    #HomeContent #siteBanner>div {
        top: 225px;
        left: 24px;
        width: calc(100% - 48px);
        height: 105px;
    }
}


/* ==========================================================
   BANNER DA PÁGINA DE ESCOLHA DO ASSUNTO
   ========================================================== */

#AssuntoContent #banner,
#QuestionarioContent #banner {
    position: relative;
    overflow: hidden;
    width: 100%;
    min-height: 240px;
    margin: 18px 0 28px;
    padding: 0;
    border: 1px solid rgba(211, 225, 233, 0.9);
    border-radius: 22px;
    background-color: #f8fcff;
    background-image: url('../CustomContent/crayon.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    box-shadow: 0 16px 40px rgba(24, 61, 82, 0.12);
}


/* Clareia suavemente a imagem para manter o mesmo padrão visual da Home */

#AssuntoContent #banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.18);
    pointer-events: none;
}


/* Esconde qualquer conteúdo antigo que exista dentro do banner */

#AssuntoContent #banner>div,
#QuestionarioContent #banner>div {
    display: flex !important;
    align-items: flex-start;
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    padding: 40px 48px;
    font-family: "Libre Franklin", Helvetica, Arial, sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.05;
    color: #112d40 !important;
    text-shadow: none;
}

#AssuntoContent #banner>div::before {
    content: "Escolha do assunto";
    margin-top: 60px !important;
    font-size: 40px !important;
}

#QuestionarioContent #banner>div::before {
    content: "Confirmação do assunto";
    margin-top: 60px !important;
    font-size: 40px !important;
}

#AssuntoContent #banner>div,
#QuestionarioContent #banner>div {
    color: transparent;
    font-size: 0;
}

@media screen and (max-width: 760px) {
    #AssuntoContent #banner,
    #QuestionarioContent #banner {
        min-height: 190px;
        margin: 14px 0 22px;
        border-radius: 18px;
        background-position: center;
    }
}

@media screen and (max-width: 480px) {
    #AssuntoContent #banner,
    #QuestionarioContent #banner {
        min-height: 150px;
        border-radius: 14px;
    }
}


/* Login */


/*#LoginContent { background: linear-gradient(-45deg, #ccc, #eee, #ddd, #ccc); background-size: 100% 100%; }*/

#LoginContent .box-admin {
    margin-top: -50px;
    width: 500px;
    color: #000;
    box-shadow: 0px 10px 50px 0px rgba(127, 127, 127, 0.75);
    -webkit-box-shadow: 0px 10px 50px 0px rgba(127, 127, 127, 0.75);
    -moz-box-shadow: 0px 10px 50px 0px rgba(127, 127, 127, 0.75);
}

#LoginContent .box-admin .card-footer {
    display: none
}

#LoginContent .box-admin .card-header span {
    font-size: 30px;
    text-transform: capitalize;
    font-weight: 500;
    vertical-align: bottom;
    margin-left: -5px;
    margin-right: 50px;
}

#LoginContent .box-admin .card-body {
    padding: 30px 30px 40px 30px;
}


/* Home */

#HomeContent #autenticidade {
    margin-top: 30px;
}


/* Já sei o assunto */

.tta-licencas-item {
    flex-grow: 1;
    width: 32%;
    min-width: 400px;
    padding: 5px;
    margin: 5px;
    border: 1px solid #FFE;
    border-radius: 5px;
    background-color: #edecec;
}


/* Intranet - Protocolo */

.cabecalhoProtocoloAnalise {
    display: flex;
    margin-left: -5px;
    margin-right: -5px;
    flex-wrap: wrap;
    margin-bottom: 10px;
    align-self: flex-end;
    justify-content: flex-end;
}

.cabecalhoProtocoloAnalise>div {
    padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 10px;
    flex: 1 1 0;
    align-self: flex-end;
}

.cabecalhoProtocoloAnalise .cProtocolo {
    min-width: 110px;
}

.cabecalhoProtocoloAnalise .cAberturaProtocolo,
.cabecalhoProtocoloAnalise .cAberturaProcesso {
    min-width: 150px;
}

.cabecalhoProtocoloAnalise .cProcesso {
    min-width: 160px;
}

.cabecalhoProtocoloAnalise .cAssunto {
    flex-grow: 5;
    min-width: 200px;
}

.cabecalhoProtocoloAnalise .cSituacao {
    min-width: 240px;
}

.cabecalhoProtocoloAnalise #btnAcoes {
    width: 120px;
    height: 35px;
    align-self: flex-end;
    margin: 0px 5px 10px 5px;
}


/* Intranet - Tela PesquisaProtocolo*/

#pesquisaProtocolo #btnNovoRequerimentoContainer {
    min-width: fit-content;
    padding-right: 30px;
    flex: 0 0 16.6666%;
    max-width: 16.6666%;
    text-align: right;
}


/* Intranet - PesquisaProtocolo - Filtro */

.cNumeroContribuinteSQL {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

#MensagemAdicionalDetalheConclusao::after {
    content: "\A DECLARO, SOB AS PENAS PREVISTAS EM LEI, QUE AS INFORMAÇÕES E DOCUMENTOS AQUI ENCAMINHADOS SÃO VERDADEIROS E ESTÃO EM CONFORMIDADE COM EDITAL PROCESSO DE ESCOLHA Nº 006/SMDHC/2026.";
    white-space: pre-line;
    position: relative;
    z-index: 2;
    display: block;
    color: #225375 !important;
    font-size: 12px !important;
    font-weight: 500;
    text-shadow: none;
    font-style: italic;
}


/* #07314d; */