/*
 *
 * CSS com estilos específicos do tema IDG VERDE
 *
 * @Autores
 *
 * - Simples Consultoria - www.simplesconsultoria.com.br
 * - DESERTO Digital - www.desertodigital.com.br
 *
 * @Referencias
 *
 * Lista de padrões, convenções e boas praticas CSS que devem ser seguidas.
 * https: //github.com/necolas/idiomatic-css/tree/master/translations/pt-BR
 *
 * Plugins para ordenar os atributos de CSS.
 * http://csscomb.com/
 *
 * Validador de CSS do W3C.
 * http://jigsaw.w3.org/css-validator/
 */


/* ==========================================================================
   Cabeçalho do portal
   ========================================================================== */

#header {
    padding: 14px 0 0 0;
	color: #fff;
	background-color: #1C5DC1;
	background-color: #114889;
	background-image: -moz-radial-gradient(center, ellipse cover, #1C5DC1 1%, #114889 100%);
	background-image: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(1%,#1C5DC1), color-stop(100%,#114889));
	background-image: -webkit-radial-gradient(center, ellipse cover, #1C5DC1 1%,#114889 100%);
	background-image: -o-radial-gradient(center, ellipse cover, #1C5DC1 1%,#114889 100%);
	background-image: -ms-radial-gradient(center, ellipse cover, #1C5DC1 1%,#114889 100%);
	background-image: radial-gradient(ellipse at center, #1C5DC1 1%,#114889 100%);
	/* IE6-9 fallback on horizontal gradient */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1C5DC1', endColorstr='#114889',GradientType=1 );
    
}

/* Menu de Acessibilidade
   ========================================================================== */

#accessibility a {
    color: #dcecff;
}

#accessibility span {
    background: url("../img/bg-acess-key.gif") center center no-repeat;
    color: #0a1857;
}

/* Titulo do portal
   ========================================================================== */

#portal-logo,
#portal-title { color: #fff !important; }

/* Menu site actions - Acessibilidade, Alto Contraste, Mapa do site
   ========================================================================== */

#portal-siteactions,
#portal-language { border-bottom: 1px dotted #6893cb; }

#portal-siteactions a,
#portal-siteactions a:hover,
#portal-language a,
#portal-language a:hover { color: #dcecff !important; }

/* Menu sobre o portal
   ========================================================================== */

#sobre { background: #0f4098; }

#sobre a { color: #fff; }

#sobre .portalservicos-item a { border-right: 1px solid #87a0cc; }

/* Formulário de busca
   ========================================================================== */

#portal-searchbox { border: 1px solid #CCCCCC; }

/* ==========================================================================
   Sprinte Icons
   ========================================================================== */

/* icones de redes sociais */
#social-icons a,
/* central de conteudo */
.item-central .link-videos,
.item-central .link-audios,
.item-central .link-infograficos,
.item-central .link-publicacoes,
.item-central .link-fotos,
.item-central .link-aplicativos,
.item-central .link-dadosabertos,
/* icone do botão de busca */
#header input.searchButton { background-image: url("../img/sprite.png"); }
/* icone do botão de relatar erros */
#content .relatar-erros a { background: url("../img/icon-reportar-erros.png") no-repeat; }

/* Summary view */
#content .summary-view-icon [class*="icon"] {
    background-image: url("../img/summary-view-icons-sprite.png");
}


/* ==========================================================================
   Portles
   ========================================================================== */

/* Portlet de navegação
   ========================================================================== */

#portal-column-one > .nav-menu-de-relevancia .first-item-nav a,
#portal-column-one > .nav-menu-de-relevancia .first-item-nav a span {
    color: #2c66ce !important;
}

.portlet-static-contents-central .portletHeader,
.portlet-static-centrales-del-contenido .portletHeader,
.portlet-static-centrais-de-conteudos .portletHeader,
.portletNavigationTree .portletHeader {
    border-top: 4px solid #1659bf;
    color: #1659bf;
}

.portletNavigationTree .portletHeader a { color: #1659bf !important; }

.navTreeLevel0 > li.navTreeItemInPath,
.navTreeLevel0 > li.navTreeCurrentNode {
    border-top: 2px solid #1659bf !important;
    border-bottom: 2px solid #1659bf !important;
}

/* ==========================================================================
   Collective Cover
   ========================================================================== */

/* Tile Banner Rotativo
   ========================================================================== */

/* Cores dos botões */

#tile_banner_rotativo li .button-nav,
.orderTiles .button-nav {
    border-right: 1px solid #254e8c;
    background-color: #1659bf;
}

#tile_banner_rotativo .activeSlide .button-nav,
#tile_banner_rotativo li .button-nav:hover,
#tile_banner_rotativo li .button-nav:focus {
    background-color: #edeff1;
}

/* ícone do botão */

#content  #tile_banner_rotativo li .button-nav,
.orderTiles .button-nav {
    background-image: url("../img/bullet-banner-rotativo.gif");
}

/* Tiles
   ========================================================================== */

.tile a { color: #162937 !important; }


/* ==========================================================================
   Footer
   ========================================================================== */

#footer {
    background: #1659bf;
    color: #fff;
}

#footer a { color: #fff; }

#footer .footer-logos { background: #0042b1; }

#footer th {
    color: #fff;
}

