:root {
	/* BasketZilla palette */
	--bz-green-bg:   #D2EDE4;
	--bz-green-dark: #1F4D43;
	--bz-orange-bg:  #FFE3C7;
	--bz-orange:     #F5A623;

	--bz-card-bg: #E6F2EF;

	--bz-orange-hover: #e69512;
	--bz-orange-active: #cc820f;

	--bs-body-bg: #E6F2EF;

	--bs-primary: var(--bz-orange);
	--bs-primary-rgb: 245,166,35;

	--bs-link-color: var(--bz-orange);
	--bs-link-color-rgb: var(--bs-primary-rgb);
	--bs-link-hover-color: var(--bz-orange-hover);
	--bs-focus-ring-color: rgba(var(--bs-primary-rgb),.35);
	--bs-link-hover-color-rgb: var(--bz-orange-hover);
}

/* ---------- Buttons ---------- */
.btn-primary {
	color: white;
	--bs-btn-color: #1f2a24;
	--bs-btn-bg: var(--bz-orange);
	--bs-btn-border-color: var(--bz-orange);

	--bs-btn-hover-bg: var(--bz-orange-hover);
	--bs-btn-hover-border-color: var(--bz-orange-hover);

	--bs-btn-active-bg: var(--bz-orange-active);
	--bs-btn-active-border-color: var(--bz-orange-active);

	--bs-btn-focus-shadow-rgb: 245,166,35;
}

.btn-primary:disabled,
.btn-primary.disabled,
.btn-primary[aria-disabled="true"] {
	background-color: var(--bz-orange);
	border-color: var(--bz-orange);
	opacity: .75;
}

.btn-outline-primary {
	--bs-btn-color: var(--bz-orange);
	--bs-btn-border-color: var(--bz-orange);

	--bs-btn-hover-bg: var(--bz-orange);
	--bs-btn-hover-border-color: var(--bz-orange);
	--bs-btn-hover-color: #1f2a24;

	--bs-btn-active-bg: var(--bz-orange-active);
	--bs-btn-active-border-color: var(--bz-orange-active);

	--bs-btn-focus-shadow-rgb: 245,166,35;
}

/* ---------- Inputs / Selects / Textareas ---------- */
.form-control, .form-check-input, .form-select,
.form-floating>.form-control-plaintext~label::after,
.form-floating>.form-control~label::after,
.form-floating>.form-control:not(:placeholder-shown)~label::after,
.form-floating>.form-select~label::after,
.form-control:focus, .form-check-input:focus, .form-select:focus,
.form-floating>.form-control-plaintext~label::after,
.form-floating>.form-control:focus~label::after,
.form-floating>.form-control:not(:placeholder-shown):focus~label::after,
.form-floating>.form-select:focus~label::after,
.form-control:disabled, .form-check-input:disabled, .form-select:disabled,
.disabled .ts-control {
	background-color: white;
	opacity: 1;
}

.form-floating > label,
.form-floating > .form-select~label::after {
	background-color: transparent !important;
}

input[disabled]::-webkit-datetime-edit-year-field,
input[disabled]::-webkit-datetime-edit-month-field,
input[disabled]::-webkit-datetime-edit-day-field,
input[disabled]::-webkit-datetime-edit-hour-field,
input[disabled]::-webkit-datetime-edit-minute-field,
input[disabled]::-webkit-datetime-edit-second-field,
input[disabled]::-webkit-datetime-edit-millisecond-field,
input[disabled]::-webkit-datetime-edit-meridiem-field,
input[disabled]::-webkit-datetime-edit-text {
	color: var(--bs-body-color-rgb);
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
	border-color: var(--bz-orange) !important;
	box-shadow: 0 0 0 .25rem rgba(245,166,35,.25);
}

/* checkbox/radio */
.form-check-input:checked {
	background-color: var(--bz-orange) !important;
	border-color: var(--bz-orange);
}

/* switches */
.form-switch .form-check-input:focus {
	border-color: var(--bz-orange);
	box-shadow: 0 0 0 .25rem rgba(245,166,35,.25);
}
.form-switch .form-check-input:checked {
	background-color: var(--bz-orange);
	border-color: var(--bz-orange);
}

/* ---------- Nav / active menu item ---------- */
/* nav-pills active */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
	background-color: var(--bz-orange);
	color: #1f2a24;
}

/* navbar links active (pokud používáš .navbar-nav) */
.navbar .nav-link.active {
	color: var(--bz-orange) !important;
}

/* ---------- Pagination ---------- */
.pagination {
	--bs-pagination-active-bg: var(--bz-orange);
	--bs-pagination-active-border-color: var(--bz-orange);
	--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(245,166,35,.25);
}
.page-link {
	color: var(--bz-orange);
}
.page-link:hover {
	color: var(--bz-orange-hover);
}

/* ---------- List group active ---------- */
.list-group {
	--bs-list-group-active-bg: var(--bz-orange);
	--bs-list-group-active-border-color: var(--bz-orange);
	--bs-list-group-active-color: #1f2a24;
}

/* ---------- Dropdown active ---------- */
.dropdown-item.active,
.dropdown-item:active {
	background-color: var(--bz-orange);
	color: #1f2a24;
}

/* ---------- Cards a jemné plochy (sedí k zelenému bg) ---------- */
.card {
	border-color: rgba(31,77,67,.15);
}
.table {
	--bs-table-hover-bg: rgba(31,77,67,.06);
}

.light-green-bg {
	background-color: var(--bz-green-bg);
}

.dark-green-bg {
	background-color: var(--bz-green-dark);
}

.light-orange-bg {
	background-color: var(--bz-orange-bg);
}

.dark-orange-bg {
	background-color: var(--bz-orange);
}

body {
	min-height: 100vh;
	background: linear-gradient(135deg, #C3E4D8 0%, var(--bz-green-bg) 50%, #F5FBF9 100%);
}

/** HTMX to swap between text and loader in submit button  **/
.loading {
	display: none;
	vertical-align: middle;
}
.htmx-request .loading {
	display: inline-block;
}
.htmx-request .idle {
	display: none;
}
/** HTMX to swap between text and loader in submit button  **/

.basketzilla-img {
	max-width: 520px;
}

.width-content {
	max-width: fit-content;
}

.toast-placement {
	position: fixed !important;
	top: 24px!important;
	right: 24px!important;
}

/* Table header */
.basketzilla-table thead {
	border-bottom: 2px solid var(--bs-table-border-color);
}

.basketzilla-table thead > tr > th {
	padding-bottom: 2px;
	text-transform: uppercase;
	font-size: 12px;
}

.basketzilla-table tbody > tr {
	cursor: pointer;
}

/* fix for tom select */
.ts-control {
  height: 3.5rem !important;
  padding: 1.625rem 0.75rem 0.375rem !important;
}
