/* layout */
div.main { min-height: calc(100vh - 200px); }
.cursor-pointer { cursor: pointer; }

/* menu */
.dropdown-menu li { position: relative; }
.dropdown-menu .dropdown-submenu { display: none; position: absolute; left: 100%; top: -7px; }
.dropdown-menu .dropdown-submenu-left { right: 100%; left: auto; }
.dropdown-menu > li:hover > .dropdown-submenu { display: block; }
.dropdown-button-bar { display: inline-block; }
.dropdown-button-bar button { margin-top: 3px; display: block; width: 100%; }
.dropdown-button-bar .dropdown-menu { width: max-content; box-shadow: none; background: none; }

@media (min-width: 992px) {
	.development-scroll { overflow: scroll hidden; }
}

@media (max-width: 991px) {
	.usermenu .dropdown-menu[data-mdb-popper] { top: auto; bottom: 100%; margin-top: 0; margin-bottom: 0.125rem; }
}

.usermenu { margin: 7px; }

input[type="checkbox"] ~ .description { display: none; }
input[type="checkbox"]:checked ~ .description { display: block; }

/* forms */
.form-label.required:after { content: " *"; color: red; }
.form-label { white-space: nowrap; margin-bottom:0.25rem; }
/*.form-control { overflow: hidden; white-space: nowrap; }*/
.form-control .select2-selection { width: 100%; display: inline-block; min-height: 20px; white-space: nowrap; }
.form-control .select2-selection.select2-selection--multiple { border: none; background: none; margin-top: -0.3em; }
.form-floating { overflow: hidden; }
.form-floating > textarea.form-control { overflow: auto; line-height: 1em; white-space: pre-wrap; height: auto; }
.validation-summary-errors { color: #dc3545; }
.validation-summary-errors .validation-warning { color: orange; }

.field-validation-error { color: #dc3545; display:block; }
.input-validation-error { border-color: red; }
.input-validation-error { background-color: #fae3e5 !important; border: 1px solid #dc3545; }
input[type=checkbox].input-validation-error { border-color: #467a26; }
input[type=checkbox].input-validation-error:checked { background-color: #467a26 !important; }
.input-validation-error:focus { box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.35); }
.validation-warning .input-validation-error { border: 1px solid orange; background-color: lightyellow !important; }
.validation-warning .field-validation-error { color: orange; }

.formular-ciselnik:has(.input-validation-error) span.select2-container { background-color: #fae3e5 !important; border: 1px solid #dc3545; }
input[value=""][readonly] { color: transparent; pointer-events: none; }
input[readonly] { -moz-appearance: textfield; }
.select2-container--disabled { background-color: #eeeeee; }
.select2-container .select2-dropdown { z-index: 2000; }
span.select2-container--default .select2-results > .select2-results__options { max-height: 370px; }

@media (min-height: 1000px) {
	span.select2-container--default .select2-results > .select2-results__options { max-height: 570px; }
}

@media (max-width: 991px) {
	span.select2-container--default .select2-results > .select2-results__options { max-height: 200px; }
}

.select2-container span.select2-selection__arrow { height: 26px; position: absolute; top: 18px; right: 1px; width: 20px; }
.select2-container span.select2-selection__arrow > b { border-color: #888 transparent transparent transparent; border-style: solid; border-width: 5px 4px 0 4px; height: 0; left: 50%; margin-left: -4px; margin-top: -2px; position: absolute; top: 50%; width: 0; }
div.form-control[readonly] { background-color: #eeeeee; }
div.form-control[disabled] { background-color: #eeeeee; }
div.form-floating[readonly] span.select2 { background-color: #eeeeee; }

/* grid */
.grid-actions { white-space: nowrap; }
.mvc-grid-table { font-size: .9em; }

/* subjekty */
.ref-selector[readonly] .ref-selector-clear, .ref-selector[disabled] .ref-selector-clear { display: none; }
.ref-selector[readonly] .ref-selector-selector, .ref-selector[disabled] .ref-selector-selector { pointer-events: none; color: #4f4f4f; }

/* zalozky */
.nav-tabs .nav-link { border-color: #f2f6f0; }
.alert ul { margin-bottom: 0; }

/*text-area s minimalni vyskou*/
.form-textarea-high { min-height: 100px !important; }

/*textarea - zobrazeni poznamky*/
.textarea-poznamka { min-height: 100px !important; white-space: pre-wrap; overflow-y: scroll; }

/* simulace textarea readonly, aby byl videt cely text podle delky */
.textarea-readonly { white-space: normal; height: auto !important; background-color: #eeeeee; line-height: normal !important; min-height: calc(3rem + 2px); white-space: pre-wrap; }

.pre-wrap { white-space: pre-wrap !important; }

td.td-pre-wrap { white-space: pre-wrap !important; }

.fileupload { }
.hidden { display: none; }
.format-label { display: inline-block; vertical-align: text-bottom; position: relative; top: 2px; width: 16px; height: 16px; text-indent: -900em; background: url(../img/sprite-resource-icons.png) no-repeat 0 0; }
.format-label[data-format=data], .format-label[data-format*=data] { width: 32px; height: 35px; background-position: 0 -62px; }
.format-label[data-format=xls], .format-label[data-format*=xls] { width: 32px; height: 35px; background-position: -160px -62px; }
.format-label[data-format=csv], .format-label[data-format*=csv] { width: 32px; height: 35px; background-position: -192px -62px; }
.format-label[data-format=json], .format-label[data-format*=json] { width: 32px; height: 35px; background-position: -288px -62px; }

:root, [data-bs-theme=light] {
	--bs-primary: #467a26;
	--bs-primary-rgb: 70, 122, 38;
	--bs-font-roboto: "Myriad Pro Regular", "Roboto", sans-serif;
	--bs-info-rgb: 123, 193, 67;
	--bs-link-color: #467a26;
	--bs-link-color-rgb: 70, 122, 38;
	--bs-link-decoration: none;
	--bs-link-hover-color: #336414;
	--bs-link-hover-color-rgb: 67, 116, 36;
	--bs-body-font-family: var(--bs-font-roboto);
	--bs-body-font-size: 1rem;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.5;
	--bs-body-color: #4f4f4f;
	--bs-body-color-rgb: 79, 79, 79;
	--bs-success-rgb: 70,122,38;
	--bs-emphasis-color: var(--bs-body-color);
}
.table {
	--bs-table-color: var(--bs-body-color);
	--bs-table-striped-color: var(--bs-body-color);
	--bs-table-active-color: var(--bs-body-color);
	--bs-table-hover-color: var(--bs-body-color);
  /* 
	--bs-table-striped-bg: rgba(0, 0, 0, 0.02);
	--bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
	--bs-table-hover-bg: rgba(0, 0, 0, 0.025);
  */ }

h2 { color: #467a26; }
@media (min-width: 1200px) {
	h3 { font-size: 1.5rem; }
}

.table-primary { --bs-table-bg: #dae4d4; --bs-table-border-color: #aeb6aa; --bs-table-striped-bg: #cfd9c9; --bs-table-active-bg: #c4cdbf; --bs-table-hover-bg: #cad3c4; }

.table-sm > :not(caption) > * > * { padding: 0.125rem 0.25rem; }

tr[contenteditable="true"] { border-color: rgba(var(--bs-warning-rgb)); outline: 0 solid transparent; }
tr[contenteditable="true"] > td { border-top-width: 1px; }

a { text-decoration: none; }
a:hover { text-decoration: underline; }
a.active:hover { text-decoration: none; }
a.btn:hover { text-decoration: none; }
form a.btn-link:hover { text-decoration: underline; }
form .btn-link { font-size: 0.9rem; }

.btn-primary { --bs-btn-color: #fff; --bs-btn-bg: #467a26; --bs-btn-border-color: #467a26; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #437424; --bs-btn-hover-border-color: #38621e; --bs-btn-focus-shadow-rgb: 98, 142, 71; --bs-btn-active-color: #fff; --bs-btn-active-bg: #3f6e22; --bs-btn-active-border-color: #355c1d; --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); --bs-btn-disabled-color: #fff; --bs-btn-disabled-bg: #467a26; --bs-btn-disabled-border-color: #467a26; }
.btn-outline-primary { --bs-btn-color: #467a26; --bs-btn-border-color: #467a26; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #467a26; --bs-btn-hover-border-color: #467a26; --bs-btn-focus-shadow-rgb: 110, 253, 13; --bs-btn-active-color: #fff; --bs-btn-active-bg: #467a26; --bs-btn-active-border-color: #467a26; --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); --bs-btn-disabled-color: #6efd0d; --bs-btn-disabled-bg: transparent; --bs-btn-disabled-border-color: #6efd0d; --bs-gradient: none; }
.btn-secondary { --bs-btn-color: #fff; --bs-btn-bg: #9fa6b2; --bs-btn-border-color: #9fa6b2; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #979ea9; --bs-btn-hover-border-color: #7f858e; --bs-btn-focus-shadow-rgb: 173, 179, 190; --bs-btn-active-color: #fff; --bs-btn-active-bg: #8f95a0; --bs-btn-active-border-color: #777d86; --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); --bs-btn-disabled-color: #fff; --bs-btn-disabled-bg: #9fa6b2; --bs-btn-disabled-border-color: #9fa6b2; }
.btn.btn-link { padding: 0; }

.nav.nav-sm { --bs-nav-link-padding-y: 0.2rem; }
.nav-tabs .nav-link.active { font-weight: 600; }

.stepper { border-left: 3px solid var(--bs-primary); padding-left: 1rem; position: relative; }
.stepper .step span { color: var(--bs-primary); display: none; padding-left:0.5rem; }
.stepper .step.completed span { color: var(--bs-primary); display: inline; }
.stepper .step { position: relative; padding: 0.25rem 0; }
.stepper .step::before { content: ''; position: absolute; left: -1.6rem; top: 1.1rem; width: 1rem; height: 1rem; border-radius: 50%; border: 2px solid var(--bs-primary); background-color: #fff; }
.stepper .step.completed::before { background-color: var(--bs-primary); border-color: var(--bs-primary); }

.card.chat { border-radius: 15px; }
.direct-chat-body { max-height: 350px; overflow-y: auto; }
.direct-chat-msg { font-size: 0.875rem; margin-bottom: 10px; display: block; }
.direct-chat-name { font-weight: 600; }
.direct-chat-infos { display: block; font-size: .875rem; }
.direct-chat-img { font-size: 32px; line-height:1; color: #ccc; border-radius: 50%; float: left; width: 40px; }
.right .direct-chat-img { float: right; }
.direct-chat-edit { float: right; cursor: pointer; opacity: .6; }
.direct-chat-edit:hover { opacity:.9; }
.direct-chat-text { display: block; border-radius: .3rem; background: #d2d6de; border: 1px solid #d2d6de; color: #444; margin-left: 50px; margin-right: 0; padding: 5px 10px; position: relative; }
.direct-chat-text.bg-primary { color: white; }
.right .direct-chat-text { margin-left: 0; margin-right: 50px; }
.direct-chat-text::before { border: 6px solid transparent; border-right-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)); content: ' '; height: 0; pointer-events: none; margin-top: -6px; position: absolute; right: 100%; top: 15px; width: 0; }
.right .direct-chat-text::before { border-left-color: #d2d6de; border-right-color: transparent; left: 100%; right: auto; }

.form-check-input { opacity: 1; margin-right: 8px; }
.form-check-input:disabled ~ .form-check-label { opacity: 0.75 }
.form-check-input:checked { background-color: #467a26; border-color: #467a26; }
.form-check-input:disabled { opacity: 0.75; }
.form-check-input:checked:disabled { opacity: 0.5; background-color: #404040; border-color: #404040; }

.table > :not(caption) > * > * { padding: 0.125rem 0.25rem; }