.elementor-1798777 .elementor-element.elementor-element-5a881fad{overflow:visible;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1798777 .elementor-element.elementor-element-c69c033{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;overflow:visible;}.elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1798777 .elementor-element.elementor-element-36dcb76{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated{padding:5px 5px 5px 5px;}}@media(max-width:767px){.elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated, .elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated > .elementor-background-overlay, .elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-background-slideshow{border-radius:0px 0px 0px 0px;}.elementor-1798777 .elementor-element.elementor-element-45e1da0 > .elementor-element-populated{padding:05px 05px 05px 05px;}}/* Start custom CSS for html, class: .elementor-element-36dcb76 *//* Estilos para a Ferramenta de Acréscimos Legais Legale */
.legale-ferramenta-container {
    font-family: 'Karla', sans-serif; /* Assegure que a fonte Karla esteja carregada */
    background-color: #f9f9f9;
    padding: 25px;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    max-width: 750px; 
    margin: 20px auto;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.legale-ferramenta-container h3 { /* Título principal da ferramenta */
    color: #333;
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 1.7em;
    font-weight: 600;
}

.legale-ferramenta-container h4 { /* Títulos dos Passos */
    color: #a41e22; /* Vermelho Legale */
    margin-top: 0;
    margin-bottom: 25px;
    font-size: 1.45em;
    border-bottom: 1px solid #eaeaea;
    padding-bottom: 12px;
}

/* Estilos gerais para divs de passos */
#legale-acrescimos-p1 > div,
.legale-ferramenta-opcao-grupo {
    margin-bottom: 20px;
}

.legale-ferramenta-container label {
    display: block;
    margin-bottom: 8px;
    color: #555;
    font-weight: 600;
    font-size: 0.95em;
}

.legale-ferramenta-container input[type="number"],
.legale-ferramenta-container input[type="date"] {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
    font-family: 'Karla', sans-serif;
    font-size: 1em;
    transition: border-color 0.3s ease;
}
.legale-ferramenta-container input[type="number"]:focus,
.legale-ferramenta-container input[type="date"]:focus {
    border-color: #a41e22; 
    outline: none;
    box-shadow: 0 0 0 2px rgba(164, 30, 34, 0.2);
}
.legale-ferramenta-container input[type="number"]::placeholder {
    color: #999;
}

/* Estilos para grupos de opções com radio */
.legale-ferramenta-opcao-grupo {
    padding: 10px;
    border: 1px solid #eee;
    border-radius: 5px;
    background-color: #fff;
}
.legale-ferramenta-opcao-grupo input[type="radio"] {
    margin-right: 8px;
    vertical-align: middle;
}
.legale-ferramenta-opcao-grupo label { /* Label do radio */
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    color: #333;
    vertical-align: middle;
}
.legale-ferramenta-opcao-grupo input[type="number"] { /* Inputs condicionais dentro do grupo */
    width: auto; /* Ajuste para não ocupar 100% */
    max-width: 120px;
    padding: 8px;
    font-size: 0.95em;
    margin-top: 5px; /* Espaçamento se abaixo do label */
}
.legale-ferramenta-opcao-grupo small {
    font-size: 0.8em;
    color: #666;
    margin-left: 25px; /* Alinha com o texto do radio */
}


/* Botões de Navegação e Ação */
.legale-ferramenta-container button {
    background-color: #a41e22; 
    color: white;
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-family: 'Karla', sans-serif;
    font-size: 1.05em;
    font-weight: 600;
    transition: background-color 0.3s ease, transform 0.1s ease;
    width: 100%; 
    margin-top: 15px;
    box-sizing: border-box;
}
.legale-ferramenta-container button:hover {
    background-color: #8c181c;
}
.legale-ferramenta-container button:active {
    transform: scale(0.98);
}

.legale-ferramenta-navegacao-btns {
    display: flex;
    gap: 15px;
    margin-top: 25px;
}
.legale-ferramenta-navegacao-btns button {
    flex-grow: 1; 
}
#legale-acrescimos-btn-p2-voltar,
#legale-acrescimos-btn-p3-voltar { /* Botões de voltar */
    background-color: #7f8c8d; /* Cinza */
}
#legale-acrescimos-btn-p2-voltar:hover,
#legale-acrescimos-btn-p3-voltar:hover {
    background-color: #6c7a7b;
}

/* Passo 4: Resultado */
#legale-acrescimos-resumo-container {
    background-color: #fff;
    padding: 20px;
    border-radius: 5px;
    border: 1px solid #ddd;
    margin-bottom: 20px;
}
#legale-acrescimos-resumo-container p {
    font-size: 1.1em;
    margin-bottom: 12px;
    color: #444;
}
#legale-acrescimos-resumo-container p strong {
    color: #333;
}
#legale-acrescimos-resumo-container span {
    font-weight: bold;
    color: #a41e22; /* Destaque vermelho para os valores */
}
#legale-acrescimos-resumo-container hr {
    border: none;
    border-top: 1px dashed #ccc;
    margin: 15px 0;
}
.legale-acrescimos-total-final strong {
    font-size: 1.25em;
}
.legale-acrescimos-total-final span {
    font-size: 1.25em;
    color: #008000 !important; /* Verde para o total final */
}


.legale-ferramenta-disclaimer-final { /* Reutilizando estilo do disclaimer anterior */
    background-color: #fff8e1; 
    border: 1px solid #ffe082; 
    border-left: 4px solid #ffc107; 
    padding: 15px;
    margin-top: 25px;
    margin-bottom: 20px;
    border-radius: 5px;
    font-size: 0.9em;
}
.legale-ferramenta-disclaimer-final p strong {
    color: #c77700; 
    display: block;
    margin-bottom: 8px;
    font-size: 1.1em;
}
.legale-ferramenta-disclaimer-final ul {
    list-style-type: disc; 
    padding-left: 20px;
    margin-bottom: 0;
}
.legale-ferramenta-disclaimer-final ul li {
    margin-bottom: 8px;
    line-height: 1.5;
}
.legale-ferramenta-disclaimer-final ul li:last-child {
    margin-bottom: 0;
}

.legale-ferramenta-erro-msg {
    color: #c0392b; 
    background-color: #fdd; 
    border: 1px solid #c0392b;
    padding: 10px;
    border-radius: 5px;
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 0.9em;
    text-align: center;
}

/* Responsividade básica */
@media (max-width: 600px) {
    .legale-ferramenta-container {
        padding: 20px;
    }
    .legale-ferramenta-container h3 { font-size: 1.5em; }
    .legale-ferramenta-container h4 { font-size: 1.3em; }

    .legale-ferramenta-opcao-grupo input[type="number"] {
        width: 100%; /* Ocupa toda a largura disponível no grupo */
        max-width: none;
        margin-left: 0; /* Remove margem quando empilhado */
    }
    .legale-ferramenta-opcao-grupo small {
        margin-left: 0; /* Remove margem quando empilhado */
    }
    .legale-ferramenta-navegacao-btns {
        flex-direction: column;
    }
}
@media (max-width: 450px) {
    .legale-ferramenta-container h3 { font-size: 1.3em; }
    .legale-ferramenta-container h4 { font-size: 1.15em; }
    .legale-ferramenta-container button { font-size: 1em; padding: 10px 20px;}
    #legale-acrescimos-resumo-container p { font-size: 1em; }
}/* End custom CSS */