/*
© 2023 Sophistio. <www.Sophistio.com>
© 2023 Jan Hanyš <jan.hanys@gmail.com>
All rights reserved
*/
/* 
    Created on : 23. 8. 2023, 11:23:00
    Author     : jan
*/

/*color: var(--ct-btn-color);*/
:root {
    --so-font-size: 9pt;
    --so-font-size-plus: 10pt;
    /*--so-background-color: #5e6154;*/
    --so-background-color: #f5f6fa;
    --so-background-color-logo: #C2C9AA;
    --so-background-color-title: #ededed;
    --so-color: white;
    --so-color-active: #DCFC76;
    --so-color-hover: #DCFC76;
    --so-color-title: #364a63;
    /* pozadí buněk tabulky*/
    --so-table-background1: #ffffff;
    --so-table-background2: #f5f5f5;
    --so-table-thead-background: #e0e0e0;
    --so-table-border: 1px solid #f0f0f0;
    --so-table-highlight: #aecbfa;
    /*#f5f6fa*/
    --so-disabled-element: #f5f6fa;
    --so-disabled-element-color: #8094ae ;
}

body, td, textarea,input,select {
    /*font-family: var(--font-family-sans-serif) ;*/
    font-size:  var(--so-font-size);
}

/*template style*/

.nk-sidebar .nk-menu > li .nk-menu-sub .nk-menu-link {
    padding-left: 37px;
}

body {
    padding: 0;
    margin: 0;
}
#content {

}
.hControls {
    position: absolute;
    top: 0px;
    right: 5px;
}
.hUser {
    position: absolute;
    top: 30px;
    left: 215px;
    font-size: 0.8em;
    line-height: 1.2em;
}
/* styl stránky*/

.page-container {
    display: grid ;
    grid-template-columns: 280px auto;
    grid-template-rows: 60px auto;
    column-gap: 0;
    row-gap: 0;
    height: 100vh;
    /*display: flex;*/
    /*margin-right: auto;*/
    /*margin-left: 0;*/
    /*position: relative;*/
    box-sizing: border-box;
}
.page-logo {
    text-align: center;
    vertical-align: central;
    padding: 6px;
    background-color: var(--so-background-color-logo);
}
.page-title {
    padding: 1rem;
    background-color: var(--so-background-color-title);
    text-align: right;
    display: flex;
    justify-content: space-between;
    font-size: 120%;
}
.page-title a {
    text-decoration: none;
    /*font-size: 120%;*/
    color: black;
}
.page-title a:hover {
    color: gray;
}
.page-column-menu {
    overflow: auto;
    display: flex;
    position: sticky;
    max-height: 100%;
    top: 0;
    /*width: 280px;*/
    padding: 6px;
    flex-direction: column;
    color: white;
    background-color: var(--so-background-color);
}
.page-column-menu-content {
    /*position: fixed;*/
    /*width: 220px;*/
    margin-top: 60px;
    margin-bottom: 0px;
    top: 0px;
}
.page-column-menu-content i.fa-solid {
    display: inline-block;
    width: 1.5em;
}

.page-content {
    /*width: calc(100% - 280px);*/
    /*overflow: auto;*/
    padding: 1rem 2rem;
}
.page-logo svg {
    width: 45px;
    height: 45px;
}


.page-column-menu a {
    text-decoration: none;
    color: white;
}
.page-column-menu a:hover {
    color: var(--so-color-hover);
}
.page-column-menu a.active {
    color: var(--so-color-active);
}
.menu-level-1-item {
    height: 1.8em;
    font-size: 14pt;
    font-weight: bold;
    margin-left: 0.5em;
    /*padding: 10px 6px 10px 6px;*/

}
.menu-level-1-item a,.menu-level-2-item a {
    vertical-align: middle;
}

.menu-level-2-item {
    margin-left: 2.8em;
    font-size: 12pt;
    height: 1.8em;
}
.menu-level-3-item {
    font-size: 130%;
    height: 2rem;
    display: inline-block;
    margin-left: 4px;
}
.menu-level-3-item a {
    color: gray;
}
div.menu-level-3  {
    width: 100%;
    display: flex;
    margin-bottom: 0rem;
}
div.menu-level-3-navigation {
    display: inline-block;
    font-weight: bolder;
    font-size: 110%;
    /*width: 45%;*/
}
div.menu-level-3-container  {
    display: inline-block;
    width: 45%;
    margin-right: 0;
    margin-left: auto;
    text-align: right;

}

code {
    font-family: monospace;
    color: darkgreen;
}

.pointer {
    cursor: pointer;
}

/*material design*/
@font-face {
    font-family: 'Material Icons Merge';
    font-style: normal;
    font-weight: 400;
    unicode-range: U+0-10FFFF;

    src: local('Material Icons Merge'),
        local('MaterialIconsMerge-Regular'),

        url(../fonts/MaterialIconsMerge-Regular.woff) format('woff'),
        url(../fonts/MaterialIconsMerge-Regular.ttf) format('truetype');
}

.material-icons {
    font-family: 'Material Icons Merge';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;  /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;

    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;

    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;

    /* Support for IE. */
    font-feature-settings: 'liga';
}

/* Rules for sizing the icon. */
.material-icons.md-14 {
    font-size: 14px;
}
.material-icons.md-16 {
    font-size: 16px;
}
.material-icons.md-1em {
    font-size: 1em;
    line-height: 1.4;
    vertical-align: middle;
}
.material-icons.md-18 {
    font-size: 18px;
}
.material-icons.md-24 {
    font-size: 24px;
}
.material-icons.md-36 {
    font-size: 36px;
}
.material-icons.md-30 {
    font-size: 30px;
}
.material-icons.md-48 {
    font-size: 48px;
}

/* Rules for using icons as black on a light background. */
.material-icons.md-dark {
    color: rgba(0, 0, 0, 0.54);
}
.material-icons.md-dark.md-inactive {
    color: rgba(0, 0, 0, 0.26);
}

