.consent-banner{z-index:var(--z-fixed);max-width:360px;-webkit-backdrop-filter:var(--backdrop-blur-base);border-radius:var(--radius-lg);opacity:0;transition:transform .4s var(--ease-spring), opacity .3s var(--ease-smooth);background:#f6f5f1d9;border:1px solid #4b2a631f;padding:20px 20px 16px;position:fixed;bottom:24px;right:24px;transform:translateY(calc(100% + 32px));box-shadow:0 2px 8px #4b2a6314,0 8px 24px #1a1a1a1a,0 24px 48px #4b2a631f}.consent-banner.is-visible{opacity:1;transform:translateY(0)}.consent-banner.is-dismissed{opacity:0;transform:translateY(calc(100% + 32px))}.consent-text{font-family:var(--font-ui);color:var(--charcoal-75);margin:0 0 14px;font-size:13px;line-height:1.55}.consent-actions{justify-content:flex-end;gap:8px;display:flex}.consent-btn-ghost,.consent-btn-primary{font-family:var(--font-ui);border-radius:var(--radius-pill);cursor:pointer;transition:opacity var(--duration-fast) var(--ease-smooth);border:none;padding:8px 16px;font-size:13px;font-weight:600}.consent-btn-ghost{border:1.5px solid var(--charcoal-15);color:var(--charcoal-75);background:0 0}.consent-btn-primary{background:var(--primary);color:var(--white)}.consent-btn-ghost:hover{opacity:.7}.consent-btn-primary:hover{opacity:.85}@media (width<=960px){.consent-banner{max-width:none;bottom:16px;left:16px;right:16px}}
