.cutova-consent {
  position: fixed; inset: auto 1rem 1rem; z-index: 10000;
  max-width: 42rem; max-height: calc(100dvh - 2rem); overflow: auto;
  padding: 1.25rem; border: 1px solid #d97706; border-radius: .75rem;
  background: #18181b; color: #fafafa; box-shadow: 0 8px 32px #0005;
  font: 1rem/1.5 system-ui, sans-serif;
}
.cutova-consent[hidden] { display: none !important; }
.cutova-consent h2 { margin: 0 0 .5rem; color: inherit; font: 700 1.15rem/1.4 system-ui, sans-serif; }
.cutova-consent p { margin: 0 0 1rem; }
.cutova-consent a { color: #fbbf24; text-decoration: underline; }
.cutova-consent-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.cutova-consent button {
  min-height: 44px; padding: .5rem 1rem; border: 1px solid #a1a1aa;
  border-radius: .35rem; background: #27272a; color: #fafafa;
  font: inherit; cursor: pointer;
}
.cutova-consent button:hover { background: #3f3f46; }
.cutova-consent button:focus-visible, .cutova-consent a:focus-visible,
.cutova-consent-preferences:focus-visible { outline: 3px solid #fbbf24; outline-offset: 3px; }
.cutova-consent-preferences {
  display: inline-block; margin: 1rem; padding: .5rem; min-height: 44px;
  border: 1px solid currentColor; border-radius: .35rem;
  font: inherit; color: inherit; background: transparent; cursor: pointer;
}
.cutova-consent .cutova-consent-status:empty { display: none; }
.cutova-consent .cutova-consent-status { margin: 1rem 0 0; }
