:root,
[data-bs-theme=light] {    
    --c-red: #96011c;
    --c-dark-red: #600011;
    --c-black: #111111;
    --c-dark: #333232;
    --c-grey: #cccccc;
    --c-white: #ffffff;
    --c-primary-emphasis: #007bff;
    --thumbnail-color: #600011;
    --thumbnail-bg-color: inherit;
    --thumbnail-hover-color: #880019;
    --thumbnail-hover-bg-color: rgba(255, 255, 255, 0);
    --thumbnail-shadow-color: grey;
}

[data-bs-theme=dark]
{
    --c-red: #c20024;
    --c-dark-red: #96001b;
    --c-black: #111111;
    --c-dark: #333232;
    --c-grey: #cccccc;
    --thumbnail-color: #cacaca;
    --thumbnail-bg-color: #4d000099;
    --thumbnail-hover-color: #fff;
    --thumbnail-hover-bg-color: #790000;
    --thumbnail-shadow-color: #a19898;
}

/*If browser version is below IE 9*/
.ifIE {
    position: fixed; /* Sit on top of the page content */
    width: 100%; /* Full width (cover the whole page) */
    width: 100vw;
    height: 100%; /* Full height (cover the whole page) */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    z-index: 9; /* Specify a stack order in case you're using a different order for other elements */    
}

.ifIE:before {
    content: ' ';    
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    opacity: 0.09;
}

    .ifIE .ie9-h1, .ie9-h2 {
        text-align: center;
        position: relative;
        top: 40%;
    }


/* Disabled button tooltip workaround */
.tooltip-wrapper {
    display: inline-block;
}


/* Clicable table body */
.clickable-table-body tr {
    cursor: pointer;
}
.clickable-table-body-ajax tr {
    cursor: pointer;
}
/* Sticky table head. Requires for the table to NOT be responsive */
.thead-sticky th {
    position: sticky;
    top: 0px;
}

/*Toggle switch*/
/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 2.8em;
    height: 1.5em;
}

    /* Hide default HTML checkbox */
    .switch input {
        display: none;
    }

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--c-grey);
    -webkit-transition: .4s;
    transition: .4s;
}

    .slider:before {
        position: absolute;
        content: "";
        height: 1.1em;
        width: 1.1em;
        left: 0.25em;
        bottom: 0.2em;
        background-color: white;
        -webkit-transition: .4s;
        transition: .4s;
    }

input:checked + .slider {
    background-color: var(--bs-primary);
}

input:focus + .slider {
    box-shadow: 0 0 1px var(--bs-primary);
}

