﻿/*----------------------------------------------------------------------------------------------------------*/
/*This file is for overriding css from other imported packages and libraries, e.g. Radzen, Blazorise, etc...*/
/*----------------------------------------------------------------------------------------------------------*/

/* ============================================================ */
/*  STAS Design Tokens (per UIDesignAndGuidelines.md)           */
/*  Reference these tokens, do not redefine them per component. */
/* ============================================================ */
:root {
    /* Brand */
    --stas-primary:        #003951;
    --stas-primary-hover:  #005a7a;
    --stas-primary-soft:   rgba(0, 57, 81, 0.1);
    --stas-accent:         #ED880E;
    --stas-accent-hover:   #f59e0b;
    --stas-accent-soft:    rgba(237, 136, 14, 0.1);

    /* Semantic */
    --stas-success:        #28a745;
    --stas-danger:         #dc2626;
    --stas-warning:        #ffc107;
    --stas-info:           #17a2b8;

    /* Surfaces */
    --stas-bg-page:        #f8f9fa;
    --stas-bg-surface:     #ffffff;
    --stas-bg-muted:       #f1f5f9;
    --stas-border:         #e2e8f0;
    --stas-border-strong:  #cbd5e1;

    /* Text */
    --stas-text-primary:   #1e293b;
    --stas-text-secondary: #64748b;
    --stas-text-muted:     #94a3b8;
    --stas-text-inverse:   #ffffff;

    /* Motion */
    --stas-motion-fast:    150ms ease-out;
    --stas-motion-base:    250ms cubic-bezier(0.4, 0, 0.2, 1);
    --stas-motion-slow:    400ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Z-index scale */
    --z-base:              0;
    --z-sticky:            10;
    --z-header:            50;
    --z-sidebar:           100;
    --z-dropdown:          500;
    --z-tooltip:           800;
    --z-modal-backdrop:    1000;
    --z-modal:             1010;
    --z-toast:             1100;
}

/* colors */
.badge-orange {
    color: #fff;
    background-color: #fd7e14;
}

/*Blazored Toast*/
/*Header*/
.blazored-toast-header {
    display: none !important;
}

.blazored-modal {
    max-height: calc(100vh - 100px);
}

/*Blazored Modal*/
/*Header*/
.bm-header {
    word-break: break-word !important;
    padding: 1em !important;
    justify-content: center !important;
}

/*Content*/
.bm-content {
    height: 100%;
    max-height: 100%;
    overflow: auto;
    padding: 1em;
    margin-top: 0.5em;
}

/* Approve Company Modal - needs special handling for scrolling */
.blazored-modal-approve {
    height: auto !important;
    padding-bottom: 0 !important;
}

.blazored-modal-approve .bm-content {
    padding: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    max-height: calc(100vh - 200px) !important;
}

.bm-title {
    color: #003951;
    white-space: pre-line;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
}

/*Close button*/
.blazored-modal-close {
    outline: none !important;
    color: white;
}

/* -- Radzen -- START */
/*Dropdowns*/
.rz-dropdown {
    overflow: unset !important;
    /*height: unset !important;*/
    flex-direction: column-reverse;
}

/*Labels*/
.ui-dropdown-label {
    margin-bottom: 0px;
}

.rz-dropdown-label {
    margin-bottom: 0px !important;
}

/*Calendar*/
.rz-datepicker-calendar {
    width: 300px;
}

.rz-datepicker-title {
    display: flex;
    justify-content: center;
    align-items: center;
}

/*Dropdown select width*/
.dropdown-select {
    width: 224.4px !important;
}

/* -- Radzen -- END*/
/*Selectable row color in activity tracing*/
/*.bg-primary {
    background-color: #add8e6 !important;
    border-width: 2px;
    border-color: black;
    border-style: solid;
}*/
/*Activity tracing table row height*/
.table-row-selectable {
    line-height: 14px;
}

/*Upload file button for worktask/create*/
.custom-file {
    width: 66px;
}

.custom-file-label {
    overflow: hidden;
}

    .custom-file-label::after {
        padding: 0.375em;
        height: calc(1.5em + 0.9rem);
        border-radius: 0;
        background-color: #1b6ec2;
        border-color: #1861ac;
        color: white;
    }

