.cookie-consent[hidden] { display: none; }
#cookie-consent.cookie-consent { position: fixed; z-index: 5000; inset: auto 16px calc(12px + env(safe-area-inset-bottom, 0px)); width: auto; max-width: 1160px; margin-inline: auto; box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 24px; max-height: calc(100dvh - 32px - env(safe-area-inset-bottom, 0px)); overflow: auto; padding: 14px 18px; border: 1px solid var(--color-brand-dark, #1E4D41); border-radius: 18px; background: rgba(255, 255, 255, .8); background: color-mix(in srgb, var(--color-surface-raised, #fff) 80%, transparent); color: var(--color-text-primary, #171A18); box-shadow: 0 4px 20px #0002; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
#cookie-consent[hidden] { display: none; }
/* Keep the heading accessible without spending a separate visual row on it. */
#cookie-consent h2 { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
#cookie-consent p { margin: 0; font-size: 14px; line-height: 1.4; }
.cookie-consent a { color: var(--color-text-link, #1E4D41); text-decoration: underline; }
.cookie-consent #integration-consent-state:empty { display: none; }
#cookie-consent .cookie-consent__actions { display: flex; gap: 8px; }
#cookie-consent .cookie-consent__choice { flex: 0 0 auto; width: auto; min-height: 40px; min-width: 0; padding: 6px 12px; border: 1px solid var(--color-brand-dark, #1E4D41); background: var(--color-surface-raised, #fff); color: var(--color-text-link, #1E4D41); font: inherit; font-size: 13px; line-height: 1.25; border-radius: var(--radius-control, var(--radius, 24px)); cursor: pointer; }
#cookie-consent #integration-consent-state { grid-column: 1 / -1; }
/* Match the global control layer; limit the smaller size to this notice. */
@layer design-system {
  #cookie-consent .cookie-consent__choice { min-height: 40px !important; padding: 6px 12px !important; font-size: 13px !important; }
  @media (max-width: 760px) {
    #cookie-consent .cookie-consent__choice { min-height: 44px !important; }
  }
}
.cookie-consent .cookie-consent__choice:hover { background: var(--color-surface-muted, #E3EBE5); }
.cookie-consent button:focus-visible, .cookie-settings:focus-visible { outline: 3px solid var(--color-focus, #1E4D41); outline-offset: 3px; }
.cookie-settings { padding: 8px 0; color: inherit; background: transparent; border: 0; text-decoration: underline; font: inherit; cursor: pointer; }
@media (max-width: 760px) {
  #cookie-consent.cookie-consent { inset-inline: 12px; grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 12px 14px; border-radius: 16px; }
}
