/* Spacious, clean styling ("Airbnb-lite") */
#wr-rsvp.wr-wrap{max-width:960px;margin:48px auto;background:#fff;border:1px solid #eee;border-radius:var(--wr-card-radius,22px);padding:calc(30px * var(--wr-spacing,1.6)) calc(30px * var(--wr-spacing,1.6)) calc(36px * var(--wr-spacing,1.6));box-shadow:0 18px 40px rgba(0,0,0,0.08)}
#wr-rsvp h2{margin:0 0 24px;font-size:30px;letter-spacing:0.2px}
.wr-hint{margin:-6px 0 18px;color:#6b7280}
.wr-split{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:18px 0}
.wr-btn{background:var(--wr-accent,#FF385C);color:#fff;border:1px solid var(--wr-accent,#FF385C);border-radius:12px;padding:14px 22px;font-weight:700;cursor:pointer}
input[type=text],input[type=email],select,textarea{width:100%;padding:18px 20px;border:1px solid #e2e8f0;border-radius:12px;line-height:1.6;font-size:16px}
.wr-guest-card{border:1px solid #f0f2f5;border-radius:20px;padding:24px;margin:28px 0;background:#fafafa;box-shadow:0 12px 28px rgba(0,0,0,0.07)}
.wr-tag{background:#fff;border:1px solid #eee;padding:6px 10px;border-radius:999px}
.wr-row{margin:20px 0}
.wr-info{background:var(--wr-notice-bg,#fff3f6);border:1px solid var(--wr-notice-border,#ffd0dc);padding:16px;border-radius:14px;margin:18px 0}
.wr-message{margin:12px 0 18px;padding:12px 14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;color:#0f172a;display:none}
.wr-error{background:#ffe8e8;border:1px solid #f2b3b3;color:#a40000}
/* Meal fields hidden by default; shown for day guests via .wr-day */
.wr-guest-card .wr-meal-fields{display:none}
.wr-guest-card.wr-day .wr-meal-fields{display:block}
.wr-callout{margin:18px 0;padding:14px 16px;border:1px dashed #e5e7eb;border-radius:12px;background:#fcfcff}
.wr-highlight{outline:2px dashed var(--wr-accent,#FF385C); outline-offset:2px}
@media (max-width:720px){ .wr-split{grid-template-columns:1fr} }

/* --- RSVP form layout polish --- */

/* Give the “Are you attending?” question a shaded card look */
.wr-attending-block {
  background: #f7f7f7;        /* soft grey shade */
  padding: 1.2rem 1.5rem;
  border-radius: 10px;
  margin-bottom: 1.5rem;      /* space after the block */
  border: 1px solid #e2e2e2;
}

/* Add vertical breathing room after each major fieldset/section */
#wr-rsvp-form .wr-section,
#wr-rsvp-form .wr-member,
#wr-rsvp-form label,
#wr-rsvp-form .form-row {
  margin-bottom: 1.2rem;
}

/* Tighten label–input spacing slightly for a cleaner look */
#wr-rsvp-form label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.4rem;
}

/* Optional: consistent input width */
#wr-rsvp-form select,
#wr-rsvp-form input[type="text"],
#wr-rsvp-form input[type="email"],
#wr-rsvp-form textarea {
  width: 100%;
  max-width: 420px;
}


/* v1.19.1: gentle spacing improvements */
.wr-form-block { margin-bottom: 28px; }
.wr-form-block input, .wr-form-block select, .wr-form-block textarea { padding: 12px 14px; }
.wr-form-block label { margin-bottom: 8px; }
.wr-container { gap: 14px; }
/* Attending gate */
.wr-attending { display:flex; gap:16px; margin:6px 0 12px; }
.wr-info { background:#f7f7f7; border:1px solid #e4e4e4; padding:12px; border-radius:6px; margin:8px 0 14px; }

