﻿
@font-face {
    font-family: 'Circular';
    src: url('../font/CircularStd-Book.otf') format('opentype');
}

@font-face {
    font-family: 'Circular';
    src: url('../font/CircularStd-Bold.otf') format('opentype');
    font-weight: bold;
}

body {
    /*background-image: url(../img/bg/22_1.png);*/
    background: var(--colour-main26-bg);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;

    font-family: 'Circular';

    --colour-main20: #1ba0b3;
    --colour-main20-dark: #147987;

    --colour-main22: #20285a;
    --colour-main22-dark: #20285a;
    /*--colour-main22: #9a1032;*/
    /*--colour-main22-dark: #7f1630;*/
    --colour-main22-dark-disable: #913149;

    --colour-main24: #143cdb;
    --colour-main24-dark: #0224ad;
    --colour-main24-disabled: #374373;

    --colour-proto24-bg: #111315;
    --colour-proto24-card: #1a1c1e;
    --colour-proto24-main: #20285a;
    --colour-proto24-highlight: #0d1e62;
    --colour-proto24-lowlight: #000d3f;

    --colour-main26-bg: white;
    --colour-main26-card: #e5e5e5;
    --colour-main26-navbar: #0d0b0e;

    --success-green: #00A656;
    --danger-red: #be0000;
    --warning-yellow: #ffdb00;

    --match-sm-width: 182px;
    --match-sm-height: 140px;

    --flag-icon-width-sm: 2rem;
    --flag-icon-height-sm: 1.33rem;

    --flag-icon-width: 4rem;
    --flag-icon-height: 2.666rem;

    --flag-icon-width-lg: 6rem;
    --flag-icon-height-lg: 4rem;

    --flag-icon-width-xs: 1.5rem;
    --flag-icon-height-xs: 1rem;

    --sidebar-transition-time: 0.5s;
}

header {
    background: var(--colour-main26-navbar);
    /*background: linear-gradient(135deg, var(--colour-main24) 20%, rgba(13,30,98,1) 85%);*/
    /*position: absolute;*/
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    font-family: Circular;
    /*font-weight: 100;*/
    /*font-variant: small-caps;*/
    font-size: 3rem;

    display: flex;
    justify-content: center;
    vertical-align: middle;
    /*height: 68px;*/
}

header .content {
    /*background-color: var(--colour-main24);*/
    background-color: var(--colour-main26-navbar);
    /*max-width: 1080px;*/

    color: white;
    width: 100%;
    padding: 10px;
    overflow: hidden;

    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    vertical-align: middle;
    /*height: 68px;*/
}

header .auth-control {
    text-align: center;
    /*border: 4px solid red;*/
    /*margin-left: auto;*/
}

header i {
    font-size: 2rem;
}

header .profile-picture, .friend-request .profile-picture {
    border-radius: 50%;
    height: 2.75rem;
    margin: 2px;
}

header .profile-picture-border, .friend-request .profile-picture-border {
    border: 2px solid white;
    border-radius: 50%;
    display: flex;
}

main {
    padding-bottom: 8px !important;
    color: black;
    max-width: 1080px;

    margin: 0 auto;
}

.clone-footer {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: var(--success-green);
    color: white;
}

.clone-footer h3 {
    max-width: 1080px;
    margin: 0 auto;
}

footer {
    position: fixed;
    left: 0;
    bottom: 0;
    height: 64px;
    width: 100%;
    line-height: 60px;
    
    background: var(--colour-main26-navbar);
    /*background: linear-gradient(135deg, var(--colour-main24) 20%, rgba(13,30,98,1) 85%);*/
}

    footer .container {
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        height: 60px;
        max-width: 1080px !important;
        vertical-align: middle;
        padding-top: 8px;
    }

    footer .container .fa-col {
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        color: white !important;
    }

    footer .container .fa-col .pill {
        display: block;
        width: 100%;
        height: 4px;
        background-color: white;
        border-radius: 25%;
        opacity: 0;
    }

        footer .container .fa-col.selected {
            /*color: #3295a8 !important;*/
        }

            footer .container .fa-col.selected .pill {
                opacity: 1;
                /*background-color: #3295a8 !important;*/
            }

.sub-header {
    background-color: var(--colour-proto24-lowlight);
    text-align: center;
    color: white;
    font-size: 1.5rem;
}

.gdm-card {
    display: block;
    color: black;
    /*background-color: var(--colour-main26-card);*/
    padding: 1rem;
    margin-bottom: 10px;
    min-width: 328px;
    margin-left: auto;
    margin-right: auto;
}

.gdm-card2 {
    padding: 1rem;
    margin-bottom: 1rem;
}

.gdm-card.wrap {
    display: inline-block;
}

.gdm-card .gdm-card {
    background-color: var(--colour-proto24-bg);
}

/*TODO: move to mobile styling?*/
.gdm-card h3 {
    /*text-align: center;*/
}

.gdm-card.leagues .header h3 {
    text-align: left;
    margin-bottom: 0;
}

#how-to .info {
    width: 100%;
    text-align: center;
    padding: 8px 0;
    border-top: 1px solid var(--colour-main26-navbar);
}

#how-to p {
    text-align: center;
}

@media (max-width: 680px) {
    #how-to .info, #how-to p {
        text-align: left;
    }
}

#how-to .faux-table {
    --mask: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 9%, rgba(0,0,0,1) 21%, rgba(0,0,0,1) 79%, rgba(0,0,0,0.5) 91%, rgba(0,0,0,0) 100%) 100% 50% / 100% 100% repeat-x;
    -webkit-mask: var(--mask);
    mask: var(--mask);
    margin-bottom: 8px;
    max-width: 600px;
    margin: 0 auto;
}

#how-to .faux-table-row {
    /*background-color: #D3D3D3;*/
    border-top: 1px solid var(--colour-main26-card);
    color: black;
    display: flex;
    flex-direction: row;
    vertical-align: middle;
    width: 90%;
    margin: 0 auto;
    padding: 4px 8px;
}

#how-to .faux-table-row:nth-child(3) {
   border-bottom: 1px solid var(--colour-main26-card);
}

#how-to .faux-table-row:nth-child(4) {
    margin-left: 7.5%;
    font-weight: bold;
    border: 2px solid #00ad00;
    background-color: #cff1cf;
}

#header-icon-container {
    overflow: hidden;
    position: absolute;
    width: 8rem;
    height: 8rem;
}

    #header-icon-container img {
        z-index: 2;
        position: absolute;
        top: 0.35rem;
        left: 0.5rem;
        width: 4.5rem;
    }

    #header-icon-container .icon-background {
        position: absolute;
        width: 8rem;
        height: 12rem;
        left: -2rem;
        top: -2.5rem;
        border-radius: 100%;
        background-color: white;
        z-index: 1;
    }

#header-column {
    display: flex;
    flex-direction: column;
    width: 100%;
}

#header-column div {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    width: 100%;
    height: 2.5rem;
    padding-left: 8rem;
}

#header-column .main {
    margin: 0.25rem 0;
    font-size: 2rem;
    color: white;
    text-decoration: none;
}

#header-column .main img {
    height: 2rem;
}
    
