.de-rsvp-form-wrap{width:min(760px,100%);margin:0 auto}.de-rsvp-form{display:grid;gap:18px}.de-rsvp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.de-rsvp-grid .de-rsvp-full{grid-column:1/-1}.de-rsvp-form label{display:grid;gap:7px}.de-rsvp-form label>span,.de-rsvp-choice legend{font-size:13px;font-weight:600}.de-rsvp-form input,.de-rsvp-form textarea{width:100%;min-width:0;padding:13px 14px;border:1px solid #ddd;border-radius:5px;background:#fff;font:inherit;box-sizing:border-box}.de-rsvp-choice{border:0;padding:0;margin:0;display:flex;gap:10px;flex-wrap:wrap}.de-rsvp-choice legend{width:100%;margin-bottom:3px}.de-rsvp-choice label{display:inline-flex;align-items:center;gap:8px;border:1px solid #ddd;border-radius:999px;padding:10px 14px;cursor:pointer}.de-rsvp-choice input{width:auto}.de-rsvp-help{margin:-10px 0 0;font-size:12px;opacity:.65}.de-rsvp-privacy{grid-template-columns:auto 1fr!important;align-items:start}.de-rsvp-privacy input{width:auto;margin-top:4px}.de-rsvp-submit-row{display:flex;align-items:center;gap:14px}.de-rsvp-submit-row button{border:0;border-radius:5px;padding:14px 22px;background:var(--de-accent-color,#FBBF24);color:#000;font-weight:700;cursor:pointer}.de-rsvp-status{font-size:13px;color:#b42318}.de-rsvp-success{text-align:center;padding:28px;border:1px solid #ddd;border-radius:12px}.de-rsvp-success strong{font-size:24px}.de-rsvp-hp{position:absolute!important;left:-9999px!important}.de-rsvp-closed{text-align:center;padding:18px;border:1px solid #ddd;border-radius:10px}@media(max-width:640px){.de-rsvp-grid{grid-template-columns:1fr}.de-rsvp-grid .de-rsvp-full{grid-column:auto}.de-rsvp-submit-row{align-items:stretch;flex-direction:column}.de-rsvp-submit-row button{width:100%}}
.de-rsvp-guests[hidden]{display:none!important}

.de-rsvp-menu[hidden]{display:none!important}


/* v0.8.0 — RSVP presentation layer.
   The shortcode outputs only the functional form. Typography follows
   the invitation's global DigitalEvents body-font variable. */
.de-rsvp-form-wrap,
.de-rsvp-form,
.de-rsvp-form label,
.de-rsvp-form legend,
.de-rsvp-form input,
.de-rsvp-form select,
.de-rsvp-form textarea,
.de-rsvp-form button,
.de-rsvp-form .de-rsvp-help,
.de-rsvp-form .de-rsvp-choice,
.de-rsvp-status,
.de-rsvp-success,
.de-rsvp-closed {
    font-family: var(--de-body-font, inherit) !important;
}
.de-rsvp-form input:not([type="radio"]):not([type="checkbox"]),
.de-rsvp-form select,
.de-rsvp-form textarea,
.de-rsvp-form .de-rsvp-choice,
.de-rsvp-form .de-rsvp-choice label {
    background: transparent !important;
}
.de-rsvp-form input,
.de-rsvp-form select,
.de-rsvp-form textarea,
.de-rsvp-form label,
.de-rsvp-form legend,
.de-rsvp-form .de-rsvp-help,
.de-rsvp-form .de-rsvp-choice {
    color: inherit;
}
.de-rsvp-form input::placeholder,
.de-rsvp-form textarea::placeholder {
    color: currentColor;
    opacity: .52;
}

/* Prevent iOS Safari/Chrome from auto-zooming focused form controls. */
.de-rsvp-form input:not([type="radio"]):not([type="checkbox"]),
.de-rsvp-form select,
.de-rsvp-form textarea {
    font-size: 16px !important;
}

.de-rsvp-form button,.de-rsvp-submit-row button{border-radius:5px!important}

/* v1.0.6 — RSVP section-specific palette. */
.de-rsvp-form,
.de-rsvp-form label,
.de-rsvp-form legend,
.de-rsvp-form .de-rsvp-help,
.de-rsvp-form .de-rsvp-choice,
.de-rsvp-form input,
.de-rsvp-form select,
.de-rsvp-form textarea {
    color: var(--de-rsvp-text-color, var(--de-text-color, #111111)) !important;
}
.de-rsvp-form input::placeholder,
.de-rsvp-form textarea::placeholder {
    color: var(--de-rsvp-text-color, var(--de-text-color, #111111)) !important;
    opacity: .52;
}
.de-rsvp-submit-row button {
    background-color: var(--de-rsvp-accent-color, var(--de-accent-color, #FBBF24)) !important;
}

/* v1.2.30 — RSVP labels aligned with the invitation body typography. */
.de-rsvp-form label > span,
.de-rsvp-form .de-rsvp-choice legend {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.5;
}

/* v1.2.48 — RSVP controls follow the section palette and consistent corners. */
.de-rsvp-form input:not([type="radio"]):not([type="checkbox"]),
.de-rsvp-form select,
.de-rsvp-form textarea,
.de-rsvp-form .de-rsvp-choice label,
.de-rsvp-form .de-rsvp-choice input[type="radio"] {
    border-color: var(--de-rsvp-text-color, var(--de-text-color, #111111)) !important;
}
.de-rsvp-form .de-rsvp-choice label { border-radius: 5px !important; }
.de-rsvp-form .de-rsvp-choice input[type="radio"] { accent-color: var(--de-rsvp-accent-color, var(--de-accent-color, #FBBF24)); }
.de-rsvp-form .de-rsvp-submit-row { justify-content: center; }
.de-rsvp-form .de-rsvp-submit-row button {
    color: var(--de-rsvp-background-color, var(--de-background-color, #ffffff)) !important;
    transition: filter .2s ease, box-shadow .2s ease;
}
.de-rsvp-form .de-rsvp-submit-row button:hover,
.de-rsvp-form .de-rsvp-submit-row button:focus-visible {
    filter: brightness(.9);
    box-shadow: 0 3px 12px rgba(0,0,0,.14);
}
@media (max-width: 640px) {
    .de-rsvp-form .de-rsvp-submit-row { align-items: center; }
    .de-rsvp-form .de-rsvp-submit-row button { width: auto; max-width: 100%; }
}

/* v1.2.50 — Uniform 5px corners for all RSVP text/number/select/textarea controls. */
.de-rsvp-form input:not([type="radio"]):not([type="checkbox"]),
.de-rsvp-form select,
.de-rsvp-form textarea { border-radius: 5px !important; }
