/* Verkleid-o-Mat – vollstaendiges Werkzeug.
 * Farben/Schrift aus den Globalstilen bzw. Snippet 695 (--kk-*), mit Rueckfallwerten,
 * damit das Plugin auch ohne diese Snippets lesbar bleibt. Keine Fremdanfragen.
 * Der Kurzeinstieg auf der Startseite nutzt die bestehenden .kk-finder-Styles (695). */
.vom{
	--vom-berry:var(--kk-berry,#C81D4A);
	--vom-rubin:var(--kk-rubin,#9E1236);
	--vom-tinte:var(--kk-tinte,#1E1B1D);
	--vom-muted:var(--kk-muted,#5E4A50);
	--vom-papier:var(--kk-papier,#F6EEEC);
	--vom-line:var(--kk-line,#E2D3D0);
	--vom-edge:var(--kk-edge,#D9C3C8);
	--vom-teal:var(--kk-teal,#0F766E);
	color:var(--vom-tinte);
	font-size:16px;
	line-height:1.5;
	margin-block:8px 32px;
}
/* Seiteninhalt ist auf 650px begrenzt (Snippet 563); das Werkzeug braucht mehr Breite.
   !important noetig: das WP-Layout setzt fuer Kinder von .is-layout-constrained
   max-width und margin-left/right:auto mit !important (live gemessen 24.09.2026). */
@media (min-width:760px){
	.vom{width:min(1140px,calc(100vw - 64px));max-width:none !important;margin-left:calc(50% - min(570px,calc(50vw - 32px))) !important;margin-right:0 !important;}
}
.vom [hidden]{display:none !important;}
/* div.vom: eine Stufe spezifischer als .entry-content p (Blocksatz ab 600px, Snippet 563). */
div.vom p{text-align:left;hyphens:manual;margin:0;}
.vom .vom-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.vom a:focus-visible,.vom button:focus-visible,.vom summary:focus-visible,.vom .vom-ergebnisse:focus-visible{outline:3px solid var(--vom-tinte);outline-offset:2px;border-radius:6px;}
.vom .vom-ergebnisse:focus{outline:none;}
.vom .vom-ergebnisse:focus-visible{outline:3px solid var(--vom-tinte);}

.vom-raster{display:grid;gap:24px;align-items:start;}
@media (min-width:1080px){.vom-raster{grid-template-columns:340px minmax(0,1fr);gap:32px;}}

.vom .vom-h{margin:0;font-size:20px;font-weight:800;line-height:1.3;letter-spacing:-.01em;border:0;padding:0;}

/* Formular */
.vom-form{background:#fff;border:1px solid var(--vom-line);border-radius:14px;padding:20px;}
.vom .vom-intro{margin-top:4px;font-size:14px;color:var(--vom-muted);}
.vom .vom-sprung{margin-top:12px;font-size:15px;font-weight:700;}
.vom .vom-sprung a{display:inline-flex;align-items:center;min-height:44px;color:var(--vom-rubin);}
@media (min-width:1080px){.vom .vom-sprung{display:none;}}
.vom-krit{margin:18px 0 0;padding:0;border:0;min-width:0;}
.vom-krit legend{margin:0 0 6px;padding:0;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--vom-tinte);}
.vom .vom-hilfe{margin:-2px 0 8px;font-size:13px;line-height:1.45;color:var(--vom-muted);}
.vom-optionen{display:flex;flex-wrap:wrap;gap:8px;}
.vom-opt{position:relative;display:inline-flex;}
.vom-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.vom-opt label{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 8px 0 14px;border:1px solid var(--vom-edge);border-radius:999px;background:#fff;font-size:14px;font-weight:600;line-height:1.2;color:var(--vom-tinte);cursor:pointer;}
.vom-opt--egal label{padding-right:14px;border-style:dashed;color:var(--vom-muted);}
.vom-n{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;box-sizing:border-box;border-radius:999px;background:var(--vom-papier);color:var(--vom-muted);font-size:12px;font-weight:700;}
.vom-opt input:checked + label{background:var(--vom-berry);border-color:var(--vom-berry);border-style:solid;color:#fff;}
.vom-opt input:checked + label .vom-n{background:var(--vom-rubin);color:#fff;}
.vom-opt input:focus-visible + label{outline:3px solid var(--vom-tinte);outline-offset:2px;}
.vom-opt input:hover + label{border-color:var(--vom-berry);}
.vom-form-fuss{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:22px;}
.vom-btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 22px;border:0;border-radius:10px;background:var(--vom-berry);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;}
.vom-btn:hover{background:var(--vom-rubin);}
.vom .vom-reset{display:inline-flex;align-items:center;min-height:44px;color:var(--vom-rubin);font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:3px;}

/* Ergebnisse */
.vom .vom-status{margin-top:6px;font-size:16px;font-weight:700;}
.vom-aktiv{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px;}
.vom .vom-aktiv-t{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--vom-muted);}
.vom .vom-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
.vom .vom-chips li{margin:0;padding:0;}
.vom .vom-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px 0 14px;border-radius:999px;background:var(--vom-papier);color:var(--vom-tinte);font-size:14px;font-weight:600;text-decoration:none;}
.vom .vom-chip:hover{background:#fff;box-shadow:inset 0 0 0 1px var(--vom-berry);}
.vom .vom-x{font-size:18px;line-height:1;color:var(--vom-rubin);}
.vom .vom-leer{margin-top:16px;padding:16px 18px;border-radius:12px;background:var(--vom-papier);}

.vom .vom-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:18px 0 0;padding:0;list-style:none;}
.vom .vom-karte{display:flex;flex-direction:column;margin:0;padding:0;background:#fff;border:1px solid var(--vom-line);border-radius:14px;overflow:hidden;}
.vom .vom-bild{margin:0;}
.vom .vom-bild a{display:block;}
.vom .vom-bild img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:0;}
.vom .vom-karte-text{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;}
.vom .vom-urteil{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--vom-tinte);}
.vom .vom-urteil::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--vom-teal);}
.vom-liste--neben .vom-urteil::before{background:var(--vom-muted);}
.vom .vom-karte-titel{margin:0;padding:0;border:0;font-size:17px;font-weight:700;line-height:1.3;}
.vom .vom-karte-titel a{color:var(--vom-tinte);text-decoration:none;}
.vom .vom-karte-titel a:hover{color:var(--vom-berry);text-decoration:underline;}
.vom .vom-gruende{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;font-size:14px;line-height:1.45;color:var(--vom-muted);}
.vom .vom-gruende:empty{display:none;}
.vom .vom-grund{margin:0;padding:0 0 0 14px;position:relative;}
.vom .vom-grund::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--vom-teal);}
.vom .vom-grund--0::before{background:var(--vom-berry);}
.vom .vom-grund strong{color:var(--vom-tinte);}
.vom .vom-offen,.vom .vom-karte-meta{font-size:13px;color:var(--vom-muted);}
.vom .vom-auszug{font-size:14px;line-height:1.5;color:var(--vom-muted);}
.vom .vom-gruende:not(:empty) ~ .vom-auszug{display:none;}

.vom-neben{margin-top:22px;border-top:1px solid var(--vom-line);padding-top:14px;}
.vom-neben summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-weight:700;font-size:16px;}
.vom .vom-hinweis{margin-top:24px;font-size:13px;line-height:1.5;color:var(--vom-muted);}

/* Unter 1080px stehen die Ergebnisse unter dem langen Formular: Knopf mit Trefferzahl
   bleibt beim Scrollen durch die Kriterien am unteren Rand sichtbar. */
@media (max-width:1079px){
	.vom-form-fuss{position:sticky;bottom:0;z-index:2;flex-wrap:nowrap;margin:22px -20px -20px;padding:10px 20px;background:#fff;border-top:1px solid var(--vom-line);border-radius:0 0 14px 14px;}
}
@media (max-width:599px){
	.vom-form-fuss{margin:22px -16px -16px;padding:10px 16px;}
	.vom-btn{flex:1 1 auto;padding:0 14px;}
	.vom-form{padding:16px;}
	.vom .vom-liste{grid-template-columns:minmax(0,1fr);}
	.vom h1,.vom h2,.vom h3{hyphens:auto;overflow-wrap:break-word;}
}
@media (prefers-reduced-motion:no-preference){
	.vom-opt label,.vom .vom-chip,.vom-btn{transition:background-color .15s,border-color .15s,box-shadow .15s;}
}