#header-column .main .main-small {
    font-size: 1.75rem;
}
    
#header-column .main .main-medium {
    font-family: Circular;
}

#header-column div:nth-child(2) {
    background-color: white;
}

nav {
    z-index: 1000;
}

.container {
    width: 100%;
}

header {
    z-index: 9;
}

a.navbar-brand {
    white-space: normal;
    text-align: center;
    word-break: break-all;
}

a {
  color: var(--colour-main24);
  /*font-weight: bold;*/
}

button, a.btn, .btn {
    border-radius: 0 !important;
    border: none;
}

.btn i.top-right {
    position: absolute;
    top: 12px;
    right: 4px;
    border: 2px solid var(--colour-main24);
}

.btn-primary {
  color: #fff !important;
  background-color:var(--colour-main24);
}

.btn-primary:hover {
  color: #fff;
  background-color: var(--colour-main24-dark);
  border-color: var(--colour-main24-dark);
}

.btn-primary:active {
  color: #fff;
  background-color: var(--colour-main24-dark) !important;
  border-color: var(--colour-main22-dark) !important;
}

.btn-primary:disabled {
    color: #ddd;
    background-color: var(--colour-main24-disabled) !important;
    border-color: var(--colour-main24-disabled) !important;
}

.btn-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.nav-item {
    cursor: pointer;
}

.sub-menu-container {

}

.sub-menu {
    display: flex;
    justify-content: center !important;
    background-color: var(--colour-main24) !important;
    align-items: center;
    font-size: 1rem;
    overflow-x: auto !important;
}

@media (max-width: 354px) {
    .sub-menu {
        justify-content: flex-start !important;
    }
}

.sub-menu.content {
    padding: 0;
}

    .sub-menu a {
        color: white;
        width: 130px;
        min-width: 68px !important;
        text-align: center;
        padding: 10px;
        position: relative;
    }

    .sub-menu a.selected:after, .sub-menu a.selected:before {
        content: '';
        
        background-color: white;
        position: absolute;
        
        bottom: 0;
        top: calc(100% - 8px);
    }

    .sub-menu a.selected:before {
        left: 10%;
        right: 50%;
        border-top-left-radius: 1rem;
    }

    .sub-menu a.selected:after {
        left: 50%;
        right: 10%;
        border-top-right-radius: 1rem;
    }

    .sub-menu a:hover {

        text-decoration: none;
        background-color: var(--colour-main24-dark);
    }

.log-out-logo {
    display: none !important;
}

.log-out-text {
    display: block !important;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
    font-size: 14px;
}
@media (min-width: 768px) {
  html {
    /*font-size: 16px;*/
  }
}

.border-top {
  border-top: 1px solid #e5e5e5;
}
.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
  font-size: 1rem;
  line-height: inherit;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
  position: relative;
  min-height: 100%;
}
    
body {
  /* Margin bottom by footer height */
  /*margin-bottom: 60px;*/
}
/*.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;*/ /* Vertically center the text there */
/*}*/

.alert {
    border-radius: 0;
    width: 100%;
    border: none;
    color: white;
}

.alert-danger {
    background-color: var(--danger-red);
}

.alert-info {
    background-color: #AAC1C5;
    color: black;
}

.alert-success {
    background-color: var(--success-green);
    /*background-color: rgba(212, 237, 218, 0.8);
    border-color: rgba(195, 230, 203, 0.8);*/
}

.alert-warning {
    background-color: var(--warning-yellow);
    color: black;
}

.close {
    display: inline-block;
    opacity: 1;
    color: black;
    text-shadow: none;
}

.form-backdrop {
    width: 90%;
    margin: 0 auto;
    padding: 8px 20px 16px 20px;
    background-color: rgba(255,255,255,0.5);
}

.form-backdrop.dark {
    background-color: rgba(0,0,0,0.8);
    color: white;
}

    .form-backdrop.dark i {
        color: black;
    }

.cascading-form {
    display: flex;
    flex-direction: column;
}

.horizontal-form {
    display: flex;
    flex-direction: row;
}

    .horizontal-form div {
        flex-grow: 1;
    }

.clean-input-group {
    position: relative;
    margin-bottom: 1rem;
}

    .clean-input-group i {
        color: black;
    }

    .horizontal-form .clean-input-group {
        margin-left: 1rem;
    }

    .horizontal-form .clean-input-group:first-child {
        margin-left: 0px;
    }

    .clean-input-group i.fas, .clean-input-group i.far {
        position: absolute;
        top: 10px;
        left: 0.75rem;
    }

.clean-input-group input[type=date] {
    text-align: right;
}

.clean-input-group input[type="date"]:before {
    color: lightgrey;
    content: attr(placeholder) !important;
    margin-right: 0.5em;
}

.clean-input-group.full {
    width: 100%;
}

.clean-input-group.half {
    width: 49.5%;
}

.clean-input-group.colour-input {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.clean-input-group.colour-input div {
    display: flex;
}

    .clean-input-group.colour-input span {
        padding-left: 0;
    }

@media(max-width: 534px) {
    .clean-input-group.half {
        width: 49%;
    }
}

/*.clean-input-check-group.half:nth-child(2n) {
    margin-right: 2.5%;
}

.clean-input-check-group.half:nth-child(2n+1) {
    margin-left: 2.5%;
}*/

.checkbox-group input {
    margin-left: 0.8rem;
    margin-right: 0.8rem;
}

.clean-input {
    width: 100%;
    /*background-color: lightyellow;*/
    border: none;
    border-bottom: 1px solid #cfcfcf;
    padding: 0.5rem;
    padding-left: 40px;
    height: 36px;
}

    .no-left-offset {
        padding-left: 16px !important;
    }

    .clean-input:focus {
        /*background-color: lightyellow;*/
        border: none !important;
        border-bottom: 1px solid #ddd !important;
    }

    .clean-input-group select:invalid {
        color: gray;
    }

    .clean-input-group select option:first-child {
        color: gray;
    }

    .clean-input-group select:invalid option:not(:first-child) {
        color: black;
    }

.clean-input-group span {
    width: 100%;
    padding-left: 40px;
}

.clean-input-group span.slider {
    width: auto;
    padding-left: 0;
}

    .clean-input-group span.error {
        color: red;
    }

    .clean-input-group span.valid {
        color: green;
    }

    .clean-input-group a.info {
        float: right;
        color: #2a2a2a;
    }

        .clean-input-group a.info span {
            width: auto;
        }

.clean-input.error {
    border-bottom-color: darkred;
}

.clean-input.valid {
    border-bottom-color: darkgreen;
}

.clean-input-check-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.clean-input-check-group label {
    /*min-width: 88px;*/
    padding-right: 8px;
}

.errors {
    background-color: rgba(255, 0, 0, 0.35);
    border: 1px solid rgba(135, 0, 0, 0.35);
    border-radius: 0.5rem;
    color: black;
    padding: 10px;
    margin-bottom: 16px;
}

    .errors ul {
        margin: 0;
    }

.gdm-nav {
    /*background: linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.5) 10%, rgba(0,0,0,0.35) 50%, rgba(0,0,0,0.5) 90%, rgba(0,0,0,0.8) 100%);
    backdrop-filter: blur(10px);*/
}

header.gdm-nav {
    /*border-bottom: 4px solid var(--colour-main20) !important;*/
    /*border-bottom: 4px solid var(--colour-main24) !important;*/
    display: flex;
    flex-direction: column;
}

    footer.gdm-nav {
        border-top: 4px solid var(--colour-main24) !important;
    }

    /*.gdm-nav a {
        color: var(--colour-main22) !important;
    }

    .gdm-nav a:hover {
        filter: brightness(0.8);
    }*/

.predict-banner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    background-color: #9a1032;
    justify-content: center;
    margin-bottom: 1rem;
}

    .predict-banner h2 {
        color: white;
    }

