﻿@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');

:root {
    --icon-red: #ff4c4c;
    --if-red: #d72027;
    --if-darker-red: #ac171c;
    --if-text-light: #fff;
    --icon-green: #3CB371;
    --icon-gray: #606c76;
    --if-blue: #386EA8;
    --if-darker-blue: #11437a;
    --form-desc-max-width: 350px;
    --default-label-font-size: 1.25rem;
    --default-label-font-weight: 500;
    --description-label-font-size: 1.5rem;
    --description-label-font-weight: 600;
    --default-font-family: Noto sans-serif;
    --default-font-dark: #212529;
    --default-gray-light: #DDDDDD;
    --default-background-light: #F8F8F8;
    --default-text-dark: #000;
    --default-box-shadow: 0px 0px 6px rgba(0,0,0,0.35);
    --default-font-medium: #B7B7B7;
    --header-button-color: #717171;
    --success-green: #28a745;
    --light: #f8f9fa;
}

.btn-outline-reverse-light {
    color: var(--icon-gray) !important;
    border-color: var(--icon-gray) !important;
}

.modal-footer-button {
    min-width: 115px !important;
}

.rotate-90 {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

#app {
    height: 100% !important;
}

.cweb-card {
    border-radius: 8px;
    box-shadow: 0px 0px 6px rgba(0,0,0,0.15);
}

.login-footer__link--blue .fa-cloud-download-alt {
    color: var(--if-blue);
}

.form-group__label {
    font-weight: var(--default-label-font-weight);
    font-size: var(--default-label-font-size);
}

.description__label {
    font-weight: var(--description-label-label-font-weight);
    font-size: var(--description-label-font-size);
}

.btn-reverse-light {
    background-color: white !important;
    border-color: var(--default-gray-light) !important;
    color: var(--header-button-color) !important;
}

    .btn-reverse-light:hover {
        background-color: #e2e6ea !important;
        border-color: var(--default-font-dark) !important;
    }

    .btn-reverse-light div {
        color: var(--header-button-color) !important;
    }

.header-button-text {
    color: var(--header-button-color) !important;
}

.alert-warning .alert-warning-left {
    font-weight: var(--description-label-font-weight);
}

.alert-secondary .alert-secondary-left a {
    color: var(--if-blue);
}

    .alert-secondary .alert-secondary-left a:hover {
        text-decoration: underline;
        cursor: pointer;
    }

.field-validation-error > span {
    display: block;
    color: red;
    font-size: smaller;
    text-align: start;
    margin-top: 5px;
}

* {
    margin: 0;
    padding: 0;
    color: var(--default-font-dark);
    font-family: 'Noto Sans', sans-serif;
}

a:not(.btn):not(.nav-item):hover, .dropdown-menu a:not(.btn):not(.nav-item):hover {
    color: var(--if-blue);
}

.dropdown-menu a:not(.btn):not(.nav-item):hover {
    text-decoration: none !important;
    background-color: #f8f9fa !important;
}

a {
    color: var(--if-blue);
}

.login-footer__link--blue {
    color: var(--if-blue);
}

.if-button {
    display: block;
    margin: auto;
    border: none;
    width: 100%;
    color: var(--if-text-light);
    background-color: var(--if-red);
}

    .if-button:hover {
        background-color: var(--if-darker-red) !important;
    }

.if-button__link--style {
    border: var(--default-gray-light) solid 1px;
    color: var(--default-font-dark);
}

.if-nav__link--style {
    width: 50%;
    text-decoration: none;
    color: var(--if-text-light) !important;
    background-color: var(--if-red) !important;
}

#app-header {
    width: 100%;
    display: inline-flex;
    flex-direction: column;
    background-color: var(--if-text-light);
}

    #app-header * {
        background-color: var(--if-text-light);
    }

.form__description--format {
    max-width: var(--form-desc-max-width);
    margin: 0 auto;
    text-align: center;
}

.card-body .form__description--format {
    font-size: 1.1rem;
}

.nav {
    flex-direction: column;
}

html, body {
    background-color: var(--default-background-light);
    font-size: 0.9rem;
    height: 100vh;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.login-header__box {
    text-align: center;
    display: block;
}

.login-footer__box {
    display: block;
    text-align: center;
}

#account > .form-group {
    text-align: center;
}

