/* Colours */

:root {
    --blue: #338cd3;
    --light-blue: #6bb6ee;
    --pale-blue: #ade1f6;
    --orange: #f99b1c;
    --light-orange: #efab41;
    --dark-orange: #bf6b1d;
    --background: #00040e;
}


/* Layout */

body {
    color: white;
    background-color: var(--background);
    font-family: Conduit ITC, Arial, Verdana, Helvetica CY, sans-serif;
    font-size: 1.5rem;
    line-height: 1.3rem;
    overflow: auto;
    position: relative;

    background-image: url(../images/png/background_3.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
}

body.bg-0 {
    background-image: url(../images/png/background_0.png);
}

body.bg-1 {
    background-image: url(../images/png/background_1.png);
}

body.bg-2 {
    background-image: url(../images/png/background_2.png);
}

body.bg-3 {
    background-image: url(../images/png/background_3.png);
}

body.bg-red-0 {
    background-image: url(../images/png/background_0_red.png);
}

body.bg-red-1 {
    background-image: url(../images/png/background_1_red.png);
}

body.bg-red-2 {
    background-image: url(../images/png/background_2_red.png);
}

.container-lg {
    border-left-width: 3px;
    border-right-width: 3px;
    border-top-width: 0;
    border-bottom-width: 0;
    border-style: ridge;
    border-image: linear-gradient(to bottom, var(--blue), var(--pale-blue), var(--blue)) 1 100%;
    box-shadow: 0 0 4px var(--blue), 0 0 4px var(--blue) inset;
}

.modal-backdrop.show {
    opacity: 0.9;
}

.form-control {
    font-size: 1.5rem;
}

.invalid-feedback {
    width: auto;
}

#settingsPanel .box {
    min-height: 50vh;
}

.loading {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--background);
    z-index: 1060;
    font-family: Copperplate Gothic Regular, Copperplate Gothic, Conduit ITC, serif;
    color: var(--orange);
    font-size: 4rem;
    font-weight: bold;
    align-items: center;
    justify-content: center;
}


/* Menus */

.menu-button-lg, .menu-button-sm {
    text-decoration: none;
    color: white;
}

.menu-button-lg.disabled, .menu-button-sm.disabled {
    pointer-events: none;
    color: grey;
}

#playFastestFingerBtn.disabled span, #playMainGameBtn.disabled span, #editQuestionsBtn.disabled span {
    opacity: 0.5;
}


/* Logo */

.logo-large {
    width: 30%;
    min-width: 200px;
}

.logo-small {
    width: 30%;
    min-width: 120px;
}

@media (min-width: 576px) {
    .logo-small {
        min-width: 200px;
    }
}

.logo-large img, .logo-small img {
    width: 100%;
    height: auto;
    -webkit-filter: drop-shadow(5px 5px 7px black);
    filter: drop-shadow(5px 5px 7px black);
}


/* Basic components */

.box {
    background: linear-gradient(black, black) padding-box,
    linear-gradient(to right, var(--blue), var(--pale-blue), var(--blue)) border-box;
    border-radius: .5rem;
    border: 3px solid transparent;
}

.small-button {
    background: linear-gradient(black, black) padding-box,
    linear-gradient(to right, var(--blue), var(--pale-blue), var(--blue)) border-box;
    border-radius: .5rem;
    border: 2px solid transparent;
    color: white;
    font-size: 1.5rem;
    line-height: 1.5;
}

@media (hover: hover) {
    .small-button:hover {
        background: linear-gradient(var(--orange), var(--orange)) padding-box,
        linear-gradient(to right, var(--blue), var(--pale-blue), var(--blue)) border-box;
        color: black;
    }
}

.small-button.disabled {
    pointer-events: none;
    filter: brightness(0.5);
}


/* Player lists */

.player-list .question {
    font-family: Copperplate Gothic Condensed, Copperplate Gothic32BC, Copperplate Gothic, Conduit ITC, Arial, Verdana, Helvetica CY, sans-serif;
    font-size: 2.5rem;
    line-height: 2.5rem;
    min-height: 53px;
    padding: 5px 3%;
}

.player-list.correct .question {
    background-position: 0 100%;
}

.player-list.correct .answer-diamond {
    color: white;
}

.player-list.correct .player-list-text {
    text-shadow: 1px 1px 5px black;
    -webkit-text-stroke: 0.3pt black;
}

.player-list .question-line {
    border-bottom-width: 2px;
}

.player-list-text {
    word-break: break-word;
}

#playersListPanel .box {
    min-height: 50vh;
}


/* Toasts */

.toast {
    --bs-toast-bg: black;
    --bs-toast-header-bg: black;
    --bs-toast-header-color: white;
    --bs-toast-header-border-color: var(--blue);
    border-width: 2px;
}

.toast-body {
    font-size: 1.25rem;
}

.toast-header img {
    height: 20px;
    width: 20px;
}
