.wpei-ui-rsvp-widget {
  --wpei-rsvp-accent: #f77f4b;
  --wpei-rsvp-accent-strong: #e76835;
  --wpei-rsvp-border: #e8c5ac;
  --wpei-rsvp-card: #fff3e6;
  --wpei-rsvp-error: #8f2f28;
  --wpei-rsvp-error-bg: rgba(143, 47, 40, 0.09);
  --wpei-rsvp-field: #fffaf4;
  --wpei-rsvp-muted: #9a7d5f;
  --wpei-rsvp-notice-bg: rgba(255, 218, 212, 0.46);
  --wpei-rsvp-success: #376f45;
  --wpei-rsvp-success-bg: rgba(55, 111, 69, 0.1);
  --wpei-rsvp-text: #1b1b1b;
  --wpei-rsvp-warm-bg: #ece5d8;
  --wpei-rsvp-warm-dark: #c9bca0;
  --wpei-rsvp-terra: #8b4535;
  --wpei-rsvp-terra-hover: #7a3b2d;
  --wpei-rsvp-step-counter-color: var(--wpei-rsvp-terra);
  box-sizing: border-box;
  width: 100%;
}

.wpei-ui-rsvp-widget *,
.wpei-ui-rsvp-widget *::before,
.wpei-ui-rsvp-widget *::after {
  box-sizing: border-box;
}

.wpei-ui-rsvp-widget [hidden] {
  display: none !important;
}

