
.kld-consent{position:fixed;inset:0;z-index:90;display:flex;visibility:hidden;opacity:0;pointer-events:none;transition:opacity var(--motion-exit-duration) var(--motion-ease-exit),visibility 0s linear var(--motion-exit-duration);align-items:flex-end;justify-content:center;padding:20px;background:color-mix(in srgb,var(--color-brand-secondary) 55%,transparent)}
.kld-consent.is-open{visibility:visible;opacity:1;pointer-events:auto;transition:opacity var(--motion-enter-duration) var(--motion-ease-standard),visibility 0s}
.kld-consent__dialog{opacity:0;transform:translateY(8px) scale(.98);transition:opacity var(--motion-exit-duration) var(--motion-ease-exit),transform var(--motion-exit-duration) var(--motion-ease-exit);width:min(760px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;border-radius:var(--radius-sm);padding:28px 28px 20px;background:var(--color-surface);color:var(--color-text-main);box-shadow:0 24px 64px color-mix(in srgb,var(--color-brand-secondary) 35%,transparent);font-size:.95rem;line-height:1.5}
.kld-consent__dialog:focus{outline:0}
.kld-consent.is-open .kld-consent__dialog{opacity:1;transform:none;transition:opacity var(--motion-enter-duration) var(--motion-ease-standard),transform var(--motion-enter-duration) var(--motion-ease-standard)}

.kld-consent.is-open .kld-consent__view{animation:kld-consent-view-in var(--motion-enter-duration) var(--motion-ease-standard) both}
@keyframes kld-consent-view-in{from{opacity:0}to{opacity:1}}
.kld-consent__title{margin:0 0 12px;font-size:1.35rem;line-height:1.2;color:var(--color-brand-secondary)}
.kld-consent__dialog p{margin:0 0 10px}
.kld-consent__buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:10px;margin:18px 0 12px}
.kld-consent__btn{display:flex;align-items:center;justify-content:center;height:100%;min-height:48px;text-align:center;padding:10px 14px;border:2px solid var(--color-button-dark-bg);border-radius:999px;background:var(--color-button-dark-bg);color:var(--color-button-dark-text);font:inherit;font-weight:700;line-height:1.2;cursor:pointer}
.kld-consent__btn:hover{background:var(--color-button-dark-bg-hover);border-color:var(--color-button-dark-bg-hover)}
.kld-consent__btn:focus-visible,.kld-consent__links a:focus-visible,.kld-consent__option input:focus-visible{outline:3px solid var(--color-brand-primary);outline-offset:3px}
.kld-consent__links{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0}
.kld-consent__links a{color:var(--color-brand-primary);text-decoration:underline}
.kld-consent__option{display:flex;gap:12px;align-items:flex-start;margin:0 0 10px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}
.kld-consent__option input{flex:0 0 auto;width:20px;height:20px;margin:2px 0 0;accent-color:var(--color-brand-primary)}
.kld-consent__option--required{background:var(--color-surface-soft)}
.kld-consent-status{opacity:0;transform:translateY(8px);transition:opacity var(--motion-exit-duration) var(--motion-ease-exit),transform var(--motion-exit-duration) var(--motion-ease-exit);position:fixed;left:20px;right:20px;bottom:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:91;max-width:560px;display:flex;align-items:flex-start;gap:8px;padding:14px 8px 14px 18px;cursor:pointer;border-radius:var(--radius-sm);background:var(--color-brand-secondary);color:var(--color-text-light);font-size:.95rem;line-height:1.45;box-shadow:0 16px 40px color-mix(in srgb,var(--color-brand-secondary) 30%,transparent)}
.kld-consent-status[hidden]{display:none}
.kld-consent-status__text{flex:1 1 auto;margin:0}
.kld-consent-status__close{position:relative;flex-shrink:0;width:40px;height:40px;margin:-8px 0 -8px 0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.kld-consent-status__close::before,.kld-consent-status__close::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:1.5px;background:currentColor;border-radius:1px}
.kld-consent-status__close::before{transform:translate(-50%,-50%) rotate(45deg)}
.kld-consent-status__close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.kld-consent-status__close:focus-visible{outline:2px solid var(--color-brand-accent);outline-offset:2px}
.kld-consent-status.is-visible{opacity:1;transform:none;transition:opacity var(--motion-enter-duration) var(--motion-ease-standard),transform var(--motion-enter-duration) var(--motion-ease-standard)}
.footer-grid .kld-consent-footer{display:block;margin:0 0 12px;padding:0;border:0;background:none;font:inherit;font-size:.98rem;line-height:1.45;color:color-mix(in srgb,var(--color-text-light) 80%,transparent);text-align:left;cursor:pointer}
.footer-grid .kld-consent-footer:hover{color:var(--color-brand-primary)}
.footer-grid .kld-consent-footer:focus-visible{outline:3px solid var(--color-brand-primary);outline-offset:3px}
@media (max-width:620px){.kld-consent{padding:0}.kld-consent__dialog{border-radius:0;padding:22px 18px 16px;max-height:100vh;max-height:100dvh}.kld-consent__buttons{grid-template-columns:1fr}}

.kld-storage-table{overflow-x:auto;margin:14px 0 0;border:1px solid var(--color-border);border-radius:var(--radius-sm)}
.kld-storage-table:focus-visible{outline:3px solid var(--color-brand-primary);outline-offset:3px}
.kld-storage-table table{width:100%;min-width:880px;border-collapse:collapse;font-size:.9rem;line-height:1.45}
.kld-storage-table th,.kld-storage-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}
.kld-storage-table th{background:var(--color-surface-soft);color:var(--color-brand-secondary);font-weight:700}
.kld-storage-table tr:last-child td{border-bottom:0}

@media (prefers-reduced-motion:reduce){.kld-consent,.kld-consent.is-open,.kld-consent__dialog,.kld-consent.is-open .kld-consent__dialog,.kld-consent.is-open .kld-consent__view,.kld-consent-status,.kld-consent-status.is-visible{transition:none!important;animation:none!important}}
