/* ================================================================
   DSGVO Video Consent – Frontend-Styles
   Version: 2.0
   ================================================================ */

/* ── Play-Buttons per Dienst ────────────────────────────────────── */

/* YouTube – roter Play-Button */
[data-gdpr-service="youtube"] .avia_playpause_icon,
[data-gdpr-service="youtube"]:hover .avia_playpause_icon {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY4IDQ4Ij48cGF0aCBkPSJNNjYuNTIsNy43NGMtMC43OC0yLjkzLTIuNDktNS40MS01LjQyLTYuMTlDNTUuNzksMC4xMywzNCwwLDM0LDBTMTIuMjEsMC4xMyw2LjksMS41NUMzLjk3LDIuMzMsMi4yNyw0LjgxLDEuNDgsNy43NEMwLjA2LDEzLjA1LDAsMjQsMCwyNHMwLjA2LDEwLjk1LDEuNDgsMTYuMjZjMC43OCwyLjkzLDIuNDksNS40MSw1LjQyLDYuMTlDMTIuMjEsNDcuODcsMzQsNDgsMzQsNDhzMjEuNzktMC4xMywyNy4xLTEuNTVjMi45My0wLjc4LDQuNjQtMy4yNiw1LjQyLTYuMTlDNjcuOTQsMzQuOTUsNjgsMjQsNjgsMjRTNjcuOTQsMTMuMDUsNjYuNTIsNy43NHoiIGZpbGw9IiNmMDAiLz48cGF0aCBkPSJNIDQ1LDI0IDI3LDE0IDI3LDM0IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    width: 100px;
    height: 70px;
}

/* YouTube – roter Play-Button (identisch mit [data-gdpr-service="youtube"] .avia_playpause_icon) */
.dvc-play-overlay--youtube {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY4IDQ4Ij48cGF0aCBkPSJNNjYuNTIsNy43NGMtMC43OC0yLjkzLTIuNDktNS40MS01LjQyLTYuMTlDNTUuNzksMC4xMywzNCwwLDM0LDBTMTIuMjEsMC4xMyw2LjksMS41NUMzLjk3LDIuMzMsMi4yNyw0LjgxLDEuNDgsNy43NEMwLjA2LDEzLjA1LDAsMjQsMCwyNHMwLjA2LDEwLjk1LDEuNDgsMTYuMjZjMC43OCwyLjkzLDIuNDksNS40MSw1LjQyLDYuMTlDMTIuMjEsNDcuODcsMzQsNDgsMzQsNDhzMjEuNzktMC4xMywyNy4xLTEuNTVjMi45My0wLjc4LDQuNjQtMy4yNiw1LjQyLTYuMTlDNjcuOTQsMzQuOTUsNjgsMjQsNjgsMjRTNjcuOTQsMTMuMDUsNjYuNTIsNy43NHoiIGZpbGw9IiNmMDAiLz48cGF0aCBkPSJNIDQ1LDI0IDI3LDE0IDI3LDM0IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    width: 100px;
    height: 70px;
}


/* Vimeo – dunkler Button (normal) */
[data-gdpr-service="vimeo"] .avia_playpause_icon {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMzMiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    width: 100px;
    height: 70px;
}

/* Vimeo – blauer Button (hover) */
[data-gdpr-service="vimeo"]:hover .avia_playpause_icon {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMEFFRUIiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
        background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
}

/* Vimeo – blauer Play-Button (identisch mit hover-State in gdpr-video.css) */
.dvc-play-overlay--vimeo {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMzMiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
    width: 100px;
    height: 70px;
}

#top .avia_image.dvc-has-play-overlay:hover .dvc-play-overlay.dvc-play-overlay--vimeo {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMEFFRUIiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=")
}


#top .avia-gallery .avia-gallery-thumb a.dvc-has-play-overlay:hover .dvc-play-overlay--vimeo  {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMEFFRUIiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
}

#top .avia-gallery .avia-gallery-thumb a.dvc-has-play-overlay:hover {
  opacity: 1;
}

.dvc-has-play-overlay {
    position: relative;
}

.image-overlay.overlay-type-video {
  display: none !important;
}

