﻿:root {
    --table-head-bg-rgba: rgba(241,245,247, 1);
}

body {
    min-height: 100vh;
}

#backgroundVideo {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    opacity: 0.6;
    filter: brightness(80%) saturate(120%);
    z-index: 0;
}

.background-overlay {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
}

.ecoDriver-dark {
    background-color: #2B2D43;
    color: #fff;
}

.small-shadow {
    box-shadow: 0 0 8px 2px rgba(10, 10, 10, 0.3);
}

iframe.fill-space {
    width: 100%;
    overflow: hidden;
}

#chatDialog > .e-dlg-content {
    overflow: hidden !important;
}

.form-control {
    color: #212529 !important;
}

.min-height-300 {
    min-height: 300px;
}

.min-height-550 {
    min-height: 550px;
}

.min-height-600 {
    min-height: 600px;
}

.min-height-700 {
    min-height: 700px;
}

.height-100-percent {
    height: 100%;
}

.max-width-100-percent {
    max-width: 100%;
}

.overflow-vertical-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
}

.height-limited-70 {
    max-height: 70%;
    overflow-x: auto;
    scrollbar-width: thin;
}

.height-limited-100 {
    max-height: 100%;
    overflow-x: auto;
    scrollbar-width: thin;
}

div.zindex999 {
    z-index: 999 !important;
}

.blazored-toast {
    z-index: 999999 !important;
}

.blazored-toast-container {
    z-index: 999999 !important;
}

#blazor-error-ui {
    /* Blocking overlay shadow */
    background: rgba(0, 0, 0, 0.5);
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
}

    #blazor-error-ui > .card {
        margin-left: auto;
        margin-right: auto;
        margin-top: 10%;
        width: 50%;
        z-index: 1001;
    }

    @media (max-width: 500px) {
        #blazor-error-ui > .card {
            width: 100%;
        }
    }


.fw-100 {
    font-weight: 100 !important;
}

.fw-200 {
    font-weight: 200 !important;
}

.fw-300 {
    font-weight: 300 !important;
}

.fw-400 {
    font-weight: 400 !important;
}

.fw-500 {
    font-weight: 500 !important;
}

b, strong {
    font-weight: 600;
}

@media (max-width: 639px) {
    .page-title-box {
        display: flex !important;
    }
}

.text-blue {
    color: #5993fd !important;
}

.text-red {
    color: #f1556c !important;
}

.text-orange {
    color: #fd7e14 !important;
}

/* Fade-in enquiry hover lines */
rect[id^='dashboardMeterChart_stripline_Behind_rect_PrimaryXAxis'][fill='#f7b84b'] {
    animation: fade-in-half 0.3s linear 1;
}

.max-height-300-overflow-y {
    max-height: 300px;
    overflow-y: auto;
}

.display-7 {
    font-size: 1.2rem;
}

.btn-lg-lowerpad {
    padding: 5px 12px;
}

.pull-top-left-10 {
    transform: translateY(-10px);
}

text[id*='stripline_Over_text'] {
    text-shadow: 0 0 2px white;
}

.btn-white {
    background-color: var(--bs-gray-100);
}

/* Prevent input zoom on mobile */
@supports (-webkit-overflow-scrolling: touch) {
    * {
        -webkit-text-size-adjust: none;
        text-size-adjust: none;
    }

    input {
        font-size: 16px !important;
    }
    /*Alternative to test: input {
        transform: scale(0.875);
        transform-origin: left center;
        margin-right: -14.28%;
    }*/
}

@media (min-width: 992px) {
    #advanced-filter-btn-container {
        align-self: flex-end;
        margin-bottom: 2px;
    }
}

.enquiry-icon-container {
    transform: translateY(-0px);
    text-align: center;
    font-size: 26px;
    width: 30px;
    background-color: rgba(255, 255, 255, 0);
}

.enquiry-marker {
    border-radius: 50%;
}

.enquiry-icon-count {
    /* circle shape, size and position */
    position: absolute;
    right: -0.4em;
    top: -0.2em;
    min-width: 1.6em; /* or width, explained below. */
    height: 1.6em;
    border-radius: 0.8em; /* or 50%, explained below. */
    border: 0.05em solid white;
    background-color: red;
    /* number size and position */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.4em;
    color: white;
}


/*
    Syncfusion overrides
*/

/* Tooltip arrow fix, showing lines near arrow, maybe template collision? */
.e-arrow-tip-inner {
    visibility: hidden !important;
}

