/* === Base Reset === */
* {
    text-shadow: none !important;
}

body {
    font-family: Helvetica, Arial, Sans-Serif !important;
    letter-spacing: normal;
    -webkit-font-smoothing: antialiased;
}
.MsoNormal {
    margin-top: 0px;
    margin-bottom: 0px;
}

/* === Header === */
.app .app-header.app-header-design-default {
    background: #194036;
    background-color: #194036;
    border-bottom: 1px solid #194036;
}

/* === Top Navigation === */
.app .app-navigation-horizontal {
    background-color: #194036;
    background: #194036;
    border-color: #FFF;
}
.app .app-navigation-horizontal nav > ul > li > a {
    background-color: #194036 !important;
    color: #fff !important;
    -webkit-font-smoothing: antialiased;
    border-radius: 0 !important;
    padding-top: 12px;
    padding-bottom: 12px;
    line-height: normal;
    height: 100%;
    display: flex;
    align-items: center;
    transition: none !important;
}
.app .app-navigation-horizontal nav > ul > li > a:hover {
    background-color: #194036 !important;
    color: #ffc51d !important;
    transition: none !important;
}
.app .app-navigation-horizontal nav > ul > li.active > a {
    background-color: #194036 !important;
    color: #ffc51d !important;
}
.app-navigation nav > ul > li a span.nav-icon-hexa,
.app-navigation.app-navigation-minimized nav > ul > li > a span.nav-icon-hexa {
    background: unset;
}

/* Top Nav border radius overrides -- removes border radius from default style sheet */
.app .app-navigation-horizontal nav > ul > li.active > a,
.app .app-navigation-horizontal nav > ul > li.active > a:focus-visible,
.app .app-navigation-horizontal nav > ul > li > a,
.app .app-navigation-horizontal nav > ul > li > a:focus-visible {
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 0px;
    -webkit-border-bottom-left-radius: 0px;
    -webkit-border-top-left-radius: 3px;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-bottomright: 0px;
    -moz-border-radius-bottomleft: 0px;
    -moz-border-radius-topleft: 0px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    border-top-left-radius: 3px;
}

/* === Left Navigation === */
.app-navigation.app-navigation-style-default {
    background: #FFF;
}
.app-navigation.app-navigation-style-default nav > ul > li > a {
    background-color: #fff;
    color: #000 !important;
    font-weight: 400;
    padding: 10px 16px;
    line-height: 1.6;
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    min-height: 40px;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    transition: none !important;
}
.app-navigation.app-navigation-style-default nav > ul > li > a .fa,
.app-navigation.app-navigation-style-default nav > ul > li > a span.fa {
    color: #000 !important;
}
.app-navigation.app-navigation-style-default nav > ul > li {
    border-bottom: 1px solid #8e8e8e77;
}

/* Left Nav Hover/Active */
.app-navigation.app-navigation-style-default nav > ul > li a:hover,
.app-navigation.app-navigation-style-default nav > ul > li a:hover span,
.app-navigation.app-navigation-style-default nav > ul > li a.active {
    color: #ffc51d !important;
    background: #194036;
    transition: none !important;
}
.app-navigation.app-navigation-style-default nav > ul > li a:hover span {
    color: #ffc51d !important;
}
.app-navigation.app-navigation-style-default nav > ul > li.active > a {
    background-color: #194036 !important;
    color: #ffc51d !important;
}

/* Left Nav Open Parent */
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a {
    background: #194036;
    color: #ffc51d !important;
}
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a span {
    color: #ffc51d !important;
}
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a:hover,
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a:hover span,
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a.active {
    background: #194036;
    color: #ffc51d !important;
    transition: none !important;
}

/* Left Nav Children */
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a,
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a span {
    background: #FFF;
    color: #000 !important;
}
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a:hover,
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a:hover span,
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a.active {
    color: #ffc51d;
    background: #194036;
    transition: none !important;
}
.app-navigation.app-navigation-style-default nav > ul > li > ul > li.active > a,
.app-navigation.app-navigation-style-default nav > ul > li > ul > li.active > a span {
    background-color: #ebebeb !important;
    color: #000 !important;
}