/* Rules for using icons as white on a dark background. */
.material-icons.md-light {
    color: rgba(255, 255, 255, 1);
}
.material-icons.md-light.md-inactive {
    color: rgba(255, 255, 255, 0.3);
}

/*Styly pro forms*/
label {
    display: block;
}

label.label-required::after {
    color:red;
    content: "*";
    /*    vertical-align: super;
        font-size: smaller;*/

}

label.error, table.appForm.labelTopSmall label.error {
    color: red;
}
td.top {
    vertical-align: top;
}

/*tabulky*/
div.autoTableContainer {
    /*    overflow: auto;*/
    margin: 5px 0px 0px;
}

table.autoTable {
    border-collapse: collapse;
    /*background-color: #fafafa;*/
    /*border: var(--so-table-border);*/
    margin: 0;
    font-size: 0.9em;
}


table.autoTable thead tr.blank {
    border: 0px;
    background: #ffffff;
    height: 7px;
    font-size: 3px;
}

table.autoTable thead tr th, table.autoTable  tr th{
    background-color: var(--so-table-thead-background);
    /*padding: 3px 3px 3px 3px;*/
    border-right: var(--so-table-border);
    border-bottom: var(--so-table-border);
}

table.autoTable tbody tr.autoTable_groupRow td,tr.autoTable_groupRow td {
    background-color: #d6fcf1;
    /*background-color: #e6fcf6;*/
    /*    color: black;*/

    border-radius: 6px 6px 0 0;
    font-weight: bold;
    padding-left: 1rem;
    /*border-right: var(--so-table-border);*/
    font-size: 120%;
    /*border-top: var(--so-table-border);*/

    /*    border-bottom: 1px solid silver;*/
}
table.autoTable tr.autoTable_groupRowEmpty ,table.autoTableFixed tr.autoTable_groupRowEmpty,
table.autoTable tbody tr.autoTable_groupRowEmpty td,tr.autoTable_groupRowEmpty td {
    background-color: transparent !IMPORTANT;
    border: none;
}
table.autoTable tbody tr.autoTable_groupRow {
    margin-top: 3px;
}

table.autoTable tr.autoTable_groupRow2 td {
    background-color: #f4feb9;
    color: navy;
    /*    font-weight: bold;*/
    padding: 3px 3px 3px 3px;
    padding-left: 20px;
    border-right: 1px solid silver;
}
table.autoTable tr.group1sum td {
    color: navy;
    /*    border-right: 1px solid silver;*/
}
table.autoTable tr.group0sum td {
    color: #025d04;
    /*    border-right: 1px solid silver;*/
}

table.autoTable tr.groupTablesum td {
    color:saddlebrown;
    font-weight: bold;
    /*    border-right: 1px solid silver;*/
}
table.autoTable tr.groupTableavg td {
    color: #0056b3;
    font-weight: bold;
    /*    border-right: 1px solid silver;*/
}

/*table.autoTable tr.autoTableTr,table.autoTableFixed tr.autoTableTr {
    background-color: var(--so-table-background1);
}

table.autoTable tr.autoTableTr2 ,table.autoTableFixed tr.autoTableTr2{
    background-color: var(--so-table-background2);
}*/

table.autoTable tr:nth-child(odd) ,table.autoTableFixed tr:nth-child(odd) {
    background-color: var(--so-table-background2);
}
table.autoTable tr:nth-child(even) ,table.autoTableFixed tr:nth-child(even) {
    background-color: var(--so-table-background1);
}

table.autoTable tr td.fixedColumnLast ,table.autoTableFixed tr td.fixedColumnLast {
    background-color: inherit;
}



table.autoTable tbody tr td {
    border-right: var(--so-table-border);
    border-bottom: var(--so-table-border);
    /*padding: 2px 3px 2px 3px;*/
    padding: 1em .7em;
    /*height: auto;*/
    vertical-align: middle;
}

table.autoTable tbody tr td a,table.autoTable tbody tr td a:not([href])  {
    vertical-align: middle;
    cursor: pointer;
    color: #0fac81;
}

.table-fitler-wrapper .form-group {
    margin-bottom: .25rem;
}

/*table.autoTable tbody tr.currentRecord td {
        border-top: 2px dotted red; 
    border-bottom: 1px dashed #5e7f01;
}*/

tr.rowHeader td{
    font-weight: bold;
    background-color: #D3D3D3;
}

.autoTableContainerMain .autoTableFilteTitle {
    display: flex;
    justify-content: space-between;
    height: 15cqh;
    max-height: 70px;
    align-items: center;
    flex-direction: row;
    padding: 0 .8em 0 .8em;
    /*background-color: #e8e8e8;*/
    /*height: 4rem;*/
    /*background-color: var(--so-color-title);*/
    /*color: var(--so-color);*/
}
/*tlačítka na grafu*/
.autoTableContainerMain .autoTableFilteTitle div.title-toolbar {
    margin-right: 0px;
    margin-left: auto;
    display: flex;

    /*display: inline-block;*/
}
.autoTableContainerMain .autoTableFilteTitle div.title-toolbar label,.autoTableContainerMain .autoTableFilteTitle div.title-toolbar button {
    /*width: 6cqh;*/
    /*height: 6cqh;*/
    width: 5.5cqmin;
    max-width: 34px;
    height: 5.5cqmin;
    max-height: 34px;
    font-size: min(2.5cqmin,16pt);
    border-radius: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    box-sizing: border-box;
    background-color: transparent;
    color: gray;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0px;
    border: 1px solid silver;
    border-left: none;
}
.autoTableContainerMain .autoTableFilteTitle div.title-toolbar label:first-of-type {
    border-radius: 3px 0 0 3px;
    border-left: 1px solid silver;

}
.autoTableContainerMain .autoTableFilteTitle div.filterTitle {
    /*display: inline-block;*/
    font-size: 160%;
    padding: 0.2em;

}
.autoTableContainerMain .autoTableFilteTitle div.filterMax {
    /*display: inline-block;*/
    /*align-self:  flex-end;*/
    display: flex;
    justify-content: center;
    align-items: center;
    /*font-size: 120%;*/

    /*padding: 0.2em;*/
    width: 5.5cqmin;
    max-width: 34px;
    height: 5.5cqmin;
    max-height: 34px;
    font-size: 2.5cqmin;
    box-sizing: border-box;
    border-radius: 3px;
    background-color: transparent;
    color: gray;
    border: 1px solid silver;
}

