/*--------------------------------------------------------------------------------------------------
General page code
--------------------------------------------------------------------------------------------------*/
    /*-------------------------------------------------
    General overall page
    -------------------------------------------------*/
        body {
            margin: 0%;
            font-family: sans-serif;
            background-color: #e9e9e9;
        }
        @media print {
            .header, .menu, .footer {
                display: none;
            }
            * {
                font-family: serif;
            }
            body {
                background: none;
            }
        }
    /*-------------------------------------------------
    Header
    -------------------------------------------------*/
        div.top {
            background: white;
        }
        div.header {
            width: 960px;
            margin-right: auto;
            margin-left: auto;
            color: #093;
            padding: 20px;
            cursor: pointer;
        }
        div.header h1 {
            margin: 0px;
        }
    /*-------------------------------------------------
    Menu
    -------------------------------------------------*/
        div.menu {
            background: #093;
        }
        div.menu-items {
            width: 960px;
            margin-right: auto;
            margin-left: auto;
        }
        div.menu div.menu-item {
            display: none;
            padding: 20px;
            font-size: 20px;
            border-right: 1px solid white;
        }
        div.menu-item:first-child {
            border-left: 1px solid white;
        }
        div.menu a {
            color: white;
            text-decoration: none;
        }
    /*-------------------------------------------------
    Main content
    -------------------------------------------------*/
        div.main-content {
            width: 960px;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 68px;
        }
        h2.page-title {
            margin-top: 20px;
            margin-bottom: 10px;
            font-size: 24px;
            font-weight: bold;
            color: #093;
        }
        /*-------------------------------------------------
        Cards
        -------------------------------------------------*/
            div.card {
                box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
                margin-bottom: 20px;
                padding: 0px;
                font-size: initial;
                border-radius: 0px;
            }
            div.card-header {
                background: #dcf0e2;
                padding: 10px;
                display: inline-block;
            }
            div.card.blue div.card-header {
                background: #00669925;
            }
            div.card.red div.card-header {
                background: #ff224425;
            }
            h2.card-title {
                margin: 0px;
                font-size: 1.2em;
                display: inline-block;
                color: #093;
            }
            div.card.blue h2.card-title {
                color: #069;
            }
            div.card.red h2.card-title {
                color: #f24;
            }
            div.card-contents {
                padding: 15px;
                font-size: 0.8em;
                font-family: serif;
            }
            a.card-link, a.card-link:hover {
                color: initial;
                text-decoration: none;
                font-size: 0px;
            }
        /*-------------------------------------------------
        Buttons
        -------------------------------------------------*/
            button.button {
                border: none;
                background: #093;
                color: white;
                box-shadow: 0 2px 5px 0 rgba(120,120,120,.4);
                font-size: 20px !important;
                margin-left: 20px !important;
                padding: 5px 15px 5px 15px;
            }
            button.button-white {
                color: #093;
                background: white;
            }
            button.button-blue {
                background: #069;
            }
        /*-------------------------------------------------
        General Stuff
        -------------------------------------------------*/
            .align-right {
                text-align: right;
            }
            p.no-margin {
                margin: 0px;
            }
            div.actions {
                float: right;
                margin-top: -48px;
            }
            p:last-child {
                margin-bottom: 0px;
            }
            .monospace {
                font-family: monospace;
            }
            .margin-bottom {
                margin-bottom: .5rem;
            }
    /*-------------------------------------------------
    Footer
    -------------------------------------------------*/
        div.footer {
            position: fixed;
            width: 100%;
            top: calc(100vh - 34px);
            background-color: #093;
            color: white;
            padding: 10px;
            z-index: 10000000;
        }
        div.footer h2 {
            margin: 0px;
            font-size: 12px;
            display: inline;
        }
        div.footer a {
            color: white;
        }
        div.footer-links {
            float: right;
            font-size: 12px;
            line-height: 1.2em;
        }
        div.footer-links span {
            margin-left: 10px;
        }
        div.footer-links span::before {
            margin-right: 10px;
            content: '|';
        }
        div.footer-links span:first-child::before {
            content: '';
        }
    /*-------------------------------------------------
    Material Icons
    -------------------------------------------------*/
        /* fallback */
        @font-face {
            font-family: 'Material Icons';
            font-style: normal;
            font-weight: 400;
            src: url(/static/lib/materialicons/materialicons.woff2) format('woff2');
        }
        .material-icons {
            font-family: 'Material Icons';
            font-weight: normal;
            font-style: normal;
            font-size: 24px;
            line-height: 1;
            letter-spacing: normal;
            text-transform: none;
            display: inline-block;
            white-space: nowrap;
            word-wrap: normal;
            direction: ltr;
            -webkit-font-feature-settings: 'liga';
            -webkit-font-smoothing: antialiased;
        }
