.section-title{
    font-size:20px;
    margin-bottom:20px;
    color:#007f5f;
    font-weight:500;
}

.input-group{
    margin-bottom:18px;
}

.asset-row{
    display:grid;
    grid-template-columns:1fr 120px 120px;
    gap:10px;
    margin-bottom:12px;
    align-items:center;
}

.asset-row input{
    width:100%;
}

.button-group {
    display: flex;
    gap: 10px; 
}

.btn{
    background:#007f5f;
    color:white;
    border:none;
    padding:14px 18px;
    border-radius:12px;
    cursor:pointer;
    font-weight:500;
    transition:0.3s;
}

.btn:hover{
    background:#55a630;
    transform:translateY(-2px);
}

.result-box{
    background:#F2F7F6;
    border-radius:18px;
	  border-left:6px solid #007f5f;
    padding:20px;
    margin-bottom:18px;
}

.result-title{
    font-size:18px;
    font-weight:500;
    margin-bottom:10px;
    color:#007f5f;
}

.result-item{
    display:flex;
    justify-content:space-between;
    margin:10px 0;
    padding-bottom:8px;
    border-bottom:1px solid #eee;
}

.health-meter{
    height:20px;
    border-radius:20px;
    background:#ddd;
    overflow:hidden;
    margin-top:10px;
}

.health-fill{
    height:100%;
    width:0%;
    background:linear-gradient(90deg,#55a630,#007f5f);
    transition:0.4s;
}

.warning{
    color:#d62828;
    font-weight:700;
    margin-top:10px;
}

.success{
    color:#007f5f;
    font-weight:700;
    margin-top:10px;
}

canvas{
    background:#F2F7F6;
    border-radius:18px;
    padding:15px;
}

.rebalance-item{
    background:#ffffff;
    padding:12px;
    border-radius:12px;
    margin-bottom:10px;
}

.footer-note{
    margin-top:15px;
    font-size:14px;
    color:#365951;
}

.range{
    width:100%;
}

.badge{
    display:inline-block;
    background:#007f5f;
    color:#fff;
    padding:6px 12px;
    border-radius:50px;
    margin-top:10px;
    font-size:13px;
}