.vp-consent {
  position: fixed;
  z-index: 999999;
  right: 20px;
  bottom: 20px;
  left: 20px;
  max-width: 720px;
  margin: 0 auto;
  color: #1f1f1f;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 6px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, .2);
  font: 400 15px/1.5 inherit;
}

.vp-consent__inner { padding: 20px; }
.vp-consent h2 { margin: 0 0 8px; font-size: 20px; line-height: 1.3; }
.vp-consent p { margin: 0; }
.vp-consent a { color: inherit; text-decoration: underline; }
.vp-consent__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; }
.vp-consent button,
.vp-consent-settings { min-height: 42px; padding: 10px 16px; border: 1px solid #222; border-radius: 3px; cursor: pointer; }
.vp-consent button { color: #222; background: #fff; }
.vp-consent .vp-consent__accept { color: #fff; background: #222; }

.vp-consent-settings {
  position: fixed;
  z-index: 999998;
  left: 12px;
  bottom: 12px;
  min-height: 34px;
  padding: 6px 10px;
  color: #222;
  background: rgba(255, 255, 255, .94);
  font-size: 12px;
}

@media (max-width: 600px) {
  .vp-consent { right: 10px; bottom: 10px; left: 10px; }
  .vp-consent__inner { padding: 16px; }
  .vp-consent__actions { flex-direction: column-reverse; }
  .vp-consent button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .vp-consent, .vp-consent-settings { scroll-behavior: auto; }
}

