/* Importa a fonte Chakra Petch do Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');

:root {
    --cor-principal: #c4b815;
    --cor-secundaria: #000000;
    --cor-texto-principal: #c4b815;
    --cor-texto-secundaria: #fff; 
    --cor-texto-terciaria: #000000;
    --cor-fundo-claro-principal: #c4b815;
    --cor-fundo-claro-secundaria: #000000;
    --cor-fundo-claro-terciaria: #fff;
    --cor-fundo-escuro: #000000;
    --cor-acento: #e5e5e5;
}

/* Estiliza o corpo da página */
body {
    font-family: "Chakra Petch", sans-serif; /* Define a fonte padrão */
    background-color: var(--cor-fundo-claro-principal); /* Cor de fundo da página */
    display: flex; /* Usa Flexbox para layout */
    flex-direction: column; /* Alinha os itens na vertical */
    align-items: center; /* Centraliza os itens horizontalmente */
    justify-content: center; /* Centraliza os itens verticalmente */
    margin: 0; /* Remove a margem padrão */
    padding: 0; /* Remove o padding padrão */
    background-image: url('/img/fundo.gif'); /* Define a imagem de fundo */
    background-size: cover; /* Ajusta a imagem para cobrir todo o main */
    background-color: rgba(255, 255, 255, 0); /* Define a cor de fundo com opacidade */
    background-blend-mode: lighten; /* Mistura a imagem com o fundo branco */
    overflow: hidden; /* Remove o barra de rolagem */
}

.centro {
    margin-top: 30vh;
}

a {
    text-decoration: none;
}

    a:hover {
        text-decoration: none;
    }

/* Estiliza os títulos h1 */
h1 {
    font-size: 2.5rem; /* Tamanho da fonte */
    color: var(--cor-texto-principal); /* Cor do texto */
    text-align: center; /* Alinha o texto ao centro */
    letter-spacing: 0.4rem; /* Espaçamento entre letras */
}

#botao-play-pause {
    padding: 0.8rem 1.2rem; /* Espaçamento interno do botão */
    border: none; /* Remove a borda padrão */
    border-radius: 1.5rem; /* Borda arredondada */
    background-color: var(--cor-secundaria); /* Cor de fundo do botão */
    color: var(--cor-fundo-claro-principal); /* Cor do texto do botão */
    font-size: 1rem; /* Tamanho da fonte */
    cursor: pointer; /* Muda o cursor para indicar que é clicável */
    font-size: 1.5rem;
}

    #botao-play-pause:hover {
        background-color: var(--cor-principal); /* Muda a cor de fundo ao passar o mouse */
        box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2); /* Adiciona uma sombra mais intensa */
        color: var(--cor-texto-secundaria); /* Cor do texto do botão */
    }

#campo-nova-historia, #botao-nova-historia, #campo-pesquisa {
    display: none;
}

#botao-criar, #botao-usar, #botao-nova-historia, .botao-acao{
    background-color: var(--cor-fundo-claro-secundaria); /* Cor de fundo do botão */
    color: var(--cor-fundo-claro-principal); /* Cor do texto do botão */
}

    #botao-criar:hover, #botao-usar:hover, #botao-nova-historia:hover, .botao-acao:hover {
        background-color: var(--cor-fundo-claro-principal); /* Cor de fundo do botão */
        color: var(--cor-fundo-claro-secundaria); /* Cor do texto do botão */
    }

/* Estiliza as seções da página */
section {
    display: flex; /* Usa Flexbox para layout */
    flex-direction: column; /* Alinha os itens na vertical */
    align-items: center; /* Centraliza os itens horizontalmente */
    margin-bottom: 1rem; /* Espaçamento abaixo de cada seção */
}

/* Estiliza os inputs dentro das seções */
section input {
    width: 30rem; /* Largura dos inputs */
    border: none; /* Remove a borda padrão */
    padding: 1rem; /* Espaçamento interno */
    border-radius: 1.5rem; /* Borda arredondada */
    margin-bottom: 1rem; /* Espaçamento abaixo dos inputs */
    color: var(--cor-texto-terciaria); /* Cor do texto */
    font-size: 1rem; /* Tamanho da fonte */
    box-sizing: border-box; /* Inclui padding e border na largura total */
}

/* Estiliza os botões dentro das seções */
section button {
    padding: 0.8rem 1.2rem; /* Espaçamento interno do botão */
    border: none; /* Remove a borda padrão */
    border-radius: 1.5rem; /* Borda arredondada */
    background-color: var(--cor-fundo-claro-principal); /* Cor de fundo do botão */
    color: var(--cor-fundo-claro-secundaria); /* Cor do texto do botão */
    font-size: 1rem; /* Tamanho da fonte */
    cursor: pointer; /* Muda o cursor para indicar que é clicável */
    font-size: 1.5rem;
    min-width: 15rem;
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
}

/* Adiciona efeito hover ao botão de pesquisa */
section button:hover {
    background-color: var(--cor-fundo-claro-terciaria); /* Muda a cor de fundo ao passar o mouse */
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.2); /* Adiciona uma sombra mais intensa */
    color: var(--cor-fundo-claro-principal); /* Cor do texto do botão */
}

section button label {
    padding-right: 1rem;
}

/* Estiliza a caixa de resultados da pesquisa */
.resultados-pesquisa {
    width: 90vw; /* Largura máxima da caixa de resultados */
    height: 64vh; /* Altura máxima da caixa de resultados */
    overflow-y: auto; /* Adiciona rolagem vertical se necessário */
    border-radius: 0.6rem; /* Borda arredondada */
    padding-right: 1rem;
}

