*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
    overflow-y:auto;
    background:
    radial-gradient(circle at top left,#4f1c8f 0%,transparent 35%),
    radial-gradient(circle at bottom right,#5d1475 0%,transparent 35%),
    linear-gradient(135deg,#010b2f,#020617,#000814);
    color:#fff;
    position:relative;
}

/* Effets décoratifs */

body::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    background:rgba(0,102,255,.15);
    border-radius:50%;
    filter:blur(120px);
    top:-150px;
    left:-150px;
}

body::after{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
    background:rgba(255,0,200,.12);
    border-radius:50%;
    filter:blur(120px);
    bottom:-120px;
    right:-120px;
}

.container{
    width:90%;
    max-width:900px;
    position:relative;
    z-index:2;
}

.card{
    background:rgba(7,17,44,.75);
    backdrop-filter:blur(15px);
    border:1px solid rgba(255,255,255,.08);
    border-radius:30px;
    padding:50px;
    text-align:center;
    box-shadow:
        0 0 30px rgba(0,0,0,.35),
        0 0 80px rgba(0,102,255,.08);
}

/* .logo{
    width:120px;
    margin-bottom:20px;
    filter:drop-shadow(0 0 15px rgba(0,102,255,.5));
} */
 .logo{
    width:120px;
    margin-bottom:20px;

    filter:
        drop-shadow(0 0 15px rgba(0,132,255,.5))
        drop-shadow(0 0 30px rgba(255,0,170,.2));

    animation:floatLogo 5s ease-in-out infinite;
}
@keyframes floatLogo{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }
}

.badge{
    width:90px;
    height:90px;
    margin:0 auto 25px;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    background:linear-gradient(135deg,#0077ff,#ff00cc);
    box-shadow:
        0 0 25px rgba(0,102,255,.4),
        0 0 35px rgba(255,0,200,.25);
}

.badge span{
    font-size:42px;
}

h1{
    font-size:3rem;
    font-weight:700;
    margin-bottom:15px;
}

.line{
    width:120px;
    height:4px;
    margin:20px auto 30px;
    border-radius:50px;
    background:linear-gradient(to right,#0077ff,#ff00cc);
}

.subtitle{
    font-size:1.15rem;
    color:#d7d7d7;
    line-height:1.8;
    max-width:700px;
    margin:auto;
}

.illustration{
    margin:45px auto;
    width:220px;
    height:220px;
    border-radius:25px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:linear-gradient(
        145deg,
        rgba(0,102,255,.15),
        rgba(255,0,200,.08)
    );
    border:1px solid rgba(255,255,255,.08);
}

.illustration img{
    width:130px;
    opacity:.95;
}

.info-box{
    margin-top:25px;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.05);
    border-radius:20px;
    padding:25px;
    text-align:left;
}

.info{
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:15px 0;
}

.info:not(:last-child){
    border-bottom:1px solid rgba(255,255,255,.06);
}

.icon{
    font-size:26px;
    min-width:40px;
}

.info p{
    color:#d9d9d9;
    line-height:1.6;
}

.footer{
    margin-top:35px;
    color:#9da5c2;
    font-size:.9rem;
}

.progress{
    margin:25px auto;
    width:300px;
    height:10px;
    background:rgba(255,255,255,.08);
    border-radius:30px;
    overflow:hidden;
    overflow-y:auto;
}

.progress-bar{
    height:100%;
    width:70%;
    background:linear-gradient(to right,#0077ff,#ff00cc);
    border-radius:30px;
    animation:loading 2s infinite ease-in-out;
}

@keyframes loading{
    0%{width:30%;}
    50%{width:80%;}
    100%{width:30%;}
}

@media(max-width:768px){

    .card{
        padding:30px 20px;
    }

    h1{
        font-size:2rem;
    }

    .subtitle{
        font-size:1rem;
    }

    .progress{
        width:100%;
    }
}

/* buble effect ------------- */
/* .bubble{
    position:absolute;
    border-radius:50%;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(10px);

    border:1px solid rgba(255,255,255,.08);

    animation:float 10s infinite ease-in-out;
}

.b1{

    width: 200px;
    height:200px;
    top:10%;
    right:10%;
}

.b2{
    width:70px;
    height:70px;
    bottom:20%;
    left:8%;
}

.b3{
    width:50px;
    height:50px;
    top:60%;
    right:20%;
}

.b4{
    width:120px;
    height:120px;
    top:40%;
    left:16%;
}

@keyframes float{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-30px);
    }
} */


/* glass effect ------------------------------ */
.card{
    animation:borderGlow 6s linear infinite;
}

@keyframes borderGlow{

    0%{
        box-shadow:
            0 8px 32px rgba(0,0,0,.35),
            0 0 20px rgba(0,132,255,.15);
    }

    50%{
        box-shadow:
            0 8px 32px rgba(0,0,0,.35),
            0 0 40px rgba(255,0,170,.25);
    }

    100%{
        box-shadow:
            0 8px 32px rgba(0,0,0,.35),
            0 0 20px rgba(0,132,255,.15);
    }
}