.autoTableContainerMain .autoTableFilteTitle div.filterMax  .material-icons.md-18 {
    /*font-size: 3cqmin;*/
    font-size: min(2.5cqmin,16pt);
}

div.chart-canvas-container {
    height: calc(100vh - 240px);
    min-height: 600px;
}


input.datePicker[type='text'], input.form-datepicker[type='text']{
    width: 90px ;
    text-align: right;
}

input.datePicker[type='text'][readonly], input.form-datepicker[type='text'][readonly], input.form-timepicker[type='text'][readonly]{
    background-color: white;
}

input.datePicker[type='text'][readonly]:focus, input.form-datepicker[type='text'][readonly]:focus, input.form-timepicker[type='text'][readonly]:focus{
    background-color: #FFFEbb;
    outline: #3daee9 solid 2px;
}

/*input.form-datepicker.date-with-time[type='text']{
    width: 60px ;
}*/


input.timePicker[type='text'],input.form-timepicker[type='text'],fieldset.filter input.form-timepicker[type='text']{
    width: 60px;
    text-align: right;
}

/*form*/

input.smallText{
    width: 4em;
}
input.mediumText{
    width: 6em;
}

#ui-datepicker-div {
    z-index: 200 !IMPORTANT;
}

fieldset.appForm {
    /*border: 1px solid lightgray ;*/
    border: none;
    background-color: white;
    /*width: 80%;*/
    margin-left: 1em;
    margin-right: auto;
    padding: 1.8em;
    padding-top: .2em;
    padding-bottom: .3em;
    margin-bottom: 0.5em;
}
fieldset.appForm legend {
    /*top: 2em;*/
}
.appForm table.appForm {
    border-collapse: separate;
    border-spacing: 1em .6em ;
}
.appForm table.fixed {
    table-layout: fixed;
    width: 100%;
}
.appForm table.appForm  table.appForm {
    margin-left: -1em;
}

.appForm input[type=text],.appForm input[type=number], .appForm input[type=password],.appForm select {
    box-sizing: border-box;
    width: 20em;
    height: 2.5em;
    border: 1px solid gray;
    border-radius: 3px;
    padding: .5rem .5rem;
}
.appForm select {
    padding: .2rem .5rem;
    background-color: white;
    border: 1px solid gray;
}
/*date time element*/
.appForm div.form-datetime-element {
    display: inline-block;
    /*width: 31em;*/
}
.appForm div.form-datetime-element input.form-datepicker {
    width: 11em;
}
.appForm div.form-datetime-element input.form-timepicker {
    width: 8.5em;
}
.appForm div.form-datetime-element .inner-addon .material-icons, .appForm div.form-datetime-element .inner-addon i.fa-solid {
    padding-top: 8px;
}

.appForm textarea {
    box-sizing: border-box;
    width: 20em;
    height: 7em;
    border: 1px solid gray;
    border-radius: 3px;
    padding: .5rem 1rem;
}
.appForm .fullWidth {
    width: 100%;
}

table.appForm tbody td {
    padding: 0px;
}
label.inline, .inline{
    display: inline-block;
    width: auto;
}
table.appForm.labelTopSmall label{
    margin-bottom: .1em;
    font-size: 90%;
    color: #5b5b5b;
}
fieldset.appForm + button {
    /*margin-left: 3.6em;*/
    margin-left: 1em;
}
/* fix */
.ui-front.ui-autocomplete {
    z-index: 110;
}

/*alert box*/
div#alertBoxContainer {
    position: fixed;
    width: auto;
    left: 40%;
    right: 40%;
    top: 30vh;
    /*    bottom: 48%;*/
    border: thin solid #5b5b5b;
    background-color: #cdcdcd;
    color: black;
    font-size: larger;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
    width: auto;
    border-radius: 6px;
    box-shadow: 0 0 6px green !IMPORTANT;
}
div#alertBoxContainer.error {
    box-shadow: 0 0 6px red !IMPORTANT;
}
#alertBoxContainer span.title {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}


fieldset.appForm span.frmTextStr {
    display: inline-block;
    box-sizing: border-box;
    width: 20em;
    height: 2.5em;
    border: 1px solid gray;
    border-radius: 3px;
    padding: 3px;
    vertical-align: middle;
    background-color:#F7F7F7;
    position: relative;
}
.appFormBs .frmTextStr {
    position: relative;
}

span.frmTextStr em.icon {
    position: absolute;
    right: 0.2em;
    top: 50%;
    transform: translate(0, -50%) !important;
    font-size: 120%;

}
span.frmTextStr em.icon.copy {
    cursor: copy;
}
span.frmTextStr em.icon.copy:hover {
    color: #13dba4;
}
fieldset.appForm span.frmTextStr.highlighted {
    background-color: #13dba4;
}

fieldset.appForm table.subTable input[type="text"], fieldset.appForm table.subTable input[type="number"], fieldset.appForm table.subTable select {
    width: calc(100% - 8px);
    margin: 4px;

}

table.subTable td.subTableHandle{
    padding-left: 4px;
    padding-right: 4px;
}

.ui-selectmenu-button.ui-button.ui-button-icon-only.splitbutton-select {
    width: 1.5em;
    /*margin-top: 2px;*/
    /*margin-bottom: 2px;*/
    line-height: auto;
    padding-top: 0.4em;
    padding-bottom:  0.4em;

}
.ui-button-icon-only.splitbutton-select .ui-selectmenu-icon {
    margin-top: -8px;
}

