#ec-help-widget { position:fixed; right:22px; bottom:22px; z-index:9990; font-family:Arial,sans-serif; }
#ec-help-widget [hidden], #ec-help-panel:not([open]) { display:none !important; }
#ec-help-open { display:grid; place-items:center; background:#205561; color:#fff; border:1px solid #ffffff66; border-radius:999px; font:500 14px/1.3 Arial,sans-serif; padding:12px 21px; box-shadow:0 2px 9px #102c3a26; cursor:pointer; min-height:48px; }
#ec-help-open svg { display:none; }
#ec-help-open:focus-visible { outline:3px solid #cda666; outline-offset:3px; }
#ec-help-panel { position:fixed; inset:auto 22px 22px auto; margin:0; padding:0; box-sizing:border-box; width:min(430px,calc(100vw - 32px)); height:min(var(--ec-help-height,520px),calc(100dvh - 44px)); max-width:none; max-height:none; border:1px solid #d7dfdf; border-radius:18px; overflow:hidden; box-shadow:0 10px 45px #173f4740; background:#fffdfb; }
#ec-help-panel iframe { border:0; display:block; width:100%; height:100%; }
@media (max-width:640px), (max-height:500px) and (pointer:coarse) {
  #ec-help-widget { right:0; bottom:0; pointer-events:none; }
  #ec-help-open { padding:0; width:48px; height:48px; margin:0 var(--help-cookie-right,21px) var(--help-cookie-bottom,21px) 0; pointer-events:auto; touch-action:auto; }
  #ec-help-panel { pointer-events:auto; }
  #ec-help-open span { display:none; }
  #ec-help-open svg { display:block; }
  html:has(#ec-help-panel[open]), body:has(#ec-help-panel[open]) { overflow:hidden; overscroll-behavior:none; }
  #ec-help-panel { top:var(--ec-visible-bottom,100dvh); bottom:auto; right:0; left:0; width:100%; height:min(610px,calc(var(--ec-visible-height,100dvh) - 12px - env(safe-area-inset-top))); transform:translateY(-100%); padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); border-radius:20px 20px 0 0; border-width:1px 0 0; }
  #ec-help-panel::backdrop { background:rgb(10 35 39 / 34%); }
}

/* Keep the ticket action reachable between both corner controls. */
@media (max-width:1159px) {
  body.single-konzert:has(#ec-help-open) .concert-ticket-bar { padding-right:120px; }
}
@media (max-width:640px), (max-height:500px) and (pointer:coarse) {
  body.single-konzert:has(#ec-help-open) .concert-ticket-bar { padding-right:84px; }
}
body:has(.site-nav.is-open, dialog[open]:not(#ec-help-panel)) #ec-help-open { visibility:hidden; }
@media print { #ec-help-widget { display:none; } }
