/* Erzeugeruebersicht, Vorlage "standard" (0.9.102, Praefix tp-ez) nach dem freigegebenen Mockup "Erzeuger am Gardasee".
   Baut auf tp-place-list.css, tp-place-list-karte.css und tp-unterkunft-liste.css auf (aktive Filter, Seitenwechsel,
   Kartenausschnitt); alles Gestalterische der Uebersicht steht hier.
   RAHMEN: derselbe zentrierte Inhaltsrahmen wie das Erzeugerprofil - hoechstens 1256 px, seitlich 16 px (Handy) bzw. 32 px.
   Die Seite /erzeuger/ nutzt die volle Breite des Themes (ast-page-builder-template); der Rahmen entsteht hier.
   Farben MyLove: Text #173247, Akzent #D81F84, Blau #009FE3, Link #006B99, Linie #D9E6ED, Flaeche #F2F8FB.
   Keine Schriften, keine Fremdressourcen. */

.tp-ez{--ez-akzent:#D81F84;--ez-blau:#009FE3;--ez-link:#006B99;--ez-linie:#D9E6ED;--ez-tinte:#173247;--ez-leise:#4F6474;--ez-flaeche:#F2F8FB;--ez-serif:var(--lk-serif,Georgia,"Iowan Old Style","Palatino Linotype",Palatino,serif);--ez-rand:16px;--ez-max:1256px}
@media (min-width:545px){.tp-ez{--ez-rand:32px}}
.tp-place-list .tp-ez,.tp-ez{box-sizing:border-box;width:min(var(--ez-max),calc(100% - 2 * var(--ez-rand)));max-width:none;margin-left:auto;margin-right:auto;padding:0;color:var(--ez-tinte)}
.tp-ez *,.tp-ez *::before,.tp-ez *::after{box-sizing:border-box}
.tp-ez .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Hero (0.9.103): dieselbe Komponente und dieselben Regeln wie die Restaurantuebersicht (tp-hero*, tp-place-list-karte.css):
   randlos ueber die Seitenbreite, Hoehe clamp(300px,34vw,520px), mobil Bild frei und Titel darunter. Hier nur: Schrift des Portals
   (erbt vom Seitentext) und die Bildlage des gewaehlten Panoramas. */
.tp-lk.tp-ez .tp-hero .tp-hero__titel{font-family:inherit}
.tp-lk.tp-ez .tp-hero__bild img{object-position:50% 60%}

.tp-ez-krume ol{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:.6rem 0 .4rem;padding:0;font-size:.85rem}
.tp-ez-krume li{margin:0}
.tp-ez-krume li+li::before{content:"/";margin-right:.4rem;color:var(--ez-leise)}
.tp-ez .tp-ez-krume a{color:var(--ez-tinte);text-decoration:underline;text-underline-offset:2px}

/* Filterflaeche im Rahmen: Arten als Chips, darunter Ort + Suche; Besuchsangebote rechts daneben */
.tp-ez-werkzeug{margin:.6rem 0 1.3rem;padding:1.1rem 1.4rem 1.2rem;border-radius:14px;background:var(--ez-flaeche);border:1px solid var(--ez-linie)}
.tp-ez-werkzeug__links{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);grid-template-areas:"arten besuch" "suche besuch";grid-template-rows:auto 1fr;gap:.8rem 2rem}
.tp-ez-gruppe--arten{grid-area:arten;min-width:0}
.tp-ez-schalter{display:none}
.tp-ez-filter{display:contents}
.tp-ez-suche{grid-area:suche;align-self:start;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:.6rem;margin:0}
.tp-ez-gruppe--besuch{grid-area:besuch;min-width:0;padding-left:2rem;border-left:1px solid var(--ez-linie);align-self:stretch}
.tp-ez-gruppe__titel{margin:0 0 .55rem;font-size:.92rem;font-weight:700;color:var(--ez-tinte)}
.tp-ez-gruppe__hinweis{margin:.55rem 0 0;font-size:.8rem;line-height:1.4;color:var(--ez-leise)}
.tp-ez ul.tp-ez-chips,.tp-ez-chips{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}
.tp-ez ul.tp-ez-chips li{margin:0;padding:0}
.tp-ez ol.tp-ez-karten,.tp-ez ul.tp-ez-k__merkmale,.tp-ez ul.tp-ulf__aktiv-liste,.tp-ez .tp-ez-krume ol{margin-left:0;padding-left:0}
.tp-ez .tp-ez-chip,.tp-ez a.tp-ez-chip:visited,.tp-ul .tp-ez-chip.tp-ulf-chip{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.25rem .9rem;border:1px solid var(--ez-linie);border-radius:999px;background:#fff;color:var(--ez-tinte);font-size:.9rem;font-weight:500;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer}
.tp-ez a.tp-ez-chip:hover{border-color:var(--ez-blau)}
.tp-ez a.tp-ez-chip,.tp-ez a.tp-ez-chip:hover,.tp-ez a.tp-ez-chip:focus,.tp-ez a.tp-ez-chip:visited{text-decoration:none}
.tp-ez a.tp-ez-chip.is-an,.tp-ul a.tp-ez-chip.tp-ulf-chip.is-an{background:var(--ez-blau);border-color:var(--ez-blau);color:#fff;font-weight:600}
.tp-ez .tp-ez-chip.is-aus{color:#8A99A4;background:transparent;cursor:default}
.tp-ez .tp-ez-chip .tp-ulf-chip__zahl{font-size:.78rem;opacity:.75}
.tp-ez .tp-ez-chip__haken{display:inline-flex}
.tp-ez a.tp-ez-chip:focus-visible{outline:2px solid var(--ez-tinte);outline-offset:2px}

.tp-ez-suche__feld{position:relative;min-width:0}
.tp-ez .tp-ez-suche select,.tp-ez .tp-ez-suche input[type=search]{display:block;width:100%;height:44px;margin:0;padding:0 .8rem 0 2.1rem;border:1px solid #B9CAD5;border-radius:8px;background:#fff;color:var(--ez-tinte);font:inherit;font-size:.95rem}
.tp-ez .tp-ez-suche input[type=search]{padding-left:.9rem;padding-right:2.9rem}
.tp-ez-suche__ico{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--ez-tinte);pointer-events:none;display:inline-flex}
.tp-place-list .tp-ez .tp-ez-suche .tp-btn,.tp-ez .tp-ez-suche .tp-btn{position:absolute;right:3px;top:3px;width:38px;height:38px;min-height:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--ez-tinte);cursor:pointer}
.tp-ez .tp-ez-suche .tp-btn:hover{background:var(--ez-flaeche)}

.tp-ez-aktiv{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.85rem}
.tp-ez a.tp-ulf__reset,.tp-ez a.tp-ulf__reset:visited,.tp-ez a.tp-ez-alle,.tp-ez a.tp-ez-alle:visited{font-size:.88rem;font-weight:600;color:var(--ez-link);text-decoration:underline;text-underline-offset:2px}

/* Ergebnisleiste */
.tp-ez-ergebnis{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;margin:0 0 .9rem}
.tp-ul .tp-ez-ergebnis .tp-ulf__treffer{margin:0;font-family:var(--ez-serif);font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.2;color:var(--ez-tinte)}
.tp-ez-ergebnis .tp-ulf__treffer strong{font-weight:700}
.tp-ez-ergebnis__rechts{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}
.tp-ez-sortierung{margin:0;padding:.45rem .85rem;border:1px solid var(--ez-linie);border-radius:8px;background:#fff;font-size:.85rem;color:var(--ez-tinte)}
.tp-ez .tp-ez-schalter__knopf,.tp-ez a.tp-ez-schalter__knopf:visited{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:40px;padding:0 .9rem;border:1px solid var(--ez-linie);border-radius:8px;background:#fff;color:var(--ez-link);font:inherit;font-size:.9rem;font-weight:600;text-decoration:none;cursor:pointer}
.tp-ez .tp-ez-schalter__knopf.is-an{border:2px solid var(--ez-akzent)}
.tp-ez .tp-ez-schalter__knopf .tp-ulf__anzahl{margin-left:.15rem}
.tp-ez .tp-ez-nur-mobil{display:none}

/* Raster: Liste, optional Karte rechts (nur wenn die Karte freigegeben ist) */
.tp-ez .tp-ez-raster{display:flex;flex-direction:column;gap:1.25rem}
.tp-ez .tp-ez-liste{min-width:0}
.tp-ez .tp-ez-karte{min-width:0;order:-1}
.tp-ez .tp-ez-karte .tp-lk-box{margin:0}
.tp-ez .tp-ez-karte__leer{margin:0;font-size:.9rem;color:var(--ez-leise)}

/* Betriebskarten: feste Spaltenbreite - ein einzelner Treffer bleibt so breit wie eine Karte im Raster */
.tp-ez .tp-ez-karten{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.tp-ez .tp-ez-k{display:flex;flex-direction:column;min-width:0;margin:0;background:#fff;border:1px solid var(--ez-linie);border-radius:12px;overflow:hidden;scroll-margin-top:6rem;transition:border-color .2s,box-shadow .2s}
.tp-ez .tp-ez-k::marker{content:""}
.tp-ez .tp-ez-k:focus-within,.tp-ez .tp-ez-k:target{border-color:var(--ez-akzent);box-shadow:0 0 0 3px rgba(216,31,132,.18)}
.tp-ez .tp-ez-k__bild{position:relative;aspect-ratio:16/9;background:linear-gradient(160deg,#EAF5FB 0%,#D6EAF4 100%)}
.tp-ez .tp-ez-k__bild img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.tp-ez .tp-ez-k__bild .tp-lk-motiv{color:#5B8CA5}
.tp-ez .tp-ez-k__bild .tp-lk-motiv em{color:#3E6A82}
.tp-ez .tp-ez-k__text{display:flex;flex-direction:column;flex:1 1 auto;gap:.35rem;padding:.75rem 1rem 1rem;min-width:0}
.tp-ez .tp-ez-k__ort{display:flex;align-items:center;gap:.3rem;margin:0;font-size:.82rem;color:var(--ez-leise)}
.tp-ez .tp-ez-k__name{margin:0;font-family:var(--ez-serif);font-size:1.22rem;line-height:1.22;font-weight:700;overflow-wrap:anywhere}
.tp-ez .tp-ez-k__name a,.tp-ez .tp-ez-k__name a:visited{color:var(--ez-tinte);text-decoration:none}
.tp-ez .tp-ez-k__name a:hover{text-decoration:underline}
.tp-ez .tp-ez-k__kurz{margin:0;font-size:.86rem;line-height:1.45;color:var(--ez-leise);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tp-ez .tp-ez-k__merkmale{list-style:none;margin:.15rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}
.tp-ez .tp-ez-k__merkmale li{margin:0;padding:.2rem .7rem;border:1px solid #BFD9E8;border-radius:999px;background:#F5FAFD;font-size:.8rem;color:var(--ez-tinte)}
.tp-ez .tp-ez-k__merkmale li::marker{content:""}
.tp-ez .tp-ez-k__aktion{margin:auto 0 0;padding-top:.55rem}
.tp-place-list .tp-ez .tp-ez-k__aktion a.tp-btn,.tp-place-list .tp-ez .tp-ez-k__aktion a.tp-btn:visited,.tp-ez .tp-ez-k__aktion a.tp-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:42px;padding:0 1.15rem;border:0;border-radius:8px;background:var(--ez-akzent);color:#fff;font-size:.95rem;font-weight:700;text-decoration:none}
.tp-ez .tp-ez-k__aktion a.tp-btn:hover{filter:brightness(.93)}
.tp-ez .tp-ez-k__aktion a.tp-btn::after{content:"\2192";font-weight:700}
.tp-place-list .tp-ez .tp-empty .tp-btn{color:#fff;text-decoration:none}

.tp-ez .tp-ul-bereich{margin:0 0 .75rem}
.tp-ez .tp-ul-seiten{margin-top:1.5rem}
.tp-ez .tp-empty__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}

@media (min-width:641px){
	.tp-ez .tp-ez-karten{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1100px){
	.tp-ez .tp-ez-karten{grid-template-columns:repeat(3,minmax(0,1fr))}
	.tp-ez .tp-ez-raster.hat-karte{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:1.25rem;align-items:start}
	.tp-ez .tp-ez-raster.hat-karte .tp-ez-karte{order:0;position:sticky;top:1rem}
	.tp-ez .tp-ez-raster.hat-karte .tp-ez-karten{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Tablet: Besuch unter Arten/Suche */
@media (max-width:959px){
	.tp-ez-werkzeug__links{grid-template-columns:minmax(0,1fr);grid-template-areas:"arten" "suche" "besuch";grid-template-rows:auto}
	.tp-ez-gruppe--besuch{padding-left:0;border-left:0}
}

/* Handy: eine Spalte, Arten als wischbare Chipzeile, Ort/Suche/Besuch hinter dem Knopf "Filter" */
@media (max-width:767px){
	.tp-ez-werkzeug{padding:.9rem .9rem 1rem;margin-top:.5rem}
	.tp-ez-werkzeug__links{display:block}
	.tp-ez ul.tp-ez-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:0 0 .35rem;scrollbar-width:thin}
	.tp-ez ul.tp-ez-chips li{flex:0 0 auto;scroll-snap-align:start}
	.tp-ez ul.tp-ez-chips--besuch{flex-wrap:wrap;overflow:visible}
	.tp-ez-schalter{display:flex;gap:.6rem;margin:.75rem 0 0}
	.tp-ez .tp-ez-schalter__knopf{flex:1 1 0;min-height:44px}
	.tp-ez .tp-ez-nur-mobil{display:inline-flex}
	.tp-ez .tp-ez-nur-gross{display:none}
	.tp-ez-filter{display:block;margin-top:.8rem}
	.tp-ez-filter[hidden]{display:none}
	.tp-ez-suche{grid-template-columns:minmax(0,1fr)}
	.tp-ez-gruppe--besuch{margin-top:.9rem}
	.tp-ez-ergebnis{margin-bottom:.7rem}
	.tp-ez-sortierung{font-size:.8rem;padding:.35rem .6rem}
}
@media (prefers-reduced-motion:reduce){
	.tp-ez .tp-ez-k{transition:none}
}

/* 0.9.104 Erzeugerkarte: Einwilligung, Popups, Handy-Ansicht */
.tp-ez .tp-ez-karte__kopf{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 .5rem}
.tp-ez .tp-ez-karte__titel{margin:0;font-weight:700;font-size:1rem}
.tp-ez .tp-ez-karte__zu{font-size:.9rem;text-decoration:underline;white-space:nowrap}
.tp-ez .tp-ez-karte__pins{position:absolute;inset:0;z-index:2}
.tp-ez .tp-ez-karte.is-gesperrt .tp-ez-karte__pins{display:none}
.tp-ez .tp-ez-karte.is-gesperrt .tp-lk-map{background:#E9E4D6;min-height:260px}
.tp-ez .tp-ez-karte__sperre{display:none;position:absolute;inset:0;z-index:3;padding:1rem;overflow:auto;background:rgba(255,255,255,.96);flex-direction:column;justify-content:center;gap:.5rem;font-size:.88rem;line-height:1.45}
.tp-ez .tp-ez-karte.is-gesperrt .tp-ez-karte__sperre{display:flex}
.tp-ez .tp-ez-karte__sperre-titel{margin:0;font-weight:700;font-size:1rem}
.tp-ez .tp-ez-karte__sperre-text,.tp-ez .tp-ez-karte__sperre-aktion{margin:0}
.tp-ez .tp-ez-karte__sperre-fehler{display:block;color:#8a2c0d;font-weight:600}
.tp-ez .tp-ez-karte__hinweis{margin:.35rem .3rem 0;font-size:.82rem;color:var(--ez-leise)}
.tp-ez .tp-ez-karte__widerruf{margin:.3rem .3rem 0;font-size:.8rem}
.tp-ez .tp-ez-karte__linkknopf{background:none;border:0;padding:0;font:inherit;text-decoration:underline;cursor:pointer;color:inherit}
.tp-ez .tp-ez-pop{position:absolute;z-index:4;transform:translate(-50%,calc(-100% - 20px));min-width:150px;max-width:230px;padding:.5rem .65rem;background:#fff;border-radius:8px;box-shadow:0 3px 14px rgba(0,0,0,.3);font-size:.85rem;line-height:1.35}
.tp-ez .tp-ez-pop[hidden]{display:none}
.tp-ez .tp-ez-pop ul{list-style:none;margin:0;padding:0}
.tp-ez .tp-ez-pop li{margin:0 0 .3rem}
.tp-ez .tp-ez-pop li:last-child{margin:0}
.tp-ez .tp-ez-pop a{display:inline-block;margin-left:.35rem;font-weight:600;text-decoration:underline}
.tp-ez .tp-ez-pop__hinweis{margin:.25rem 0 0;font-size:.75rem;color:var(--ez-leise)}
@media (max-width:767px){
.tp-ez .tp-ez-raster.hat-karte .tp-ez-karte{position:fixed;inset:0;z-index:999990;order:0;background:#fff;overflow:auto;padding:.75rem;box-sizing:border-box}
.tp-ez .tp-ez-raster.hat-karte .tp-ez-karte__zu{min-height:44px;display:inline-flex;align-items:center;padding:0 .5rem}
.tp-ez .tp-ez-raster.hat-karte .tp-lk-map{aspect-ratio:auto;height:min(70vh,520px)}
}
@media (min-width:768px){
.tp-ez .tp-ez-karte__zu{display:none}
}

/* Die gemeinsame Regel blendet .tp-lk-box--karte auf dem Handy aus; die Erzeugerkarte ist dort eine eigene, schliessbare Ansicht. */
.tp-ez .tp-ez-karte .tp-lk-box--karte{display:block}

.tp-ez [data-tp-karte-fehler][hidden],.tp-ez [data-tp-karte-laden][hidden],.tp-ez [data-tp-karte-widerruf][hidden]{display:none!important}

/* 0.9.122 Erzeugerkarte: verschiebbar und zoombar (Leaflet) mit Clustern */
.tp-ez .tp-ez-karte.is-leaflet .tp-lk-map__kacheln,.tp-ez .tp-ez-karte.is-leaflet .tp-ez-karte__pins{display:none}
.tp-ez .tp-ez-lmap{position:absolute;inset:0;z-index:0;isolation:isolate;background:#E9E4D6;font:inherit;border-radius:inherit}
.tp-ez .tp-ez-lmap .leaflet-tile-pane{filter:saturate(.72) sepia(.12) contrast(.96)}
.tp-ez .tp-ez-lmap .leaflet-control-zoom a{width:34px;height:34px;line-height:34px;color:#173247}
.tp-ez .tp-ez-lmap .leaflet-control-attribution{font-size:.68rem}
.tp-ez .tp-ez-marker,.tp-ez .tp-ez-cluster{display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:50%;font-weight:700;line-height:1;text-align:center}
.tp-ez .tp-ez-marker{background:var(--lk-oliv,#3D3F1B);border:2px solid #fff;box-shadow:0 2px 7px rgba(0,0,0,.3);color:#fff;font-size:.74rem}
.tp-ez .tp-ez-marker:hover,.tp-ez .tp-ez-marker:focus-visible{background:var(--lk-terra,#B5532C)}
.tp-ez .tp-ez-marker.is-ungefaehr{background:rgba(255,255,255,.85);border:2px dashed var(--lk-oliv,#3D3F1B);box-shadow:0 0 0 6px rgba(61,63,27,.12);color:var(--lk-oliv,#3D3F1B)}
.tp-ez .tp-ez-cluster{background:var(--lk-gold,#B8A26A);border:3px solid #fff;box-shadow:0 0 0 5px rgba(184,162,106,.35),0 3px 8px rgba(0,0,0,.25);color:#2B2D13;font-size:.9rem}
.tp-ez .tp-ez-lmap .leaflet-marker-icon:focus-visible{outline:3px solid #173247;outline-offset:3px}
.tp-ez .tp-ez-lmap .leaflet-popup-content{margin:.6rem .8rem;font-size:.85rem;line-height:1.35}
.tp-ez .tp-ez-lmap .leaflet-popup-content p{margin:.25rem 0 0}
.tp-ez .tp-ez-lpop a{margin-left:.35rem;font-weight:600;text-decoration:underline;color:var(--ez-link,#006B99)}
.tp-ez .tp-ez-lpop__hinweis{font-size:.75rem;color:var(--ez-leise,#4F6474)}
.tp-ez [data-tp-karte-bedienung][hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){.tp-ez .tp-ez-lmap .leaflet-zoom-anim .leaflet-zoom-animated,.tp-ez .tp-ez-lmap .marker-cluster,.tp-ez .tp-ez-lmap .leaflet-marker-icon{transition:none!important}}

/* 0.9.124 KI-Kennzeichnung: EU-Symbol "AI GENERATED" unten links auf dem Kartenbild (Nummer sitzt oben links). */
.tp-ez .tp-ez-k__bild .tp-ki-marke{position:absolute;right:6px;bottom:6px;z-index:2;display:block;box-sizing:content-box;width:76px;padding:0;background:none;border-radius:0;line-height:0;pointer-events:none}
.tp-ez .tp-ez-k__bild .tp-ki-marke img{position:static;inset:auto;display:block;width:100%;height:auto;aspect-ratio:1385/267;object-fit:fill;object-position:50% 50%}
.tp-ez .tp-bild-fehlt .tp-ki-marke{display:none}
@media (max-width:640px){.tp-ez .tp-ez-k__bild .tp-ki-marke{width:68px;right:5px;bottom:5px}}
