/* Neutral styles for the pieces every HTML-design layout shares: the RSVP code dialog.
 * A design themes it through its own custom properties (--bg, --ink, --accent, --f-body)
 * and may override any rule below. */
.c-modal{position:fixed;inset:0;z-index:70;background:rgba(20,20,20,.5);display:flex;align-items:center;justify-content:center;padding:20px}
.c-modal[hidden]{display:none}
.c-card{position:relative;width:min(380px,100%);max-height:88vh;overflow:auto;padding:34px 22px 26px;text-align:center;background:var(--surface,var(--bg,#fff));color:var(--ink,#222);font-family:var(--f-body,inherit);border-radius:8px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.c-card h3{font-family:var(--f-display,inherit);font-weight:500;font-size:1.7rem;line-height:1.15;color:var(--accent,inherit)}
.c-sub{font-size:.9rem;color:var(--muted,inherit);margin-top:6px}
.c-x{position:absolute;right:12px;top:8px;background:none;border:0;font-size:1.6rem;line-height:1;color:inherit;cursor:pointer}
.c-form{text-align:left;margin-top:10px}
.c-form label{display:block;font-size:.9rem;margin-top:12px}
.c-form input[type=text]{width:100%;margin-top:4px;padding:9px 10px;border:1px solid var(--line,#bbb);border-radius:4px;background:#fff;font:inherit;font-size:.95rem;color:#222}
.c-send{display:block;margin:18px auto 0;background:var(--accent,#333);color:var(--on-accent,#fff);border:0;border-radius:999px;padding:9px 30px;font:inherit;font-size:.95rem;cursor:pointer}
.c-msg{text-align:center;font-size:.88rem;margin-top:10px;min-height:1.2em}
