:root {
    /*--signed-in: hsl(261, 60%, 45%);*/
    --signed-in: rgb(204, 215, 225);
}

html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

@font-face {
    font-family: 'Rubik';
    src: url('/fonts/Rubik-VariableFont_wght.woff2') format('woff2'), 
        url('/fonts/Rubik-VariableFont_wght.woff') format('woff'), 
        url('/fonts/Rubik-VariableFont_wght.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body {
    margin-bottom: 110px;
    font-family: 'Rubik', sans-serif;
}

.heroImage {
    width: 80%;
    height: 40vh;
    object-fit: cover;
    border-radius: 10px;
}

.logoImage {
    height: 35px;
    border-radius: 5px;
}

.inputTooltip {
    position: absolute;
    top: 15px;
    left: 92%;
}

    .inputTooltip > img, .checkboxTooltip > img {
        filter: invert(0.4);
    }

.img-upload-label {
    width: 90px;
    display: inline;
}

.filter-form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
    margin-top: 10px;
}

@media screen and (max-width: 990px) {
    table.responsive, 
    table.responsive tbody, 
    table.responsive tr, 
    table.responsive td {
        display: block;
    }

    table.responsive th {
        display: none;
    }

    table.responsive tr {
        margin-bottom: 20px;
    }

    table.responsive .links {
        display: flex;
        justify-content: center;
    }
}
.startpage-assignment-details {
    position: absolute;
    bottom: 10px;
    left: 10px;
    right: 10px;
    text-align: center;
}

textarea.noscrollbars {
    overflow: hidden;
    height: auto;
}

.red-icon {
    filter: invert(12%) sepia(85%) saturate(7232%) hue-rotate(358deg) brightness(111%) contrast(113%);
}

.gold-icon {
    filter: invert(49%) sepia(79%) saturate(418%) hue-rotate(5deg) brightness(114%) contrast(98%);
}

.signed-up {
    background-color: var(--signed-in);
    background-image: var(--bs-gradient);
}

    .signed-up > td {
        background-color: unset;
    }

    .signed-up > span {
        color: black;
    }

.truncated-text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    width: 60%;
}

.pointsColor {
    background-color: var(--points)
}

.pointsColorText {
    color: var(--points)
}

/*Fix elements being outside body and making horizontal scrollbar appear*/
.form-switch.ms-3 {
    max-width: 90%;
}

/* if using default signalr */
#components-reconnect-modal {
    display: none;
}

    #components-reconnect-modal.components-reconnect-show,
    #components-reconnect-modal.components-reconnect-failed,
    #components-reconnect-modal.components-reconnect-rejected {
        display: block;
    }