/* Sidebar carets */
.app-navigation.app-navigation-style-default nav > ul > li.openable > a:after {
    color: #000;
}
.app-navigation.app-navigation-style-default nav > ul > li.openable > a:hover:after {
    color: #fff;
}
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a:after {
    color: #fff;
}

/* === Footer === */
/* === Footer === */
.app .app-footer.app-footer-default {
    background-color: #ffc51d !important;
    background: #ffc51d;
}
.app .app-footer.app-footer-default a {
    color: #000;
    background: #ffc51d;
}
.app .app-footer.app-footer-default:after {
    background: #ffc51d;
}
.app .app-footer.app-footer-default .app-footer-line.darken {
    background: #ffc51d;
    background-color: #ffc51d;
    color: black;
}

/* === Headings === */
h1, h2, h3, h4, h5, h6 {
    color: #000 !important;
}

/* === Panels === */
.panel-primary > .panel-heading {
    background-color: #FFF;
    border-color: #FFF;
    color: #000;
}

/* === Buttons === */
.btn {
    font-size: 12px;
    background-image: none;
    background-color: #fff;
    border-color: #e5e5e5;
    box-shadow: none;
    border-radius: 4px;
    color: #555;
}
.btn.btn-primary {
    color: #000;
    background-color: #fff;
    border-color: #e5e5e5;
    transition: none !important;
}
.btn.btn-primary:hover,
.btn.btn-primary.active,
.btn.btn-primary:active,
.btn.btn-primary:active:focus {
    border-color: #bdbdbd;
    background: #fff;
    color: #194036;
    outline: 1px #000;
    border-style: solid;
    border-width: 1px;
    transition: none !important;
}
.btn.btn-primary.btn-icon-fixed span[class^="icon-"],
.btn.btn-primary.btn-icon-fixed span.fa {
    border-right: 1px solid #194036;
    background: #194036;
    color: #fff;
    transition: none !important;
}
.btn.btn-primary.btn-icon-fixed:hover span[class^="icon-"],
.btn.btn-primary.btn-icon-fixed:hover span.fa {
    border-right: 1px solid #ffc51d;
    background: #ffc51d;
    color: #194036;
    transition: none !important;
}
.btn-primary .btn-label {
    background-color: #4387bf;
    color: #fff;
}
.btn.btn-icon-fixed {
    border: 1px solid #d3d3d3 !important;
}

/* Vehicle search button */
.btn.btn-default.btn-vehiclesearch {
    padding-left: 11px;
    padding-right: 25px;
    padding-top: 0px;
}
.btn.btn-default.btn-vehiclesearch:focus {
    border: 1px dashed #000;
}

/* Danger button */
.btn.btn-danger {
    border-color: #D91215;
    background: #D91215;
    color: #fff;
}
.btn.btn-danger.btn-icon-fixed span[class^="icon-"],
.btn.btn-danger.btn-icon-fixed span.fa {
    border-right: 1px solid #D91215;
    background: #D91215;
}
.btn.btn-danger:focus-visible {
    border-color: #D91215;
    background: #D91215;
    color: #fff;
    border: 2px dashed #fff !important;
}

/* Success button */
.btn.btn-success.btn-block {
    color: #ffffff;
    background-color: #5E802D;
    border-color: #5E802D;
}
.btn.btn-success.btn-block:focus-visible {
    color: #ffffff;
    background-color: #5E802D;
    border-color: #5E802D;
    border: 2px dashed #FFC675 !important;
}

/* === Pagination === */
.app .pagination li.active > a,
.app .pagination li.active span {
    background: #312e30;
    color: #FFF;
}
.app .pagination > li > a:focus-visible {
    border: 1px dashed #666;
}

/* === Links === */
body a {
    color: #0B74AD;
    text-decoration: underline;
}
body a:focus-visible {
    color: #0B74AD;
    border: 1px dashed #000;
}

