#klar-privacy [hidden], [data-cookie-map-placeholder][hidden], iframe[data-cookie-map-src][hidden] { display: none !important; }
.klar-cookie-banner, .klar-cookie-dialog { color: #171717; background: #fff; font: 14px/1.6 var(--font-body, system-ui, sans-serif); }
.klar-cookie-banner { position: fixed; inset: auto 20px 20px; z-index: 2000; display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 24px 28px; border: 1px solid #bbb; box-shadow: 0 8px 40px #0002; max-height: calc(100dvh - 40px); overflow-y: auto; }
.klar-cookie-copy { max-width: 650px; }
.klar-cookie-banner h2, .klar-cookie-dialog h2 { font-family: var(--font-display, Georgia, serif); font-size: 25px; line-height: 1.3; margin: 0 0 8px; }
.klar-cookie-banner p { margin: 0; }
.klar-cookie-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.klar-cookie-actions button, .klar-map-consent button { min-height: 44px; border: 1px solid #171717; padding: 11px 16px; color: #171717; background: #fff; font: 600 13px/1.5 var(--font-body, system-ui, sans-serif); cursor: pointer; text-align: center; }
.klar-cookie-actions [data-cookie-reject], .klar-cookie-actions [data-cookie-accept] { flex: 1; min-width: 145px; }
.klar-cookie-actions button:hover, .klar-map-consent button:hover { background: #eee; }
.klar-cookie-actions .klar-cookie-text-button { flex-basis: 100%; border-color: transparent; text-decoration: underline; }
.klar-cookie-dialog { width: min(640px, calc(100% - 32px)); max-height: calc(100dvh - 40px); padding: 28px; border: 1px solid #777; overflow-y: auto; }
.klar-cookie-dialog::backdrop { background: #0008; }
.klar-cookie-dialog-heading { display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; }
.klar-cookie-close { flex-shrink: 0; width: 44px; height: 44px; border: 1px solid #777; color: #171717; background: #fff; font: 26px/1 system-ui, sans-serif; cursor: pointer; }
.klar-cookie-option { padding: 16px 0; border-top: 1px solid #ddd; }
.klar-cookie-option label { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.klar-cookie-option input { width: 20px; height: 20px; accent-color: #171717; flex-shrink: 0; }
.klar-cookie-option p { margin: 8px 0 0; font-size: 13px; color: #555; }
.klar-cookie-details { border-block: 1px solid #ddd; padding: 14px 0; margin: 0 0 20px; }
.klar-cookie-details summary { cursor: pointer; font-weight: 700; }
.klar-cookie-details a { text-decoration: underline; }
.klar-cookie-noscript { font: 13px/1.5 system-ui, sans-serif; padding: 16px; text-align: center; }
.klar-cookie-settings-link { display: inline-flex; align-items: center; min-height: 44px; border: 0; padding: 0 8px; color: inherit; background: none; font: inherit; cursor: pointer; text-align: left; }
.klar-cookie-settings-link:hover { text-decoration: underline; }
.klar-cookie-actions button:focus-visible, .klar-cookie-close:focus-visible, .klar-cookie-settings-link:focus-visible, .klar-map-consent button:focus-visible { outline: 3px solid #171717; outline-offset: 3px; }
.klar-map-consent { min-height: 360px; height: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 18px; padding: 32px; background: #ececea; font: 14px/1.7 var(--font-body, system-ui, sans-serif); }
.klar-map-consent p { margin: 0; }
.klar-map-consent a { text-decoration: underline; }
@media (max-width: 900px) { .klar-cookie-banner { flex-direction: column; align-items: stretch; gap: 16px; } }
@media (max-width: 500px) { .klar-cookie-banner { inset: auto 10px 10px; padding: 18px; max-height: calc(100dvh - 20px); } .klar-cookie-dialog { padding: 20px; } .klar-cookie-actions button { flex: 1 1 100%; } .klar-map-consent { padding: 24px; } }
