/* BC-036: a small informational notice, using the shared brand tokens. */
.bc-cookie-notice {
 position: fixed; z-index: 70; left: var(--space-4); bottom: var(--space-4);
 width: 300px; max-width: calc(100% - 2 * var(--space-4));
 padding: var(--space-4); border: var(--line); border-radius: var(--space-4);
 background: var(--color-surface); color: var(--color-ink); box-shadow: var(--shadow-panel);
 font: var(--weight-regular) var(--text-sm)/1.5 var(--font-sans); text-align: left;
 max-height: calc(100dvh - 2 * var(--space-4)); overflow-y: auto; overscroll-behavior: contain;
}
.bc-cookie-notice[hidden] { display: none !important; }
.bc-cookie-notice__title { display: block; margin: 0 0 var(--space-2); font-size: var(--text-base); font-weight: var(--weight-bold); line-height: var(--leading-tight); color: var(--color-ink-strong); }
.bc-cookie-notice p { margin: 0 0 var(--space-3); }
.bc-cookie-notice a { color: var(--color-red-dark); text-decoration: underline; text-underline-offset: 2px; }
.bc-cookie-notice .bc-cookie-notice__button {
 display: block; width: 100%; min-height: var(--control-height); margin: 0; padding: var(--space-2) var(--space-4);
 border: 0; border-radius: var(--radius-pill); background: var(--color-red); color: var(--color-on-red);
 font: var(--weight-bold) var(--text-sm)/1.5 var(--font-sans); text-transform: uppercase; cursor: pointer;
}
.bc-cookie-notice .bc-cookie-notice__button:hover { background: var(--color-red-dark); }
.bc-cookie-notice :focus-visible { outline: 2px solid var(--color-focus); outline-offset: 3px; }
/* Desktop: the cart and checkout help bar (#bc-shb, 48 px, full width at the bottom) stays visible; the notice sits above
   it (BC-056 notice test, 22 Oct). On phones the bar moves above the notice instead (below). */
@media (min-width:761px) {
 body:has(#bc-shb) .bc-cookie-notice { bottom: calc(var(--space-4) + 48px); }
}
@media (max-width:760px) {
 .bc-cookie-notice { left: max(var(--space-4),env(safe-area-inset-left)); right: max(var(--space-4),env(safe-area-inset-right)); bottom: 0; width: auto; max-width: none; border-radius: var(--space-4) var(--space-4) 0 0; padding: var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom)); }
 /* Keep the existing shopping controls usable above the notice. */
 html.bc-cookie-visible .pp .pp-purchase .pp-actions__row.is-docked { bottom: var(--bc-cookie-height,0px); }
 html.bc-cookie-visible .bc-place.is-docked { bottom: calc(var(--bc-cookie-height,0px) + var(--bc-help-bar,0px)); }
 html.bc-cookie-visible #bc-shb { bottom: var(--bc-cookie-height,0px); }
}
@media print { .bc-cookie-notice { display: none !important; } }
