
body {
    background-color: var(--md-sys-color-background);
}

/* M3 overloads for nav bar */
.mud-nav-link {
    border-radius: 25px;
    height: 40px !important;
}

    .mud-nav-link:active,
    .mud-nav-link:hover {
        background-color: var(--mud-palette-action-default-hover) !important;
    }

    .mud-nav-link .mud-nav-link-expand-icon {
        fill: var(--mud-palette-drawer-icon) !important;
    }

.mud-nav-link-selected {
    border-radius: 25px;
    background-color: var(--md3-navicon-active) !important;
    color: black;
}

    .mud-nav-link-selected:hover {
        background-color: var(--md3-navicon-hover) !important;
    }

.mud-nav-link-text {
    font-weight: 500 !important;
}



.mud-button {
    border-radius: 20px;
    padding-left: 24px;
    padding-right: 24px;
    text-transform: unset;
    height: 40px;
}

.mud-timepicker-hourminute .mud-button {
    border-radius: initial;
    padding-left: initial;
    padding-right: initial;
    text-transform: initial;
    height: initial;
}

.mud-chip.mud-chip-size-medium {
    height: 32px;
    font-size: 14px;
    border-radius: 8px;
    padding-left: 16px;
    padding-right: 16px;
    border-color: #79747E;
    font-family: Roboto;
    font-weight: 500;
}

.mud-chip.mud-chip-size-small {
    border-radius: 8px;
    font-size: 12px;
    height: 24px;
    padding: 0 8px;
}

.mud-dialog {
    --mud-palette-primary: var(--md-sys-color-primary);
    --mud-palette-primary-text: var(--md-sys-color-on-primary);
    --mud-palette-secondary: var(--md-sys-color-secondary);
    --mud-palette-secondary-text: var(--md-sys-color-on-secondary);
    background-color: var(--md-sys-color-surface);
    border-radius: 28px;
    min-width: 400px;
    max-width: 560px;
    padding: 24px;
}

    .mud-dialog .mud-dialog-title {
        padding: 0px;
    }

    .mud-dialog .mud-dialog-content {
        padding: 16px 0px 24px 0px;
    }

.mud-input-control {
    margin-top: 0px;
}


.mud-table-empty-row {
    background-color: inherit;
}


.mud-snackbar {
    border-radius: 24px;
}


.mud-table-dense * .mud-table-row .mud-table-cell {
    padding: 6px 24px 6px 16px;
 /*   padding-inline-start: 8px;
    padding-inline-end: 8px;*/
}

.color-setting * .mud-table-row .mud-table-cell {
    padding: 6px 9px 6px 9px !important;
}


/* General styling overrides*/
.avatar-custom {
    background-color: #f66055;
    color: white;
}

.app-bar {
    background-color: var(--md-sys-color-background);
}

.app-main-container {
    height: 100%;
    overflow-y: auto;
    overflow-x: clip;
    background-color: #fff;
    border-radius: 24px;
    padding: unset;
}

.app-maincontent {
    height: 100vh;
    background-color: var(--md-sys-color-background);
    padding-right: 12px;
    padding-bottom: 12px;
}

/* app layout */
.app-container {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: white;
    justify-content: space-between;
    padding: 0;
    background-color: var(--md-sys-color-background);
}

@media (min-width:600px) {
    .app-container {
        background: var(--md-sys-color-background);
        justify-content: center;
        padding: 48px 0
    }
}

@media (min-width:600px) and (orientation:landscape) {
    .app-container {
        background: white;
        justify-content: space-between;
        padding: 0
    }
}

@media (min-width:960px) and (orientation:landscape) {
    .app-container {
        background: var(--md-sys-color-background);
        justify-content: center;
        padding: 48px 0
    }
}

.app-container-content, .app-container-footer {
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
    width: 100%;
}

.app-container-content {
    background-color: white;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
    padding-bottom: 24px;
    position: relative;
}

.app-container-inner {
    padding-top: 96px;
}