/* Estiliza cada item de resultado */
.item-resultado {
    background: var(--cor-fundo-claro-secundaria); /* Cor de fundo dos itens */
    color: var(--cor-texto-secundaria); /* Cor do texto */
    opacity: 0.7;
    border-radius: 0.6rem; /* Borda arredondada */
    padding: 1rem; /* Espaçamento interno */
    margin-bottom: 1rem; /* Espaçamento abaixo dos itens */
    box-shadow: 0 0.2rem 0.5rem rgb(var(--cor-principal), 50%, 80%);/* Sombra leve */
    display: flex;
    align-items: center;
    flex-direction: row;
    font-size: 1.5rem;
}

/* Estiliza os títulos dentro dos itens de resultado */
.item-resultado h1 {
    color: var(--cor-principal); /* Cor do texto */
}

/* Estiliza os títulos dentro dos itens de resultado */
.item-resultado h2 {
    font-size: 1.5rem; /* Tamanho da fonte */
    color: var(--cor-principal); /* Cor do texto */
    margin: 0;
}

.item-resultado h3 {
    font-size: 1.1rem; /* Tamanho da fonte */
    padding-left: 1rem;
    padding-right: 1rem;
    margin: 0.5rem;
}

/* Estiliza os links dentro dos itens de resultado */
.item-resultado a {
    color: var(--cor-principal); /* Cor do texto dos links */
}

.item-resultado div {
    opacity: 1;
}

/* Estiliza os links quando são passados o mouse sobre */
.item-resultado a:hover {
    text-decoration: underline; /* Adiciona sublinhado ao passar o mouse */
}

#acoes {
    flex-direction: row;
    justify-content: space-evenly;
}

.foto {
    opacity: 1; /* opacidade */
    width: 25rem;
    height: 40rem;
    object-fit: cover;
    margin-right: 1.5rem;
}

.info {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.info-meta {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}

.info-meta-titulo {
    display: flex;
    flex-direction: row;
}

.info-meta button {
    margin-right: 1rem; /* Ajuste o espaçamento conforme necessário */
    width: 4rem;
    height: 2.5rem;
    display: flex;
    align-items: center;    
}

.info-meta button h4 {
    margin-right: 0.25rem; /* Ajuste o espaçamento conforme necessário */   
}

.info-meta button i {
    margin-bottom: 0.25rem; /* Ajuste o espaçamento conforme necessário */   
}

/* Estiliza a descrição meta dentro dos itens de resultado */
.descricao-meta {
    color: var(--cor-texto-principal); /* Cor do texto */
    margin: 0.5rem 0; /* Margem acima e abaixo */
    padding-bottom: 1rem;
}

.links a {
    padding-left: 1rem;
    color: var(--cor-texto-secundaria);
}

.icon-button {
    font-size: 1rem;
}

.icon-link {
    font-size: 2.5rem;
}

/* Estiliza o rodapé da página */
footer {
    background-color: var(--cor-fundo-claro-secundaria); /* Cor de fundo do rodapé */
    opacity: 0.5; /* opacidade */
    color: var(--cor-texto-principal); /* Cor do texto */
    text-align: center; /* Alinha o texto ao centro */
    padding: 0; /* Espaçamento interno */
    width: 100%; /* Largura total da página */
    position: absolute; /* Posiciona o rodapé */
    bottom: 0; /* Alinha ao fundo da página */
    font-size: 1rem; /* Tamanho da fonte */
    padding-bottom: 1rem;
}

#loader {
  display: none;
  border: 1rem solid var(--cor-fundo-claro-secundaria);
  border-top: 1rem solid var(--cor-texto-principal);
  border-radius: 50%;
  width: 10rem;
  height: 10rem;
  animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg);}
}

@media (max-width: 768px) {
    /* Estiliza os botões dentro das seções */
    section button {
        min-width: 20rem;
    }

    .botao-acao {
        min-width: 4rem;
    }

    h1 {
        font-size: 1.5rem; /* Tamanho da fonte em telas menores */
        letter-spacing: 0.2rem; /* Espaçamento entre letras em telas menores */
    }

    p {
        font-size: 1rem;;
    }

    td {
        font-size: 1rem;;
    }

    section input {
        width: 90vw; /* Largura dos inputs em telas menores */
        padding: 1rem; /* Espaçamento interno em telas menores */
    }

    .resultados-pesquisa {
        width: 100vw; /* Largura da caixa de resultados em telas pequenas */
        height: 60vh; /* Altura da caixa de resultados em telas pequenas */
        padding-right: 0;
    }

    .item-resultado h2 {
        font-size: 1rem; /* Tamanho da fonte dos títulos em telas menores */
    }

    .item-resultado h3 {
        margin: 0;
    }
}

/* Responsividade para celulares */
@media (max-width: 480px) {

    h1 {
        font-size: 1.5rem; /* Tamanho da fonte em telas pequenas */
    }

    section button {
        padding: 0.6rem 1rem; /* Espaçamento interno do botão em telas pequenas */
        font-size: 2rem; /* Tamanho da fonte do botão em telas pequenas */
    }

    .resultados-pesquisa {
        width: 90vw; /* Largura da caixa de resultados em telas pequenas */
        height: 56vh; /* Altura da caixa de resultados em telas pequenas */
        padding-right: 0;
    }

    .item-resultado h2 {
        font-size: 1rem; /* Tamanho da fonte dos títulos em telas pequenas */
    }

    .item-resultado h3 {
        margin: 0;
    }

    footer {
        font-size: 1rem; /* Tamanho da fonte do rodapé em telas pequenas */
    }
}