/*root*/
:root {
    --default-text-font-size: 7px;
    --1000-min-width-text-font-size: 8px;
    --1300-min-width-text-font-size: 10px;
    --1600-min-width-text-font-size: 12px;
    --1900-min-width-text-font-size: 14px;
    --new-button-background: #0066CC;
    --edit-button-background: #e1c614;
    --delete-button-background: #dc3545;
    --reload-button-background: #5a6268;
    --cancel-button-background: #D3D3D3FF;
    --save-button-background: #1b6d85;
    --recalculate-button-background: #c69500;
    --upload-button-background: #218838;
    --duplicate-button-background: #5a6268;
    --submit-button-background: #1b6d85;
    --reject-button-background: #ff0000;
    --accept-button-background: #006400;
    --pending-button-background: #ffa500;
    --text-color-black: #000000FF;
    --text-color-white: #FFFFFFFF;
}

/*left menu fixing*/
.mdc-drawer--dismissible.mdc-drawer--open {
    display: flex;
    position: fixed;
}
/*removing horizontal sccroll bar*/
.mdc-drawer-app-content {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
    position: relative;
}

/*NEW ADDED STYLES*/
.pms-content {
    top: 55px;
    margin-left: 0;
    position: absolute;
    transition: margin 0.34s, width 0.34s;
    width: 100%;
    padding: 0 5px 10px 5px;
}
.pms-content.pms-content-with-nav {
    margin-left: 265px;
    width: calc(100% - 265px);
}
.dxbl-grid-selection-cell{
    padding: 0 !important;
}
.login-buttons * {
    color: var(--mdc-theme-primary, #6200ee) !important;
}
/*Pager*/
.dxbl-pager-container>.dxbl-pager-page-size-selector, .dxbl-grid .dxbl-pager{
    height: 20px;
    margin: 0;
}
.dxbl-grid>.dxbl-grid-bottom-panel{
    padding: 5px;
}

.pms-content input,
span,
.pms-content td,
.dxbs-gridview>.card .dxbs-table>tbody>tr>td, .dxbs-gridview>.card .dxbs-table>thead>tr>th,
.dxbl-listbox>ul,
.dxbl-dropdown>.dxbl-dropdown-dialog.dxbl-edit-dropdown>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item, .dxbl-modal>.dxbl-modal-root>.dxbl-popup.dxbl-edit-dropdown>.dxbl-modal-content>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item,
.simhelplink
{
    font-size: var(--default-text-font-size) !important;
}
.dxbl-tabs>.dxbl-scroll-viewer>.dxbl-scroll-viewer-content>ul>li>.dxbl-tabs-item>:not(.dxbl-image), .dxbl-tabs>ul>li>.dxbl-tabs-item>:not(.dxbl-image) {
    font-size: inherit !important;
}
@media only screen and (min-width: 1000px) {
    .pms-content input, 
    span,
    .pms-content td,
    .dxbl-listbox>ul,
    .dxbl-dropdown>.dxbl-dropdown-dialog.dxbl-edit-dropdown>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item, .dxbl-modal>.dxbl-modal-root>.dxbl-popup.dxbl-edit-dropdown>.dxbl-modal-content>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item,
    .dxbs-gridview>.card .dxbs-table>tbody>tr>td, .dxbs-gridview>.card .dxbs-table>thead>tr>th,
    .dxbl-pager .dxbl-pager-page-edit-text,
    .simhelplink
    {
        font-size: var(--1000-min-width-text-font-size) !important;
    }
}
@media only screen and (min-width: 1300px) {
    .pms-content input,
    span,
    .pms-content td,
    .dxbl-listbox>ul,
    .dxbl-dropdown>.dxbl-dropdown-dialog.dxbl-edit-dropdown>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item, .dxbl-modal>.dxbl-modal-root>.dxbl-popup.dxbl-edit-dropdown>.dxbl-modal-content>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item,
    .dxbs-gridview>.card .dxbs-table>tbody>tr>td, .dxbs-gridview>.card .dxbs-table>thead>tr>th,
    .dxbl-pager .dxbl-pager-page-edit-text,
    .simhelplink
    {
        font-size: var(--1300-min-width-text-font-size) !important;
    }
}
@media only screen and (min-width: 1600px) {
    .pms-content input,
    span,
    .pms-content td,
    .dxbl-listbox>ul,
    .dxbl-dropdown>.dxbl-dropdown-dialog.dxbl-edit-dropdown>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item, .dxbl-modal>.dxbl-modal-root>.dxbl-popup.dxbl-edit-dropdown>.dxbl-modal-content>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item,
    .dxbs-gridview>.card .dxbs-table>tbody>tr>td, .dxbs-gridview>.card .dxbs-table>thead>tr>th,
    .dxbl-pager .dxbl-pager-page-edit-text,
    .simhelplink
    {
        font-size: var(--1600-min-width-text-font-size) !important;
    }
}
@media only screen and (min-width: 1900px) {
    .pms-content input,
    span,
    .pms-content td,
    .dxbl-listbox>ul,
    .dxbl-dropdown>.dxbl-dropdown-dialog.dxbl-edit-dropdown>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item, .dxbl-modal>.dxbl-modal-root>.dxbl-popup.dxbl-edit-dropdown>.dxbl-modal-content>.dxbl-edit-dropdown-body .dxbl-listbox div.dxbl-listbox-item,
    .dxbs-gridview>.card .dxbs-table>tbody>tr>td, .dxbs-gridview>.card .dxbs-table>thead>tr>th,
    .dxbl-pager .dxbl-pager-page-edit-text,
    .simhelplink
    {
        font-size: var(--1900-min-width-text-font-size) !important;
    }
}

/*align grid headers*/
.dxbl-grid-header-content {
    justify-content: center !important;
}
/*setting header captions*/
.dxbl-grid .dxbl-grid-table>thead>tr>th, .dxbl-grid .dxbl-grid-table>thead>tr>th>.dxbl-grid-header-content>span {
    overflow-wrap: break-word;
    text-wrap: wrap !important;
}

/*text set*/
h3, h4{
    text-align: center;
    width: fit-content;
    margin: auto;
}

.xlsx-button span, .csv-button span{
    font-weight: bold;
    font-size: 11px !important;
}
@media only screen and (min-width: 1800px) {
    .xlsx-button span, .csv-button span{
        font-size: 12px !important;
    }
}

/*BUTTONS SET UP*/
.new-button,
.delete-button,
.reload-button,
.cancel-button,
.save-button,
.duplicate-button,
.column-chooser-button,
.recalculate-button,
.xls-button,
.xlsx-button,
.csv-button,
.cancel_sorting-button,
.cancel_filtering-button,
.upload-button,
.pms-upload-button,
.start-button,
.autofit-button,
.stop-button,
.edit-button{
    padding: 0 !important;
    width: 30px;
    height: 21px;
    margin: 0 !important;
    border: 1px solid black !important;
    color: #000000FF;
}
@media only screen and (min-width: 1600px) {
    .new-button,
    .delete-button,
    .reload-button,
    .cancel-button,
    .save-button,
    .duplicate-button,
    .column-chooser-button,
    .recalculate-button,
    .xls-button,
    .xlsx-button,
    .csv-button,
    .cancel_sorting-button,
    .cancel_filtering-button,
    .upload-button,
    .pms-upload-button,
    .start-button,
    .autofit-button,
    .stop-button,
    .edit-button{
        width: 35px;
    }
}
.cancel_sorting-button, .cancel_filtering-button{
    background-color: var(--cancel-button-background) !important;
}
.new-button{
    background-color: var(--new-button-background) !important;
    color: var(--text-color-white) !important;
}
.delete-button{
    background-color: var(--delete-button-background) !important;
    color: var(--text-color-white) !important;
}
.reload-button{
    background-color: var(--reload-button-background) !important;
    color: var(--text-color-white) !important;
}
.cancel-button{
    background-color: var(--cancel-button-background) !important;
}
.save-button{
    background-color: var(--save-button-background) !important;
    color: var(--text-color-white) !important;
}
.recalculate-button{
    background-color: var(--recalculate-button-background) !important;
    color: var(--text-color-white) !important;
}
.upload-button{
    background-color: var(--upload-button-background) !important;
    color: var(--text-color-white) !important;
    height: fit-content;
    align-self: center !important;
}
.start-button{
    background-color: var(--upload-button-background) !important;
    color: var(--text-color-white) !important;
    height: 30px;
}
.stop-button{
    background-color: var(--delete-button-background) !important;
    color: var(--text-color-white) !important;
    height: 30px;
}
.edit-button{
    background-color: var(--edit-button-background) !important;
    color: var(--text-color-black) !important;
}
.gtc-default-button{
    background: linear-gradient(56deg, rgba(47, 229, 224, 1) 0%, rgba(26, 185, 223, 1) 100%) !important;
    color: black !important;
}
.xlsx-button{
    margin-left: 5px !important;
    background-color: #4a934a !important;
    color: #FFFFFF !important;
}
.csv-button{
    background-color: #0c5460 !important;
    color: #FFFFFF !important;
    margin-left: 0 !important;
}
.autofit-button{
    background-color: var(--cancel-button-background) !important;
}

/*for simulation*/
.pms-upload-button{
    background-color: var(--upload-button-background) !important;
    color: var(--text-color-white) !important;
    height: fit-content;
    align-self: center !important;
}
.duplicate-button{
    background-color: var(--duplicate-button-background) !important;
    color: var(--text-color-white) !important;
    float: right;
}
.default-button{
    height: 21px;
    border: 1px solid black !important;
}
/*targets attentions buttons*/
.reject-button, .accept-button, .pending-button, .submit-button{
    height: 21px;
    border: 1px solid black !important;
}
.submit-button{
    background-color: var(--submit-button-background) !important;
}
.reject-button{
    background-color: var(--reject-button-background) !important;
}
.accept-button{
    background-color: var(--accept-button-background) !important;
}
.pending-button{
    background-color: var(--pending-button-background) !important;
    color: var(--text-color-black) !important;
}

.button{
    border: 1px solid black !important;
}
.column-chooser-button {
    background-color: var(--cancel-button-background) !important;
    margin-left: 0 !important;
}
.toolbar-set-margin{
    margin: 10px 0 0 0;
}
.edit-form-width {
    min-width: 1100px;
}
/*full width buttons in grid columns*/
.full_width-button{
    width: -webkit-fill-available;
}

/*layouts GTCGrid*/
.saved_layouts{
    height: 21px;
    width: 130px;
}
@media only screen and (min-width: 1600px) {
    .saved_layouts{
        width: 150px;
    }
}

/*icons for buttons*/
.column_chooser-icon,
.save-icon,
.delete-icon,
.new-icon,
.reload-icon,
.cancel-icon,
.duplicate-icon,
.recalculate-icon,
.edit-icon,
.xls-icon,
.cancel_sorting-icon,
.cancel_filtering-icon,
.upload-icon,
.download-icon,
.planogram-min-boundary-icon,
.planogram-max-boundary-icon,
.caution-icon,
.info-icon,
.start-icon,
.autofit-icon,
.stop-icon{
    margin: 0 !important;
    background-repeat: no-repeat;
    background-size: 60%;
    background-position: center;
    height: 21px !important;
    width: 32px !important;
    color: var(--text-color-white);
}

.profile-app-bar-button, .menu-app-bar-button {
    width: 35px !important;
    margin: 10px !important;
    height: 35px !important;
    background: none !important;
    padding: 0 !important;
    border: none !important;
}
.profile-app-bar-icon, .menu-app-bar-icon{
    width: 35px !important;
    height: 35px !important;
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
}
.profile-app-bar-icon{
    background-image: url(images/profile-user-account.svg);
    background-color: lightgrey;
    border-radius: 50%;
}
.menu-app-bar-icon{
    background-image: url(images/menu.svg);
    background-size: 80%;
}

.column_chooser-icon{
    background-image: url(images/column_chooser.png);
    background-size: 80%;
}
.save-icon{
    background-image: url(images/save.png);
    background-size: 80%;
}
.delete-icon{
    background-image: url(images/delete.png);
    background-size: 70%;
}
.new-icon{
    background-image: url(images/new.png);
}
.reload-icon {
    background-image: url(images/reload.png);
}
.cancel-icon{
    background-image: url(images/cancel.png);
}
.duplicate-icon{
    background-image: url(images/duplicate.png);
}
.recalculate-icon{
    background-image: url(images/recalculate.png);
    background-size: 60%;
}
.edit-icon{
    background-image: url(images/edit.png);
}
.xls-icon{
    background-image: url(images/xls.png);
}
.upload-icon{
    background-image: url(images/upload.png);
    background-size: 65%;
}
.download-icon{
    background-image: url(images/download.png);
    background-size: 65%;
}
.planogram-min-boundary-icon{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect x='5' y='6' width='22' height='14' rx='2' fill='none' stroke='white' stroke-width='2'/%3E%3Cpath d='M6 11h20M6 16h20M12 7v12M20 7v12' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M16 29V20M11 24l5 5 5-5' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: 78%;
}
.planogram-max-boundary-icon{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect x='5' y='12' width='22' height='14' rx='2' fill='none' stroke='white' stroke-width='2'/%3E%3Cpath d='M6 17h20M6 22h20M12 13v12M20 13v12' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M16 3v9M11 8l5-5 5 5' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: 78%;
}
.planogram-boundary-button{
    padding: 0 10px !important;
    height: 21px;
    margin-right: 5px !important;
}
.cancel_sorting-icon{
    background-image: url(images/cancel_sorting-icon.png);
    background-size: 100% !important;
}
.cancel_filtering-icon{
    background-image: url(images/cancel_filtering-icon.png);
    background-size: 75% !important;
}
.caution-icon{
    background-image: url(images/caution-white.png);
}
.info-icon{
    background-image: url(images/info.png);
}
.start-icon{
    background-image: url(images/start.png);
}
.stop-icon{
    background-image: url(images/stop.png);
}
.autofit-icon{
    background-image: url(images/autofit.png);
    background-size: 100% !important;
}

/*new styles for buttons*/
.new-button, .save-button, .cancel-button, .delete-button, .reload-button, .edit-button{
    margin-right: 3px !important;
}
.column-chooser-button .column-chooser-button-icon {
    width: 100% !important;
    height: 100% !important;
}

/*show errors in inline edit mode*/
.ErrorsDisplay {
    color: #FF0000FF;
    font-size: 1.2em;
    list-style-type: none;
    padding-left: 0;
    font-family: "Roboto";
}
/*For showing various information*/
.InformationDisplay {
    color: green;
    font-size: 1.2em;
    list-style-type: none;
    padding-left: 0;
    font-family: "Roboto";
}

.pms-error-column-field input{
    border: 2px solid #FF0000FF !important;
}

/*custom scroll bar*/
.dxbl-scroll-viewer-hor-scroll-bar>.dxbl-scroll-viewer-scroll-thumb {
    height: 0.35rem !important;
}

.dxbl-grid-empty-cell {
    visibility: hidden;
    width: 0 !important;
}

/*edit forms*/
.dxbl-row{
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.dxbl-tabs.dxbl-tabs-scrollable {
    width: 100% !important;
}
.dxbl-tabs {
    width: 100% !important;
}

dxbl-date-edit input{
    text-align: center !important;
}
dxbl-spinedit input{
    text-align: right !important;
    color: inherit !important;
}
dxbl-input-editor input{
    text-align: left;
}
dxbl-spinedit{
    text-align: right !important;
    color: inherit !important;
    background-color: inherit !important;
}

/*graph settings*/
.chartjs-render-monitor {
    height: 35vh !important;
    width: 100% !important;
}
@media only screen and (min-width: 1300px) {
    .chartjs-render-monitor{
        height: 38vh !important;
    }
}
@media only screen and (min-width: 1500px) {
    .chartjs-render-monitor{
        height: 39vh !important;
    }
}
@media only screen and (min-width: 1700px) {
    .chartjs-render-monitor{
        height: 45vh !important;
    }
}
@media only screen and (min-width: 1900px) {
    .chartjs-render-monitor{
        height: 46vh !important;
    }
}
@media only screen and (min-width: 2100px) {
    .chartjs-render-monitor{
        height: 53vh !important;
    }
}

/*grid row height decreased*/
td .dxbl-checkbox{
    display: flex !important;
    justify-content: center;
    align-items: center;
}
/*grid table*/
td:not(.dxbl-grid-expand-button-cell),
th:not(.dxbl-grid-expand-button-cell) {
    padding: 1px 5px !important;
}

/*borders and paddings reduced for buttons settings(spin butons in grid/filters/dateBox/timeBox/comboBox/pageSize)*/
.dxbl-text-edit>.dxbl-btn-group-vertical>.dxbl-btn:not(.dxbl-btn.dxbl-edit-btn-clear,.dxbl-btn.dxbl-btn-icon), .dxbl-text-edit>.dxbl-btn-group>.dxbl-btn:not(.dxbl-btn.dxbl-edit-btn-clear,.dxbl-btn.dxbl-btn-icon), .dxbl-text-edit>.dxbl-btn:not(.dxbl-btn.dxbl-edit-btn-clear,.dxbl-btn.dxbl-btn-icon){
    border: 1px solid lightgray !important;
    border-radius: 0 !important;
    padding: 0 3px;
}
.dxbl-grid .dxbl-text-edit {
    border: none;
    border-radius: 0;
    padding: 0 !important;
}
dxbl-adaptive-dropdown{
    width: 0;
    padding: 0 !important;
}

/*column chooser*/
dxbl-window-dialog {
    margin: 20px 10px !important;
}

/*loading styles*/
.loader-container{
    display: flex;
    width: 100%;
    height: 100%;
    margin: auto;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/*loading and authorizing text animated*/
.loader-text, .authorizing-loader-text {
    font-size: 14px;
    margin-top: 10px;
    animation: fadeInImmed 0.5s ease-in-out forwards;
}

/*loading and authorizing spinner animated*/
.loading-spinner {
    animation: fadeInImmed 0.7s ease-in-out forwards;
}

@keyframes fadeInImmed {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

@keyframes fadeIn {
    0% { opacity: 0; }
    90% { opacity: 0; }
    100% { opacity: 1; }
}

.loading-spinner img{
    width: 70px;
    height: 70px;
}

.loading-spinner {
    position: relative;
    border-radius: 50%;
    overflow: hidden;
    padding: 5px;
}

.loading-spinner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid rgba(26,185,223,1);
    border-top-color: transparent;
    box-sizing: border-box;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/*remove app bar padding test*/
.mdc-top-app-bar__section{
    padding: 8px 5px !important;
}

/*home page animated*/
.animated-div {
    text-align: center;
}
.animated-div div {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    font-size: 20px;
    text-transform: uppercase;
}
.welcome-message {
    animation: showup 1.2s ease-in-out 0.5s forwards;
    opacity: 0;
}
.home-page-vertical-logo {
    animation: showup 1.2s ease-in-out 0.8s forwards;
    opacity: 0;
}
.home-page-links {
    animation: showup 1.2s ease-in-out 1.1s forwards;
    opacity: 0;
}
.version-release-notes-link{
    animation: showup 1.2s ease-in-out 1.4s forwards;
    opacity: 0;
}
@keyframes showup {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

/*for grid column text and icon, used in Communication Logs, can be used anywhere*/
.text-icon-xml{
    display: flex;
    width: 100%;
    gap: 10px;
}
.text-icon-xml *{
    width: -webkit-fill-available;
}
.text-icon-xml button{
    width: fit-content !important;
}

/*required sign for captions*/
.required-caption:after {
    content: '*';
    color: red;
}

/*expand inner grid button and other setup*/
.dxbl-grid .dxbl-grid-table .dxbl-grid-expand-button-cell .dxbl-grid-expand-button{
    vertical-align: middle !important;
    width: 80% !important; 
    background-color: lightgray !important;
    border-radius: 5px !important;
    border: 1px solid black !important;
    padding: 0 !important;
    filter: brightness(1);
    transition: filter 0.3s ease;
}
.dxbl-grid .dxbl-grid-table .dxbl-grid-expand-button-cell .dxbl-grid-expand-button:hover{
    filter: brightness(0.7);
}
.dxbl-grid .dxbl-grid-table .dxbl-grid-expand-button-cell .dxbl-grid-expand-button>svg.dxbl-image{
    color: black !important;
    opacity: 100% !important;
    padding: 0 !important;
}


/*version release link in home page and home page content*/
.version-release-notes-link{
    width: fit-content;
    position: absolute;
    bottom: 0;
}
.version-release-notes-link p{
    font-size: 11px;
    background-color: #5bc0de;
    color: #0b0a0f;
    padding: 5px 20px;
    border-radius: 10px 10px 0 0;
    font-weight: bold;
    margin: 0 !important;
}
.index-content {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.index-content h3{
    align-self: center;
}
.index-button{
    max-width: 100px;
    align-self: center;
    background-color: #5bc0de !important;
    color: #0b0a0f !important;
}
.home-page-vertical-logo{
    width: 15%;
}
.home-page-vertical-logo img{
    width: 100%;
}

@media only screen and (min-width: 1000px) {
    .version-release-notes-link p{
        font-size: 13px;
    }
    .animated-div div{
        font-size: 24px;
    }
    .index-content {
        gap: 30px;
    }
}
@media only screen and (min-width: 1300px) {
    .version-release-notes-link p{
        font-size: 15px;
    }
    .animated-div div{
        font-size: 28px;
    }
    .index-content {
        gap: 40px;
    }
}
@media only screen and (min-width: 1600px) {
    .version-release-notes-link p{
        font-size: 17px;
    }
    .animated-div div{
        font-size: 30px;
    }
    .index-content {
        gap: 50px;
    }
}
@media only screen and (min-width: 1900px) {
    .version-release-notes-link p{
        font-size: 19px;
    }
    .animated-div div{
        font-size: 32px;
    }
    .index-content {
        gap: 60px;
    }
}

/*reducing grid elements height by reducing padding for all elements inside td*/
.dxbl-grid-table tbody td *:not(button) {
    padding: 0 !important;
}

/*custom column chooser set up*/
.custom-column-chooser-styles{

}
.custom-column-chooser-header{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.custom-column-chooser-header p{
    margin: 10px !important;
}

.custom-column-chooser-styles .dxbl-dropdown-body{
    display: flex !important;
    gap: 10px;
    width: 35vh;
    overflow-x: hidden;
}
.custom-column-chooser-search-box{
    width: 100% !important;
    min-height: 30px !important;
}
.custom-column-chooser-coluumns-container{
    width: 100%;
}

.custom-column-chooser-styles .dxbl-checkbox>.dxbl-text:last-child p{
    overflow: hidden;
    text-overflow: ellipsis;
    text-wrap-mode: nowrap;
    overflow-wrap: normal;
}

.column-chooser-row-box{
    display: flex;
    flex-direction: row;
    max-width: 100%;
}
.column-chooser-row-box * {
    max-width: 100% !important;
}

/*fixed margin for filter row so buttons fit into it*/
.dxbl-grid .dxbl-grid-table>thead>tr.dxbl-grid-editor-inplace-container>td:not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell)>.dxbl-text-edit:only-child {
    margin: 0 !important;
}

.monitoring-settings-button{
    margin-top: 20px !important;
    width: auto !important;
    padding-right: 10px !important;
}
.monitoring-settings-granularity-box{
    width: 200px;
}

/*GLOBAL LOADING SPINNER*/
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    backdrop-filter: blur(2px);
}
.overlay .loading-container{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 20px;
}
.spinner {
    border: 8px solid #f3f3f3;
    border-top: 8px solid #1ab9df;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: spin 1s linear infinite;
}
.overlay .spinner-loading-text{
    color: #0b0a0f;
    font-weight: bold;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/*spinner for button IconCSS*/
.send-spinner {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: send-spin 0.7s linear infinite;
}

@keyframes send-spin {
    to { transform: rotate(360deg); }
}

/*toaster*/
.mat-toast-container {
    width: 450px;
}

.mat-toast-container>div{
    width: auto !important;
}

.mat-toast {
    font-size: 15px;
    padding: 14px 16px;
}

.mat-toast-body {
    font-size: 14px;
    line-height: 1.5;
}

.mat-toast-icon {
    font-size: 26px !important;
}

/*deleted item text instead of NULL*/
.item-deleted-grid-cell-text{
    background-color: #852929;
    color: white;
}

/*filter th button reduced paddings and margin*/
.dxbl-grid-filter-menu-funnel-btn{
    padding: 0 !important;
}
.dxbl-grid-header-content>:not(:last-child,.dxbl-grid-filter-menu-funnel-btn){
    margin-right: 2px !important;
}

aside .mdc-drawer__content{
    height: calc(100% - 100px) !important;
}

/* Import Log nested detail grid inner-content spacing.
   Match the working Biddings participant-grid pattern: keep table cells untouched and inset the rendered content. */
.import-log-detail-grid {
    width: 100%;
    min-width: 0;
}

/* Errors grid is nested inside Sources detail + tab content.
   Keep the grid at full width so the toolbar does not wrap vertically.
   Move only the final Auto Fit button inward to avoid right-edge clipping. */
.import-log-errors-grid .autofit-button {
    position: relative;
    right: 8px;
}

.import-log-detail-cell-content {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-height: 26px;
    margin: 0 4px !important;
    text-align: center !important;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

@media (max-width: 768px) {
    .import-log-detail-cell-content {
        min-height: 24px;
        margin-left: 3px !important;
        margin-right: 3px !important;
    }
}

/* GTC virtual multi-select filter menu.
   Kept in the globally loaded stylesheet because this application does not load
   the generated Blazor scoped-CSS bundle (Pms.Web.styles.css). */
.gtc-virtual-filter-menu {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-sizing: border-box;
}

.gtc-virtual-filter-list {
    align-self: stretch;
    flex: 0 0 auto;
    width: 100%;
    height: 360px;
    max-width: none;
    min-width: 0;
    min-height: 96px;
    overflow-y: auto;
    overflow-x: hidden;
    margin-top: 6px;
    border: 1px solid #d0d7de;
    border-radius: 4px;
    box-sizing: border-box;
}

.gtc-virtual-filter-row {
    width: 100%;
    min-width: 0;
    height: 32px;
    min-height: 32px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: center;
    column-gap: 6px;
    padding: 2px 6px;
    box-sizing: border-box;
}

.gtc-virtual-filter-checkbox {
    width: 24px;
    height: 24px;
    min-width: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.gtc-virtual-filter-text {
    display: block;
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 20px;
}

.gtc-virtual-filter-paste {
    flex: 0 0 auto;
    margin-top: 8px;
}

.gtc-virtual-filter-section-title {
    flex: 0 0 auto;
    margin-top: 8px;
    margin-bottom: 4px;
    font-size: 12px;
    font-weight: 600;
}

.gtc-virtual-filter-muted {
    color: #667085;
    font-size: 12px;
}





.gtc-virtual-filter-message {
    margin-top: 6px;
    font-size: 12px;
    color: #8a5a00;
}

.gtc-virtual-filter-actions {
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 10px;
}
