.cleaner{
	clear: both;
	visibility: hidden;
}
.swal2-container{
	z-index: 10000;
}
.bg-success-light{
	background-color: #dff0d8 !important;
}

.bg-danger-light{
	background-color: #f2dede !important;
}

.clickable{
	cursor: pointer !important;
}

.icheckbox_square-green, .iradio_square-green{
	margin-right: 6px;
}
.fc-event{
	border-width: 2px !important;
}

.img-xxs{
	width: 16px;
	height: 16px;
}
.img-xs{
	width: 32px;
	height: 32px;
}
.img-sm{
	width: 48px !important;
	height: 48px !important;
}
.img-md{
	width: 160px !important;;
	height: 160px !important;
}
.img-menu-avatar{
	width: 60px;
	height: 60px;
}
.img-micro-rounded{
	border-radius: 2px;
}

.messagesToAvatar{
	width: 30px;
	height: 30px;
	margin-right: 10px;
}

.noread-messages-datagrid img.img-rounded{
	width: 18px;
	height: 18px;
}

.form-group-hr-line-dashed{
	border-top: 1px dashed #e7eaec;
	padding: 20px 0;
}
.select2-dropdown-zindex-fix{
	z-index: 20000;
}

.select2-selection--multiple > .select2-selection__rendered {
	min-height: calc(1.5em + .75rem - 2px);
	line-height: 28px!important;
}

.select2-selection--single > .select2-selection__rendered {
	min-height: calc(1.5em + .75rem - 2px);
	line-height: 32px!important;
}
select[multiple] > .select2-container {
	min-height: calc(1.5em + .75rem - 2px);
	line-height: 20px
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 32px;
}

.select2-selection__choice {
	height: 28px;
	border-radius: 0 !important;
	background-color: #1ab394 !important;
	border: #1ab394 !important;
	color: white !important;
}

.select2-selection__choice__remove {
	color: white !important;
}

.select2-selection.select2-selection--single {
	min-height: calc(1.5em + .75rem - -4px);
	line-height: 28px;
	border: solid #e5e6e7 1px;
	border-radius: 1px;
}

.select2-container{
	width: 100% !important;
}

.select2-container--default .select2-container--focus .select2-selection--multiple {
	border: solid #1ab394 1px;
	border-radius: 1px;
	width: 100% !important;
}

.select2-container--default .select2-selection--multiple {
	border: solid #e5e6e7 1px;
	border-radius: 1px;
}

.subtask-panel-heading{
	padding: 7px;
}
.subtask-panel-heading h5{
	margin-top: 0px;
	font-size: 0.9eM;
}
.notice-icon{
	width: 32px;
	display: inline-block;
	float:left;
}
.dropdown-alerts{
	padding: 0px !important;
}
.bg-warning-light{
	background: rgba(255, 239, 133, 0.69);
}
.text-bold{
	font-weight: bold;
}