.e-control, [class^="e-"] *:not([class*="e-icon"]):not([class*="fas"]):not([class*="far"]):not([class*="mdi-"]):not([class*="bx-"]):not([class*="ri-"]):not([class*="wi-"]):not([class*="fe-"]):not([class*="mjx-"]) {
    font-family: 'Montserrat', 'Poppins', serif;
}

.e-spin-overlay {
    z-index: 10002 !important;
}

.e-dlg-header .header-title {
    font-weight: 600 !important;
}

.e-dialog.e-dlg-resizable {
    padding-bottom: 0px;
}

.e-dlg-header-content .e-btn .e-btn-icon, .e-dlg-header-content .e-css.e-btn .e-btn-icon {
    vertical-align: top !important;
}

div[id^='modal-dialog-'] div.e-dialog.e-dlg-resizable {
    padding-bottom: 0px;
}

.e-dialog .e-dlg-content,
.e-dialog .e-dlg-content .e-grid .e-headercelldiv,
.e-dialog .e-dlg-content .e-grid .e-rowcell,
.e-dialog .e-dlg-content .e-grid .e-groupcation,
.e-dialog .e-dlg-content .e-pager {
    font-size: 13px !important;
}

td.e-week-number span {
    color: #DE64AC !important;
}

.e-btn {
    font-size: 13px !important;
    padding: 7.2px 14.4px 7.2px 14.4px !important;
}

    .e-btn.e-primary {
        background-color: #5BCB18 !important;
        border-color: #5BCB18 !important;
    }

        .e-btn.e-primary:hover {
            background-color: #4dad14 !important;
            border-color: #4dad14 !important;
        }

        .e-btn.e-primary:focus .e-btn.e-primary:active {
            background-color: #49a213 !important;
            border-color: #449812 !important;
        }

    .e-btn.e-secondary {
        background-color: #2B2D43 !important;
        border-color: #2B2D43 !important;
    }

        .e-btn.e-secondary:hover {
            background-color: #252639 !important;
            border-color: #252639 !important;
        }

        .e-btn.e-secondary:focus .e-btn.e-secondary:active {
            background-color: #222436 !important;
            border-color: #222436 !important;
        }

.e-spinner-pane.e-spin-primary .e-spinner-inner .e-spin-bootstrap5 {
    stroke: #5BCB18;
    fill: #5BCB18;    
}

.e-spinner-pane.e-spin-primary .e-spinner-inner .e-spin-label {
    color: #6c757d;
}

.e-centered-datepicker input {
    text-align: center;
    padding-top: 5px !important;
}

/* Hide sf grid cell focus outline */
.e-grid td.e-rowcell.e-focus.e-focused {
    display: none !important;
}

.e-grid td.e-groupcaption .e-focus.e-focused {
    display: none !important;
}

.e-grid th.e-headercell.e-focus.e-focused {
    display: none !important;
}

.e-dlg-header small {
    font-size: 12px;
}

rect[id$='Zooming_Rect'] {
    opacity: 0.5 !important;
}

.dropdown-item {
    cursor: pointer !important;
}

.e-dlg-header h2 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    letter-spacing: 3px;
}

    .e-dlg-header h2.text-custom {
        color: rgb(108, 117, 125) !important;
    }

.tooltip-custom {
    border-radius: 5px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 6px;
    padding-top: 6px;
    background: black;
    border: 1px #919191;
}

.tooltip-custom-label {
    margin-left: 6px;
    padding-left: 4px;
    padding-bottom: 10px;
    color: white;
    font-size: 12px;
}

.tooltip-content h1, .tooltip-content h2, .tooltip-content h3, .tooltip-content h4, .tooltip-content h5, .tooltip-content h6 {
    color: #ffffff !important;
}

.tooltip-content h6 {
    font-weight: bolder !important;
    margin-top: 0px;
    margin-bottom: 2px !important;
}

.tooltip-content strong {
    font-weight: bolder !important;
}

/*
    Syncfusion popup related
*/

.e-dialog {
    box-shadow: 0 16px 48px rgba(0,0,0,.475);
}

    .e-icon-dlg-close, .e-icon-dlg-close:hover, .e-icon-dlg-close:active, .e-icon-dlg-close:focus,
    .e-dialog .e-btn.e-dlg-closeicon-btn:hover span,
    .e-dialog .e-btn.e-dlg-closeicon-btn:active span,
    .e-dialog .e-btn.e-dlg-closeicon-btn:focus span {
        color: rgb(255, 255, 255);
    }

