/* Cookie banner mobile visibility fix (defensive) */
@media (max-width: 768px) {
  :root { color-scheme: light; }
  /* Target common consent containers (Real Cookie Banner, generic 'cookie'/'consent') */
  .rcb-consent-banner, .rcb-container, .rcb-wrapper,
  [class*="cookie" i], [id*="cookie" i],
  [class*="consent" i], [id*="consent" i] {
    color: #111 !important;
    -webkit-text-fill-color: #111 !important; /* iOS Safari */
    z-index: 999999 !important;
  }
  /* Text blocks */
  .rcb-consent-banner p, .rcb-consent-banner span, .rcb-consent-banner div,
  [class*="cookie" i] p, [class*="cookie" i] span, [class*="cookie" i] div,
  [class*="consent" i] p, [class*="consent" i] span, [class*="consent" i] div {
    color: #111 !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
  }
  /* Ensure background is not forced to white-on-white by theme */
  .rcb-consent-banner, [class*="cookie" i], [class*="consent" i] {
    background: #fff !important;
    backdrop-filter: none !important;
  }
  /* Buttons remain visible */
  .rcb-consent-banner button, [class*="cookie" i] button, [class*="consent" i] button {
    font-size: 16px !important;
  }
  /* Avoid hidden/translated off-screen on mobile */
  .rcb-consent-banner, [class*="cookie" i], [class*="consent" i] {
    transform: none !important;
    translate: none !important;
    visibility: visible !important;
    display: block !important;
    max-height: none !important;
  }
}
/* If a dark theme forces white text on white background, invert only the banner text */
@media (prefers-color-scheme: dark) {
  .rcb-consent-banner p, .rcb-consent-banner span,
  [class*="cookie" i] p, [class*="cookie" i] span,
  [class*="consent" i] p, [class*="consent" i] span {
    color: #f5f5f5 !important;
  }
}