#footer ul {
    border-left: 1px dotted #fff;
}

#footer tr td p {
    border-left: 1px dotted #fff;
    color: #fff;
}
#linksfooter{
    background: #0042B1;
}
/* Doormat
   ========================================================================== */

#doormat-container { background: #1659bf; }

#doormat-container dl { border-left: 1px dotted #fff; }

#doormat-container dt { color: #fff; }


/* ==========================================================================
   Media Queries
   ========================================================================== */


/* Screen
   ========================================================================== */

@media only screen and (min-width : 769px) {

    .portlet-static-contents-central .portletHeader,
    .portlet-static-centrales-del-contenido .portletHeader,
    .portlet-static-centrais-de-conteudos .portletHeader,
    .portletNavigationTree .portletHeader {
        background: #edeff1 url("../img/portlet-header.gif") no-repeat right 5px bottom 4px;
        background-size: 15px;
    }

    .portletNavigationTree .portletHeader.ativo {
        background: #edeff1 url("../img/portlet-header-expanded.gif") no-repeat right 5px bottom 4px;
        background-size: 15px;
    }

}

/* Smartphone
   ========================================================================== */

@media only screen and (min-width : 320px) and (max-width : 768px) {
	.menuTrigger {
		background: #0e4097 url("../img/bg-menu-mobile.png") top right no-repeat;
	}
}

@media only screen and (min-width : 320px) and (max-width : 480px) {
  #header #portal-searchbox .searchButton {
    background: url("../img/search-button-30px.png") no-repeat;
  }
}

/* ========================================================================== 
   IDG VERDE - ajustes visuais modernos
   Mantém estrutura, slide/galleria e integrações existentes.
   ========================================================================== */
:root {
    --idgt-azul-900: #0b2f66;
    --idgt-azul-800: #114889;
    --idgt-azul-700: #155bb5;
    --idgt-azul-500: #1f73e0;
    --idgt-ciano: #21b6d7;
    --idgt-verde: #2fb344;
    --idgt-fundo: #f4f7fb;
    --idgt-texto: #1f2937;
    --idgt-borda: #dbe6f3;
    --idgt-sombra: 0 10px 30px rgba(8, 39, 88, .12);
    --idgt-radius: 14px;
}

html, body {
    background: var(--idgt-fundo) !important;
    color: var(--idgt-texto);
    font-family: Arial, Helvetica, sans-serif;
}

#wrapper {
    background: transparent !important;
}

#header {
    padding-top: 12px;
    background: linear-gradient(135deg, rgba(11,47,102,.98), rgba(21,91,181,.96) 52%, rgba(33,182,215,.88)) !important;
    box-shadow: var(--idgt-sombra);
    position: relative;
    overflow: hidden;
}

#header:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 75% 20%, rgba(255,255,255,.18), transparent 30%),
                linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0));
    pointer-events: none;
}

#header > div,
#main,
#footer > div {
    position: relative;
    z-index: 1;
}

#portal-logo,
#portal-title {
    letter-spacing: -.02em;
    text-shadow: 0 2px 12px rgba(0,0,0,.18);
}

#portal-description {
    color: rgba(255,255,255,.88) !important;
}

#sobre {
    background: rgba(255,255,255,.12) !important;
    border-top: 1px solid rgba(255,255,255,.18);
    border-bottom: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(8px);
}

#sobre a,
#portal-siteactions a,
#portal-language a,
#accessibility a {
    transition: all .2s ease-in-out;
}