/*Input search at workers index page*/
#searchworkers {
    outline: 0;
    padding: 0 1.6rem;
    border-radius: var(--rad);
    border-color: lightgray;
    transition-property: width, border-radius;
    z-index: 1;
    position: relative;
}

/*Remove arrows form input type number ,first one is from chrome ,second for firefox */
.removearrows::-webkit-inner-spin-button,
.removearrows::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.removearrows {
    -moz-appearance: textfield;
}

/*max height of register form on register page*/
.maxheight-95 {
    max-height: 95vh;
}

/*accordion padding on workdays add*/
.accordionpadding {
    padding: 0 9px !important;
    padding-top: 15px !important;
}

/*activity tracing hover over table*/
tr.table-row-selectable:hover {
    cursor: default;
}

/*button on profile page*/
.btn-profile {
    height: 30px;
    width: 30px;
    padding: 3px;
    border-radius: 0;
}

/*pagination bar*/
.pagination {
    z-index: 0;
}

/*harcoded font size to avoid nav bar font size inheritance*/
.b-bar-item {
    font-size: 15px;
    line-height: 1.5;
}

/*header icons responsive*/
.header-responsive {
    display: flex !important;
    flex-basis: auto !important;
}

/*side bar navigation anchor tag */
.remove-decoration {
    text-decoration: none;
    color: inherit;
}

    .remove-decoration:hover {
        text-decoration: none;
        color: inherit;
    }

/*============*/
/* Blazorise */
/*============*/
/* Rich Text Editor */
.ql-editor {
    min-height: 150px;
    max-height: fit-content;
}

.clear-btn {
    height: 35px;
}

.input-icon {
    position: relative;
}

    .input-icon > i {
        position: absolute;
        display: block;
        transform: translate(0, -50%);
        top: 50%;
        pointer-events: none;
        width: 25px;
        text-align: center;
        font-style: normal;
    }

    .input-icon > input {
        padding-left: 25px;
        padding-right: 0;
    }

.input-icon-right > i {
    right: 11px;
}

.input-icon-right > input {
    padding-left: 12px;
    padding-right: 25px;
}

.font-16 {
    font-size: 16px;
}

.font-13 {
    font-size: 13px;
}

.font-11 {
    font-size: 11px;
}

.font-20 {
    font-size: 20px;
}

.carousel-control-prev {
    align-items: flex-start;
    top: 300px;
}

.carousel-control-next {
    align-items: flex-start;
    top: 300px;
}

.b-bar-vertical-inline.b-bar-dark .b-bar-brand .b-bar-link.active, .b-bar-vertical-popout.b-bar-dark .b-bar-brand .b-bar-link.active, .b-bar-vertical-small.b-bar-dark .b-bar-brand .b-bar-link.active {
    padding-left: 24px;
}

#cookies-alert {
    position: fixed;
    bottom: 0;
    z-index: 2;
    left: 0;
    right: 0;
    margin-left: 25%;
    margin-right: 25%;
}

.btn-primary {
    background-color: #003951 !important;
}

    .btn-primary.focus, .btn-primary:focus {
        border: #ED880E !important;
        box-shadow: 0 0 0 0.1rem #ED880E !important;
    }

.btn-outline-primary {
    border-color: #003951 !important;
    color: #003951 !important;
}

    .btn-outline-primary:hover {
        border-color: #003951 !important;
        background: #003951 !important;
        color: white !important;
    }

    .btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show > .btn-outline-primary.dropdown-toggle {
        border-color: #003951 !important;
        background: #003951 !important;
        color: white !important;
    }

.text-primary {
    color: #003951 !important;
}

.nav {
    color: #778F9D;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    border-bottom: 3.5px solid #ED880E !important;
    color: #ED880E !important;
}

.nav-tabs .nav-link {
    outline: none;
    color: #778F9D !important;
}

    .nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
        border: none;
    }

    .nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
        border-color: #ED880E;
    }

    .nav-tabs .nav-link.disabled {
        color: #D3D3D3;
    }

/* Pills tabs styling - app colors */
.nav-pills .nav-link {
    color: #003951 !important;
    border: 1px solid #003951 !important;
    background: transparent !important;
    margin-right: 0.5rem;
}

.nav-pills .nav-link.active {
    background: #003951 !important;
    color: white !important;
    border-color: #003951 !important;
}