.nav-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    width: 120px;
    text-align: center;

    height: 40px;
}

    .nav-btn:hover {
        color: white;
        background-color: var(--colour-main22-dark);
        text-decoration: none;
    }

.nav-btn, .nav-divider {
    height: 32px;
}

.predict-banner-image {
    overflow: hidden;
    transform: rotate(20deg);
}

    .predict-banner-image img {
        transform: rotate(-20deg);
    }



/********************************************************
    HOME SYLING
********************************************************/
.match-container-row {
    display: flex;
    justify-content: center;
    /*border-bottom: 1px solid var(--colour-main22);*/
    padding-bottom: 1rem;
}

.match-container-col {
    border-bottom: 1px solid var(--colour-main22);
    padding-bottom: 8px;
}

    .match-container-col .gameweek-header {
        text-align: center;
        margin-bottom: 8px;
    }

.match-chunky {
    width: 100%;
    background: var(--colour-main24);
    /*background: linear-gradient(135deg, var(--colour-main24) 20%, rgba(13,30,98,1) 85%);*/
    display: flex;
    justify-content: space-between;
    padding: 0 1rem;
}

    .match-chunky .flag-icon {
        width: var(--flag-icon-width-lg) !important;
        max-height: var(--flag-icon-height-lg) !important;
    }

    .match-chunky span {
        display: flex;
        flex-direction: column;
        text-align: center;
        justify-content: center;
    }

    .match-chunky .score-col {
        font-weight: bold;
        justify-content: space-between;
        padding-bottom: 0.5rem;
    }

    .match-chunky .team-col {
        padding: 1rem 0;
    }

    .match-chunky .score {
        font-size: 1.25rem;
        justify-content: space-between;
    }

.gdm-card.stat {
    max-width: 400px;
    flex-grow: 1;
}

.stats-table {
    background-color: var(--colour-proto24-card);
}

    .stats-table .stats-row {
        display: flex;
        justify-content: space-between;
        border-bottom: 1px solid var(--colour-proto24-card);
    }

    .stats-table .stats-row:last-child {
        border-bottom: none;
    }

    .stats-table span {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .stats-table span:first-child {
        
    }

    .stats-table .scoreboard {
        min-height: 40px;
        flex-direction: row;
    }

    .stats-row {
        padding-left: 1rem;
    }

    .percentage-box, .percentage-box-descriptor {
        display: flex;
        padding: 1rem;
    }

    .percentage-box span {
        height: 40px;
        background-color: var(--colour-main24);
        text-align: center;
    }

    .percentage-box-descriptor {
        justify-content: space-between;
        font-weight: bold;
    }


.match-stats {
    width: 50%;
}

    .match-stats:first-child {
    }

    .match-stats:last-child {
        padding-left: 4px;
    }

.match-stats-col {
    width: 80%;
    margin: 0 auto;
    font-size: 0.8rem;
    margin-bottom: 1rem;
}

@media (max-width: 444px) {
    .match-stats {
        width: 100%;
        border-bottom: 1px solid var(--colour-main22);
    }

        .match-stats:first-child {
            border-right: none;
        }

        .match-stats:last-child {
            margin-top: 1rem;
        }

    .match-stats-col {
        width: 50%;
        min-width: 300px;
        font-size: 1rem;
    }
}

.match-stat-header, .match-stat-val {
    display: inline-block;
}

.match-stat-header {
    width: 60%;
}

.match-stat-val {
    width: 38%;
    text-align: right;
}

.match-stat-circle{
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center;
}

.team-details {
    width: calc(50% - 59px);
    display: flex;
    min-width: 124px;
}

    .team-details span {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .team-details.flex-end {
        justify-content: flex-end;
    }

#home-matches .details {
    border-bottom: 1px solid var(--colour-main26-bg);
}

#home-matches .details:last-child {
    border-bottom: none;
}

