html {
    font-family: 'Roboto', sans-serif;
    font-size:13px;
}

html * {
    box-sizing: border-box;
}

html,
body,
.ui-mainWrapper {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    height:100%;
    flex-grow: 1;
    flex-shrink: 0;
}

h1 {
    font-weight: 700;
    font-size: 17px;
}

h2 {
    font-weight: 700;
    font-size: 15px;
}

.ui-mainHeader,
.ui-mainContent,
.ui-mainFooter {
    padding-left:calc(50vw - 400px);
    padding-right:calc(50vw - 400px);
}

/*BASIC INPUT*/

input[type="text"]
{
    border:1px solid #d9d9d9;
}

button,
input[type="button"],
input[type="submit"]{
    color:#ffffff;
    background-color: #e50100;
    cursor:pointer;
    border:none;
    padding:10px 16px;
    font-size:17px;
}

button:hover
input[type="button"]:hover,
input[type="submit"]:hover {
    background-color: #ac0100;
}

a {
    color: #e50100;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/*DATA TABLE*/

table {
    border:none;
    border-collapse: collapse;
    width:100%;
}

table td,
table th{
    border:none;
    padding: 10px;
    font-size:13px;
    text-align: center;
}

table th {
    font-weight: 700;
    padding: 20px 10px;
}

table td:first-of-type,
table th:first-of-type {
    text-align: left;
}

table thead {
    background-color: #d9d9d9;
}

table tbody tr {
    border-bottom: 1px solid #d9d9d9;
}

/*HEADER*/

.ui-mainHeader {
    border-bottom: 1px solid #d9d9d9;
    width: 100%;
    height: 70px;
    display: flex;
    flex-direction: row;
    align-items: center;
    background-color: #ffffff;
    justify-content: space-between;
    flex-shrink:0;
    flex-grow:0;
}

.ui-mainHeader > span {
    font-weight: 900;
    font-size: 19px;
}

.ui-mainHeader > .ui-app-logo
{
    font-size:0px;
    background-image: url('../img/logo_VA.svg');
    background-position: left center;
    background-repeat: no-repeat;
    background-color: transparent;
    background-attachment: scroll;
    background-size: contain;
    width:240px;
    height: 35px;
    max-width:calc(100% - 70px);
}

.ui-logo {
    background-image: url('../img/logo_toyota.svg');
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
    background-attachment: scroll;
    background-size: contain;
    width:50px;
    height: 50px;
}

.ui-lexus-logo {
    background-image: url('../img/logo_lexus.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-color: transparent;
    background-attachment: scroll;
    background-size: contain;
    width: 220px;
    height: 120px;
}

/*CONTENT*/

.ui-separator {
    border-bottom:1px solid #d9d9d9;
}

h1.ui-separator,
h2.ui-separator {
    padding-bottom:5px;
}

.ui-row
{
    display:flex;
    flex-direction: row;
    width:100%;
    align-items: center;
}

.ui-row.ui-centered {
    justify-content: center;
    text-align: center;
}

.stickyButton {
    position: sticky;
    bottom: 5px;
}

/* Popup box BEGIN */
.afterConfirmPopup > div:before {
    content: '';
    display: inline-block;
    height: 30px;
    width: 30px;
    border: 1px solid #01b31f;
    color: #01b31f;
    background: url(../img/ico_tick.svg) no-repeat scroll center center transparent;
    background-size: 16px auto;
    border-radius: 50%;
    margin-top: 6px;
}

.afterConfirmPopup {
    cursor: pointer;
    position: fixed;
    text-align: center;
    top: 0px;
    width: 100%;
    z-index: 1;
    font-size: 18px;
    color: black;
}

.afterConfirmPopup > div {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: center;
    text-align: center;
    box-shadow: 0px 1px 5px 1px rgb(0 0 0 / 20%);
    padding: 10px 20px;
    background-color: #f2f2f2;
    position: relative;
}

.popupCloseButton {
    cursor: pointer;
    display: inline-block;
    font-family: arial;
    font-weight: bold;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 25px;
    line-height: 25px;
    width: 25px;
    height: 25px;
    text-align: center;
}
/* Popup box BEGIN */

.ui-leader
{
    margin-left:20px;
}

.ui-leader p {
    display: inline-block;
    width:100%;
    border-bottom: 1px solid #d9d9d9;
    margin:0px;
    padding:10px;
    text-align: center;
    font-weight: 700;
}

.ui-leader p:last-of-type {
    border-bottom: none;
}

.ui-leader p span {
    font-weight: 400;
}

.ui-estimates table td:first-of-type,
.ui-estimates table th:first-of-type {
    width: 75%;
}

.ui-estimates label.ui-labelButton {
    margin-left:10px;
}

.ui-estimates label.ui-labelButton > span,
.ui-estimates .ui-button.ui-watchVideo{
    border: 1px solid #000000;
    color: #000000;
    padding: 10px 16px 10px 38px;
    cursor:pointer;
    display: inline-block;
    font-weight: 500;
}

.ui-estimates .ui-button.ui-watchVideo
{
    background-image: url('../img/ico_play.svg');
    background-size: 16px auto;
    background-repeat: no-repeat;
    background-color: #ffffff;
    background-attachment: scroll;
    background-position: 16px center;
    font-size: 13px;
}

.ui-estimates .ui-button.ui-watchVideo:hover
{
    background-color: #000000;
    color:#ffffff;
    background-image: url('../img/ico_play_fff.svg');
    background-size: 16px auto;
}

.ui-estimates label.ui-labelButton input {
    display: none;
}

.ui-estimates label.ui-labelButton input:checked + span,
.ui-estimates label.ui-labelButton input:checked + input + span {
    background-color: #000000;
    border:1px solid #000000;
    color: #ffffff;
}

.ui-estimates label.ui-labelButton.ui-approval > span {
    border: 1px solid #01b31f;
    color: #01b31f;
    background-image: url('../img/ico_tick.svg');
    background-size: 16px auto;
    background-repeat: no-repeat;
    background-color: #ffffff;
    background-attachment: scroll;
    background-position: 16px center;
}

.ui-estimates label.ui-labelButton.ui-approval input:checked + span,
.ui-estimates label.ui-labelButton.ui-approval input:checked + input + span {
    background-color: #01b31f;
    border:1px solid #01b31f;
    color: #ffffff;
    background-image: url('../img/ico_tick_fff.svg');
    background-size: 16px auto;
}

.ui-estimates label.ui-labelButton.ui-refusal > span {
    border: 1px solid #e50100;
    color: #e50100;
    background-image: url('../img/ico_cancel.svg');
    background-size: 14px auto;
    background-repeat: no-repeat;
    background-color: #ffffff;
    background-attachment: scroll;
    background-position: 14px center;
}

.ui-estimates label.ui-labelButton.ui-refusal input:checked + span,
.ui-estimates label.ui-labelButton.ui-refusal input:checked + input + span {
    background-color: #e50100;
    border:1px solid #e50100;
    color: #ffffff;
    background-image: url('../img/ico_cancel_fff.svg');
    background-size: 14px auto;
}

.ui-estimateCategory {
    background-color: #e6e6e6;
    border:none;
}


.ui-estimateName,
.ui-estimateName .ui-priority{
    display:flex;
    flex-direction:row;
    align-content: center;
    align-items: center;
}

.ui-estimateName {
    justify-content: space-between;
    padding-left: 10px;
}

.ui-estimateName .ui-priority {
    margin-left: 5px;
}


.ui-estimateName .ui-priority > p{
    font-weight: 700;
}

.ui-estimateName .ui-priority > *{
    margin:0px 0px 0px 5px;
    padding:0px;
}

.ui-estimateName.ui-priority-red {
    background-color:#e50100;
    border:1px solid #e50100;
    color:#ffffff;
}

.ui-estimateName.ui-priority-yellow{
    background-color: #e5b200;
    border:1px solid #e5b200;
    color:#ffffff;
}

.ui-estimateName.ui-priority-green{
    background-color: #01b31f;
    border:1px solid #01b31f;
    color:#ffffff;
}

.ui-estimateName .ui-priority-red > p {
    color:#e50100;
    display: inline-block;
    background: #ffffff;
    padding: 15px 10px;
}

.ui-estimateName .ui-priority-yellow > p{
    color: #e5b200;
    display: inline-block;
    background: #ffffff;
    padding: 15px 10px;
}

.ui-estimateName .ui-priority-green > p{
    color: #01b31f;
    display: inline-block;
    background: #ffffff;
    padding: 15px 10px;
}

.ui-decision-comment {
    display:flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    padding:10px 0px;
    width: 100%;
}

.ui-decision-comment > p {
    font-weight:700;
}

.ui-dt-summaryRow
{
    justify-content: space-between;
}

.ui-dt-summaryRow > div {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.ui-dt-costSummary {
    background-color: #d9d9d9;
    margin:0px;
    padding:20px 10px;
    font-weight: 700;
    display: flex;
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: 50%;
    justify-content: space-between;
}

.ui-commentInput{
    width:100%;
    height:80px;
}

.ui-client-comment,
.ui-dealer-comment{
    padding:0px 10px;
    border-radius:5px;
    margin-bottom:10px;
    position: relative;
}

.ui-comment-timeStamp {
    text-align:right;
}

.ui-client-comment
{
    background-color: #ffffff;
    border:1px solid #d9d9d9;
    margin-left:45px;
    margin-right:45px;
}

.ui-dealer-comment
{
    background-color: #d9d9d9;
    border:1px solid #d9d9d9;
    margin-left:45px;
    margin-right:45px;
}

.ui-client-comment:before {
    content:'';
    display: inline-block;
    position: absolute;
    right: -45px;
    top:0px;
    border-radius: 50%;
    background: url('../img/ico_userAvatar.svg') no-repeat scroll center center transparent;
    background-size: contain;
    width:36px;
    height: 36px;
}

.ui-dealer-comment:before {
    content:'';
    display: inline-block;
    position: absolute;
    left: -45px;
    top:0px;
    border-radius: 50%;
    background: url('../img/logo_toyota.svg') no-repeat scroll center center #ffffff;
    border:1px solid #d9d9d9;
    background-size: 22px auto;
    width:36px;
    height: 36px;
}

.ui-mainSubmit {
    margin:auto;
    width:100%;
    background-color: grey;
    cursor: default;
}

.ui-repairHistory {
    margin:0px auto 10px auto;
    border: 1px solid #000000;
    color: #000000;
    padding: 10px 16px 10px 38px;
    cursor:pointer;
    display: inline-block;
    font-weight: 700;
    text-decoration: none;
    background-image: url('../img/ico_repair_000.svg');
    background-size: 14px auto;
    background-repeat: no-repeat;
    background-color: #ffffff;
    background-attachment: scroll;
    background-position: calc(50% - 75px) center;
    width: 100%;
}

.ui-repairHistory:hover,
.ui-repairs a:hover{
    text-decoration: none;
}

.ui-scrollable-x {
    overflow-x:auto;
}

.ui-scrollable-y {
    overflow-y:auto;
}

.ui-scrollable {
    overflow:auto;
}

.ui-repairs a {
    margin:0px auto 10px auto;
    border: 1px solid #000000;
    color: #000000;
    padding: 10px 16px;
    cursor:pointer;
    display: inline-block;
    font-weight: 700;
    text-decoration: none;
    background-color: #ffffff;
    width: 100%;
}

.ui-repairs table{
    position: relative;
}

.ui-repairs table th:last-of-type,
.ui-repairs table td:last-of-type {
    position: sticky;
    right: 0px;
    box-shadow: -1px 1px 5px 1px rgba(0,0,0,0.2);
}

.ui-repairs table th:last-of-type:before,
.ui-repairs table td:last-of-type:before {
    content:'';
    display: inline-block;
    position: absolute;
    left:0px;
    top:0px;
    height:100%;
    width:1px;
    background:rgba(0,0,0,0.2);
}

.ui-repairs table th:last-of-type {
    background: #d9d9d9;
}

.ui-repairs table td:last-of-type {
    background: #ffffff;
}

.ui-mainContent.ui-auth,
.ui-mainContent.ui-noAccess {
    align-content: center;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    padding-bottom: 70px;
}

.ui-mainContent.ui-auth {
    background-color: #e6e6e6;
}

.ui-warningMessage {
    align-content: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    color:#e50100;
}

.ui-mainContent.ui-auth .ui-logo {
    margin-bottom:30px;
    width:70px;
    height: 70px;
}

.ui-authPanel
{
    display: flex;
    flex-direction: column;
    width: 343px;
    align-items: center;
    align-content: center;
    justify-content: center;
    text-align: center;
    box-shadow:0px 1px 5px 1px rgba(0,0,0,0.2);
    padding:10px 20px;
    background-color: #ffffff;
}

.ui-mainContent.ui-noAccess .ui-warningMessage {
    background-image: url('../img/ico_access_denied.svg');
    background-attachment: scroll;
    background-position: center 20px;
    background-repeat: no-repeat;
    background-size: 60px auto;
    font-size: 15px;
    padding:100px 20px 20px 20px;
}

.ui-authPanel p.ui-warningMessage,
.ui-authPanel p.ui-message{
    width: 100%;
    display: inline-block;
}

.ui-mainContent.ui-noAccess .ui-warningMessage
{
    color:#000000;
}

.ui-authPanel form{
    width:100%;
}

.ui-authPanel input#phone {
    max-width:305px;
    width: 100%;
    text-align: center;
    padding: 10px;
    font-weight: 500;
    font-size: 15px;
}

.ui-authPanel button[type="submit"] {
    width:100%;
}

.ui-row.ui-sticky {
    position: sticky;
    top:0px;
    background: #ffffff;
    z-index: 9;
}

.ui-row.ui-sticky .ui-video{
    position: relative;
    max-width:100%;
    max-height:100vh;
    margin: auto;
}

.ui-row.ui-sticky .ui-video video {
    max-width:100%;
    max-height:100vh;
    width:auto;
    height:auto;
}

.ui-button.ui-closeVideo {
    display: none;
    position: absolute;
    top:0px;
    right: -1px;
}

/*FOOTER*/

/*RWD*/
@media (orientation: portrait) {
    .ui-mainHeader,
    .ui-mainContent,
    .ui-mainFooter {
        padding-left:20px;
        padding-right:20px;
    }

    .ui-mainHeader
    {
        height:35px;
    }

    .ui-video,
    .ui-video video,
    .ui-leader {
        width:100%;
    }

    .ui-row {
        flex-wrap: wrap;
    }

    .ui-dt-costSummary {
        width:100%;
        flex-grow: 1;
        margin-bottom: 10px;
    }

    .ui-dt-summaryRow > div
    {
        justify-content: space-between;
        display: flex;
        flex-direction: column-reverse;
        flex-basis: 100%;
    }

    .ui-dt-summaryRow > div > div
    {
        justify-content: space-between;
        display: flex;
        flex-direction: row;
        width: 100%;
        margin-bottom:10px;
    }

    .ui-estimates label.ui-labelButton {
        margin:0px;
    }

    .ui-mainSubmit,
    .ui-repairHistory
    {
        width: 100%;
    }

    .ui-authPanel
    {
        box-shadow: none;
    }

    .ui-mainContent.ui-auth,
    .ui-mainContent.ui-noAccess
    {
        background-color: #ffffff;
    }

    .ui-sticky .ui-leader {
        display:none;
    }

    .ui-mainHeader > .ui-logo,
    .ui-mainHeader > .ui-app-logo
    {
        height:25px;
    }
}

@media only screen and (max-width: 800px) {
    .ui-mainHeader,
    .ui-mainContent,
    .ui-mainFooter {
        padding-left:20px;
        padding-right:20px;
    }

    .ui-mainHeader
    {
        height:60px;
    }

    .ui-authPanel{
        width: auto;
    }

    .ui-mainHeader > .ui-logo,
    .ui-mainHeader > .ui-app-logo
    {
        height:50px;
    }
}

@media only screen and (max-width: 400px)
{
    .ui-mainHeader
    {
        height:35px;
    }

    .ui-mainHeader > .ui-logo,
    .ui-mainHeader > .ui-app-logo
    {
        height:25px;
    }
}

@media only screen and (max-width: 300px) {
    .ui-mainHeader
    {
        height:35px;
    }

    .ui-mainHeader > .ui-logo
    {
        height:25px;
        margin-top:5px;
        margin-bottom:5px;
    }

    .ui-mainHeader > .ui-app-logo{
        width:25px;
        height:25px;
        margin-top:5px;
        margin-bottom:5px;
        background-image: url('../img/logo_VA.svg');
        background-position: left center;
        background-repeat: no-repeat;
        background-color: transparent;
        background-attachment: scroll;
        background-size: auto 100%;
    }
}
@media (hover: hover) {

}