/**
 * Pasek wyszukiwania: pole terminu z kalendarzem dwumiesiecznym
 * oraz pole gosci z licznikami doroslych i dzieci.
 */

/* --- Wspolny wyglad pol z rozwijanym panelem --- */

.pase-field-dates,
.pase-field-guests {
	position: relative;
}

.pase-pop-trigger {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-height: 52px;
	padding: 0 14px;
	background: #fff;
	border: 1px solid #dfe4e9;
	border-radius: 10px;
	color: #8a949d;
	font-size: 14px;
	font-weight: 500;
	text-align: left;
	cursor: pointer;
	transition: border-color .15s ease, box-shadow .15s ease, color .15s ease;
}

.pase-pop-trigger:hover {
	border-color: #c2ccd5;
}

.pase-pop-trigger[aria-expanded="true"] {
	border-color: #d49f58;
	box-shadow: 0 0 0 3px rgba(212, 159, 88, .18);
}

.pase-pop-trigger.is-set {
	color: #1b2a3a;
	font-weight: 600;
}

.pase-pop-trigger svg {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	color: #d49f58;
}

.pase-pop-trigger__text {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pase-pop-trigger__caret {
	width: 15px !important;
	height: 15px !important;
	flex: 0 0 15px !important;
	color: #9aa4ad !important;
	transition: transform .18s ease;
}

.pase-pop-trigger[aria-expanded="true"] .pase-pop-trigger__caret {
	transform: rotate(180deg);
}

/* --- Panel --- */

.pase-pop {
	position: absolute;
	z-index: 60;
	top: calc(100% + 8px);
	left: 0;
	background: #fff;
	border: 1px solid #e6eaee;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(18, 38, 63, .18);
	padding: 14px;
	animation: pase-pop-in .16s ease;
}

@keyframes pase-pop-in {
	from { opacity: 0; transform: translateY(-6px); }
	to   { opacity: 1; transform: translateY(0); }
}

.pase-pop--dates {
	width: max-content;
	max-width: min(96vw, 660px);
}

.pase-pop--guests {
	width: 320px;
	max-width: 92vw;
	padding: 6px 14px 14px;
}

.pase-pop__legend {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 10px 4px 0;
	font-size: 12px;
	color: #8a949d;
	border-top: 1px solid #f0f2f4;
	margin-top: 10px;
}

.pase-legend {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.pase-legend::before {
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 4px;
}

.pase-legend--free::before {
	background: #fff;
	border: 1px solid #cfd6dd;
}

.pase-legend--busy::before {
	background: repeating-linear-gradient(-45deg, #eef1f4 0 3px, #dfe4e9 3px 6px);
	border: 1px solid #dfe4e9;
}

.pase-pop__hint {
	margin-left: auto;
	color: #a9631a;
	font-weight: 600;
}

.pase-pop__foot {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-top: 12px;
	margin-top: 10px;
	border-top: 1px solid #f0f2f4;
}

.pase-pop__foot--guests {
	align-items: flex-start;
}

.pase-pop__foot--guests .pase-pop__hint {
	margin-left: 0;
	flex: 1;
	color: #8a949d;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.4;
}

.pase-pop__buttons {
	margin-left: auto;
	display: flex;
	gap: 8px;
}

.pase-pop__btn {
	border: 1px solid #dfe4e9;
	background: #fff;
	border-radius: 8px;
	padding: 8px 16px;
	font-size: 13px;
	font-weight: 600;
	color: #62727f;
	cursor: pointer;
	transition: background .15s, border-color .15s, color .15s;
}

.pase-pop__btn:hover {
	border-color: #c2ccd5;
	color: #1b2a3a;
}

.pase-pop__btn--primary {
	background: #d49f58;
	border-color: #d49f58;
	color: #fff;
}

.pase-pop__btn--primary:hover {
	background: #c08f4b;
	border-color: #c08f4b;
	color: #fff;
}

/* --- Kalendarz --- */

.pase-pop__cal .flatpickr-calendar.inline {
	box-shadow: none;
	border: 0;
	margin: 0;
	width: auto;
	background: transparent;
}

.pase-pop__cal .flatpickr-months {
	padding: 0 0 6px;
}

.pase-pop__cal .flatpickr-month {
	color: #1b2a3a;
	height: 38px;
}

.pase-pop__cal .flatpickr-current-month {
	font-size: 15px;
	font-weight: 700;
	padding-top: 6px;
}

.pase-pop__cal .flatpickr-prev-month,
.pase-pop__cal .flatpickr-next-month {
	fill: #62727f;
	padding: 8px 10px;
}

.pase-pop__cal .flatpickr-prev-month:hover svg,
.pase-pop__cal .flatpickr-next-month:hover svg {
	fill: #d49f58;
}

.pase-pop__cal span.flatpickr-weekday {
	color: #9aa4ad;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.pase-pop__cal .flatpickr-day {
	border-radius: 8px;
	color: #1b2a3a;
	font-size: 13px;
	font-weight: 500;
	border: 0;
	height: 38px;
	line-height: 38px;
	max-width: 40px;
	transition: background .12s, color .12s;
}

.pase-pop__cal .flatpickr-day:hover {
	background: #f4f6f8;
}

.pase-pop__cal .flatpickr-day.today {
	box-shadow: inset 0 0 0 1px #d49f58;
}

.pase-pop__cal .flatpickr-day.selected,
.pase-pop__cal .flatpickr-day.startRange,
.pase-pop__cal .flatpickr-day.endRange {
	background: #1b2a3a;
	border-color: #1b2a3a;
	color: #fff;
	font-weight: 700;
}

.pase-pop__cal .flatpickr-day.inRange {
	background: #eef2f6;
	color: #1b2a3a;
	box-shadow: none;
	border-radius: 0;
}

.pase-pop__cal .flatpickr-day.startRange {
	border-radius: 8px 0 0 8px;
}

.pase-pop__cal .flatpickr-day.endRange {
	border-radius: 0 8px 8px 0;
}

.pase-pop__cal .flatpickr-day.startRange.endRange {
	border-radius: 8px;
}

/* Dni bez wolnych apartamentow: przekreslone i wyszarzone. */
.pase-pop__cal .flatpickr-day.flatpickr-disabled,
.pase-pop__cal .flatpickr-day.pase-day-out {
	color: #c3cad1;
	background: transparent;
	cursor: not-allowed;
	position: relative;
	text-decoration: none;
}

.pase-pop__cal .flatpickr-day.pase-day-out::after {
	content: "";
	position: absolute;
	left: 22%;
	right: 22%;
	top: 50%;
	height: 1px;
	background: #c3cad1;
	transform: rotate(-14deg);
}

.pase-pop__cal .flatpickr-day.prevMonthDay,
.pase-pop__cal .flatpickr-day.nextMonthDay {
	color: #dfe4e9;
}

/* Ostatnie sztuki - delikatny sygnal, ze warto sie pospieszyc. */
.pase-pop__cal .flatpickr-day.pase-day-few:not(.selected):not(.inRange)::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 5px;
	width: 4px;
	height: 4px;
	margin-left: -2px;
	border-radius: 50%;
	background: #d49f58;
}

.pase-pop__cal .flatpickr-day {
	position: relative;
}

.pase-pop__cal .flatpickr-months .flatpickr-month + .flatpickr-month {
	border-left: 1px solid #f0f2f4;
}

/* --- Liczniki gosci --- */

.pase-step {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 4px;
	border-bottom: 1px solid #f0f2f4;
}

.pase-step:last-of-type {
	border-bottom: 0;
}

.pase-step__text {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.pase-step__text strong {
	font-size: 14px;
	color: #1b2a3a;
	font-weight: 600;
}

.pase-step__text small {
	font-size: 12px;
	color: #9aa4ad;
}

.pase-step__ctrl {
	display: flex;
	align-items: center;
	gap: 6px;
}

.pase-step__btn {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid #dfe4e9;
	background: #fff;
	color: #1b2a3a;
	font-size: 17px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color .15s, color .15s, background .15s;
}

.pase-step__btn:hover:not(:disabled) {
	border-color: #d49f58;
	color: #d49f58;
}

.pase-step__btn:disabled {
	opacity: .38;
	cursor: not-allowed;
}

.pase-step__value {
	min-width: 28px;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	color: #1b2a3a;
}

@media (max-width: 720px) {
	.pase-pop {
		left: 0;
		right: 0;
		width: auto !important;
		max-width: none;
	}
	.pase-pop--dates {
		max-width: none;
	}
	.pase-pop__foot {
		flex-wrap: wrap;
	}
	.pase-pop__buttons {
		width: 100%;
		margin-left: 0;
	}
	.pase-pop__btn {
		flex: 1;
	}
}

/* --- Wyrownanie starych pol paska do nowej wysokosci --- */

.pase-grid-filter-row {
	align-items: flex-end;
}

.pase-grid-filter-field label {
	margin-bottom: 6px;
}

.pase-grid-dd-trigger {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: 0 34px 0 14px;
	border-radius: 10px;
	border-color: #dfe4e9;
	font-size: 14px;
	font-weight: 500;
	color: #1b2a3a;
}

.pase-grid-dd-open .pase-grid-dd-trigger {
	border-color: #d49f58;
	box-shadow: 0 0 0 3px rgba(212, 159, 88, .18);
}

.pase-grid-filter-submit {
	min-height: 52px;
	padding: 0 28px;
	border-radius: 10px;
	font-weight: 700;
}

.pase-grid-filter-actions {
	margin-left: 0;
}

/* Pole terminu potrzebuje wiecej miejsca niz pozostale. */
.pase-field-dates {
	flex: 1.35;
	min-width: 240px;
}

.pase-field-guests {
	flex: .9;
	min-width: 190px;
}

/* Panel kalendarza przy prawej krawedzi nie moze uciec poza ekran. */
.pase-field-guests .pase-pop {
	left: auto;
	right: 0;
}

/* --- "Nie znam dat" wewnatrz jasnego panelu --- */

.pase-pop .pase-nodates-option {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #62727f;
	font-size: 13px;
	cursor: pointer;
	margin: 0;
}

.pase-pop .pase-nodates-check {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	border: 1px solid #cfd6dd;
	border-radius: 5px;
	background: #fff;
	position: relative;
	transition: background .15s, border-color .15s;
}

.pase-pop .pase-nodates-check.active {
	background: #d49f58;
	border-color: #d49f58;
}

.pase-pop .pase-nodates-check.active::after {
	content: "";
	position: absolute;
	left: 5px;
	top: 1px;
	width: 5px;
	height: 10px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* --- Dolna belka z wyborem --- */

.pase-searchbar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 850;
	background: rgba(13, 32, 56, .97);
	backdrop-filter: blur(8px);
	border-top: 1px solid rgba(255, 255, 255, .1);
	box-shadow: 0 -6px 24px rgba(9, 20, 35, .28);
	animation: pase-bar-up .2s ease;
}

@keyframes pase-bar-up {
	from { transform: translateY(100%); }
	to   { transform: translateY(0); }
}

.pase-searchbar__inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 12px 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.pase-searchbar__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	padding: 9px 16px;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s, border-color .15s;
}

.pase-searchbar__chip:hover {
	background: rgba(212, 159, 88, .22);
	border-color: #d49f58;
}

.pase-searchbar__chip svg {
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	color: #d49f58;
}

.pase-searchbar__count {
	margin-left: auto;
	color: rgba(255, 255, 255, .68);
	font-size: 13px;
	white-space: nowrap;
}

.pase-searchbar__filters {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #d49f58;
	border: 1px solid #d49f58;
	border-radius: 999px;
	padding: 9px 18px;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s;
}

.pase-searchbar__filters:hover {
	background: #c08f4b;
}

.pase-searchbar__badge {
	min-width: 19px;
	height: 19px;
	line-height: 19px;
	border-radius: 999px;
	background: #fff;
	color: #a9631a;
	font-size: 11px;
	text-align: center;
	padding: 0 5px;
}

@media (max-width: 760px) {
	.pase-searchbar__inner {
		padding: 10px 12px;
		gap: 8px;
		overflow-x: auto;
	}
	.pase-searchbar__count { display: none; }
	.pase-searchbar__chip,
	.pase-searchbar__filters {
		padding: 8px 12px;
		font-size: 12px;
	}
}

/* Bez linii streszczenia przycisk filtrow musi sam trzymac sie prawej. */
.pase-filter-meta-row .pase-drawer-toggle {
	margin-left: auto;
}

/* ===================================================================== */
/*  Panel rezerwacji na stronie apartamentu                               */
/* ===================================================================== */

/* Kalendarz dwumiesieczny potrzebuje szerszego okna. */
.pase-booking-modal__box {
	width: min(720px, 100%);
}

.pase-booking-pickers {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	margin-bottom: 18px;
}

.pase-booking-pickers .pase-booking-field {
	position: relative;
	margin: 0;
}

.pase-booking-pickers label {
	display: block;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: #8a949d;
	margin-bottom: 6px;
}

/*
 * W oknie modalnym pudelko ma wlasne przewijanie, wiec panel unoszacy sie
 * nad trescia bylby przyciety. Rozwijamy go wiec w miejscu.
 */
.pase-booking-modal .pase-pop {
	position: static;
	width: auto !important;
	max-width: none;
	margin-top: 8px;
	box-shadow: none;
	border-color: #e6eaee;
	background: #fbfcfd;
	animation: none;
}

.pase-booking-modal .pase-pop__cal {
	display: flex;
	justify-content: center;
}

.pase-booking-modal .pase-pop--guests {
	padding: 2px 14px 12px;
}

.pase-pop__loading {
	margin: 0;
	padding: 28px 0;
	text-align: center;
	color: #8a949d;
	font-size: 13px;
}

.pase-pop__note {
	font-size: 12px;
	color: #8a949d;
	flex: 1;
}

/* Cena pod numerem dnia. */
.pase-pop__cal .flatpickr-day .ca-day-price {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 3px;
	font-size: 9px;
	line-height: 1;
	font-weight: 600;
	color: #a9631a;
	pointer-events: none;
}

.pase-pop__cal .flatpickr-day.selected .ca-day-price,
.pase-pop__cal .flatpickr-day.startRange .ca-day-price,
.pase-pop__cal .flatpickr-day.endRange .ca-day-price {
	color: rgba(255, 255, 255, .85);
}

/* Z cena dzien musi byc wyzszy, zeby liczby sie nie zlewaly. */
.pase-booking-modal .pase-pop__cal .flatpickr-day {
	height: 44px;
	line-height: 30px;
	padding-bottom: 8px;
}

.pase-pop__cal .flatpickr-day.ca-day-no-arrival {
	color: #b0b8c0;
}

/* ===================================================================== */
/*  Kalendarz rozwijany nad dolnym paskiem apartamentu                    */
/* ===================================================================== */

.pase-dates-bar {
	position: fixed;
}

.pase-bar-pop {
	position: absolute;
	bottom: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%);
	z-index: 5;
	background: #fff;
	border: 1px solid #e6eaee;
	border-radius: 14px;
	box-shadow: 0 -14px 44px rgba(9, 20, 35, .32);
	padding: 14px;
	width: max-content;
	max-width: calc(100vw - 32px);
	animation: pase-bar-pop-in .16s ease;
}

@keyframes pase-bar-pop-in {
	from { opacity: 0; transform: translate(-50%, 8px); }
	to   { opacity: 1; transform: translate(-50%, 0); }
}

.pase-bar-pop__cal {
	display: flex;
	justify-content: center;
}

.pase-bar-pop__foot {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-top: 12px;
	margin-top: 10px;
	border-top: 1px solid #f0f2f4;
}

/* Kalendarz w pasku dzieli wyglad z panelami w wyszukiwarce. */
.pase-bar-pop .flatpickr-calendar.inline {
	box-shadow: none;
	border: 0;
	margin: 0;
	background: transparent;
}

.pase-bar-pop .flatpickr-day {
	position: relative;
	border-radius: 8px;
	border: 0;
	color: #1b2a3a;
	font-size: 13px;
	font-weight: 500;
	height: 44px;
	line-height: 30px;
	padding-bottom: 8px;
	max-width: 42px;
}

.pase-bar-pop .flatpickr-day:hover {
	background: #f4f6f8;
}

.pase-bar-pop .flatpickr-day.selected,
.pase-bar-pop .flatpickr-day.startRange,
.pase-bar-pop .flatpickr-day.endRange {
	background: #d49f58;
	border-color: #d49f58;
	color: #fff;
	font-weight: 700;
}

.pase-bar-pop .flatpickr-day.inRange {
	background: #fdf1e3;
	box-shadow: none;
	border-radius: 0;
}

.pase-bar-pop .flatpickr-day.flatpickr-disabled,
.pase-bar-pop .flatpickr-day.pase-day-out {
	color: #c3cad1;
	cursor: not-allowed;
}

.pase-bar-pop .flatpickr-day.pase-day-out::after {
	content: "";
	position: absolute;
	left: 22%;
	right: 22%;
	top: 45%;
	height: 1px;
	background: #c3cad1;
	transform: rotate(-14deg);
}

.pase-bar-pop .flatpickr-day .ca-day-price {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 3px;
	font-size: 9px;
	line-height: 1;
	font-weight: 600;
	color: #a9631a;
	pointer-events: none;
}

.pase-bar-pop .flatpickr-day.selected .ca-day-price,
.pase-bar-pop .flatpickr-day.startRange .ca-day-price,
.pase-bar-pop .flatpickr-day.endRange .ca-day-price {
	color: rgba(255, 255, 255, .85);
}

.pase-bar-pop span.flatpickr-weekday {
	color: #9aa4ad;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.pase-bar-pop .flatpickr-current-month {
	font-size: 15px;
	font-weight: 700;
	color: #1b2a3a;
}

.pase-dates-bar__change[aria-expanded="true"] {
	background: #d49f58;
	color: #fff;
	border-color: #d49f58;
}

@media (max-width: 760px) {
	.pase-bar-pop {
		left: 8px;
		right: 8px;
		transform: none;
		width: auto;
		max-width: none;
	}
	@keyframes pase-bar-pop-in {
		from { opacity: 0; }
		to   { opacity: 1; }
	}
	.pase-bar-pop__foot { flex-wrap: wrap; }
}

/* Doba krotsza niz minimalny pobyt: widoczna, ale wygaszona. */
.pase-pop__cal .flatpickr-day.pase-day-short,
.pase-bar-pop .flatpickr-day.pase-day-short {
	color: #c3cad1;
	background: repeating-linear-gradient(-45deg, #f7f9fa 0 3px, #eef1f4 3px 6px);
}

.pase-pop__cal .flatpickr-day.pase-day-short .ca-day-price,
.pase-bar-pop .flatpickr-day.pase-day-short .ca-day-price {
	color: #c3cad1;
}

.pase-pop__cal .flatpickr-day.ca-day-no-arrival,
.pase-bar-pop .flatpickr-day.ca-day-no-arrival {
	color: #9aa4ad;
}

/* Dzien, w ktorym mozna tylko zakonczyc pobyt. */
.pase-pop__cal .flatpickr-day.pase-day-checkout,
.pase-bar-pop .flatpickr-day.pase-day-checkout {
	color: #8a949d;
	background: linear-gradient(135deg, #fff 0 50%, #eef1f4 50% 100%);
}

.pase-pop__cal .flatpickr-day.pase-day-checkout:hover,
.pase-bar-pop .flatpickr-day.pase-day-checkout:hover {
	background: linear-gradient(135deg, #f4f6f8 0 50%, #e4e8ec 50% 100%);
	color: #1b2a3a;
}

/* ===================================================================== */
/*  Kafelek: stala siatka 2x2 z pelnymi nazwami udogodnien                */
/* ===================================================================== */

.pase-icons-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-auto-rows: minmax(26px, auto);
	align-items: center;
	gap: 8px 12px;
	margin-bottom: 18px;
}

.pase-icon-item {
	min-width: 0;
	gap: 7px;
}

/* Puste miejsce trzyma uklad, gdy brakuje danych. */
.pase-icon-item--empty {
	visibility: hidden;
}

/* Pelna nazwa zamiast wielokropka - w razie potrzeby w dwoch liniach. */
.pase-icon-label {
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	font-size: .8rem;
	line-height: 1.25;
}

.pase-icon-no-parking svg,
.pase-icon-no-parking .pase-icon-label,
.pase-icon-item--off svg,
.pase-icon-item--off .pase-icon-label {
	color: #b9c1cc;
}

/* Wysokosc karty ma byc taka sama niezaleznie od dlugosci nazwy. */
.pase-card {
	height: 100%;
}

.pase-title a {
	min-height: 3em;
}

@media (max-width: 1500px) {
	.pase-icons-row { gap: 8px 10px; }
	.pase-icon-item { gap: 6px; }
	.pase-icon-label { font-size: .78rem; }
}

/* --- Sortowanie: wlasny dropdown zamiast systemowego selecta --- */

.pase-filter-meta-row {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.pase-sort {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 9px;
}

.pase-sort__label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: rgba(255, 255, 255, .6);
	white-space: nowrap;
}

.pase-sort__trigger {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 999px;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	padding: 10px 16px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .16s ease, border-color .16s ease;
}

.pase-sort__trigger:hover {
	background: rgba(212, 159, 88, .18);
	border-color: rgba(212, 159, 88, .6);
}

.pase-sort__trigger[aria-expanded="true"] {
	background: rgba(212, 159, 88, .22);
	border-color: #d49f58;
}

.pase-sort__trigger svg {
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	color: #d49f58;
}

.pase-sort__caret {
	width: 14px !important;
	height: 14px !important;
	flex: 0 0 14px !important;
	color: rgba(255, 255, 255, .55) !important;
	transition: transform .18s ease;
}

.pase-sort__trigger[aria-expanded="true"] .pase-sort__caret {
	transform: rotate(180deg);
}

.pase-sort__pop {
	position: absolute;
	z-index: 60;
	top: calc(100% + 8px);
	left: 0;
	min-width: 250px;
	background: #fff;
	border: 1px solid #e6eaee;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(9, 20, 35, .28);
	padding: 6px;
	animation: pase-pop-in .16s ease;
}

.pase-sort__opt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100%;
	background: none;
	border: 0;
	border-radius: 9px;
	padding: 10px 12px;
	font-size: 13.5px;
	font-weight: 500;
	color: #1b2a3a;
	text-align: left;
	cursor: pointer;
	transition: background .13s ease, color .13s ease;
}

.pase-sort__opt:hover {
	background: #f4f6f8;
}

.pase-sort__opt svg {
	width: 15px;
	height: 15px;
	flex: 0 0 15px;
	color: #d49f58;
	opacity: 0;
	transition: opacity .13s ease;
}

.pase-sort__opt.is-active {
	background: #fdf1e3;
	color: #a9631a;
	font-weight: 700;
}

.pase-sort__opt.is-active svg {
	opacity: 1;
}

@media (max-width: 620px) {
	.pase-sort { width: 100%; }
	.pase-sort__trigger { flex: 1; justify-content: space-between; }
	.pase-sort__pop { left: 0; right: 0; min-width: 0; }
}

/* Panel sortowania musi byc nad wynikami i mapa. */
.pase-sort {
	z-index: 60;
}

.pase-sort__pop {
	z-index: 10050;
}

.pase-filter-meta-row {
	position: relative;
	z-index: 60;
}

/*
 * Ikony na kafelku pochodza z ca_icon(), ktore celowo nie wpisuje wymiarow
 * w znacznik SVG - rozmiar nalezy do arkusza. Bez tego SVG rozciaga sie do
 * domyslnych 300x150 px i rozwala uklad karty.
 */
.pase-icon-item svg {
	width: 20px;
	height: 20px;
	min-width: 20px;
	flex: 0 0 20px;
	color: #d49f58;
}

.pase-icons-row {
	align-items: center;
}

@media (max-width: 1500px) {
	.pase-icon-item svg {
		width: 18px;
		height: 18px;
		min-width: 18px;
		flex: 0 0 18px;
	}
}

/*
 * Kolejnosc warstw w pasku wyszukiwania.
 *
 * Panele terminu i gosci rozwijaja sie w dol, wprost NAD pasek z sortowaniem
 * i filtrami. Ten pasek musi wiec lezec nizej, inaczej przechwytuje
 * klikniecia w licznik gosci (przycisk + przestaje reagowac).
 */
.pase-grid-filter-row {
	position: relative;
	z-index: 80;
}

.pase-filter-meta-row {
	position: relative;
	z-index: 40;
}
