:root {
    --fm-invert-icons: 0;
}

html, body {
    height: 100%;
}

app {
    display: block;
    height: 100%;
}

.header-logo {
    flex-shrink: 0;
    background-color: currentColor;
    /*-webkit-mask: url('../images/Sharp.FM.Text.Only.blue.svg');
    mask: url('../images/Sharp.FM.Text.Only.blue.svg');*/
    -webkit-mask: url('../images/Sharp.FM.Header.svg');
    mask: url('../images/Sharp.FM.Header.svg');
    -webkit-mask-position: center;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    width: 180px;
    height: 24px;
}

#blazor-error-ui {
    background: inherit;
    bottom: 0;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 100001;
}

.logon-main {
    padding: 20px !important;
    width: 450px !important;
    max-width: 450px !important;
    border: none !important;
    border-radius: 20px !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    /*height: 100% !important;*/
}

.no-border {
    border: none !important;
}

.middle-text-separator {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

.toolbar-language-switcher-wrapper {
    min-width: 200px !important;
    margin-right: 0 !important;
    margin-left: auto !important;
}

.logon-toolbar {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin-top: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 120px !important;
}

.fm-logon-password-toggle.dxbl-btn {
    min-width: 28px;
    width: 28px;
    height: 28px;
    padding: 0;
    margin: 0 2px 0 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: rgba(0, 0, 0, 0.45);
    box-shadow: none;
}

.fm-logon-password-toggle.dxbl-btn:hover,
.fm-logon-password-toggle.dxbl-btn:not(.dxbl-disabled):not(:disabled):hover {
    color: rgba(0, 0, 0, 0.7);
    background-color: rgba(0, 0, 0, 0.08);
}

.fm-logon-password-icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3C4.5 3 1.6 5.2.5 8c1.1 2.8 4 5 7.5 5s6.4-2.2 7.5-5C14.4 5.2 11.5 3 8 3zm0 8.2A3.2 3.2 0 1 1 8 4.8a3.2 3.2 0 0 1 0 6.4zM8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3C4.5 3 1.6 5.2.5 8c1.1 2.8 4 5 7.5 5s6.4-2.2 7.5-5C14.4 5.2 11.5 3 8 3zm0 8.2A3.2 3.2 0 1 1 8 4.8a3.2 3.2 0 0 1 0 6.4zM8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.fm-password-visible .fm-logon-password-icon,
.fm-logon-password-toggle.fm-password-visible .fm-logon-password-icon {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M2.1 1.3 1.3 2.1 3.6 4.4C2.1 5.3 1 6.6.5 8c1.1 2.8 4 5 7.5 5 1.3 0 2.5-.3 3.6-.8l2.3 2.3.8-.8L2.1 1.3zM8 11.2c-1.8 0-3.2-1.4-3.2-3.2 0-.5.1-.9.3-1.3l4.2 4.2c-.4.2-.8.3-1.3.3zm7.5-3.2c-.4-1.1-1.1-2.1-2.1-2.9l-1.5 1.5c.4.4.6 1 .6 1.6A3.2 3.2 0 0 1 8 9.2l-1.7 1.7c.5.2 1.1.3 1.7.3 3.5 0 6.4-2.2 7.5-5z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M2.1 1.3 1.3 2.1 3.6 4.4C2.1 5.3 1 6.6.5 8c1.1 2.8 4 5 7.5 5 1.3 0 2.5-.3 3.6-.8l2.3 2.3.8-.8L2.1 1.3zM8 11.2c-1.8 0-3.2-1.4-3.2-3.2 0-.5.1-.9.3-1.3l4.2 4.2c-.4.2-.8.3-1.3.3zm7.5-3.2c-.4-1.1-1.1-2.1-2.1-2.9l-1.5 1.5c.4.4.6 1 .6 1.6A3.2 3.2 0 0 1 8 9.2l-1.7 1.7c.5.2 1.1.3 1.7.3 3.5 0 6.4-2.2 7.5-5z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/*filter: invert(39%) sepia(25%) saturate(367%) hue-rotate(192deg) brightness(100%) contrast(100%) !important;*/
.dxbl-accordion .dxbl-accordion-group .dxbl-accordion-group-header .dxbl-accordion-item-content > .dxbl-image {
    filter: invert(var(--fm-invert-icons)) !important;
}

.logon-right {
    display: block;
    background-color: var(--bs-primary);
    color: white;
    height: 100vh;
}

.logon-holder {
    width: 100% !important;
}

@media (max-width: 1199.98px) {
    .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        --bs-gutter-x: 0 !important;
    }

    .logon-holder {
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        --bs-gutter-x: 0 !important;
    }

    .logon-main {
        padding: 20px !important;
        width: 100% !important;
        max-width: 100% !important;
        border: none !important;
        border-radius: 20px !important;
        position: absolute;
        margin-left: auto !important;
        margin-right: auto !important;
        /*height: 75% !important;*/
        top: 50%;
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .logon-right {
        display: none !important;
    }
}

.dashboard-viewcontainer-top{
    padding-top:50px;
}

.dashboard-viewcontainer .dxbl-btn-toolbar[role="toolbar"] {
    display: flex;
    flex-direction: column;
    color: white;
}

    .dashboard-viewcontainer .dxbl-btn-toolbar[role="toolbar"] > div {
        margin-bottom: 1rem;
        margin-left: 1rem;
        justify-content: center;
    }

.dashboard-viewcontainer button {
    background-color: #004586;
    color: white;
    border: none;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
    font-size: 20px;
    max-width: 30vw;
    min-width: 30vw;
    height: 60px;
}

    .dashboard-viewcontainer button:disabled {
        background-color: #ced4da;
        color: black;
        border: none;
        padding: 0.5rem 1rem;
        border-radius: 4px;
        cursor: pointer;
        font-weight: bold;
        font-size: 20px;
        max-width: 30vw;
        min-width: 30vw;
        height: 60px;
    }

@media (max-width: 800px) {

    .dashboard-viewcontainer button {
        font-size: 15px;
        max-width: 40vw;
        min-width: 40vw;
        height: 45px;
    }

    .dashboard-viewcontainer button:disabled {
        font-size: 15px;
        max-width: 40vw;
        min-width: 40vw;
        height: 45px;
    }
}

@media (max-width: 600px) {

    .dashboard-viewcontainer button {
        font-size: 18px;
        max-width: 70vw;
        min-width: 70vw;
        height: 42px;
    }

    .dashboard-viewcontainer button:disabled {
        font-size: 18px;
        max-width: 70vw;
        min-width: 70vw;
        height: 42px;
    }
}

.dashboard-viewcontainer button:hover {
    background-color: darkblue !important;
    color: white !important;
}

    .dashboard-viewcontainer button:hover:disabled {
        background-color: #ced4da !important;
        color: black !important;
    }

.dashboard-viewcontainer button:active,
.dashboard-viewcontainer button:focus {
    background-color: #004586 !important;
    color: white !important;
    outline: none !important;
    box-shadow: none !important;
}

/*@media (max-width: 1366px) {
    app .header-left-side {
        min-width: 48px !important;
        width: 48px !important;
        background-color: var(--bs-white) !important;
        color: var(--bs-primary) !important;
    }

        app .header-left-side .header-logo {
            display: none !important;
        }

    app .sidebar {
        display: none !important;
    }

    app .collapse-toggle .sidebar {
        display: flex !important;
    }

    app .collapse-toggle .header-left-side {
        min-width: 270px;
        background-color: var(--bs-primary) !important;
        color: var(--bs-white) !important;
    }
}
*/

#QRAndBarcodeReading video {
    width: 80vw;
    max-width: 400px;
    height: auto;
}

@media (max-width: 768px) {
    #QRAndBarcodeReading video {
        width: 95vw;
        max-width: none; 
    }
}

