:root{
    --color:#0060ad;
}

#btn_headerForm,#action,#hashFileName{
    display:none;
}

body {
    font-family: system-ui;
    font-size: 16px;
    background: #e9e9e9;
    text-align: center;
    font-weight: 600;
    margin: 0;
    padding: 0;
    padding-top: 100px;
}
#hashForm{
    width: 200px;
    margin: 0 auto;
}
#header_h2{
    font-weight: bold;
    margin-bottom: 20px;
    display: inline-block;
}
#fileUploadWrapper{
    position: relative;
    width: 225px;
}

#btn_headerForm{
    height: 40px;
    color: #fff;
    border-radius: 5px;
    padding: 10px 25px;
    background: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    font-weight: bold;
    font-size:1.2em;
    outline: none;
    width:200px;
    background-color: var(--color);
    background-image: var(--color);
    line-height: 42px;
    padding: 0;
    border: none;  
    margin-top: 20px;;


}
#btn_headerForm span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
#btn_headerForm:before,
#btn_headerForm:after {
    position: absolute;
    content: "";
    right: 0;
    bottom: -1;
    background: var(--color);
    transition: all 0.3s ease;
    border-radius: 10px;
}
#btn_headerForm:before{
    height: 0%;
    width: 2px;
}
#btn_headerForm:after {
    width: 0%;
    height: 2px;
}
#btn_headerForm:hover:before {
    height: 100%;
}
#btn_headerForm:hover:after {
    width: 100%;
}
#btn_headerForm:hover{
    background: transparent;
}
#btn_headerForm span:hover{
    color: var(--color);
}
#btn_headerForm span:before,
#btn_headerForm span:after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    background: var(--color);
    transition: all 0.3s ease;
    border-radius: 5px;
}
#btn_headerForm span:before {
    width: 2px;
    height: 0%;
}
#btn_headerForm span:after {
    height: 2px;
    width: 0%;
}
#btn_headerForm span:hover:before {
    height: 100%;
}
#btn_headerForm span:hover:after {
    width: 100%;
}

.headerChk {
    position: absolute;
    left: -100vw; /* don't hide the input but move it out of view instead for better accessibility   */
}

.chk_label {
    padding: 8px 32px;
    border: 2px solid var(--color);
    background-color: transparent;
    border-radius: 5px;
    color: var(--color);
    display: inline-block;
    position: relative;
    width:200px;
    font-size: 0.9em;
    margin-bottom: 16px;
}


.chk_label:hover {
    cursor: pointer;
    opacity: 0.7;
}

.headerChk:checked + .chk_label {
    background-color: var(--color);
    color: #fff;
}

.headerChk:checked + .chk_label::after{
    width: 16px;
    height: 16px;
    padding: 4px;
    border: 2px solid #e9e9e9;
    border-radius: 50%;
    background: #059f00;
    content: "✔";
    font-size: 12px;
    color: #fff;
    position: absolute;
    top: -16px;
    right: -16px;
}


/************************************************/



#fileUploadWrapper,#action {
    position: relative;
    width: 200px;
} 
#label_file,#action {
    display: block;
    padding: 14px 45px;
    background: var(--color);
    color: #fff;
    font-size: 1em;
    transition: all .4s;
    cursor: pointer;
    border: 2px solid var(--color);
    border-radius: 5px;
}
#file {
    position: absolute;
    top: 0; 
    left: 0;
    width: 200px;
    opacity: 0;
    padding: 14px 0;
    cursor: pointer;
}
#file:hover + #label_file,
#file:focus + #label_file,
#label_file:hover,
#label_file:focus,
#action:hover {
    background: transparent;
    color: var(--color);
}


#fileName {
    margin: 0;
}
#fileName:not(:empty) {
    margin: 1em 0;
}
#fileName {
    font-style: italic;
    font-size: .9em;
    font-weight: bold;
}
#fileName:not(:empty):before {
    content: "Selected file: ";
    font-style: normal;
    font-weight: normal;
}


/***************************/

#downloadSection{
    position: relative;
    display: none;
    justify-content: center;
    flex-wrap: wrap;
}
#downloadTick{
    display:none;
    width: 16px;
    height: 16px;
    padding: 2px 5px 8px 5px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #059f00;
    font-size: 1em;
    color: white;
    margin-top: -12px;
    margin-left: 200px;
    z-index: 2;
}
#action{
    position: absolute;
}
#hashFileName{
    margin-top: 60px;
    width: 100%;
}