.inactive {
    filter: saturate(0) opacity(0.5);
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.centerer {
    align-items: center;
    display: flex;

}
.centeree {
    width: 100%;
    text-align: center;
}

.calc-left-column,
.calc-right-column {
    padding-top: 15px;
    padding-bottom: 15px;
}

.calc-left-column::before {
    content: "";
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 0;
    border-bottom: 1px solid #cccccc;
}
.calc-middle-column {
    padding: 1rem 0;
}
.calc-middle-column::before {
    content: "";
    background-color: #cccccc;
    position: absolute;
    width: 1px;
    left: 50%;
    top: 0;
    bottom: 0;
    z-index: -1;
}
.calc-right-column::before {
    content: "";
    position: absolute;
    left: 15px;
    right: 15px;
    top: 0;
    border-top: 1px solid #cccccc;
}

@media (min-width: 576px) {
    .calc-left-column::before {
        left: auto;
        right: 0;
        top: 15px;
        bottom: 15px;
        border-right: 1px solid #cccccc;
    }
    .calc-middle-column::before {
        width: auto;
        height: 1px;
        left: 0;
        right: 0;
        height: 1px;
        top: 50%;
        bottom: auto;
    }
    .calc-right-column::before {
        right: auto;
        left: 0;
        top: 15px;
        bottom: 15px;
        border-left: 1px solid #cccccc;
    }    
}


button#calculate {
    box-shadow: 0px 0px 0 5px #ffffff;
}

.calc-title {
    border-bottom: 1px solid #cccccc;
}

nav.navbar {
    margin-bottom: 2rem;
}

div#result h3 {
    font-weight: bold;
}

.workingbar {
    background: #008cba;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 5px;
}
.workingbar-on {
    background: -moz-linear-gradient(left, #008cba 0%, #008cba 35%, #ffffff 50%, #008cba 65%, #008cba 65%, #008cba 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #008cba 0%,#008cba 35%,#ffffff 50%,#008cba 65%,#008cba 65%,#008cba 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #008cba 0%,#008cba 35%,#ffffff 50%,#008cba 65%,#008cba 65%,#008cba 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */    background-size: 400% 100%;

    -webkit-animation: workingbar 2s linear infinite;
    -moz-animation: workingbar 2s linear infinite;
    -o-animation: workingbar 2s linear infinite;
    animation: workingbar 2s linear infinite;
}

@-webkit-keyframes workingbar {
    0%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes workingbar {
    0%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-o-keyframes workingbar {
    0%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes workingbar { 
    0%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

.fa-spin {
    animation: fa-spin 1s infinite linear;
}

.btn.disabled, .btn:disabled {
    opacity: 1;
    filter: saturate(0);
}

p {
    text-align: justify;
}

a.download-btn i:last-child {
    display: none;
}
a.download-btn:hover i:last-child,
a.download-btn:focus i:last-child {
    display: inline-block;
}
a.download-btn:hover i:first-child,
a.download-btn:focus i:first-child {
    display: none;
}

.navbar-brand {
    white-space: normal;
}

nav.navbar > div:not(:last-child) {
    padding-bottom: 5px;
}