﻿@import url('https://fonts.googleapis.com/css?family=Roboto:400,700');
@import url('https://fonts.googleapis.com/css?family=Lato:400,700');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');

html, body {
    background-color: var(--colours-page-bg);
    color: var(--colours-page-fg);
    font-size: var(--colours-page-fontsize);
    font-family: 'Open Sans', Lato, Arial, sans-serif;
    padding: 0;
    margin: 0;
    min-height: 100vh;
}
body {
    background-image: url("/icons/bg.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-color: #00aa00;
}

.error {
    font-weight: bold;
    color: orangered;
}
.good {
    color: #137201;
    font-weight: bold;
}
div.wallitem {
    display: flex;
    margin-bottom: 0.5ch;
    break-inside: avoid;
    break-after: auto;
    padding: 1ch;
    background-color: #ffdec9;
}
    div.wallitem img {
    }
    div.wallitem p {
        margin: 0;
        margin-left: 1ch;
    }
.statstable {
    table-layout: fixed;
    width: 100%;
    font-size: small;
}
    .statstable tr {
        background-color: var(--colours-tablelist-row1-bg);
        color: var(--colours-tablelist-row1-fg);
    }
    .statstable th {
        background-color: var(--colours-tableform-heading-bg);
        color: var(--colours-tableform-heading-fg);
        padding: 2px;
    }
        .statstable tr:nth-child(even) {
            background-color: var(--colours-tablelist-row2-bg);
            color: var(--colours-tablelist-row2-fg);
        }

    .statstable td {
        padding: 2px;
        text-align: right;
    }
    .statstable td:first-child {
        text-align: left;
    }

    .statstable a {
        text-decoration: none;
        padding: 2px;
        color: var(--colours-linkcolour);
        display: block;
        width: 100%;
        border-bottom: 1px solid transparent;
    }

    .statstable a {
        text-decoration: none;
    }
.orderbox {
    margin-bottom: 1em;
    border:1px solid #999;
    border-collapse:collapse;
    background-color: #DDD;
}
    .orderbox tr:first-child {
        background-color: #CCC;
        border: 1px solid #999;
    }
        .orderbox tr:first-child td {
            width: 25%;
            border: 1px solid #999;
            text-align: center;
        }
    .orderbox tr:first-child td:first-child {
        text-align: left;
    }
    .orderbox tr:first-child td:last-child {
        text-align: right;
    }
    .orderbox td {
        padding: 1ch;
    }

body.CentreGrid {
    min-height: 100vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-image: url('/icons/background.svg');
    display: flex;
    justify-content: center;
    align-items: center;
}

.HomePageItemContainer {
    display: flex;
    margin: 1em;
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: row;
}

.HomePageItem {
    flex-grow: 1;
    flex-wrap: wrap;
}

.HomePageItem {
    background-color: #14408cc7;
    color:white;
    padding: 1ch;
    margin: 0.5em;
    border-radius: 5px;
    box-shadow: 0.5em 0.5em 0.5em rgb(0 0 0 / 20%);
    min-width: 145px;
}

    .HomePageItem.h1 {
        font-size: 14pt;
    }

    .HomePageItem b {
        display: block;
        color: #00ff7e;
    }
.HomePageItemHeading {
    font-weight: bold;
    padding: 0.5ch 1ch;
}
    .HomePageItem a {
        display: block;
        margin-bottom: 0.25ch;
        padding: 0.5ch 1ch;
        color: white;
        text-decoration: none;
    }
    .HomePageItem a > svg {
        fill: white;
    }
        .HomePageItem a:hover {
            text-decoration: underline;
        }

.studentlist {
    columns: 4 25ch;
    margin-bottom: 1em;
    margin-left: 1em;
    margin-right: 1em;
}
.studentlink {
    display: block;
    color: white;
    background-color: #14408cc7;
    padding: 16px 6px;
    margin-bottom: 3px;
    text-decoration: none;
}
    .studentlink:hover {
        background-color: #4e4e4e;
    }

.studentdetails {
    width: 100%;
    margin-bottom: 0.5em;
}

.studentdetails tr {
    background-color: #FFFFFF99;
}
    .studentdetails td {
        padding: 6px;
    }
.studentresult {
    background-color: #FFFFFF99;
    margin-bottom: 0.5em;
    padding: 6px;
}

.resourcetable {
    background-color: #14408c11;
    background-color: #e7e7ff;
    color: black;
    width: 100%;
    font-family: roboto;
}
    .resourcetable a {
        color: black;
        text-decoration: none;
    }
    .resourcetable td {
        color: black;
        text-decoration: none;
        padding:6px;
    }
    .resourcetable svg {
        fill:black;
    }
    .resourcetable tr:nth-child(odd) {
        background-color: #e7e7ff;
    }

.DarkBackground { /*Used for Video background */
    background-color: #333;
}
.otherfunctions {
    display:flex;
}
.otherfunctions > div {
    background-color: #FFFFFF99;
    max-width: 60ch;
    padding: 6px;
    border: solid 1px #CCC;
    margin-bottom: 1em;
}
.danceeditform {
    background-color: #FFFFFF99;
    padding: 6px;
}
.danceeditform > div {
    width: 100%;
    margin-bottom: 1em;
}
    .danceeditform > div > input {
        padding: 6px;
        font-family: inherit;
        font-size: inherit;
    }
.warninglist {
    font-weight: bold;
    color: orangered;
}

.red {
    color: orangered;
}

.heading2 {
    font-weight: bold;
    border-bottom: 1px solid #3f60a3;
    margin: 1rem 0;
    color: #3f60a3;
}

.item2col {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    background-color: #e5e5e5cc;
    margin-bottom: 2px;
}

    .item2col > div {
        padding: 6px 0;
    }

        .item2col > div:first-child {
            font-weight: bold;
            padding-left: 1rem;
        }

    .item2col input, .item2col select, .item2col textarea {
        padding: 6px;
        margin: 3px;
        border: solid 1px #CCC;
    }

.item2col:focus-within {
    background: lightyellow;
}

    .item2col:focus-within > .help {
        color: #333;
        font-style: normal;
    }

.item2col:hover {
    background: lightyellow;
}
.item3col {
    display: grid;
    grid-template-columns: 14rem 18rem 1fr;
    align-items: center;
    background-color: #e5e5e5cc;
    margin-bottom: 2px;
}

    .item3col > div {
        padding: 6px 0;
    }

        .item3col > div:first-child {
            font-weight: bold;
            padding-left: 1rem;
        }

    .item3col input, .item3col select, .item3col textarea {
        padding: 6px;
        margin: 3px;
        border: solid 1px #CCC;
    }

.item3col:focus-within {
    background: lightyellow;
}

    .item3col:focus-within > .help {
        color: #333;
        font-style: normal;
    }

.item3col:hover {
    background: lightyellow;
}
.item4col {
    display: grid;
    grid-template-columns: 14rem 18rem auto 1fr;
    align-items: center;
    background-color: #e5e5e5cc;
    margin-bottom: 2px;
}

    .item4col > div {
        padding: 6px 0;
    }

        .item4col > div:first-child {
            font-weight: bold;
            padding-left: 1rem;
        }

    .item4col input, .item4col select, .item4col textarea {
        padding: 6px;
        margin: 3px;
        border: solid 1px #CCC;
    }


.item4col:focus-within {
    background: lightyellow;
}

    .item4col:focus-within > .help {
        color: #333;
        font-style: normal;
    }

.item4col:hover {
    background: lightyellow;
}

.help {
    font-weight: lighter;
    color: #999;
    font-size: small;
    font-style: italic;
    margin-left: 1rem;
}

.c { text-align:center !important; }
.r { text-align:right !important; }
.error { font-weight:bold !important; color:orangered !important; }
.staticdata {
    padding: 6px;
    margin: 3px;
    border: solid 1px #CCC;
}

.productselection {
    display: grid;
    grid-template-columns: 15rem 1fr;
}
    .productselection .catgroup {
        padding: 5px;
        border: solid 1px #999;
        margin: 3px;
    }
    .productselection .catbtn {
        padding: 2px;
        display: block;
        color: darkorange;
    }
    .productselection .catbtn:hover {
        color: green;
    }

        .productselection .selectedcat {
            font-weight: bold;
            color: dodgerblue !important;
        }
    .productselection  .productresult summary {
        padding: 2px;
    }
    .productselection .productresult summary:hover {
        background-color: bisque;
    }
    .productselection details.productresult[open] {
        border: solid 1px 555;
    }
    .productselection details.productresult[open] summary {
        background-color: #555;
        color: white;
        font-weight:bold
    }
        .productselection details.productresult[open] > div {
            border: solid 1px #555;
            padding: 5px;
        }
        .productselection details.productresult[open] table {
        width: 100%;
        margin-bottom: 0.5rem;
    }
    .productselection details.productresult[open] table td {
        background-color:antiquewhite;
        color: black;
        padding: 5px;
    }
    .productselection .noproductsfound {
        padding: 6px;
    }
    .productselection .searchsummary{
        padding-top: 6px;
    }
    .productselection #prodsearch {
        padding: 6px;
        margin: 3px;
        display: block;
    }
    .productselection .inactiveproduct {
        text-decoration: line-through;
        color: orangered;
    }

