/* CurioSpark v7.60.9 — Targeted Reminder Campaigns */
.v7609-launcher { margin: 1rem 0; }
.v7609-launcher-copy { max-width: 56rem; color: #66516f; }
.v7609-launcher-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin: 1rem 0 .55rem; }
.v7609-launcher-note { margin: 0; color: #685671; font-size: .86rem; }
.v7609-modal-backdrop { position: fixed; inset: 0; z-index: 10020; display: grid; place-items: center; padding: 1rem; overflow-y: auto; background: rgba(42,19,57,.5); }
.v7609-modal-backdrop[hidden] { display: none; }
.v7609-modal { position: relative; width: min(1080px, 100%); max-height: calc(100vh - 2rem); overflow: auto; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid rgba(95,37,121,.18); border-radius: 26px; background: #fffdfc; box-shadow: 0 24px 76px rgba(38,13,57,.32); }
.v7609-modal h2 { margin: .15rem 2.5rem .5rem 0; color: #311046; }
.v7609-close { position: absolute; top: 1rem; right: 1rem; width: 2.1rem; height: 2.1rem; border: 1px solid rgba(95,37,121,.22); border-radius: 50%; background: #fff; color: #5f2579; font-size: 1.45rem; line-height: 1; cursor: pointer; }
.v7609-intro { max-width: 68rem; color: #685671; }
.v7609-controls { display: grid; grid-template-columns: minmax(260px, 1fr) auto auto; gap: .8rem; align-items: end; margin: 1.2rem 0; padding: 1rem; border: 1px solid #e7dced; border-radius: 18px; background: #f8f3fa; }
.v7609-controls label, .v7609-send-panel label { display: grid; gap: .38rem; font-weight: 800; color: #4b1e63; }
.v7609-controls select, .v7609-send-panel input { width: 100%; box-sizing: border-box; min-height: 2.8rem; padding: .66rem .75rem; border: 1px solid rgba(95,37,121,.25); border-radius: 12px; background: #fff; color: #321144; font: 600 .94rem/1.35 Inter,system-ui,sans-serif; }
.v7609-controls .v7609-check { display: flex; gap: .48rem; align-items: center; max-width: 250px; padding-bottom: .65rem; color: #66516f; font-size: .88rem; font-weight: 700; }
.v7609-check input { width: 1rem; height: 1rem; accent-color: #64247f; }
.v7609-summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .7rem; margin: .7rem 0; color: #5d4965; }
.v7609-summary strong { color: #4a1d61; }
.v7609-selected-count { padding: .28rem .65rem; border-radius: 999px; background: #eee4f4; color: #5f2579; font-size: .82rem; font-weight: 800; }
.v7609-table-wrap { overflow-x: auto; margin: .8rem 0; border: 1px solid #e9deef; border-radius: 16px; }
.v7609-table { width: 100%; min-width: 800px; border-collapse: collapse; background: #fff; }
.v7609-table th { padding: .78rem .72rem; background: #faf6fb; color: #704684; font-size: .72rem; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.v7609-table td { padding: .82rem .72rem; border-top: 1px solid #eee5f1; color: #4e3d56; font-size: .9rem; vertical-align: top; }
.v7609-table td:first-child, .v7609-table th:first-child { width: 2.5rem; text-align: center; }
.v7609-table td span { color: #75637e; font-size: .82rem; }
.v7609-table input[type="checkbox"] { width: 1rem; height: 1rem; accent-color: #64247f; }
.v7609-table tr.is-recent { background: #fffaf0; }
.v7609-send-panel { margin-top: 1rem; padding: 1rem; border: 1px solid #ddcdea; border-radius: 18px; background: #fcf9fd; }
.v7609-send-panel p { color: #5f4d67; }
.v7609-limit { font-size: .88rem; }
.v7609-send-panel label { max-width: 420px; margin: .85rem 0; }
.v7609-send-actions { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }
.v7609-status { min-height: 1.25rem; margin: .85rem 0 0; color: #5f2579; font-weight: 700; }
.v7609-status.is-good { color: #187544; }
.v7609-status.is-warn { color: #8a5f0f; }
.v7609-status.is-error { color: #ae263d; }
@media (max-width: 760px) {
  .v7609-controls { grid-template-columns: 1fr; }
  .v7609-controls .v7609-check { padding-bottom: 0; }
  .v7609-modal { border-radius: 20px; }
  .v7609-launcher-actions > *, .v7609-send-actions > * { flex: 1 1 180px; }
}

/* v7.61: Email Center polish. This styling lives in the same file so the page does not
   depend on missing v7.60.8 assets. */
.v7608-email-intro { max-width: 64rem; color: #66516f; }
.v7608-brand-badge { display: inline-block; margin: .2rem 0 1rem; padding: .42rem .72rem; border-radius: 999px; background: #f0e6f5; color: #5f2579; font-size: .82rem; font-weight: 800; }
.v7608-email-preview { margin-top: .9rem; padding: 1rem; border: 1px solid #e5d8eb; border-radius: 14px; background: #fbf7fc; color: #5a4863; }
.v7608-email-preview-label { margin: 0; color: #6b4081; font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
