.ceevo-consent-backdrop {
  position: fixed;
  z-index: 2147483000;
  right: 20px;
  bottom: 20px;
  width: min(380px, calc(100vw - 32px));
}

.ceevo-consent {
  width: 100%;
  padding: 20px;
  border: 1px solid rgb(16 27 22 / 7%);
  border-radius: 20px;
  background: #fdfdfd;
  color: #101b16;
  box-shadow: 0 24px 72px rgb(16 27 22 / 16%);
  font-family: Figtree, ui-sans-serif, system-ui, sans-serif;
  text-align: left;
}

.ceevo-consent h2 {
  margin: 0 0 8px;
  color: #101b16;
  font: 600 19px/1.25 Figtree, ui-sans-serif, system-ui, sans-serif;
  letter-spacing: -0.025em;
}

.ceevo-consent p {
  margin: 0;
  color: #55625b;
  font: 400 14px/1.5 Figtree, ui-sans-serif, system-ui, sans-serif;
}

.ceevo-consent a {
  color: #2b3a32;
  text-decoration: underline;
  text-decoration-color: #a9b5ae;
  text-underline-offset: 3px;
}

.ceevo-consent__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.ceevo-consent button {
  min-width: 92px;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: #f2f1ee;
  color: #101b16;
  font: 600 14px/1 Figtree, ui-sans-serif, system-ui, sans-serif;
  cursor: pointer;
  transition: background-color 140ms ease, transform 140ms ease;
}

.ceevo-consent button[data-choice="accepted"] {
  background: #101b16;
  color: #fff;
}

.ceevo-consent button[data-choice="accepted"]:hover { background: #2b3a32; }
.ceevo-consent button[data-choice="rejected"]:hover { background: #e6e5e1; }
.ceevo-consent button:active { transform: translateY(1px); }
.ceevo-consent button:focus-visible,
.ceevo-consent a:focus-visible { outline: 3px solid #4f6a0e; outline-offset: 3px; }

@media (max-width: 560px) {
  .ceevo-consent-backdrop { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); }
  .ceevo-consent { padding: 18px; border-radius: 18px; }
  .ceevo-consent__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .ceevo-consent button { min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .ceevo-consent button { transition: none; }
}
