﻿
html {
    position: relative;
    min-height: 100%;
}

@font-face {
    font-family: "YVWRational";
    src: url("/fonts/YVWRational-Regular.woff2") format("woff2"), url("/fonts/YVWRational-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}

body {
    margin-bottom: 100px;       /* should match footer */
    font-family: YVWRational, Arial;
}

main {
    justify-content: center;
    display: grid;
}

.container-fluid {
    max-width: 940px;
}

/* #region Footer styles */
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    font-size: 0.85em;
    height: 100px;
}
/* #endregion */

/* #region custom Kendo UI styles */
h1 {
    margin: 0;
    font-size: 32px;
    font-weight: lighter;
    margin-bottom: 10px;
    color: #0032BE;
}

h2 {
    font-size: 30px;
    font-weight: lighter;
    color: #0032BE;
}

h3 {
    color: #0032BE;
    font-weight: bold;
}

    h3.gap {
        margin-top: 40px;
    }

.strongNote {
    color: #0032BE;
    font-weight: bold;
}
span.info ul {
    margin-bottom: 0;
}

#menu {
    display: flex !important;
    justify-content: center !important;
    width: 100%;
}
#banner {
    justify-content: center;
}

#banner-image {
    max-width: 100%;
}

.placeholder {
    background-color: inherit;
    opacity: inherit;
}

.placeholders {
    margin: 30px 10px 10px 10px;
}

.placeholder img {
    display: inline-block;
}

.form-horizontal {
    max-width: 940px;
    margin-top: 20px;
}

    .form-horizontal ul {
        padding-left: 0px;
    }

    /* Do we need this radio groups on project page do not*/
    .form-horizontal li {
        margin-left: 20px;
    }

.form-group {
    margin-bottom: 5px;
}

fieldset {
    margin-bottom: 20px; /* looks better with footing on smartphones */
    margin-left: 10px;
    float: left;
    min-width: 300px;
}

    fieldset.block {
        clear: both;
    }
    /* info on Project.ProjectDelivery needs this commented */
/*    fieldset ul {
        list-style-type: none;
    }*/

p .k-button {
    margin: 0 15px 0 0;
}

.configure {
    display: none;
}

#responsive-panel {
    padding: 0;
    border: none;
}

    #responsive-panel .k-menu {
        padding-left: .5rem;
        padding-right: .5rem;
        padding-top: 1px;
        padding-bottom: 1px;
    }
/*    #responsive-panel .k-state-highlight>.k-link {
        color: white;
    }*/

.k-menu.container-fluid {
    border: none;
}

.k-header {
    border-color: #00AC00;
    background-color: #0032BE;
    color: white;
}

.k-menu:not(.k-context-menu) {
    background-color: #00AC00;
    color: white;
}

.k-link {
    color: white;
}

.k-state-highlight > .k-link {
    color: #00AC00 !important;
    border-bottom-color: white;
}

.k-item > .k-link {
    color: white;
}

.k-item > .k-state-border-down {
    background-color: #00AC00;
}

.k-group {
    background-color: #00AC00
}

.k-picker {
    border-color: #00AC00;
    background-color: white; /* #0032BE; */
    color: black; /*white; */
}
.k-picker.k-invalid {
    color: black
}

.k-button-solid-base {
    border-color: #00AC00;
    background-color: white; /* #0032BE; */
    color: black; /*white; */
}

svg {
    vertical-align: initial;    /* add new button on grid needs this */
}

    .k-button-solid-base:hover {
        background-color: #00AC00 !important;
        color: white;
    }

a {
    color: #0032BE;
    text-decoration: underline;
}

td a {
    font-weight: bold;
}

.k-radio {
    border-color: #00AC00;
    color: #0032BE;
}

    .k-radio:checked {
        border-color: #00AC00;
        color: #0032BE;
    }

.k-window-titlebar {
    border-color: #00AC00;
    background-color: #0032BE;
    color: white;
}

.k-grid-header .k-header > .k-link {
    color: white;
}

.k-pager-wrap {
    border-color: #00AC00;
    background-color: #0032BE;
    color: white;
}

.k-menu .k-hover > .k-link {
    background-color: #00AC00 !important;
    text-decoration: underline;
    color: white !important;
}
/*.k-state-highlight {
    background-color: #1B16CC;
}

.k-active {
    background-color: #1B16CC;
}
.k-menu-group .k-item > .k-link:hover {
    background-color: #1B16CC;
}*/
.k-tabstrip-items {
    font-size: 12px;
}

    .k-tabstrip-items .k-link {
        color: inherit;
    }

.k-tabstrip .k-content.k-active {
    border-top-color: #78D2E6;
    border-top-width: thick;
}

.btn-primary {
    background-color: #0032BE;
}