.e-icon-dlg-close:hover {
    color: rgb(255, 255, 255);
}

.e-dialog .e-dlg-header-content {
    position: relative;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    background-color: rgb(43, 45, 67);
    color: rgb(255, 255, 255);
    border-top: 1px solid rgb(43, 45, 67);
    border-left: 1px solid rgb(43, 45, 67);
    border-right: 1px solid rgb(43, 45, 67);
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}

.e-dlg-header, .e-dlg-header * {
    color: rgb(255, 255, 255);
}

/*
    End Syncfusion popup related
*/
/*
    Syncfusion table related
*/
.grid-container .e-grid table thead {
    background-color: var(--table-head-bg-rgba);
}

.grid-container .sf-pager {
    border-top-style: none;
    padding-top: 20px;
}

.grid-container .e-pager {
    border-style: none;
}

    .grid-container .e-pager div.e-icons.e-pager-default {
        color: rgb(33, 37, 41);
    }

    .grid-container .e-pager .e-numericitem {
        color: rgb(33, 37, 41);
    }

    .grid-container .e-pager .e-currentitem {
        background-color: #5BCB18;
        color: #ffffff;
        border-color: #5BCB18;
        border-top-width: 4px;
    }

        .grid-container .e-pager .e-numericitem .e-active, .grid-container .e-pager .e-currentitem.e-numericitem.e-focused {
            background-color: #5BCB18;
            box-shadow: none;
            color: #ffffff;            
        }

.grid-container .e-grid table thead th .e-headertext {
    font-size: 13px;
    font-weight: 600;
}

.grid-container .e-grid .e-rowcell {
    font-size: 13px;
    font-weight: 400;
}

.grid-container .e-grid {
    border-left-style: none;
    border-right-style: none;
    border-bottom-style: none;
}

    .grid-container .e-grid .e-row, .grid-container .e-grid .e-rowcell {
        border-bottom-style: solid;
    }

.grid-container table thead, .grid-container table thead tr, .grid-container table thead th,
.grid-container table tbody, .grid-container table tbody tr, .grid-container table tbody td,
.grid-container .e-gridheader {
    border-left-style: none;
    border-right-style: none;
    border-top-style: none;
}

.small-text-grid .e-grid .e-headercelldiv {
    font-size: 12px !important;
}

.small-text-grid .e-grid .e-rowcell {
    font-size: 12px !important;
}

.small-text-grid .e-grid .e-summarycell {
    font-size: 12px !important;
}

/*
    End Syncfusion table related
*/

/*
    End Syncfusion overrides
*/

/*
    Animations
*/
@keyframes fade-in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes fade-in-half {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 0.5;
    }
}

@keyframes pop-in {
    0% {
        opacity: 0;
        transform: scale(0.1);
    }

    50% {
        opacity: 0.8;
        transform: scale(1.2);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes pop-in-glow {
    0% {
        opacity: 0;
        transform: scale(0.1);
        box-shadow: 
            0 0 0px 0px rgba(255, 240, 0, 0.5),
            inset 0 0 10px 10px rgba(255, 240, 0, 0.5);
    }
    50% {
        opacity: 0.8;
        transform: scale(1.2);
        box-shadow: 
            0 0 5px 5px rgba(255, 240, 0, 0.5),
            inset 0 0 10px 10px rgba(255, 240, 0, 0.5);
    }
    70% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 
            0 0 10px 10px rgba(255, 240, 0, 0.5),
            inset 0 0 10px 10px rgba(255, 240, 0, 0.5);
    }
    100% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0px 0px rgba(255, 240, 0, 0.5),
    }
}

@keyframes pop-out {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    20% {
        opacity: 0.8;
        transform: scale(1.2);
    }
    50% {
        opacity: 0.8;
        transform: scale(0.8);
    }
    100% {
        opacity: 0;
        transform: scale(0.1);
    }
}

@keyframes pop {
    50% {
        transform: scale(1.2);
    }
}

.pop-in {
    animation: pop-in 0.8s linear 1;
    animation-delay: 0s;
}

.pop-out {
    animation: pop-out 0.5s linear 1;
    animation-fill-mode: forwards;
    animation-delay: 0s;
}

.pop-in-glow {
    /*opacity: 0;
    transform: scale(0.1);*/
    animation: pop-in-glow 1s linear 1;
    animation-fill-mode: forwards;
    animation-delay: 0s;
}

.pop-hover:hover {
    animation: pop 0.3s linear 1;
}

/*
    End Animations
*/