/* =====================================================
   IG-ZITATE
===================================================== */

.igzitate-container {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}


/* =====================================================
   HERZ / BUTTON
===================================================== */

.igzitate-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 32px;
	height: 32px;

	padding: 0;

	color: var(--owlh-accent);
	background: transparent;

	border: 1px solid transparent;
	border-radius: var(--owlh-radius-soft);

	font-family: var(--owlh-font-serif);
	font-size: 22px;
	line-height: 1;

	text-decoration: none;
	cursor: pointer;

	transition:
		color .15s ease,
		background-color .15s ease,
		border-color .15s ease;
}

.igzitate-icon:hover {
	color: var(--owlh-accent-hover);
	background: var(--owlh-accent-soft);
	border-color: var(--owlh-border);
	text-decoration: none;
}

.igzitate-icon:focus-visible {
	outline: 2px solid var(--owlh-gold);
	outline-offset: 2px;
}


/* =====================================================
   POPUP
===================================================== */

.igzitate-popup {
	position: absolute !important;

	top: 38px !important;
	right: 0 !important;

	box-sizing: border-box;

	width: 330px !important;
	max-width: calc(100vw - 40px);

	padding: 18px !important;

	background:
		var(--owlh-page-texture),
		var(--owlh-surface-raised) !important;

	color: var(--owlh-text);

	border: 1px solid var(--owlh-border-strong);
	border-radius: var(--owlh-radius-soft);

	box-shadow: 0 8px 24px var(--owlh-shadow-deep) !important;

	z-index: 99999;
}


/* kleiner Pfeil zum Herz */

.igzitate-popup::before {
	content: "";

	position: absolute;
	top: -7px;
	right: 11px;

	width: 12px;
	height: 12px;

	background:
		var(--owlh-page-texture),
		var(--owlh-surface-raised);

	border-top: 1px solid var(--owlh-border-strong);
	border-left: 1px solid var(--owlh-border-strong);

	transform: rotate(45deg);
}


/* =====================================================
   FORMULAR
===================================================== */

.igzitate-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}


/* gemeinsame Felder */

.igzitate-form textarea {
	box-sizing: border-box;

	width: 100%;

	padding: 10px 11px;

	background: var(--owlh-surface);
	color: var(--owlh-text);

	border: 1px solid var(--owlh-border);
	border-radius: var(--owlh-radius);

	font-family: var(--owlh-font-body);
	font-size: 12px;
	line-height: 1.6;

	resize: vertical;

	transition:
		border-color .15s ease,
		background-color .15s ease;
}

.igzitate-form textarea:hover {
	border-color: var(--owlh-border-strong);
}

.igzitate-form textarea:focus {
	outline: none;

	background: var(--owlh-surface-raised);
	border-color: var(--owlh-gold);
}


/* Zitat */

.igzitate-zitat {
	min-height: 95px !important;

	font-family: var(--owlh-font-serif) !important;
	font-size: 13px !important;
	line-height: 1.65 !important;
}


/* Kommentar */

.igzitate-kommentar {
	min-height: 65px !important;
}


/* Placeholder */

.igzitate-form textarea::placeholder {
	color: var(--owlh-text-muted);
	opacity: 1;
}


/* =====================================================
   SPEICHERN
===================================================== */

.igzitate-form input[type="submit"] {
	box-sizing: border-box;

	width: 100% !important;

	padding: 9px 14px !important;

	background: var(--owlh-accent) !important;
	color: var(--owlh-hero-text) !important;

	border: 1px solid var(--owlh-accent) !important;
	border-radius: var(--owlh-radius);

	font-family: var(--owlh-font-body);
	font-size: 11px;
	font-weight: bold;
	letter-spacing: .07em;
	text-transform: uppercase;

	cursor: pointer;

	transition:
		background-color .15s ease,
		border-color .15s ease;
}

.igzitate-form input[type="submit"]:hover {
	background: var(--owlh-accent-hover) !important;
	border-color: var(--owlh-accent-hover) !important;
}

.igzitate-form input[type="submit"]:focus-visible {
	outline: 2px solid var(--owlh-gold);
	outline-offset: 2px;
}


