.userManagement{
	display:initial;
}

.menuWrapper > div.socialNav{
	width:23%;
}


/*------Suche-----*/
/* Zentrierte Suchleiste + Filterbutton */
.search-bar-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
	flex-wrap: wrap;
	margin-bottom: 1rem;
}

.search-bar {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.search-bar input {
	flex: 1;
	padding: 0.65rem;
	border: 1px solid var(--maincolor);
	border-radius: 0.5rem;
	min-width: 30vw;
	max-width: 100%;
	margin-top: 2rem;
}

.search-bar button {
	background-color: var(--maincolor);
	color: white;
	border: none;
	padding: 0.5rem 1rem;
	border-radius: 0.5rem;
	cursor: pointer;
}

/* Filter-Button mit Text und Icon */
.filter-btn {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	background: var(--maincolor);
	color: white;
	border: none;
	padding: 0.5rem 1rem; /* gleiche Höhe wie Suchfeld */
	border-radius: 0.5rem;
	font-size: 1rem;
	cursor: pointer;
	height: 2.5rem; /* gleiche Höhe wie .search-bar input */
}

.filter-btn i {
	pointer-events: none;
}

/* Filter-Tags */
.filter-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0.5rem 0 1.5rem;
}

.tag {
	background-color: var(--maincolor);
	color: white;
	padding: 0.4rem 0.7rem;
	border-radius: 1rem;
	font-size: 0.85rem;
	cursor: pointer;
	white-space: nowrap;
}

.tag:hover {
	background-color: var(--textcolor);
	color: var(--maincolor);
}

/* Aktive Filter */
.filter-btn.filter-active {
	background-color: var(--secondcolor);
	color: white;
	position: relative;
	padding-right: 1.6rem; /* Platz für das X */
}

/* Das "X" zum Entfernen */
.filter-btn .filter-remove {
	position: absolute;
	right: 0.6rem;
	top: 50%;
	transform: translateY(-50%);
	font-weight: bold;
	color: white;
	cursor: pointer;
	font-size: 1rem;
	pointer-events: auto;
}

/* Hover für das X */
.filter-btn .filter-remove:hover {
	color: #ffdddd;
}

.filter-btn:hover {
	background-color: var(--secondcolor);
	color: white;
}

.marketplace-container .hidden, #admin-product-grid .hidden{
	display: none;
}

#product-grid, #admin-product-grid {
	display: flex;
	width: 100%;
	flex-direction: row;
	flex-wrap: wrap;
	margin-top: 10vh;
}

.product-card {
	width: calc(20% - 1rem - 0.8rem - 2px - 0.5px);
	display: flex;
	flex-direction: column;
	background: white;
	border: 1px solid #ddd;
	border-radius: 0.75rem;
	padding: 0.5rem;
	margin: 0.4rem;
	margin-bottom: 1rem;
	gap: 0rem;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	transition: transform 0.2s ease;
	font-size: 90%;
	position: relative;
}

.product-card:hover {
	transform: scale(1.01);
}

.image-container {
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 0.5rem;
	margin-bottom: 0.5rem;
	position: relative;
}

.product-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	pointer-events: none;
}

.product-info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

/* Einzeilige Texte mit Ellipsis */
.product-title,
.product-line {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 0.95rem;
	color: var(--textcolor);
	margin: 0;
}

/* Optional: Farbe für Ort oder Beschreibung unterscheiden */
.product-line:nth-child(2) {
	color: #555;
}

.product-line:nth-child(3) {
	color: var(--secondcolor);
}

.product-card h3 {
	font-size: 95%;
}

.product-line:first-child, p.product-line:first-child * {
	/* alles zurücksetzen */
	all: unset !important;

	/* und dann unser gewünschtes Basis-Styling auf alle Elemente anwenden */
	font-family: var(--fonttext)   !important;
	color: var(--textcolor)        !important;
	font-size: 85%                 !important;
	white-space: nowrap            !important;
	overflow: hidden               !important;
	text-overflow: ellipsis        !important;

	/* margin/padding auf 0, damit z.B. <h1> nicht plötzlich Abstände hat */
	margin: 0 !important;
	padding: 0 !important;
}


/*------ Type Toggle -----*/

/* Style für den Type Toggle (Angebot/Gesuch) */
#type-toggle {
	background-color: var(--maincolor);
	color: white;
	border: none;
	padding: 0.5rem 1rem;
	font-size: 1rem;
	border-radius: 0.5rem;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	height: 2.5rem; /* gleiche Höhe wie .search-bar input und .filter-btn */
	transition: background-color 0.3s, color 0.3s;
}

/* Hover- und Fokus-Effekte */
#type-toggle:hover,
#type-toggle:focus {
	background-color: var(--secondcolor);
	color: white;
	outline: none;
}

/* Aktiver Zustand (wenn "Angebot" oder "Gesuch" ausgewählt ist) */
#type-toggle.active {
	background-color: var(--secondcolor);
	color: white;
}

/* Style für den "type-toggle" wenn es inaktiv ist */
#type-toggle.inactive {
	background-color: var(--maincolor);
	color: white;
}

input[type="text"], 
input[type="search"], 
input, 
textarea {
	font-size: 16px; /* verhindert iOS-Autozoom */
}

@media (max-width: 768px) and (orientation: portrait) {
	.product-card {
		width: calc(33% - 1rem - 0.8rem - 2px);
	}

	.search-bar{
		width:80%;
	}

	.filter-btn, #type-toggle{
		height: 2rem;
		gap: 0.4rem;
		font-size: 0.8rem;
	}

}
