*,*::after,*::before{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
font-family: 'Roboto Slab', serif;
}
:root{
    --dk-violet:hsl(268,75%,9%);
    --lt--violet:hsl(268, 47%, 21%);
    --lt-voilet2:hsl(281,89%,26%);
    --vb-voilter:hsl(285,91%,52%);
    --vb-voilet2:hsl(290,70%,36%);

    --pl-white:hsl(0,0%,100%);
    --vb-yellow:hsl(52,100%,62%);
    --vb-cyan:hsl(177,92%,70%);
    --vb--cyan2:hsl(177,92%,70%);
    --dk-text:hsl(198,20%,13%);

}
.wrapper
{
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background: linear-gradient(#000428 , #004e92);
}
.container{
width: 90%;
max-width: 28.125rem;
}
h1{
color: var(--pl-white);
opacity: 0.75;
text-transform: uppercase;
letter-spacing: 2px;
text-align: center;
line-height: 1.2;
}
.display-container{
position: relative;
background: var(--dk-violet);
border-radius: 1rem;
border-bottom: 0.35rem solid #A16AE8;
margin: 1rem 0;
padding-top: 0.35rem;
}
.display{
width: 100%;
max-width: 85%;
background-color: transparent;
padding: 1.15rem 1rem;
color: var(--vb-yellow);
font-weight: 600;
font-size: 1.5rem;
line-height: 2rem;
letter-spacing: 0.0625rem;
padding-right: 3.25rem;
border: none;
outline: none;
}
.display::placeholder{
    position: absolute;
    top: 50%;
    left: 1.5rem;
    line-height: 2rem;
    color: var(--vb-yellow);
    opacity: 0.65;
    text-transform: uppercase;
    transform: translateY(-50%);
}
.display-container button{
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
}
.input-container{
    width: 100%;
    background-color: var(--dk-violet);
     border-radius: 1rem;
    padding: 2rem;
    border-bottom: 0.35rem solid #A16AE8;

}
.length-container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.length-container p:nth-child(1)
{
    font-size: 1.5rem;
    color: var(--pl-white);
}
.length-container p:nth-child(2) {
    font-size: 1.5rem;
    color: var(--vb-yellow);
}
.strength-container{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1.75rem;
    margin-bottom: 2rem;
}
.strength-container p:nth-child(1) {
    font-size: 1.5rem;
    color: var(--pl-white);
    text-transform: capitalize;
}
.indicator{
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
}
.gbtn{
    display: inline-block;
    color: var(--vb-yellow);
    text-decoration: none;
    background-color: #4471;
    padding: 1.3rem 3.1rem;
    border: 0.1575rem solid #3c67e3;
    border-radius: 0.625rem;
    width: 100%;
border-bottom: 0.25rem solid #833E5B;
text-transform: uppercase;
user-select: none;
font-weight: 600;
font-size: 1.25rem;
}
.gbtn:hover {
    
    background: #000;
        cursor: pointer;
        animation: pulstate 1s ease-in-out;
}

@keyframes pulstate {
    0%{
        box-shadow: 0 0 25px #5ddcff,
        0 0 50px #4e00c2;

    }
    
}

.checked{
    display: flex;
    align-items: center;
    border-radius: 1px solid pink;
    margin: 1rem 0; 
    gap: 0 1rem;
}
.checked input{
    appearance: none;
    width: 20px;
    height: 20px;
    position: relative;
    cursor: pointer;
    border: 1px solid var(--vb-cyan);
    border-radius: 0.35rem;
}
.checked input:checked{
    background-color: var(--vb-cyan);
}
.checked input:checked::before{
    content: "\2713";
    position: absolute; 
    color:hsl(198,20%,13%);
    font-size: 1.05rem;
    font-weight: 600;
    left: 50%;
    top: -3.5px;
     transform: translateX(-50%) translateY(10%);
}
.checked label{
    color: hsl(0,0%,100%);
    font-size: 1rem;
    letter-spacing: 0.75px;
    text-transform: capitalize;
}
.slider{
    appearance: none;
    width: 100%;
    height: 0.75rem;
    cursor: pointer;
    background-color:var(--lt--violet);
    border-radius: 1rem;
    margin-top: 2rem;
    margin-bottom: 1.5rem;
    background-image: linear-gradient(var(--vb-voilter),var(--vb-voilter));
    background-repeat: no-repeat;border: none;
    outline: none;
}
.slider::-webkit-slider-thumb{
    appearance: none;
    height: 2rem;
    width: 2rem;
    border-radius: 50%;
    background-color: var(--vb-yellow);
    cursor: pointer;
    margin-top: -3px;
    box-shadow: 0px 0px 20px 0px rgba(255, 229, 61, 0.50);
    transition: all 100ms ease-in;
}
.slider:focus{
    outline: 3px solid var(--vb-yellow);
}
.copybtn{
    background-color: transparent;
    border: none;
    outline: none;
    width: 1.75rem;
    cursor: pointer;
}
.copybtn img {
width: 100%;
height: 100%;
}
.tooltip{
    position: absolute;
    background-color: var(--vb-voilet2);
    color: var(--vb-yellow);
    font-size: 1.25rem;
    top: -35px;
    left: -25px;
    padding: 5px 10px;
    border-radius: 1rem;
    opacity: 0;
    transform: scale(0);
    transform-origin: bottom;
    transition: all 250ms ease-in-out;
}
.tooltip.active{
    opacity: 1;
    transform: scale(1);;
}
.imscopu{
    background: transparent;
        border: none;
        outline: none;
}