.recap-card{
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 45px rgba(0,0,0,.12);
    background:#fff;
}

.recap-header{
    background:linear-gradient(135deg,#0d6efd,#4f8cff);
    color:#fff;
    padding:25px;
    border:none;
}

.recap-header h4{
    font-weight:700;
}

.recap-header small{
    opacity:.9;
    font-size:14px;
}

.stat-card{
    background:#fff;
    border-radius:18px;
    padding:25px;
    transition:.35s;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    border:1px solid #f2f2f2;
    position:relative;
}

.stat-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(13,110,253,.18);
}

.icon{
    width:70px;
    height:70px;
    margin:auto;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    color:#fff;
    margin-bottom:15px;
}

.montant .icon{
    background:linear-gradient(135deg,#0d6efd,#4f8cff);
}

.duree .icon{
    background:linear-gradient(135deg,#ff9800,#ffb74d);
}

.mensualite .icon{
    background:linear-gradient(135deg,#00c853,#69f0ae);
}

.label{
    color:#888;
    display:block;
    font-size:14px;
    margin-bottom:10px;
}

.stat-card h2{
    font-size:32px;
    font-weight:700;
    color:#222;
}

.resume-box{
    background:linear-gradient(135deg,#eef7ff,#f8fcff);
    border-left:6px solid #0d6efd;
    padding:25px;
    border-radius:15px;
}

.resume-box h5{
    color:#0d6efd;
    margin-bottom:15px;
    font-weight:700;
}

.resume-box p{
    font-size:18px;
    line-height:1.8;
}

.resume-box strong{
    color:#0d6efd;
    font-size:20px;
}

#resumeMensualite{
    color:#28a745 !important;
}