/* CF HOMES 3.2.54 – verkleinertes Original-Faehnchen des 360°-Planers.
   Nur ausserhalb des Planers; dessen 40x54px-Faehnchen bleibt unveraendert. */
.cf-act-card,.cfv-card,.cf-home-event-card,.cf-travel-card,.cfr-card,.cf-home-card[data-cfm360-external-key]{position:relative!important}
button.cfm360-external-flag{
  appearance:none!important;-webkit-appearance:none!important;
  position:absolute!important;z-index:14!important;
  top:-1px!important;right:10px!important;left:auto!important;bottom:auto!important;
  display:block!important;box-sizing:border-box!important;
  width:33px!important;min-width:33px!important;max-width:33px!important;
  height:45px!important;min-height:45px!important;max-height:none!important;
  margin:0!important;padding:0 0 8px!important;
  border:0!important;border-radius:0 0 10px 10px!important;
  background:linear-gradient(180deg,#edf8fa 0%,#dff1f5 100%)!important;
  color:#0b7f9a!important;box-shadow:0 6px 12px rgba(8,70,94,.15)!important;
  cursor:pointer!important;line-height:1!important;
  transition:height .16s ease,background .16s ease,box-shadow .16s ease!important;
}
button.cfm360-external-flag:before{
  content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;
  height:3px!important;background:rgba(255,255,255,.7)!important;
}
button.cfm360-external-flag span.cfm360-external-flag-heart{
  box-sizing:border-box!important;display:grid!important;place-items:center!important;
  width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;
  margin:8px auto 0!important;padding:0!important;border-radius:50%!important;
  background:#fff!important;color:#087fa8!important;
  box-shadow:0 3px 9px rgba(8,70,94,.10)!important;
}
button.cfm360-external-flag span svg{
  display:block!important;width:15px!important;height:15px!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
button.cfm360-external-flag:hover{height:48px!important;background:linear-gradient(180deg,#dff5f8 0%,#ccecf1 100%)!important}
button.cfm360-external-flag.is-saved{background:linear-gradient(180deg,#12aec2 0%,#087fa8 100%)!important;color:#087fa8!important}
button.cfm360-external-flag.is-saved span.cfm360-external-flag-heart{background:#fff!important;color:#087fa8!important}
button.cfm360-external-flag.is-saved span svg{fill:currentColor!important}
button.cfm360-external-flag:focus-visible{outline:3px solid #f0c951!important;outline-offset:3px!important}
/* Aktivitaeten: Hundepfote links vom Faehnchen. Das Rabatt-Eckdreieck
   bleibt oben rechts und wird bei Rabattkarten nicht verdeckt. */
.cf-act-card .cfh-pet-badge.cf-act-pet-badge,
.cf-act-card .cf-act-card-media.has-discount-offer .cf-act-pet-badge{
  right:52px!important;top:10px!important;z-index:10!important;
}
.cf-act-card.cfm360-external-has-discount button.cfm360-external-flag{top:57px!important}
.cf-act-card .cf-act-card-media.has-discount-offer .cf-act-pet-badge{top:61px!important}
/* Veranstaltungen: Das Faehnchen sitzt oben rechts, die Kategorie darf
   daneben auch zweizeilig oder mehrzeilig umbrechen (kein Ellipsis).
   ID-Spezifitaet benoetigt, weil das Event-Modul seine CSS-Regeln mit
   generierter Element-ID und teilweise !important direkt ausgibt. */
:is(#cfm360-external-specificity,.cfv-card).cfv-card .cfv-card-hero{
  padding-right:48px!important;
  height:auto!important;
}
:is(#cfm360-external-specificity,.cfv-card).cfv-card .cfv-card-head-main{
  min-width:0!important;max-width:100%!important;height:auto!important;
}
:is(#cfm360-external-specificity,.cfv-card).cfv-card .cfv-card-topline{
  min-width:0!important;max-width:100%!important;
  height:auto!important;flex-wrap:wrap!important;align-items:flex-start!important;
}
:is(#cfm360-external-specificity,.cfv-card).cfv-card .cfv-card-category{
  display:block!important;min-width:0!important;max-width:100%!important;
  white-space:normal!important;overflow:visible!important;
  text-overflow:clip!important;overflow-wrap:anywhere!important;
  word-break:normal!important;line-height:1.3!important;
}
.cfm360-external-popover{box-sizing:border-box;position:fixed!important;z-index:2147482500!important;width:min(308px,calc(100vw - 16px));padding:16px;border-radius:18px;border:1px solid #dcecef;background:linear-gradient(180deg,#ffffff 0%,#fbfeff 100%);color:#123f59;box-shadow:0 17px 50px rgba(12,48,79,.18);font:inherit;font-size:13px;line-height:1.5}
.cfm360-external-popover .cfm360-external-kicker{display:block;margin:0 0 2px;color:#0089a9;font-size:10px;font-weight:900;letter-spacing:.14em}
.cfm360-external-popover strong{display:block;font-size:18px;line-height:1.2;color:#0c3570;margin:0 0 6px}
.cfm360-external-popover p{font-size:12px;line-height:1.55;margin:0 0 12px;color:#486b79}
.cfm360-external-popover a{color:#087fa8!important;font-weight:800!important;text-decoration:none!important;display:inline-block;margin:0 0 10px}
.cfm360-external-popover label{display:block;margin:0 0 6px;font-size:12px;font-weight:700;color:#33596b}
.cfm360-external-popover select{display:block;width:100%;min-height:42px;border:1px solid #bddce5;border-radius:12px;background:white;font:inherit;color:#123f59;margin:0 0 10px;padding:8px 10px}
.cfm360-external-popover button{display:block;width:100%;min-height:41px;border-radius:12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;padding:9px 11px}
.cfm360-external-popover .cfm360-external-apply{background:linear-gradient(135deg,#1299b8,#0089a9);color:white;border:1px solid #087fa8;box-shadow:0 10px 22px rgba(0,137,169,.16)}
.cfm360-external-popover .cfm360-external-remove{color:#7c5b63;background:#fff;border:1px solid #e5d7da;margin-top:9px}
.cfm360-external-fly{position:fixed!important;z-index:2147482600!important;width:33px!important;height:45px!important;border-radius:0 0 10px 10px!important;display:grid!important;place-items:center!important;background:linear-gradient(180deg,#12aec2,#087fa8)!important;color:#087fa8!important;box-shadow:0 5px 22px rgba(5,73,108,.32);pointer-events:none}
.cfm360-external-fly .cfm360-external-flag-heart{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff}.cfm360-external-fly svg{width:15px;height:15px;fill:currentColor;stroke:currentColor;stroke-width:1.9}
@media(max-width:600px){
 button.cfm360-external-flag{width:31px!important;min-width:31px!important;max-width:31px!important;height:42px!important;min-height:42px!important;top:-1px!important;right:8px!important}
 button.cfm360-external-flag:hover{height:45px!important}
 button.cfm360-external-flag span.cfm360-external-flag-heart{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;margin-top:8px!important}
 button.cfm360-external-flag span svg{width:14px!important;height:14px!important}
 .cf-act-card .cfh-pet-badge.cf-act-pet-badge,.cf-act-card .cf-act-card-media.has-discount-offer .cf-act-pet-badge{right:46px!important;top:8px!important}
 .cf-act-card.cfm360-external-has-discount button.cfm360-external-flag{top:51px!important}
 .cf-act-card .cf-act-card-media.has-discount-offer .cf-act-pet-badge{top:55px!important}
 :is(#cfm360-external-specificity,.cfv-card).cfv-card .cfv-card-hero{padding-right:42px!important}
 .cfm360-external-popover{font-size:12px}
}
@media(prefers-reduced-motion:reduce){button.cfm360-external-flag{transition:none!important}}


/* 5.0.6 – Modal-Hinweis fuer Merker in Meine Reise 360°. */
.cfm360-world-notice-backdrop{position:fixed!important;inset:0!important;z-index:2147483600!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;background:rgba(2,29,49,.44)!important;box-sizing:border-box!important}
.cfm360-world-flag-notice{position:relative!important;box-sizing:border-box!important;width:min(480px,100%)!important;padding:30px 22px 25px!important;border-radius:21px!important;background:linear-gradient(150deg,#096b90,#0089a9)!important;box-shadow:0 22px 75px rgba(0,30,53,.32)!important;color:white!important;text-align:center!important;font:inherit!important}
.cfm360-world-flag-notice p{margin:13px 0 0!important;padding:0!important;color:white!important;font-size:clamp(15px,2.5vw,19px)!important;line-height:1.55!important;font-weight:700!important}
.cfm360-world-notice-icon{margin:auto;display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:rgba(255,255,255,.18);border:2px solid #fff;color:white;font-size:37px;font-weight:850;line-height:1;transform-origin:center bottom;animation:cfm360-notice-wobble 1.7s ease-in-out infinite}
@keyframes cfm360-notice-wobble{0%,100%{transform:rotate(0)}20%{transform:rotate(-10deg)}45%{transform:rotate(10deg)}70%{transform:rotate(-5deg)}}
.cfm360-world-notice-close{position:absolute!important;top:10px!important;right:10px!important;display:grid!important;place-items:center!important;width:35px!important;height:35px!important;border:0!important;border-radius:50%!important;background:#006585!important;color:white!important;cursor:pointer!important;padding:8px!important}
.cfm360-world-notice-close svg{width:100%;height:100%;stroke:#fff;stroke-width:2.4;stroke-linecap:round;fill:none}
.cfm360-world-notice-close:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.cfm360-world-notice-icon{animation:none}}
