.rr-fb-tab {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 1040;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.8rem;
  border: 0;
  border-radius: 999px;
  background: #b2276e;
  color: #fff;
  font: 600 0.85rem/1.2 Lato, system-ui, sans-serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
  cursor: pointer;
  opacity: 0.9;
}
.rr-fb-tab:hover, .rr-fb-tab:focus-visible {
  opacity: 1;
}
.rr-fb-tab:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px #b2276e;
}
.rr-fb-tab svg {
  width: 1.1em;
  height: 1.1em;
  fill: currentColor;
  flex: none;
}

.cookiealert.show ~ .rr-fb-tab {
  bottom: 5.5rem;
}

@media (max-width: 575px) {
  .rr-fb-tab {
    padding: 0.6rem;
    right: 0.6rem;
    bottom: 0.6rem;
  }
  .rr-fb-tab-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}
.rr-fb-dialog {
  width: min(32rem, 100vw - 2rem);
  max-height: calc(100vh - 2rem);
  padding: 0;
  border: 0;
  border-radius: 0.5rem;
  background: #fff;
  color: #0d0a0b;
  font: 400 1rem/1.4 Lato, system-ui, sans-serif;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
  overflow: auto;
}
.rr-fb-dialog::backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.rr-fb-dialog form,
.rr-fb-dialog .rr-fb-thanks {
  padding: 1.25rem;
}
.rr-fb-dialog h2 {
  margin: 0 0 0.25rem;
  font-size: 1.35rem;
}
.rr-fb-dialog p {
  margin: 0 0 0.75rem;
}
.rr-fb-dialog a {
  color: #b2276e;
}
.rr-fb-dialog fieldset {
  margin: 0 0 0.75rem;
  padding: 0;
  border: 0;
}
.rr-fb-dialog .rr-fb-kinds {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.rr-fb-dialog .rr-fb-kinds label {
  margin: 0;
  padding: 0.3rem 0.75rem;
  border: 1px solid #8a8a94;
  border-radius: 999px;
  cursor: pointer;
  font-size: 0.9rem;
}
.rr-fb-dialog .rr-fb-kinds input {
  position: absolute;
  opacity: 0;
}
.rr-fb-dialog .rr-fb-kinds label.rr-fb-on {
  background: #b2276e;
  border-color: #b2276e;
  color: #fff;
}
.rr-fb-dialog .rr-fb-kinds label:focus-within {
  outline: 3px solid #0d0a0b;
  outline-offset: 2px;
}
.rr-fb-dialog .rr-fb-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.rr-fb-dialog p.rr-fb-optional {
  font-size: 0.85rem;
  color: #454955;
}
.rr-fb-dialog .rr-fb-hint {
  padding: 0.5rem 0.75rem;
  border-left: 3px solid #b2276e;
  background: rgba(178, 39, 110, 0.08);
  font-size: 0.9rem;
}
.rr-fb-dialog label.rr-fb-field {
  display: block;
  margin: 0 0 0.75rem;
  font-weight: 600;
  font-size: 0.9rem;
}
.rr-fb-dialog label.rr-fb-field .rr-fb-optional {
  font-weight: 400;
  color: #454955;
}
.rr-fb-dialog textarea,
.rr-fb-dialog input[type=email] {
  display: block;
  width: 100%;
  margin-top: 0.25rem;
  padding: 0.5rem;
  border: 1px solid #8a8a94;
  border-radius: 0.25rem;
  background: #fff;
  color: #0d0a0b;
  font: inherit;
  font-weight: 400;
}
.rr-fb-dialog textarea {
  min-height: 7rem;
  resize: vertical;
}
.rr-fb-dialog .rr-fb-hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.rr-fb-dialog .rr-fb-details {
  margin: 0 0 0.75rem;
  font-size: 0.85rem;
}
.rr-fb-dialog .rr-fb-details label {
  font-weight: 600;
}
.rr-fb-dialog .rr-fb-details summary {
  cursor: pointer;
  color: #454955;
}
.rr-fb-dialog .rr-fb-details pre {
  max-height: 9rem;
  margin: 0.4rem 0 0;
  padding: 0.5rem;
  overflow: auto;
  background: #eceaf1;
  color: #0d0a0b;
  font-size: 0.75rem;
  white-space: pre-wrap;
  word-break: break-all;
}
.rr-fb-dialog .rr-fb-status {
  min-height: 1.4em;
  margin: 0 0 0.5rem;
  font-size: 0.9rem;
}
.rr-fb-dialog .rr-fb-status.rr-fb-error {
  color: #b00020;
}
.rr-fb-dialog .rr-fb-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}
.rr-fb-dialog button {
  padding: 0.45rem 1rem;
  border: 1px solid #8a8a94;
  border-radius: 0.25rem;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.rr-fb-dialog button.rr-fb-primary {
  border-color: #b2276e;
  background: #b2276e;
  color: #fff;
}
.rr-fb-dialog button:disabled {
  opacity: 0.6;
  cursor: default;
}
.rr-fb-dialog button:focus-visible {
  outline: 3px solid #0d0a0b;
  outline-offset: 2px;
}

[data-theme=dark] .rr-fb-dialog {
  background: #2b3031;
  color: #eee;
}
[data-theme=dark] .rr-fb-dialog a {
  color: #ff8cc4;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-kinds label {
  border-color: #7d8587;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-kinds label.rr-fb-on {
  border-color: #b2276e;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-kinds label:focus-within {
  outline-color: #fff;
}
[data-theme=dark] .rr-fb-dialog p.rr-fb-optional {
  color: #b9bfc1;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-hint {
  background: rgba(255, 140, 196, 0.1);
}
[data-theme=dark] .rr-fb-dialog textarea,
[data-theme=dark] .rr-fb-dialog input[type=email] {
  border-color: #7d8587;
  background: #1c2021;
  color: #eee;
}
[data-theme=dark] .rr-fb-dialog label.rr-fb-field .rr-fb-optional,
[data-theme=dark] .rr-fb-dialog .rr-fb-details summary {
  color: #b9bfc1;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-details pre {
  background: #1c2021;
  color: #eee;
}
[data-theme=dark] .rr-fb-dialog button {
  border-color: #7d8587;
}
[data-theme=dark] .rr-fb-dialog button.rr-fb-primary {
  border-color: #b2276e;
}
[data-theme=dark] .rr-fb-dialog button:focus-visible {
  outline-color: #fff;
}
[data-theme=dark] .rr-fb-dialog .rr-fb-status.rr-fb-error {
  color: #ff8a8a;
}