.btn, .btn:hover {
    border-width: 1px;
    border-color: black;
}

    .btn:hover {
        /*opacity: 1.5;*/
        /*        background-color: #78D2E6;
        color: white;*/
        text-decoration: underline;
    }
.btn.small {
    line-height:1.0;
    font-size: 0.8rem;
}


.sticky {
    position: sticky;
    position: -webkit-sticky;
    top: 0px;
    width: 100%;
    z-index: 999999;
    background-color: white;
    /*box-shadow: 0px 5px 3px grey;*/
    padding: 0;
}

.column1 {
    clear: both;
    float: left;
    height: 100%;
    margin-right: 0px;
    min-width: 360px;
}

div.field {
    margin-top: 15px;
}
div.field.break {
    margin-top:20px;
}

    div.field.inline {
        display: inline-block;
    }

    div.field.column2 {
        margin-left: 20px;
    }
    div.field.radioDesc {
        margin-top: 2px;
    }

label {
    display: inline-block;
    min-width: 150px;
    margin-right: 5px;
}

    label.block {
        display: block;
    }

    label.required:after {
        content: "*";
        color: red;
        padding-left: 3px;
    }

    label.Checkbox {
        display: inline;
    }

    label.column2 {
        margin-left: 20px;
        min-width: 100px;
    }

.field-validation-error, .text-danger, .error {
    color: red;
    display: block;
}

.input-validation-error, .k-invalid {
    border: 1px solid #ff0000;
    background-color: #ffeeee;
    padding: 3px;
}

.input-validation-error1 {
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}

.k-messagebox-error {
    color: red;
    display: block;
    border: none;
    background-color: transparent;
}

textarea {
    width: 100%;
    min-height: 100px;
}

    textarea.brief {
        min-height: 30px;
    }

input[type=text].email {
    min-width: 300px;
}

input[type=text].wide, [type=url].wide, [type=email].wide {
    min-width: 400px;
}

textarea.tall {
    height: 400px;
}

textarea.autosize { /*PageGenerator needs this*/
    resize: none;
    overflow: hidden;
}

input[type=text]:read-only, input[type=email]:read-only, input[type=url]:read-only, input[type=numOnly]:read-only, textarea:read-only, .readonly {
    background-color: lightgray;
    border-radius: 5px;
}

input.narrow {
    width: 100px;
}

input.uppercase {
    text-transform: uppercase;
}

span.narrow {
    width: 160px;
}

/* Interim details showed too narrow with width:auto */
.k-picker.narrow, .k-datepicker.narrow {
    /*width: auto;*/
    min-width: 70px;
    margin-right: 5px;
}

.k-picker.medium, .k-datepicker.medium {
    width: auto;
    min-width: 170px;
    margin-right: 5px;
}

.k-picker.medium-wide {
    width: auto;
    min-width: 270px;
    margin-right: 5px;
}

.k-calendar {
    font-size: 11px;
}

.field.column2 label {
    min-width: auto;
}

label.charCount {
    font-size: small;
    margin-top: -10px;
}

span.info {
    display: block;
    font-size: small;
    font-style: italic;
}

span.display {
    display: block;
    background-color: lightgray;
    border-radius: 5px;
    padding: 1px 2px;
    border-width: 2px;
    border-style: inset;
}

.grid {
    font-size: small;
}

canvas {
    border: inset 1px grey;
}

a.external {
    background: url(../Images/Icon_External_Link.png) center right no-repeat;
    padding-right: 13px;
}

#base input {
    margin-right: 10px;
}
/* #endregion */
@media (max-width: 767px) {
    #banner-image {
        max-width: 100%;
        height: inherit;
    }

    #appTitle {
        display: none !important;
    }

    #responsive-panel {
        transition: all linear .2s;
    }

    .configure {
        display: block;
        float: right;
    }

    .footer {
        bottom: -80px;
    }


    .k-rpanel {
        padding: 0 1rem;
    }

    .k-rpanel-expanded {
        padding: .5rem 1rem;
    }

    .navbar-header {
        width: 100%;
    }

    .k-menu .k-item,
    .k-menu .k-link {
        width: 100%;
    }

    .k-menu .k-link {
        box-sizing: border-box;
    }

    #configure {
        background-color: transparent;
        color: white;
    }

    div.field.column2 {
        margin-left: auto;
    }

    .field label {
        min-width: auto;
    }

    label.column2 {
        margin-left: auto;
        min-width: inherit;
    }

    label.phoneSingle {
        display: block;
    }

    input[type=text].wide, [type=url].wide, [type=email].wide {
        min-width: 100%;
    }

    .k-picker {
        max-width: 300px;
    }

    .k-datepicker.narrow {
        width: 100%;
    }
}
