/* Cookie consent banner — Navy Steel glass. Accent CSS vars are set from JS to
   follow the visitor's chosen public theme (rc-web-theme); Navy Steel is the default. */
#rc-consent {
  --rc-a: #4d8dff;
  --rc-ah: #8fb4ff;
  --rc-rgb: 77, 141, 255;
  --rc-ink: #08111f;
  position: fixed;
  left: 16px; right: 16px; bottom: 16px;
  /* Above normal page content, but BELOW in-page modal/capture overlays (those layer at
     ~2000+, e.g. the /scan .capOverlay). Consent must never occlude a modal anywhere. */
  z-index: 1000;
  color: #eaf1ff;
  font-family: inherit;
  animation: rc-consent-in .28s ease-out;
}
@keyframes rc-consent-in { from { transform: translateY(12px); opacity: 0; } to { transform: none; opacity: 1; } }
#rc-consent .rc-consent-inner {
  max-width: 1080px; margin: 0 auto;
  display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
  padding: 16px 20px;
  background: rgba(14, 23, 40, 0.72);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  border: 1px solid rgba(120, 160, 220, 0.20);
  border-radius: 16px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}
#rc-consent .rc-consent-text { flex: 1 1 320px; display: flex; flex-direction: column; gap: 4px; }
#rc-consent .rc-consent-text strong { font-size: 15px; }
#rc-consent .rc-consent-text span { font-size: 13px; line-height: 1.5; color: #8ea3c4; }
#rc-consent a { color: var(--rc-ah); text-decoration: underline; }
#rc-consent .rc-consent-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
#rc-consent .rc-btn {
  font: inherit; font-size: 13px; font-weight: 600;
  padding: 9px 16px; border-radius: 10px; cursor: pointer;
  border: 1px solid transparent; text-decoration: none; line-height: 1;
  display: inline-flex; align-items: center;
}
#rc-consent .rc-btn-ghost {
  background: rgba(120, 160, 220, 0.10); color: #eaf1ff;
  border-color: rgba(120, 160, 220, 0.28);
}
#rc-consent .rc-btn-ghost:hover { background: rgba(120, 160, 220, 0.18); }
/* "Accept all" = primary action → electric-blue accent (follows chosen theme). */
#rc-consent .rc-btn-primary {
  color: var(--rc-ink);
  background: linear-gradient(180deg, var(--rc-ah) 0%, var(--rc-a) 100%);
  box-shadow: 0 2px 0 rgba(8, 17, 31, 0.4), 0 6px 16px rgba(var(--rc-rgb), 0.40);
}
#rc-consent .rc-btn-primary:hover { filter: brightness(1.06); }
@media (max-width: 640px) {
  #rc-consent .rc-consent-actions { width: 100%; }
  #rc-consent .rc-btn { flex: 1 1 auto; justify-content: center; }
}