/*--------------------------------------------------------------------------------------------------
Problem Page
--------------------------------------------------------------------------------------------------*/
    /* For sample data */
    div code {
        background-color: #eee;
        color: black;
        display: block;
        padding: 10px;
        max-height: 305px;
        overflow: auto;
        white-space: nowrap;
    }
    div.samples div.col-6:first-child {
        padding-left: 10px;
        padding-right: 5px;
    }
    div.samples div.col-6:last-child {
        padding-left: 5px;
        padding-right: 10px;
    }
    /* For drag-n-drop */
    .ui-state-highlight {
        margin-bottom: 20px;
        border: 1px solid #093;
        background: repeating-linear-gradient(135deg, #eef8f1 0%, #eef8f1 5px, #dcf0e2 5px, #dcf0e2 10px);
        border-radius: 5px;
    }
    div.problem-description div.card-header {
        cursor: move;
    }
    /*-------------------------------------------------
    Code Editor
    -------------------------------------------------*/
        select.language-picker {
            float: right;
        }
        div.code-editor div.ace-editor-wrapper {
            width: 100%;
            min-height: 400px;
        }
        div.code-editor div.ace-editor {
            width: 100%;
            min-height: 400px;
        }
    /*-------------------------------------------------
    Print view
    -------------------------------------------------*/
    @media print {
        div.card {
            border: none;
        }
        div.card-header {
            padding: 0px;
        }
        div.card-contents {
            padding: 0px;
            font-size: 13pt;
        }
        div.samples div.card-contents {
            padding-left: 5px;
            padding-right: 5px;
        }
        div.code-editor {
            display: none;
        }
    }
    /*-------------------------------------------------
    Results Card
    -------------------------------------------------*/
        .card.results {
            margin-top: 20px;
        }
        .card.results .results-pending {
            text-align: center;
            color: #093;
        }
        .card.results h4 {
            font-size: 1em;
            font-weight: 900;
            margin-top: 5px;
        }
        ul.ui-tabs-nav.ui-corner-all.ui-helper-reset.ui-helper-clearfix.ui-widget-header {
            background: white;
            border: none;
            border-bottom: 1px solid #ccc;
            border-radius: 0px;
            padding: 0px;
        }
        
        div#result-tabs {
            border: none;
            padding: 0px;
        }
        
        .ui-tabs .ui-tabs-panel {
            padding: 0px;
        }
        
        li.ui-tabs-tab.ui-corner-top.ui-state-default.ui-tab {
            border-radius: 0px;
            background: #eee;
            border-color: #ccc;
        }
        
        li.ui-tabs-tab.ui-corner-top.ui-state-default.ui-tab a {
            color: #888;
        }
        
        li.ui-tabs-tab.ui-corner-top.ui-state-default.ui-tab.ui-tabs-active.ui-state-active {
            border-radius: 0px;
            background: #dcf0e2;
            border-color: #b4e0c0;
        }
        
        li.ui-tabs-tab.ui-corner-top.ui-state-default.ui-tab.ui-tabs-active.ui-state-active a {
            color: #093;
        }
        .fa-check {
            color: #093;
        }
        .fa-times, .fa-clock, .fa-exclamation-triangle {
            color: #f24;
        }
        div.pad {
            padding: 15px;
        }
/*--------------------------------------------------------------------------------------------------
Login Page
--------------------------------------------------------------------------------------------------*/
    .login-box {
        box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
        margin-top: 100px;
        margin-left: auto;
        margin-right: auto;
        max-width: 300px;
        background: #dcf0e2;
        padding: 30px;
    }
    .login-header {
        color: #093;
        text-align: center;
        width: 100%;
    }
    .login-box input {
        margin-bottom: 10px;
    }
/*--------------------------------------------------------------------------------------------------
Users Page
--------------------------------------------------------------------------------------------------*/
    div.row.user-cards {
        margin: -5px;
        margin-top: 15px;
    }
    div.col-3 {
        padding-right: 5px;
        padding-left: 5px;
    }
    div.delete-link {
        float: right;
        color: #093;
        cursor: pointer;
    }
    div.card.blue div.delete-link {
        color: #069;
    }
    div.card.red div.delete-link {
        color: #f24;
    }
    .username-hidden {
        display: none;
    }
    /*-------------------------------------------------
    Print view
    -------------------------------------------------*/
    @media print {
        button {
            display: none;
        }
        h2.page-title {
            color: black;
        }
        .card .card-header, div.card.blue div.card-header {
            background: white;
        }
        .card h2, div.card.blue h2.card-title {
            color: black;
        }
        div.delete-link {
            display: none;
        }
        .username-hidden {
            display: inline;
        }
        .user-cards div.card-header {
            font-size: 12.8px;
            border-bottom: none;
            margin-bottom: -20px;
        }
        .user-cards div.card-header h2 {
            font-size: 12.8px;
            margin: -3px;
        }
    }

/*--------------------------------------------------------------------------------------------------
Problem Edit Page
--------------------------------------------------------------------------------------------------*/
    .CodeMirror {
        min-height: 100px;
    }
    .CodeMirror-scroll {
        min-height: 100px;
        height: 100px;
    }
    .CodeMirror-cursor {
        font-size: 0px;
    }
    span[cm-text] {
        font-size: 0px;
    }

/*--------------------------------------------------------------------------------------------------
Leaderboard Page
--------------------------------------------------------------------------------------------------*/
    table {
        box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
        width: 100%;
        background-color: white;
    }
    thead {
        border-bottom: 2px solid #b4e0c0;
        background-color: #dcf0e2;
        color: #093;
    }
    tr {
        border-bottom: 1px solid #ccc;
    }
    tr:nth-child(2n) {
        background-color: #f4f4f4;
    }
    td, th {
        padding: 15px;
    }
    td.center, th.center {
        text-align: center;
    }

/*--------------------------------------------------------------------------------------------------
Leaderboard Page
--------------------------------------------------------------------------------------------------*/
    h1.center {
        width: 100%;
        text-align: center;
        color: #093;
    }
    h1.jumbotron {
        font-size: 300px;
        background: none;
        padding-bottom: 0px;
        line-height: 300px;
    }

/*--------------------------------------------------------------------------------------------------
FAQ Page
--------------------------------------------------------------------------------------------------*/
    .qa-question::before {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f0d7  ";
        cursor: pointer;
    }
    .qa-question.collapsed::before {
        content: "\f0da  ";
    }
    .faq {
        padding-bottom: 10px;
    }
    .qa-question {
        cursor: pointer;
    }

/*--------------------------------------------------------------------------------------------------
Messages Page
--------------------------------------------------------------------------------------------------*/
    div.message-alerts {
        margin-left: auto;
        margin-right: auto;
        width: 960px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

