a {
	cursor: pointer !important
}

a.disabled {
	opacity: 0.5
}

.admin-header .icon-btn {
	width: 55px;
	height: 45px
}

.admin-header .navbar-nav .dropdown-menu {
    position: absolute
}

.bi.bi-list {
	display: flex;
    align-items: center;
    justify-content: center;
	font-size: 1.2rem !important
}

.table-drop-btn.show {
    color: var(--bs-btn-active-color) !important;
    background-color: var(--bs-btn-active-bg) !important;
    border-color: var(--bs-btn-active-border-color) !important
}

.list-group-item .icon {
	display: none
}

.list-group-item .dropdown {
	margin-left: auto
}

.list-group-item .dropdown button {
	background-color: var(--bs-list-group-bg)
}

.col {
    min-width: 0 !important
}

.badge {
    --bs-badge-padding-x: .65em;
    --bs-badge-padding-y: .35em;
    --bs-badge-font-size: .75em;
    --bs-badge-font-weight: 700;
    --bs-badge-color: #fff;
    --bs-badge-border-radius: var(--bs-border-radius);
    display: inline-block;
    padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
    font-size: var(--bs-badge-font-size);
    font-weight: 500;
    line-height: 1;
    color: var(--bs-badge-color);
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    letter-spacing: .025em;
	text-transform: lowercase;
    border-radius: var(--bs-badge-border-radius)
}

.stock-badge {
    font-size: .75rem;
    font-weight: 600;
    padding: .25rem .75rem;
    border-radius: 50px;
    text-transform: uppercase
}

.in-stock {
    background-color: var(--bs-primary-bg-subtle);
    color: var(--bs-primary-text-emphasis);
    border: 1px solid var(--bs-primary-border-subtle)
}

.form-fields {
	margin-right: 0.1rem !important;
	margin-left: 0.1rem !important
}

.no-transition {
	transition: none !important
}

.no-transform {
    transform: none !important
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible,
span:focus-visible,
button:focus-visible,
.select2:focus-visible {
	outline: none !important
}

input:disabled, input[readonly],
textarea:disabled, textarea[readonly],
select:disabled, select[readonly],
.select2-container--disabled {
	box-shadow: none !important;
	transition: none !important;
	border-color: var(--bs-border-color) !important;
	background-color: var(--bs-secondary-bg) !important;
	cursor: default !important
}

.card-header input[type="search"]::-webkit-search-cancel-button {
	margin-right: 35px
}

#data-table thead th {
    position: sticky;
    top: 0;
    z-index: 1020
}

.treeview li {
	transform: none !important
}

.treeview .node-disabled {
	color: var(--bs-body-color) !important;
	cursor: pointer !important
}

.indent {
	padding: 5px
}

#settings-switcher {
	display: none
}

#settings-switcher + div {
	position: absolute;
	top: 50px;
	right: 0;
	flex-wrap: wrap;
	gap: 12px;
    padding: 12px;
	z-index: 2000;
	display: none;
	width: 800px;
	flex-direction: row
}

#settings-switcher:checked + div {
	display: flex
}

.toggle-vis {
	display: flex;
	text-decoration: none !important;
	border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
	width: max-content
}

.toggle-vis .form-check-input {
	pointer-events: none;
	margin-right: 6px;
	display: none
}

.toggle-vis .form-check-input:checked {
	border: var(--bs-border-width) solid var(--bs-border-color)
}

#main-form {
	position: relative;
	overflow: hidden
}

.duplicate-block-remove {
	display: flex;
    justify-content: end;
    color: red
}

.duplicate-btn, .modal-show {
	border: none !important;
	box-shadow: none !important
}

.btn-close:focus {
	box-shadow: none !important;
	opacity: var(--bs-btn-close-opacity) !important
}

.btn-close:focus:hover {
	opacity: var(--bs-btn-close-focus-opacity) !important
}

.is-invalid {
	background-image: none !important
}

.is-invalid-select2 {
    border-color: var(--bs-form-invalid-border-color) !important
}

.modal-footer {
	border-top: none !important
}

.file-upload-zone {
	min-height: 118px;
	max-height: 118px
}

.upload-file-remove {
	text-decoration: none
}

.form-group:not(:has(> *:not(.d-none))) {
    margin-bottom: 0 !important;
}

.select2-selection__arrow {
	display: none !important
}

.select2-selection__rendered {
	min-height: 1.6em !important;
	padding: 0 !important
}

.select2 {
	flex: 1 0 0;
	padding: 0 !important
}

.select2-selection {
	padding: .75rem 1rem !important;
	border: 0 !important
}

.select2-selection.select2-selection--multiple::before {
	display: none
}

.select2-search__field {
	background-color: var(--bs-body-bg)
}

.select2-selection.select2-selection--multiple {
	display: flex;
	cursor: pointer
}

.select2-selection.select2-selection--multiple ul {
	margin-bottom: 0.45rem !important
}

.select2.select2-container--focus {
    border-color: #b1b3f8;
    outline: 0;
    box-shadow: 0 0 0 .25rem #6366f140
}

.select2 .selection {
    display: block
}

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

.mb-4-last {
	margin-bottom: 1rem !important
}

[data-bs-theme=dark] .select2-container--default .select2-selection--multiple .select2-selection__choice {
	background-color: #1e293bb3;
	border: 1px solid #444 !important
}

[data-bs-theme=dark] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	border-right: 1px solid #444 !important
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
	background-color: #5897fb
}

/* FIR-48 #58 — floating popup для async-Select2 (фильтр «Контрагент» на
   /operator/debts/ и т.д.): выпадашка не сдвигает контент карточек ниже.
   FIR-48 #58 round 2 — Select2 кладёт dropdownCssClass прямо на сам
   .select2-dropdown (это ОДИН элемент с двумя классами, не вложение),
   поэтому селекторы пишутся как .select2-dropdown.select2-coex-popup.
   min-width: 280px — чтобы «Введите от 3 символов для поиска» не резалось
   на узких фильтрах (~147px на /admin/debts/ и /admin/operations/). */
.select2-container.select2-container--open.select2-coex-popup { z-index: 1060; }
.select2-dropdown.select2-coex-popup {
	background: #fff;
	border: 1px solid #e5e5e5 !important;
	border-radius: 8px !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .12) !important;
	overflow: hidden;
	min-width: 280px;
}
.select2-dropdown.select2-coex-popup .select2-search--dropdown .select2-search__field { border-radius: 6px; }
.select2-dropdown.select2-coex-popup .select2-results__message {
	color: #6b6b6b;
	font-size: 13px;
	padding: 10px 12px;
}