
.dk-public-page{margin:0;background:var(--dk-bg,#f6f8fb);color:var(--dk-text,#121a2a);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.dk-public-shell{width:min(calc(100% - 32px),1120px);margin:auto;padding:28px 0 100px}.dk-campaign-public{background:var(--dk-surface,#fff);border:1px solid var(--dk-border,#e7ebf0);border-radius:calc(var(--dk-radius,16px) + 8px);overflow:hidden;box-shadow:0 18px 55px rgba(16,24,40,.08)}.dk-public-cover{aspect-ratio:16/7;background:#eef2f6}.dk-public-cover img{width:100%;height:100%;object-fit:cover}.dk-campaign-hero{padding:42px;background:linear-gradient(135deg,var(--dk-secondary,#0f172a),var(--dk-primary,#15a34a));color:#fff}.dk-campaign-hero h1{font-size:clamp(36px,5vw,58px);line-height:1.04;letter-spacing:-.04em;margin:12px 0}.dk-campaign-hero p{font-size:17px;line-height:1.7;max-width:760px;color:rgba(255,255,255,.82)}.dk-kicker{display:inline-block;background:var(--dk-accent,#22c55e);color:var(--dk-secondary,#0f172a);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;letter-spacing:.06em}.dk-public-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:28px;padding:28px}.dk-story article{font-size:17px;line-height:1.8;color:#344054}.dk-progress{margin-bottom:26px}.dk-progress-row{display:flex;justify-content:space-between;align-items:end}.dk-progress-row strong{font-size:28px}.dk-progress-track,.dk-mini-progress{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:10px 0}.dk-progress-track i,.dk-mini-progress i{display:block;height:100%;background:var(--dk-primary,#15a34a)}.dk-donation-box{position:sticky;top:20px;border:1px solid var(--dk-border,#e7ebf0);border-radius:var(--dk-radius,16px);padding:20px;background:var(--dk-surface,#fff);box-shadow:0 12px 35px rgba(16,24,40,.06)}.dk-donation-box h2{margin-top:0}.dk-donation-box label{display:block;font-weight:650;margin-bottom:13px}.dk-donation-box input,.dk-donation-box select{box-sizing:border-box;width:100%;min-height:46px;padding:11px;border:1px solid #d0d5dd;border-radius:12px;margin-top:6px}.dk-form-inline{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dk-amounts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.dk-amounts label{margin:0}.dk-amounts input{display:none}.dk-amounts span{display:block;padding:11px;border:1px solid #d0d5dd;border-radius:12px;text-align:center;cursor:pointer}.dk-amounts input:checked+span{border-color:var(--dk-primary,#15a34a);background:color-mix(in srgb,var(--dk-primary,#15a34a) 9%,white);color:var(--dk-primary,#15a34a)}.dk-donate-btn{width:100%;min-height:52px;border:0;border-radius:var(--dk-button-radius,14px);background:var(--dk-primary,#15a34a);color:#fff;font-size:16px;font-weight:850;cursor:pointer}.dk-share{display:flex;justify-content:center;gap:8px;margin-top:14px;font-size:13px}.dk-share a{color:var(--dk-primary,#15a34a);font-weight:700}.dk-donor-list,.dk-updates{margin-top:34px}.dk-donor-list>div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--dk-border,#e7ebf0)}.dk-update-card{border-left:3px solid var(--dk-primary,#15a34a);padding:3px 0 3px 16px;margin:18px 0}.dk-update-card small{color:var(--dk-muted,#697386)}.dk-campaign-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dk-campaign-card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--dk-border,#e7ebf0);border-radius:var(--dk-radius,16px);overflow:hidden;box-shadow:0 8px 20px rgba(16,24,40,.05)}.dk-campaign-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.dk-campaign-card-body{padding:18px}.dk-campaign-card-body h3{font-size:20px;margin:7px 0}.dk-campaign-card-body p{color:var(--dk-muted,#697386);line-height:1.6}.dk-inline-campaign{padding:18px;border:1px solid var(--dk-border,#e7ebf0);border-radius:var(--dk-radius,16px);background:#fff}
@media(max-width:850px){.dk-public-shell{width:100%;padding:0 0 100px}.dk-campaign-public{border:0;border-radius:0;box-shadow:none}.dk-public-cover{aspect-ratio:16/10}.dk-campaign-hero{padding:28px 20px;border-radius:0 0 26px 26px}.dk-public-grid{display:block;padding:20px}.dk-donation-box{position:static;margin-top:24px}.dk-campaign-list{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.dk-campaign-list{grid-template-columns:1fr}.dk-form-inline{grid-template-columns:1fr}.dk-amounts{grid-template-columns:1fr 1fr}.dk-campaign-hero h1{font-size:34px}}

.dk-amounts-rich{display:flex;flex-direction:column;gap:10px;margin:14px 0 18px}.dk-amount-option{margin:0!important;cursor:pointer}.dk-amount-option input{position:absolute;opacity:0;pointer-events:none}.dk-amount-option-body{position:relative;display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:12px;align-items:center;padding:14px 16px;border:1.5px solid #d8dee8;border-radius:14px;background:#fff;transition:.18s}.dk-amount-option-body strong{font-size:16px}.dk-amount-option-body small{font-size:14px}.dk-amount-option-body em{grid-column:1/-1;justify-self:start;font-style:normal;font-size:11px;font-weight:800;color:var(--dk-primary);background:color-mix(in srgb,var(--dk-primary) 9%,white);padding:4px 8px;border-radius:999px}.dk-amount-option input:checked+.dk-amount-option-body{border-color:var(--dk-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--dk-primary) 10%,transparent);background:color-mix(in srgb,var(--dk-primary) 4%,white)}.dk-amount-option input:checked+.dk-amount-option-body:after{content:'✓';position:absolute;right:14px;top:14px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--dk-primary);color:#fff;font-size:13px;font-weight:900}@media(max-width:480px){.dk-amount-option-body{grid-template-columns:1fr;gap:3px;padding-right:46px}}


/* =========================================================
   DonasiKit 2.2 — Campaign landing + separate checkout
   ========================================================= */
.dk-campaign-info-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:28px;padding:28px}
.dk-campaign-side{min-width:0}
.dk-campaign-action-card{position:sticky;top:20px;background:var(--dk-surface,#fff);border:1px solid var(--dk-border,#e7ebf0);border-radius:var(--dk-radius,16px);padding:20px;box-shadow:0 12px 35px rgba(16,24,40,.06)}
.dk-campaign-action-card h2{font-size:20px;line-height:1.35;margin:8px 0 18px}
.dk-action-label{font-size:12px;font-weight:800;color:var(--dk-primary,#15a34a)}
.dk-primary-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;border-radius:var(--dk-button-radius,14px);background:var(--dk-primary,#15a34a);color:#fff!important;text-decoration:none;font-weight:850}
.dk-campaign-share{display:flex;justify-content:center;gap:8px;margin-top:14px;font-size:13px}
.dk-campaign-share a{color:var(--dk-primary,#15a34a);font-weight:800}
.dk-campaign-mobile-cta{display:none}
.dk-mobile-sticky-cta{display:none}

.dk-checkout-page{background:#f4f7fa!important;padding:0!important}
.dk-checkout-page .dkt-top,
.dk-checkout-page .dkt-bottom,
.dk-checkout-page .dkt-footer,
.dk-checkout-page header:not(.dk-checkout-topbar),
.dk-checkout-page footer{display:none!important}
.dk-checkout-shell{width:min(100%,620px);margin:18px auto 40px;background:#fff;border:1px solid #e4e9ef;border-radius:16px;overflow:hidden;box-shadow:0 16px 45px rgba(16,24,40,.08)}
.dk-checkout-topbar{min-height:60px;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;padding:0 16px;border-bottom:1px solid #e8edf2;background:#fff}
.dk-checkout-topbar strong{text-align:center;font-size:15px;color:#263b52}
.dk-checkout-back{width:34px;height:34px;display:grid;place-items:center;text-decoration:none;color:#36516d;font-size:31px;line-height:1;border-radius:50%}
.dk-checkout-back:hover{background:#f3f6f9}
.dk-checkout-program{display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #e8edf2;background:#fff}
.dk-checkout-program-image,.dk-checkout-program-placeholder{flex:0 0 104px;width:104px;height:74px;border-radius:9px;overflow:hidden;background:#edf7ff}
.dk-checkout-program-image img{width:100%;height:100%;object-fit:cover}
.dk-checkout-program-placeholder{display:grid;place-items:center;color:#719eca;font-size:11px;font-weight:900}
.dk-checkout-program small{display:block;color:#95a4b5;font-size:12px;margin-bottom:4px}
.dk-checkout-program h1{font-size:17px;line-height:1.4;margin:0;color:#23374d}

.dk-checkout-form{padding:22px 22px 110px}
.dk-checkout-section{margin-bottom:30px}
.dk-checkout-section>h2{font-size:18px;line-height:1.3;color:#203854;margin:0 0 14px}
.dk-checkout-label{margin:0 0 4px;color:#738499;font-size:12px;font-weight:700}
.dk-checkout-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dk-checkout-package{position:relative;min-width:0;min-height:94px;padding:12px 9px;border:1px solid #dfe7ee;border-radius:11px;background:#fff;cursor:pointer;display:flex;align-items:flex-start;gap:9px;box-shadow:0 2px 8px rgba(35,55,77,.04);text-align:left}
button.dk-checkout-package{font:inherit;color:inherit}
.dk-checkout-package input{position:absolute;opacity:0;pointer-events:none}
.dk-package-check{flex:0 0 27px;width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#a8dc7b,#63a33d);color:#fff;font-size:15px;font-weight:900;box-shadow:0 4px 0 #5b9b3a}
.dk-package-copy{min-width:0;display:block}
.dk-package-copy strong{display:block;color:#23374d;font-size:14px;line-height:1.25}
.dk-package-copy small{display:block;color:#667d95;font-size:11px;line-height:1.3;margin-top:4px}
.dk-package-copy em{display:inline-block;margin-top:6px;padding:3px 6px;border-radius:999px;background:#eaf8ef;color:#198547;font-size:9px;font-style:normal;font-weight:900}
.dk-checkout-package:has(input:checked){border:2px solid var(--dk-primary,#15a34a);padding:11px 8px;background:#f5fcf7}
.dk-checkout-package.is-popular{box-shadow:0 0 0 2px color-mix(in srgb,var(--dk-primary,#15a34a) 8%,transparent)}
.dk-custom-package .dk-package-check{background:transparent;color:#5a7188;box-shadow:none;border:1px dashed #aebcca;font-size:22px}
.dk-checkout-custom-wrap{display:none;position:relative;margin-top:12px}
.dk-checkout-custom-wrap.is-visible{display:block}
.dk-checkout-custom-wrap span{position:absolute;left:14px;top:14px;color:#719eca;font-weight:800}
.dk-checkout-custom-wrap input{width:100%;height:52px;padding:10px 14px 10px 46px;border:1px solid #dfe7ee;border-radius:9px;text-align:right;font-size:20px;font-weight:800;color:#23374d}
.dk-checkout-minimum{display:block;margin-top:6px;color:#738499;font-size:12px}

.dk-payment-groups{display:grid;gap:18px}
.dk-payment-group{display:grid;gap:8px}
.dk-payment-group-title{color:#667d95;font-size:12px;font-weight:800}
.dk-payment-card{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid #dfe7ee;border-radius:10px;background:#fff;cursor:pointer}
.dk-payment-card input{position:absolute;opacity:0;pointer-events:none}
.dk-payment-radio{width:18px;height:18px;border:1.5px solid #95a5b5;border-radius:50%;display:block}
.dk-payment-card:has(input:checked){border:2px solid var(--dk-primary,#15a34a);padding:11px;background:#f5fcf7}
.dk-payment-card:has(input:checked) .dk-payment-radio{border:5px solid var(--dk-primary,#15a34a)}
.dk-payment-main{min-width:0}
.dk-payment-main strong,.dk-payment-main b,.dk-payment-main small,.dk-payment-main em{display:block}
.dk-payment-main strong{font-size:14px;color:#23374d}
.dk-payment-main b{font-size:16px;letter-spacing:.3px;margin-top:4px;color:#23374d}
.dk-payment-main small{font-size:12px;color:#718196;margin-top:2px}
.dk-payment-main em{font-size:11px;color:#738499;font-style:normal;margin-top:5px;line-height:1.4}
.dk-copy-account{border:1px solid #a8bfd3;background:#fff;color:#4a80b2;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800;cursor:pointer}
.dk-checkout-alert{padding:12px 14px;border-radius:9px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-size:13px}

.dk-checkout-field{display:block;margin-bottom:12px}
.dk-checkout-field>span{display:block;color:#485c71;font-size:12px;font-weight:800;margin-bottom:6px}
.dk-checkout-field>span small{font-weight:500;color:#95a4b5}
.dk-checkout-field input,.dk-checkout-field textarea{box-sizing:border-box;width:100%;border:1px solid #dfe7ee;border-radius:8px;background:#fff;color:#23374d;padding:13px 14px;font:500 14px inherit;outline:none}
.dk-checkout-field input{height:49px}
.dk-checkout-field textarea{resize:vertical;min-height:90px}
.dk-checkout-field input:focus,.dk-checkout-field textarea:focus{border-color:#719eca;box-shadow:0 0 0 3px rgba(113,158,202,.10)}
.dk-checkout-submit-spacer{height:10px}
.dk-checkout-submit{position:fixed;z-index:99999;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(588px,calc(100% - 32px));min-height:56px;padding:12px 18px;border:0;border-radius:12px;background:var(--dk-primary,#15a34a);color:#fff;box-shadow:0 10px 28px color-mix(in srgb,var(--dk-primary,#15a34a) 32%,transparent);font-size:15px;font-weight:850;cursor:pointer}
.dk-checkout-submit span,.dk-checkout-submit strong{display:inline}
.dk-checkout-submit strong:not(:empty):before{content:" — "}

@media(max-width:850px){
  .dk-campaign-info-grid{display:block;padding:20px}
  .dk-campaign-side{display:none}
  .dk-campaign-mobile-cta{display:block;margin:0 0 26px}
  .dk-mobile-sticky-cta{display:block;position:fixed;z-index:99998;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom))}
  .dk-mobile-sticky-cta a{display:flex;align-items:center;justify-content:center;height:54px;background:var(--dk-primary,#15a34a);color:#fff;text-decoration:none;border-radius:15px;font-weight:900;box-shadow:0 10px 30px color-mix(in srgb,var(--dk-primary,#15a34a) 30%,transparent)}
  .dk-campaign-page{padding-bottom:82px!important}
}

@media(max-width:620px){
  .dk-checkout-shell{width:100%;margin:0;border:0;border-radius:0;box-shadow:none;min-height:100vh}
  .dk-checkout-form{padding:20px 16px 112px}
  .dk-checkout-program{padding:16px}
  .dk-checkout-packages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dk-checkout-package{min-height:88px}
  .dk-checkout-submit{width:calc(100% - 28px);bottom:max(12px,env(safe-area-inset-bottom))}
}


/* DonasiKit 2.2.2 — hardening checkout mobile rendering */
@media(max-width:767px){
  html,
  body.dk-checkout-page{
    width:100%!important;
    max-width:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow-x:hidden!important;
    background:#f4f7fa!important;
  }

  body.dk-checkout-page #page,
  body.dk-checkout-page #content,
  body.dk-checkout-page .site,
  body.dk-checkout-page .site-content,
  body.dk-checkout-page main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }

  body.dk-checkout-page .dk-checkout-shell{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  body.dk-checkout-page .dk-checkout-topbar{
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
    background:#fff!important;
  }

  body.dk-checkout-page .dk-checkout-program{
    display:flex!important;
  }

  body.dk-checkout-page .dk-checkout-form{
    display:block!important;
    width:100%!important;
    padding:18px 14px 110px!important;
  }

  body.dk-checkout-page .dk-checkout-section{
    display:block!important;
    width:100%!important;
    margin-bottom:26px!important;
  }

  body.dk-checkout-page .dk-checkout-packages{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  body.dk-checkout-page .dk-checkout-package{
    display:flex!important;
    min-height:90px!important;
  }

  body.dk-checkout-page .dk-payment-card{
    display:grid!important;
  }

  body.dk-checkout-page .dk-checkout-submit{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:fixed!important;
    left:14px!important;
    right:14px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    transform:none!important;
    width:auto!important;
    max-width:none!important;
    z-index:999999!important;
  }
}

@media(max-width:390px){
  body.dk-checkout-page .dk-checkout-packages{
    grid-template-columns:1fr 1fr!important;
  }

  body.dk-checkout-page .dk-package-copy strong{
    font-size:13px!important;
  }

  body.dk-checkout-page .dk-package-copy small{
    font-size:10px!important;
  }

  body.dk-checkout-page .dk-checkout-program-image,
  body.dk-checkout-page .dk-checkout-program-placeholder{
    flex-basis:88px!important;
    width:88px!important;
    height:64px!important;
  }
}