.sitecontent {
    width: 90vw;
    max-width: 1000px;
    background-color: rgba(255,255,255,0.75);
    margin: auto;
    display: grid;
    grid-template-rows: auto 1fr auto;
    height: 100vh;
}

.maincontent {
    height: 100%;
    padding: 1rem 2rem;
    overflow: auto;
}

@media all and (max-width: 450px) {
    .navmenu {
        display: none;
    }
}
@media all and (min-width: 850px) {
    .navmenu {
        display: grid;
        align-items: center;
        font-family: Roboto;
        font-weight: bold;
        color: darkgreen;
    }

    .navitem {
        display: inline-block;
        border: 1px solid #0cbd00;
        padding: 1rem;
        margin: 0.5rem;
        border-radius: 5px;
        color: darkgreen;
    }

        .navitem:hover {
            color: white;
            background-color: darkgreen;
            text-decoration: none;
            border: 1px solid #0cbd00;
        }

    .selected {
        border: 1px solid magenta;
        background-color: #c162c1;
        color: white;
    }
}
    .footer {
        background-color: transparent !important;
        color: black !important;
        padding: 0 0.5rem;
        text-align: right;
        display: block !important;
    }

    .pageimage-right {
        float: right;
        padding: 0 0 0 10px;
        max-width: 20rem;
    }

    .pageimage-left {
        float: left;
        padding: 0 10px 0 0;
        max-width: 20rem;
    }