.xaf-alerts-stack{
    white-space:pre-line!important;
}

.xaf-alerts-stack-inner{
    width:700px!important;
}

.xaf-masterdetail-detailview{
    margin-left:60px!important;
}

/* State Machine buttons */
.StateMachineActionClass {
    background: rgba(29, 78, 216, 0.12) !important;
    border: 1px solid rgba(29, 78, 216, 0.25) !important;
    border-radius: 8px !important;
    color: #000000 !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    padding: 4px 12px !important;
    box-shadow: none !important;
    transition: all 0.15s ease !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
}

.StateMachineActionClass:hover {
    background: rgba(29, 78, 216, 0.2) !important;
    border-color: rgba(29, 78, 216, 0.35) !important;
    box-shadow: 0 1px 3px rgba(29, 78, 216, 0.15) !important;
    color: #000000 !important;
}

.StateMachineActionClass:hover span,
.StateMachineActionClass:hover * {
    color: #000000 !important;
}

.StateMachineActionClass:active {
    background: rgba(29, 78, 216, 0.25) !important;
    border-color: rgba(29, 78, 216, 0.4) !important;
    box-shadow: none !important;
    color: #000000 !important;
}

.StateMachineActionClass:active span,
.StateMachineActionClass:active * {
    color: #000000 !important;
}