@media (min-width:600px) {
    .app-container-content {
        border-radius: 28px;
        min-height: 528px;
        padding-left: 24px;
        padding-right: 24px;
        width: 480px
    }

    .app-container-footer {
        padding: 0 16px;
        width: 480px
    }
}

@media (min-width:600px) and (orientation:landscape) {

    .app-container-content,
    .app-container-footer {
        padding-left: 24px;
        padding-right: 24px;
        width: 100%
    }

    .app-container-content {
        border-radius: 28px;
        min-height: unset
    }
}

@media (min-width:840px) {
    .app-container-content {
        padding-bottom: 24px;
        padding-left: 24px;
        padding-right: 24px;
        width: 480px
    }

    .app-container-inner {
        padding-top: 96px;
    }

    .app-container-footer {
        width: 480px
    }
}

@media (min-width:840px) and (orientation:landscape) {

    .app-container-content,
    .app-container-footer {
        padding-left: 32px;
        padding-right: 32px;
        width: 100%
    }
}

@media (min-width:960px) {
    .app-container-content {
        padding-left: 24px;
        padding-right: 24px;
        width: 480px
    }

    .app-container-footer {
        width: 480px
    }
}

@media (min-width:960px) and (orientation:landscape) {
    .app-container-content {
        border-radius: 28px;
        min-height: 384px;
        padding-left: 36px;
        padding-right: 36px;
        width: 840px
    }

    .app-container-inner {
        padding-top: 36px;
    }

    .app-container-footer {
        padding: 0 16px;
        width: 840px
    }
}

@media (min-width:1240px) {
    .app-container-content {
        padding-left: 24px;
        padding-right: 24px;
        width: 480px
    }

    .app-container-footer {
        width: 480px
    }
}

@media (min-width:1240px) and (orientation:landscape) {
    .app-container-content {
        margin-left: 200px;
        margin-right: 200px;
        padding-left: 36px;
        padding-right: 36px;
        width: auto
    }

    .app-container-footer {
        width: auto;
        margin-left: 200px;
        margin-right: 200px
    }
}

@media (min-width:1600px) {
    .app-container-content {
        min-height: 384px;
        padding-bottom: 36px;
        padding-left: 36px;
        padding-right: 36px;
        width: 1040px
    }

    .app-container-inner {
        padding-top: 36px;
    }

    .app-container-footer {
        width: 1040px
    }
}

@media (min-width:1600px) and (orientation:landscape) {
    .app-container-content {
        margin-left: auto;
        margin-right: auto;
        padding-left: 36px;
        padding-right: 36px;
        width: 1040px
    }

    .app-container-footer {
        margin-left: auto;
        margin-right: auto;
        width: 1040px
    }
}

.menu-override {
    box-shadow: var(--mud-elevation-2) !important;
    /*border-radius: 8px !important;*/
}

.menu-list-override {
    /*border-radius: 8px !important;*/
}

.pill-green {
    background-color: #E6F4EA;
    color: #188038;
}

.pill-orange {
    background-color: #FFE4B5;
    color: #FF8C00;
}

.pill-red {
    background-color: #fce8e6;
    color: #b31412;
}

.pill-blue {
    background-color: #e8f0fe;
    color: #1967d2;
}

.pill-red:hover {
    background-color: #e3cac8 !important;
}

.pill-blue:hover {
    background-color: #D8E0ED !important;
}

.pill-green:hover {
    background-color: #c4dbcb !important;
}

.pill-orange:hover {
    background-color: #FFDAB9 !important;
}

table tr:hover td:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

table tr:hover td:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

/*.mud-table-body > tr > .mud-table-cell {
    border: none;
}*/

.side-sheet {
    border-bottom-left-radius: 16px;
    border-top-left-radius: 16px;
    background-color: #ffff !important;
    color: var(--md-sys-color-on-background);
}

.sidesheet-header {
    padding: 12px 12px 12px 24px;
}

.tabs-m3 {
    --md-primary-tab-container-color: none;
}

.page-layout {
/*    display: grid;
    grid-template-areas:
        "header"
        "content";
    grid-auto-rows: 56px auto;*/
    height: 100%;
    width: 100%;
    overflow: hidden;
}