.scoreboard {
    background-color: white;
    color: black;
    display: flex;
    font-weight: bold;
    font-size: 1.25rem;
    min-height: 50px;
}

    .scoreboard span {
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .scoreboard span:nth-child(1), .scoreboard span:nth-child(3) {
        width: 50px;
    }

    .scoreboard span:nth-child(1) {
        text-align: right;
    }

    .scoreboard span:nth-child(2) {
        width: 10px;
    }

    .scoreboard span:nth-child(3) {
        text-align: left;
    }

.team-short {
    display: none !important;
}

@media (max-width: 452px) {
    .team-short {
        display: flex !important;
    }
    .team-long {
        display: none !important;
    }
}

@media (max-width: 428px) {
    .team-details {
        min-width: 0;
    }
}

@media (max-width: 785px) {
    .last24hrs {
        flex-grow: 1;
    }
}

.site-message {
    text-align: center;
    position: relative;
    background-color: #ddd !important;
    margin: 1rem 0;
}

    .site-message .dismiss {
        position: absolute;
        right: 1rem;
        bottom: 1rem;
        font-weight: bold;
    }


/********************************************************
    NOTIFICATION SYLING
********************************************************/
.notif-dot {
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0px;
    right: 0px;
    background-color: red;
    border-radius: 50%;
    color: white;
}

.notification {
    padding: 1rem 0;
    margin: 0 1rem;
    cursor: pointer;
    border-bottom: 1px solid #44474b;
    overflow-x: hidden;
}

.notification-container {
    position: relative;
}

.notification-badge {
    width: 16px;
    height: 16px;
    display:flex;
    justify-content: center;
    align-items: baseline;
    background-color: darkred;
    color: white;
    border-radius: 8px;
    font-weight: bold;
    font-size: xx-small;
    text-align: center;
    position: absolute;
    top: 2px;
    right: 6px;
}

.notify-drop-container {
    position: relative;
    z-index: 100;
}

.notify-drop {
    z-index: 100;
    position: absolute;
    left: 45%;
    -webkit-transform: translateX(-55%);
    transform: translateX(-55%);
    width: 320px;
    border-radius: 0.25rem;
    border: 0.5px solid #ccc;
    background-color: white;
}

.notification-scroll {
    /*max-height: 540px;*/
    overflow-y: auto;
}

.notification-footer {
    background-color: #e1e1e1;
    padding: 0 1rem;
}

    .notification-footer a {
    }

    /* width */
    .notify-drop::-webkit-scrollbar {
        width: 4px;
    }

    /* Track */
    .notify-drop::-webkit-scrollbar-track {
        background: #f1f1f1;
    }

    /* Handle */
    .notify-drop::-webkit-scrollbar-thumb {
        background: #888;
    }

    /* Handle on hover */
    .notify-drop::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

.friend-request .detail {
    display: flex;
    flex-direction: row;
    vertical-align: middle;
    padding-bottom: 8px;
}

.friend-request .action {
    display: flex;
    justify-content: space-evenly;
}

    .friend-request .btn {
        width: 40%;
    }

.friend-request-options {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

    .friend-request-options a:nth-child(1) {
        color: green !important;
        padding-right: .25rem;
    }

    .friend-request-options a:nth-child(2) {
        color: red !important;
        padding-left: .25rem;
    }



/********************************************************
    CONTENT PANE STYLING
********************************************************/
.main-pane {
    width: 100%;
    margin: 10px auto;
    padding: .5rem;
    backdrop-filter: blur(10px);
    position: relative;
}

.main-pane.dark {
    background-color: rgba(0,0,0,0.8);
    /*color: var(--colour-main20);*/
    color: white;
    min-width: 328px;
}

    .main-pane.dark .header {
        border-bottom: 1px solid var(--colour-main22);
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
    }

        .main-pane.dark .header h4 {
            flex-grow: 1;
            margin-bottom: 0;
        }

    .main-pane.dark .gdm-btn {
        background-color: none;
        /*border-radius: 1rem;*/
    }

    .main-pane.dark i {
        color: white;
    }

.notification-close {
    position: absolute;
    right: 0.5%;
    color: var(--colour-main22-dark);
    font-weight: bolder;
    cursor: pointer;
}

.split-pane {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.split-pane .main-pane {
    width: 47.5%;
    flex-grow: 1;
    min-width: 328px;
}

@media (max-width: 768px) {
    .split-pane .main-pane {
        width: 100%;
    }
}

.info-pane {
    width: 100%;
    margin: 10px auto;
    padding: .125rem .5rem;
    backdrop-filter: blur(10px);
}

.info-pane.dark {
    background-color: rgba(0,0,0,0.8);
    border-bottom: 4px solid var(--colour-main22);
    color: var(--colour-main22);
}

.profile-pane {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.profile-pane .prediction-pane {
    flex-grow: 3;
    min-width: 678px;
    height: 480px;/*
    border: 1px dashed red;*/

    /*margin-right: .25px;*/
}

.profile-pane .stats-pane {
    flex-grow: 1;
    min-width: 310px;
    height: 480px;/*
    border: 1px dashed blue;*/
    /*margin-left: .25px;*/
}

.profile-pane .prediction-pane, .profile-pane .stats-pane {
    display: flex;
    flex-direction: column;
}

.content-pane {
    width: 100%;
    /*display: flex;
    flex-direction: column;
    position: relative;*/
    
    /*min-height: 480px;*/
}


/********************************************************
    MATCH STYLING
********************************************************/
.match {
    font-weight: bold;
}

.match-sm {
    width: var(--match-sm-width);
    padding: 1rem 0;
    background-color: var(--colour-main26-navbar);
    /*border-radius: 0.5rem;*/
    color: white;

    display: flex;
    flex-direction: row;
    justify-content: space-evenly;

    min-height: 80px;
}

.mini-card.res0 {
    background-color: var(--colour-proto24-card);
}

    .match-sm.res3, .res3 {
        background-color: rgba(186,0,0,0.75);
        text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    }

    .match-sm.res1, .res1 {
        background-color: rgba(255,242,0,0.75);
        text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    }

    .match-sm.live {
        background-color: rgba(145,145,145,0.3);
    }

.match-sm .team-col, .match-sm .match-divider {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 33%;
}

.team-col .team-label {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.match-divider div {
    margin: auto 0;
}

.flag-icon {
    width: var(--flag-icon-width-sm);
    max-height: var(--flag-icon-height-sm);
}

.flag-icon-tiny {
    width: var(--flag-icon-width-xs);
    height: var(--flag-icon-height-xs);
    margin-bottom: 4px;
}

.prediction .flag-icon {
    width: var(--flag-icon-width);
    max-height: var(--flag-icon-height);
}

.match-border, .prediction-border {
    /*border-radius: 0.5rem;*/
    display: inline-block;
}

.match-border.blue, .prediction-border.blue {
    /*border: 1px solid var(--colour-main24);*/
}

.match-border.black, .prediction-border.black {
    border: 2px solid red;
}

upcoming-matches match-container-col {
    display: flex;
    flex-direction: column;
}

.flex-match-group {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

    .flex-match-group .match {
        margin: 0 4px;
        margin-top: 8px;
    }

#home-upcoming-matches {
    
}

#home-upcoming-matches .single {
    display: none;
}

.predictions-link {
    display: flex;
    justify-content: right;
    max-width: 766.4px;
    margin: 0 auto;
}

    .predictions-link a {
        font-weight: bold;
    }

@media (max-width: 411px) {
    /*#home-upcoming-matches .plural {
        display: none;
    }

    #home-upcoming-matches .single {
        display: block;
    }*/

    #nonfade.flex-match-group .match {
        margin-bottom: 8px;
    }
}

@media (max-width: 604px) {
    #nonfade.flex-match-group .match:nth-child(n+3) {
        display: none;
    }
}

@media (max-width: 828px) {
    #nonfade.flex-match-group .match:nth-child(n+4) {
        display: none;
    }
}



/********************************************************
    PREDICTION STYLING
********************************************************/

.gdm-card.predict {

}

.gdm-card.predict p {
    margin-bottom: 0.5rem;
}

.prediction-details {
    border-bottom: 1px solid var(--colour-main22);
    width: 100%;
    margin-bottom: 1rem;
    padding: .5rem;
    text-align: justify;
}

    .prediction-details p {
        margin-bottom: 0;
    }

.prediction-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.prediction-column {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    width: 100%;
    flex-direction: column;

    /*max-height: 600px;
    overflow-y: scroll;*/

    
}

.prediction, .prediction-stats {
    max-width: 640px;
    min-width: 320px;

    margin: 0 auto;
}

.prediction * {
    /*flex-grow: 1;*/
}

.prediction-scroll-limiter {
    max-height: 400px;
    overflow-y: scroll;
}

.prediction-container .gameweek-header:not(:first-of-type) {
    margin-top: 1rem;
}

h4.gameweek-header {
    margin-bottom: 0;
}

.gameweek-header {
    background-color: var(--colour-main24);
    color: white;
    padding: 4px 8px;
}

.gameweek-header .date {
    float: right;
}

.match-stat-column {
    flex-grow: 1;
}

.prediction-border {
    display: flex;
    flex-grow: 1;

    /*min-width: 320px;*/
}

    .prediction-border.black {
        max-width: 640px;
        min-width: 320px;

        margin-bottom: 1rem;
    }

    .prediction-border.black:last-child {
        margin-bottom: 0;
    }

.prediction {
    padding: 1rem 0 0.5rem 0;
    /*border-radius: 0.5rem;*/
    color: white;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    display: flex;
}

.prediction, .prediction-stats {
    background-color: var(--colour-proto24-card);
}

.prediction-input-container {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.prediction .team-col, .prediction .match-divider {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-grow: 1;
    justify-content: center;
}

.prediction input {
    width: 40px;
    height: 48px;
    text-align: center;
    font-family: Circular;
    font-size: 1.75rem;
}

.pred-stat-header {
    font-size: 1.2rem;
}

.column-pane {
    display: flex;
    flex-direction: column;
    background-color: rgba(0,0,0,0.7);
    padding-bottom: 1rem;
    /*border-radius: 0.5rem;*/
    color: white;
    flex-grow: 1;
}

    .column-pane.saved {
        background-color: var(--colour-proto24-card);
    }

    .column-pane.saved.bordered {
        border-bottom: 2px solid var(--colour-main24);
    }

.prediction-stats {
    display: flex;
    flex-direction: column;

    position: relative;
}

    .prediction-padding-bottom {
        padding-bottom: 1rem;
    }

/*.prediction-stats a {
    position: absolute;
    left: 95%;
}*/

.prediction-stats .saving, .prediction-stats .saved {
    display: flex;
    flex-direction: row;
    justify-content: end;
    vertical-align: middle;
    /*display: none;*/
}

    .prediction-stats .saving .loading-container, .prediction-stats .saving .tick-container {
        margin-top: 3px;
        margin-right: 8px;
        display: none;
    }

        .prediction-stats .saving .loading-container span, .prediction-stats .saving .tick-container span {
            line-height: 24px;
        }

    .prediction-stats .saving .label, .prediction-stats .saving .label {
        font-size: 16px;
        text-align: center;
        height: 24px;
    }

    .prediction-stats .saving i, .pred-stat-header .fa-circle-check {
        color: #00A656;
    }

.pred-stat-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

    .pred-stat-header div:first-child, .pred-stat-header div:last-child {
        flex-grow: 1;
        flex-basis: 0;
    }

    .pred-stat-header div:first-child {
        text-align: right;
    }

    .pred-location {
        text-align: center;
    }

.pred-stat-header div:first-child span {
    padding-right: 6px;
}

.pred-stat-header div:last-child span {
    padding-left: 6px;
}

.pred-stat-teamname, .pred-stat-header-divider span {
    /*border-bottom: 1px solid white;*/
}

.three-char-code {
    display: inline-block;
    width: 35px;
}

/*.pred-location {
    border-top: 1px solid white;
}*/

.pred-stat-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

    .pred-stat-row div:first-child, .pred-stat-row div:last-child {
        flex-grow: 1;
        flex-basis: 0;

        display: flex;
        justify-content: center;
    }

    .pred-stat-row .stat-header {
        font-weight: bold;
    }

    .pred-stat-row .stat-header-container {
        min-width: 144px;
        text-align: center;
    }

    .pred-stat-row div:first-child {
        text-align: left;
    }

    .pred-stat-row div:last-child {
        text-align: right;
    }

.save-prediction-btn {
    flex-grow: 1;
    height: 90px;
    width: 100%;

    font-size: 1.25rem;
    font-weight: bold;
    color: white;
    background-color: green;
    border: none;

    /*--save-btn-width: 200px;
    width: var(--save-btn-width);*/

    z-index: 101;
    position: sticky;
    bottom: 0;
    left: 0;
}

.save-prediction-btn:hover {
    filter: brightness(0.9);
}



/********************************************************
    LEAGUE STYLING
********************************************************/

.gdm-card.leagues table, .gdm-card2.leagues table {
    width: 100%;
    border: none;
}

    .gdm-card.leagues table thead {
        background-color: var(--colour-main24);
    }

    .gdm-card.leagues table th, .gdm-card.leagues table td {
        padding: 8px;
    }

    .gdm-card.leagues table tbody {
        background-color: #dfdfdf;
        color: black;
        max-height: 200px;
        overflow-y: scroll;
    }

    .gdm-card.leagues table .num-col, .leagues table .num-col {
        text-align: center;
        width: 72px;
    }

    .leagues table tbody tr {
        border-bottom: 1px solid var(--colour-main26-card);
    }

    .leagues table tbody tr td {
        padding: 1rem 0;
    }

.leagues .header {
    margin-bottom: 1rem;
    display: flex;
    width: 100%;
}

    .leagues .header div {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        justify-content: center;
    }

.leagues .header a.btn {
    width: 50px;
    height: 50px;
}

    .leagues .header a.btn span {
        display: flex;
        justify-content: center;
    }

.gdm-card.invite p {
    margin: 0;
}

.invite-code-banner {
    height: 32px;
    margin-bottom: 1rem;
    background-color: var(--colour-main24);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    color: white;
}

.league-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.league-column {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    width: 100%;
    flex-direction: column;
    max-width: 1080px;
    min-width: 320px;
}

.league-header {
    margin-bottom: 8px;
}

.league-list-table {
    margin-bottom: 2rem;
}

    .league-list-table tbody tr:nth-child(2n+1), .league-table tbody tr:nth-child(2n+1) {
        background-color: rgba(255, 255, 255, 0.85);
    }

    .league-list-table tbody tr:nth-child(2n), .league-table tbody tr:nth-child(2n) {
        background-color: rgba(255, 255, 255, 0.785);
    }

.league-list-table th {
    /*background-color: rgba(27, 160, 179, 0.75);*/
    background-color: var(--colour-main22);
}

.league-list-table thead tr th:first-child,
.league-list-table tbody tr td:first-child,
.league-table thead tr th:first-child,
.league-table tbody tr td:first-child{
    padding-left: 0.5rem;
}

.league-name-th, .league-name-td {
    width: 39%;
    min-width: 160px;
    overflow: hidden;
}

    .league-name-td span {
        float: right;
    }

.league-num-th, .league-num-td {
    width: 14%;
    text-align: center;
    /*border: 1px solid red;*/
}

.small-league-num-th, .v-small-league-num-th {
    display: none;
}

.small-league-name-td {
    display: none;
}

@media (max-width: 540px) {
    .normal-league-num-th {
        display: none;
    }

    .small-league-num-th {
        display: block;
    }

    .reg-league-name-td {
        display: none;
    }

    .small-league-name-td {
        display: block;
    }
}

@media (max-width: 460px) {
    .small-league-num-th {
        display: none;
    }

    .v-small-league-num-th {
        display: block;
    }
}

.league-num-td, .league-table .league-pos-td {
    color: black;
}

.table-container {
    /*max-height: 480px;
    overflow-y: auto;*/
    margin-bottom: 1rem;
}

    .table-container::-webkit-scrollbar, .prediction-scroll-limiter::-webkit-scrollbar, .sidebar .links::-webkit-scrollbar {
        width: 4px;
    }

    .table-container::-webkit-scrollbar-track, .prediction-scroll-limiter::-webkit-scrollbar-track, .sidebar .links::-webkit-scrollbar-track {
        background: #f1f1f1;
    }

    .table-container::-webkit-scrollbar-thumb, .prediction-scroll-limiter::-webkit-scrollbar-thumb, .sidebar .links::-webkit-scrollbar-thumb {
        background: #888;
    }

        .table-container::-webkit-scrollbar-thumb:hover, .prediction-scroll-limiter::-webkit-scrollbar-thumb:hover, .sidebar .links::-webkit-scrollbar-thumb:hover {
            background: #555;
        }

.league-table {
    width: 100%;
}

    .league-table th {
        /*background-color: rgba(27, 160, 179, 0.75);*/
        background-color: var(--colour-main22);
    }

.league-pos-th, .league-pos-td {
    width: 5%;
    text-align: center;
}

.league-table td, .league-table th, .league-list-table td, .league-list-table th {
    height: 32px;
}

.league-btn-container {
    display: flex;
    justify-content: center;
}

.league-btn-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 320px;
}

@media (max-width: 539px) {
    .league-btn-group {
        margin: .5rem 0;
    }
}

.settings-group .league-btn {
    width: 140px;
    font-size: 0.9rem;
}

.league-btn {
    width: 150px;
    height: 40px;
    margin-bottom: 0 !important;
}

.settings-link {
    color: var(--colour-main22);
}

.settings-link:hover {
    color: var(--colour-main22-dark);
}

.invite-link-banner {
    color: black;
    background-color: rgba(255, 255, 255, 0.85);
}

#player-row {
    background-color: #badee3;
}