.btn-new-task{
	color: #a7b1c2;
	font-weight: 600;
	position: relative;
	display: block;
	background-color: #283C4C;
	border: 1px solid #3a526b;
	border-radius: 3px;
	width: 100%;
	padding: 2px 7px !important;
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.5;
	margin-bottom: 0;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.btn-new-task:hover{
	background: #0a6aa1;
}

.file .file-name{
	overflow: hidden;
}

/* Order colors */

.label-md{
	font-size: 13px;
	padding: 5px;
}

.label-order-state-CREATED {
	background-color: #717171;
	color: whitesmoke;
}
.label-order-state-WAITING {
	background-color: #f4bb51;
	color: black;
}
.label-order-state-SENT_TO_DISTRIBUTOR {
	background-color: #1c84c6;
	color: whitesmoke;
}
.label-order-state-WAITING_FOR_DELIVERY_LIST {
	background-color: blue;
	color: whitesmoke;
}
.label-order-state-TO_DELIVERY {
	background-color: teal;
	color: whitesmoke;
}
.label-order-state-DISPATCHED {
	background-color: chocolate;
	color: whitesmoke;;
}
.label-order-state-COMPLETE {
	background-color: #00A700;
	color: whitesmoke;
}
.label-order-state-ERROR {
	background-color: #CD1818;
	color: whitesmoke;
}
.label-order-state-WAITING_FOR_DISTRIBUTOR_AVAILABILITY {
	background-color: #F4C20B;
	color: black;
}

/* Education colors */
.education-label-planned {
	background-color: blue;
	color: whitesmoke;
}
.education-label-billable {
	background-color: darkorange;
	color: whitesmoke;
}
.education-label-cancelled {
	background-color: #888888;
	color: whitesmoke;
}
.education-label-completed {
	background-color: #00A700;
	color: whitesmoke;
}

/* Education person colors */
.education-person-label-waiting {
	background-color: blue;
	color: whitesmoke;
}
.education-person-label-notEducated {
	background-color: darkorange;
	color: whitesmoke;
}
.education-person-label-educated {
	background-color: #00A700;
	color: whitesmoke;
}

/* Typeahead */

.tt-dropdown-menu {
	width: 252px;
	margin-top: 12px;
	padding: 8px 0;
	background-color: #fff;
	border: 1px solid #ccc;
	border: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2);
	-moz-box-shadow: 0 5px 10px rgba(0,0,0,.2);
	box-shadow: 0 5px 10px rgba(0,0,0,.2);
}
.typeahead {
	background-color: #fff;
}
.typeahead:focus {
	border: 2px solid #0097cf;
}
.tt-query {
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.tt-hint {
	color: #999
}
.tt-suggestion {
	padding: 3px 20px;
	font-size: 100%;
	line-height: 24px;
	background-color: #fff;
	border: 1px solid #ddd;
}
.tt-suggestion.tt-cursor {
	color: #fff;
	background-color: #0097cf;
}
.tt-suggestion p {
	margin: 0;
}
.label-task-priority-NONE{
	background-color: #cacaca;
	color: black;
}
.label-task-priority-MEDIUM{
	background-color: #ffb733;
	color: black;
}
.label-task-priority-HIGH{
	background-color: #FF8000;
	color: whitesmoke;
}
.label-task-priority-CRITICAL{
	background-color: #ff2222;
	color: #fbfbfb;
}
tr.pointer {
	cursor: pointer;
}
tr.hover.pointer:hover {
	background-color: rgb(20 156 128 / 20%);
}

.datagrid .datagrid-settings .dropdown-menu--grid {
	font-size: 12px;
	max-height: 500px;
	overflow-y: auto;
}

.questionnaires .company-logo {
	max-width: 278px;
	height: auto;
}

.questionnaires h1 {
	font-size: 2.2rem;
	color: #24408F;
	font-weight: 600;
	text-transform: uppercase;
	border-bottom: 2px solid #dee2e6;
	padding-bottom: 0.5rem;
	margin-top: 1rem;
	display: inline-block;
	padding: 0 2rem 0.5rem;
}

.questionnaires input,
.questionnaires textarea {
	border-radius: 4px;
	border: 1px solid #24408F;
	padding: 0.5rem 0.75rem;
	font-size: 1rem;
}

.questionnaires input:focus,
.questionnaires textarea:focus,
.questionnaires input:active,
.questionnaires textarea:active {
	border-color: #1a356d;
	outline: none;
	box-shadow: 0 0 0 0.2rem rgba(36, 64, 143, 0.25);
}

.questionnaires label {
	color: #24408F;
	font-weight: 600;
}

.questionnaires a {
	text-decoration: underline;
}

.questionnaires .btn-primary {
	background-color: #24408F;
	border-color: #24408F;
}

.questionnaires .btn-primary:hover,
.questionnaires .btn-primary:active,
.questionnaires .btn-primary.active {
	background-color: #1a356d !important;
	border-color: #1a356d !important;
}

.questionnaires .btn-primary:focus {
	box-shadow: 0 0 0 0.2rem rgba(36, 64, 143, 0.25) !important;
	background-color: #1a356d !important;
	border-color: #1a356d !important;
}

.language-flag-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 40px;
	transition: all 0.2s ease;
	margin: 0.25rem;
	background-color: #f8f9fa;
	border: 1px solid #dee2e6;
	border-radius: 0.25rem;
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
}

.language-flag-btn:hover {
	transform: translateY(-1px);
}

.no-pointer-column {
	cursor: default !important;
	pointer-events: none !important;
}

.datagrid-toolbar {
	position: sticky;
	left: 0;
	right: 0;
	z-index: 10;
}

.datagrid-recruitmentDataGrid .input-group.input-group-sm {
	width: 110px !important;
}

#sentry-feedback {
    --inset: auto auto 0 0;
}


/* Reports ubytování – zvýraznění sloupců "Příspěvek na ubytování AP" a "Fakturace na klienta"
   barvy odpovídají rámečkům na /headquarters/edit (Příspěvek AP, Přefakturace nákladů na ubytování).
   Použito box-shadow inset, aby borders fungovaly i s border-collapse: collapse (jinak by se
   barvy mezi dvěma sousedními sloupci slily do jedné). */
th.col-accommodationDonation,
td.col-accommodationDonation {
    box-shadow: inset 2px 0 0 #1ab394, inset -2px 0 0 #1ab394;
    position: relative;
    z-index: 1;
}
thead tr.row-group-actions + tr th.col-accommodationDonation,
thead tr:not(.row-group-actions):first-child th.col-accommodationDonation {
    box-shadow: inset 2px 0 0 #1ab394, inset -2px 0 0 #1ab394, inset 0 2px 0 #1ab394;
}
tr.datagrid-row-columns-summary td.col-accommodationDonation {
    box-shadow: inset 2px 0 0 #1ab394, inset -2px 0 0 #1ab394, inset 0 -2px 0 #1ab394;
}

th.col-billingForClient,
td.col-billingForClient {
    box-shadow: inset 2px 0 0 #5b69bc, inset -2px 0 0 #5b69bc;
    position: relative;
    z-index: 1;
}
thead tr.row-group-actions + tr th.col-billingForClient,
thead tr:not(.row-group-actions):first-child th.col-billingForClient {
    box-shadow: inset 2px 0 0 #5b69bc, inset -2px 0 0 #5b69bc, inset 0 2px 0 #5b69bc;
}
tr.datagrid-row-columns-summary td.col-billingForClient {
    box-shadow: inset 2px 0 0 #5b69bc, inset -2px 0 0 #5b69bc, inset 0 -2px 0 #5b69bc;
}

/* Povinná NEVYPLNĚNÁ pole – červený rámeček (po vyplnění zmizí). Centrálně přes :required:invalid. */
input:required:invalid,
select:required:invalid,
textarea:required:invalid,
.form-control:required:invalid {
    border-color: #d9534f !important;
}
/* select2: skutečný <select required> je skrytý → obarvit viditelný widget, dokud není vybráno */
select:required:invalid + .select2-container .select2-selection {
    border-color: #d9534f !important;
}
