h1 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

h2 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

h3 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

h4 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

h5 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

h6 {
    text-align     : center;
    color          : darkblue;
    text-transform : uppercase;
}

.bg-primary {
    background-color : darkblue !important;
}

.bg-secondary {
    background-color : steelblue !important;
}

.bg-primary.bg-gradient {
    background-image : linear-gradient(to bottom, steelblue, darkblue, steelblue) !important;
}

.bg-secondary.bg-gradient {
    background-image : linear-gradient(to bottom, darkblue, steelblue, darkblue) !important;
}

.text-primary {
    color : darkblue !important;
}

.text-secondary {
    color : steelblue !important;
}

.badge {
    vertical-align : text-top;
}

.badge-primary {
    background-color : darkblue !important;
}

.badge-secondary {
    background-color : steelblue !important;
}

.btn, .shining {
    position : relative;
    overflow : hidden;
}

.btn.no-shine::after {
    display : none !important;
}

.btn::after, .shining::after {
    content    : '';
    display    : block;
    position   : absolute;
    /*background : rgba(255, 255, 255, 0.2);*/
    background : linear-gradient(to bottom, rgba(229, 172, 142, 0), rgba(255, 255, 255, 0.5) 50%, rgba(229, 172, 142, 0));
    width      : 10%;
    height     : 100%;
    top        : 0;
    filter     : blur(5px);
    transform  : translateX(-13em) skewX(-45deg);
}

.btn:hover::after, .btn:focus::after,
.shining:hover::after, .shining:focus::after {
    /*animation : shine 1s forwards;*/
    transform  : translateX(1500%) skewX(-45deg);
    transition : 1s;
}

@keyframes shine {
    0% {
        background-position : 1% 0%;
    }
    50% {
        background-position : 99% 100%;
    }
    100% {
        background-position : 1% 0%;
    }
    /*100% {
        transform : rotateZ(60deg) translate(1em, -9em);
    }*/
}

.btn-primary {
    background-color : darkblue !important;
    border-color     : darkblue !important;
    color            : white !important;
}

.btn-primary:hover, .btn-primary:focus {
    box-shadow : 0 0 0 0.25rem rgba(0, 0, 139, 0.5);
}

.btn-outline-primary {
    border-color : darkblue !important;
    color        : darkblue !important;
}

.btn-outline-primary:hover, .btn-outline-primary:focus {
    background-color : darkblue !important;
    color            : white !important;
}

.btn-secondary {
    background-color : steelblue !important;
    border-color     : steelblue !important;
    color            : white !important;
}

.btn-secondary:hover, .btn-secondary:focus {
    box-shadow : 0 0 0 0.25rem rgba(70, 130, 180, 0.5);
}

.btn-outline-secondary {
    border-color : steelblue !important;
    color        : steelblue !important;
}

.btn-outline-secondary:hover, .btn-outline-secondary:focus {
    background-color : steelblue !important;
    color            : white !important;
}

.alert {
    padding : .25rem 1rem;
}

.alert-primary {
    background-color : darkblue !important;
    border-color     : darkblue !important;
    color            : white !important;
}

.alert-secondary {
    background-color : steelblue !important;
    border-color     : steelblue !important;
    color            : white !important;
}

.rounded-diagonal {
    border-top-left-radius     : .25rem !important;
    border-bottom-right-radius : .25rem !important;
}

.rounded-r10 {
    border-radius : 1rem;
}

.rounded-r5 {
    border-radius : .5rem;
}

.form-label {
    margin-bottom : .1rem;
}

.form-group {
    margin-bottom : .5rem;
}

.modal-header {
}

.modal-title {
}

.modal-header, .modal-body {
    padding : .3rem 1rem;
}

.modal-footer {
    justify-content : center;
}

.modal-footer .btn {
    min-width : 8rem;
}

.bootstrap-select .alert {
    margin-bottom : 0;
}

.popover {
    max-width : 400px;
}

.popover .popover-body {
    margin-right : 1rem;
}

.popover .close {
    position : absolute;
    top      : .2rem;
    right    : .5rem;
}

.custom-control-label {
    padding-left : 1rem;
}

.custom-checkbox .custom-control-label::before,
.custom-checkbox .custom-control-label::after {
    width  : 2rem;
    height : 2rem;
    top    : -.25rem;
    cursor : pointer;
}

.custom-checkbox .custom-control-label {
    margin-bottom : .7rem;
}

.flex-separator {
    flex-grow : 1;
}