/********************************************************
    GRID VIEW STYLING
********************************************************/
.grid-container {
    display: flex;
    flex-direction: row;
}

.match-defs {
    display: flex;
    flex-direction: column;
    height: 440px;
    overflow: hidden;
}

    .match-defs .match {
        margin: 2px;
    }

    .match-defs .match-sm {
        background-color: var(--colour-proto24-card);
    }

.match-col {
    display: flex;
    flex-direction: column;
    width: 188px !important;
}

.match-grid {
    display: flex;
    flex-direction: column;
    flex-grow: 1;

    flex-wrap: nowrap;
    overflow: hidden;
}

.usernames {
    height: 48px !important;

    display: flex;
    flex-wrap: wrap;
    flex-direction: column;

    overflow: hidden;
}

    .grid-un {
        width: 182px !important;
        overflow: hidden;
        height: 48px !important;
        margin: 2px;
        text-align: center;
    }

.matches {
    display: flex;
    flex-direction: column;

    height: 440px;
    overflow: scroll;
}

.matches, .grid-row {
    display: flex;
    flex-wrap: nowrap;
}

    .grid-row .match-border {
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        border: 2px solid var(--colour-proto24-card);
    }

/* width */
.matches::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

/* Track */
.matches::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */
.matches::-webkit-scrollbar-thumb {
    background: #888;
}

    /* Handle on hover */
    .match-grid::-webkit-scrollbar-thumb:hover {
        background: #555;
    }