.page-layout-header {
    /*grid-area: header;*/
    height:56px;
}

.page-layout-content {
  /*  grid-area: content;*/
  height:100%;
}

.panel {
    border-radius: 16px;
    background-color: var(--md-sys-color-background);
}

md-primary-tab {
    font-family: var(--mud-typographym3-body-large-font);
    line-height: var(--mud-typographym3-body-large-line-height);
    font-size: var(--mud-typographym3-body-large-size);
    letter-spacing: var(--mud-typographym3-body-large-tracking);
    font-weight: var(--mud-typographym3-body-large-weight);
}

/*mud-table modifications*/

.table-header > .mud-table-row > .mud-table-cell {
    background-color: var(--md-sys-color-background) !important;
}

.table-input > .mud-input-control-input-container > div.mud-input.mud-input-text {
    margin-top: 0px;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.table-input {
    margin-top: 6px !important;
    margin-bottom: 5px !important;
}

.table-input2 {
    margin-top: 4px !important;
    margin-bottom: 7px !important;
}


.table-input > .mud-input-control > .mud-input-control-input-container > div.mud-input.mud-input-text {
    margin-top: 0px;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.table-input > .mud-input-control > .mud-input-control-helper-container {
    height: 0px;
    margin-top: 0px;
}

.table-input > .mud-input-control-helper-container {
    height: 0px;
    margin-top: 0px;
}

.table-input > .mud-input-control.mud-input-control-margin-dense {
    margin-bottom: 0px;
}

.table-font > .mud-input-control-input-container > .mud-input {
}

.td-table .mud-table-body > tr > .mud-table-cell {
    border: none;
}

.my-account-popover {
    top: 60px !important;
    border-radius: 16px;
    margin-left: -17px;
    padding-bottom: 20px;
    padding-top: 20px;
    background-color: var(--md-sys-color-background);
}

.my-account-activator {
    cursor: pointer;
    padding-right: 12px;
}

.my-account-avatar-badge .mud-badge.mud-badge-bottom.right.mud-badge-overlap {
    inset: calc(100% - 25px) auto auto calc(100% - 25px);
}

.my-account-avatar-badge .mud-badge.mud-badge-default {
    background-color: white;
    width: 24px;
    height: 24px;
    border-radius: 50%;
}

    .my-account-avatar-badge .mud-badge.mud-badge-default:hover {
        color: var(--md-sys-color-primary-light);
    }

.my-account-avatar-badge .mud-badge.mud-badge-icon .mud-icon-badge {
    font-size: 17px;
}

.my-account-button {
    width: 280px;
    background-color: white;
    color: black;
    text-transform: none;
    font-size: 0.8rem;
    font-weight: 400;
    padding: 8px 16px;
    justify-content: start;
    letter-spacing: normal;
}

.my-account-button:hover {
    background-color: var(--mud-palette-action-default-hover);
    border-color: var(--mud-palette-action-default-hover);
}
.custom-links {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.7rem;
    font-weight: 500;
    color: black;
}

.my-account-close-icon {
    position: absolute;
    top: 4px;
    right: 7px;
}

.my-account-text {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.cropper-face-circle .cropper-container .cropper-crop-box .cropper-face {
    border-radius: 50%;
    opacity: 25%;
}

.button-md3 {
    color: black;
    font-size: 0.8rem;
    font-weight: 400;
    letter-spacing: normal;
    height: 35px;
}

    .button-md3 .mud-button-icon-start {
        color: #0f0e0ea6;
    }

.button-md3-primary {
    background-color: var(--md3-navicon-active);
}

.td-dialog .mud-dialog-title .mud-typography {
    font-family: var(--mud-typographym3-title-large-font);
    line-height: var(--mud-typographym3-title-large-line-height);
    font-size: var(--mud-typographym3-title-large-size);
    letter-spacing: var(--mud-typographym3-title-large-tracking);
    font-weight: var(--mud-typographym3-title-large-weight);
    color: var(--md-sys-color-on-surface-variant);
}

.td-dialog {
    background-color: var(--md-sys-color-background);
    padding: 20px;
    border-radius: 20px;
}

.td-dialog .mud-dialog-title .mud-button-close {
    top: 10px;
}

.td-color-picker {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 40px;
    height: 40px;
    cursor: pointer;
    border: none;
    background-color: transparent;
}

    .td-color-picker::-webkit-color-swatch {
        border: solid;
        border-width: 1px;
        border-color: lightgray;
        border-radius: 50%;
    }

.icon-primary > svg {
    fill: var(--mud-palette-primary);
}

.table-edit * .mud-table-row .mud-table-cell:last-child {
    padding-inline-end: 2px;
}


.data-grid-header {
    height: 50px;
}

.mud-data-grid-columns-panel, .filters-panel {
    border-radius: 12px;
}

.cursor-pointer {
    cursor: pointer;
}

/*smart grid Horizontal scroll bar*/
.smart-grid-scroll-bar[aria-orientation="horizontal"]:before {
    height: 10px !important
}

.smart-grid-scroll-bar[aria-orientation="horizontal"] {
    height: 10px !important
}

.smart-grid-scroll-bar[aria-orientation="horizontal"] .smart-thumb {
    height: 10px !important;
    border-radius: 10px !important;
}

.smart-grid-scroll-bar[aria-orientation="horizontal"] .smart-arrow-left:after {
    margin-top: -6px;
}

.smart-grid-scroll-bar[aria-orientation="horizontal"] .smart-arrow-right:after {
    margin-top: -6px;
}

  /*smart grid Vertical scroll bar*/
.smart-grid-scroll-bar[aria-orientation="vertical"]:before {
    width: 10px !important
}

.smart-grid-scroll-bar[aria-orientation="vertical"] {
    width: 10px !important
}

.smart-grid-scroll-bar[aria-orientation="vertical"] .smart-thumb {
    width: 10px !important;
    border-radius: 10px !important;
}

.smart-grid-scroll-bar[aria-orientation="vertical"] .smart-arrow-left:after {
    margin-left: -6px;
}

.smart-grid-scroll-bar[aria-orientation="vertical"] .smart-arrow-right:after {
    margin-left: -6px;
}

.text-truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.checkbox-label-small p {
    font-size: .875rem;
}


.grid-header-content-panel th {
    background-color: var(--md-sys-color-background) !important;
}


.vis-timeline {
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
}

.vis-item {
    border-width: 0px !important;
    top: 0px !important;
    height: 100%;
}

    .vis-item .vis-item-content {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: -webkit-fill-available;
        margin-top:1px;
    }


.vis-group[class*="vis-group-level-"],
.vis-group-level-unknown-but-gte1 {
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    background-color: white !important;
    /* Keep bottom border as is */
}

.vis-group.highlighted-group {
    background-color: #f5f5f5;
    /*border-left: 2px solid black !important*/
}

/*.vis-panel.vis-background.vis-vertical {
    border-left: 2px solid black !important
}*/


.vis-grid.vis-saturday,
.vis-grid.vis-sunday {
    background-color: #d1addd !important;
}

.vis-minor, .vis-major {
    background-color: #ffffff;
}

div.vis-tooltip {
    background-color: white !important;
    color: var(--mb-text-color-dark) !important;
    border-radius: 12px !important;
    padding: 12px 16px 8px 16px !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, .2), 0px 24px 38px 3px rgba(0, 0, 0, .14), 0px 9px 46px 8px rgba(0, 0, 0, .12) !important;
    border: none !important;
}

/* Sticky tab headers */
.tabs-sticky-wrapper {
    position: sticky;
    top: 0;
    z-index: 10;
    background-color: var(--mud-palette-surface);
    flex-shrink: 0;
}

/* Scrollable tab content */
.tab-content-scrollable {
    flex-grow: 1;
    min-height: 0;
    overflow-y: auto;
    height:100%;
}

.step-progress-button {
    pointer-events: none !important;
    cursor: default !important;
}