.StateMachineActionClass:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(29, 78, 216, 0.25) !important;
    color: #000000 !important;
}

.StateMachineActionClass:focus span,
.StateMachineActionClass:focus * {
    color: #000000 !important;
}

.StateMachineActionClass span,
.StateMachineActionClass * {
    color: #000000 !important;
}

.StateMachineActionClass:disabled {
    background: rgba(209, 213, 219, 0.3) !important;
    border-color: rgba(209, 213, 219, 0.5) !important;
    color: #9CA3AF !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
}

.StateMachineActionClass:disabled span,
.StateMachineActionClass:disabled * {
    color: #9CA3AF !important;
}

body.nav-mode-card .header-right-side .navigate-back-icon-container.dxbl-btn {
    display: flex !important;
}
body.nav-mode-card .sidebar {
    display: none !important;
}
/*body.nav-mode-card .btn-hamburger {
    display: none !important;
}*/

.btn-digitalidentifierscan {
    width: 16px;
    height: 16px;
    background-image: url("../images/DigitalIdentifierScan.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin: 0;
    display: inline-block;
}
/* Keep ListView header filter/sort icons next to the caption.
   Caption uses max-content so the box only spans the text (not the full cell)
   and the funnel stays beside it. max-width still allows wrapping when the
   column is actually too narrow; min-content would wrap at hyphens even
   when there is room (e.g. "Tag-ek").
   Skip command/selection headers (checkbox). */
th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) > .dxbs-fixed-header-content,
th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) > .dxbs-grid-header-content,
th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-header-content {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100%;
    gap: 0.25rem;
}

    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbs-fixed-header-content > :first-child:not(button):not(.dxbl-grid-filter-menu-funnel-btn):not(.dxbl-grid-sort-asc):not(.dxbl-grid-sort-desc),
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbs-grid-header-content > :first-child:not(button):not(.dxbl-grid-filter-menu-funnel-btn):not(.dxbl-grid-sort-asc):not(.dxbl-grid-sort-desc),
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-header-content > :first-child:not(button):not(.dxbl-grid-filter-menu-funnel-btn):not(.dxbl-grid-sort-asc):not(.dxbl-grid-sort-desc),
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-header-content span:first-child,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-header-content a:first-child {
        flex: 0 1 auto !important;
        width: max-content !important;
        max-width: calc(100% - 1.75rem) !important;
        min-width: 0 !important;
        white-space: normal !important;
    }

    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbs-fixed-header-content > button,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbs-grid-header-content > button,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-header-content > button,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-filter-menu-funnel-btn,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-sort-asc,
    th:not(.dxbs-cmd-cell):not(.dxbl-grid-command-cell):not(.dxbl-grid-selection-cell) .dxbl-grid-sort-desc {
        flex: 0 0 auto !important;
        margin-left: 0 !important;
    }