/* =====================================================
   AUSWAHL IM ZITATFELD
===================================================== */

.igzitate-form textarea::selection {
	background: var(--owlh-selected-bg);
	color: var(--owlh-heading);
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

	.igzitate-popup {
		position: fixed !important;

		top: 50% !important;
		left: 50% !important;
		right: auto !important;

		width: calc(100vw - 32px) !important;
		max-width: 380px;

		transform: translate(-50%, -50%);

		padding: 16px !important;
	}

	.igzitate-popup::before {
		display: none;
	}

}

/* =====================================================
   IG-ZITATE – OVERVIEW / HERBST HELL CLEAN
===================================================== */

.zitat-item {
	display: grid;
	grid-template-columns: 82px minmax(0, 1fr);
	gap: 18px;

	box-sizing: border-box;

	margin: 0 0 18px;
	padding: 18px;

	background: var(--owlh-surface);

	border: 1px solid var(--owlh-border);
	border-left: 3px solid var(--owlh-accent);

	border-radius: var(--owlh-radius-soft);

	box-shadow: 0 3px 10px var(--owlh-shadow);
}


/* =====================================================
   AVATAR
===================================================== */

.zitat-avatar {
	width: 82px;
}

.zitat-avatar a {
	display: block;

	width: 82px;
	height: 82px;

	text-decoration: none;
}

.zitat-avatar img {
	display: block;

	box-sizing: border-box;

	width: 82px;
	height: 82px;

	object-fit: cover;
	object-position: center;

	background: var(--owlh-surface-deep);

	border: 1px solid var(--owlh-border-strong);
	border-radius: var(--owlh-radius);
}


/* Kein Avatar */

.zitat-avatar-placeholder {
	display: flex !important;
	align-items: center;
	justify-content: center;

	box-sizing: border-box;

	width: 82px !important;
	height: 82px !important;

	background: var(--owlh-surface-soft);

	border: 1px solid var(--owlh-border-strong);
	border-radius: var(--owlh-radius);

	color: var(--owlh-accent);

	font-family: var(--owlh-font-serif);
	font-size: 28px;
	line-height: 1;
}


/* =====================================================
   INHALT
===================================================== */

.zitat-content {
	min-width: 0;
}


/* =====================================================
   KOPF
===================================================== */

.zitat-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;

	margin-bottom: 12px;
	padding-bottom: 9px;

	border-bottom: 1px solid var(--owlh-border-soft);
}

.zitat-info {
	color: var(--owlh-text-muted);

	font-family: var(--owlh-font-body);
	font-size: 10px;
	line-height: 1.5;

	letter-spacing: .04em;
}

.zitat-info a {
	color: var(--owlh-accent);
	text-decoration: none;
}

.zitat-info a:hover {
	color: var(--owlh-accent-hover);
}

