.subtitle{

    margin-bottom:30px;

    color:#666;

}

#number{

    width:170px;
    height:170px;

    margin:0 auto 30px;

    border-radius:20px;

    background:#fff;

    display:flex;

    justify-content:center;
    align-items:center;

    font-size:4.5rem;

    font-weight:800;

    color:#ff5c7c;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

}

#number.animate{

    animation:pop .08s linear infinite;

}

@keyframes pop{

    50%{

        transform:scale(1.05);

    }

}

#generate{

    border:none;

    background:#ff5c7c;

    color:#fff;

    padding:14px 30px;

    border-radius:12px;

    cursor:pointer;

    font-size:1rem;

    font-weight:600;

}

#result{

    margin-top:25px;

    font-weight:600;

}

.range{

    display:flex;

    gap:20px;

    justify-content:center;

    margin:30px 0;

    flex-wrap:wrap;

}

.field{

    display:flex;

    flex-direction:column;

    gap:8px;

}

.field label{

    font-size:.9rem;

    color:#666;

}

.field input{

    width:110px;

    padding:12px;

    border:2px solid #eee;

    border-radius:10px;

    text-align:center;

    font-size:1.1rem;

    outline:none;

}

.field input:focus{

    border-color:#ff5c7c;

}