.fancy-line { 
    border: 0; 
    height: 0px;
    position: relative;
    margin: 0.5em 0;
}
.fancy-line:before {/*shadow range*/
    bottom: 0em;
    height: 1em;
}
.fancy-line:after { /*red*/
    height: 0.5em;
    top: calc(-0.5em + 0.5em);        /* adjusted this */
}

.fancy-line:before, .fancy-line:after {
    content: '';
    position: absolute;
    width: 100%;
}

.fancy-line, .fancy-line:before {
    /*background: radial-gradient(ellipse at center, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 75%);*/
    background: linear-gradient(to top,#F4F4F4 0%,rgba(255,255,255,0) 100%);
}

body, .fancy-line:after {
    /*background: #f4f4f4;*/
    background: #F9F9F9;
}




.fancy-line-footer { 
    border: 0; 
    height: 0px;
    position: relative;
    margin: 0.0em 0;
}
.fancy-line-footer:before {/*shadow range*/
    bottom: 0.0em;
    height: 1em;
}
.fancy-line-footer:after { /*red*/
    height: 0.0em;
    top: calc(-0.4em + 0em);        /* adjusted this */
}

.fancy-line-footer:before, .fancy-line-footer:after {
    content: '';
    position: absolute;
    width: 100%;
}

.fancy-line-footer, .fancy-line-footer:before {
    /*background: radial-gradient(ellipse at center, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 75%);*/
    background: linear-gradient(to top,#BCDDF9 0%,rgba(255,255,255,0) 80%);
}

body, .fancy-line-footer:after {
    /*background: #f4f4f4;*/
    background: linear-gradient(to bottom ,#03C3CC80 0%,#03C3CC 100%);
}




button:disabled
{
    opacity: 0.2;
    filter: grayscale(100%);
}