/*
 * fasn8 Simple Link Library – public.css
 * IMPORTANT:
 * - Do not patch or replace the first layout rules directly.
 * - Use section comments below as patch anchors.
 */
.fasn8-sll-filter { padding: .75rem; border: 1px solid rgba(0,0,0,.12); border-radius: 12px; margin-bottom: 1rem; }
.fasn8-sll-filter-row { display: grid; gap: .75rem; grid-template-columns: 1fr; align-items: end; }
@media (min-width: 720px) {
	.fasn8-sll-filter-row { grid-template-columns: 1fr 1fr auto; }
}
.fasn8-sll-field > span { display: block; font-size: .85rem; opacity: .8; margin-bottom: .25rem; }
.fasn8-sll-search-scope {
	font-size: .75em;
	opacity: .9;
	font-weight: 600;
}
.fasn8-sll-field > input, .fasn8-sll-field > select, .fasn8-sll-field > textarea { width: 100%; padding: .5rem .6rem; border: 1px solid rgba(0,0,0,.18); border-radius: 0; }
.fasn8-sll-actions { display: flex; gap: .5rem; align-items: center; justify-content: flex-end; justify-self: end; width: 100%; }
.fasn8-sll-btn {
	padding: .55rem .9rem;
	border-radius: 0;
	border: 1px solid rgba(0,0,0,.18);
	cursor: pointer;
	color: #fff;
	background: var(--wp--preset--color--primary, #006699);
	margin: 0 !important; /* Theme-Margins neutralisieren */
}
.fasn8-sll button,
.fasn8-sll input[type="submit"],
.fasn8-sll input[type="button"] {
	margin: 0 !important;
}
.fasn8-sll-btn:hover, .fasn8-sll-btn:focus-visible { filter: brightness(0.98); }
.fasn8-sll-reset { font-size: .9rem; opacity: .85; text-decoration: none; }
.fasn8-sll-reset:hover, .fasn8-sll-reset:focus-visible { text-decoration: underline; }

.fasn8-sll-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .25rem; }
.fasn8-sll-list li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0;
}
.fasn8-sll-item {
	position: relative;
	display: block;
	width: 100%;
	box-sizing: border-box;

	padding: .75rem;
	border: 1px solid rgba(0,0,0,.12);
	border-radius: 12px;
	background: transparent;

	cursor: pointer;
	text-decoration: none;
	color: inherit;

	transition: background-color .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease;
}

/* Karte ist selbst ein <a>: niemals unterstreichen */
.fasn8-sll-item,
.fasn8-sll-item:visited,
.fasn8-sll-item:hover,
.fasn8-sll-item:focus,
.fasn8-sll-item:focus-visible {
	text-decoration: none !important;
}

