.kwf-sg-launcher{margin:24px 0;padding:22px;border:1px solid #dfe7e2;border-radius:16px;background:#f7fbf8;display:flex;align-items:center;justify-content:space-between;gap:24px}.kwf-sg-launcher h3{margin:4px 0 6px}.kwf-sg-launcher p{margin:0}.kwf-sg-eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#16723b}.kwf-sg-open{white-space:nowrap}.kwf-sg-modal[hidden]{display:none}.kwf-sg-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}.kwf-sg-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.68)}.kwf-sg-modal__dialog{position:relative;width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.kwf-sg-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;cursor:pointer}.kwf-sg-step{display:none}.kwf-sg-step.is-active{display:block}.kwf-sg-step-label{font-size:12px;font-weight:700;color:#16723b}.kwf-sg-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kwf-sg-plan-card input{position:absolute;opacity:0}.kwf-sg-plan-card__body{display:block;border:1px solid #d8e1dc;border-radius:14px;padding:18px;height:100%;cursor:pointer}.kwf-sg-plan-card input:checked+.kwf-sg-plan-card__body{border-color:#16813f;background:#eef9f1;box-shadow:0 0 0 2px rgba(22,129,63,.12)}.kwf-sg-plan-card strong,.kwf-sg-plan-card span span{display:block}.kwf-sg-plan-card span span{font-size:14px;margin-top:5px;color:#536057}.kwf-sg-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kwf-sg-fields label span{display:block;font-weight:600;margin-bottom:5px}.kwf-sg-fields input,.kwf-sg-fields select{width:100%}.kwf-sg-wide{grid-column:1/-1}.kwf-sg-help{font-size:13px;color:#59645e}.kwf-sg-review dl{display:grid;gap:0;border:1px solid #e2e8e4;border-radius:14px;overflow:hidden}.kwf-sg-review dl div{display:grid;grid-template-columns:1fr 1.3fr;padding:12px 14px;border-bottom:1px solid #e2e8e4}.kwf-sg-review dl div:last-child{border-bottom:0}.kwf-sg-review dt{font-weight:600}.kwf-sg-review dd{margin:0}.kwf-sg-wizard footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.kwf-sg-error{margin-top:14px;padding:10px 12px;background:#fff1f1;color:#a41e1e;border-radius:8px}.kwf-sg-modal-open{overflow:hidden}@media(max-width:640px){.kwf-sg-launcher{align-items:flex-start;flex-direction:column}.kwf-sg-plan-grid,.kwf-sg-fields{grid-template-columns:1fr}.kwf-sg-wide{grid-column:auto}.kwf-sg-modal__dialog{padding:22px 16px}.kwf-sg-review dl div{grid-template-columns:1fr;gap:3px}}
.kwf-sg-friday-intro{padding:14px 16px;margin-bottom:16px;border:1px solid #d9eadf;border-radius:12px;background:#f5fbf7}.kwf-sg-friday-intro strong{display:block;margin-bottom:4px}.kwf-sg-friday-intro p{margin:0}.kwf-sg-location-action{display:flex;align-items:center;gap:12px}.kwf-sg-location-status{font-size:13px}.kwf-sg-review details{margin-top:16px}.kwf-sg-review summary{cursor:pointer;font-weight:700}.kwf-sg-preview-list{max-height:240px;overflow:auto;margin:12px 0 0;padding-left:22px}.kwf-sg-preview-list li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #edf0f2}.kwf-sg-preview-list strong{white-space:nowrap;font-size:13px}
.kwf-sg-night-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}.kwf-sg-night-grid label{display:flex;align-items:center;gap:7px;border:1px solid #dfe5e8;border-radius:10px;padding:10px;background:#fff}.kwf-sg-night-grid input{margin:0}.kwf-sg-ten-nights-intro{padding:14px 16px;border-radius:12px;background:#f7f2ff;border:1px solid #e7d8ff;margin-bottom:16px}.kwf-sg-ten-nights-intro p{margin:5px 0 0}@media(max-width:680px){.kwf-sg-night-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kwf-sg-muharram-intro{padding:14px 16px;border-radius:12px;background:#eef9ff;border:1px solid #cfeaf7;margin-bottom:16px}.kwf-sg-muharram-intro p{margin:5px 0 0}.kwf-sg-impact-card{margin-top:16px;padding:18px;border:1px solid #bfe1ef;border-radius:14px;background:#f2fbff}.kwf-sg-impact-card span,.kwf-sg-impact-card strong,.kwf-sg-impact-card small{display:block}.kwf-sg-impact-card strong{font-size:24px;margin:3px 0}.kwf-sg-impact-card small{color:#53656d}

/* v0.6.0 Donor Portal integration */
.kwf-sg-portal{display:grid;gap:22px}.kwf-sg-portal__header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px;border:1px solid #e3e9e5;border-radius:18px;background:#fff}.kwf-sg-eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#15803d}.kwf-sg-portal__header h2{margin:4px 0 8px}.kwf-sg-portal__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kwf-sg-stat{padding:18px;border:1px solid #e3e9e5;border-radius:15px;background:#fff}.kwf-sg-stat strong{display:block;font-size:24px}.kwf-sg-stat span{display:block;color:#64748b;margin-top:4px}.kwf-sg-portal__plans{display:grid;gap:16px}.kwf-sg-portal-plan{border:1px solid #e3e9e5;border-radius:18px;padding:20px;background:#fff}.kwf-sg-portal-plan__top{display:flex;justify-content:space-between;gap:16px}.kwf-sg-portal-plan__top h3{margin:8px 0 2px}.kwf-sg-portal-plan__top p{margin:0;color:#64748b}.kwf-sg-status{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef2f7;font-size:12px;font-weight:800}.kwf-sg-status--active{background:#dcfce7;color:#166534}.kwf-sg-status--paused{background:#fef3c7;color:#92400e}.kwf-sg-status--cancelled{background:#fee2e2;color:#991b1b}.kwf-sg-portal-plan__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.kwf-sg-portal-plan__grid div{padding:12px;background:#f8fafc;border-radius:12px}.kwf-sg-portal-plan__grid span,.kwf-sg-portal-plan__grid strong{display:block}.kwf-sg-portal-plan__grid span{font-size:12px;color:#64748b}.kwf-sg-portal-plan__next{margin:14px 0 0;font-weight:700}.kwf-sg-portal-empty{padding:28px;border:1px dashed #cbd5e1;border-radius:16px;text-align:center;background:#f8fafc}@media(max-width:800px){.kwf-sg-portal__stats,.kwf-sg-portal-plan__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kwf-sg-portal__header{display:block}.kwf-sg-portal__header .button{margin-top:12px}}@media(max-width:480px){.kwf-sg-portal__stats,.kwf-sg-portal-plan__grid{grid-template-columns:1fr}}

/* v0.6.2 visual donor portal and giving calendar */
.kwf-sg-portal{--sg-green:#087a3e;--sg-ink:#17221c;--sg-muted:#68766e;--sg-line:#dfe8e2;--sg-soft:#f3f8f5;background:linear-gradient(180deg,#f7fbf8 0,#fff 280px);padding:clamp(14px,2vw,28px);border-radius:24px}.kwf-sg-portal__header{background:linear-gradient(135deg,#063f26,#0b7a43);color:#fff;border:0;box-shadow:0 18px 45px rgba(6,63,38,.18)}.kwf-sg-portal__header .kwf-sg-eyebrow,.kwf-sg-portal__header p{color:rgba(255,255,255,.82)}.kwf-sg-portal__header .button{background:#fff;color:#075d34;border:0}.kwf-sg-stat{box-shadow:0 8px 24px rgba(15,50,30,.06)}.kwf-sg-calendar{border:1px solid var(--sg-line);border-radius:20px;background:#fff;padding:20px;box-shadow:0 8px 28px rgba(15,50,30,.05)}.kwf-sg-calendar__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.kwf-sg-calendar__head h3{margin:4px 0 6px}.kwf-sg-calendar__head p{margin:0;color:var(--sg-muted)}.kwf-sg-calendar__legend{display:flex;gap:8px;flex-wrap:wrap}.kwf-sg-calendar__legend span{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.kwf-sg-calendar__legend .is-upcoming{background:#e6f4ff;color:#075985}.kwf-sg-calendar__legend .is-paid{background:#dcfce7;color:#166534}.kwf-sg-calendar__legend .is-changed{background:#f1f5f9;color:#475569}.kwf-sg-calendar__months{display:grid;gap:18px;margin-top:18px}.kwf-sg-calendar-month h4{margin:0 0 9px;font-size:15px}.kwf-sg-calendar-month__events{display:grid;gap:8px}.kwf-sg-calendar-event{display:grid;grid-template-columns:90px minmax(0,1fr) 120px;gap:14px;align-items:center;padding:12px 14px;border:1px solid #e5ebe7;border-left:5px solid #0ea5e9;border-radius:13px}.kwf-sg-calendar-event.is-paid{border-left-color:#22c55e;background:#f7fff9}.kwf-sg-calendar-event.is-changed{border-left-color:#94a3b8;background:#f8fafc}.kwf-sg-calendar-event__date strong,.kwf-sg-calendar-event__date span,.kwf-sg-calendar-event__copy strong,.kwf-sg-calendar-event__copy span,.kwf-sg-calendar-event__amount strong,.kwf-sg-calendar-event__amount span{display:block}.kwf-sg-calendar-event__date span,.kwf-sg-calendar-event__copy span,.kwf-sg-calendar-event__amount span{color:var(--sg-muted);font-size:12px}.kwf-sg-calendar-event__amount{text-align:right}.kwf-sg-portal-plan{box-shadow:0 8px 24px rgba(15,50,30,.05);transition:transform .15s ease,box-shadow .15s ease}.kwf-sg-portal-plan:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,50,30,.09)}@media(max-width:680px){.kwf-sg-calendar__head{display:block}.kwf-sg-calendar__legend{margin-top:12px}.kwf-sg-calendar-event{grid-template-columns:72px minmax(0,1fr)}.kwf-sg-calendar-event__amount{grid-column:2;text-align:left}}
.kwf-sg-impact-timeline{margin-top:28px}.kwf-sg-impact-timeline__items{display:grid;gap:16px}.kwf-sg-impact-event{position:relative;padding:20px;border:1px solid #dfe7e2;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(20,70,40,.06)}.kwf-sg-impact-event h4{margin:8px 0}.kwf-sg-impact-event__status{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eaf7ee;color:#087a2f;font-weight:700;font-size:12px}.kwf-sg-impact-event__metrics{font-weight:700;color:#087a2f}