/********************************************************
    PROFILE STYLING
********************************************************/
.gdm-card.profile2 .profile-picture {
    width: 72px;
    border-radius: 50%;
}

    .gdm-card.profile2 .profile-picture img {
        width: 100%;
    }

.gdm-card.profile2 .profile-name {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    margin: 0 8px;
}

    .gdm-card.profile2 .profile-name h3, .gdm-card .profile-name p {
        margin-bottom: 0;
        text-align: left;
    }

.gdm-card.profile2 .profile-controls, gdm-card.friend-list .profile-controls {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.gdm-card.profile2 a.btn {
    width: 50px;
    height: 50px;
}

.gdm-card.profile2 .stats {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    text-align: center;
}

    .gdm-card.profile2 .stats .group {
        display: flex;
        flex-direction: column;
        margin: 0 12px;
    }

#recent-predictions .match {
    margin-bottom: 8px;
}

.modal-dialog {
    /*margin-top: calc(50% - 75px);*/
    max-width: 720px;
}

.modal-header {
    background-color: var(--colour-main24);
    color: white;
    font-weight: bold;
    border-radius: 0;
}

.modal-content {
    /*background-color: var(--colour-proto24-card);*/
    background-color: var(--colour-main26-card);
    border-radius: 0;
    color: black;
}

.modal-body {
    padding-bottom: 0;
    font-size: 1.25rem;
    text-align: center;
}

.modal-footer {
    border-top: none;
}

.preference-group {
    display: flex;
    vertical-align: middle;
    margin-bottom: 0.5rem;
}

    .preference-group span {
        flex-grow: 1;
    }

.preference-caption-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 0.5rem;
}

    .preference-caption-group .preference-group {
        margin-bottom: 0;
    }

    .preference-caption-group .caption {
        color: #999;
    }

.gdm-card.friend-list .friend-request {
    border-bottom: 1px solid #44474b;
}

.gdm-card.friend-list .friend-request .detail {
    padding-top: 8px;
}

.profile {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.profile-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: center;
    max-width: 1080px;
    min-width: 320px;
    width: 100%;
}

.profile-column {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    width: 100%;
    flex-direction: column;
    max-width: 1080px;
    min-width: 320px;

    margin-bottom: 1rem;
}

.profile .header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    /*border: none !important;*/
    flex-wrap: wrap;
}

.profile-details-row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.profile-image-container {
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    margin-right: 8px;
}

.profile-details-row, .profile-stats-row {
    flex-grow: 1;
}

.profile-name-details {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

    .profile-name-details h2 {
        margin-bottom: 0;
    }

.profile-stats-row {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.profile-stats-row-collection {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    text-align: center;
    width: 240px;
}

.profile-stats-column-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-right: 8px;
}

    .profile-stats-column-container:last-child {
        margin-right: 0;
    }

.profile-split-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.profile-split-column {
    display: flex;
    flex-grow: 1;
    flex-direction: column;

    /*max-width: 540px;*/
    min-width: 340px;
}

/********************************************************
    ADMIN STYLING
********************************************************/
.admin-score {
    display: flex;
    flex-direction: row;
    align-content: center;
    width: 300px;
    justify-content: space-evenly;
}

    .admin-score div {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .admin-score input {
        width: 36px;
        height: 40px;
    }

    .admin-score label {
        margin-bottom: 0;
    }

.gdm-card.admin {

}

.gdm-card.admin form {
    max-width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.status {
    padding: 0.5rem;
    border: 2px solid white;
    font-weight: bold;
    text-transform: uppercase;
}

    .status.alive {
        background-color: var(--success-green);
    }

    .status.asleep {
        background-color: var(--warning-yellow);
    }

    .status.dead {
        background-color: #be0000;
    }

.editions-table {
    width: 100%;
}

.editions-table thead {
    background-color: var(--colour-main24);
    display: flex;
    font-size: 1.25rem;
    padding: 2px 4px;
}

.editions-table tbody {
    background-color: #dadada;
    color: black;
}

.editions-table tbody tr {
    height: 32px;
}

.editions-table tbody tr:nth-child(2n) {
    background-color: #c9c9c9;
}

.editions-table tbody tr td {
    padding: 0.5rem;
}

.editions-table .form-body {
    border-top: 1px solid black;
    background-color: #dadada;
}


/********************************************************
    SIDEBAR STYLING
********************************************************/

.sidebar {
    color: white;
    height: 100%;
    position: fixed;
    z-index: 10;
    transition: var(--sidebar-transition-time);
    
    top: 0;
    height: 100%;
    width: 300px;
    background: var(--colour-main26-navbar);
    overflow-x: hidden;

    display: flex;
    flex-direction: column;

    /*display: none;*/
}

#sidebar {
    left: -300px;
    overflow-x: hidden;
    border-right: 2px solid var(--colour-main24);
}

.links {
    padding: 1rem 0;
}

#notifications {
    border-left: 2px solid var(--colour-main24);
    left: 101%;
}

.wario {
    position: fixed;
    width: calc(100% - 300px);
    top: 0;
    height: 100%;
    display: none;
    z-index: 10;
}

#sidebar-wario {
    left: 299px;
}

