/* menu calculadoras */
:root {--menu-calc-bg: #1C334C; --menu-calc-border: #37475A; --menu-calc-text: #FFFFFF;}

.nav-container {display: flex; align-items: center; background-color: var(--menu-calc-bg); border-bottom: 1px solid var(--menu-calc-border); padding: 10px 15px; font-family: sans-serif; position: relative; overflow: hidden;}

.nav-title {color: var(--menu-calc-text); font-weight: bold; font-size: 14px; white-space: nowrap; margin-right: 15px; z-index: 2;}

.scroll-menu {display: flex; overflow-x: auto; white-space: nowrap; scrollbar-width: none; -ms-overflow-style: none; gap: 20px; padding-right: 40px; user-select: none; -webkit-user-drag: none;}

.is-draggable {cursor: grab;}

.is-draggable:active {cursor: grabbing;}

.scroll-menu::-webkit-scrollbar {display: none;}

.nav-link {text-decoration: none; color: var(--menu-calc-text); font-size: 14px; padding: 8px 2px; position: relative; opacity: 0.7; -webkit-user-drag: none;}

.nav-link:hover{opacity: 1; transition: all 1s ease;} 

.nav-link.active {font-weight: bold; opacity: 1; border-bottom: 2px solid #FFFFFF;}

/* Efeito de sombra (Fade) para indicar mais links */
.nav-container::after {content: ""; position: absolute; right: 0; top: 0; width: 70px; height: 100%; background: linear-gradient(to right, transparent, var(--menu-calc-bg)); pointer-events: none; z-index: 1;}

.topo_calculadora{background-color:#1C334C; width:100%; height:auto; float:left; text-align:center; box-shadow: 0 3px 3px 0px rgba(0, 0, 0, 0.6);  padding-top:30px; padding-bottom:30px;} 
.titulo_calculadora{color:#FFFFFF; font-size:25px; font-family:Arial, Helvetica, sans-serif; font-weight:bold;}

/* xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

/* inputs das calculadoras */
.titulo_calc{width:100%; height:auto; float:left; color:#1C334C; text-align:center; font-size:20px; font-family:Arial, Helvetica, sans-serif; padding-bottom:10px; padding-top:10px; border-radius:10px 10px 0px 0px; margin-bottom:20px; box-shadow: 0 5px 10px -1px rgba(0, 0, 0, 0.6);}

:root {--primary: #2563eb; --bg: #f8fafc; --card: #ffffff; --text: #1e293b;}

.card{width:95%; height:auto; float:left; border-radius:10px; margin-top:10px; margin-bottom:10px; margin-left:2.5%; padding-bottom:25px; box-shadow: 0 0 5px 5px rgba(0, 0, 0, 0.2); border-top:5px solid #1C334C;} 

.calc-group {margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid #e2e8f0;}

.exemplo_calculadora{width:90%; height:auto; float:left; font-size:18px; text-align:center; font-family:Arial, Helvetica, sans-serif; color:#494949; margin-left:5%; margin-top:5px; margin-bottom:20px;}

.txt_questionario{width: 80%; height: auto; float: left; font-weight: bold; font-family: Arial, Helvetica, sans-serif; font-size: 13px; color: #303030; margin-left: 8%; margin-top: 25px;}

.input-row {display: block; gap: 10px; margin-bottom: 10px; flex-wrap:nowrap;}

input {padding: 8px; border: 1px solid #cbd5e1; border-left: 0px; border-radius:0px 6px  6px  0px; width:80%; height:22px; float:left; flex-grow: 1; margin-right:0px; margin-top:10px; font-size:16px; font-family:arial; color:#272727;}

.input-group{width:90%; height:auto; float:left; display:block; justify-content:flex-end; align-items:flex-end; margin-left:5%; margin-top:0px;}

.simbolo{background-color: #1C334C; width:10%; height:auto; float:left; color:#FFFFFF; font-family:Arial, Helvetica, sans-serif; text-align:center; font-size:18px; padding-bottom:8px; padding-top:11px; padding-left:0px; padding-right:0px; border-radius:6px 0px 0px 6px; margin-left:3%; margin-top:10px;}

.result-box{color:#2563eb; font-weight:bold;}

button {background-color: var(--primary); color: white; border: none; padding: 10px 20px; border-radius: 6px; cursor: pointer; width:300px; font-weight: bold; float:left; margin-left:5px; margin-right:5px;}

.button-row{width:90%; height:auto; float:left; display:flex; justify-content:center; align-items:center; margin-left:5%; margin-top:20px; margin-bottom:20px;}

.btn-calc:hover{background-color: #2798ac; transition: all 1s ease;}

.btn-clear{background-color: #ffffff; border:1px solid #2563eb; color: #2563eb;}
.btn-clear:hover {background-color: #2798ac; border:1px solid #2798ac; color: #FFFFFF; transition: all 1s ease;}
       
.corpo_sobre_calculadoras{width:95%; height:auto; float:left; margin-left:2.5%; margin-top:10px; border-radius:10px; box-shadow: 0 0 5px 5px rgba(0, 0, 0, 0.2); padding-bottom:15px;}       
.titilo_sobre_calculadoras{background-color:#1C334C;  width:100%; height:auto; float:left; font-size:18px; font-family:Arial, Helvetica, sans-serif; text-align:center; color:#FFFFFF; text-transform:uppercase; border-radius:10px 10px 0px 0px; box-shadow: 0 5px 10px -1px rgba(0, 0, 0, 0.6);  padding-top:20px; padding-bottom:20px;} 
.texto_sobre_calculadoras{width:90%; height:auto; float:left; font-size:16px; font-family:Arial, Helvetica, sans-serif; text-align:left;  line-height: 1.5; color:#2c2c2c; margin-left:5%; margin-top:10px;}

.select-profissao{padding: 8px; border: 1px solid #cbd5e1; border-left: 0px; border-radius:0px 6px  6px  0px; width:82%; height:41px; float:left; flex-grow: 1; margin-right:10px; margin-top:10px; font-size:16px; font-family:arial; color:#272727;}

/*resultado para a paginas que precisao*/

#taxa{border-radius: 0px 6px 6px 0px;}
#tempo{border-radius:0px 6px 6px 0px;}
#taxa_c{border-radius: 0px 6px 6px 0px;}
#tempo_c{border-radius:0px 6px 6px 0px;}
#tempo_imposto{border-radius:0px 6px 6px 0px;}
#v_dividendos_um{border-radius:0px 6px 6px 0px;}
#taxa1{border-radius:0px 6px 6px 0px;}
#taxa2{border-radius:0px 6px 6px 0px;}
#tempo2{border-radius:0px 6px 6px 0px;}
#juros_investimentos{border-radius:0px 6px 6px 0px;}
#tipoTempo_um{border-radius:0px 6px 6px 0px;}
#tipoTempo_dois{border-radius:0px 6px 6px 0px;}
#tipoTempo_tres{border-radius:0px 6px 6px 0px;}
#tipoTempo_quatro{border-radius:0px 6px 6px 0px;}
#tipoTempo_cinco{border-radius:0px 6px 6px 0px;}

/*resultado e formatacom select e tabela juros simple e composto*/
.select-periodo {
    margin-left: 5%;
    width: 90%;
    height: 30px;
    border: 1px solid #cbd5e1;
    border-radius: 0 0 6px 6px;
    background: white;
    font-family: Arial;
    text-transform: uppercase;
    font-size: 10px;
    padding-left: 5px;
    font-weight: bold;
    color: #494949;
}

.resultado-container {
    width: 90%;
    margin-left: 5%;
    margin-top: 20px;
    font-family: Arial, sans-serif;
    overflow-y: auto;
}

.card-resumo {
    background: #f1f5f9;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    display: block;
    justify-content: space-around;
}

.container-tabela{
    width:100%;
    max-height: 243px;    /* Limita a altura em 500px */
    overflow-y: auto;     /* Adiciona scroll vertical se necessário */
    overflow-x: auto;   /* Evita scroll horizontal indesejado */
    margin-top: 20px;
    border-radius:0px 0px 8px 8px;
}

.tabela-progressao {
    width: 533px;
    border-collapse: collapse;
    margin-top: 10px;
}

.tabela-progressao th, .tabela-progressao td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: center;
    width: auto;
}

.tabela-progressao th {
    background-color: #1C334C;
    color: white;
    border-radius:6px 6px 0px 0px;
}

tbody tr:nth-child(even) {
  background-color: #e2e2e2; /* Cor de fundo cinza claro */
 }

tbody tr:hover {
  background-color: #cecece;
  cursor: pointer;
  
}

.linha-selecionada {
    background-color:#2563eb !important; /* Um azul claro, por exemplo */
    cursor: pointer;
    color:#FFFFFF;
    transition: all 1s ease;
}

/*resultado juros simples, juros compostos, imposto*/
.resultado_juros_simples{color: #2563eb; font-size:20px; font-weight:bold; text-align:center; border:1px solid #414141; border-radius:6px; width:90%; height:auto; float:left; padding-bottom:15px; margin-left:5%; margin-bottom: 15px;}

/*resultado reserva emergencia*/

.progress-container {
    margin: 15px 0;
}

.progress-bar {
    width: 100%;
    height: 12px;
    background-color: #e0e0e0;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

.progress-fill {
    height: 100%;
    background: linear-gradient(90deg, #cc2e2e, #27ae60);
    transition: width 0.5s ease-in-out;
}

.progress-text {
    font-size: 12px;
    color: #666;
    display: block;
    margin-top: 5px;
    text-align: right;
}



/*explicação final calculadoras*/
.explicacao-calculadora {
        background-color: #f9f9f9;
        padding: 25px;
        border-radius: 8px;
        margin-top: 20px;
        font-family: sans-serif;
        line-height: 1.6;
        color: #333;
    }

    .explicacao-calculadora h2 {
        color: #2c3e50;
        margin-top: 0;
    }

    .explicacao-calculadora h3 {
        margin-top: 20px;
        font-size: 1.2rem;
    }

    .lista-instrucoes {
        list-style: none;
        padding-left: 0;
    }

    .lista-instrucoes li {
        margin-bottom: 10px;
        padding-left: 20px;
        position: relative;
    }

    .lista-instrucoes li::before {
        content: "✓";
        position: absolute;
        left: 0;
        color: #27ae60;
        font-weight: bold;
    }