input:checked + .slider:before {
    -webkit-transform: translateX(1.15em);
    -ms-transform: translateX(1.15em);
    transform: translateX(1.15em);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

    .slider.round:before {
        border-radius: 50%;
    }

/* Loading icon */
.loading-icon-container {
    display:none;
    position: fixed;
    z-index: 10;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
}
.loading-icon-content {
    display: block;
    margin: 20% auto;
    width: 100%;
    text-align: center;
}

/* To the top button */
.to-the-top {
    position: fixed;
    right: -20em;
    bottom: 1em;
    display: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* Double lines for divs around titles */
.double-line {
    border-top: 1px solid var(--bs-primary);
    border-bottom: 1px solid var(--bs-primary);    
    height: 0.6em;
}

/* Dropzone */
.dropzone {
    border-width: 3px; 
    border-style: dashed; 
    border-radius: 1em;
    border-color: grey;
}

.dropzone {
    border: 3px dashed grey;
    border-radius: 1em;

}

.dropzone.dropzone-primary {
    border-color: var(--bs-primary);
}

.dropzone.dropzone-dark {
    border-color: var(--bs-dark);
}

/* Notification counter */
.notification-counter-container {
    position: relative;
    display: inline-block;
}
.notification-counter {
    position: absolute !important;
    top: -5px !important;
    right: -7px;
}

.canceled-overlay-container {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;        
    display: flex;
    justify-content: center;
    align-items: center;
}
.canceled-overlay-container p {
    transform: rotate(-30deg);
    color: var(--bs-warning);
    font-size: 4em;
    font-weight: bold;
    letter-spacing: 30px;
    text-align: center;
    text-shadow: 5px 5px 3px var(--dark);
    box-shadow: 10px 20px 30px var(--dark);
    padding-left: 0.5em;
    padding-bottom: 0.1em;
    border-radius: 0.2em;
    background-color: rgba(0, 0, 0, 0.2);
    border: 4px solid var(--bs-warning);
    z-index: 10;
}


/*
********************************************
From here on is the MAIN design of the page!
********************************************
*/
html {
    height: 100%;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

/* header {
}
main {
} */
footer {
    color: rgba(255,255,255,.5) !important;
}
    footer .row {
        padding: 1.4em;
    }

    footer hr {
        background-color: transparent;
        height: 0;
        border: 0;
        border-top: 1px solid rgba(255,255,255,.5);
        width: 99%;
    }

main:before {
    content: ' ';    
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.06;
}

/*Lists*/

.my-list-group-lg {
    font-size: 1.1em;
}

.my-thumbnail-link {
    color: inherit !important;
    background-color: inherit !important;
}

.my-thumbnail-container {
    margin: 1.2rem;
    color: var(--thumbnail-color);
    cursor: pointer;
}
.my-thumbnail {    
    border-radius: 0.5rem;    
    border: 0.2rem solid var(--thumbnail-color);
    background-color: var(--thumbnail-bg-color);
    box-shadow: 4px 7px 15px var(--thumbnail-shadow-color);
    margin-top: 0.5rem;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    -webkit-transition: box-shadow 0.3s;
    transition: box-shadow 0.3s;
}

.my-thumbnail-container:hover{    
    color: var(--thumbnail-hover-color);
}

.my-thumbnail-container:hover .my-thumbnail {
    border: 0.2rem solid var(--thumbnail-hover-color);
}

.my-thumbnail-container:hover .my-thumbnail {
    background-color: var(--thumbnail-hover-bg-color);
    box-shadow: none;
}

.my-thumbnail-link:hover {
    text-decoration: none;
}

.truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 1em;
    padding-left: 1em;
}

.truncate:hover {
    overflow: visible;
}

.table-ordering thead th {
    white-space: nowrap;
}
.ordering-link {
    color: inherit;
}

.remove-ordering-link {
    display: none;
    width: auto;    
    margin-right: 0;
    padding-right: 0;
}

.ordering-header:hover .remove-ordering-link {
    display: inline;
}

.navbar {
    padding-left: 0;
}

.navbar-brand {
    color: var(--bs-white);
    font-size: 1.05em;
    font-weight: 600;
    height: inherit;
    line-height: inherit;
    padding: 0 1.25rem;
    text-decoration: none;
}

a {
    color: var(--c-primary-emphasis);
    text-decoration: none;
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

/*Accordion*/
    .accordion-header {
        background: linear-gradient(to right, #ffffff, #edf0f5);
        padding: 0.6rem;
        padding-right: 0.5rem;         
    }

    [data-bs-theme=dark] .accordion-header {
        background: linear-gradient(110deg, #444, #1b1b1b);     
        /* box-shadow: -10px -5px 5px -5px var(--c-dark-red) inset; */
    }

    .accordion-button:not(.collapsed) {
        color: inherit;
        box-shadow: none;
        background-color: inherit;

    }

    .accordion-button {
        font-size: 1.1rem;
        font-weight: 600 !important;
        margin-bottom: 0;
        padding-bottom: 0;
        font-weight: 500;
        color: var(--c-dark);
        background-color: transparent;
    }        
        .accordion-button:hover {
            color: var(--c-dark-red);
            text-decoration: none;
            background-color: transparent;
            border-color: transparent;
            -moz-transition: color 0.2s ease-in-out;
            -webkit-transition: color 0.2s ease-in-out;
            transition: color 0.2s ease-in-out;
        }

            .accordion-button:hover .bg-dark {
                background-color: var(--c-dark-red);
            }

        .accordion-button::after {
            display: none;
        }

    [data-bs-theme=dark] .accordion-button {
        color: #EEE;
    }

    .accordion .badge {
        font-size: 0.5em;
        padding-top: 0.2em;

    }

    .accordion th {
        color: var(--c-dark);
    }

    [data-bs-theme=dark] .accordion th {
        color: #EEE;
    }

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
    background-color: var(--c-black) !important;
    color: var(--c-red) !important;
    -moz-transition: color 0.2s ease-in-out;
    -webkit-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
}
/*Link*/
a.text-dark:hover, a.text-dark:focus {
    color: var(--c-red) !important;
}

/*Text*/

footer h1, footer h2, footer h3, footer h4, footer h5 , footer h6 {
    color: #fff;
}
footer .text-white {
    color: rgba(255, 255, 255, 0.5) !important;
}

footer p {
    color: rgba(255, 255, 255, 0.5) !important;
}

footer strong {
    font-weight: 600;
    color: rgba(255, 255, 255, 0.8) !important;     
}