.nav-pills .nav-link:hover:not(.active) {
    background: rgba(0, 57, 81, 0.1) !important;
}

/* Blazorise Tabs Pills styling - app colors */
.tabs-pills .nav-item .nav-link,
.b-tabs.b-tabs-pills .nav-item .nav-link {
    color: #003951 !important;
    border: 1px solid #003951 !important;
    background: transparent !important;
    margin-right: 0.5rem;
    border-radius: 4px;
    padding: 0.5rem 1rem;
}

.tabs-pills .nav-item .nav-link.active,
.b-tabs.b-tabs-pills .nav-item .nav-link.active {
    background: #003951 !important;
    color: white !important;
    border-color: #003951 !important;
}

.tabs-pills .nav-item .nav-link:hover:not(.active),
.b-tabs.b-tabs-pills .nav-item .nav-link:hover:not(.active) {
    background: rgba(0, 57, 81, 0.1) !important;
}

.rz-selectbutton .rz-button.rz-state-active, .rz-selectbutton .rz-state-active.rz-paginator-element {
    background-color: #ED880E !important;
    border: solid 1px #003951 !important;
    color: white !important;
}

.rz-selectbutton .rz-button, .rz-selectbutton .rz-paginator-element {
    display: inline-block !important;
    background-color: #ffffff !important;
    color: #3a3a3a !important;
    border: solid 1px #dadfe2 !important;
    font-weight: 500 !important;
    border-radius: 0px !important;
}

.rz-datepicker-calendar td .rz-state-active {
    background-color: #ED880E;
}

.rz-dropdown-item.rz-state-highlight, .rz-state-highlight.rz-menuitem, .rz-state-highlight.rz-autocomplete-list-item, .rz-state-highlight.rz-multiselect-item, .rz-dropdown-items li.rz-state-highlight, .rz-autocomplete-items li.rz-state-highlight, .rz-multiselect-items li.rz-state-highlight {
    background-color: #ED880E;
}

.rz-dropdown-item:hover, .rz-menuitem:hover, .rz-autocomplete-list-item:hover, .rz-multiselect-item:hover, .rz-dropdown-items li:hover, .rz-autocomplete-items li:hover, .rz-multiselect-items li:hover {
    background-color: #ED880E;
}

.b-bar-vertical-inline.b-bar-dark .b-bar-link.active, .b-bar-vertical-popout.b-bar-dark .b-bar-link.active, .b-bar-vertical-small.b-bar-dark .b-bar-link.active {
    background: #ED880E;
}

.b-bar-vertical-inline.b-bar-dark .b-bar-dropdown-menu .b-bar-dropdown-item.active, .b-bar-vertical-popout.b-bar-dark .b-bar-dropdown-menu .b-bar-dropdown-item.active, .b-bar-vertical-small.b-bar-dark .b-bar-dropdown-menu .b-bar-dropdown-item.active {
    background: #ED880E;
}

.b-bar-vertical-inline.b-bar-dark .b-bar-link:hover, .b-bar-vertical-popout.b-bar-dark .b-bar-link:hover, .b-bar-vertical-small.b-bar-dark .b-bar-link:hover {
    background: var(--b-bar-item-dark-hover-background, rgba(255, 255, 255, 0.3)) !important;
}

.b-bar-vertical-inline, .b-bar-vertical-popout, .b-bar-vertical-small {
    box-shadow: none !important;
}

.badge-primary {
    background-color: #003951;
}

::-webkit-scrollbar {
    width: 6px !important;
    --rz-scrollbar-size: 10px;
}

::-webkit-scrollbar-thumb {
    background: #003951 !important;
}

.form-control:focus {
    box-shadow: 0 0 0 0.1rem #ED880E;
    border-color: #ED880E;
}