#account a, #account button {
    width: 100%;
}

app {
    width: 100%;
    position: absolute;
    top: 0px;
}

.login-header__box > img {
    margin: 0 auto;
    filter: blur(0.4px);
    width: 180px;
    height: auto;
}

.form__group--inline {
    display: flex;
    flex-direction: row;
    gap: 5px;
    justify-content: space-between;
    align-content: center;
}

    .form__group--inline .form-group {
        display: block;
        width: 100%;
    }

.form-group > input[type=checkbox] {
    display: inline;
    width: auto;
}

    .form-group > input[type=checkbox]:focus {
        border: none !important;
        box-shadow: none !important;
    }

.form-group > label {
    display: block;
    font-size: small;
}

.form-group > input {
    font-size: small;
}

#account {
    max-width: 50ch;
    margin: 0 auto;
}

.form-group > input[type='checkbox'] + span {
    display: inline;
    position: relative;
    bottom: 12px;
    left: 5px;
}

.login-footer__link--blue > .oi {
    position: relative;
    top: 2px;
    color: var(--if-blue);
}

.main {
    margin-top: 3vh;
    width: 100%;
    height: 100%;
    background-color: var(--default-background-light);
}

.content {
    margin: 3vh 3vw;
    margin-top: 3vh;
    margin-bottom: 5vh;
}


.card-row {
    padding-bottom: 2.5rem;
}

.card.card-white-bg *:not(button):not(a) {
    background-color: var(--if-text-light) !important;
}

.navbar-toggler {
    background-color: rgba(255, 255, 255, 0.1);
}

.nav-app-options {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/*.nav-user-options {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

    .nav-user-options .dropdown-menu {
        top: 65%;
        left: 52%;
    }

    .nav-user-options .dropdown-divider {
        margin: 0 10px;
    }*/
.nav-item a {
    font-size: 0.95rem;
    text-decoration: var(--if-blue);
    color: var(--default-text-dark);
}

    .nav-item a:focus {
        color: var(--if-blue) !important;
    }

.login-footer__table {
    display: inline-block;
    width: 95%;
}

@media (min-width: 768px) {
    #login-form, #registration-form, #password-reset-form {
        margin: auto;
    }

    .nav {
        flex-direction: row;
    }

    .nav-app-options {
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
    }

    .nav-user-options {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        margin-left: auto;
    }

    .navbar .navbar-toggler {
        display: none;
    }

    #app-header {
        width: 100%;
        align-items: baseline;
        flex-direction: row;
        box-shadow: var(--default-box-shadow);
    }

    .collapse:not(.show) {
        display: inline
    }

    .login-header__box > img {
        width: 160px;
    }

    .login-footer__table {
        width: auto;
    }

    .content {
        margin: auto;
        margin-top: 3vh;
    }

    .main-content {
        margin: inherit;
        max-width: 700px;
    }
}

/* spinner */

.spinner {
    width: 40px;
    height: 40px;
    margin: 10px auto;
    background-color: var(--if-blue);
    border-radius: 100%;
    -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
    animation: sk-scaleout 1.0s infinite ease-in-out;
}

@-webkit-keyframes sk-scaleout {
    0% {
        -webkit-transform: scale(0)
    }

    100% {
        -webkit-transform: scale(1.0);
        opacity: 0;
    }
}

@keyframes sk-scaleout {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    100% {
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
        opacity: 0;
    }
}

/* /spinner */

.more-button {
    border-top-right-radius: .2rem !important;
    border-bottom-right-radius: .2rem !important;
}

.more-button-icon {
    display: flex !important;
    padding-left: 3px !important;
}

.bi {
    color: var(--default-font-medium) !important;
}

.card-header-badge {
    background-color: var(--default-gray-light) !important;
    color: var(--default-font-dark);
}

.more-button-wrapper {
    padding-left: .5rem;
}

.toast {
    display: none;
    padding: 1.5rem;
    color: #fff;
    z-index: 1;
    position: absolute;
    width: 25rem;
    top: 2rem;
    border-radius: 1rem;
    left: 50%;
}

.toast-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 1rem;
    font-size: 2.5rem;
}

.toast-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding-left: 1rem;
}

    .toast-body p {
        margin-bottom: 0;
    }