.wpei-ui-rsvp-widget--preset-minimal {
  --wpei-rsvp-card: transparent;
  --wpei-rsvp-field: #ffffff;
  --wpei-rsvp-notice-bg: rgba(232, 197, 172, 0.16);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp {
  background: var(--wpei-rsvp-card);
  border-radius: 22px;
  color: var(--wpei-rsvp-text);
  display: grid;
  font-family: inherit;
  gap: 18px;
  padding: clamp(18px, 4vw, 34px);
}

.wpei-ui-rsvp-widget--preset-default .wpei-ui-rsvp {
  box-shadow: 0 18px 50px rgba(122, 82, 72, 0.13);
}

.wpei-ui-rsvp-widget--preset-minimal .wpei-ui-rsvp {
  border-radius: 14px;
  box-shadow: none;
  padding: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__section {
  border: 0;
  display: grid;
  gap: 12px;
  margin: 0;
  min-inline-size: 0;
  padding: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__section.wpei-ui-rsvp__code{
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__flow {
  display: grid;
  gap: 18px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__legend {
  color: var(--wpei-rsvp-text);
  display: block;
  font-size: 1rem;
  line-height: 1.25;
  margin: 0 0 4px;
  padding: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__legend,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-name,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__extra-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__description,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__text {
  color: var(--wpei-rsvp-text);
  font-size: 0.95rem;
  line-height: 1.5;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__field {
  min-width: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__extra-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-name {
  display: grid;
  gap: 8px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-list,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slots,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__extras,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__extra-choices {
  display: grid;
  gap: 10px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-label,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__extra-choice {
  align-items: center;
  display: flex;
  gap: 10px;
  min-width: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input {
  --wpei-rsvp-choice-accent: var(--wpei-rsvp-accent);
  --wpei-rsvp-choice-border-color: var(--wpei-rsvp-border);
  --wpei-rsvp-choice-border-width: 2px;
  --wpei-rsvp-choice-size: 1.1em;
  appearance: none;
  -webkit-appearance: none;
  accent-color: var(--wpei-rsvp-accent);
  align-items: center;
  background: #ffffff;
  border: var(--wpei-rsvp-choice-border-width) solid var(--wpei-rsvp-choice-border-color);
  color: var(--wpei-rsvp-choice-accent);
  display: inline-grid;
  flex: 0 0 auto;
  height: var(--wpei-rsvp-choice-size);
  justify-content: center;
  margin: 0;
  place-content: center;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
  width: var(--wpei-rsvp-choice-size);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="radio"] {
  border-radius: 999px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="checkbox"] {
  border-radius: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input::before,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input::before {
  content: "";
  display: block;
  transform: scale(0);
  transition: transform 140ms ease;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input::before,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="radio"]::before {
  background: var(--wpei-rsvp-choice-accent);
  border-radius: 999px;
  height: var(--wpei-rsvp-choice-size);
  width: var(--wpei-rsvp-choice-size);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="checkbox"]::before {
  background: #ffffff;
  clip-path: polygon(14% 48%, 0 63%, 38% 100%, 100% 18%, 84% 4%, 36% 66%);
  height: calc(var(--wpei-rsvp-choice-size) * 0.62);
  width: calc(var(--wpei-rsvp-choice-size) * 0.62);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input:checked,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input:checked {
  border-color: var(--wpei-rsvp-choice-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="checkbox"]:checked {
  background: var(--wpei-rsvp-choice-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input:checked::before,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="radio"]:checked::before {
  transform: scale(1);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input[type="checkbox"]:checked::before {
  transform: scale(1);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input:focus-visible,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input:focus-visible {
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.18);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__radio-input:disabled,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-input:disabled {
  cursor: not-allowed;
  opacity: 0.78;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__input,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__textarea,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__select {
  background: var(--wpei-rsvp-field);
  border: 1px solid var(--wpei-rsvp-border);
  border-radius: 14px;
  color: var(--wpei-rsvp-text);
  font: inherit;
  line-height: 1.4;
  min-height: 44px;
  outline: none;
  padding: 12px 14px;
  width: 100%;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__textarea {
  min-height: 112px;
  resize: vertical;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__input::placeholder,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__textarea::placeholder {
  color: rgba(154, 125, 95, 0.74);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__input:focus,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__textarea:focus,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__select:focus {
  background: #ffffff;
  border-color: var(--wpei-rsvp-accent);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.18);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__input[aria-invalid="true"],
.wpei-ui-rsvp-widget .wpei-ui-rsvp__textarea[aria-invalid="true"],
.wpei-ui-rsvp-widget .wpei-ui-rsvp__select[aria-invalid="true"] {
  border-color: var(--wpei-rsvp-error);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot {
  background: rgba(255, 250, 244, 0.64);
  border: 1px solid rgba(232, 197, 172, 0.72);
  border-radius: 16px;
  display: grid;
  gap: 10px;
  max-width: 100%;
  padding: 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__extra {
  display: grid;
  gap: 10px;
  max-width: 100%;
}

.wpei-ui-rsvp-widget--preset-minimal .wpei-ui-rsvp__slot {
  background: transparent;
  border-color: rgba(232, 197, 172, 0.46);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-name {
  margin-top: 2px;
  width: 100%;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__description {
  color: var(--wpei-rsvp-muted);
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__loading {
  align-content: center;
  justify-items: center;
  min-height: 240px;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__loading-inner {
  align-items: center;
  display: grid;
  gap: 10px;
  justify-items: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__loading-title {
  color: var(--wpei-rsvp-text);
  font-size: clamp(1.05rem, 2.5vw, 1.25rem);
  font-weight: 600;
  line-height: 1.3;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__loading-subtitle {
  color: var(--wpei-rsvp-muted);
  font-size: 0.88rem;
  line-height: 1.55;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt {
  justify-items: stretch;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-card {
  display: grid;
  gap: 16px;
  text-align: left;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-title {
  color: var(--wpei-rsvp-text);
  font-size: clamp(1.24rem, 3vw, 1.62rem);
  font-weight: 600;
  line-height: 1.18;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-message {
  color: var(--wpei-rsvp-muted);
  font-size: 0.98rem;
  line-height: 1.62;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr {
  display: grid;
  gap: 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-instructions {
  color: var(--wpei-rsvp-muted);
  font-size: 0.88rem;
  line-height: 1.55;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-content {
  display: grid;
  justify-items: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-content img,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-content svg,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-content canvas {
  height: auto;
  max-width: min(100%, 240px);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-qr-placeholder {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--wpei-rsvp-border);
  border-radius: 12px;
  color: var(--wpei-rsvp-muted);
  display: inline-grid;
  font-size: 0.8rem;
  font-weight: 600;
  height: 152px;
  justify-content: center;
  letter-spacing: 0.08em;
  width: 152px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-download {
  display: grid;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-download-link,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-access-link {
  align-items: center;
  background: var(--wpei-rsvp-accent);
  border: none;
  border-radius: 999px;
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 600;
  justify-content: center;
  min-height: 46px;
  padding: 12px 22px;
  text-align: center;
  text-decoration: none;
  transition: background-color 160ms ease, box-shadow 160ms ease;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-download-link:hover,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-access-link:hover {
  background: var(--wpei-rsvp-accent-strong);
  box-shadow: none;
  color: #ffffff;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-download-link:focus-visible,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-access-link:focus-visible {
  background: var(--wpei-rsvp-accent-strong);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.22);
  color: #ffffff;
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-actions {
  display: grid;
  margin-top: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__loader {
  align-items: center;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background: rgba(255, 255, 255, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 999px;
  display: inline-flex;
  justify-content: center;
  min-height: 54px;
  min-width: 54px;
  padding: 10px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__spinner {
  animation: wpei-rsvp-spin 780ms linear infinite;
  border: 3px solid rgba(247, 127, 75, 0.18);
  border-top-color: var(--wpei-rsvp-accent);
  border-radius: 999px;
  display: inline-block;
  height: 28px;
  width: 28px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__sr-only {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

@keyframes wpei-rsvp-spin {
  to {
    transform: rotate(360deg);
  }
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__submit-overlay {
  align-items: center;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  background: rgba(255, 250, 244, 0.88);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 9999;
}

@supports not (backdrop-filter: blur(1px)) {
  .wpei-ui-rsvp-widget .wpei-ui-rsvp__submit-overlay {
    background: rgba(255, 250, 244, 0.97);
  }
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__submit-overlay-inner {
  align-items: center;
  display: grid;
  gap: 16px;
  justify-items: center;
  max-width: 400px;
  padding: 40px 24px;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__button {
  align-items: center;
  background: var(--wpei-rsvp-accent);
  border: none;
  border-radius: 999px;
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 600;
  justify-content: center;
  min-height: 46px;
  padding: 12px 22px;
  text-align: center;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__button:hover {
  background: var(--wpei-rsvp-accent-strong);
  box-shadow: none;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__button:focus-visible {
  background: var(--wpei-rsvp-accent-strong);
  border-color: var(--wpei-rsvp-accent-strong);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.22);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__button:disabled {
  cursor: not-allowed;
  opacity: 0.65;
  transform: none;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back {
  background: transparent;
  border: 2px solid var(--wpei-rsvp-accent);
  color: var(--wpei-rsvp-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back:hover {
  background: rgba(247, 127, 75, 0.07);
  box-shadow: none;
  color: var(--wpei-rsvp-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back:focus-visible {
  background: rgba(247, 127, 75, 0.07);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.22);
  color: var(--wpei-rsvp-accent);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message {
  border-radius: 14px;
  font-size: 0.92rem;
  line-height: 1.5;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message:empty {
  display: none;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message--error {
  background: var(--wpei-rsvp-error-bg);
  color: var(--wpei-rsvp-error);
  padding: 10px 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message--notice {
  background: var(--wpei-rsvp-notice-bg);
  color: var(--wpei-rsvp-muted);
  padding: 10px 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message--success {
  background: var(--wpei-rsvp-success-bg);
  color: var(--wpei-rsvp-success);
  padding: 10px 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__message ul {
  margin: 8px 0 0 18px;
  padding: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__submit {
  margin-top: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp-widget__placeholder {
  border: 1px dashed var(--wpei-rsvp-border);
  border-radius: 16px;
  color: var(--wpei-rsvp-muted);
  padding: 18px;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-card {
  display: grid;
  gap: 16px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-summary {
  display: grid;
  gap: 10px;
}


.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-passes {
  display: grid;
  gap: 10px;
}

.wpei-ui-rsvp-widget--preset-minimal .wpei-ui-rsvp__preview-extras {
  background: transparent;
  border-color: rgba(232, 197, 172, 0.46);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-passes-title {
  color: var(--wpei-rsvp-text);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.25;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-passes-list {
  display: grid;
  gap: 6px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-item {
  background: rgba(255, 250, 244, 0.64);
  border-bottom: 1px dashed rgba(232, 197, 172, 0.52);
  border-radius: 12px;
  display: grid;
  gap: 2px;
  padding: 8px 12px;
}

.wpei-ui-rsvp-widget--preset-minimal .wpei-ui-rsvp__preview-pass-item {
  background: transparent;
  border-color: rgba(232, 197, 172, 0.36);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-label {
  color: var(--wpei-rsvp-muted);
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-name-row {
  align-items: center;
  display: flex;
  gap: 6px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-name {
  color: var(--wpei-rsvp-text);
  flex: 1 1 auto;
  font-size: 1rem;
  font-weight: 500;
  min-width: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-badge {
  color: var(--wpei-rsvp-success);
  flex: 0 0 auto;
  font-size: 0.85em;
  line-height: 1;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-actions {
  display: grid;
  gap: 8px;
  margin-top: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-edit {
  background: transparent;
  border-color: var(--wpei-rsvp-border);
  color: var(--wpei-rsvp-text);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-edit:hover {
  background: rgba(232, 197, 172, 0.16);
  border-color: var(--wpei-rsvp-accent);
  box-shadow: none;
  color: var(--wpei-rsvp-text);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-edit:focus-visible {
  background: rgba(232, 197, 172, 0.16);
  border-color: var(--wpei-rsvp-accent);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.22);
  color: var(--wpei-rsvp-text);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-item--muted {
  opacity: 0.42;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-badge-img {
  display: block;
  width: 1em;
  height: 1em;
  object-fit: contain;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-extras {
  background: rgba(255, 250, 244, 0.64);
  border: 1px solid rgba(232, 197, 172, 0.72);
  border-radius: 16px;
  display: grid;
  gap: 8px;
  padding: 14px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-extras-title {
  color: var(--wpei-rsvp-muted);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin: 0 0 2px;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-extra-row {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.85rem;
  gap: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-extra-label {
  color: var(--wpei-rsvp-muted);
  flex-shrink: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-extra-value {
  flex: 1 1 auto;
  word-break: break-word;
}

/* Step header */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-header {
  align-items: center;
  display: flex;
  font-size: 0.78rem;
  gap: 6px;
  justify-content: flex-end;
  letter-spacing: 0.04em;
  opacity: 0.7;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-counter {
  color: var(--wpei-rsvp-step-counter-color);
  font-weight: 600;
}

/* Confirming sub-steps */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step {
  display: grid;
  gap: 16px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-header-inner {
  align-items: center;
  display: grid;
  gap: 2px 8px;
  grid-template-columns: 1fr auto;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-header-inner .wpei-ui-rsvp__step-subtitle {
  grid-column: 1 / -1;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-kicker {
  color: var(--wpei-rsvp-terra);
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  margin: 0;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-heading {
  font-size: 1.15rem;
  line-height: 1.3;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-subtitle {
  color: var(--wpei-rsvp-muted);
  font-size: 0.875rem;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-intro {
  font-size: 0.9rem;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-advance {
  justify-self: stretch;
}

/* Welcome state */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__welcome {
  gap: 20px;
  max-width: 100%;
  min-width: 290px;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__monogram {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 64px;
  justify-self: center;
  overflow: hidden;
  width: 64px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__event-meta {
  display: grid;
  gap: 2px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__event-date,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__event-location {
  color: var(--wpei-rsvp-muted);
  font-size: 0.85rem;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-block {
  background: var(--wpei-rsvp-warm-bg);
  border-radius: 12px;
  display: grid;
  gap: 4px;
  max-width: 100%;
  padding: 14px 18px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-label {
  color: var(--wpei-rsvp-muted);
  font-size: 0.78rem;
  letter-spacing: 0.05em;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-name {
  font-size: 1.1rem;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-seats {
  align-items: center;
  background: var(--wpei-rsvp-terra);
  border-radius: 100px;
  color: #fff;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 600;
  gap: 5px;
  justify-self: center;
  letter-spacing: 0.02em;
  padding: 3px 10px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-seats::before {
  content: "\25CF\25CF\25CF";
  font-size: 0.45em;
  letter-spacing: 2px;
  opacity: 0.6;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-seats-breakdown {
  color: var(--wpei-rsvp-muted, #9A7D5F);
  font-size: 0.72rem;
  font-weight: 600;
  justify-self: center;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__welcome-intro {
  color: var(--wpei-rsvp-muted);
  font-size: 0.9rem;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__welcome-actions {
  display: grid;
  gap: 8px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__welcome-cta {
  width: 100%;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__deadline {
  color: var(--wpei-rsvp-muted);
  font-size: 0.8rem;
  margin: 0;
}

/* Attendance choice cards */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card {
  align-items: center;
  background: var(--wpei-rsvp-field);
  border: 1.5px solid var(--wpei-rsvp-border);
  border-radius: 14px;
  cursor: pointer;
  display: flex;
  gap: 14px;
  min-height: 72px;
  padding: 14px 16px;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card:has([data-wpei-input="attendance-status"]:checked) {
  background: rgba(139, 69, 53, 0.04);
  border-color: var(--wpei-rsvp-terra);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card .wpei-ui-rsvp__radio-input {
  --wpei-rsvp-choice-accent: var(--wpei-rsvp-terra);
  margin-top: 2px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-title {
  font-weight: 600;
  line-height: 1.2;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-subtitle {
  color: var(--wpei-rsvp-muted);
  font-size: 0.82rem;
}

/* Guests counter */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__guests-counter {
  color: var(--wpei-rsvp-muted);
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
}

/* Plus count step */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-section {
  display: grid;
  gap: 14px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-counts {
  display: grid;
  gap: 14px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-row {
  background: var(--wpei-rsvp-field);
  border: 1.5px solid var(--wpei-rsvp-border);
  border-radius: 14px;
  display: grid;
  gap: 10px;
  padding: 16px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-heading {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-label {
  color: var(--wpei-rsvp-text);
  font-size: 0.95rem;
  font-weight: 600;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-max {
  color: var(--wpei-rsvp-muted);
  font-size: 0.82rem;
  font-weight: 500;
  white-space: nowrap;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-template-columns: 52px minmax(0, 1fr) 52px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-button {
  align-items: center;
  background: #fff;
  border: 1.5px solid var(--wpei-rsvp-border);
  border-radius: 14px;
  color: var(--wpei-rsvp-text);
  cursor: pointer;
  display: flex;
  font-family: inherit;
  font-size: 1.35rem;
  font-weight: 600;
  justify-content: center;
  min-height: 58px;
  padding: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-button:hover,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-button:focus-visible {
  border-color: var(--wpei-rsvp-terra);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.16);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-button:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-value {
  align-items: center;
  background: #fff;
  border: 1.5px solid var(--wpei-rsvp-border);
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  justify-content: center;
  min-height: 58px;
  padding: 8px 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-input {
  appearance: textfield;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wpei-rsvp-text);
  font-family: inherit;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  min-height: auto;
  padding: 0;
  text-align: center;
  width: 100%;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-input::-webkit-outer-spin-button,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-input:focus {
  background: transparent;
  box-shadow: none;
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-stepper-value span {
  color: var(--wpei-rsvp-muted);
  font-size: 0.82rem;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__plus-count-summary {
  color: var(--wpei-rsvp-muted);
  font-size: 0.9rem;
  margin: 0;
  text-align: center;
}

/* Extras actions */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__extras-actions {
  display: grid;
  gap: 8px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__skip-extras {
  background: transparent;
  border: none;
  color: var(--wpei-rsvp-muted);
  cursor: pointer;
  font-size: 0.85rem;
  padding: 4px 0;
  text-align: center;
  text-decoration: underline;
  width: 100%;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__skip-extras:hover {
  color: var(--wpei-rsvp-terra);
}

/* Receipt deadline (decline flow) */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__receipt-deadline {
  color: var(--wpei-rsvp-muted);
  font-size: 0.82rem;
  margin: 0;
  text-align: left;
}

/* Welcome — structural refinements */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__monogram {
  height: 72px;
  width: 72px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__hero-rule {
  background: var(--wpei-rsvp-warm-dark);
  border: 0;
  height: 1px;
  justify-self: center;
  opacity: 0.5;
  width: 36px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__rule-fancy {
  align-items: center;
  background-repeat: no-repeat;
  background-size: contain;
  color: var(--wpei-rsvp-warm-dark);
  display: flex;
  font-size: 0.5rem;
  gap: 10px;
  justify-content: center;
  letter-spacing: 0.15em;
  opacity: 0.65;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__rule-fancy::before,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__rule-fancy::after {
  background: currentColor;
  content: '';
  flex: 1;
  height: 1px;
  max-width: 60px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-block {
  border-radius: 16px;
  gap: 8px;
  padding: 20px 24px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-name {
  font-size: clamp(1.15rem, 4vw, 1.5rem);
  line-height: 1.15;
  padding: 4px 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__invite-seats {
  font-size: 0.82rem;
  margin-top: 2px;
  padding: 5px 14px;
}

/* Attendance choice cards — icon + content + radio layout */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-icon {
  align-items: center;
  background: var(--wpei-rsvp-warm-bg);
  border-radius: 50%;
  color: var(--wpei-rsvp-terra);
  display: flex;
  flex: 0 0 38px;
  font-size: 1rem;
  font-weight: 700;
  height: 38px;
  justify-content: center;
  transition: background-color 0.15s ease, color 0.15s ease;
  width: 38px;
}

.wpei-ui-rsvp-widget [data-wpei-choice="yes"] .wpei-ui-rsvp__choice-icon::before {
  content: "\2713";
}

.wpei-ui-rsvp-widget [data-wpei-choice="no"] .wpei-ui-rsvp__choice-icon::before {
  content: "\2715";
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card:has([data-wpei-input="attendance-status"]:checked) .wpei-ui-rsvp__choice-icon {
  background: var(--wpei-rsvp-terra);
  color: #fff;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card .wpei-ui-rsvp__radio-input {
  --wpei-rsvp-choice-size: 1.25em;
  flex: 0 0 auto;
  margin: 0;
}

/* Guest slot cards — avatar + kicker + name layout */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-card {
  align-items: center;
  display: flex;
  gap: 14px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-avatar {
  align-items: center;
  background: var(--wpei-rsvp-warm-dark);
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex: 0 0 44px;
  font-size: 0.82rem;
  font-weight: 600;
  height: 44px;
  justify-content: center;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: background-color 0.15s ease;
  user-select: none;
  width: 44px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot:has([data-wpei-input="rsvp-slot"]:checked) {
  border-color: var(--wpei-rsvp-terra);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot:has([data-wpei-input="rsvp-slot"]:checked) .wpei-ui-rsvp__slot-avatar {
  background: var(--wpei-rsvp-terra);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-info {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-kicker {
  color: var(--wpei-rsvp-muted);
  font-size: 0.60rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-display-name {
  color: var(--wpei-rsvp-text);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot--placeholder .wpei-ui-rsvp__slot-avatar {
  font-size: 1rem;
  font-weight: 400;
}

/* Slot checkbox — visually hidden, functionally and accessibly present */
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-checkbox {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* Slot indicator label — contains hidden checkbox + visual circle */
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-indicator-label {
  cursor: pointer;
  flex: 0 0 auto;
  line-height: 0;
  position: relative;
}

/* Visual indicator circle — same look as choice-card radio */
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-indicator {
  --wpei-rsvp-choice-accent: var(--wpei-rsvp-terra);
  --wpei-rsvp-choice-border-color: var(--wpei-rsvp-border);
  --wpei-rsvp-choice-size: 1.25em;
  border: 1.5px solid var(--wpei-rsvp-choice-border-color);
  border-radius: 999px;
  display: grid;
  height: var(--wpei-rsvp-choice-size);
  place-items: center;
  transition: border-color 0.15s ease, background-color 0.15s ease;
  width: var(--wpei-rsvp-choice-size);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-indicator::before {
  background: transparent;
  border-radius: 50%;
  content: "";
  display: block;
  height: calc(var(--wpei-rsvp-choice-size) * 0.46);
  transform: scale(0);
  transition: transform 0.12s ease;
  width: calc(var(--wpei-rsvp-choice-size) * 0.46);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-checkbox:checked + .wpei-ui-rsvp__slot-indicator {
  background: var(--wpei-rsvp-choice-accent);
  border-color: var(--wpei-rsvp-choice-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-checkbox:checked + .wpei-ui-rsvp__slot-indicator::before {
  background: #fff;
  transform: scale(1);
  clip-path: polygon(14% 48%, 0 63%, 38% 100%, 100% 18%, 84% 4%, 36% 66%);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-checkbox:focus-visible + .wpei-ui-rsvp__slot-indicator {
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.18);
  outline: 0;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-checkbox:disabled + .wpei-ui-rsvp__slot-indicator {
  cursor: not-allowed;
  opacity: 0.78;
}

/* Inline placeholder name input inside slot card */
.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-name-input {
  background: transparent;
  border: none;
  border-bottom: 1px dashed var(--wpei-rsvp-border);
  border-radius: 0;
  color: var(--wpei-rsvp-text);
  font-family: inherit;
  font-size: 1rem;
  font-weight: 500;
  padding: 2px 0;
  width: 100%;
  min-height: auto;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__slot-name-input:focus {
  border-bottom-color: var(--wpei-rsvp-terra);
  outline: none;
  background: inherit;
  box-shadow: inherit;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__event-date-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: none;
  min-height: 40px;
}

/* Respondent name input — Essential mode, underline style inside invite-block */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__respondent-label {
  color: var(--wpei-rsvp-muted);
  display: grid;
  font-size: 0.78rem;
  gap: 6px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__respondent-input {
  background: transparent;
  border: 0;
  border-bottom: 1.5px solid var(--wpei-rsvp-warm-dark);
  border-radius: 0;
  font-size: 1.05rem;
  font-weight: 500;
  min-height: auto;
  padding: 4px 0;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__respondent-input:focus {
  background: transparent;
  border-color: var(--wpei-rsvp-terra);
  box-shadow: none;
}

/* Step back/forward button layout — vertical stack */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-actions {
  display: grid;
  gap: 8px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back {
  background: transparent;
  border-color: var(--wpei-rsvp-border);
  color: var(--wpei-rsvp-text);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back:hover {
  background: rgba(232, 197, 172, 0.16);
  border-color: var(--wpei-rsvp-accent);
  box-shadow: none;
  color: var(--wpei-rsvp-text);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-back:focus-visible {
  background: rgba(232, 197, 172, 0.16);
  border-color: var(--wpei-rsvp-accent);
  box-shadow: 0 0 0 3px rgba(247, 127, 75, 0.22);
  color: var(--wpei-rsvp-text);
  outline: 0;
}

/* ---- Barra de progreso por pasos ---- */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-header {
  gap: 8px;
  justify-content: flex-start;
  opacity: 1;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__progress-track {
  align-items: center;
  display: flex;
  flex: 1;
  gap: 4px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__progress-segment {
  background: var(--wpei-rsvp-warm-dark);
  border-radius: 999px;
  flex: 1;
  height: 3px;
  opacity: 0.4;
  transition: background 200ms ease, opacity 200ms ease;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__progress-segment--active {
  background: var(--wpei-rsvp-terra);
  opacity: 1;
}

/* ---- Flecha en botones de avance ---- */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__step-advance::after,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__welcome-cta::after,
.wpei-ui-rsvp-widget .wpei-ui-rsvp__submit::after {
  content: '\00a0\2192';
}

/* ---- Radio/check integrado en choice-card (estilo premium) ---- */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card .wpei-ui-rsvp__radio-input:checked {
  background: var(--wpei-rsvp-choice-accent);
  border-color: var(--wpei-rsvp-choice-accent);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__choice-card .wpei-ui-rsvp__radio-input:checked::before {
  background: #ffffff;
  border-radius: 0;
  clip-path: polygon(14% 48%, 0 63%, 38% 100%, 100% 18%, 84% 4%, 36% 66%);
  height: calc(var(--wpei-rsvp-choice-size) * 0.58);
  width: calc(var(--wpei-rsvp-choice-size) * 0.58);
}

/* ---- Asistencia — centrado y jerarquía tipográfica ---- */

.wpei-ui-rsvp-widget [data-wpei-confirming-step="attendance"] > .wpei-ui-rsvp__step-kicker {
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__attendance .wpei-ui-rsvp__legend {
  font-size: 1.45rem;
  line-height: 1.2;
  text-align: center;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__attendance .wpei-ui-rsvp__attendance-description {
  text-align: center;
}

/* ---- Preview — grupos por tipo ---- */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-group {
  background: var(--wpei-rsvp-warm-dark);
  border: 1px solid rgba(232, 197, 172, 0.42);
  border-radius: 12px;
  display: grid;
  gap: 8px;
  padding: 10px 12px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-group-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-group-label {
  color: var(--wpei-rsvp-accent);
  font-size: 0.95rem;
  font-style: italic;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-group-count {
  color: var(--wpei-rsvp-muted);
  font-size: 0.8rem;
}

/* ---- Preview — indicador circular de pase ---- */

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-indicator {
  align-items: center;
  border: 2px solid rgba(232, 197, 172, 0.52);
  border-radius: 50%;
  display: flex;
  flex: 0 0 auto;
  height: 22px;
  justify-content: center;
  width: 22px;
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-indicator--confirmed {
  background: var(--wpei-rsvp-terra);
  border-color: var(--wpei-rsvp-terra);
}

.wpei-ui-rsvp-widget .wpei-ui-rsvp__preview-pass-indicator--confirmed::before {
  background: #ffffff;
  clip-path: polygon(14% 48%, 0 63%, 38% 100%, 100% 18%, 84% 4%, 36% 66%);
  content: '';
  height: 10px;
  width: 10px;
}
