html {
        box-sizing: border-box;
        height: 100%;
    }

    *,
    *:before,
    *:after {
        box-sizing: inherit;
    }

    body {
        font: 16px arial, sans-serif;
        margin: 0px;
        padding: 8px;
        width: 100%;
        height: 100%;
    }

    input, select, button {
        font: 16px arial, sans-serif;
    }

    #pageDiv {
        width: 100%;
        height: 100%;
        display: grid;
        grid-template-areas: 
            'header dragbar rightheader'
            'leftcol dragbar rightcol'
            'footer footer footer';
        grid-template-rows: min-content auto min-content;
        grid-template-columns: 3fr 6px 2fr;
    }

    #headerDiv {
        overflow: hidden;
        grid-area: header;
        padding: 6px;
    }

    #footerDiv {
        overflow: hidden;
        grid-area: footer;
        padding: 6px;
        font-size: smaller;
    }

    #editDiv {
        overflow: hidden;
        grid-area: leftcol;
        overflow: auto;
    }

    #dragBar {
        overflow: hidden;
        grid-area: dragbar;
    }

    #referenceFrame {
        overflow: hidden;
        grid-area: rightcol;
    }

    #tabBarDiv {
        overflow: hidden;
        grid-area: rightheader;
    }

    #referenceDiv {
        background-color: #eee;
        overflow: auto;
    }

    #printDiv {
        text-align: left;
        overflow: visible;
    }

    #footerDiv {
        display: inline-block;
    }

    #tabButtonDiv {
        display: flex;
        width: 100%;
        flex-direction: row;
        justify-content: space-evenly;
    }

    .flexCardEditHeader {
        background-color: #eee;
        color: #444;
        cursor: pointer;
        width: 100%;
        text-align: left;
        border: none;
        outline: none;
        transition: 0.4s;
        padding-left: 7px;
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    .headerPadding {
        padding: 7px;
    }

    .flexCardEditHeader>* {
        margin-left: 5px;
        margin-right: 5px;
    }

    .flexDropDown {
        margin-left: 0px;
    }

    .flexRightAlignStart {
        margin-left: auto;
    }

    .flexCentreAlignStart {
        margin-left: auto;
        margin-right: auto;
    }

    .flexIcon {
        height: 20px;
    }

    input[type="number"] {
        padding-right: 0px;
        text-align: center;
    }

    .teamContainer {
        width: 100%;
        margin-bottom: 4px;
    }

    .teamCostStyle {
        background-color: #CCF;
        padding: 10px;
    }

    .moveTeamStyle {
        background-color: #CCF;
        padding: 5px;
        display: flex;
        align-items:center;
    }

    .specialRules {
        color: red;
    }

    .vehicleEditCard {
        border: solid 1px black;
        margin-bottom: 4px;
        width: 100%;
    }

    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #f1f1f1;
        min-width: 160px;
        overflow: auto;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
        z-index: 1;
    }

    .dropdown-content a {
        color: black;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }

    .dropdown a:hover {
        background-color: #ddd;
    }

    .showDropdown {
        display: block;
    }

    .cardEditHeader {
        background-color: #eee;
        color: #444;
        cursor: pointer;
        padding: 5px;
        padding-top: 0px;
        padding-bottom: 0px;
        width: 100%;
        text-align: left;
        border: none;
        outline: none;
        transition: 0.4s;
    }

    .cardEditHeaderDisplayOnlyMode {
        padding: 5px;
    }

    .cardEditHeader:hover {
        background-color: #ccc;
    }

    .indentContainer {
        margin-left: 20px;
        width: calc(100% - 20px);
    }

    .leftAlignContainer {
        width: 74%;
        text-align: left;
        display: inline-block;
    }

    .leftAlignContainer>* {
        margin-right: 10px;
    }

    .rightAlignContainer {
        width: 25%;
        text-align: right;
        display: inline-block;
    }

    .rightAlignContainer>* {
        margin-left: 10px;
    }

    .propertyTable {
        border-collapse: collapse;
        border-spacing: 0;
        padding: 0;
        margin: 0;
        border: 1px solid black;
        table-layout: auto;
        margin: 4px;
        margin-bottom: 8px;
        width: calc(100% - 8px);
        text-align: center;
    }

    .propertyTable td {
        padding: 3px;
    }

    .propertyTable .noPadding {
        padding: 0px;
    }

    .propertyTable .fillColumn {
        width: 100%;
    }

    .propertyTable tr:nth-child(even) {
        background-color: white;
    }

    .propertyTable tr:nth-child(odd) {
        background-color: #eeeeee;
    }

    .propertyTable tr:nth-child(1) {
        background-color: #dddddd;
    }

    .highlight {
        background-color: rgb(255, 250, 205);
    }

    .referenceTable {
        border-collapse: collapse;
        border-spacing: 0;
        padding: 0;
        margin: 0;
        border: 1px solid black;
    }

    .referenceTable th {
        background-color: #3b4767;
        color: white;
        padding-left: 5px;
        padding-right: 5px;
        padding-top: 2px;
        padding-bottom: 2px;
    }

    .referenceTable tr:nth-child(odd) {
        background-color: #b4b6cb;
    }

    .referenceTable tr:nth-child(even) {
        background-color: #e4e3e9;
    }

    .referenceTable td {
        border: 1px solid black;
        padding-left: 5px;
        padding-right: 5px;
        padding-top: 2px;
        padding-bottom: 2px;
    }

    #subheadingRow {
        background-color: #aaaaaa;
        font-weight: bold;
        text-align: left;
    }

    .referenceHeadingText {
        margin-top: 0px;
    }

    .tabPage {
        display: none;
    }