#top .dvc-has-play-overlay .av-inner-masonry-content {
  display: none;
}

.dvc-modal-notice .all-buttons {
  padding: 0 80px
}

.dvc-modal-notice .dvc-modal__info-icon {
   font-size: 40px
}

#top .dvc-modal-notice h3 {
   font-size: 30px !important;
}
 
/* Der Overlay-Button – zentriert, nicht klickbar (Klick geht durch zum <a>) */
.dvc-play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 68px;
    height: 48px;
    pointer-events: none;
    z-index: 10;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: transparent;
    opacity: .9;
    transition: opacity .2s ease, transform .2s ease;
}
 
.dvc-has-play-overlay:hover .dvc-play-overlay {
    opacity: 1;
    transform: translate(-50%, -50%);
    opacity: 0.7;
}


/* Play-Button immer sichtbar (auch ohne Consent) */
[data-gdpr-service] .av-click-to-play-overlay {
    pointer-events: auto;
    opacity: 1;
}

/* Vorschaubild sichtbar halten */
[data-gdpr-service] {
    background-size: cover;
    background-position: center;
}

.avia_playpause_icon::before {
    display: none !important;
}


/* ── Enfolds not-allowed CSS gezielt überschreiben ──────────────── */
/*
 * Enfold setzt mit #top im Selektor:
 *   .avia-video-cookie-not-allowed #top .av-click-overlay,
 *   .avia-video-cookie-not-allowed #top .av-click-to-play-overlay,
 *   .avia-video-cookie-not-allowed #top .mejs-mediaelement { display:none !important }
 *
 * Wir überschreiben das für reguläre Videos ([data-gdpr-service])
 * mit gleichem Spezifitätsniveau + #top.
 */
.avia-video-cookie-not-allowed #top [data-gdpr-service] .av-click-to-play-overlay,
.avia-video-cookie-not-allowed #top [data-gdpr-service] .av-click-overlay,
.avia-video-cookie-not-allowed #top [data-gdpr-service] .mejs-mediaelement {
    display: block !important;
}

/* Hintergrundvideos ([data-gdpr-bg-service]): Enfolds Play-Overlay
   verstecken — wir öffnen das Modal automatisch */
#top [data-gdpr-bg-service] .av-click-to-play-overlay,
#top [data-gdpr-bg-service] .av-click-overlay {
    display: none !important;
}

/* Nach Consent: Hintergrundvideo-Overlay bleibt versteckt */
#top [data-gdpr-bg-service].gdpr-consented .av-click-to-play-overlay,
#top [data-gdpr-bg-service].gdpr-consented .av-click-overlay {
    display: none !important;
}


/* ── Modal-Popup ────────────────────────────────────────────────── */

.dvc-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 99998;
    background: var(--dvc-overlay-bg, rgba(0,0,0,.6));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
    animation: dvcFadeIn .18s ease;
}

@keyframes dvcFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.dvc-modal {
    position: relative;
    background: #fff;
    border-radius: 10px;
    padding: 32px 36px;
    max-width: 480px;
    width: 100%;
    box-shadow: 0 16px 48px rgba(0, 0, 0, .35);
    text-align: center;
    color: #222;
    font-size: 14px;
    line-height: 1.6;
    animation: dvcSlideUp .2s ease;
}