/*tables*/
div.filter {
    position: sticky;
    left: 0px;
    z-index: 5;
    position: sticky;
    left: 0px;
    /*min-width: 100%;*/
    /*width: fit-content;*/

}
label.tableIconCheckbox {
    font-size: 1.5em;
    padding: 0.1em;
    width: 1.5em;
}

div.filterButtons {
    display: block;
    /*    margin-left: -2px;
        float: right;
        margin-top: 2.4em;*/

    /*            text-align: right;*/

    /*            position:absolute;
                right: 6px;
                bottom: 6px;*/
}
div.filterRecords {
    display: inline-block;
    vertical-align: middle;
}
/*        div.fitlerPagingAll {
            display: inline-block;
        }*/
div.filterElements {
    margin-bottom: 6px;
    display: block;

}

div.filter fieldset {
    border: 1px solid silver;
    border: none;
    /*width: calc(100% - 30px);*/
    background-color: #F0F0F0;
    margin: 3px 0 3px 0;
    /*border-radius: 6px;*/
    border-radius: 0;
    /*            margin-left: -7px;
                margin-right: -20px;*/
    padding-right: 20px;

}
div.filter fieldset legend{
    display: none;
    position: absolute;
    top: 0px;
    color: silver;
    left: calc(50% - 100px);
    background-color: transparent;
}
div.filter fieldset legend:hover {
    color: gray;

}
div.filterElements > span.noWrap > label {
    display: table-cell;
    vertical-align: bottom;
    color: black;
    /*        margin-bottom: 4px;
            margin-top: 4px;*/
    padding-bottom: 4px;
    /*padding-top: 4px;*/
    text-align: left;
    width: 185px;
    height: 1.5em;
    overflow: hidden;
    font-size: 8pt;
    /*font-weight: bolder;*/
    white-space: normal;

}
/* tady jako block jednotlivé elementy*/
div.filterElements span.select2-container, div.filterElements span.select2-selection--multiple {
    min-height: 2.3em;

}
div.filterElements > span.noWrap {
    display: inline-block;
    vertical-align: top;
    text-align: left;
    width: 185px;
    margin-right: 15px;
}

div.filterElements > span.noWrap.filter-2 {
    width: 385px;
    margin-right: 19px;
}
div.filterElements > span.noWrap.filter-3 {
    box-sizing: border-box;
    width: 594px;
    margin-right: 15px;
}
div.filterElements span.filterDivider {
    display: inline-block;
    width: 13px;
}
div.filterElements span.selectEach {
    box-sizing: border-box;
    width: 100%;
    display: inline-block;
    white-space: normal;
    max-height: 5em;
    min-height: 2.2em;
    overflow-y: auto;
}
div.filterElements span.selectEach span.noWrap label {
    width: 124px;
    text-align: left;
    white-space: normal;
    word-wrap: break-word;
    vertical-align: text-top;
}
div.filterElements span.selectEach span.noWrap input[type='checkbox'] {
    margin-left: 2px;

}
div.filterElements input[type="text"],div.filterElements select, div.filterElements textarea {
    box-sizing: border-box;
    width: 185px;
    height: 2em;
    padding: 2px;
    margin-top: 0;
    border: 1px solid gray;
    border-radius: 4px;
}
div.filterElements textarea {
    height: 2.25em;

}

div.filterElements div.comboTreeInputWrapper div.comboTreeInputBox {
    box-sizing: border-box;
    min-height: 2.2em;
    max-height: 5em;
}
span.select2.select2-container {
    max-height: 5em;
    overflow-y: auto;
}
div.filterElements input.datePicker.date-with-time[type='text'], div.filterElements  input.form-datepicker.date-with-time[type='text']{
    width: 120px ;
    text-align: right;
}


div.filterElements input.halfText, div.filterElements select.halfText {
    box-sizing: border-box;
    width: 86px;
    height: 2.0em;
}
span.filterDivider {
    display: inline-block;
    width: 10px;
    text-align: center;
}
/* filer z chart*/


div.filterRecords {
    display: inline-block;
    vertical-align: middle;
}
/*        div.fitlerPagingAll {
            display: inline-block;
        }*/


/* jsquery fix*/
.ui-accordion .ui-accordion-content {
    padding: .5em .5em;
}


.inner-addon {
    position: relative;
    margin: 0px;
    padding: 0px;
    display: inline-block;
}

/* style icon */
.inner-addon .material-icons, .inner-addon i.fa-solid {
    position: absolute;
    padding: 0px;
    padding-top: 4px;

}

/* align icon */
.left-addon .material-icons, .material-icons.left-addon  {
    left:  2px;
}
.left-addon i.fa-solid, i.fa-solid.left-addon  {
    left:  2px;
}
.right-addon .material-icons, .material-icons.right-addon {
    right: 2px;
}
.right-addon i.fa-solid, i.fa-solid.right-addon {
    right: 2px;
}

/* add padding  */
.left-addon input  {
    padding-left:  20px;
}
.right-addon input {
    padding-right: 20px !IMPORTANT;
}
.both-addon input {
    padding-right: 20px !IMPORTANT;
    padding-left:  20px;
}

