.privacy-consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;gap:12px;align-items:flex-start;box-sizing:border-box;padding:16px calc(16px + env(safe-area-inset-right));padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,0.2);background:rgba(0,0,0,0.9);color:#E4F9E2}
.privacy-consent-banner__text{flex:1;line-height:1.6;font-size:14px}
.privacy-consent-banner__link{color:#0A6E4D;text-decoration:underline}
.privacy-consent-banner__actions{display:flex;gap:8px}
.privacy-consent-banner__btn{appearance:none;border:none;border-radius:4px;padding:8px 14px;font-size:14px;cursor:pointer}
.privacy-consent-banner__btn--accept{background:#0A6E4D;color:#fff}
.privacy-consent-banner__btn--decline{background:#4a5568;color:#fff}
@media (max-width:768px){.privacy-consent-banner{flex-direction:column;align-items:stretch}.privacy-consent-banner__actions{justify-content:flex-end}}

/* gap fallback for older browsers */
/* Root banner: emulate 12px gap horizontally */
html.no-flexbox-gap .privacy-consent-banner{margin-left:-6px;margin-right:-6px}
html.no-flexbox-gap .privacy-consent-banner>*{margin-left:6px;margin-right:6px}

/* Actions: emulate 8px gap */
html.no-flexbox-gap .privacy-consent-banner__actions{margin-left:-4px;margin-right:-4px}
html.no-flexbox-gap .privacy-consent-banner__actions>*{margin-left:4px;margin-right:4px}

/* When stacked on mobile, emulate vertical spacing instead of horizontal */
@media (max-width:768px){
  html.no-flexbox-gap .privacy-consent-banner{margin-left:0;margin-right:0}
  html.no-flexbox-gap .privacy-consent-banner>*{margin-left:0;margin-right:0}
  html.no-flexbox-gap .privacy-consent-banner>*+*{margin-top:12px}
  html.no-flexbox-gap .privacy-consent-banner__actions{margin-left:0;margin-right:0}
  html.no-flexbox-gap .privacy-consent-banner__actions>*{margin-left:0;margin-right:0}
  html.no-flexbox-gap .privacy-consent-banner__actions>*+*{margin-left:8px}
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .privacy-consent-banner,*{transition:none!important;animation:none!important}
}