#sobre a:hover,
#portal-siteactions a:hover,
#portal-language a:hover,
#accessibility a:hover {
    opacity: .86;
    text-decoration: underline;
}

#portal-searchbox {
    border: 0 !important;
    border-radius: 999px;
    box-shadow: 0 8px 18px rgba(0,0,0,.16);
    overflow: hidden;
    background: #fff;
}

#header input.searchField,
#LSResult input.searchField {
    border-radius: 999px 0 0 999px !important;
}

#header input.searchButton {
    border-radius: 0 999px 999px 0 !important;
}

#main {
    margin-top: 22px;
}

.portlet,
.tile,
#content .documentByLine,
#portal-column-one .portlet,
#portal-column-two .portlet,
#content-core .tileItem,
.template-view.portaltype-collective-cover-content #content .cover-richtext-tile,
.template-view.portaltype-collective-cover-content #content .collective-cover-tile {
    border-radius: var(--idgt-radius);
    border: 1px solid var(--idgt-borda);
    box-shadow: var(--idgt-sombra);
    background: #fff;
    overflow: hidden;
}

.portletHeader,
.portlet h2,
.tile h2,
#content h1,
#content h2 {
    color: var(--idgt-azul-900);
}

.portletHeader,
.portlet .portletHeader,
.portlet-static-central-de-conteudos .portletHeader {
    background: linear-gradient(135deg, var(--idgt-azul-800), var(--idgt-azul-500)) !important;
    color: #fff !important;
    border: 0 !important;
}

.portletHeader a,
.portlet .portletHeader a {
    color: #fff !important;
}

#portal-column-one > .nav-menu-de-relevancia .first-item-nav a,
#portal-column-one > .nav-menu-de-relevancia .first-item-nav a span,
#content a,
#portal-breadcrumbs a {
    color: var(--idgt-azul-700) !important;
}

#content a:hover,
#portal-breadcrumbs a:hover {
    color: var(--idgt-azul-900) !important;
}

/* Destaques: portal da transparência e acesso à informação */
a[href*="transparencia"],
a[href*="Transparencia"],
a[href*="transparência"],
a[href*="Transparência"],
a[href*="acesso-a-informacao"],
a[href*="acesso-a-informação"] {
    font-weight: 700;
}

.portlet a[href*="transparencia"],
.portlet a[href*="Transparencia"],
.portlet a[href*="transparência"],
.portlet a[href*="Transparência"] {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(47,179,68,.12);
    color: #176d2a !important;
}

/* Mantém o slide, só melhora cantos e sombra */
.tema-idg-verde.galleria,
.galleria,
.cover-carousel-tile,
.galleria-container {
    border-radius: var(--idgt-radius);
    overflow: hidden;
}

.tema-idg-verde .galleria-info-text {
    background: linear-gradient(90deg, rgba(11,47,102,.94), rgba(21,91,181,.82)) !important;
    border-radius: 0 14px 0 0;
}

.tema-idg-verde .galleria-info-title,
.tema-idg-verde .galleria-info-description {
    color: #fff !important;
}

/* Instagram/embeds: preserva bloco e evita estouro de layout */
iframe[src*="instagram"],
.instagram-media,
.instagram-media-rendered {
    max-width: 100% !important;
    min-width: 0 !important;
    border-radius: var(--idgt-radius) !important;
    box-shadow: var(--idgt-sombra) !important;
}

#footer {
    background: linear-gradient(135deg, var(--idgt-azul-900), var(--idgt-azul-800)) !important;
    margin-top: 30px;
}

#footer a,
#footer p,
#footer li,
#footer span {
    color: rgba(255,255,255,.92) !important;
}

@media (max-width: 768px) {
    #main { margin-top: 12px; }
    #portal-searchbox { border-radius: 12px; }
    .portlet, .tile, .galleria, .cover-carousel-tile { border-radius: 12px; }
}

/* ========================================================================== 
   IDG VERDE v2 - Acesso rápido cidadão e correção de legibilidade
   ========================================================================== */
#idgt-atalhos-cidadao {
    background: #ffffff;
    border-bottom: 1px solid rgba(17,72,137,.12);
    box-shadow: 0 10px 24px rgba(8,39,88,.10);
}

#idgt-atalhos-cidadao .idgt-atalhos-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 12px 18px;
    display: grid;
    grid-template-columns: 1.35fr repeat(4, 1fr);
    gap: 10px;
}