/* tabulky*/
table.autoTable {
    /*min-width: 700px;*/
    text-align: left;
}
table.autoTableFixed {
    table-layout: fixed;
    /*text-align: left;*/
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

table.autoTableSingle.autoTableFixed, div.autoTableContainerBody.fixedHeader table.autoTable {
    /*border: var(--so-table-border);*/
    /*    border-right: 1px solid silver;
        border-bottom:  1px solid silver;*/
}
div.autoTableContainerBody.fixedHeader table.autoTableMultiple.autoTableFixed {
    border: var(--so-table-border);

    margin-bottom: 6px;
}

table.autoTable thead tr th,table.autoTable tbody tr th {
    font-size: 9pt;
    text-align: center;
    /*padding: 5px 3px 5px 3px;*/
    padding: 1em .7em;
}

div.autoTableContainerBody.fixedHeader table thead th.fixedColumnLast {
    /*background-color: #f9f9f9;*/
    /*right: 0;*/
    right: -2px;
    border-left: 1px solid silver;
    z-index: 1;
}
table.autoTableFixed thead tr th,table.autoTableFixed tbody tr th {
    padding: 1em;
    background-color: var(--so-table-thead-background);
    ;
    word-break: break-word;
    font-size: var(--so-font-size);
    /*border-bottom: var(--so-table-border);;*/
    border-right: var(--so-table-border);
    ;
}
table.autoTableFixed thead tr th:last-of-type,table.autoTableFixed tbody tr th:last-of-type {
    border-right: none;

}
table.autoTableFixed thead tr th a,table.autoTableFixed body tr th a {
    color: black;
    font-size: 9pt;
}
table.autoTable thead tr th a,table.autoTable body tr th a {
    color: black;
    font-size: 9pt;
}

table.autoTableFixed > tbody > tr >  td {
    height: 3em;
    padding: 3px;
    /*border-right: 1px dotted silver;*/
    /*border-top: 1px dashed silver;*/
    border-right: var(--so-table-border);
    border-bottom: var(--so-table-border);
    /*border-bottom: none;*/
    word-break: break-word;
}

table.autoTableFixed tbody tr td:last-of-type {
    height: 3em;
    padding: 3px;
    border-right: none;
    /*border-bottom: 1px dashed silver;*/
    /*border-top: 1px dashed silver;*/
}

table tr.table-row-detail  {
    display: none;
}
table tr.table-row-detail.active  {
    display: table-row;
}

table tr.table-row-main.detail-icon td:first-of-type::before {
    content: "\eaf3"; /* Kód ikony (např. fajfka) */
    font-family: 'NerdFontsSymbols Nerd Font';
    font-weight: 900;
    margin-right: 1rem; /* Mezera mezi ikonou a textem */
    color: green;
}

table tr.table-row-main.detail-icon.expanded td:first-of-type::before {
    content: "\eaf4"; /* Kód ikony (např. fajfka) */
    font-family: 'NerdFontsSymbols Nerd Font';
    font-weight: 900;
    margin-right: 1rem; /* Mezera mezi ikonou a textem */
    color: red;
}


.yesColor {
    background-color: #D9FFD9;
}
.noColor {
    background-color: #fddfdf;
}
.right {
    text-align: right;
}


div.autoTableContainerBody.fixedHeader table.autoTableFixed tbody tr td.fixedColumnLast {
    /*height: 3em;*/
    /*padding: 3px;*/
    /*border-left: none;*/
    /*right: 0;*/
    /*border-top: 1px dashed silver;*/
    /*border-left: 1px dotted silver;*/
    text-align: center;
}
div.autoTableContainerBody.fixedHeader table tbody td.fixedColumnLast {
    right: -1px;
    position: sticky;
}
div.autoTableContainerBody.fixedHeader table.autoTable > tbody > tr > td.fixedColumnLast {
    /*height: 3em;*/
    /*padding: 3px;*/
    /*border-left: none;*/
    text-align: center;
    border-bottom: var(--so-table-border);
    border-left: var(--so-table-border);
}
table.autoTableFixed > tbody> tr:first-of-type> td{
    height: 3em;
    padding: 3px;
    border-top: none;
}

table.autoTableFixed.autoTableMultipleSum thead tr.autoTableTitleHeader th {
    background-color: #e2e2e2;
    height: 2em;
}

tr.autoTableTitleHeader {
    background-color: #f2f2f2;
    height: 2em;
}
table.autoTable thead tr.autoTableTitleHeader th, table.autoTable tr.autoTableTitleHeader th ,
table.autoTableFixed thead tr.autoTableTitleHeader th, table.autoTableFixed tr.autoTableTitleHeader th {
    background-color: white;
    border: none;
    height: 2em;
    font-size: 1.2em;
    border-radius: 6px 6px 0 0 !IMPORTANT;
    padding-left: 10px;
    padding-top: 6px;
    border-bottom: var(--so-table-border);
    /*border-right: 1px solid #adadad;*/
    text-align: left;

}

table.autoTable tr {
    min-height: 2em;
}
/*default na stránkce*/
table.autoTable thead tr th, table.autoTable tbody tr th {
    position: sticky;
    top: 63px;
}
div.ui-dialog-content table.autoTable thead tr th {
    position: sticky;
    top: -0.6em;
}

table.autoTable thead tr.autoTableTitleHeader th, table.autoTableSingle thead tr.autoTableTitleHeader th {
    top: auto;
    padding: 0;
}


table.autoTable thead tr:first-of-type th:first-of-type {
    border-radius: 6px 0 0 0;
}
table.autoTable thead tr:first-of-type th:last-of-type, table.autoTable thead tr:first-of-type th.fixedColumnLast {
    border-radius: 0 6px 0 0;
}

/*pro seskupovanou table*/
div.autoTableTitleDivMultiple {
    /*width: 100%;*/
    position: sticky;
    left: 0px;
    display: grid;
    background-color: #f1f1f1;
    border: 1px solid gray;
    border-radius: 6px;
    grid-template-columns: 35% 30% 35%;
    padding: 4px;
    margin-bottom: 6px;
}
div.autoTableTitleDivMultiple div {
    /*border: 1px solid gray;*/
}

tr.autoTableTitleHeader div.autoTableTitleDiv {
    /*background-color: yellow;*/
    /*width: calc(100% - 200px);*/
    max-width: calc(100vw - 350px);
    /*position: sticky;*/
    font-size: 120%;
    left: 11px;
    display: grid;
    grid-template-columns: 35% 30% 35%;
    height: 3rem;
    margin-left: 1rem;
    align-items: center;
}
div.fullScreen tr.autoTableTitleHeader div.autoTableTitleDiv {
    max-width: calc(100vw - 20px);
}
/* zjednodušit selectory pro popisek tabulky*/
div.autoTableTitleDiv div.filterPaging,div.autoTableTitleDivMultiple div.filterPaging {
    text-align: center;
}
div.autoTableTitleDiv div.tableTitle {
    text-align: left;
}
div.autoTableTitleDivMultiple div.tableTitle{
    text-align: left;
    font-size: 1.2em;
    padding-left: 6px;
}
table.autoTable, table.autoTableFixed {
    display: inline-table;
    border-radius: 6px 6px 6px 6px ;
    /*margin-right: 21px;*/
}
div.jsDialogUi table.autoTable, div.jsDialogUi table.autoTableFixed {
    margin-right: 10px;

}
div.autoTableTitleDiv div.tableTitleRight,div.autoTableTitleDivMultiple div.tableTitleRight {
    text-align: right;
    font-size: 8pt;
    font-weight: normal;
    padding-right: 6px;
}

table.autoTable tr.groupTablesum td,table.autoTableFixed tr.groupTablesum td {
    color: black;
    background-color: #f1f1f1;
}
table.autoTable tr.groupTableavg td,table.autoTableFixed tr.groupTableavg td {
    color: black;
    background-color: #f1f1f1;
}
table.autoTableFixed tr.group0sum td,table.autoTable tr.group0sum td {
    color: black;
    background-color: #f9f9f9;
}

tr.autoTable_groupRow2 {
    background-color: #f9f9f9;
}

table.autoTableMultiple tbody tr.group0sum:nth-last-of-type(2) td  {
    border-top: 1px solid silver;

}


/*    table.autoTableFixed tbody tr.groupTablesum td{
        background-color: #f9f9f9;
    }
    table.autoTableFixed tbody tr.groupTableavg td{
        background-color: #f9f9f9;
    }*/


button.tableIconButton {
    font-size: 1em;
    padding: 0.1em;
    width: 1em;
}
button.tableIconButtonMenu {
    font-size: 1.5em;
    padding: 0.1em;
    width: 3em;
}

tr.autoTableTitleHeader th div.filterPaging a.tableNavigation {
    cursor: pointer;
    display: inline-block;
    border: 1px solid transparent;
    padding: 3px;
    width: auto;
    vertical-align: middle;
}
a.tableNavigation:hover {
    background-color: #e2e2e2;
    border: 1px solid #e2e2e2;
    border-radius: 4px;
}

span.filterPaging {
    font-weight: normal;
    font-size: 8pt;
    /*display: inline-block;*/
    /*display: none;*/
    /*margin-left: calc(50vw - 200px);*/
}
span.filterPaging select.tableSelect {
    /*font-size: 1.1em;*/
    padding: 0.1em;
    padding-left: 0.2em;
    /*height:  1.5em;*/
    margin: 2px;
    vertical-align: baseline;
}

table.autoTable thead tr th:last-of-type,
table.autoTable tbody tr td:last-of-type{
    border-right: none;
}

table.autoTable tbody tr:last-of-type td{
    border-bottom: none;
}
div.autoTableContainerBody.fixedHeader table.autoTable tbody tr:last-of-type td.fixedColumnLast {
    border-bottom: none;
    border-radius: 0 0 6px 0;
}
.ui-menu label {
    font-size: 1.1em;
}
/*    table.autoTableSingle thead tr th {
        border-bottom: 1px solid silver;
    }*/
div.autoTableContainerBody.fixedHeader table.autoTableRotate tbody td.fixedColumnLast {
    position: static;
}
div.autoTableContainerBody.fixedHeader table.autoTable.autoTableRotate tbody tr:last-of-type td.fixedColumnLast {
    border-radius: 0 0 0 0;
}

div.autoTableContainer {
    margin-top: 1.5rem;
    /*border: 2px solid green;*/
    /*border-right: 100px solid gray;*/
    /*z-index: 10;*/

    /*overflow: hidden;*/
}
a.tableAction {
    font-size: 18px;
    color: #0fac81;
}

.selectui-overflow {
    max-height: 300px;
}

/* select each styling*/
.elementSelectEach span.item label {
    display: inline-block;
}
.elementSelectEach span  a {
    color: #1480e2;
    cursor: pointer;
}

/* select datumu pomocí select*/
div.date-part-select {
    display: inline-block;
}
div.date-part-select select.day{
    width: 5em;
}
div.date-part-select select.month{
    width: 5em;
}
div.date-part-select select.year{
    width: 8em;
}

table.formFixed {
    table-layout: fixed;
    width: 100%;
}
table.formFixedSub {
    table-layout: fixed;
    width: calc(100% + 24px);
}

table.formFixedSub fieldset {
    margin-left: -23px;
    margin-right: 0px;
    width: 100%;
}

div.fa-stack.tableRight i:first-child {
    color: #13dba4;
    font-size: 240%;
}

div.fa-stack.tableRight i:nth-child(2) {
    color: white;
    font-size: 140%;
    padding-left: 3%;
}
i.tableRight {
    font-size: 200%;
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

.spin {
    animation-name: spin;
    animation-duration: 10000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.fa-stack .tableRight {

}

/*new bootstrap form*/
.appFormBs .ui-selectmenu-button.ui-button {
    box-sizing: border-box;
    width: 100%;
}

.appFormBs .comboTreeWrapper {
    display: block;
}
.appFormBs .comboTreeInputWrapper {
    display: block;
}
.appFormBs .comboTreeInputBox {
    background: initial;
}
.editTable .form-check-input {
    margin-left: 1em;
    margin-top: auto;
    position: initial;
}
.appFormBs label {
    display: inline-block;
    margin-bottom: .25rem;
    margin-top: .3rem;
    /*margin-bottom: 16px;*/
}
/* elementy skryté v readOnly form*/
form.read-only .read-only-hide {
    display: none;
}

form.read-only .frmTextStr, form.read-only .form-control  {
    background-color: #dff7fb !important;
}


/*********** range input custom style ***********/
input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    cursor: pointer;
    width: 100%;
    font-size: inherit;
}

/* Removes default focus */
input[type="range"]:focus {
    outline: none;
}

/******** Chrome, Safari, Opera and Edge Chromium styles ********/
/* slider track */
input[type="range"]::-webkit-slider-runnable-track {
    background-color: #dbdfea;
    border-radius: 0.5em;
    height: 0.5em;
}

/* slider thumb */
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none;
    margin-top: -.5em; /* Centers thumb on the track */
    background-color: #0fac81;
    border-radius: 0.5em;
    height: 1em;
    width: 1em;
}

input[type="range"]:focus::-webkit-slider-thumb {
    outline: 1px solid #0fac81;
    outline-offset: 0.125em;
}

/*********** Firefox styles ***********/
/* slider track */
input[type="range"]::-moz-range-track {
    background-color: #dbdfea;
    border-radius: 0.5em;
    height: 0.5em;
}

/* slider thumb */
input[type="range"]::-moz-range-thumb {
    background-color: #0fac81;
    border: none; /*Removes extra border that FF applies*/
    border-radius: 0.5em;
    height: 1em;
    width: 1em;
}

input[type="range"]:focus::-moz-range-thumb{
    outline: 1px solid #0fac81;
    outline-offset: 0.125em;
}



/* custom control elements 3 state switch*/
div.custom-switch-3state datalist{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    /*writing-mode: vertical-lr;*/
    width: 80px;
}
div.custom-switch-3state datalist option {
    padding: 0;
    /*font-size: 50%;*/
}
div.custom-switch-3state input[type="range"] {
    width: 80px;
    margin: 0;
}
/* input výchozí nesepnuto */
div.custom-switch-3state input[type="range"] {
    background-color: transparent;
    border: 2px solid #dbdfea;
    padding: 4px;
    border-radius: 10px;

}
div.custom-switch-3state input[type="range"]:focus {
    border-color: #0fac81;
}

div.custom-switch-3state input[type="range"]::-moz-range-track {
    background-color: transparent;
    height: 6px;
}
div.custom-switch-3state input[type="range"]::-webkit-slider-runnable-track {
    background-color: transparent;
    height: 6px;

}

div.custom-switch-3state input[type="range"]::-moz-range-thumb {
    background-color: #dbdfea;
}
div.custom-switch-3state input[type="range"]::-webkit-slider-thumb {
    background-color: #dbdfea;
}

/* zero value */
div.custom-switch-3state input[type="range"].zero{
    background-color: #fa6262;
    border: 2px solid #fa6262;
}
div.custom-switch-3state input[type="range"].zero::-moz-range-track {
    background-color: #fa6262;
}
div.custom-switch-3state input[type="range"].zero::-webkit-slider-runnable-track {
    background-color: #fa6262;
}
div.custom-switch-3state input[type="range"].zero::-moz-range-thumb {
    background-color: #f5f6fa;
}
div.custom-switch-3state input[type="range"].zero::-webkit-slider-thumb {
    background-color: #f5f6fa;
}


/* ON value*/
div.custom-switch-3state input[type="range"].one {
    background-color: #0fac81;
    border: 2px solid #0fac81;
}
div.custom-switch-3state input[type="range"].one::-moz-range-track {
    background-color: #0fac81;
}
div.custom-switch-3state input[type="range"].one::-webkit-slider-runnable-track {
    background-color: #0fac81;
}
div.custom-switch-3state input[type="range"].one::-moz-range-thumb {
    background-color: #f5f6fa;
}
div.custom-switch-3state input[type="range"].one::-webkit-slider-thumb {
    background-color: #f5f6fa;
}
/*div.custom-switch-3state-wrap {
    padding: 3px;
    display: inline-block;
    border: 1px solid gray;
    border-radius: 10px;
    height: 24px;
    background-color: silver;
}*/

div.custom-range-ticks datalist{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    /*margin-left: -.5em;*/
    /*margin-right: -1em;*/
    /*writing-mode: vertical-lr;*/
    /*width: calc(100% + 1.5em);*/
    width: 100%;
}

div.custom-range-ticks datalist.vertical{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    writing-mode: vertical-lr;
    width: 100%;
}

div.custom-range-ticks datalist option {
    padding: 0;
    text-align: center;
}

div.custom-range-ticks datalist.vertical option {
    padding: 0;
    transform: rotate(180deg);
    text-align:right;
    /*font-size: 50%;*/
}
div.custom-range-ticks input[type="range"] {
    width: 100%;
    margin: 0;
}

input.timeValue, div.timeValue {
    /*width: 30em;*/
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}


/* ui dialog and other jquery ui fixes*/
.ui-dialog {
    padding: 0;
}
.ui-dialog .ui-dialog-titlebar {
    padding: 1em 2em;
    border: none;
    border-bottom: 1px solid #dddddd;
    ;
    background-color: white;
}

.ui-dialog .ui-dialog-buttonpane button {
    background-color: #0fac81;
    border-color: #0fac81;
    position: relative;
    letter-spacing: 0.02em;
    display: inline-flex;
    align-items: center;
    color: #fff;
    font-family: Nunito, sans-serif;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    user-select: none;

    border: 1px solid #0fac81;

    padding: 0.4375rem 1.125rem;
    font-size: 0.8125rem;
    line-height: 1.25rem;
    border-radius: 4px;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.ui-dialog .ui-dialog-buttonpane button.btn-primary {
    color: #fff;
    background-color: #0fac81;
    border-color: #0fac81;
}

.ui-dialog .ui-dialog-buttonpane button.btn-primary:hover {
    color: #fff;
    background-color: #0d9973;
    border-color: #0d906c;
}

.ui-dialog .ui-dialog-buttonpane button.btn-secondary {
    color: #fff;
    background-color: #364a63;
    border-color: #364a63;
}

.ui-dialog .ui-dialog-buttonpane button.btn-secondary:hover {
    color: #fff;
    background-color: #29384a;
    border-color: #243142;
}

.ui-dialog .ui-dialog-buttonpane button.btn-success {
    color: #fff;
    background-color: #1ee0ac;
    border-color: #1ee0ac;
}

.ui-dialog .ui-dialog-buttonpane button.btn-success:hover {
    color: #fff;
    background-color: #19be92;
    border-color: #18b389;
}

.ui-dialog .ui-dialog-buttonpane button.btn-info {
    color: #fff;
    background-color: #09c2de;
    border-color: #09c2de;
}

.ui-dialog .ui-dialog-buttonpane button.btn-info:hover {
    color: #fff;
    background-color: #08a2b9;
    border-color: #0797ad;
}

.ui-dialog .ui-dialog-buttonpane button.btn-warning {
    color: #fff;
    background-color: #f4bd0e;
    border-color: #f4bd0e;
}

.ui-dialog .ui-dialog-buttonpane button.btn-warning:hover {
    color: #fff;
    background-color: #d2a20a;
    border-color: #c69909;
}

.ui-dialog .ui-dialog-buttonpane button.btn-danger {
    color: #fff;
    background-color: #e85347;
    border-color: #e85347;
}

.ui-dialog .ui-dialog-buttonpane button.btn-danger:hover {
    color: #fff;
    background-color: #e43325;
    border-color: #e02b1c;
}

.ui-dialog .ui-dialog-buttonpane button.btn-dark {
    color: #fff;
    background-color: #1c2b46;
    border-color: #1c2b46;
}

.ui-dialog .ui-dialog-buttonpane button.btn-dark:hover {
    color: #fff;
    background-color: #111a2b;
    border-color: #0d1522;
}

.ui-dialog .ui-dialog-buttonpane button.btn-gray {
    color: #fff;
    background-color: #8091a7;
    border-color: #8091a7;
}

.ui-dialog .ui-dialog-buttonpane button.btn-gray:hover {
    color: #fff;
    background-color: #697d97;
    border-color: #647790;
}

.ui-dialog .ui-dialog-buttonpane button.btn-light, .dual-listbox .dual-listbox__button {
    color: #101924;
    background-color: #e5e9f2;
    border-color: #e5e9f2;
}

.ui-dialog .ui-dialog-buttonpane button.btn-light:hover, .dual-listbox .dual-listbox__button:hover {
    color: #101924;
    background-color: #ccd3e5;
    border-color: #c3cce1;
}

.ui-dialog .ui-dialog-buttonpane button.btn-lighter {
    color: #101924;
    background-color: #f5f6fa;
    border-color: #f5f6fa;
}

.ui-dialog .ui-dialog-buttonpane button.btn-lighter:hover {
    color: #101924;
    background-color: #dcdfed;
    border-color: #d3d7e9;
}


.ui-dialog button.ui-button.ui-dialog-titlebar-close {
    background-color: white;
    border: none;
    margin-right: 0.5rem;
}

.ui-dialog .ui-dialog-titlebar-close .ui-button-icon {
    color: var(--dark);
    background-image: url("images/ui-icons_444444_256x240.png");

}

/* icon select not green*/
.ui-selectmenu-button.ui-button {
    background-color: white;
    color: #3c4d62;
    height: calc(2.125rem + 2px);
    padding: 0.4375rem 1rem;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.25rem;
    background-clip: padding-box;
    border: 1px solid #dbdfea;
    border-radius: 4px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
/* text v popover a v editoru summernote*/
.note-editable ul, .popover ul {
    list-style: circle;
    padding-left: 1.5rem;
}
.note-editable ol, .popover ol {
    list-style: decimal;
    padding-left: 1.5rem;
}
.popover p {
    margin-bottom: .2rem;
}

.input-group .ct-input-wrapper input.ct-input-box {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* disabled comboTree*/
div.form-control[disabled] {
    background-color: var(--so-disabled-element);
    color: var(--so-disabled-element-color);
    opacity: 1;
}

.form-control:disabled, .dual-listbox .dual-listbox__search:disabled, .form-control[readonly], .dual-listbox .dual-listbox__search[readonly] {
    background-color: var(--so-disabled-element);
    color: var(--so-disabled-element-color);


}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
    background-color: var(--so-disabled-element);
    color: var(--so-disabled-element-color);
}

textarea.form-control {
    min-height: calc(6.55rem + 2px);
    height: calc(6.55rem + 2px);
}

div.ct-input-box {
    max-height: 5rem;
    overflow-y: auto;
}

.no-close .ui-dialog-titlebar-close {
    display: none;
}

.btn-xsm, .btn-group-xsm > .btn, .dual-listbox .btn-group-xsm > .dual-listbox__button {
    padding: 0.15rem 0.50rem;
    font-size: 0.55rem;
    line-height: 1.00rem;
    border-radius: 3px;
}

.btn-xsm.btn-icon .icon {
    width: 1.20rem;
}

/*historie změn v tabulce*/
table.changesHistory {
    display: none;
    /*    font-size: 9pt;
        border-collapse: separate;
        border-spacing: 0;
        border-top: 1px solid gray;
        border-left: 1px solid gray;*/
    width: 100%;
}
table.changesHistory td {
    /*    border-right: 1px solid gray;
        border-bottom:  1px solid gray;
        font-size: 8pt;*/
    /*vertical-align: top;*/
}


table.changesHistory thead tr th {
    /*    border-bottom: 1px solid gray;
        border-right: 1px solid gray;*/
    /*font-size: 8pt;*/
}


table.changesHistory ins, ins {
    color: green;
    text-decoration: underline #99E094 dotted;
}
table.changesHistory del, del {
    color: #DD0000;
}
pre.changesHistory ins {
    color: green;
    text-decoration: underline #99E094 dotted;
}
pre.changesHistory del {
    color: #DD0000;
}

div.scrollEnlarge {
    overflow: auto;

}

.big, table.autoTable .big td {
    font-size: 120%;
}