.fasn8-sll-item:hover,
.fasn8-sll-item:focus-within {
	background: var(--wp--preset--color--primary, #2271b1);
	border-color: var(--wp--preset--color--primary, #2271b1);
	color: #fff;
	box-shadow: 0 6px 18px rgba(0,0,0,.15);
}

.fasn8-sll-item:hover *,
.fasn8-sll-item:focus-within * {
	color: #fff !important;
}

.fasn8-sll-title a,
.fasn8-sll-title span {
	font-weight: 700;
	text-decoration: none;
}
.fasn8-sll-title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: .6rem;
}
.fasn8-sll-title-text {
	flex: 1 1 auto;
	min-width: 0;
}
.fasn8-sll-item-cat {
	flex: 0 1 45%;
	text-align: right;
	font-size: .72rem;
	line-height: 1.25;
	font-weight: 500 !important;
	opacity: .7;
}
.fasn8-sll-item-cat .fasn8-sll-sep-icon {
	--fasn8-sll-sep-size: 9px;
	margin: 0 .2em;
}
/* Keine Unterstreichung innerhalb klickbarer Kacheln */
.fasn8-sll-item a,
.fasn8-sll-item a:visited,
.fasn8-sll-item a:hover,
.fasn8-sll-item a:focus,
.fasn8-sll-item a:focus-visible {
	text-decoration: none !important;
}
.fasn8-sll-desc { margin-top: .25rem; opacity: .9; }
.fasn8-sll-meta { margin-top: .35rem; font-size: .9rem; opacity: .85; }
.fasn8-sll-pagination { margin-top: 1rem; display: flex; gap: .4rem; flex-wrap: wrap; }
.fasn8-sll-page {
	padding: .35rem .6rem;
	border: 1px solid rgba(0,0,0,.18);
	border-radius: 10px;
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	color: inherit;
}

.fasn8-sll-page:hover,
.fasn8-sll-page:focus-visible {
	text-decoration: none !important;
	filter: brightness(0.98);
}

.fasn8-sll-page.is-current {
	font-weight: 700;
	background: #006699;
	border-color: #006699;
	color: #fff;
	cursor: default;
}

.fasn8-sll-breadcrumb { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; margin: .25rem 0 1rem; }
.fasn8-sll-bc-item { text-decoration: none; }
.fasn8-sll-bc-item:hover, .fasn8-sll-bc-item:focus-visible { text-decoration: underline; }
.fasn8-sll-bc-sep {
	display: inline-flex;
	align-items: center;
	opacity: .75;
}
.fasn8-sll-bc-item.is-current { font-weight: 700; opacity: .9; cursor: default; text-decoration: none; }

.fasn8-sll-cat-count { opacity: .75; font-size: .9rem; }

.fasn8-sll-cats-links { margin-top: 1rem; }

.fasn8-sll-submit h3 { margin: 0 0 .5rem; }
.fasn8-sll-submit-toggle {
	display: block;
	width: 100%;
	text-align: right;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
}
.fasn8-sll-submit-toggle:hover,
.fasn8-sll-submit-toggle:focus-visible {
	text-decoration-thickness: 2px;
}
.fasn8-sll-submit-panel {
	margin-top: .6rem;
	padding: 0 .9rem;
	border: 1px solid rgba(0,0,0,.12);
	border-radius: 12px;
	background: rgba(255,255,255,.95);
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transform: translateY(-6px);
	transition: max-height .35s ease, opacity .25s ease, transform .25s ease, padding-top .2s ease, padding-bottom .2s ease;
}
.fasn8-sll-submit-panel.is-open {
	max-height: 4200px;
	opacity: 1;
	transform: translateY(0);
	padding-top: .9rem;
	padding-bottom: .9rem;
}
.fasn8-sll-submit .fasn8-sll-field { display: block; margin: .6rem 0; }
.fasn8-sll-submit-form {
	display: flex;
	flex-direction: column;
}
.fasn8-sll-submit-form > .fasn8-sll-btn[name="fasn8_sll_submit"] {
	align-self: flex-end;
}
.fasn8-sll-submit button:not(.fasn8-sll-btn) {
	padding: .55rem .9rem;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,.18);
	cursor: pointer;
}
.fasn8-sll-submit-group + .fasn8-sll-submit-group {
	margin-top: 1rem;
	padding-top: .9rem;
	border-top: 1px solid rgba(0,0,0,.08);
}
.fasn8-sll-submit-group h4 {
	margin: 0 0 .3rem;
}
.fasn8-sll-submit-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: .6rem;
}
.fasn8-sll-submit-row .fasn8-sll-field {
	margin: 0;
}
.fasn8-sll-cat-checks {
	border: 1px solid rgba(0,0,0,.18);
	border-radius: 10px;
	padding: .45rem .6rem;
	background: #fff;
	max-height: 260px;
	overflow: auto;
}
.fasn8-sll-cat-check {
	display: flex;
	align-items: flex-start;
	gap: .45rem;
	margin: .25rem 0;
	padding-left: calc(var(--sll-depth, 0) * .95rem);
	line-height: 1.35;
}
.fasn8-sll-cat-check input[type="checkbox"] {
	width: auto;
	flex: 0 0 auto;
	margin: .2rem 0 0;
}
.fasn8-sll-field-help {
	margin: .2rem 0 .45rem 0.75rem;
	font-size: .7rem;
	opacity: .85;
}
.fasn8-sll-required {
	color: #b42318;
	font-weight: 700;
}
@media (min-width: 720px) {
	.fasn8-sll-submit-row {
		grid-template-columns: 1fr 1fr;
	}
}
.fasn8-sll-msg { padding: .6rem .8rem; border-radius: 10px; background: rgba(0,128,0,.08); }
.fasn8-sll-err { padding: .6rem .8rem; border-radius: 10px; background: rgba(255,0,0,.08); }
.fasn8-sll-hp { display:none !important; }

/* === Grundlayout / Spacing === */
.fasn8-sll {
	margin: 1rem 0;
}

/* === Kategoriebaum: Hauptkategorien als Blocks (neues Markup) === */

/* sicherstellen, dass keine Bullets angezeigt werden */
.fasn8-sll-cat-tree {
	list-style: none;
	padding-left: 0;
	margin: 0;
	font-size: 1rem;
}
.fasn8-sll-cat-tree,
.fasn8-sll-cat-tree li {
	list-style: none !important;
}

/* Root-Kategorien als "Block/Card" */
.fasn8-sll-cat.is-root {
	margin: 0 0 1rem;
}

.fasn8-sll-cat.is-root .fasn8-sll-cat-block {
	padding: .8rem 1rem;
	border: 1px solid rgba(0,0,0,.12);
	border-radius: 12px;
}