.topnav {
    background-color: darkgreen;
}

    .topnav a {
        float: left;
        display: block;
        color: #f2f2f2;
        text-align: center;
        padding: 3.1rem 16px;
        text-decoration: none;
        font-size: 17px;
    }

.active {
    background-color: #ba3bd1;
    color: white;
    font-weight: bold;
}

    .logolink:hover {
        background-color: darkgreen !important;
    }
.topnav .icon {
    display: none;
}

.topnav a:hover, .dropdown:hover .dropbtn {
    background-color: #8716c3;
    color: white;
}

.dropdown-content a:hover {
    background-color: #ddd;
    color: black;
}

.dropdown:hover .dropdown-content {
    display: block;
}

@media screen and (max-width: 600px) {
    .topnav a:not(:first-child), .dropdown .dropbtn {
        display: none;
    }

    .topnav a.icon {
        float: right;
        display: block;
    }
}

@media screen and (max-width: 600px) {
    .topnav.responsive {
        position: relative;
    }

        .topnav.responsive .icon {
            position: absolute;
            right: 0;
            top: 0;
        }

        .topnav.responsive a {
            float: none;
            display: block;
            text-align: left;
            padding: 14px 16px;
        }

        .topnav.responsive .dropdown {
            float: none;
        }

        .topnav.responsive .dropdown-content {
            position: relative;
        }

        .topnav.responsive .dropdown .dropbtn {
            display: block;
            width: 100%;
            text-align: left;
        }
}

.eventblock{
    border-top: 2px solid #333;
    padding-top: 10px;
}
    .eventblock > img{
        float: left;
        height: 9rem;
        padding: 0 10px 0 0;
    }
.eventtitle {
    font-weight: bold;
    padding: 3px;
    font-size: large;
}
.eventtime {
    color: #5a5a5a;
}
.eventlocation {
    color: #5a5a5a;
}
.ScanDropBox {
    border: dashed 5px #333;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    padding: 15px 5px;
    margin: 5px;
}
