.ptp-cookie-banner {
    position: fixed;
    z-index: 10000;
    right: 16px;
    bottom: 16px;
    left: 16px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: 1040px;
    margin: 0 auto;
    padding: 18px 20px;
    color: #24333a;
    background: #fff;
    border: 1px solid #c9d4d8;
    border-radius: 4px;
    box-shadow: 0 4px 22px rgba(19, 38, 47, 0.24);
    font: 15px/1.5 Arial, Helvetica, sans-serif;
}

.ptp-cookie-copy {
    flex: 1 1 390px;
}

.ptp-cookie-banner h2 {
    width: auto;
    height: auto;
    margin: 0 0 5px;
    color: #24333a;
    font: 700 18px/1.3 Arial, Helvetica, sans-serif;
    text-indent: 0;
}

.ptp-cookie-banner p {
    margin: 0;
    color: #35464d;
    font: 14px/1.5 Arial, Helvetica, sans-serif;
}

.ptp-cookie-actions,
.ptp-cookie-settings {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.ptp-cookie-settings[hidden],
.ptp-cookie-actions[hidden] {
    display: none;
}

.ptp-cookie-button {
    min-height: 42px;
    padding: 9px 13px;
    border: 1px solid #31545e;
    border-radius: 3px;
    font: 700 14px/1.2 Arial, Helvetica, sans-serif;
    cursor: pointer;
}

.ptp-cookie-button:focus-visible,
.ptp-cookie-checkbox-label input:focus-visible,
.ptp-cookie-settings-link:focus-visible {
    outline: 3px solid #e2a84a;
    outline-offset: 2px;
}

.ptp-cookie-primary {
    color: #fff;
    background: #285664;
}

.ptp-cookie-secondary {
    color: #24333a;
    background: #fff;
}

.ptp-cookie-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 42px;
    margin-right: 8px;
    color: #24333a;
    font-weight: 700;
}

.ptp-cookie-checkbox-label input {
    width: 18px;
    height: 18px;
    accent-color: #285664;
}

.ptp-cookie-settings-link {
    padding: 0;
    color: #31545e;
    background: transparent;
    font: inherit;
    text-decoration: underline;
    cursor: pointer;
}

@media (max-width: 640px) {
    .ptp-cookie-banner {
        right: 8px;
        bottom: 8px;
        left: 8px;
        padding: 15px;
    }

    .ptp-cookie-actions,
    .ptp-cookie-settings {
        width: 100%;
    }

    .ptp-cookie-button {
        flex: 1 1 auto;
    }
}