@charset "utf-8";
/* CSS Document */

/* Reset básico e configurações do corpo da página */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Roboto', sans-serif;
    background-color: #f0f0f0;
    /* Força a dimensão para telas de TV Full HD */
    width: 1920px;
    height: 1080px;
    overflow: hidden;
	margin: 0px;
	padding: 0px;
}

/* Container principal que divide o layout em duas colunas */
.container {
    display: flex;
    width: 100%;
    height: 100%;
}

/* --- Coluna da Esquerda --- */
.sidebar {
    width: 380px;
    height: 1080px;
    background-color: #004a8c; /* Azul escuro do fundo */
    padding: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sidebar-inner {
    width: 300px;
    height: 1000px;
    display: flex;
    flex-direction: column;
}

/* Bloco de informações de clima */
.weather-box {
    width: 300px;
    height: 420px; /* Altura ajustada para melhor proporção */
    background-color: #0056a0; /* Azul um pouco mais claro */
    color: white;
    padding: 40px;
    margin-bottom: 40px;
    border-radius: 0px;
}

.weather-header {
    font-size: 20px;
    line-height: 1.4;
    border-bottom: 1px solid #ffffff44;
    padding-bottom: 20px;
	text-align: center;
}

.weather-main {
    display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
    padding-top: 0px;
	margin-top: -10px;
}

.weather-icon-main {
    width: 128px;
    height: 128px;
	float: left;
	display: block;
}

.temperature {
    font-size: 80px;
    font-weight: 700;
	margin-top: -40px;
	margin-left: 30px;
}

.weather-description {
    text-align: center;
    margin-top: 10px;
    font-size: 18px;
    text-transform: capitalize; /* Deixa a primeira letra de cada palavra maiúscula */
}

/* Bloco de Data e Hora */
.datetime-box {
    width: 300px;
    height: 252px; /* Altura ajustada */
    background-color: #0056a0;
    color: white;
    padding: 40px 20px;
    border-radius: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.datetime-box .day {
    font-size: 100px;
    font-weight: 900;
    line-height: 1;
	margin-top: 50px;
}

.datetime-box .month {
    font-size: 40px;
    font-weight: 700;
    text-transform: uppercase;
    margin-top: -10px;
}

.datetime-box .time {
    font-size: 60px;
    font-weight: 700;
    margin-top: 20px;
    background-color: #2e79a0;
    padding: 15px 72px;
    border-radius: 0px;
}

.logo{
margin-top: 97px;
margin-left: 60px;
}


/* --- Coluna da Direita --- */
.content-area {
    width: 1540px;
    height: 1080px;
    display: flex;
    flex-direction: column;
}

/* Carrossel de Imagens */
.image-carousel-container {
    width: 1540px;
    height: 800px;
    overflow: hidden;
    position: relative;
    background-color: #004a8c;
}

/* Placeholder - será escondido pelo JavaScript quando as imagens carregarem */
.carousel-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    color: #666;
}

.image-carousel-wrapper {
    display: flex;
    width: calc(1540px * 10); /* Largura total (10 imagens) */
    height: 100%;
    transition: transform 1.5s ease-in-out; /* Animação de deslize */
    transform: translateX(0);
    position: absolute;
    top: 0;
    left: 0;
}

.image-carousel-wrapper img {
    width: 1540px;
    height: 780px;
    object-fit: cover; /* Garante que a imagem cubra o espaço sem distorcer */
}

/* --- SEÇÃO DE NOTÍCIAS COM SEUS ESTILOS E CORREÇÃO FUNCIONAL --- */

.news-section {
    width: 1540px;
    height: 280px;
    background-color: #004a8c;
    display: flex;
    flex-direction: column;
    padding: 50px 0px; 
}

.news-header {
    width: 350px;
    background-color: #00a887;
    color: white;
    font-size: 30px;
    font-weight: 700;
    padding: 18px 35px;
    margin-bottom: 0px; 
    border-radius: 0px; 
}

/* O container que serve como "máscara" */
.news-ticker-container {
    height: 130px;
    overflow: hidden; 
    width: 100%;
	background-color: white;
}

/* O wrapper que vai conter a fita de texto criada pelo JS */
.news-ticker-wrapper {
    width: 100%;
    height: 100%;
}

/* Esconde os divs originais do HTML */
.news-item {
    display: none;
}

/* O container que será animado. Ele precisa ter o white-space: nowrap */
.news-marquee-container {
    white-space: nowrap;
    display: inline-block;
    padding-left: 100%;
    animation: marquee 150s linear infinite; /* Ajuste a velocidade aqui se necessário */
}

/* O estilo para CADA notícia individual dentro do letreiro */
.news-segment {
    display: inline-block; /* Importante para que a margem funcione */
    margin-right: 200px;  /* <<< SEU ESPAÇAMENTO DE 60 PIXELS */
    color: black;        /* Sua preferência de cor */
    font-size: 48px;
    line-height: 110px;
    vertical-align: middle; /* Ajuda no alinhamento vertical */
}


@keyframes marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}