/* InteraServiceChat – Betriebsart Handynummer. Platzierung identisch zum bisherigen WhatsApp-Knopf (eigene Kopie, keine Abhaengigkeit). */
.bc-whatsappchat-container {
    --intera-whatsapp-edge: 24px;
    --intera-whatsapp-size: 56px;
    --intera-whatsapp-bottom: 76px;
    --intera-whatsapp-top: 16px;
    --intera-whatsapp-bottom-limit: 16px;
    position: relative;
    z-index: 1010 !important;
}
body.is-ctl-checkout .bc-whatsappchat-container,
body.intera-whatsapp-suppressed .bc-whatsappchat-container,
body.offcanvas-open .bc-whatsappchat-container,
body.modal-open .bc-whatsappchat-container {
    display: none !important;
}
body:has(.offcanvas.show, .offcanvas.is-open, .modal.show) .bc-whatsappchat-container {
    display: none !important;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification {
    box-sizing: border-box !important;
    position: fixed !important;
    top: auto !important;
    bottom: calc(var(--intera-whatsapp-bottom) + env(safe-area-inset-bottom, 0px)) !important;
    width: var(--intera-whatsapp-size) !important;
    height: var(--intera-whatsapp-size) !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    background: #168a45 !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .18) !important;
    text-decoration: none !important;
    touch-action: manipulation;
    z-index: 1010 !important;
    transition: background-color .15s ease, box-shadow .15s ease;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification.right-position,
.bc-whatsappchat-container #bc-whatsapp-chat.right-position {
    left: auto !important;
    right: calc(var(--intera-whatsapp-edge) + env(safe-area-inset-right, 0px)) !important;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification.left-position,
.bc-whatsappchat-container #bc-whatsapp-chat.left-position {
    right: auto !important;
    left: calc(var(--intera-whatsapp-edge) + env(safe-area-inset-left, 0px)) !important;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification::before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='white' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M27 15.5a11 11 0 0 1-16.3 9.7L5 27l1.8-5.7A11 11 0 1 1 27 15.5Z'/%3E%3Cpath d='m12 10-1.7 1.1c-.5.3-.6.9-.4 1.6 1.5 4.8 4.2 7.4 8.9 8.8.6.2 1.2.1 1.6-.4l1.1-1.7-3.4-2-1.2 1.2c-2.1-.9-3.5-2.3-4.4-4.4l1.2-1.2-1.7-3Z'/%3E%3C/svg%3E");
    pointer-events: none;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification > img,
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification > .badge:empty {
    display: none !important;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification:hover {
    background: #11723a !important;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .22) !important;
}
.bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification:focus-visible {
    outline: 3px solid #084b83 !important;
    outline-offset: 3px;
}
.bc-whatsappchat-container #bc-whatsapp-chat {
    box-sizing: border-box !important;
    position: fixed !important;
    top: auto !important;
    bottom: calc(var(--intera-whatsapp-bottom) + var(--intera-whatsapp-size) + 12px + env(safe-area-inset-bottom, 0px)) !important;
    width: min(350px, calc(100vw - 2 * var(--intera-whatsapp-edge) - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px))) !important;
    max-height: calc(100vh - var(--intera-whatsapp-bottom) - var(--intera-whatsapp-size) - 28px - env(safe-area-inset-bottom, 0px)) !important;
    max-height: calc(var(--intera-whatsapp-viewport-height, 100dvh) - var(--intera-whatsapp-bottom) - var(--intera-whatsapp-size) - 28px - env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    font-size: 14px !important;
    z-index: 1011 !important;
}
@media (max-width: 767.98px), (max-width: 991.98px) and (max-height: 500px) {
    .bc-whatsappchat-container {
        --intera-whatsapp-edge: 8px;
        --intera-whatsapp-size: 48px;
        --intera-whatsapp-top: 8px;
    }
    .bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification {
        top: calc(var(--intera-whatsapp-top) + env(safe-area-inset-top, 0px)) !important;
        bottom: auto !important;
    }
    .bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification.left-position,
    .bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification.right-position,
    .bc-whatsappchat-container #bc-whatsapp-chat.left-position,
    .bc-whatsappchat-container #bc-whatsapp-chat.right-position {
        left: auto !important;
        right: calc(var(--intera-whatsapp-edge) + env(safe-area-inset-right, 0px)) !important;
    }
    .bc-whatsappchat-container #bc-whatsapp-chat {
        top: calc(var(--intera-whatsapp-top) + var(--intera-whatsapp-size) + 12px + env(safe-area-inset-top, 0px)) !important;
        bottom: auto !important;
        max-height: calc(100vh - var(--intera-whatsapp-top) - var(--intera-whatsapp-size) - var(--intera-whatsapp-bottom-limit) - 28px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
        max-height: calc(var(--intera-whatsapp-viewport-height, 100dvh) - var(--intera-whatsapp-top) - var(--intera-whatsapp-size) - var(--intera-whatsapp-bottom-limit) - 28px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
    }
    .bc-whatsappchat-container #bc-whatsapp-logo .bc-wa-notification::before {
        width: 27px;
        height: 27px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .bc-whatsappchat-container *,
    .bc-whatsappchat-container *::before {
        animation: none !important;
        transition: none !important;
    }
}

/* Ein-/Ausblenden wie beim bisherigen Chat */
.isc-wa .bchide { display: none !important; }
.isc-wa .bcshow { display: block; animation: isc-wa-show .25s ease-out; }
@keyframes isc-wa-show { from { transform: scale(.92); opacity: 0; } }

/* Grundlage ohne Design-Plugin (gleiche Werte wie oben, falls kein anderes Stylesheet greift) */
.isc-wa #bc-whatsapp-chat {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1px 15px rgba(32, 33, 36, .28);
    color: #1f2a26;
    font-family: inherit;
    line-height: 1.45;
    text-align: left;
}
.isc-wa [hidden] { display: none !important; }
.isc-wa .isc-wa-head {
    position: relative;
    background: #075e54;
    color: #fff;
    padding: 18px 76px 18px 20px;
    border-radius: 10px 10px 0 0;
}
.isc-wa .isc-wa-title { color: #fff; margin: 0 0 8px; font-size: 20px; font-weight: 700; line-height: 1.2; }
.isc-wa .isc-wa-text { margin: 0; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.isc-wa .isc-wa-person { display: flex; align-items: center; gap: 12px; }
.isc-wa .isc-wa-person .isc-wa-label { color: rgba(255, 255, 255, .85); }
.isc-wa .isc-wa-person .isc-wa-name { color: #fff; }
.isc-wa .isc-wa-close,
.isc-wa .isc-wa-back {
    position: absolute;
    top: 8px;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #fff;
    font-size: 28px;
    line-height: 34px;
    text-align: center;
    cursor: pointer;
}
.isc-wa .isc-wa-close { right: 8px; }
.isc-wa .isc-wa-back { right: 44px; }
.isc-wa .isc-wa-close:hover, .isc-wa .isc-wa-back:hover { background: rgba(255, 255, 255, .15); }
.isc-wa .isc-wa-close:focus-visible, .isc-wa .isc-wa-back:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
.isc-wa .isc-wa-list { padding: 14px 16px 16px; }
.isc-wa .isc-wa-agent {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    margin: 0 0 10px;
    border-radius: 8px;
    background: #f5f7f6;
    border-left: 3px solid #25d366;
    color: inherit;
    text-decoration: none;
    transition: background-color .15s ease;
}
.isc-wa .isc-wa-agent:hover { background: #e9efec; color: inherit; text-decoration: none; }
.isc-wa .isc-wa-agent:focus-visible { outline: 3px solid #084b83; outline-offset: 2px; }
.isc-wa .isc-wa-avatar {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #168a45;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
}
.isc-wa .isc-wa-avatar::after {
    content: '';
    position: absolute;
    right: 1px;
    bottom: 1px;
    width: 12px;
    height: 12px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #43c004;
}
.isc-wa .isc-wa-person .isc-wa-avatar { width: 42px; height: 42px; font-size: 18px; background: #fff; color: #075e54; }
.isc-wa .isc-wa-person-info { display: flex; flex-direction: column; min-width: 0; }
.isc-wa .isc-wa-label { font-size: 12px; color: #5d6b66; }
.isc-wa .isc-wa-name { font-size: 16px; font-weight: 700; }
.isc-wa .isc-wa-footer { margin: 6px 0 0; font-size: 13px; color: #5d6b66; text-align: center; }
.isc-wa .isc-wa-conversation { background: #efe7dd; padding: 18px 14px 12px; border-radius: 0 0 10px 10px; }
.isc-wa .isc-wa-bubble {
    position: relative;
    display: inline-block;
    max-width: 88%;
    padding: 8px 12px;
    margin: 0 0 16px 8px;
    border-radius: 0 8px 8px 8px;
    background: #fff;
    box-shadow: 0 1px .5px rgba(0, 0, 0, .13);
    font-size: 14px;
    overflow-wrap: anywhere;
}
.isc-wa .isc-wa-bubble::before {
    content: '';
    position: absolute;
    top: 0;
    left: -8px;
    border-top: 0 solid transparent;
    border-right: 8px solid #fff;
    border-bottom: 8px solid transparent;
}
.isc-wa .isc-wa-compose { display: flex; align-items: flex-end; gap: 8px; margin: 0; }
.isc-wa .isc-wa-input {
    flex: 1 1 auto;
    min-height: 42px;
    max-height: 120px;
    padding: 10px 14px;
    border: 0;
    border-radius: 21px;
    background: #fff;
    color: #1f2a26;
    font: inherit;
    font-size: 16px;
    resize: none;
}
.isc-wa .isc-wa-input:focus { outline: 2px solid #168a45; outline-offset: 0; }
.isc-wa .isc-wa-send {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #075e54;
    color: #fff;
    cursor: pointer;
}
.isc-wa .isc-wa-send:disabled { background: #b8c4c0; cursor: default; }
.isc-wa .isc-wa-send:focus-visible { outline: 3px solid #084b83; outline-offset: 2px; }