@keyframes dvcSlideUp {
    from { transform: translateY(12px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

.dvc-modal__close {
    position: absolute;
    background: none;
    border: none;
    font-size: 20px;
    line-height: 1;
    color: #999;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 4px;
    transition: color .15s;
}
.dvc-modal__close:hover { color: #333; }

.dvc-modal__icon {
    width: 56px;
    height: 40px;
    margin: 0 auto 14px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.dvc-modal__icon--youtube {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY4IDQ4Ij48cGF0aCBkPSJNNjYuNTIsNy43NGMtMC43OC0yLjkzLTIuNDktNS40MS01LjQyLTYuMTlDNTUuNzksMC4xMywzNCwwLDM0LDBTMTIuMjEsMC4xMyw2LjksMS41NUMzLjk3LDIuMzMsMi4yNyw0LjgxLDEuNDgsNy43NEMwLjA2LDEzLjA1LDAsMjQsMCwyNHMwLjA2LDEwLjk1LDEuNDgsMTYuMjZjMC43OCwyLjkzLDIuNDksNS40MSw1LjQyLDYuMTlDMTIuMjEsNDcuODcsMzQsNDgsMzQsNDhzMjEuNzktMC4xMywyNy4xLTEuNTVjMi45My0wLjc4LDQuNjQtMy4yNiw1LjQyLTYuMTlDNjcuOTQsMzQuOTUsNjgsMjQsNjgsMjRTNjcuOTQsMTMuMDUsNjYuNTIsNy43NHoiIGZpbGw9IiNmMDAiLz48cGF0aCBkPSJNIDQ1LDI0IDI3LDE0IDI3LDM0IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
}
.dvc-modal__icon--vimeo {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjggNDgiPjxwYXRoIGQ9Ik02Myw0OEg1Yy0yLjgsMC01LTIuMi01LTVWNWMwLTIuOCwyLjItNSw1LTVoNThjMi44LDAsNSwyLjIsNSw1djM4QzY4LDQ1LjgsNjUuOCw0OCw2Myw0OHoiIGZpbGw9IiMzMEFFRUIiLz48cGF0aCBkPSJNNDUsMjRMMjcsMTR2MjAiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
}

.dvc-modal__service {
    font-weight: 700;
    font-size: 16px;
    margin: 0 0 8px;
}

.dvc-modal__purpose {
    margin: 0 0 14px !important;
    color: #555;
    text-align: left;
    hyphens: auto;
}

.dvc-modal__purpose span {
    display: block;
    text-align: center;
}

.dvc-modal__privacy {
    display: block;
    margin-bottom: 15px !important;
    font-size: 12px;
    color: #888;
    text-decoration: underline;
}
.dvc-modal__privacy:hover { color: #444; }

.dvc-modal__btn {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    margin-top: 10px !important;
    padding: 11px 16px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    transition: opacity .2s, transform .1s;
    line-height: 1.4;
}
.dvc-modal__btn:last-of-type { margin-bottom: 0; }
.dvc-modal__btn:hover  { opacity: .85; }
.dvc-modal__btn:active { transform: scale(.98); }


#top .mbut1 .dvc-modal__btn--accept.avia-button {
    background-color: var(--dvc-btn-color, #eee) ;
    border: 2px solid transparent;
}

#top .mbut1 .dvc-modal__btn--accept.avia-button:hover {
    border-width: 1px;
}



/* ── Revoke-Button ──────────────────────────────────────────────── */

.dvc-revoke-btn--inline {
    display: inline-block;
    padding: 8px 16px;
    background: transparent;
    border: 1px solid currentColor;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
    color: inherit;
    opacity: .7;
    transition: opacity .2s;
}
.dvc-revoke-btn--inline:hover { opacity: 1; }


/* ── Schwebendes Badge ──────────────────────────────────────────── */

.dvc-revoke-badge {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 9999;
    width: 60px;
    height: 60px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 2px solid #aaa;
    color: #fff;
    cursor: pointer;
    opacity: .8;
    transition: opacity .2s, transform .2s;
    line-height: 1;
}
.dvc-revoke-badge:hover {
    opacity: 1;
    transform: scale(1.1);
}
.dvc-revoke-badge { display: none; }
.dvc-has-consent-videos .dvc-revoke-badge { display: flex; }


.all-buttons {
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 15px 10px;
}

.all-buttons button {
  margin: 0 !important;
}  

.all-buttons button:nth-child(n+2) {
  grid-column: span 2; 
}

.dvc-modal__privacy,
.dvc-modal__close {
  min-width: unset !important;
}

#top div .mbut1 .avia-button {
  margin: 0 !important;
  padding: 10px !important;
}

#top .all-buttons .dvc-modal__privacy {
  justify-self: center;
  width: 200px !important;
  left: 50%;
  position: relative;
  display: inline-block;
}


.dvc-modal__btn.dvc-modal__close {
 background: #900 !important 
}



/* ── Responsive ─────────────────────────────────────────────────── */

@media (max-width: 480px) {
    .dvc-modal { padding: 24px 18px; }
}
