#kp-cookie-root { font-family: inherit; }
.kp-cookie-banner { position: fixed; z-index: 2147483000; right: 1rem; bottom: 1rem; left: 1rem; display: flex; gap: 1.25rem; align-items: center; justify-content: space-between; max-width: 1080px; margin: 0 auto; padding: 1.25rem; color: #142217; background: #fff; border: 1px solid #c4d3c6; border-radius: 12px; box-shadow: 0 10px 36px rgba(0, 0, 0, .24); }
.kp-cookie-content { max-width: 690px; }
.kp-cookie-content h2, .kp-cookie-dialog h2 { margin: 0 0 .45rem; color: #165b33; font-size: 1.25rem; }
.kp-cookie-content p, .kp-cookie-dialog p { margin: 0 0 .75rem; line-height: 1.5; }
.kp-cookie-links { display: flex; gap: 1rem; flex-wrap: wrap; }
.kp-cookie-links a { color: #165b33; text-decoration: underline; }
.kp-cookie-actions { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; }
.kp-button { min-height: 42px; padding: .6rem .9rem; font: inherit; font-weight: 700; border: 1px solid #165b33; border-radius: 6px; cursor: pointer; }
.kp-button-primary { color: #fff; background: #165b33; }
.kp-button-primary:hover, .kp-button-primary:focus { background: #0e4124; }
.kp-button-secondary { color: #165b33; background: #fff; }
.kp-button-secondary:hover, .kp-button-secondary:focus { background: #eef6ef; }
.kp-cookie-settings { position: fixed; z-index: 2147482999; bottom: 0; left: 1rem; padding: .45rem .7rem; color: #fff; background: #165b33; border: 0; border-radius: 6px 6px 0 0; cursor: pointer; font: inherit; font-size: .85rem; }
.kp-cookie-modal { position: fixed; z-index: 2147483001; inset: 0; display: grid; place-items: center; padding: 1rem; background: rgba(0, 0, 0, .58); }
.kp-cookie-dialog { position: relative; width: min(100%, 680px); max-height: calc(100vh - 2rem); overflow-y: auto; padding: 1.5rem; color: #142217; background: #fff; border-radius: 12px; box-shadow: 0 10px 36px rgba(0, 0, 0, .32); }
.kp-cookie-close { position: absolute; top: .65rem; right: .75rem; width: 34px; height: 34px; color: #165b33; background: transparent; border: 0; cursor: pointer; font-size: 1.7rem; line-height: 1; }
.kp-cookie-category { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: .85rem 0; border-top: 1px solid #d9e3da; cursor: pointer; }
.kp-cookie-category span { display: grid; gap: .2rem; }
.kp-cookie-category small { color: #4d5c50; line-height: 1.35; }
.kp-cookie-category input { width: 1.25rem; height: 1.25rem; accent-color: #165b33; }
.kp-cookie-category.is-required { cursor: default; }
.kp-cookie-category input:disabled { opacity: .75; }
@media (max-width: 720px) { .kp-cookie-banner { right: .5rem; bottom: .5rem; left: .5rem; display: block; padding: 1rem; } .kp-cookie-actions { margin-top: 1rem; } .kp-cookie-actions .kp-button { flex: 1 1 100%; } }
@media (prefers-reduced-motion: reduce) { .kp-cookie-banner, .kp-cookie-modal { transition: none; } }