/*
    .tabBar {
        margin-bottom: 5px;
    }
*/
    .active {
        background-color: #ccc;
    }

    .addSpan {
        color: blue;
        font-style: italic;
        margin: 5px;
        margin-left: 0px;
        cursor: pointer;
        width: max-content;
    }

    #vehicleStatTable {
        margin-top: 4px;
        margin-bottom: 4px;
        width: 100%;
        border: none;
        padding: 3px;
        text-align: center;
    }

    .statValue {
        font-weight: bolder;
    }

    .icon {
        width: 20px;
        height: 20px;
    }

    .warning {
        background-color: #ed5454;
        color: white;
    }

    .modified {
        color: green;
    }

    .leftalign {
        text-align: left;
    }

    .rightalign {
        text-align: right;
    }

    .centeralign {
        text-align: center;
    }

    .larger {
        font-size: larger;
    }

    .bold {
        font-weight: bold;
    }

    .smaller {
        font-size: smaller;
    }

    .smallest {
        font-size: x-small;
    }

    .centre {
        text-align: center;
    }

    .labelAsButton {
        text-decoration: none;
        background-color: #EEEEEE;
        color: #333333;
        padding: 5px 5px 5px 5px;
        border-top: 1px solid #CCCCCC;
        border-right: 1px solid #333333;
        border-bottom: 1px solid #333333;
        border-left: 1px solid #CCCCCC;
        margin: 2px;
        display: inline-block;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .disabledLabelAsButton {
        text-decoration: none;
        background-color: #EEEEEE;
        color: #ccc;
        padding: 5px 5px 5px 5px;
        border-top: 1px solid #CCCCCC;
        border-right: 1px solid #333333;
        border-bottom: 1px solid #333333;
        border-left: 1px solid #CCCCCC;
        margin: 2px;
        display: inline-block;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .hideRealButton {
        display: none;
    }

    @media print {
        .noprint {
            display: none;
        }

        .mediaNoBreak {
            page-break-inside: avoid;
        }

        #pageDiv {
            display: block;
        }
    }

    .printCard {
        display: block;
        width: 700px;
        word-break: normal;
        border: 1px solid black;
        margin: 10px;
        font-size: large;
    }

    .section {
        margin: 5px;
        display: flex;
        justify-content: space-between;
    }

    .flexVContainer {
        display: flex;
        flex-grow: 1;
        flex-direction: column;
    }

    .flexHContainer {
        display: flex;
        flex-direction: row;
    }

    .flexFixedVBox {
        align-self: flex-end;
        flex-direction: column;
        flex-grow: 0;
        justify-content: center;
        text-align: center;
        margin-left: 10px;
    }

    .flexGearBox {
        display: flex;
        flex-grow: 0;
        flex-shrink: 0;
        border: 1px solid black;
        width: 90px;
        height: 90px;
        margin-left: 10px;
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .checkimg {
        width: 15px;
        height: 15px;
        border: 1px solid black;
        margin: 1px;
    }

    .printPropertyTable {
        border-collapse: collapse;
        border-spacing: 0;
        width: 100%;
        border: 1px solid black;
        display: block;
        margin-top: 5px;
    }

    .printPropertyTable th {
        background-color: #dddddd;
        padding: 2px;
        font-size: small;
    }

    .printPropertyTable td {
        padding: 2px;
        white-space: nowrap;
    }

    .printPropertyTable .fillColumn {
        width: 100%;
        white-space: normal;
    }

    .randomiserTable {
        border-collapse: collapse;
        border-spacing: 0;
        padding: 0;
        margin: 0;
        border: 1px solid black;
    }

    .randomiserTable th {
        background-color: #dddddd;
    }

    .printPropertyTable tr:nth-child(even) {
        background-color: white;
    }

    .printPropertyTable tr:nth-child(odd) {
        background-color: #eeeeee;
    }

    .tx1 {
        color: darkblue;
    }

    .tx2 {
        color: sienna;
    }

    .tx3 {
        color: MediumOrchid;
    }

    .bluebackgroundarea {
        background-color: #ccf;
    }

    .roundedcorners10 {
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .roundedcorners5 {
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        border-bottom-left-radius: 5px;
        border-bottom-right-radius: 5px;
    }

    .alertabletitle {
        background-color: #ccf;
        margin-bottom: 10px;
        text-align: center;
        padding: 5px;
    }