/* consent.css — the cookie banner js/consent.js draws (launch audit A36, 2026-10-24).
   One card fixed to the bottom of every page, on the site's dark ground with the brand's type:
   IBM Plex Sans Hebrew body, white ink, the legal pages' link blue, pill buttons like the hero's
   switches. Accept and Decline are the same size and the same weight on purpose. The legal pages
   follow the reader's light setting (legal.css sets color-scheme: light), so consent.js adds
   .is-light there and the card turns to paper. */
.mc-consent {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 9000;
  max-width: 760px; margin: 0 auto; padding: 18px 22px;
  display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px;
  border-radius: 16px; background: rgba(9, 11, 24, .94); border: 1px solid rgba(255,255,255,.13);
  box-shadow: 0 18px 50px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06);
  color: #fff; font: 400 14.5px/1.55 "IBM Plex Sans Hebrew", "Public Sans", system-ui, -apple-system, sans-serif;
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  animation: mc-consent-in .32s ease-out both;
}
.mc-consent[hidden] { display: none; }
.mc-consent-text { flex: 1 1 360px; margin: 0; color: rgba(255,255,255,.8); }
.mc-consent-text b { color: #fff; font-weight: 600; }
.mc-consent-text a { color: #9db8ff; text-decoration: underline; text-underline-offset: 3px; }
.mc-consent-text a:hover { color: #fff; }
.mc-consent-acts { display: flex; gap: 10px; flex: 0 0 auto; }
.mc-consent-btn {
  min-width: 118px; padding: 11px 20px; margin: 0;
  border-radius: 999px; border: 1px solid rgba(255,255,255,.24); background: rgba(255,255,255,.09); color: #fff;
  font: 500 14.5px/1 "IBM Plex Sans Hebrew", "Public Sans", system-ui, -apple-system, sans-serif;
  cursor: pointer; transition: background-color .2s, border-color .2s, transform .15s;
}
.mc-consent-btn:hover { background: rgba(255,255,255,.17); border-color: rgba(255,255,255,.4); }
.mc-consent-btn:active { transform: translateY(1px); }
.mc-consent-btn:focus-visible { outline: 2px solid #3f7bff; outline-offset: 3px; }

/* the legal pages in the reader's light mode */
.mc-consent.is-light { background: rgba(255,255,255,.97); border-color: rgba(16,16,22,.12); color: #101016; box-shadow: 0 18px 50px rgba(16,16,22,.16); }
.mc-consent.is-light .mc-consent-text { color: #2c2c36; }
.mc-consent.is-light .mc-consent-text b { color: #101016; }
.mc-consent.is-light .mc-consent-text a { color: #1f4fd8; }
.mc-consent.is-light .mc-consent-text a:hover { color: #101016; }
.mc-consent.is-light .mc-consent-btn { border-color: rgba(16,16,22,.2); background: rgba(16,16,22,.05); color: #101016; }
.mc-consent.is-light .mc-consent-btn:hover { background: rgba(16,16,22,.1); border-color: rgba(16,16,22,.35); }

@keyframes mc-consent-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .mc-consent { animation: none; } }
@media (max-width: 600px) {
  .mc-consent { left: 10px; right: 10px; bottom: 10px; padding: 16px; gap: 14px; font-size: 14px; }
  .mc-consent-text { flex-basis: 100%; }
  .mc-consent-acts { width: 100%; }
  .mc-consent-btn { flex: 1 1 0; min-width: 0; padding: 12px 10px; }
}
@media (hover: none), (pointer: coarse) { .mc-consent-btn { min-height: 44px; } }