.toast-visible {
    display: flex;
    flex-direction: row;
    animation: fadein 1.5s;
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

span.deactivated-user-name {
    text-decoration: line-through !important;
}

.product-type-icon {
    height: 2em;
}

.language-icon {
    height: 1em;
}

.grid-card tbody tr {
    cursor: pointer;
}

.grid-card .table-bordered td {
    border-right: 0 !important;
    border-left: 0 !important;
}

.grid-card .table-bordered {
    border: 0 !important;
}

.grid-card .card-header {
    border-bottom: 1px solid var(--default-gray-light) !important;
}

.grid-card thead th {
    border: 0 !important;
}

.grid-card .dxbs-gridview > .card {
    border: none !important;
    border-radius: 0 0 8px 8px !important;
}

.grid-card tr > td:first-child,
.grid-card tr > th:first-child,
.grid-card .dxbs-pager {
    padding-left: 1.25rem !important;
}

.grid-card tr > td:last-child,
.grid-card tr > th:last-child,
.grid-card .dxbs-pager {
    padding-right: 1.25rem !important;
}

.grid-card td,
.grid-card thead > tr:first-child > th,
.grid-card .dxbs-pager {
    padding-top: 0.8rem !important;
    padding-bottom: 0.8rem !important;
}

    .grid-card thead > tr:first-child > th,
    .grid-card thead > tr:first-child > th > div {
        background-color: var(--default-background-light) !important;
    }

.grid-card .card-body {
    padding: 0;
}

.grid-card-no-col-header .card-header {
    border-bottom: 0 !important;
}

.page-item.page-number.active a.page-link {
    color: #fff !important;
    background-color: var(--if-blue) !important;
    border-color: var(--if-blue) !important;
}

.a-form-heading {
    font-size: 1.35rem;
    font-weight: bold;
}

.dxbs-data-row {
    line-height: 2.2em;
}

.table-light.dx-grid-summary-cell, .table-light.dx-grid-summary-cell:before {
    background-color: white !important;
}

.dx-grid-summary-cell:last-child {
    border-bottom-right-radius: 8px;
}

.dx-grid-summary-cell:first-child {
    border-bottom-left-radius: 8px;
}

.error-above {
    border-top: 0;
    padding-top: 0;
}

.error-footer {
    padding-bottom: 0;
}

.error-footer-alert {
    width: 100%;
}

.modal-header {
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(238,238,238,1) 100%);
    border-bottom: none !important;
}

.modal-content {
    border: none !important;
}

.show {
    display: unset;
    visibility: visible;
}

.hide {
    display: unset;
    visibility: hidden;
}

.badge {
    min-width: 4rem !important;
    line-height: 1rem !important;
}

.profile-icon-button svg:hover {
    fill: var(--if-blue);
}

.license-increment-button {
    padding-top: 2px;
    padding-bottom: 2px;
    top: -1px;
    position: relative;
}

.dxbs-spin-btn-group .btn-secondary {
    border-color: unset;
    background-color: unset;
}

    .dxbs-spin-btn-group .btn-secondary:hover {
        border-color: unset;
        background-color: unset;
    }

@media (min-width: 768px) {
    .centered-main-content {
        margin: inherit;
        max-width: 700px;
    }
}

.card-header {
    border-radius: 8px 8px 0 0 !important;
}

.card-header-left {
    font-size: 1rem;
    font-weight: bold;
    padding-left: 15px;
}

.card-header-right {
    padding-right: 15px;
}

.card-header, .card-footer {
    background-color: white;
}

.dxbs-listbox {
    border: unset !important;
    border-bottom: 1px solid #ddd !important;
    line-height: 2.2em !important;
    border-radius: unset !important;
}

    .dxbs-listbox .list-group-item {
        border-top: 1px solid #ddd !important;
    }

        .dxbs-listbox .list-group-item.active {
            background-color: var(--if-blue) !important;
        }

    .dxbs-listbox .dropdown-item.dxbs-clickable.focused {
        background-color: var(--if-blue) !important;
    }

        .dxbs-listbox .dropdown-item.dxbs-clickable.focused:hover {
            background-color: var(--if-blue) !important;
        }