.fasn8-sll-cat.is-root .fasn8-sll-cat-head a {
	font-size: 1.1rem;
	font-weight: 800;
	line-height: 1.3;
	text-decoration: none;
	/* nutzt WP-Theme-Farbe, sonst dezentes Blau */
	color: var(--wp--preset--color--primary, #2271b1);
}

.fasn8-sll-cat.is-root .fasn8-sll-cat-head a:hover,
.fasn8-sll-cat.is-root .fasn8-sll-cat-head a:focus-visible {
	text-decoration: underline;
}

.fasn8-sll-cat.is-root .fasn8-sll-cat-count {
	opacity: .75;
	font-size: .9rem;
}

/* Unterbaum innerhalb eines Root-Blocks */
.fasn8-sll-cat.is-root .fasn8-sll-cat-children {
	margin-top: .5rem;
}

/* Unterkategorien: kompakt & ruhiger */
.fasn8-sll-cat-tree .fasn8-sll-cat-tree {
	padding-left: 1rem;
	margin-top: .18rem;
	font-size: .85rem;
}

.fasn8-sll-cat-tree .fasn8-sll-cat {
	margin: .25rem 0;
}

.fasn8-sll-cat-tree .fasn8-sll-cat-name a {
	text-decoration: none;
	font-size: inherit;
}

.fasn8-sll-cat-tree .fasn8-sll-cat-name a:hover,
.fasn8-sll-cat-tree .fasn8-sll-cat-name a:focus-visible {
	text-decoration: underline;
}

/* Unterkategorien etwas ruhiger halten */
.fasn8-sll-cat-tree .fasn8-sll-cat-tree .fasn8-sll-cat-name a {
	font-size: inherit;
	font-weight: 600;
	color: inherit;
	line-height: 1.25;
}

.fasn8-sll-cat-tree .fasn8-sll-cat-tree .fasn8-sll-cat {
	margin: .15rem 0;
}

/* === Unterkategorie-Links unter Breadcrumb (mit SVG-Separator) === */

/* === SVG Separator (global, used in breadcrumb + category paths + subcats) === */
.fasn8-sll,
.fasn8-sll-cats {
	/* tweakable knobs */
	--fasn8-sll-sep-size: 12px;
	--fasn8-sll-sep-gap: 0.35em;
	--fasn8-sll-sep-opacity: 0.75;

	/* image (default) */
	--fasn8-sll-sep-img: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDIwMDEwOTA0Ly9FTiIKICJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy1TVkctMjAwMTA5MDQvRFREL3N2ZzEwLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4wIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiB3aWR0aD0iMjc4LjAwMDAwMHB0IiBoZWlnaHQ9IjI3Ny4wMDAwMDBwdCIgdmlld0JveD0iMCAwIDI3OC4wMDAwMDAgMjc3LjAwMDAwMCIKIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPgoKPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsMjc3LjAwMDAwMCkgc2NhbGUoMC4xMDAwMDAsLTAuMTAwMDAwKSIKZmlsbD0iIzAwMDAwMCIgc3Ryb2tlPSJub25lIj4KPHBhdGggZD0iTTE1ODYgMjY4MCBjLTEyOSAtMjAwIC0zMzEgLTM0OCAtNTY0IC00MTIgLTYzIC0xOCAtMTA2IC0yMiAtMjM3Ci0yMiAtMTcxIC0xIC0yMzEgOSAtMzU2IDYwIC0zMiAxMyAtNjQgMjQgLTcwIDI0IC04IDAgLTM0OSAtNjc3IC0zNDkgLTY5NCAwCi0yIDMyIC0yMyA3MiAtNDYgODQgLTUwIDIxMyAtMTcxIDI3MyAtMjU1IDEzMyAtMTg4IDIwMCAtNDMyIDE3NiAtNjQ3IC0xNAotMTIzIC0zNCAtMTk3IC04NiAtMzIwIC02IC0xNCA0OSAtNDUgMzQzIC0xOTIgbDM0OSAtMTc1IDU2IDg3IGMxMjggMTk5IDMxMgozMzYgNTUyIDQwOCA4MiAyNSAxMDQgMjggMjUwIDI3IDE3MyAwIDI1NyAtMTUgMzcxIC02NyA0MiAtMjAgNTUgLTIyIDY0IC0xMgoxMyAxNiAzNDIgNjg4IDMzOCA2OTAgLTIwMyAxMzIgLTI3OSAyMDEgLTM2MyAzMzAgLTE2NiAyNTQgLTIwNiA1NTAgLTExMSA4MjYKMTggNTIgMzYgMTAzIDQwIDExMiA3IDE0IC00NiA0NCAtMzQyIDE5MiBsLTM0OSAxNzUgLTU3IC04OXoiLz4KPC9nPgo8L3N2Zz4K");
}

.fasn8-sll-sep-icon {
	display: inline-block;
	vertical-align: middle;
	width: var(--fasn8-sll-sep-size);
	height: var(--fasn8-sll-sep-size);
	margin: 0 var(--fasn8-sll-sep-gap);
	background-image: var(--fasn8-sll-sep-img);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: var(--fasn8-sll-sep-opacity);
	transform: translateY(1px);
}

.fasn8-sll-subcats {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 .5rem;
	margin: .25rem 0 1rem;
}

.fasn8-sll-subcat-link {
	text-decoration: none;
}

.fasn8-sll-subcat-link:hover,
.fasn8-sll-subcat-link:focus-visible {
	text-decoration: underline;
}

.fasn8-sll-subcat-sep {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.fasn8-sll-subcat-sep .fasn8-sll-sep-icon {
	margin: 0 .35em;
}

#the-list .fasn8-sll-url-full{
	display:inline-block;
	max-width:520px;
	word-break:break-word;
	overflow-wrap:anywhere;
}