#idgt-atalhos-cidadao .idgt-atalho {
    display: block;
    min-height: 58px;
    padding: 12px 14px;
    border: 1px solid #dbe6f3;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff, #f7fbff);
    color: #0b2f66 !important;
    text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(8,39,88,.08);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

#idgt-atalhos-cidadao .idgt-atalho:hover {
    transform: translateY(-2px);
    border-color: #1f73e0;
    box-shadow: 0 10px 22px rgba(8,39,88,.15);
}

#idgt-atalhos-cidadao .idgt-atalho strong {
    display: block;
    color: #0b2f66 !important;
    font-size: 16px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: none;
}

#idgt-atalhos-cidadao .idgt-atalho span {
    display: block;
    margin-top: 4px;
    color: #49627f !important;
    font-size: 12px;
    line-height: 1.25;
}

#idgt-atalhos-cidadao .idgt-ao-vivo {
    background: linear-gradient(135deg, #0b2f66, #155bb5 58%, #21b6d7);
    color: #fff !important;
    border-color: transparent;
    position: relative;
    overflow: hidden;
}

#idgt-atalhos-cidadao .idgt-ao-vivo:before {
    content: "●";
    display: inline-block;
    margin-right: 7px;
    color: #ff3b30;
    font-size: 15px;
    vertical-align: top;
    text-shadow: 0 0 10px rgba(255,59,48,.65);
}

#idgt-atalhos-cidadao .idgt-ao-vivo strong,
#idgt-atalhos-cidadao .idgt-ao-vivo span {
    color: #fff !important;
}

/* Corrige nomes sumidos/pequenos no bloco de acesso rápido da página inicial */
#content table a,
#content table td a,
#content .tile a,
#content .collective-cover-tile a,
#content .cover-richtext-tile a,
#content a[href*="projeto"],
#content a[href*="vereador"],
#content a[href*="requerimento"],
#content a[href*="sessao"],
#content a[href*="sessoes"],
#content a[href*="noticia"],
#content a[href*="transparencia"] {
    color: #0b2f66 !important;
    text-shadow: none !important;
}

#content table td,
#content table td *,
#content .tile,
#content .tile *,
#content .collective-cover-tile,
#content .collective-cover-tile *,
#content .cover-richtext-tile,
#content .cover-richtext-tile * {
    overflow: visible;
}

#content table td a,
#content .tile a,
#content .collective-cover-tile a,
#content .cover-richtext-tile a {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
}

/* Deixa cards/ícones do acesso rápido mais claros e menos apertados */
#content table td,
#content .collection-item,
#content .tileItem {
    vertical-align: middle;
}

#content img {
    max-width: 100%;
    height: auto;
}

/* Caixa lateral para sessão ao vivo, caso exista portlet/link com esses nomes */
.portlet a[href*="youtube"],
.portlet a[href*="youtu.be"],
.portlet a[href*="ao-vivo"],
.portlet a[href*="live"],
.portlet a[href*="transmissao"],
.portlet a[href*="transmissão"] {
    display: inline-block;
    width: auto;
    margin: 4px 0;
    padding: 8px 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, #0b2f66, #1f73e0);
    color: #fff !important;
    font-weight: 800;
    text-decoration: none !important;
}

@media (max-width: 920px) {
    #idgt-atalhos-cidadao .idgt-atalhos-wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    #idgt-atalhos-cidadao .idgt-atalhos-wrap {
        grid-template-columns: 1fr;
        padding: 10px;
    }
    #idgt-atalhos-cidadao .idgt-atalho {
        min-height: auto;
    }
}


/* ==========================================================
   IDG VERDE - Portal em destaque / acesso rápido
   ========================================================== */