/* === SSO login button === */
.btn.btn-full {
    color: #fff;
    border: none;
    padding: 14px 20px 12px;
    border-radius: 1px;
    width: 250px;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s, color 0.3s, box-shadow 0.3s, border-radius 0.3s;
}
.btn.btn-full:hover {
    background: #0054a5;
    color: #fff;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
}
.btn.btn-full:focus-visible {
    color: #000;
    border: dashed 2px #292f43;
    border-radius: 8px;
    background: white;
    width: 250px;
    font-weight: 600;
    text-transform: uppercase;
    outline: none;
    box-shadow: none;
}
.sso-image {
    height: 50px;
    margin-left: -12px;
}

/* === Alerts === */
.alert.alert-success {
    background: #EDF9F2;
    color: #000;
    border: 1px solid #07b34e;
}
.alert.alert-success a {
    color: #0b2e13;
    text-shadow: none !important;
    text-decoration: underline;
}
.alert.alert-danger {
    background: #FDF2F2;
    color: #000;
    border: 2px solid #ef4043;
}
.alert.alert-danger a {
    color: #491217;
    text-decoration: underline;
}
.alert.alert-warning {
    background: #FFD485;
    color: #000;
    border: 2px solid #F69F00;
}
.alert.alert-warning a {
    color: #533f03;
    text-decoration: underline;
}
.alert.alert-info {
    background: #E3F5FC;
    color: #000;
    border: 2px solid #4fb5dd;
}
.alert.alert-info a {
    color: #002752;
    text-decoration: underline;
}

/* === WCAG Focus Styles === */
.app-navigation-horizontal nav > ul > li > a:focus,
.app-navigation.app-navigation-style-default nav > ul > li > a:focus {
    outline: 2px dotted #ffffff !important;
    outline-offset: 2px !important;
}
.app-navigation.app-navigation-style-default nav > ul > li > ul > li > a:focus {
    outline: 2px dotted #000000 !important;
    outline-offset: 2px !important;
}
.app .app-navigation-horizontal nav > ul > li > a:focus-visible {
    background-color: #ebebeb73 !important;
    color: #000 !important;
    border: 1px dashed #000 !important;
}
.app-navigation.app-navigation-style-default nav > ul > li.openable.open > a.focus-visible,
.app-navigation.app-navigation-style-default nav > ul > li.openable > a.focus-visible {
    background: #ebebeb73;
    color: #ed0a00;
    border: 1px dashed #000 !important;
}

/* === WCAG Form Controls === */
input[type="text"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
select,
textarea,
.form-control {
    border: 1px solid #8a8a8a;
    padding: 8px;
    font-size: 14px;
    color: #000000;
    background-color: #ffffff;
    border-radius: 4px;
    width: 100%;
    box-sizing: border-box;
    transition: none !important;
}
input:focus,
select:focus,
textarea:focus {
    outline: 2px dotted #194036 !important;
    outline-offset: 2px !important;
    border-color: #194036 !important;
    background-color: #ffffff;
    color: #000000;
}
input:disabled,
select:disabled,
textarea:disabled {
    background-color: #f5f5f5;
    color: #7a7a7a;
    cursor: not-allowed;
}
input[aria-invalid="true"],
select[aria-invalid="true"],
textarea[aria-invalid="true"] {
    border-color: #D0021B;
    background-color: #fff8f8;
    color: #D0021B;
}
.form-control:focus-visible {
    border: 1px dashed #666;
}
.btn.btn-default:focus-visible {
    border: 1px dashed #666;
}
.btn.btn-icon-fixed.btn-primary:focus-visible {
    border-color: #666;
    background: #fff;
    color: #000;
    border: 1px dashed #666 !important;
}
.btn.btn-primary.btn-icon-fixed:focus-visible span[class^="icon-"],
.btn.btn-primary.btn-icon-fixed:focus-visible span.fa {
    border-right: 1px solid #ffc51d;
    background: #ffc51d;
    color: #004488;
}

/* === Misc === */
.text-muted {
    color: #454545 !important;
}
.validation-summary-errors > ul > li {
    color: #ef4043;
}