.member-panel .member-invite.dd-rsvp-invite {
    display: grid;
    grid-template-columns: clamp(64px, 16vw, 96px) minmax(0, 1fr) 36px;
    gap: 14px 16px;
    align-items: start;
}
.dd-rsvp-cover {
    display: grid;
    place-items: center;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border: 1px solid #e8dbef;
    border-radius: 12px;
    background: #f5ebfc;
    color: #6f289f;
    font-size: 1.7rem;
    font-weight: 650;
}
.dd-rsvp-cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.member-panel .dd-rsvp-invite > .dd-rsvp-cover { grid-area: 1 / 1; }
.member-panel .dd-rsvp-invite > .member-invite-body { display: block; min-width: 0; grid-area: 1 / 2; }
.member-panel .dd-rsvp-invite > .member-edit { grid-area: 1 / 3; }
.dd-rsvp-invite .member-invite-title h3 { font-size: 1.04rem; }
.dd-rsvp-invite-date { display: block; margin-block: 5px 0; color: #675971; font-size: .82rem; }
.member-panel .dd-rsvp-invite .member-counts { flex-wrap: wrap; margin-block: 9px 0; gap: 7px 12px; }
.member-panel .dd-rsvp-invite > .member-actions { grid-column: 1 / -1; margin: 0; padding-top: 8px; }
.member-panel .dd-rsvp-invite .member-action {
    min-height: 44px;
    flex-direction: row;
    justify-content: flex-start;
    gap: 7px;
    padding: 7px 9px;
    text-align: start;
    overflow-wrap: anywhere;
}
.member-panel .dd-rsvp-invite .member-action svg { flex: 0 0 16px; width: 16px; height: 16px; }
.dd-rsvp-publication { grid-column: 1 / -1; }
.dd-rsvp-publication:not(:has(> *)) { display: none; }
.member-panel .dd-rsvp-publication .publication-notice {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 3px 12px;
    margin: 0;
    padding: 6px 9px;
    border-radius: 8px;
    font-size: .78rem;
    line-height: 1.35;
}
.member-panel .dd-rsvp-publication .publication-notice > small { margin: 0; font-size: inherit; }
.member-panel .dd-rsvp-publication .publication-notice details { margin: 0; }
.member-panel .dd-rsvp-publication .publication-notice details[open] { flex-basis: 100%; }
.member-panel .dd-rsvp-publication .publication-notice summary {
    min-height: 0;
    margin: 0;
    padding: 2px 0;
    font-size: inherit;
    line-height: inherit;
}
.dd-rsvp-open {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    min-height: 42px;
    min-width: 0;
    padding: 6px 9px;
    border: 1px solid #e9d8f5;
    border-radius: 9px;
    background: #f8effe;
    color: #641e96;
    font-size: .78rem;
    font-weight: 650;
    text-align: start;
    cursor: pointer;
}
.dd-rsvp-open:hover { background: #f1e0fc; }
.dd-rsvp-open > span { overflow-wrap: anywhere; }
.dd-rsvp-count { padding: 1px 5px; border-radius: 5px; background: #eee0f8; }
.dd-rsvp-recent ul, .dd-rsvp-guests { list-style: none; padding: 0; margin: 0; }
.dd-rsvp-recent-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 13px 18px;
    border: 0;
    border-top: 1px solid #f0e8f5;
    background: #fff;
    color: #262031;
    text-align: start;
    cursor: pointer;
}
.dd-rsvp-recent-row:hover { background: #faf5fe; }
.dd-rsvp-recent-name { display: grid; gap: 3px; min-width: 0; overflow-wrap: anywhere; }
.dd-rsvp-recent-name strong { font-size: .87rem; }
.dd-rsvp-recent-name > span { color: #675971; font-size: .77rem; }
.dd-rsvp-recent .dd-rsvp-state { margin: 0 14px 14px; }
.notification-popover a[href*="/panel?responses="] {
    margin-block-start: 4px;
    border: 1px solid #eee3f4;
    border-radius: 8px;
    background: #faf5fe;
    color: #502d66;
    line-height: 1.4;
    text-align: start;
    overflow-wrap: anywhere;
}
.notification-popover a[href*="/panel?responses="]:is(:hover,:focus-visible) { background: #f1e0fc; }

.responses-dialog.dd-rsvp-dialog {
    box-sizing: border-box;
    width: min(710px, calc(100% - 24px));
    max-width: 710px !important;
    max-height: 90vh;
    max-height: min(90dvh, 850px);
    padding: 0;
    border: 1px solid #ede4f2;
    border-radius: 19px;
    background: #fff;
    color: #292035;
    overscroll-behavior: contain;
    overflow-y: auto;
    overflow-x: hidden;
}
.dd-rsvp-view { min-width: 0; padding: 20px; font-family: Inter, system-ui, sans-serif; text-align: start; }
.dd-rsvp-dialog-head {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) 42px;
    align-items: center;
    gap: 11px;
    margin-block-end: 19px;
}
.dd-rsvp-dialog-head .dd-rsvp-cover { border-radius: 8px; font-size: 1.15rem; }
.dd-rsvp-title { margin: 0; font: 700 clamp(1.17rem, 3vw, 1.55rem)/1.23 Inter, system-ui, sans-serif; overflow-wrap: anywhere; }
.dd-rsvp-subtitle { margin: 4px 0 0; color: #675971; font-size: .84rem; overflow-wrap: anywhere; }
.dd-rsvp-close {
    display: grid;
    place-items: center;
    align-self: start;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    border: 1px solid #eee4f5;
    background: #faf6fd;
    color: #5c4670;
    font-size: 1.5rem;
    cursor: pointer;
}
.dd-rsvp-filters { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.dd-rsvp-filter {
    display: grid;
    gap: 4px;
    min-height: 67px;
    padding: 8px 9px;
    border: 1px solid #ede3f4;
    border-radius: 11px;
    background: #faf7fc;
    text-align: start;
    color: #62516f;
    cursor: pointer;
}
.dd-rsvp-filter[aria-pressed=true] { border-color: #a962dc; background: #f6eafd; box-shadow: inset 0 0 0 1px #a962dc; }
.dd-rsvp-filter b { color: #3d2252; font-size: 1.2rem; line-height: 1; font-variant-numeric: tabular-nums; }
.dd-rsvp-filter > span { font-size: .78rem; overflow-wrap: anywhere; }
.dd-rsvp-filter.dd-rsvp-yes > span { color: #176145; }
.dd-rsvp-filter.dd-rsvp-no > span { color: #97374f; }
.dd-rsvp-filter.dd-rsvp-maybe > span { color: #774a15; }
.dd-rsvp-attending { margin: 10px 0 14px; color: #584269; font-size: .85rem; font-weight: 600; }
.dd-rsvp-tools { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.dd-rsvp-search input {
    box-sizing: border-box;
    width: 100%;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid #e5d9ee;
    border-radius: 9px;
    background: #fff;
    color: #292035;
    font-size: .92rem;
}
.dd-rsvp-search input::placeholder { color: #746582; }
.dd-rsvp-tools .dd-rsvp-download {
    min-height: 42px;
    padding: 7px 10px;
    border-radius: 9px;
    font-size: .78rem;
    white-space: normal;
    text-align: center;
}
.dd-rsvp-result-count { margin: 11px 0 7px; color: #675971; font-size: .79rem; }
.dd-rsvp-guests { display: grid; gap: 8px; }
.dd-rsvp-guest { padding: 12px; border: 1px solid #eee5f3; border-radius: 12px; background: #fff; min-width: 0; }
.dd-rsvp-guest-head { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.dd-rsvp-guest-head h3 { margin: 0; color: #292035; font: 650 .96rem/1.4 Inter, system-ui, sans-serif; overflow-wrap: anywhere; }
.dd-rsvp-badge {
    flex: 0 0 auto;
    max-width: 48%;
    padding: 4px 8px;
    border-radius: 7px;
    background: #f1edf4;
    color: #5c4c66;
    font-size: .73rem;
    font-weight: 650;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.dd-rsvp-badge.dd-rsvp-yes { background: #e5f6ee; color: #176145; }
.dd-rsvp-badge.dd-rsvp-no { background: #fceaf0; color: #97374f; }
.dd-rsvp-badge.dd-rsvp-maybe { background: #fff1d9; color: #774a15; }
.dd-rsvp-meta { display: flex; flex-wrap: wrap; gap: 3px 13px; margin-block-start: 5px; color: #675971; font-size: .78rem; }
.dd-rsvp-note { display: grid; gap: 3px; margin: 8px 0 0; padding: 7px 9px; border-radius: 7px; background: #faf6fd; color: #4b3d56; font-size: .83rem; }
.dd-rsvp-note > span { white-space: pre-wrap; overflow-wrap: anywhere; }
.dd-rsvp-state { margin: 0; padding: 14px; border-radius: 10px; background: #f8f3fb; color: #5f4c6e; font-size: .88rem; }
.dd-rsvp-state .button { margin-block-start: 8px; }
.dd-rsvp-view :is(button,input):focus-visible { outline: 2px solid #8c34c6; outline-offset: 2px; }
.dd-rsvp-sr { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 520px) {
    .member-panel .member-invite.dd-rsvp-invite { gap: 10px; padding: 13px; }
    .dd-rsvp-view { padding: 14px; }
    .dd-rsvp-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
    .dd-rsvp-filter { min-height: 48px; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 7px; }
    .dd-rsvp-tools { grid-template-columns: minmax(0, 1fr); }
    .dd-rsvp-tools .dd-rsvp-download { justify-self: start; }
    .dd-rsvp-dialog-head { margin-block-end: 12px; }
}
