﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

/* Provide sufficient contrast against white background */
a {
    color: #0366d6;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

/* 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 */
    padding-top: 66px;
    margin-bottom: 60px;
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    white-space: nowrap;
    line-height: 60px; /* Vertically center the text there */
}

/*
    App specific
*/

@font-face {
    font-family: "prometo";
    src: url("fonts/Prometo W02 Regular.ttf");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "prometo";
    src: url("fonts/Prometo W04 Italic.ttf");
    font-weight: normal;
    font-style: italic;
}

:root {
    --alert-red: #ff0000;
    --background: #f4f4f4;
    --glue-blue: #030837;
    --glue-green: #61eb68;
    --glue-half-blue-green: #2f7118;
    --highlight: #ffe000;
    --neutral: #b9b9b9;
    --insert: #92d050;
    --remove: lightcoral;
    --glue-staging: #6C4D4C;
}

body {
    font-family: "prometo";
    background-color: var(--background);
}

.row-insert {
    background-color: var(--insert);
    cursor: pointer;
    text-align: center;
}

.row-remove {
    background-color: var(--remove);
    cursor: pointer;
    text-align: center;
}

.column-insert {
    background-color: var(--insert);
    cursor: pointer;
    text-align: center;
    border: none;
}

.column-remove {
    background-color: var(--remove);
    cursor: pointer;
    text-align: center;
    border: none;
}

.header {
    border: none;
    text-align: center;
}

.header-input {
    border: none;
    width: 128px;
    font-weight: bold;
}

    .header-input:focus {
        outline-width: 0;
    }


/*.nav-item {
    text-transform: uppercase;
}*/

/* Buttons */
.btn-full {
    font-weight: bold;
    width: 90px;
    height: 30px;
    padding: 2px;
    margin: 0 2px 8px 0;
}

.btn-full-180 {
    font-weight: bold;
    width: 180px;
    height: 30px;
    padding: 2px;
    margin: 0 2px 8px 0;
}

.btn-full-120 {
    font-weight: bold;
    width: 120px;
    height: 30px;
    padding: 2px;
    margin: 0 2px 8px 0;
}

.btn-icon {
    margin: 0 2px 8px 0;
    width: 48px;
    height: 30px;
    float: right;
}

/* Centralise the loading spinner */
#loading {
    width: 6rem;
    height: 6rem;
    display: block;
    position: fixed;
    z-index: 10000;
    top: calc(50% - (6rem / 2) );
    right: calc(50% - (6rem / 2) );
}

/* Matrix layout */
.left-middle {
    margin-left: -200px;
    width: 400px;
    text-align: center;
    position: relative;
    left: 10px;
    top: 50%;
    line-height: 0;
}

.right-middle {
    margin-left: -210px;
    width: 400px;
    text-align: center;
    position: relative;
    left: 10px;
    top: 50%;
    line-height: 0;
}

.outer {
    width: 30px;
    height: 140px;
    position: relative;
    display: inline-block;
    padding-left: 20px !important;
}

.inner {
    display: inline-block;
    white-space: nowrap;
    font-weight: bold;
}

.left-rotate {
    transform: rotate(-90deg);
}

.right-rotate {
    transform: rotate(90deg);
}

/* TR images */
.tr-disabled {
    opacity: 0.5;
}

.tr-hidden {
    display: none;
    cursor: pointer;
}

.tr-btn {
    cursor: pointer;
}

.tr-blank {
    cursor: no-drop;
}

/* Charts */
.chart {
    height: 500px;
}

.card-chart-body {
    padding: 0rem 0rem 1.25rem 0rem;
}

/* Validation Summary format */
.validation-summary ul {
    list-style: none;
    padding-left: 0;
}

