/* Shared consent presentation; native inputs keep keyboard and screen reader support. */
.kk-consent {
  color:var(--kk-color-ink,#183029);background:var(--kk-color-surface,#fff);
  font-family:var(--kk-font-sans,Inter,system-ui,sans-serif);font-size:15px;line-height:1.5;
  width:min(580px,calc(100vw - 32px));max-width:none;
  max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  margin:auto;padding:0;border:1px solid var(--kk-color-line,#e1e7e2);border-radius:24px;
  box-sizing:border-box;overflow:hidden;box-shadow:0 24px 80px rgb(16 42 35 / 22%);
}
.kk-consent[open]{display:flex;flex-direction:column}
.kk-consent::backdrop{background:rgb(16 42 35 / 42%)}
.kk-consent *,.kk-consent *::before,.kk-consent *::after{box-sizing:border-box}
.kk-consent [hidden]{display:none!important}
.kk-consent-header{flex:none;padding:28px 28px 0}
.kk-consent .kk-consent-logo{display:block;width:144px;height:32px;object-fit:contain;object-position:left;margin:0 0 20px}
.kk-consent h2{font-family:var(--kk-font-serif,'Instrument Serif',Georgia,serif);font-size:34px;font-weight:400;letter-spacing:-.025em;line-height:1.15;color:var(--kk-color-brand,#174d48);margin:0 0 12px}
.kk-consent-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 28px 18px}
.kk-consent p{font:inherit;margin:0}
.kk-consent #kk-consent-intro{color:var(--kk-color-muted,#5b6f65);margin:0 0 20px;max-width:48ch}
.kk-consent-options{display:grid;gap:8px}
.kk-consent .kk-consent-option{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;margin:0;padding:14px 16px;border:1px solid var(--kk-color-line,#e1e7e2);border-radius:14px;background:var(--kk-color-surface-selected,#fbfdf8);cursor:pointer;font:inherit;color:inherit}
.kk-consent-option>span{min-width:0}
.kk-consent-option strong{display:block;color:var(--kk-color-ink,#183029);font-size:15px;font-weight:600;line-height:1.35}
.kk-consent .kk-consent-help{display:block;font-size:13px;line-height:1.45;font-weight:400;color:var(--kk-color-muted,#5b6f65);margin-top:4px}
.kk-consent .kk-consent-option input{-webkit-appearance:none;appearance:none;position:relative;flex:0 0 44px;width:44px;height:26px;margin:0;padding:0;border:1px solid #82958a;border-radius:20px;background:var(--kk-color-line-strong,#cfd9d1);cursor:pointer;transition:background .15s,border-color .15s}
.kk-consent-option input::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgb(16 42 35 / 16%);transition:transform .15s}
.kk-consent-option input:checked{background:var(--kk-color-brand,#174d48);border-color:var(--kk-color-brand,#174d48)}
.kk-consent-option input:checked::after{transform:translateX(18px)}
.kk-consent-details{margin-top:16px;font-size:13px;color:var(--kk-color-muted,#5b6f65)}
.kk-consent-details summary{cursor:pointer;min-height:32px;padding:6px 0;color:var(--kk-color-brand,#174d48);font-weight:500}
.kk-consent .kk-consent-legal{padding:6px 0 2px;font-size:13px;line-height:1.65}
.kk-consent-legal p+p{margin-top:12px}
.kk-consent-legal nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}
.kk-consent a{color:var(--kk-color-brand,#174d48);text-decoration:underline;text-underline-offset:3px}
.kk-consent-footer{flex:none;padding:18px 28px 20px;border-top:1px solid var(--kk-color-line,#e1e7e2);background:var(--kk-color-surface,#fff)}
.kk-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kk-consent .kk-consent-actions button{appearance:none;display:block;width:100%;min-height:46px;margin:0;padding:11px 12px;border:1px solid var(--kk-color-brand,#174d48);border-radius:10px;background:var(--kk-color-brand,#174d48);color:#fff;font:inherit;font-size:14px;line-height:1.35;font-weight:600;text-align:center;cursor:pointer;box-shadow:none}
.kk-consent-actions button[data-choice=save]{grid-column:1/-1;background:#fff;color:var(--kk-color-brand,#174d48);border-color:var(--kk-color-line-strong,#cfd9d1)}
.kk-consent-actions button:hover{filter:brightness(.96)}
.kk-consent-actions button:disabled{opacity:.55;cursor:wait}
.kk-consent .kk-consent-footnote{margin:12px 0 0;text-align:center;font-size:12px;line-height:1.5;color:var(--kk-color-muted,#5b6f65)}
.kk-consent [role=status]:empty{display:none}
.kk-consent [role=status]:not(:empty){margin-top:12px;color:#8b3030;font-size:14px}
.kk-consent :is(button,input,summary,a):focus-visible,[data-cookie-settings]:focus-visible{outline:3px solid var(--kk-color-brand-secondary,#286b60);outline-offset:3px}
[data-cookie-settings]{font:inherit;color:inherit;background:none;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 0}
@media(max-width:600px){
  .kk-consent{width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:20px}
  .kk-consent-header{padding:22px 20px 0}
  .kk-consent .kk-consent-logo{width:128px;height:28px;margin-bottom:16px}
  .kk-consent h2{font-size:30px}
  .kk-consent-body{padding:0 20px 12px}
  .kk-consent #kk-consent-intro{margin-bottom:16px;font-size:14px}
  .kk-consent .kk-consent-option{gap:12px;padding:12px}
  .kk-consent-footer{padding:14px 20px 16px}
  .kk-consent-actions{gap:8px}
  .kk-consent .kk-consent-actions button{padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){.kk-consent-option input,.kk-consent-option input::after{transition:none}}
@media(forced-colors:active){.kk-consent-option input{appearance:auto;-webkit-appearance:auto}.kk-consent-option input::after{display:none}}