#layersSidebar-wario {
    left: 399px;

}

#notifications-wario {
    left: 0;
}

#sidebar a, .sidebar .footer a {
    text-decoration: none;
    color: white;
    font-size: 1.25rem;
    padding: 0.5rem 5%;
    display: block;
}

    #sidebar a.disabled, .sidebar .footer a.disabled {
        color: grey;
    }

    #sidebar a i {
        width: 20px;
        text-align: center;
    }

.sidebar .footer {
    width: 90%;
    padding: 1rem 0;
    border-top: 0.5px solid #44474b;
    margin: 0 auto;
}



@media (min-width: 1080px) {
    #sidebar {
        /*left: 0;
        width: 300px;*/
    }

    /*#burger {
        pointer-events: none;
        opacity: 0;
    }*/

    .container, header {
        /*padding-left: 315px;*/
    }

        main, header .content, footer .container {
            /*margin-left: 250px;*/
        }

    .wario {
        display: none;
    }
}



@media (min-width: 1280px) {
    #upcoming-matches-card {
        background-color: var(--colour-proto24-bg);
        position: fixed;
        top: 0;
        left: calc(100% - 300px);
        width: 300px;
        min-width: 300px;
        z-index: 9;
        height: 100%;
        padding: 0;
        border-left: 2px solid var(--colour-main24);
        display: flex;
        flex-direction: column;

        display: none;
    }

        #upcoming-matches-card h3 {
            color: white;
            font-weight: bold;
            text-align: center;
            width: 90%;
            padding: 1rem 0;
            border-bottom: 0.5px solid #44474b;
            margin: 0 auto;
            display: flex;
            vertical-align: middle;
            justify-content: center;
            height: 68px;
        }

    .container, header {
        /*padding-right: 315px;*/
    }

    /*.upcoming-matches, #nonfade {
        flex-direction: column;
    }*/

    .upcoming-matches {
        flex-direction: column;
        justify-content: flex-start;
        flex-grow: 1;
    }

    .predictions-link {
        width: 90%;
        padding: 1rem 0;
        border-top: 0.5px solid #44474b;
        margin: 0 auto;
    }

        .predictions-link a {
            text-decoration: none;
            color: white;
            font-size: 1.25rem;
            padding: 0.5rem 5%;
            display: block;
            font-weight: normal;
        }


#notifications {
    width: 300px;
}
    /*#notification-btn {
        display: none;
    }

    #notifications {
        left: calc(100% - 300px);
        width: 300px;
    }*/
}

@media screen and (max-height: 450px) {
        .sidebar a {
            font-size: 18px;
        }
}


/********************************************************
    UI ELEMENT STYLING
********************************************************/

.gdm-card2 .btn-group-lg {
    text-align: center;
}

.gdm-btn {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;

    --btn-width: 100px;
    color: white;
    background-color: var(--colour-main24);
    border: 1px solid var(--colour-main24);
    cursor: pointer;
    text-align: center;

    min-width: var(--btn-width);
    margin-bottom: .5rem;
}

    .gdm-btn:hover {
        filter: brightness(1.1);
    }

    .gdm-btn:active {
        filter: brightness(1.0);
        background-color: #030414;
        border-color: var(--colour-main22-dark);
        color: var(--colour-main22-dark);
    }

    .gdm-btn.disabled {
        pointer-events: none;
        background-color: #6d82d7;
        color: white !important;
    }

.gdm-btn.sent {
    background-color: lawngreen;
    /*border-color: green;*/
    border: none;
    color: green;

    cursor: default;
}

    .gdm-btn.sent:hover {
        filter: brightness(1.0);
    }

    .gdm-btn.sent:active {
        filter: brightness(1.0);
        background-color: lawngreen;
        border-color: green;
        color: green;
    }

.gdm-btn.accept {
    background-color: lawngreen;
    /*border-color: green;*/
    border: none;
    color: green;
}

    .gdm-btn.accept:active {
        background-color: #6bd900;
    }

.gdm-btn.reject {
    background-color: indianred;
    /*border-color: darkred;*/
    border: none;
    color: darkred;
}

    .gdm-btn.reject:active {
        background-color: #ad4949;
    }

.kit-display-container {
    --kit-display-dimensions-max: 188px;
    width: var(--kit-display-dimensions-max);
    height: var(--kit-display-dimensions-max);
    background-color: white;
    display: flex;
    padding: 10px;
}

.kit-display {
    width: 100%;
    height: 100%;
    background-color: #333;
    border: 4px solid gray;
    position: relative;
    overflow: hidden;
}

    .kit-display .primary {
        height: 75%;
        width: 100%;
        background-color: darkred;
        position: absolute;
    }

    .kit-display .stripes, .kit-display .pin-stripes, .kit-display .hoops {
        width: 100%;
        height: 75%;
        position: absolute;
        display: flex;
        justify-content: space-evenly;

        display: none;
    }

    .kit-display .hoops {
        flex-direction: column;
    }

    .kit-display .stripes div {
        width: 15%;
        height: 100%;
        background-color: white;
    }

    .kit-display .pin-stripes div {
        width: 2px;
        height: 100%;
        background-color: white;
    }

    .kit-display .hoops div {
        width: 100%;
        height: 15%;
        background-color: white;
    }

    .kit-display .stripe-single {
        height: 75%;
        width: 40%;
        left: 30%;
        background-color: white;
        position: absolute;

        display: none;
    }

    .kit-display .hoop-single {
        height: 35%;
        top: 20%;
        width: 100%;
        background-color: yellow;
        position: absolute;

        display: none;
    }

    .kit-display .highlights {
        background-color: white;
        position: absolute;

        display: none;
    }

    .kit-display .highlights.top {
        height: 2.5%;
        width: 25%;
    }

    .kit-display .highlights.top.left {
        border-radius: 0 0 1rem 0;
    }

    .kit-display .highlights.top.right {
        border-radius: 0 0 0 1rem;
    }

    .kit-display .highlights.left {
        left: 0;
    }

    .kit-display .highlights.right {
        right: 0;
    }

    .kit-display .highlights.side {
        width: 20%;
        height: 40%;
        bottom: 25%;
    }

    .kit-display .highlights.side.left {
        left: -12.5%;
        bottom: -10%;
        height: 80%;
        transform: rotate(-10deg);
    }

    .kit-display .highlights.side.right {
        right: -12.5%;
        bottom: -10%;
        height: 80%;
        transform: rotate(10deg);
    }

    .kit-display .sash {
        width: 160%;
        height: 35%;
        top: 18%;
        left: -38%;
        transform: rotate(35deg);
        background-color: darkblue;
        position: absolute;

        display: none;
    }

    .kit-display .shorts {
        bottom: 0;
        height: 25%;
        width: 100%;
        background-color: black;
        position: absolute;
    }

