/* ==========================================
   Dhanvesttor Financial Calculators Styles
   ========================================== */
*{box-sizing:border-box;margin:0;padding:0;}

.dv-page{
    font-family:'Gotham','Georgia Pro',Georgia,serif;
    background:#2e1e1e00;
    max-width:1200px;
    margin:140px auto 80px;
    padding:0 20px;
}

.dv-card{
    background:linear-gradient(to right, #ffffff 50%, #f8f3eb 50%);
    border-radius:14px;
    border:1px solid #e8dfd2;
    box-shadow:0 4px 24px rgba(207,106,59,.09), 0 1px 4px rgba(0,0,0,.05);
    overflow:hidden;
    position:relative;
}
.dv-card::before{
    content:'';
    position:absolute;
    top:0; bottom:0; left:50%;
    width:1px;
    background:#f0ebe3;
}
.dv-tabs{
    display:flex;
    gap:8px;
    margin-bottom:24px;
    padding:20px 28px 0;
}
.dv-tab{
    padding:10px 28px;
    border-radius:50px;
    border:2px solid #cf6a3b;
    background:#fff;
    color:#cf6a3b;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
    transition:all 0.2s;
}
.dv-tab.active{
    background:#cf6a3b;
    color:#ffffff;
}
.dv-tab:hover{
    background:#243c40;
    border-color:#243c40;
    color:#ffffff;
}

.dv-panel{display:none;}
.dv-panel.active{display:block;}

.dv-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    align-items:stretch;
}

.dv-calc-box{
    background:transparent;
    padding:32px 24px 32px 32px;
    border-right:1px solid #f0ebe3;
}

.dv-field{margin-bottom:22px;}
.dv-field-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}
.dv-label{
    font-size:14px;
    color:#243c40;
    font-weight:600;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}

.dv-val-box{
    background:#f8f3eb;
    border:1.5px solid #cf6a3b;
    border-radius:50px;
    padding:5px 16px;
    font-size:14px;
    font-weight:700;
    color:#cf6a3b;
    min-width:110px;
    text-align:center;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}

input[type=range].dv-slider{
    width:100%;
    height:5px;
    border-radius:50px;
    outline:none;
    border:none;
    cursor:pointer;
    -webkit-appearance:none;
    appearance:none;
    background:#e0e0e0;
}
input[type=range].dv-slider::-webkit-slider-thumb{
    -webkit-appearance:none;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    border:2.5px solid #cf6a3b;
    box-shadow:0 2px 8px rgba(207,106,59,0.35);
    cursor:pointer;
}
input[type=range].dv-slider::-moz-range-thumb{
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    border:2.5px solid #cf6a3b;
    box-shadow:0 2px 8px rgba(207,106,59,0.35);
    cursor:pointer;
}

.dv-results{
    background:#f8f3eb;
    border-radius:20px;
    padding:16px 18px;
    margin-top:20px;
}
.dv-result-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:8px 0;
    border-bottom:1px solid #e8dfd2;
    font-size:14px;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}
.dv-result-row:last-child{border-bottom:none;}
.dv-result-lbl{color:#243c40;font-weight:600;}
.dv-result-val{font-weight:700;color:#485858;font-size:14px;}
.dv-result-total{
    background:#cf6a3b;
    border-radius:10px;
    padding:10px 12px;
    margin-top:6px;
}
.dv-result-total .dv-result-lbl{color:#ffffff;font-weight:700;font-size:15px;}
.dv-result-total .dv-result-val{color:#ffffff;font-size:16px;}

.dv-donut-box{
    background:transparent;
    padding:32px 28px 32px 24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:20px;
}
.dv-donut-title{
    font-size:14px;
    font-weight:700;
    color:#3e160c;
    text-align:center;
    font-family:'Playfair Display',Georgia,serif;
}
.dv-donut-wrap{
    position:relative;
    width:180px;
    height:180px;
}
.dv-donut-wrap svg{width:180px;height:180px;}
.dv-donut-center{
    position:absolute;
    top:0;left:0;width:180px;height:180px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;pointer-events:none;padding:0 32px;
}
.dv-donut-center .dc-val{
    display:block;
    font-size:13px;
    font-weight:800;
    color:#485858;
    line-height:1.2;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}
.dv-donut-center .dc-lbl{
    font-size:9px;
    font-weight:700;
    color:#485858;
    letter-spacing:.04em;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}

.dv-legend{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.dv-legend-item{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    color:#243c40;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}
.dv-legend-dot{
    width:12px;height:12px;
    border-radius:50%;
    flex-shrink:0;
}
.dv-legend-amount{
    margin-left:auto;
    font-weight:700;
    color:#485858;
    font-size:13px;
    font-family:'Gotham','Georgia Pro',Georgia,serif;
}

@media(max-width:700px){
    .dv-layout{
        grid-template-columns:1fr;
    }
    .dv-donut-box{
        flex-direction:row;
        flex-wrap:wrap;
        justify-content:center;
        padding:20px;
        gap:16px;
    }
}
@media(max-width:400px){
    .dv-tab{padding:8px 16px;font-size:13px;}
}