.bp-cal-list-wrap{border:0px solid #ddd;padding:12px;border-radius:8px}
.bp-cal-state-filters{margin-bottom:10px}
.bp-cal-state-btn{margin:0 6px 6px 0;padding:6px 10px;border:1px solid #ccc;background:#f8f8f8;border-radius:6px;cursor:pointer}
.bp-cal-state-btn.active{background:#2271b1;color:#fff;border-color:#1f6aa7}
.bp-cal-list-row{display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid #eee;padding:8px 0}
.bp-cal-rsvp-form{margin-top:12px;padding:12px;border:1px solid #ccc;border-radius:8px;background:#fff}
.bp-cal-rsvp-form label{display:block;margin:6px 0}
.bp-cal-rsvp-form input,.bp-cal-rsvp-form select{width:100%}
/* Card layout like your mock */
.bp-cal-card {
  display:grid;
  grid-template-columns: 44px 1fr auto;
  align-items:center;
  gap:16px;
  border:1px solid #ddd;
  border-radius:8px;
  padding:12px 14px;
  margin-bottom:12px;
  background:#fff;
}
.bp-cal-badge {
  display:inline-block;
  min-width:44px;
  text-align:center;
  padding:6px 8px;
  border:1px solid #ccc;
  border-radius:6px;
  color:#333;
  background:#f7f7f7;
  font-size:12px;
}
.bp-cal-card-mid .bp-cal-date { color:#666; margin-bottom:2px; }
.bp-cal-card-mid .bp-cal-title { font-weight:600; margin-bottom:2px; }
.bp-cal-card-mid .bp-cal-detail { color:#444; }
.bp-cal-card button.bp-cal-rsvp { padding:6px 10px; }


/* Lightbox shell (reuses your admin modal classes if present) */
.bp-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9998}
.bp-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9999}
.bp-modal__panel{background:#fff;border-radius:16px;max-width:760px;width:92%;max-height:90vh;overflow:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.bp-modal__panel--lg{max-width:900px}
.bp-modal__close{position:absolute;top:8px;right:12px;border:0;background:none;font-size:28px;line-height:1;cursor:pointer;color:#333}

.bp-evt-card__hero{height:400px;background:#eee center/cover no-repeat;border-radius:16px 16px 0 0;position:relative}
.bp-evt-card__date{position:absolute;top:12px;left:12px;background:#fff;border-radius:10px;padding:8px 10px;line-height:1.05;box-shadow:0 4px 12px rgba(0,0,0,.08);text-align:center}
.bp-evt-card__date .day{display:block;font-weight:700;font-size:18px;color:#111}
.bp-evt-card__date .mon{display:block;font-weight:600;font-size:11px;letter-spacing:.6px;color:#111}

.bp-evt-card__body{padding:22px}
.bp-evt-card__body .title{margin:0 0 4px;font-size:22px;font-weight:800;color:#111}
.bp-evt-card__body .time{color:#666;margin-bottom:14px}
.bp-evt-card__body .section-label{font-weight:800;font-size:12px;letter-spacing:.6px;color:#333;margin:16px 0 6px}
.bp-evt-card__body .desc p{margin:.2em 0 0.8em}
.bp-evt-card__body .desc .html{margin-top:6px; }

div.desc {font-size:15px;font-family:Lato!important;font-weight:normal!important;}

.bp-rsvp-form{margin-top:18px}

.bp-rsvp-form .row{display:grid; grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px;}

.bp-rsvp-form .field{display:flex;flex-direction:column;gap:6px}
.bp-rsvp-form .field span{font-size:12px;font-weight:800;color:#333;letter-spacing:.5px}
.bp-rsvp-form input[type=text],
.bp-rsvp-form input[type=email],
.bp-rsvp-form select{border:1px solid #ddd;border-radius:4px;padding:10px 12px;font-size:14px;width:100%}
.bp-rsvp-form .btn-submit{width:100%;border:0;border-radius:2px;padding:12px 16px;background:#111;color:#fff;font-weight:700;cursor:pointer}
.bp-rsvp-form .btn-submit:hover{opacity:.9}
.bp-rsvp-thanks{padding:14px;background:#f1f5f9;border-radius:6px}
@media (max-width:640px){ .bp-rsvp-form .row{grid-template-columns:1fr} }


/* Make the modal panel a positioning context for the close button */
.bp-modal__panel{ 
  position: relative;          /* NEW */
}

/* Close button: plus rotated 45° as an X */
.bp-modal__close--plus{
  position:absolute;
  top:10px;
  right:12px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:#111;
  color:#fff;
  font-size:22px;
  font-weight:700;
  line-height:36px;
  text-align:center;
  transform: rotate(45deg);
  cursor:pointer;
  z-index: 10001;              /* NEW: keep above hero/image/content */
}
.bp-modal__close--plus:hover{ opacity:.9; }

/* (Optional) clarify stacking for the shell */
.bp-modal-backdrop{ z-index: 9998; }
.bp-modal{ z-index: 9999; }


