
:root {
    --fundo: #0f172a;
    --caixa: #000000f2;
    --campo: #ffffff1a;
    --texto: #ffffff;
    --texto-suave: #ffffff99;
    --destaque: #1abc9c;
}

* {
    transition: background-color 0.3s, color 0.3s;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}

body {

    background-image: url("imgs/mapa.jpg");
    background-size: cover;
    background-position: center;
    background-color: var(--fundo);
    height: 100vh; /*altura - view height */
    display: flex; /* mostrar - flexível*/
    align-items: center;
    justify-content: center; 
    position: relative; 
}

.caixa-maior {
    background-color: var(--caixa);
    width: 450px;
    border-radius: 25px;
    padding: 20px;
}

.input-texto{
    border: none; /* a borda natural dele*/
    width: 100px;
    height: 100px;
    outline: none; /* a borda quando clico nele*/
    background-color: var(--campo);
    border-radius: 15px;
    color: var(--texto);
    font-size: 16px;
    padding: 15px;
    resize: horizontal;    

}

.controle {
    display: flex;
    align-items: center;
    gap: 10px;  /* espaçamento */
    margin-top: 20px;
    margin-bottom: 20px;
}

.idioma {
    width: 100%;
    border: none;
    border-radius: 20px;
    outline: none;
    padding: 10px;
    background-color: var(--campo);
    color: var(--texto);
}
.idioma option {
    background-color: #000000f2;
    color: white;
}

button { 
    transition: 0.2s;
    border: none;
    padding: 10px;
    background-color: var(--campo);
    color: var(--texto);
    border-radius: 50%;
    cursor: pointer;
}

button:active {
    transform: scale(0.92);
}

.b-traduzir:hover {
    background-color: var(--destaque);
    transform: scale(1.05);    
}

.b-microfone:hover {
    background-color: lightcoral;
    transform: scale(1.05);
}

.b-tema{
    position: absolute;
    top: 20px;
    right: 20px;
    background-color: var(--caixa);
    color: var(--texto);
    border-radius: 50%;
    padding: 10px;
    cursor: pointer;
}

.b-tema:hover {
    background-color: var(--destaque);
    transform: rotate(15deg) scale(1.1);
}
.resultado {
    padding: 15px;
    background-color: var(--campo);
    color: var(--texto);
    border-radius: 15px;
    font-family: sans-serif;
}

.titulo-traducao{
    color: var(--texto-suave);
    font-size: 14px;
    margin-bottom: 10px;
}

.traducao{
    color: var(--texto);
    font-size: 18px;
}
/* Tentativa de fazer um "loading para a tradução */
.loading {
    background-color: #FFAA00 !important;
}

/* Fazer o botão girar durante a tradução */
@keyframes girar {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.girando img {
    animation: girar 1s linear infinite;
}

.claro {
    --fundo: #f1f5f9;
    --caixa: #ffffff;
    --campo: #e2e8f0;
    --texto: #0f172a;
    --texto-suave: #334155;
}

@keyframes pulsar {
    0% {box-shadow: 0 0 0px var(--destaque); }
    50% {box-shadow: 0 0 15px var(--destaque); }
    100% {box-shadow: 0 0 0px var(--destaque); }

}

.pulsando {
    animation: pulsar 1.2s infinite;
}

.mic-ativo{
    background-color: #00ff88 !important;
    animation: pulsar 1.2s infinite
}