/**
 * KN Suche Bitte – frontend styles
 * Typography and colors are inherited from theme and/or set per widget in Elementor Style tab.
 */

/* -------------------------------------------------------------------------
   Categories + List combo (33.33% / 66.66%) – fill full container (e.g. 1020px)
   ------------------------------------------------------------------------- */
.elementor-widget-kn-suche-bitte-category-list,
.elementor-widget-kn-suche-bitte-category-list .elementor-widget-container {
	max-width: none !important;
	width: 100% !important;
}
.kn-category-list-combo {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	width: 100% !important;
	max-width: none !important;
	align-items: flex-start;
}
.kn-category-list-combo__col {
	box-sizing: border-box;
	min-width: 0;
}
.kn-category-list-combo__col--categories {
	width: 33.33% !important;
	flex: 0 0 33.33% !important;
	max-width: none !important;
	padding-right: 1rem;
}
.kn-category-list-combo__col--categories .wpadverts-block-categories {
	width: 100% !important;
	max-width: none !important;
}
/* "Alle Anzeigen" – first item on top of category list, always visible; dark divider below */
.elementor-widget-kn-suche-bitte-category-list .kn-category-all-anzeigen {
	display: flex !important;
	visibility: visible !important;
	border-bottom: 1px solid #1f2043 !important;
}
.kn-category-list-combo__col--list {
	width: 66.66% !important;
	flex: 0 0 66.66% !important;
	max-width: none !important;
}
.kn-category-list-combo__col--list .wpadverts-block-list,
.kn-category-list-combo__col--list .wpadverts-blocks,
.kn-category-list-combo__col--list .wpadverts-block-list > * {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

/* Categories title (KATEGORIEN) above left column */
.kn-category-list-combo__categories-title {
	margin: 0 0 0.75rem 0 !important;
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1f2043 !important;
}

/* Selected category name above list column (left side) */
.kn-category-list-combo__selected-category-title {
	margin: 0 0 0.75rem 0 !important;
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1f2043 !important;
	text-align: left !important;
}

@media (max-width: 767px) {
	.kn-category-list-combo {
		flex-direction: column;
	}
	.kn-category-list-combo__col--categories,
	.kn-category-list-combo__col--list {
		width: 100%;
		flex: 0 0 100%;
		padding-right: 0;
	}
}

/* Apply categories list style inside combo (same as Classifieds Categories widget) */
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .atw-grid {
	display: flex !important;
	flex-direction: column;
	gap: 0;
	margin-left: 0;
	margin-right: 0;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .wpa-block-categories-item {
	border: none !important;
	border-bottom: 1px solid #ffffff !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0.65em 0 0.65em 0 !important;
	margin: 0 !important;
	background: transparent !important;
	align-items: center;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .wpa-block-categories-item.kn-category-block-end {
	border-bottom: 1px solid #1f2043 !important;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-main .wpa-block-categories-title,
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-main .wpa-block-categories-title a {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: #374151 !important;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .wpa-block-categories-item.kn-category-sub {
	padding-left: 1.25em !important;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-sub .wpa-block-categories-title,
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-sub .wpa-block-categories-title a {
	font-size: 0.95rem !important;
	font-weight: 400 !important;
	color: #6b7280 !important;
}
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories a.wpadverts-category-link.kn-category-current {
	color: #2FAD7A !important;
	font-weight: 700 !important;
}
/* Selected category row: whole item green + bold (combo) */
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .wpa-block-categories-item:has(a.wpadverts-category-link.kn-category-current) .wpa-block-categories-title,
.elementor-widget-kn-suche-bitte-category-list .kn-category-list-combo .wpadverts-block-categories .wpa-block-categories-item:has(a.wpadverts-category-link.kn-category-current) .wpa-block-categories-title a {
	color: #2FAD7A !important;
	font-weight: 700 !important;
}

/* List inside combo: same price tag style as standalone list */
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-last-text {
	display: inline-block;
	padding: 0.4em 0.85em;
	border-radius: 8px;
	font-weight: 700;
	background-color: #ffffff;
	border: 1px solid #27AD7A;
	color: #27AD7A;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-item:hover .wpa-result-last-text,
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-last-text:hover {
	background-color: #27AD7A;
	color: #ffffff;
	border: 1px solid #27AD7A;
}
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .advert-is-featured .wpa-result-last-text {
	background-color: #27AD7A;
	color: #fff !important;
	border: 1px solid #27AD7A;
}

/* List inside combo: title/content column fills 100% of row so short titles don't leave a gap */
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-item {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
}
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-item .wpa-result-last-text {
	flex-shrink: 0 !important;
}
.elementor-widget-kn-suche-bitte-category-list .wpadverts-block-list .wpa-result-item > *:not(.wpa-result-last-text):not(:first-child) {
	flex: 1 1 0% !important;
	min-width: 0 !important;
}

/* Inherit theme font and base styles for all KN Suche Bitte widgets */
[class*="elementor-widget-kn-suche-bitte"] {
	font-family: inherit;
}
[class*="elementor-widget-kn-suche-bitte"] .wpadverts-blocks,
[class*="elementor-widget-kn-suche-bitte"] .wpadverts-cpt,
[class*="elementor-widget-kn-suche-bitte"] .wpadverts-form {
	font-family: inherit;
}

/* Publish form: title above Kontakt / form fields */
/* Publish form: title on top of form (NEUE ANZEIGE ERSTELLEN) – always visible on first step */
.elementor-widget-kn-suche-bitte-publish .kn-publish-form-wrapper {
	display: block !important;
	width: 100% !important;
	overflow: visible !important;
	position: relative !important;
	z-index: 0 !important;
}
.elementor-widget-kn-suche-bitte-publish .kn-publish-form-title {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	margin: 0 0 1rem 0 !important;
	padding: 0 !important;
	font-size: 1.5rem !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	min-height: 1.5em !important;
	position: relative !important;
	z-index: 0 !important;
}

/* Publish form: hide OK and Löschen buttons in region/location dropdown (footer row) */
.elementor-widget-kn-suche-bitte-publish [class*="dropdown"] [class*="footer"] {
	display: none !important;
}

/* Publish form: remove container background from Preview Listing button section */
.elementor-widget-kn-suche-bitte-publish .wpadverts-form .wpa-form-buttons {
	background-color: transparent !important;
	background: none !important;
}
.elementor-widget-kn-suche-bitte-publish .wpadverts-blocks .wpadverts-block-publish,
.elementor-widget-kn-suche-bitte-publish .wpadverts-form > div[class*="atw-"],
.elementor-widget-kn-suche-bitte-publish .wpadverts-form .atw-flex.atw-justify-end,
.elementor-widget-kn-suche-bitte-publish .wpadverts-block-publish > div {
	background-color: transparent !important;
	background: none !important;
}

/* -------------------------------------------------------------------------
   List view – price tag style (rounded box: outlined default, filled on hover)
   ------------------------------------------------------------------------- */
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-last-text {
	display: inline-block;
	padding: 0.4em 0.85em;
	border-radius: 8px;
	font-weight: 700;
	/* Default: white background, green border and text */
	background-color: #ffffff;
	border: 1px solid #27AD7A;
	color: #27AD7A;
	transition: background-color 0.2s ease, color 0.2s ease;
}

/* Hover on list row or on price: green background, white text */
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-item:hover .wpa-result-last-text,
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-last-text:hover {
	background-color: #27AD7A;
	color: #ffffff;
	border: 1px solid #27AD7A;
}

/* Featured ad: always green background, white text */
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .advert-is-featured .wpa-result-last-text {
	background-color: #27AD7A;
	color: #fff !important;
	border: 1px solid #27AD7A;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .advert-is-featured:hover .wpa-result-last-text {
	background-color: #27AD7A;
	color: #fff !important;
}

/* List view: title/content column fills 100% of row (standalone Classifieds List) */
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-item {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
}
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-item .wpa-result-last-text {
	flex-shrink: 0 !important;
}
[class*="elementor-widget-kn-suche-bitte-adslist"] .wpadverts-block-list .wpa-result-item > *:not(.wpa-result-last-text):not(:first-child) {
	flex: 1 1 0% !important;
	min-width: 0 !important;
}

/* -------------------------------------------------------------------------
   Categories – list style with dividers, main/sub hierarchy, current in green
   ------------------------------------------------------------------------- */
/* Force vertical list layout (single column) */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .atw-grid {
	display: flex !important;
	flex-direction: column;
	gap: 0;
	margin-left: 0;
	margin-right: 0;
}

/* Each category item: divider line below, padding */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .wpa-block-categories-item {
	border: none !important;
	border-bottom: 1px solid #1f2043 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0.65em 0 0.65em 0 !important;
	margin: 0 !important;
	background: transparent !important;
	align-items: center;
}

/* Hierarchical list: white dividers under main and subcategories; dark divider only after last sub of each block */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item {
	border-bottom: 1px solid #ffffff !important;
}
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-block-end {
	border-bottom: 1px solid #1f2043 !important;
}

/* Main categories: bigger, bold */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .wpa-block-categories-title,
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .wpa-block-categories-title a {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: #374151 !important;
}

/* Sub-categories (when block shows children): smaller, not bold, more indent */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories--children .wpa-block-categories-item {
	padding-left: 1.25em !important;
}
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories--children .wpa-block-categories-title,
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories--children .wpa-block-categories-title a {
	font-size: 0.95rem !important;
	font-weight: 400 !important;
	color: #6b7280 !important;
}

/* Hierarchical list (main + sub): main = bigger/bold, sub = smaller, indented */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-main .wpa-block-categories-title,
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-main .wpa-block-categories-title a {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: #374151 !important;
}
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-sub {
	padding-left: 1.25em !important;
}
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-sub .wpa-block-categories-title,
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories.kn-categories-hierarchical .wpa-block-categories-item.kn-category-sub .wpa-block-categories-title a {
	font-size: 0.95rem !important;
	font-weight: 400 !important;
	color: #6b7280 !important;
}

/* Current/selected category: green and bolder */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories a.wpadverts-category-link.kn-category-current {
	color: #2FAD7A !important;
	font-weight: 700 !important;
}
/* Selected category row: whole item green + bold (standalone Categories widget) */
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .wpa-block-categories-item:has(a.wpadverts-category-link.kn-category-current) .wpa-block-categories-title,
[class*="elementor-widget-kn-suche-bitte-categories"] .wpadverts-block-categories .wpa-block-categories-item:has(a.wpadverts-category-link.kn-category-current) .wpa-block-categories-title a {
	color: #2FAD7A !important;
	font-weight: 700 !important;
}

/* -------------------------------------------------------------------------
   Classifieds list – Style 3 pagination (arrows, green theme)
   Shared by: Classifieds List widget and Categories + List combo
   ------------------------------------------------------------------------- */
[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	margin-top: 30px !important;
	gap: 8px;
	flex-wrap: wrap;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn {
	width: 30px !important;
	height: 30px !important;
	padding: 0 !important;
	background: transparent !important;
	color: #2fad7a !important;
	border: 2px solid #1f2043 !important;
	border-radius: 8px !important;
	cursor: pointer !important;
	font-family: "Lato-local", Sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 22pt !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.2s !important;
	text-decoration: none !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper a.kn-pagination-btn,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper a.kn-pagination-btn {
	text-decoration: none !important;
	color: inherit !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper a.kn-pagination-btn:hover,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper a.kn-pagination-btn:hover {
	text-decoration: none !important;
	color: inherit !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn.kn-active,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn.kn-active {
	background: #196355 !important;
	color: #f6f4f2 !important;
	border-color: #196355 !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn.kn-disabled,
[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn:disabled,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn.kn-disabled,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn:disabled {
	opacity: 0.4 !important;
	cursor: not-allowed !important;
	pointer-events: none !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn.kn-icon-btn,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn.kn-icon-btn {
	border: none !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-btn img,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-btn img {
	max-width: 19px;
	max-height: 19px;
	display: block;
}

[class*="elementor-widget-kn-suche-bitte-adslist"] .kn-pagination-wrapper .kn-pagination-ellipsis,
.elementor-widget-kn-suche-bitte-category-list .kn-pagination-wrapper .kn-pagination-ellipsis {
	color: #2fad7a !important;
	font-family: "Lato-local", Sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 22pt !important;
}

/* -------------------------------------------------------------------------
   Single gallery – thumbnails: no white space, show only small image
   ------------------------------------------------------------------------- */
[class*="elementor-widget-kn-suche-bitte-single-gallery"] .atw-flex-row > div {
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden;
}
[class*="elementor-widget-kn-suche-bitte-single-gallery"] .atw-flex-row img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 4.5rem;
	object-fit: contain;
	vertical-align: middle;
}

/* Single gallery – hide horizontal scrollbar under thumbnails (keep scroll via touch/drag) */
[class*="elementor-widget-kn-suche-bitte-single-gallery"] .atw-overflow-x-scroll {
	overflow-x: auto;
	scrollbar-width: none;           /* Firefox */
	-ms-overflow-style: none;         /* IE / Edge */
}
[class*="elementor-widget-kn-suche-bitte-single-gallery"] .atw-overflow-x-scroll::-webkit-scrollbar {
	display: none;                   /* Chrome, Safari, Opera */
}

/* -------------------------------------------------------------------------
   Single scalar value – separate classes for title vs price
   Price only: white text on #0e6354, rounded badge. Title/other: plain text.
   ------------------------------------------------------------------------- */
[class*="elementor-widget-kn-suche-bitte-single-value"] .kn-single-value--price {
	display: inline-block;
	box-sizing: border-box;
	color: #ffffff !important;
	background-color: #0e6354 !important;
	padding: 0.4em 0.85em;
	border-radius: 8px;
}
[class*="elementor-widget-kn-suche-bitte-single-value"] .kn-single-value--text {
	/* Title and other scalar values: no badge, inherit theme styles */
}

/* Hide avatar (e.g. in single/author or data table) when using these classes */
.avatar.avatar-64.photo.atw-m-0.atw-p-0.atw-block.atw-rounded-full {
	display: none !important;
}
