/* map-inline.css
   Ausgelagert aus dem Before-</body>-Feld der Map-Seite, 11.08.2026.
   Wird an exakt derselben Stelle eingebunden wie vorher der <style>-Block,
   also VOR map-page.css. Reihenfolge nicht vertauschen, sonst kippen
   Regeln, die sich mit map-page.css ueberschneiden.

   v3.0.2 (04.09.2026): Timeline-Card-Bookmark ohne Schatten (Icon schwarz gefuellt, kommt aus dem Drawer-Script).
   v3.0.0 (04.09.2026)
   - Herz -> Bookmark (Pins, Timeline-Cards, Drawer, Saved-Filter)
   - Featured-Pins entfernt; die globalen Pin-Regeln, die vorher das
     Inline-Featured-Script injiziert hat (18px / 22px active, cursor,
     overflow, Hit-Area), leben jetzt hier.
   - Saved Pin = normaler Laenderring + Bookmark (::after) oben rechts.
   - Past-Pins: Fade kommt aus dem SVG (pin-colors.js), nicht mehr via opacity,
     damit das Bookmark auf einem gespeicherten Past-Event deckend bleibt.
*/

.dt-drawer{transition:none!important}
.dt-article-badge{color:#ffffff!important}
.cru-ncf-tooltip{pointer-events:none!important}
.ncf-tooltip-pop-up-wrapper{pointer-events:none!important}
.dt-transitions-ready .dt-drawer{transition:transform 0.35s cubic-bezier(0.32,0.72,0,1)!important}
@media(max-width:767px){body{background-color:#000!important}
.dt-drawer-actions{padding:16px 33px max(24px,env(safe-area-inset-bottom,24px))!important;background:#fff!important;margin:0 -1px}
.dt-drawer{background:#fff!important;overflow:hidden!important}
.dt-drawer:not(.is-active) .dt-drawer-actions,.dt-drawer:not(.is-active) .dt-drawer-body{visibility:hidden}
}
.dt-weather-badge{position:absolute;bottom:20px;right:20px;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.dt-weather-badge img{width:56px;height:56px;filter:brightness(0) invert(1)}
.dt-weather-temp{color:#fff;font-size:.9rem;font-weight:500;line-height:1;text-align:center;padding-top:5px}
.dt-drawer-price{font-weight:400;letter-spacing:.1em}
.dt-drawer-price .price-active{color:#000}
.dt-drawer-price .price-inactive{color:rgba(0,0,0,.2)}
.dt-drawer-close:focus,.dt-drawer-close:focus-visible,.dt-drawer-favorite:focus,.dt-drawer-favorite:focus-visible{outline:none;box-shadow:none}

/* Timeline-Card: Bookmark oben rechts, nur sichtbar wenn gespeichert */
.dt-list-saved{position:absolute;top:14px;right:18px;opacity:0;pointer-events:none;transition:opacity .2s ease}
.dt-list-saved.is-visible{opacity:1}
.dt-list-saved svg{display:block}

/* Drawer: Save-Pill (Basis-Styles im Site-Head, hier nur die Map-Overrides) */
.dt-drawer-favorite{color:#fff}
.dt-drawer-favorite.is-favorited{color:#fff}

.dt-drawer-social .directions:hover svg path{stroke:#018000!important}
.dt-drawer-offer-info{background:#393939;border-radius:8px;padding:24px;margin-top:16px;display:flex;align-items:flex-start;gap:8px;color:#fff;width: 50%}
.dt-drawer-offer-info svg{flex-shrink:0;width:22px;height:22px;margin-top:-2px;display:none}
.dt-offer-content{flex:1;display:flex;flex-direction:column;gap:16px}
.dt-offer-title{font-weight:400;font-family: Sonnygothiccondensed, Arial, sans-serif;font-size:1.3rem;line-height: 1.2}
.dt-offer-text{font-size:1rem;line-height:1.2;font-weight:300;display:none!important}
.dt-offer-link{display:inline-flex;align-items:center;gap:2px;color:#FFF;font-weight:300;line-height:1.3;text-decoration:none;transition:gap .2s ease}
.dt-offer-link:hover{gap:5px;text-decoration:none}
.dt-offer-link svg{width:14px;height:14px;margin-top:2px}
.dt-drawer-past-badge-inline{display:inline-block;background:#000;color:#fff;padding:4px 8px;border-radius:4px;font-size:9px;font-weight:500;margin-left:0;white-space:nowrap;line-height:1.2;margin-top:-3px}
#dt-drawer-date.is-past>span:not(#dt-drawer-past-badge){text-decoration:line-through;opacity:1}
.ncf-filter-chip.active{background-color:#fff;font-size:1rem;font-weight:400;color:#000}

/* ── Pins: globale Regeln (vorher im Inline-Featured-Script) ── */
.mapboxgl-marker{overflow:visible!important}
.cru-ncf-pin{cursor:pointer!important;overflow:visible!important;transition:transform .3s cubic-bezier(.34,1.56,.64,1);margin-top:-5px;margin-left:5px!important}
.cru-ncf-pin[ncf-pinstyle="default"]{width:18px!important;height:18px!important;border-radius:50%;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}
.cru-ncf-pin[ncf-pinstyle="default"].active{width:22px!important;height:22px!important}
.cru-ncf-pin[ncf-pinstyle="default"]::before{content:'';position:absolute;top:-10px;left:-4px;right:-4px;height:14px;background:transparent}
.cru-ncf-pin.active{z-index:700;position:relative;margin-top:-5px;margin-left:5px!important}
@media(hover:hover){.cru-ncf-pin:hover{transform:scale(1.2)!important;cursor:pointer}
}
.mapboxgl-marker [class*="tooltip"],.mapboxgl-marker [class*="ncf-tip"],.mapboxgl-marker [class*="popup"],.mapboxgl-marker [class*="label"]{pointer-events:none!important}

/* ── Saved Pin: Laenderring bleibt, Bookmark (8x8 bei 18px) oben rechts ── */
.cru-ncf-pin.is-favorite-pin,.cru-ncf-pin.animate-unfavorite{position:relative}
.cru-ncf-pin.is-favorite-pin::after,.cru-ncf-pin.animate-unfavorite::after{content:'';position:absolute;top:-9%;right:-7%;width:44%;height:44%;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M17.25 3H6.75C6.35218 3 5.97064 3.15804 5.68934 3.43934C5.40804 3.72064 5.25 4.10218 5.25 4.5V21C5.25007 21.1338 5.28595 21.2652 5.35393 21.3805C5.42191 21.4958 5.5195 21.5908 5.63659 21.6557C5.75367 21.7206 5.88598 21.7529 6.01978 21.7494C6.15358 21.7458 6.284 21.7066 6.3975 21.6356L12 18.1341L17.6034 21.6356C17.7169 21.7063 17.8472 21.7454 17.9809 21.7488C18.1146 21.7522 18.2467 21.7198 18.3636 21.655C18.4806 21.5902 18.5781 21.4953 18.646 21.3801C18.7139 21.2649 18.7498 21.1337 18.75 21V4.5C18.75 4.10218 18.592 3.72064 18.3107 3.43934C18.0294 3.15804 17.6478 3 17.25 3Z%22 fill=%22%23ffffff%22 stroke=%22%231a1a1a%22 stroke-width=%224%22 stroke-linejoin=%22round%22 paint-order=%22stroke%22/%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.45));transform-origin:50% 50%}
@keyframes dtSavePop{0%{transform:scale(.3);opacity:0}
50%{transform:scale(1.3)}
70%{transform:scale(.9)}
100%{transform:scale(1);opacity:1}
}
@keyframes dtUnsaveShrink{0%{transform:scale(1);opacity:1}
100%{transform:scale(.3);opacity:0}
}
@keyframes dtPulseRing{0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}
100%{box-shadow:0 0 0 12px rgba(255,255,255,0)}
}
.cru-ncf-pin.animate-favorite::after{animation:dtSavePop .4s cubic-bezier(.34,1.56,.64,1) both}
.cru-ncf-pin.animate-favorite{animation:dtPulseRing .6s ease-out}
.cru-ncf-pin.animate-unfavorite::after{animation:dtUnsaveShrink .25s ease-in both}

.dt-upcoming-badge{position:absolute;top:-30px;left:-1px;z-index:10;padding:5px 9px;border-radius:4px;font-size:12px;font-weight:400;line-height:1;pointer-events:none}
.badge-happening,.badge-today,.badge-tomorrow,.badge-week{background:#ffffff6b;color:#ffffff}
.event-happening,.event-today,.event-tomorrow,.event-this-week{outline:4px solid #ffffff6b!important;outline-offset:0}

/* ── Saved-Filter-Chip ── */
.dt-favorites-filter{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.1);border:0;border-radius:4px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;user-select:none;white-space:nowrap;height:44px}
.dt-favorites-filter:hover{background:rgba(255,255,255,.15)}
.dt-favorites-filter.active{background:#FFF;color:#000}
.dt-favorites-filter svg{width:18px;height:18px;flex-shrink:0;display:block}
.dt-favorites-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:rgba(255,255,255,.2);border-radius:10px;font-size:12px;font-weight:500;line-height:1}
.dt-favorites-filter.active .dt-favorites-count{background:rgba(0,0,0,.1)}
.cru-ncf-map-list-item.dt-filtered-out{display:none!important}
.cru-ncf-pin.dt-filtered-out{display:none!important}
.ncf-tooltip-popup-inner-wrapper,.cru-ncf-tooltip,.cru-ncf-pop-up{pointer-events:none!important}
#dt-drawer-category-svg{width:16px;height:16px;flex-shrink:0}