.dxbs-data-row:hover {
    background-color: var(--default-background-light);
}

.dx-row-deactivated {
    text-decoration: line-through;
}

.font-weight-bold-less {
    font-weight: 600 !important;
}

.btn-grid {
    padding: .25rem .25rem;
}

.custom-drop-zone {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 175px;
}

.nav-b-dropdown {
    font-size: 0.95rem;
    color: var(--default-text-dark);
    border: none !important;
}

    .nav-b-dropdown .bi-triangle-fill {
        position: relative;
        top: -1px;
    }

    .nav-b-dropdown:hover {
        color: var(--if-blue) !important;
        cursor: pointer;
    }

.profile-icon-button {
    border: none !important;
    align-self: center;
    display: flex;
}

    .profile-icon-button:hover {
        background-color: unset !important;
        border: none !important;
    }

#global-search-input {
    border-color: var(--default-font-medium) !important;
    padding-left: 30px !important;
    position: relative;
    border-radius: 100px !important;
    height: 90% !important;
    border-width: 2px !important;
}

#user-options {
    position: relative;
    left: -10px;
}

.fa-search {
    position: relative;
    height: 2px !important;
    color: #b7b7b7 !important;
    right: 370px;
    top: 13px !important;
}

#global-search-input::placeholder {
    color: #b7b7b7;
    text-shadow: 0 0 0 #ced4da;
    font-size: 12px;
}

.user-profile {
    position: relative;
    bottom: 5px;
    height: 45px;
    width: 45px;
    margin: auto;
    background: radial-gradient(circle, black 40%, transparent 50%), radial-gradient(ellipse 100% 100%, black 40%, transparent 50%);
    background-size: 28px 28px, 50px 50px;
    background-repeat: no-repeat;
    background-position: 50% -3px, 50% 19px;
    transform: scale(0.55);
    border: 2px groove #00000080;
    border-radius: 50%;
    display: none;
}

    .user-profile:hover {
        border: 2px groove var(--if-blue);
        background: radial-gradient(circle, var(--if-blue) 40%, transparent 50%), radial-gradient(ellipse 100% 100%, var(--if-blue) 40%, transparent 50%);
        background-size: 28px 28px, 50px 50px;
        background-repeat: no-repeat;
        background-position: 50% -3px,50% 19px;
        transform: scale(0.60);
    }

.user-profile-clicked {
    position: relative;
    bottom: 5px;
    height: 45px;
    width: 45px;
    margin: auto;
    background: radial-gradient(circle, var(--if-blue) 40%, transparent 50%), radial-gradient(ellipse 100% 100%, var(--if-blue) 40%, transparent 50%);
    background-size: 28px 28px, 50px 50px;
    background-repeat: no-repeat;
    background-position: 50% -3px, 50% 19px;
    transform: scale(0.50);
}

#user-profile-info {
    color: var(--header-button-color);
}

.btn-switcher,
.btn-switcher:hover,
.btn-switcher:focus,
.btn-switcher:active,
.btn-switcher-active,
.btn-switcher-active:hover,
.btn-switcher-active:focus,
.btn-switcher-active:active {
    border: 1px solid var(--default-gray-light) !important;
    color: #6c757d !important;
    background-color: var(--default-background-light) !important;
}

    .btn-switcher-active,
    .btn-switcher-active:hover,
    .btn-switcher:hover {
        text-decoration: underline;
    }

.module-search-icon {
    right: 490px;
}

.module-search-clear-filter-icon {
    right: 35px;
}

.module-search-icon, .module-search-clear-filter-icon {
    position: relative;
    height: 2px !important;
    color: #b7b7b7 !important;
    top: 13px !important;
}

#module-search-input {
    border-color: var(--default-gray-light) !important;
    padding-left: 30px !important;
    position: relative;
    border-radius: 8px !important;
    height: 90% !important;
    border-width: 2px !important;
    min-width: 100%;
    margin-bottom: 1rem;
}

.dxbs-dropdown-toggle.btn-secondary,
.dxbs-dropdown-toggle.btn-secondary:active,
.dxbs-dropdown-toggle.btn-secondary:focus,
.dxbs-dropdown-toggle.btn-secondary:hover {
    color: inherit !important;
    background-color: inherit !important;
    border-color: inherit !important;
}