.umg-consent {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99999;
  padding: 18px;
  background: rgba(7, 7, 7, 0.98);
  color: #f5f5f5;
  border-top: 1px solid rgba(255,255,255,0.18);
  box-shadow: 0 -14px 40px rgba(0,0,0,0.34);
  font-family: inherit;
}
.umg-consent__inner {
  width: min(1160px, 100%);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.umg-consent__copy { max-width: 760px; }
.umg-consent__copy strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1rem;
  letter-spacing: .01em;
}
.umg-consent__copy p {
  margin: 0;
  color: #c8c8c8;
  line-height: 1.55;
  font-size: .94rem;
}
.umg-consent__copy a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.umg-consent__actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.umg-consent__button {
  appearance: none;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 999px;
  min-height: 44px;
  padding: 0 18px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}
.umg-consent__button:hover { transform: translateY(-1px); }
.umg-consent__button--secondary { background: transparent; color: #fff; }
.umg-consent__button--primary { background: #fff; color: #090909; border-color: #fff; }
.umg-consent-settings {
  appearance: none;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.umg-consent-settings:hover,
.umg-consent-settings:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
html[data-theme="light"] .umg-consent {
  background: rgba(250,250,250,.99);
  color: #111;
  border-top-color: rgba(0,0,0,.16);
  box-shadow: 0 -14px 40px rgba(0,0,0,.12);
}
html[data-theme="light"] .umg-consent__copy p { color: #494949; }
html[data-theme="light"] .umg-consent__button { border-color: rgba(0,0,0,.34); }
html[data-theme="light"] .umg-consent__button--secondary { color: #111; }
html[data-theme="light"] .umg-consent__button--primary { background: #111; color: #fff; border-color: #111; }
@media (max-width: 760px) {
  .umg-consent { padding: 16px; }
  .umg-consent__inner { align-items: stretch; flex-direction: column; gap: 14px; }
  .umg-consent__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .umg-consent__button { width: 100%; padding: 0 12px; }
}
@media (max-width: 420px) {
  .umg-consent__actions { grid-template-columns: 1fr; }
}

/* Robust label contrast for the analytics opt-in button. */
.umg-consent .umg-consent__button--primary,
html[data-theme="dark"] .umg-consent .umg-consent__button--primary {
  background: #fff !important;
  color: #090909 !important;
  -webkit-text-fill-color: #090909 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.umg-consent .umg-consent__button--primary .umg-consent__button-label,
html[data-theme="dark"] .umg-consent .umg-consent__button--primary .umg-consent__button-label {
  color: #090909 !important;
  -webkit-text-fill-color: #090909 !important;
  opacity: 1 !important;
}
html[data-theme="light"] .umg-consent .umg-consent__button--primary {
  background: #111 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: #111 !important;
}
html[data-theme="light"] .umg-consent .umg-consent__button--primary .umg-consent__button-label {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