.zitat-autor {
	color: var(--owlh-rust);

	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.zitat-separator {
	margin: 0 5px;

	color: var(--owlh-text-muted);
}

.zitat-datum {
	display: inline-block;

	margin-left: 8px;
	padding-left: 9px;

	border-left: 1px solid var(--owlh-border-strong);

	color: var(--owlh-text-soft);
}


/* =====================================================
   ZITAT
===================================================== */

.zitat-quote {
	position: relative;

	box-sizing: border-box;

	margin: 0;
	padding: 14px 18px 14px 24px;

	background: var(--owlh-surface-raised);

	border: 1px solid var(--owlh-border-soft);
	border-left: 3px solid var(--owlh-gold);

	border-radius: var(--owlh-radius);

	color: var(--owlh-text);

	font-family: var(--owlh-font-serif);
	font-size: 13px;
	line-height: 1.75;
}

.zitat-quote::before {
	content: "“";

	position: absolute;
	top: 2px;
	left: 7px;

	color: var(--owlh-accent);

	font-family: var(--owlh-font-serif);
	font-size: 24px;
	line-height: 1;

	opacity: .65;
}


/* =====================================================
   KOMMENTAR
===================================================== */

.zitat-zusatz {
	margin-top: 10px;
	padding: 9px 11px;

	background: var(--owlh-surface-soft);

	border: 1px solid var(--owlh-border-soft);
	border-left: 3px solid var(--owlh-olive);

	border-radius: var(--owlh-radius);

	color: var(--owlh-text-soft);

	font-family: var(--owlh-font-body);
	font-size: 10px;
	line-height: 1.6;
}

.zitat-zusatz::before {
	content: "Kommentar";

	display: block;

	margin-bottom: 4px;

	color: var(--owlh-olive);

	font-size: 8px;
	font-weight: bold;
	letter-spacing: .12em;
	text-transform: uppercase;
}


/* =====================================================
   LÖSCHEN
===================================================== */

.zitat-delete {
	flex: 0 0 auto;
}

.zitat-delete a {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 5px 8px;

	background: var(--owlh-surface-raised);

	border: 1px solid var(--owlh-border);

	border-radius: var(--owlh-radius);

	color: var(--owlh-text-muted);

	font-family: var(--owlh-font-body);
	font-size: 9px;
	letter-spacing: .06em;
	text-decoration: none;
	text-transform: uppercase;

	transition:
		color .15s ease,
		background-color .15s ease,
		border-color .15s ease;
}

.zitat-delete a:hover {
	background: var(--owlh-accent-soft);

	border-color: var(--owlh-accent);

	color: var(--owlh-accent-hover);
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

	.zitat-item {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 12px;

		padding: 12px;
	}

	.zitat-avatar,
	.zitat-avatar a,
	.zitat-avatar img,
	.zitat-avatar-placeholder {
		width: 52px !important;
		height: 52px !important;
	}

	.zitat-avatar-placeholder {
		font-size: 20px;
	}

	.zitat-head {
		flex-direction: column;
		gap: 7px;
	}

	.zitat-datum {
		display: block;

		margin: 3px 0 0;
		padding: 0;

		border: 0;
	}

	.zitat-quote {
		padding: 12px 12px 12px 21px;

		font-size: 12px;
	}
}

/* =====================================================
   FORUMBIT – ZITAT
===================================================== */

.quote-row {
	align-items: flex-start;

	gap: 14px;

	padding-top: 6px !important;
	padding-bottom: 4px !important;
}


/* =========================
   ANFÜHRUNGSZEICHEN
========================= */

.quotemark {
	flex: 0 0 auto;

	margin-top: -3px;

	color: var(--owlh-accent);

	font-family: var(--owlh-font-serif);
	font-size: 38px;
	font-style: italic;
	line-height: 1;

	opacity: .75;
}


/* =========================
   INHALT
========================= */

.quoteinhalt {
	flex: 1;
	min-width: 0;
}


/* =========================
   ZITATTEXT
========================= */

.quotecont {
	margin: 0 0 5px;

	color: var(--owlh-text);

	font-family: var(--owlh-font-serif);
	font-size: 13px;
	font-style: italic;
	line-height: 1.55;

	letter-spacing: .01em;
}


/* vorhandene headerp-Eigenschaften ggf. neutralisieren */

.headerp.quotecont {
	padding: 0;
	background: transparent;
	border: 0;
}


/* =========================
   META
========================= */

.quote-meta {
	color: var(--owlh-text-muted);

	font-family: var(--owlh-font-body);
	font-size: 9px;
	line-height: 1.5;

	letter-spacing: .025em;
}

.quote-meta a {
	color: var(--owlh-accent);
	text-decoration: none;

	transition: color .15s ease;
}

.quote-meta a:hover {
	color: var(--owlh-accent-hover);
}


/* Autor etwas deutlicher */

.quote-meta > a:first-of-type {
	color: var(--owlh-rust);
}


/* Trenner */

.quote-separator {
	display: inline-block;

	margin: 0 5px;

	color: var(--owlh-border-strong);
}


/* Datum */

.owlf-feature-date {
	color: var(--owlh-text-soft);
}


/* Alle Zitate */

.quote-overview {
	margin-left: 4px;

	color: var(--owlh-text-muted);
}

.quote-overview a {
	color: var(--owlh-gold);
}

.quote-overview a:hover {
	color: var(--owlh-accent);
}