.corners {
    background: #FFF;
    /*height: 500px;*/
    margin: 5em auto 0;
    max-width: 1024px;
    line-height: 25px;
    position: relative;
    width: 80%;
    font-family: arial;
    font-size: 14px;
    padding: 10px;
    padding-top: 40px;
    -webkit-box-shadow: 0 1px 7px hsla(0deg, 0%, 0%, 0.2);
    -moz-box-shadow: 0 1px 7px hsla(0deg, 0%, 0%, 0.2);
    box-shadow: 0 1px 7px hsla(0deg, 0%, 0%, 0.2);
}

    /* Corner Effect */
    .corners:after,
    .corners:before {
        background: #e6e6e6;
        content: "";
        height: 50px;
        position: absolute;
        top: -25px;
        width: 100px;
        -webkit-box-shadow: 0 5px 10px -7px hsla(0deg, 0%, 0%, 0.5);
        -moz-box-shadow: 0 5px 10px -7px hsla(0deg, 0%, 0%, 0.5);
        box-shadow: 0 5px 10px -7px hsla(0deg, 0%, 0%, 0.5);
    }

    .corners:after {
        left: -50px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .corners:before {
        right: -50px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .corners p {
        word-break: break-all;
    }

/*Change to tooltip left and right padding so it doesnt overflow*/
[data-tooltip]:not(.is-loading)::before, [data-tooltip]:not(.is-disabled)::before, [data-tooltip]:not([disabled])::before {
    padding: var(--b-tooltip-padding, 0.25rem 0.5rem);
}

.dropdown-item {
    padding: 10px;
}

    .dropdown-item:focus, .dropdown-item:hover {
        background-color: #DEE2E6;
    }

    .dropdown-item.active, .dropdown-item:active {
        background-color: inherit;
    }

.dropdown-menu {
    padding: 0.25rem 0;
}

.position-static {
    position: relative !important;
}

.table-row-selectable {
    line-height: 1.25 !important;
}

.page-item.active .page-link {
    background-color: #ED880E !important;
    color: white !important;
}

.page-item:not(.disabled):not(.active) .page-link:hover {
    background-color: #ED880E !important;
    color: white !important;
}

.rz-selectbutton {
    text-align: center;
}

.table-fixed-header .table thead tr th {
    z-index: 1;
}

.b-numeric-handler-wrap {
    display: none;
}

.b-numeric {
    width: auto;
}

textarea.form-control {
    min-height: 5em;
    min-width: 14em;
}

.step-active .step-text {
    color: #ED880E;
}

.step-active .step-circle {
    background-color: #ED880E;
    border-color: #ED880E;
}

    .step-active .step-circle::before {
        color: #ED880E;
    }

.step-text {
    font-size: 0.75rem;
}

.steps-content {
    margin-bottom: 2rem;
    position: relative;
}

    .steps-content > .active {
        position: absolute;
        font-family: serif;
        top: 0;
        color: #003951;
    }

.rounded-lg {
    border-radius: 1em !important;
}

.invalid-feedback {
    color: red;
}

.form-control.is-invalid, .was-validated .form-control:invalid {
    border-color: red;
}

/* Flush modal - no inner padding/margin, no header */
.blazored-modal.blazored-modal-flush .bm-header {
    display: none !important;
}

.blazored-modal.blazored-modal-flush .bm-content {
    padding: 0 !important;
    margin-top: 0 !important;
}

/* Invoice Creator Modal - Remove padding when header is hidden */
.blazored-modal-1200 .bm-content {
    padding: 0 !important;
    margin-top: 0 !important;
}

.blazored-modal-1200:not(:has(.bm-header)) {
    padding: 0 !important;
}

.blazored-modal-1200 .bm-container {
    padding: 0 !important;
}

/* Flush modal - no header, no padding (for modals with custom headers) */
.blazored-modal-flush {
    border-radius: 12px !important;
    overflow: hidden !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.blazored-modal-flush .bm-header {
    display: none !important;
}

.blazored-modal-flush .bm-container {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
}

.blazored-modal-flush .bm-content {
    padding: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
}

.blazored-modal-flush .bm-footer {
    display: none !important;
}

/* Flatpickr calendar - ensure it renders above Blazored modal (modal z-index is ~1050) */
.flatpickr-calendar {
    z-index: 10060 !important;
}

/* Embedded mode - for iframe integration with Videoreha */
.page.embedded-mode {
    /* Remove any default padding/margin */
    padding: 0;
    margin: 0;
}

.page.embedded-mode .content {
    /* Full width without sidebar offset */
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100%;
    margin-top: 0 !important;
}

.page.embedded-mode .b-layout-content {
    /* Remove header offset */
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.color-accent-btn {
    color: #ED880E;
    border: 1px solid #ED880E;
}

.color-accent-btn:hover {
    background-color: #ED880E;
    color: white;
}
