.privacy-banner { position: fixed; z-index: 5000; left: 18px; right: 18px; bottom: max(18px, env(safe-area-inset-bottom)); max-width: 960px; margin: 0 auto; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 22px; padding: 20px; border: 1px solid #b9c9e8; border-radius: 22px; background: rgba(255,255,255,.98); color: #101828; box-shadow: 0 24px 70px rgba(11,61,145,.24); backdrop-filter: blur(18px); }
.privacy-banner strong { display: block; margin-bottom: 4px; font-size: 1rem; }
.privacy-banner p { margin: 0; color: #46546a; font-size: .82rem; line-height: 1.45; }
.privacy-banner a { display: inline-block; margin-top: 7px; color: #0b4fb3; font-size: .76rem; font-weight: 800; text-underline-offset: 3px; }
.privacy-banner__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.privacy-banner__actions--single { grid-template-columns: minmax(140px, 1fr); }
.privacy-banner button { min-height: 48px; padding: 0 16px; border: 2px solid #1a5fd0; border-radius: 14px; background: #fff; color: #0b3d91; font: inherit; font-size: .76rem; font-weight: 800; cursor: pointer; }
.privacy-banner button:last-child { background: #1a5fd0; color: #fff; }
.privacy-settings { position: fixed; z-index: 4800; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); min-height: 38px; padding: 0 12px; border: 1px solid #b9c9e8; border-radius: 999px; background: rgba(255,255,255,.94); color: #0b3d91; box-shadow: 0 8px 24px rgba(11,61,145,.18); font: inherit; font-size: .68rem; font-weight: 800; cursor: pointer; }
@media (max-width: 700px) { .privacy-banner { grid-template-columns: 1fr; gap: 14px; padding: 17px; } .privacy-banner__actions { width: 100%; } .privacy-banner button { padding-inline: 9px; } }
