/* Cookie-Banner (Fassung 7, 11.10.2026) - passend zum Strand-Design; beide Knoepfe gleich gross und gleich gewichtet */
.oh-cc[hidden] { display: none; }
.oh-cc {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 9999;
    padding: 12px;
    pointer-events: none;
    font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}
.oh-cc:focus { outline: none; }
.oh-cc-inner {
    pointer-events: auto;
    max-width: 880px;
    margin: 0 auto;
    padding: 18px 22px 16px;
    background: #fff;
    color: #2b3a42;
    border: 1.5px solid #eee0cb;
    border-radius: 18px;
    box-shadow: 0 10px 40px rgba(12, 43, 50, .28), 0 2px 8px rgba(12, 43, 50, .12);
}
.oh-cc-title { margin: 0 0 6px; font-size: 17px; font-weight: 800; color: #1a7f88; }
.oh-cc-text { margin: 0; font-size: 14.5px; line-height: 1.5; }
.oh-cc-text a { color: #1a7f88; font-weight: 700; }
.oh-cc-state { margin: 8px 0 0; font-size: 13px; font-weight: 700; color: #6b5a40; }
.oh-cc-state:empty { display: none; }
.oh-cc-actions { display: flex; gap: 12px; margin-top: 14px; flex-wrap: wrap; }
.oh-cc-btn {
    flex: 1 1 180px;
    min-height: 46px;
    padding: 10px 18px;
    font: inherit;
    font-size: 15px;
    font-weight: 800;
    color: #12525c;
    background: #fff;
    border: 2px solid #1a7f88;
    border-radius: 999px;
    cursor: pointer;
}
.oh-cc-btn:hover { background: #e6f4f5; }
.oh-cc-btn:focus-visible, .oh-cc-text a:focus-visible { outline: 3px solid #e0574c; outline-offset: 2px; }
/* Platz am Seitenende, damit der Banner (auch der Seitenfuss) nie etwas verdeckt */
html.oh-cc-open body { padding-bottom: var(--oh-cc-h, 0px); }
@media (max-width: 560px) {
    .oh-cc { padding: 8px; }
    .oh-cc-inner { padding: 14px 14px 12px; border-radius: 16px; }
    .oh-cc-text { font-size: 13.5px; }
    .oh-cc-actions { gap: 8px; margin-top: 12px; }
    .oh-cc-btn { flex: 1 1 130px; min-height: 44px; font-size: 14px; padding: 8px 10px; }
}
@media print { .oh-cc { display: none; } }
