.cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; display: flex; flex-direction: column; gap: 12px; padding: 16px; background: #fff; color: #202124; border-top: 1px solid #dadce0; box-shadow: 0 -4px 16px rgba(0, 0, 0, .15); font: 14px/1.5 system-ui, sans-serif; box-sizing: border-box; }
.cookie-banner[hidden] { display: none !important; }
.cookie-banner-text { margin: 0; overflow-wrap: anywhere; }
.cookie-banner-text a { color: var(--color-primary, #1a73e8); text-decoration: underline; }
.cookie-banner-actions { display: flex; flex-direction: column; gap: 8px; }
.cookie-btn { width: 100%; min-height: 44px; padding: 8px 20px; border-radius: 6px; border: 2px solid var(--color-primary, #1a73e8); font: inherit; font-weight: 700; cursor: pointer; }
.cookie-btn-primary { background: var(--color-primary, #1a73e8); color: #fff; }
.cookie-btn-outline { background: #fff; color: var(--color-primary, #1a73e8); }
.cookie-btn:focus-visible, .cookie-banner a:focus-visible { outline: 3px solid var(--color-secondary, #fbbc04); outline-offset: 2px; }
body.has-cookie-banner { padding-bottom: var(--cookie-banner-height, 0); }
body.has-cookie-banner .chat-contact, body.has-cookie-banner .cart-fab { bottom: calc(1.5rem + var(--cookie-banner-height, 0px)); }
.legal-links { margin: 0 0 8px; font-size: 12px; opacity: .8; }
.legal-links a { color: inherit; }
@media (min-width: 768px) {
    .cookie-banner { flex-direction: row; align-items: center; justify-content: space-between; padding-inline: 32px; }
    .cookie-banner-actions { flex-direction: row; flex: 0 0 auto; }
    .cookie-btn { width: auto; }
}
