@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
.gdcb-wrapper {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    padding: 16px 80px;
    background: transparent;
    z-index: 99999;
    pointer-events: none;
}

.gdcb-wrapper.aktiv .gdcb-card {
  transform: translateY(0);
  opacity: 1;
}

.gdcb-card {
    font-family: "Roboto", sans-serif;
    font-size: 14px !important;
    line-height: 18px !important;
    max-width: 800px;
    max-height: 70vh;
    width: 100%;
    background: #fff !important;
    border-radius: 5px;
    border: 1px solid #eee;
    box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.3);
    padding: 20px;
    pointer-events: auto;
    transform: translateY(100%);
    opacity: 0;
    transition: transform 0.4s ease, opacity 0.4s ease;
    overflow: auto;                    /* eigener Scrollbereich */
    -webkit-overflow-scrolling: touch;
}
.gdcb-card p {
    font-size: 14px !important;
    line-height: 18px !important;
}

.gdcb-title {
    margin: 0 0 8px;
    font-size: 18px;
}

.gdcb-text {
    margin: 0 0 12px;
}

.gdcb-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
    flex-direction:row;
}

.gdcb-btn {
    font-size: 15px !important;
    color:#000 !important;
    padding: 3px 8px !important;
    border-radius: 3px !important;
    border: 2px solid #000 !important;
    background: #fff !important;
    cursor: pointer !important;
    transition: ease-in-out 0.2s !important;
    display: inline-block !important;
}

.gdcb-btn:hover {
    box-shadow: none !important;
    color: #777 !important;
    border: 2px solid #777 !important;
}

.gdcb-accept-all {
    background: #000 !important;
    color: #fff !important;
    border-color: #000 !important;
}
.gdcb-accept-all:hover {
    background: #777 !important;
    color: #fff !important;
    border-color: #777 !important;
}
.gdcb-details {
    margin: 8px 0;
}
.gdcb-details summary {
    margin-bottom: 10px !important;
    font-size: 16px !important;
    cursor: pointer;
}
.gdcb-cats {
    display: grid;
    gap: 8px;
    transition: ease-in-out 0.2s !important;
}

.gdcb-cat {
    padding: 15px;
    border: 2px solid #eee !important;
    border-radius: 8px;
}
.gdcb-cat input {
  vertical-align: -2px;
  width: 16px;
  height: 16px;
  margin-right: 6px;
}
.gdcb-cat-desc {
    line-height: 18px !important;
    margin-top: 6px !important;
    margin-bottom: 0 !important;
}
.gdcb-cat-title {
    font-size: 16px !important;
}
.gdcb-links {
    margin: 8px 0;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.gdcb-link {
    text-decoration: underline !important;
    color: #000 !important;
}
.gdcb-link:hover {
    color: #777 !important;
}
.gdcb-fab {
    position: fixed !important;
    left: 10px !important;
    bottom: 10px !important;
    width: 40px !important;
    height: 40px !important;
    padding: 2px !important;
    border: 0px solid #373737 !important;
    border-radius: 100px !important;
    background: #373737 !important;
    color: #fff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
    cursor: pointer !important;
    z-index: 100000 !important;
    /* über Banner */
}

.gdcb-fab:hover {
    box-shadow: none !important;
    background: #777 !important;
}

#gd-cookie-banner[hidden] {
    transform: translateY(100%);
    opacity: 0;
}

@media (max-width: 600px) {
  .gdcb-wrapper {
    padding: 80px 5px;
  }
  .gdcb-card {
        margin: 0;
  }
    .gdcb-actions {
        flex-direction:column;
    }
}