/* Following on from boostrap display-[1-4] */
.display-5 {
    font-size: 2.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-6 {
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-7 {
    font-size: 0.5rem;
    font-weight: 300;
    line-height: 1.2;
}

/* Prevent navbar hiding heading of pages */
.container-main {
    margin-top: 16px;
}

/* Allow multiple error messages one per line */
span.field-validation-error {
    white-space: pre-line;
}

/* Navigation */
/* background: linear-gradient(20deg, var(--glue-blue) 0%, var(--glue-blue) 40%, var(--glue-green) 100%); */
.navbar, .footer, .dropdown-menu {
    background-color: var(--glue-staging) !important;
}

.dropdown-menu {
    margin-top: 6px;
    margin-bottom: 8px;
}

.footer {
    color: var(--background);
}

.nav-link {
    color: var(--background);
    background-color: transparent !important;
}

a.nav-link {
    color: white !important;
}

    a.nav-link:hover {
        color: var(--glue-green) !important;
    }

a.active {
    background-color: red !important;
}

.fa-bars {
    color: var(--background);
}

    .fa-bars:hover {
        color: var(--glue-green);
    }

button.navbar-toggler {
    outline: none;
}

.dropdown-menu {
    border: none;
}

.nav-tabs > .nav-link {
    background-color: white;
    color: black;
}

.btn-label {
    cursor: pointer;
}

.btn {
    text-transform: uppercase;
}

.btn-add {
    color: var(--glue-blue) !important;
    background-color: var(--glue-green) !important;
}

    .btn-add:hover {
        color: white !important;
    }

.btn-activity {
    color: var(--glue-blue) !important;
    background-color: var(--glue-green) !important;
}

    .btn-activity:hover {
        color: white !important;
    }

.btn-approve {
    color: white !important;
    background-color: var(--glue-blue) !important;
}

    .btn-approve:hover {
        color: var(--glue-green) !important;
    }

.btn-back {
    color: var(--glue-blue);
    background-color: white !important;
}

    .btn-back:hover {
        color: var(--glue-green) !important;
    }

.btn-cancel {
    color: var(--glue-green) !important;
    background-color: transparent !important;
    border: 1px solid var(--glue-green);
}

    .btn-cancel:hover {
        color: white !important;
    }

.btn-chart {
    color: var(--glue-blue) !important;
    background-color: var(--highlight) !important;
}

    .btn-chart:hover {
        color: white !important;
    }

.btn-clear {
    color: var(--glue-blue);
    background-color: var(--highlight);
}

    .btn-clear:hover {
        color: white !important;
    }

.btn-close-modal {
    color: var(--glue-green) !important;
    background-color: transparent !important;
    border: 1px solid var(--glue-green);
}

    .btn-close-modal:hover {
        color: white !important;
    }

.btn-close-x-modal {
    color: var(--glue-green) !important;
    background-color: var(--glue-blue) !important;
}

.btn-close-modal-x:hover {
    color: var(--glue-green) !important;
}

.btn-confirm {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-confirm:hover {
        color: var(--glue-green) !important;
    }

.btn-create {
    float: right;
    color: white !important;
    background-color: var(--glue-blue) !important;
    margin-top: 10px !important;
}

    .btn-create:hover {
        color: var(--glue-green) !important;
    }

.btn-delete {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-delete:hover {
        color: var(--glue-green) !important;
    }

.btn-detail {
    color: var(--glue-blue) !important;
    background-color: var(--glue-green) !important;
}

    .btn-detail:hover {
        color: white !important;
    }

.btn-download {
    color: white !important;
    background-color: var(--glue-blue) !important;
}

    .btn-download:hover {
        color: var(--glue-green) !important;
    }

a.btn-dropdown {
    background-color: var(--glue-staging) !important;
    text-transform: uppercase;
}

    a.btn-dropdown:hover {
        color: var(--glue-green) !important;
    }

.btn-edit {
    color: var(--glue-blue) !important;
    background-color: var(--highlight) !important;
}

    .btn-edit:hover {
        color: var(--glue-green) !important;
    }

.btn-filter {
    color: white !important;
    background-color: var(--glue-blue) !important;
}

    .btn-filter:hover {
        color: var(--glue-green) !important;
    }

.btn-logon {
    color: var(--glue-green) !important;
    background-color: transparent !important;
    border-color: var(--glue-green) !important;
}

    .btn-logon:hover {
        color: white !important;
    }

.btn-matrix {
    color: white !important;
    background-color: var(--glue-blue) !important;
}

    .btn-matrix:hover {
        color: var(--glue-green) !important;
    }

.btn-password {
    color: var(--glue-blue) !important;
    background-color: var(--neutral) !important;
}

    .btn-password:hover {
        color: var(--glue-green) !important;
    }

.btn-reject {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-reject:hover {
        color: var(--glue-green) !important;
    }

.btn-remove {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-remove:hover {
        color: var(--glue-green) !important;
    }

.btn-report {
    color: var(--glue-blue) !important;
    background-color: var(--neutral) !important;
}

    .btn-report:hover {
        color: white !important;
    }

.btn-save {
    color: var(--glue-blue);
    background-color: var(--glue-green) !important;
}

    .btn-save:hover {
        color: white !important;
    }

.btn-status {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-status:hover {
        color: var(--glue-green) !important;
    }

.btn-upload {
    color: var(--glue-blue) !important;
    background-color: var(--highlight) !important;
}

    .btn-upload:hover {
        color: White !important;
    }

.btn-vote {
    color: var(--glue-blue) !important;
    background-color: var(--glue-green) !important;
}

    .btn-vote:hover {
        color: white !important;
    }

.btn-vote-last-day {
    color: white !important;
    background-color: var(--alert-red) !important;
}

    .btn-vote-last-day:hover {
        color: var(--glue-green) !important;
    }

.btn-vote-done {
    color: var(--glue-blue) !important;
    background-color: lightgrey !important;
}

    .btn-vote-done:hover {
        color: white !important;
    }

.btn-map {
    color: var(--glue-blue) !important;
    background-color: var(--highlight) !important;
}

    .btn-map:not(.btn-map-disabled):hover {
        color: var(--glue-green) !important;
    }

.btn-map-disabled {
    color: var(--glue-blue) !important;
    background-color: grey !important;
}

.index-selected {
    color: white;
    background-color: #808080;
}

.voted-tick {
    color: var(--glue-green);
}

.voted-cross {
    color: var(--alert-red);
}

.footer-glue-blue {
    background: var(--glue-blue);
}

.tab-bar {
    background-color: var(--glue-blue);
}

.detail-header {
    color: var(--glue-blue);
    font-weight: bold;
}

.detail-body {
    color: var(--glue-blue);
}

.divider-line {
    background-color: var(--glue-green);
}

.matrix-column-header-top {
    color: var(--glue-blue);
    padding-bottom: 0 !important;
}

.matrix-column-header-bottom {
    color: var(--glue-blue);
    opacity: 0.5;
}

.matrix-row-header-left {
    padding: 0 0 0 14px !important;
    color: var(--glue-blue);
}

.matrix-row-header-right {
    padding: 0 0 4px 0 !important;
    color: var(--glue-blue);
    opacity: 0.5;
}

.matrix-cell {
    padding-bottom: 0 !important;
    padding-right: 0 !important;
}

.comment {
    color: var(--glue-blue);
}

.comment-remaining {
    color: var(--glue-blue);
    font-weight: normal !important;
    opacity: 0.5;
}

.page-title {
    margin-top: 50px;
    color: var(--glue-blue);
    font-weight: bold;
}

.status-dropdown {
    font-size: 20px;
    color: #030837;
    border-color: #030837;
}

.status-header {
    font-size: 20px;
    font-weight: bold;
    color: #030837;
}

.table-header {
    padding: 0 0 0 24px !important;
    font-size: 20px;
    color: #030837;
}
/* Framework listings */
.framework-row {
    border-radius: 20px;
    margin-top: 0;
    margin-bottom: 24px;
    padding: 10px;
}

.active-framework-row {
    height: 205px;
    border: 2px solid white;
    background-color: white;
}

    .active-framework-row:hover {
        border-color: #61eb68;
    }

.created-framework-row {
    height: 130px;
    border: 2px solid white;
    background-color: white;
}

    .created-framework-row:hover {
        border-color: #61eb68;
    }

.completed-framework-row {
    height: 130px;
    border: 2px solid darkgray;
    background-color: darkgray;
}

    .completed-framework-row:hover {
        border-color: #61eb68;
    }

.abandoned-framework-row {
    height: 130px;
    border: 2px solid darkgray;
    background-color: darkgray;
}

    .abandoned-framework-row:hover {
        border-color: #61eb68;
    }

.framework-name {
    width: 220px;
    padding-top: 0 !important;
    color: var(--glue-blue) !important;
    font-weight: bold;
    font-size: 20px;
}

.framework-description {
    width: 626px;
    padding-top: 0 !important;
    color: var(--glue-blue) !important;
    opacity: 0.75;
}

.framework-status {
    width: 120px;
    padding-top: 0 !important;
    color: #030837;
    font-weight: bold;
    font-size: 18px;
}

.framework-buttons {
    width: 120px;
    padding-top: 0 !important;
    float: right;
}

/* Project listings */
.project-row {
    border-radius: 20px;
    margin-top: 0;
    margin-bottom: 24px;
    padding: 10px;
}

.active-director-project-row {
    height: 166px;
    border: 2px solid white;
    background-color: white;
}

    .active-director-project-row:hover {
        border-color: #61eb68;
    }

.active-manager-project-row {
    height: 206px;
    border: 2px solid white;
    background-color: white;
}

    .active-manager-project-row:hover {
        border-color: #61eb68;
    }

.active-member-project-row {
    height: 94px;
    border: 2px solid white;
    background-color: white;
}

    .active-member-project-row:hover {
        border-color: #61eb68;
    }

.project-director-description {
    width: 406px;
    padding-top: 2px !important;
    color: #030837;
    opacity: 0.75;
}

.project-manager-description {
    width: 626px;
    padding-top: 2px !important;
    color: #030837;
    opacity: 0.75;
}

.project-member-description {
    width: 626px;
    padding-top: 2px !important;
    color: #030837;
    opacity: 0.75;
}

.created-project-row {
    height: 94px;
    border: 2px solid white;
    background-color: white;
}

    .created-project-row:hover {
        border-color: #61eb68;
    }

.completed-project-row {
    height: 94px;
    border: 2px solid darkgray;
    background-color: darkgray;
}

    .completed-project-row:hover {
        border-color: #61eb68;
    }

.abandoned-project-row {
    height: 94px;
    border: 2px solid darkgray;
    background-color: darkgray;
}

    .abandoned-project-row:hover {
        border-color: #61eb68;
    }

.project-name {
    width: 220px;
    padding-top: 0 !important;
    color: #030837;
    font-weight: bold;
    font-size: 20px;
}

.project-manager {
    width: 220px;
    padding-top: 0 !important;
    color: var(--glue-blue) !important;
    font-weight: bold;
    font-size: 20px;
}

.project-description {
    padding-top: 0 !important;
    color: var(--glue-blue) !important;
    opacity: 0.75;
}

.project-status {
    width: 120px;
    padding-top: 0 !important;
    color: #030837;
    font-weight: bold;
    font-size: 18px;
}

.project-buttons {
    width: 120px;
    padding-top: 0 !important;
    float: right;
}

/* Report Listing*/
.report-row {
    border-radius: 20px;
    margin-top: 0;
    margin-bottom: 24px;
    padding: 10px;
    height: 94px;
    border: 2px solid white;
    background-color: white;
}

    .report-row:hover {
        border-color: #61eb68;
    }

.report-name {
    width: 300px;
    padding: 16px 0 0 0 !important;
    color: #030837;
    font-weight: bold;
    font-size: 20px;
}

.report-property {
    color: var(--glue-blue);
    width: 130px;
    font-size: 20px;
    padding: 16px 0 0 0 !important;
}

/* Log On */
.log-on-page {
    background-size: cover;
    background-image: url('../img/log-on-background.jpg');
}

.log-on-wrapper {
    margin-top: 50px;
    border: 1px solid var(--glue-blue) !important;
}

    .log-on-wrapper:hover {
        border: 1px solid var(--glue-green) !important;
    }

.log-on-header {
    background-color: var(--glue-blue) !important;
    color: white !important;
    border-bottom-color: var(--glue-green) !important;
}

.log-on-body {
    background-color: var(--glue-blue) !important;
    color: white !important;
}

.log-on-footer {
    background-color: var(--glue-blue) !important;
    border-top-color: var(--glue-green) !important;
    font-size: 20px;
}

a.log-on-footer {
    color: white !important;
    text-decoration: none;
}

    a.log-on-footer:hover {
        color: var(--glue-green) !important;
    }

.log-on-input {
    height: 50px;
    font-size: 25px;
}

.control-label {
    font-size: 18px;
    font-weight: bold;
    color: var(--glue-blue) !important;
}

.profile-text {
    font-weight: bold;
    color: var(--glue-blue) !important;
}

.swapper-header-text {
    font-weight: bold;
    color: var(--glue-blue) !important;
}

.swapper-body-text {
    color: var(--glue-blue) !important;
}

.navbar-nav {
    font-weight: bold;
    background-color: var(--glue-staging) !important;
}

.admin-name {
    padding: 6px 0 0 0 !important;
    color: var(--glue-blue) !important;
    font-weight: bold;
    font-size: 20px;
}

.admin-normal {
    padding: 6px 0 0 0 !important;
    color: var(--glue-blue) !important;
    font-size: 18px;
}

.admin-description {
    padding: 6px 4px 0 4px !important;
    color: var(--glue-blue) !important;
    opacity: 0.75;
}

.admin-buttons {
    padding: 6px 0 0 0 !important;
}

.table-header-dropdown {
    padding: 0 0 0 2px !important;
    height: 36px;
    width: 150px;
    float: right;
    font-size: 20px;
}

.table-header-admin {
    padding: 0 !important;
    font-size: 20px;
    color: #030837;
}

.popup {
    border: 1px solid var(--glue-green);
    background-color: var(--glue-blue);
}

.popup-title {
    color: var(--glue-green);
}

.popup-header {
    border-bottom-color: var(--glue-green) !important;
}

.popup-footer {
    border-top-color: var(--glue-green) !important;
}

.popup-text {
    background-color: white;
    color: var(--glue-blue);
    font-size: 20px;
}

.index-link, .page-link {
    color: var(--glue-blue) !important;
}

    .index-link:hover, .page-link:hover {
        color: var(--glue-green) !important;
    }

input[type=checkbox] {
    box-shadow: none !important;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%238C98F2'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
    background-size: 12px;
    background-position: calc(100% - 20px) center;
    background-repeat: no-repeat;
    background-color: #efefef;
}

/* Mobile Icons section */

.mobile-icons-section {
    text-align: center;
    margin-top: 1rem;
}

    .mobile-icons-section img {
        height: 3rem;
    }

        .mobile-icons-section img:first-child {
            margin-right: 1rem;
        }

/* End of Icons section */

/* Sticky */

@media screen and (max-height: 550px) and (max-width: 1000px) {
    .sticky-form table {
        width: auto !important;
        overflow: auto;
    }
}

@media screen and (max-width: 575px) {
    .sticky-form .sticky-top {
        position: relative;
        z-index: 1020;
    }
}

@media screen and (max-height:800px) {
    .sticky-form .sticky-top {
        position: relative;
        z-index: 1020;
    }
}

@media screen and (min-width: 575px) and (min-height: 800px) {

    .sticky-form {
        top: 1.6rem;
        position: relative;
        margin-bottom: 8rem;
    }

    div.sticky-top:before {
        content: "\00a0\00a0";
        background: var(--background);
        width: 100%;
        position: absolute;
        top: -20vh;
        left: 0px;
        height: 20vh;
    }


    div.sticky-top {
        box-sizing: content-box;
        background: var(--background);
        top: 7.2rem;
        width: 100%;
        transform: translateX(-2rem);
        padding: 0 2rem;
        margin-bottom: 1.6rem;
    }

        div.sticky-top dl,
        div.sticky-top dl dd:last-child {
            margin-bottom: 0;
        }

    div.sticky-form table.sticky-header {
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
    }

        div.sticky-form table.sticky-header tbody.main-body:before {
            content: "@";
            display: block;
            line-height: 1rem;
            text-indent: -99999px;
        }

        div.sticky-form table.sticky-header th {
            box-sizing: content-box;
            background: var(--background);
            top: 11.4rem;
            margin-bottom: 1.6rem;
            position: -webkit-sticky;
            position: sticky;
            z-index: 1010;
            border-top: 1px solid var(--glue-green);
            border-bottom: 1px solid var(--glue-green);
            padding: 1rem 0 !important;
        }

            div.sticky-form table.sticky-header th:before {
                content: "\00a0\00a0";
                background: var(--background);
                width: 100%;
                position: absolute;
                top: -1px;
                transform: translateY(-100%);
                left: 0px;
                height: 20vh;
            }

    div.sticky-top .page-title {
        margin-top: 0px !important;
    }

    div.sticky-top.button-right .btn-right {
        position: absolute;
        right: 2rem;
        bottom: 10px;
        width: auto;
    }
}

/* End of Sticky section */

.btn-right-3-wrapper {
    justify-content: space-between;
    align-items: center;
}

.btn-right-3-center {
    padding-right: 15px;
    padding-left: 15px;
}

.btn-right-3 {
    max-width: 28%;
}

.btn-right-3-fit-content {
    width: -moz-fit-content;
    width: fit-content;
}

.scale-small {
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
}

    .scale-small .scale-up {
        transform: scale(1.2) !important;
    }

.framework-actions:not(:first-child) {
    margin-top: .75rem;
}

.custom-control-input:focus ~ .custom-control-label::before {
    border-color: var(--glue-blue) !important;
    box-shadow: 0 0 0 0.1rem rgba(0, 8, 139, 0.5) !important;
}

.custom-control-input:checked ~ .custom-control-label::before {
    border-color: var(--glue-blue) !important;
    background-color: var(--glue-blue) !important;
}

.custom-control-input:active ~ .custom-control-label::before {
    background-color: var(--glue-blue) !important;
    border-color: var(--glue-blue) !important;
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: var(--glue-blue) !important;
}