/* The switch - the box around the slider */
.switch {
    font-size: 17px;
    position: relative;
    display: inline-block;
    width: 31px;
    height: 18px;
    margin: 0;
}

    /* Hide default HTML checkbox */
    .switch input {
        opacity: 1;
        width: 0;
        height: 0;
    }

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0px;
    background: #fff;
    transition: .4s;
    border-radius: 30px;
    border: 1px solid #ccc;
}

    .slider:before {
        position: absolute;
        content: "";
        height: 1em;
        width: 1em;
        border-radius: 16px;
        left: 1.2px;
        top: 0;
        bottom: 0;
        background-color: white;
        box-shadow: 0 2px 5px #999999;
        transition: .4s;
    }

input:checked + .slider {
    background-color: #5fdd54;
    border: 1px solid transparent;
}

    input:checked + .slider:before {
        transform: translateX(.75em);
    }

.profile-fr-response-container {
    display: flex;
    width: 323px;
    justify-content: flex-end;
}

.section-header {
    text-decoration: underline;
}

.friend-btn-container {
    flex-grow: 1;
}

.friend-container {
    display: flex;
    justify-content: space-between;
}

.circle-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.circle {
    width: 1rem;
    height: 1rem;
    border-radius: .5rem;
    /*flex-grow: 1;
    flex: 1;*/
}

    .circle.online {
        background-color: forestgreen;
    }

    .circle.offline {
        background-color: darkred;
    }

    .circle.correct {
        background-color: rgba(186,0,0,0.6);
    }

    .circle.partial {
        background-color: rgba(255,242,0,0.6);
    }

    .circle.wrong {
        background-color: lightgrey;
    }

th {
    font-weight: normal;
}

.margin-bottom-sm {
    margin-bottom: 8px;
}

.corners-sharp {
    border-radius: 0 !important;
}

.no-border {
    border: none !important;
}

.no-margin {
    margin: 0;
}

.no-min-height {
    min-height: 0 !important;
}

.no-center {
    justify-content: flex-start !important;
}

.hidden {
    display: none;
}

.default-border-top {
    border-top: 1px solid var(--colour-main22);
}

.physical-margin-sm {
    width: 100%;
    height: 8px;
}

.highlighter {
    color: var(--colour-main24);
    font-weight: bold;
}

input:disabled {
    background-color: rgb(170, 170, 170);
}

.loading {
    display: inline-block;
    width: 17.5px;
    height: 17.5px;
    border: 3px solid rgba(255,255,255,.3);
    border-radius: 50%;
    border-top-color: #fff;
    animation: spin 1s ease-in-out infinite;
    -webkit-animation: spin 1s ease-in-out infinite;
}

    .loading.lg {
        width: 30px;
        height: 30px;
        border: 4px solid rgba(255,255,255,.3);
        border-top-color: #fff;
    }

.pred-stat-header .loading-container, .pred-stat-header .tick-container {
    float: right;
    margin-right: 8px;
    display: none;
}

@keyframes spin {
    to {
        -webkit-transform: rotate(360deg);
    }
}

@-webkit-keyframes spin {
    to {
        -webkit-transform: rotate(360deg);
    }
}

.faux-link {
    color: #007bff !important;
}

    .faux-link:hover {
        color: #0056b3 !important;
        text-decoration: underline !important;
        cursor: pointer;
    }

    .faux-link.disabled {
        color: #222 !important;
        text-decoration: none !important;
        cursor: not-allowed;
    }

.fa-outline {
    color: #c7f6ff;
    text-shadow: rgb(32, 40, 90) 4px 0px 0px, rgb(32, 40, 90) 3.87565px 0.989616px 0px, rgb(32, 40, 90) 3.51033px 1.9177px 0px, rgb(32, 40, 90) 2.92676px 2.72656px 0px, rgb(32, 40, 90) 2.16121px 3.36588px 0px, rgb(32, 40, 90) 1.26129px 3.79594px 0px, rgb(32, 40, 90) 0.282949px 3.98998px 0px, rgb(32, 40, 90) -0.712984px 3.93594px 0px, rgb(32, 40, 90) -1.66459px 3.63719px 0px, rgb(32, 40, 90) -2.51269px 3.11229px 0px, rgb(32, 40, 90) -3.20457px 2.39389px 0px, rgb(32, 40, 90) -3.69721px 1.52664px 0px, rgb(32, 40, 90) -3.95997px 0.56448px 0px, rgb(32, 40, 90) -3.97652px -0.432781px 0px, rgb(32, 40, 90) -3.74583px -1.40313px 0px, rgb(32, 40, 90) -3.28224px -2.28625px 0px, rgb(32, 40, 90) -2.61457px -3.02721px 0px, rgb(32, 40, 90) -1.78435px -3.57996px 0px, rgb(32, 40, 90) -0.843183px -3.91012px 0px, rgb(32, 40, 90) 0.150409px -3.99717px 0px, rgb(32, 40, 90) 1.13465px -3.8357px 0px, rgb(32, 40, 90) 2.04834px -3.43574px 0px, rgb(32, 40, 90) 2.83468px -2.82216px 0px, rgb(32, 40, 90) 3.44477px -2.03312px 0px, rgb(32, 40, 90) 3.84068px -1.11766px 0px, rgb(32, 40, 90) 3.9978px -0.132717px 0px;
}



/********************************************************
    MOBILE STYLING
********************************************************/
.d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
}

@media (max-width: 605px) {
    .log-out-logo {
        display: inline-block !important;
    }

    .log-out-text {
        display: none !important;
    }
}

@media (max-width: 576px) {
    body header nav .container {
        flex-direction: column;
    }

    .header {
        margin: 0;
    }
}

/*@media (max-width: 1268px) {
    .container {
        width: 92.5%;
    }
}*/

@media (max-width: 768px) {
    .container {
        padding: 0px;
        /*padding-top:8px;*/
    }

    .gdm-nav {
        margin-bottom: 0 !important;
    }

    .notify-drop {
        position: absolute;
        left: 0;
        right: 0;
        /*width: 100%;*/
        border-radius: 0.25rem;
        border: 0.5px solid #ccc;
        background-color: white;
    }
}

@media (max-width: 618px) {
    .match-container-row {
    }

    .match-group {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
    }
    
    .match-border {
    }
}

@media (max-width: 517px) {
    .league-btn-group {
        flex-grow: 1;
        justify-content: center;
    }

        .league-btn-group button {
            margin-right: 8px;
        }

        .league-btn-group button:last-child {
            margin-left: 8px;
        }
}

/*  PROFILE  */
@media (max-width: 466px) {
    .profile-fr-response-container {
        flex-grow: 1;
        justify-content: flex-start;
    }

    .profile-fr-response-container button {
        justify-self: flex-end;
    }
}

@media (max-width: 564px) {
    .profile-details-row, .profile-stats-row {
        /*width: 100%;*/
        justify-content: center;
    }

    .profile-stats-row {
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 100% !important;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 100% !important;
    }
}

@media (min-width: 576px) {
    .container {
        max-width: 100% !important;
    }
}