#idgn-portal-destaque{
    clear: both;
    max-width: 1180px;
    margin: 18px auto 10px auto;
    padding: 0 16px 12px 16px;
    box-sizing: border-box;
}
#idgn-portal-destaque *{ box-sizing:border-box; }
.idgn-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:22px 24px;
    border-radius:22px;
    background:linear-gradient(135deg,#0b2f24 0%,#0f4d37 58%,#167a55 100%);
    color:#fff;
    box-shadow:0 18px 40px rgba(11,47,36,.24);
}
.idgn-hero-text .idgn-kicker{
    display:inline-block;
    margin-bottom:7px;
    padding:5px 11px;
    border-radius:999px;
    background:rgba(255,255,255,.18);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.idgn-hero-text strong{
    display:block;
    font-size:28px;
    line-height:1.15;
    font-weight:900;
    color:#fff;
}
.idgn-hero-text p{
    margin:7px 0 0 0;
    color:rgba(255,255,255,.92);
    font-size:15px;
}
.idgn-live{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-width:190px;
    justify-content:center;
    padding:15px 18px;
    border-radius:16px;
    background:#e41f2d;
    color:#fff !important;
    font-size:16px;
    font-weight:900;
    text-transform:uppercase;
    text-decoration:none !important;
    box-shadow:0 10px 24px rgba(228,31,45,.28);
}
.idgn-live span{
    width:12px; height:12px; border-radius:50%; background:#fff;
    box-shadow:0 0 0 7px rgba(255,255,255,.22);
    animation:idgnPulse 1.4s infinite;
}
@keyframes idgnPulse{0%{transform:scale(.95)}50%{transform:scale(1.2)}100%{transform:scale(.95)}}
.idgn-grid-links{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:14px;
}
.idgn-card{
    display:block;
    min-height:92px;
    padding:18px 16px;
    border:1px solid #d7e8df;
    border-radius:18px;
    background:#fff;
    color:#14372c !important;
    text-decoration:none !important;
    box-shadow:0 8px 22px rgba(11,47,36,.08);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.idgn-card:hover,.idgn-card:focus{
    transform:translateY(-3px);
    border-color:#167a55;
    box-shadow:0 14px 30px rgba(11,47,36,.16);
}
.idgn-card b{
    display:block;
    font-size:16px;
    line-height:1.2;
    color:#0f4d37;
    margin-bottom:8px;
    white-space:normal;
}
.idgn-card small{
    display:block;
    color:#536b60;
    font-size:13px;
    line-height:1.35;
    white-space:normal;
}
.idgn-card-live{ border-color:#ffd1d5; background:linear-gradient(180deg,#fff 0%,#fff5f6 100%); }
.idgn-card-live b{ color:#d71928; }

/* Correção para nomes sumidos nos cards antigos do acesso rápido */
#content .tile, #content .tile a, .template-view .tile a{
    overflow:visible !important;
}
#content .tile .title, #content .tile h2, #content .tile h3,
#content .collection-item-title, #content .summary .title{
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    line-height:1.25 !important;
}

@media only screen and (max-width: 900px){
    .idgn-hero{align-items:flex-start; flex-direction:column; padding:20px;}
    .idgn-live{width:100%;}
    .idgn-grid-links{grid-template-columns:repeat(2,minmax(0,1fr));}
    .idgn-hero-text strong{font-size:24px;}
}
@media only screen and (max-width: 520px){
    #idgn-portal-destaque{padding:0 10px 10px 10px; margin-top:12px;}
    .idgn-grid-links{grid-template-columns:1fr; gap:10px;}
    .idgn-card{min-height:auto; padding:15px;}
}

/* Identidade visual IDG VERDE */
#header{background:#0b2f24 !important;}
#sobre{background:#0f4d37 !important;}
#portal-siteactions a, #accessibility a{color:#ffffff !important;}
#portal-searchbox .searchButton, input.searchButton{background:#167a55 !important; border-color:#167a55 !important;}
.portletHeader, .portletHeader a{background:#0f4d37 !important; color:#fff !important;}
#footer, #footer-brasil{background:#0b2f24 !important;}

/* CORREÇÃO IDG VERDE - remove azul antigo */

.portletHeader,
.portlet-static-sobre-a-camara .portletHeader,
.portlet-static-transparencia .portletHeader,
.portlet-static-acesso-rapido .portletHeader,
dl.portlet dt,
.portlet dt,
.portlet h2,
.tile-header,
.box-title {
    background: #0F3D2E !important;
    background-color: #0F3D2E !important;
    color: #ffffff !important;
    border-color: #0F3D2E !important;
}

.portletHeader a,
dl.portlet dt a,
.portlet dt a,
.portlet h2 a {
    color: #ffffff !important;
}

.portlet,
dl.portlet {
    border-color: #0F3D2E !important;
}

.portletItem a:hover,
.portletFooter a:hover {
    color: #146B4D !important;
}

#portal-column-one .portletHeader,
#portal-column-two .portletHeader {
    background: #0F3D2E !important;
    color: #fff !important;
}

#portal-column-one .portletHeader::before,
#portal-column-two .portletHeader::before {
    background: #146B4D !important;
}

.tv-camara-btn{
    display:none !important;
}