.dsdb-public-wrap{max-width:980px;margin:28px auto;padding:0 14px;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#2b261b}.dsdb-public-card{background:linear-gradient(180deg,#fffdf6,#fff8e7);border:1px solid #e3c967;border-radius:24px;box-shadow:0 18px 50px rgba(82,60,8,.14);overflow:hidden}.dsdb-public-head{display:flex;gap:18px;align-items:center;padding:28px;background:radial-gradient(circle at top left,#fff4bd,#f8e2a0 45%,#f6f0dd);border-bottom:1px solid #e6cb6f}.dsdb-public-icon{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#7a5300;color:#fff7d6;font-size:30px;box-shadow:0 8px 25px rgba(103,70,0,.25)}.dsdb-public-head h2{margin:0;font-size:28px;line-height:1.25;color:#553900}.dsdb-public-head p{margin:6px 0 0;color:#73580f}.dsdb-public-form{padding:26px}.dsdb-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dsdb-public-form label{display:block;font-weight:700;color:#44310a;margin-bottom:14px}.dsdb-public-form input[type=text],.dsdb-public-form input[type=tel],.dsdb-public-form input[type=email],.dsdb-public-form input[type=number],.dsdb-public-form textarea{width:100%;box-sizing:border-box;margin-top:7px;padding:13px 14px;border:1px solid #d8c27a;border-radius:14px;background:#fff;color:#2f2a20;outline:0;font-size:16px;transition:.2s}.dsdb-public-form input:focus,.dsdb-public-form textarea:focus{border-color:#9e7400;box-shadow:0 0 0 3px rgba(192,143,0,.15)}.dsdb-public-wide{grid-column:1/-1}.dsdb-public-box{background:#fff;border:1px solid #ead68c;border-radius:18px;padding:18px;margin:10px 0 18px}.dsdb-public-box strong{display:block;margin-bottom:10px;color:#5a3c00}.dsdb-public-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px}.dsdb-public-checks label,.dsdb-consent{font-weight:600!important;color:#4d432c!important}.dsdb-consent{background:#fffaf0;border:1px dashed #d6b545;border-radius:14px;padding:14px;margin-top:14px}.dsdb-public-submit{border:0;background:linear-gradient(135deg,#8d6200,#c59216);color:#fff;border-radius:14px;padding:15px 26px;font-size:17px;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(120,84,5,.25);margin-top:10px}.dsdb-public-submit:hover{filter:brightness(1.04)}.dsdb-public-success,.dsdb-public-error{margin:22px 26px 0;padding:15px 16px;border-radius:16px;font-weight:700}.dsdb-public-success{background:#e9f8ef;border:1px solid #a8dfba;color:#145c2e}.dsdb-public-error{background:#fde8e7;border:1px solid #f3b4af;color:#8a1c17}.dsdb-hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}@media(max-width:760px){.dsdb-public-grid,.dsdb-public-checks{grid-template-columns:1fr}.dsdb-public-head{padding:22px;align-items:flex-start}.dsdb-public-head h2{font-size:23px}.dsdb-public-form{padding:20px}.dsdb-public-icon{width:48px;height:48px;font-size:25px}}

/* v1.3 temple logo and centered registration header */
.dsdb-public-head{justify-content:center;text-align:center;}
.dsdb-public-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;}
.dsdb-public-logo{width:126px;height:126px;object-fit:contain;border-radius:50%;background:#fff;padding:7px;border:2px solid #d7ad36;box-shadow:0 10px 28px rgba(103,70,0,.18);}
.dsdb-public-brand h2{max-width:760px;}
@media(max-width:760px){.dsdb-public-logo{width:96px;height:96px}.dsdb-public-head{text-align:center}.dsdb-public-brand h2{font-size:21px}}

/* v1.5 professional form sections */
.dsdb-public-section{background:rgba(255,255,255,.72);border:1px solid #ecd993;border-radius:18px;padding:18px;margin:0 0 18px;}
.dsdb-public-section h3{margin:0 0 14px;color:#694900;font-size:19px;border-bottom:1px dashed #dfc46a;padding-bottom:9px;}
.dsdb-public-form input[type=date],.dsdb-public-form select{width:100%;box-sizing:border-box;margin-top:7px;padding:13px 14px;border:1px solid #d8c27a;border-radius:14px;background:#fff;color:#2f2a20;outline:0;font-size:16px;transition:.2s;}
.dsdb-public-form input[type=date]:focus,.dsdb-public-form select:focus{border-color:#9e7400;box-shadow:0 0 0 3px rgba(192,143,0,.15)}
.dsdb-soft-check{background:#fffaf0;border:1px dashed #d6b545;border-radius:14px;padding:13px 14px;margin:0!important;}
.dsdb-notify-checks{grid-template-columns:repeat(3,minmax(0,1fr));}

/* v1.7 premium/professional public form polish */
.dsdb-public-wrap{
    max-width:1040px;
    margin:36px auto;
    padding:0 16px;
}
.dsdb-public-card{
    position:relative;
    border-radius:28px;
    border:1px solid rgba(184,132,32,.34);
    box-shadow:0 24px 70px rgba(60,42,9,.16),0 2px 10px rgba(60,42,9,.06);
}
.dsdb-public-card:before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:7px;
    background:linear-gradient(90deg,#7b5515,#d7a436,#fff0a8,#b98522,#7b5515);
    z-index:2;
}
.dsdb-public-head{
    position:relative;
    padding:34px 30px 30px;
    background:
        radial-gradient(circle at 18% 5%,rgba(255,244,193,.95),transparent 34%),
        radial-gradient(circle at 82% 0%,rgba(255,255,255,.72),transparent 30%),
        linear-gradient(135deg,#fffdf7 0%,#fff5df 46%,#f3e0b6 100%);
}
.dsdb-public-head:after{
    content:"";
    display:none;
    align-items:center;
    justify-content:center;
    margin-top:12px;
    padding:7px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(185,133,34,.35);
    color:#704d0d;
    font-size:13px;
    font-weight:800;
    letter-spacing:.02em;
}
.dsdb-public-logo{
    width:136px;
    height:136px;
    border:3px solid #d1a33a;
    box-shadow:0 16px 34px rgba(103,70,0,.20), inset 0 0 0 5px #fff9e8;
}
.dsdb-public-brand h2{
    font-size:31px;
    line-height:1.28;
    color:#432c05;
    text-shadow:0 1px 0 rgba(255,255,255,.85);
}
.dsdb-public-brand p{
    max-width:760px;
    font-size:15px;
    color:#6e561f;
}
.dsdb-public-trust{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
    margin-top:8px;
}
.dsdb-public-trust span{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:5px 11px;
    border-radius:999px;
    background:#fffaf0;
    border:1px solid #ead68c;
    color:#5a3c00;
    font-size:12px;
    font-weight:800;
}
.dsdb-public-form{
    counter-reset:dsdb-section;
    padding:30px;
    background:linear-gradient(180deg,#fffdf9,#fff8e8);
}
.dsdb-public-section{
    position:relative;
    overflow:hidden;
    padding:22px 22px 20px;
    margin:0 0 20px;
    border-radius:22px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(223,196,106,.78);
    box-shadow:0 10px 28px rgba(77,54,14,.055);
}
.dsdb-public-section:after{
    content:"";
    position:absolute;
    right:-44px;
    top:-44px;
    width:118px;
    height:118px;
    border-radius:50%;
    background:rgba(213,163,54,.08);
}
.dsdb-public-section h3{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:20px;
    color:#563900;
    border-bottom:1px solid #ead68c;
    padding-bottom:12px;
}
.dsdb-public-section h3:before{
    counter-increment:dsdb-section;
    content:counter(dsdb-section, decimal-leading-zero);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:30px;
    padding:0 8px;
    border-radius:999px;
    background:linear-gradient(135deg,#b98522,#7b5515);
    color:#fff;
    font-size:13px;
    font-weight:900;
    box-shadow:0 8px 18px rgba(123,85,21,.22);
}
.dsdb-public-box{
    border-radius:22px;
    padding:22px;
    border:1px solid rgba(223,196,106,.78);
    box-shadow:0 10px 28px rgba(77,54,14,.055);
}
.dsdb-public-form label{
    color:#3f2e0c;
    font-size:14px;
}
.dsdb-public-form input[type=text],
.dsdb-public-form input[type=tel],
.dsdb-public-form input[type=email],
.dsdb-public-form input[type=number],
.dsdb-public-form input[type=date],
.dsdb-public-form select,
.dsdb-public-form textarea{
    min-height:48px;
    border-radius:16px;
    border-color:#d9c277;
    background:#fffefb;
    box-shadow:0 1px 0 rgba(255,255,255,.9),0 1px 4px rgba(60,42,9,.035);
}
.dsdb-public-form textarea{min-height:96px;}
.dsdb-public-form input::placeholder,
.dsdb-public-form textarea::placeholder{color:#a79a78;}
.dsdb-public-checks label,
.dsdb-soft-check,
.dsdb-consent{
    border-radius:16px;
    background:#fffdf7;
    border:1px solid #ead68c;
    padding:12px 13px;
    margin:0!important;
}
.dsdb-public-checks label:hover,
.dsdb-soft-check:hover{
    border-color:#c9972c;
    box-shadow:0 8px 18px rgba(77,54,14,.06);
}
.dsdb-consent{
    margin-top:18px!important;
    background:#fff9e9;
    border-style:solid;
}
.dsdb-public-submit{
    width:100%;
    min-height:54px;
    border-radius:18px;
    font-size:18px;
    letter-spacing:.01em;
    background:linear-gradient(135deg,#7b5515,#b98522 48%,#d6a037);
    box-shadow:0 16px 32px rgba(123,85,21,.26);
}
.dsdb-public-submit:after{content:"  →";}
@media(max-width:760px){
    .dsdb-public-wrap{margin:18px auto;padding:0 10px;}
    .dsdb-public-head{padding:26px 18px 22px;}
    .dsdb-public-logo{width:102px;height:102px;}
    .dsdb-public-brand h2{font-size:22px;}
    .dsdb-public-form{padding:18px;}
    .dsdb-public-section,.dsdb-public-box{padding:17px;border-radius:18px;}
    .dsdb-public-section h3{font-size:18px;}
}


/* v1.8 logo + Swamin Wahanse photo professional header */
.dsdb-public-brand-v18{gap:16px;}
.dsdb-public-identity-row{
    width:100%;
    display:grid;
    grid-template-columns:170px minmax(0,1fr) 170px;
    align-items:center;
    gap:22px;
}
.dsdb-public-title-block{display:flex;flex-direction:column;align-items:center;justify-content:center;}
.dsdb-public-emblem{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:#6b4a0e;
    font-size:13px;
    font-weight:900;
}
.dsdb-public-swami{
    width:136px;
    height:136px;
    object-fit:cover;
    object-position:center 35%;
    border-radius:50%;
    background:#fff;
    padding:5px;
    border:3px solid #d1a33a;
    box-shadow:0 16px 34px rgba(103,70,0,.20), inset 0 0 0 5px #fff9e8;
}
@media(max-width:860px){
    .dsdb-public-identity-row{grid-template-columns:1fr;gap:14px;}
    .dsdb-public-title-block{order:2;}
    .dsdb-public-emblem:first-child{order:1;}
    .dsdb-public-emblem:last-child{order:3;}
    .dsdb-public-swami,.dsdb-public-logo{width:108px;height:108px;}
}


/* v2.0 exact transparent full-body photo from Swamin Wahanse */
.dsdb-public-swami{
    width:126px;
    height:178px;
    object-fit:contain;
    object-position:center bottom;
    border-radius:24px;
    background:linear-gradient(180deg,#fffdf7,#fff1c9);
    padding:8px;
    border:3px solid #d1a33a;
    box-shadow:0 16px 34px rgba(103,70,0,.20), inset 0 0 0 5px #fff9e8;
}
.dsdb-public-emblem:last-child span{margin-top:2px;}
@media(max-width:860px){.dsdb-public-swami{width:112px;height:158px;}}

/* v2.1 mobile header fix: compact, clean top area for phones */
@media (max-width: 760px) {
    .dsdb-public-wrap{
        margin:12px auto;
        padding:0 8px;
    }
    .dsdb-public-card{
        border-radius:22px;
    }
    .dsdb-public-head{
        padding:16px 12px 14px !important;
        min-height:auto;
    }
    .dsdb-public-head:after{
        content:"";
        display:none;
        margin-top:0;
        padding:5px 10px;
        font-size:11px;
    }
    .dsdb-public-identity-row{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        grid-template-areas:
            "logo swami"
            "title title";
        align-items:center;
        justify-items:center;
        gap:8px 12px !important;
        width:100%;
    }
    .dsdb-public-emblem:first-child{
        grid-area:logo;
        order:initial !important;
    }
    .dsdb-public-emblem:last-child{
        grid-area:swami;
        order:initial !important;
    }
    .dsdb-public-title-block{
        grid-area:title;
        order:initial !important;
        width:100%;
        text-align:center;
        align-items:center;
        padding-top:4px;
    }
    .dsdb-public-logo{
        width:76px !important;
        height:76px !important;
        padding:4px !important;
        border-width:2px !important;
        box-shadow:0 8px 18px rgba(103,70,0,.14), inset 0 0 0 3px #fff9e8 !important;
    }
    .dsdb-public-swami{
        width:60px !important;
        height:86px !important;
        padding:3px !important;
        border-width:2px !important;
        border-radius:16px !important;
        box-shadow:0 8px 18px rgba(103,70,0,.14), inset 0 0 0 3px #fff9e8 !important;
    }
    .dsdb-public-emblem span{
        display:none !important;
    }
    .dsdb-public-brand h2{
        font-size:19px !important;
        line-height:1.28 !important;
        margin:0 !important;
        max-width:100% !important;
    }
    .dsdb-public-brand p,
    .dsdb-public-trust{
        display:none !important;
    }
}

@media (max-width: 390px) {
    .dsdb-public-head{padding:14px 10px 12px !important;}
    .dsdb-public-logo{width:68px !important;height:68px !important;}
    .dsdb-public-swami{width:54px !important;height:78px !important;}
    .dsdb-public-brand h2{font-size:17px !important;}
}


/* v2.2 remove Swamin Wahanse photo from public form header */
.dsdb-public-identity-row{
    grid-template-columns:150px minmax(0,1fr) !important;
    justify-content:center;
}
.dsdb-public-title-block{align-items:flex-start;text-align:left;}
.dsdb-public-emblem:first-child{justify-self:center;}
@media (max-width: 860px){
    .dsdb-public-identity-row{
        grid-template-columns:1fr !important;
        grid-template-areas:"logo" "title" !important;
        gap:10px !important;
    }
    .dsdb-public-title-block{grid-area:title;text-align:center;align-items:center;}
    .dsdb-public-emblem:first-child{grid-area:logo;}
}
@media (max-width: 760px){
    .dsdb-public-identity-row{
        grid-template-columns:1fr !important;
        grid-template-areas:"logo" "title" !important;
    }
    .dsdb-public-head{padding:18px 12px 14px !important;}
    .dsdb-public-logo{width:82px !important;height:82px !important;}
}


/* v2.3 centered official header and updated contribution section */
.dsdb-public-head{
    text-align:center !important;
    justify-content:center !important;
}
.dsdb-public-identity-row{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    width:100% !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"logo" "title" !important;
}
.dsdb-public-title-block{
    text-align:center !important;
    align-items:center !important;
    justify-content:center !important;
    max-width:820px !important;
    margin:0 auto !important;
}
.dsdb-public-title-block h2,
.dsdb-public-brand h2{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.dsdb-public-emblem{
    align-items:center !important;
    justify-content:center !important;
}
.dsdb-public-emblem span{
    display:none !important;
}
.dsdb-public-box strong{
    text-align:center;
    font-size:18px;
}
@media(max-width:760px){
    .dsdb-public-identity-row{
        display:flex !important;
        flex-direction:column !important;
        gap:10px !important;
    }
    .dsdb-public-brand h2{
        font-size:18px !important;
        text-align:center !important;
    }
    .dsdb-public-logo{
        margin:0 auto !important;
    }
}

/* v2.4 advanced contribution scheduler */
.dsdb-contribution-section strong{
    text-align:center;
    font-size:20px;
    margin-bottom:6px;
}
.dsdb-contribution-help{
    margin:0 auto 18px;
    max-width:720px;
    text-align:center;
    color:#70561a;
    font-size:14px;
    line-height:1.55;
}
.dsdb-contribution-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.dsdb-contribution-card{
    background:linear-gradient(180deg,#fffefb,#fff8e7);
    border:1px solid #ead68c;
    border-radius:18px;
    padding:15px;
    box-shadow:0 8px 20px rgba(77,54,14,.055);
}
.dsdb-contribution-card-wide{
    grid-column:1/-1;
}
.dsdb-contribution-main{
    display:flex !important;
    align-items:center;
    gap:10px;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    margin:0 0 10px !important;
    font-size:15px !important;
    color:#3f2e0c !important;
}
.dsdb-contribution-main span{
    font-size:16px;
    font-weight:900;
}
.dsdb-contribution-detail{
    display:block !important;
    margin:0 !important;
    font-size:13px !important;
    color:#6a5318 !important;
}
.dsdb-contribution-detail input[type=date],
.dsdb-contribution-detail input[type=month],
.dsdb-contribution-detail input[type=number]{
    margin-top:7px;
    min-height:44px;
}
.dsdb-poya-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    align-items:start;
}
.dsdb-poya-times{
    min-height:44px;
    padding-top:2px;
}
.dsdb-poya-times > span{
    display:block;
    margin-bottom:7px;
    font-weight:900;
}
.dsdb-poya-times label{
    display:inline-flex !important;
    align-items:center;
    gap:7px;
    margin:0 10px 8px 0 !important;
    padding:9px 12px !important;
    border-radius:999px !important;
    background:#fff !important;
    border:1px solid #ead68c !important;
    font-size:13px !important;
}
@media(max-width:760px){
    .dsdb-contribution-grid,
    .dsdb-poya-grid{
        grid-template-columns:1fr;
    }
    .dsdb-contribution-help{
        text-align:left;
        font-size:13px;
    }
    .dsdb-contribution-section strong{
        font-size:18px;
    }
}

/* v2.5 subtle professional animations and interactive contribution cards */
.dsdb-public-card{
    animation:dsdb-card-enter .55s cubic-bezier(.2,.75,.25,1) both;
}
.dsdb-public-logo{
    transition:transform .28s ease, box-shadow .28s ease;
}
.dsdb-public-logo:hover{
    transform:translateY(-2px) scale(1.025);
    box-shadow:0 18px 38px rgba(103,70,0,.20), inset 0 0 0 5px #fff9e8;
}
.dsdb-public-head:before{
    content:"";
    position:absolute;
    left:-35%;
    top:0;
    width:32%;
    height:100%;
    background:linear-gradient(110deg,transparent,rgba(255,255,255,.45),transparent);
    transform:skewX(-18deg);
    animation:dsdb-gold-sweep 4.8s ease-in-out infinite;
    pointer-events:none;
}
.dsdb-public-section,
.dsdb-public-box,
.dsdb-public-success,
.dsdb-public-error{
    opacity:0;
    transform:translateY(14px);
    transition:opacity .48s ease, transform .48s cubic-bezier(.2,.75,.25,1), box-shadow .25s ease, border-color .25s ease;
}
.dsdb-public-section.dsdb-in-view,
.dsdb-public-box.dsdb-in-view,
.dsdb-public-success.dsdb-in-view,
.dsdb-public-error.dsdb-in-view{
    opacity:1;
    transform:translateY(0);
}
.dsdb-public-section:hover,
.dsdb-public-box:hover{
    border-color:#d2a53c;
    box-shadow:0 16px 34px rgba(77,54,14,.075);
}
.dsdb-public-form input[type=text],
.dsdb-public-form input[type=tel],
.dsdb-public-form input[type=email],
.dsdb-public-form input[type=number],
.dsdb-public-form input[type=date],
.dsdb-public-form input[type=month],
.dsdb-public-form select,
.dsdb-public-form textarea{
    transition:border-color .22s ease, box-shadow .22s ease, transform .18s ease, background-color .22s ease;
}
.dsdb-public-form input[type=text]:focus,
.dsdb-public-form input[type=tel]:focus,
.dsdb-public-form input[type=email]:focus,
.dsdb-public-form input[type=number]:focus,
.dsdb-public-form input[type=date]:focus,
.dsdb-public-form input[type=month]:focus,
.dsdb-public-form select:focus,
.dsdb-public-form textarea:focus{
    transform:translateY(-1px);
    background:#fff;
}
.dsdb-contribution-card{
    position:relative;
    overflow:hidden;
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}
.dsdb-contribution-card:before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:4px;
    background:linear-gradient(180deg,#d7a436,#8d6200);
    opacity:0;
    transition:opacity .24s ease;
}
.dsdb-contribution-card:hover{
    transform:translateY(-3px);
    border-color:#d1a33a;
    box-shadow:0 16px 32px rgba(77,54,14,.10);
}
.dsdb-contribution-card.dsdb-card-selected{
    background:linear-gradient(180deg,#fffefb,#fff3d0);
    border-color:#c9972c;
    box-shadow:0 16px 34px rgba(123,85,21,.13);
}
.dsdb-contribution-card.dsdb-card-selected:before{
    opacity:1;
}
.dsdb-contribution-main input[type="checkbox"]{
    transform:scale(1.05);
    accent-color:#9c6b12;
}
.dsdb-contribution-reveal{
    overflow:hidden;
    max-height:0;
    opacity:0;
    transform:translateY(-4px);
    pointer-events:none;
    transition:max-height .36s cubic-bezier(.2,.75,.25,1), opacity .28s ease, transform .28s ease, margin .28s ease;
}
.dsdb-card-selected .dsdb-contribution-reveal{
    max-height:220px;
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}
.dsdb-poya-grid.dsdb-contribution-reveal{
    max-height:0;
}
.dsdb-card-selected .dsdb-poya-grid.dsdb-contribution-reveal{
    max-height:260px;
}
.dsdb-public-submit{
    position:relative;
    overflow:hidden;
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.dsdb-public-submit:before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:65%;
    height:100%;
    background:linear-gradient(105deg,transparent,rgba(255,255,255,.28),transparent);
    transform:skewX(-18deg);
    transition:left .48s ease;
}
.dsdb-public-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 20px 38px rgba(123,85,21,.32);
}
.dsdb-public-submit:hover:before{
    left:120%;
}
@keyframes dsdb-card-enter{
    from{opacity:0;transform:translateY(18px) scale(.992)}
    to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes dsdb-gold-sweep{
    0%,62%{left:-38%;opacity:0}
    72%{opacity:.85}
    100%{left:115%;opacity:0}
}
@media(max-width:760px){
    .dsdb-public-card{animation-duration:.42s;}
    .dsdb-contribution-card:hover{transform:none;}
    .dsdb-public-section:hover,.dsdb-public-box:hover{box-shadow:0 10px 28px rgba(77,54,14,.055);}
}
@media (prefers-reduced-motion: reduce){
    .dsdb-public-card,
    .dsdb-public-head:before,
    .dsdb-public-section,
    .dsdb-public-box,
    .dsdb-public-success,
    .dsdb-public-error,
    .dsdb-public-logo,
    .dsdb-contribution-card,
    .dsdb-contribution-reveal,
    .dsdb-public-submit,
    .dsdb-public-submit:before{
        animation:none !important;
        transition:none !important;
        transform:none !important;
    }
    .dsdb-public-section,
    .dsdb-public-box,
    .dsdb-public-success,
    .dsdb-public-error{
        opacity:1 !important;
    }
    .dsdb-public-head:before,
    .dsdb-public-submit:before{display:none !important;}
}


/* v2.7 remove official devotee information badge from header */
.dsdb-public-head:after{content:"" !important; display:none !important;}


/* v2.8 highlight contribution section heading */
.dsdb-contribution-title{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:auto;
    max-width:100%;
    margin:0 auto 10px !important;
    padding:12px 24px !important;
    border-radius:999px;
    background:linear-gradient(135deg,#fffdf5 0%,#ffe8a3 45%,#f7c957 100%);
    border:1px solid rgba(161,111,13,.34);
    color:#3d2805 !important;
    font-size:22px !important;
    font-weight:950 !important;
    letter-spacing:.01em;
    line-height:1.35;
    text-align:center !important;
    box-shadow:0 14px 32px rgba(128,84,12,.18), inset 0 1px 0 rgba(255,255,255,.78);
    position:relative;
    overflow:hidden;
}
.dsdb-contribution-title:before,
.dsdb-contribution-title:after{
    content:"✦";
    font-size:14px;
    color:#8b5f0c;
    opacity:.85;
}
.dsdb-contribution-title::selection{
    background:#e8b63f;
    color:#281900;
}
.dsdb-contribution-title + .dsdb-contribution-help{
    margin-top:2px;
}
@media(max-width:760px){
    .dsdb-contribution-title{
        display:flex !important;
        width:100%;
        padding:11px 14px !important;
        font-size:18px !important;
        border-radius:18px;
        line-height:1.45;
    }
    .dsdb-contribution-title:before,
    .dsdb-contribution-title:after{font-size:12px;}
}


/* v2.9 highlight section numbers 01-04 */
.dsdb-public-section h3{
    background:linear-gradient(90deg,rgba(255,239,185,.96),rgba(255,250,236,.72));
    border:1px solid rgba(196,139,26,.30) !important;
    border-radius:18px;
    padding:12px 14px !important;
    margin-bottom:18px !important;
    box-shadow:0 10px 24px rgba(128,84,12,.10), inset 0 1px 0 rgba(255,255,255,.78);
}
.dsdb-public-section h3:before{
    min-width:44px !important;
    height:38px !important;
    padding:0 11px !important;
    border-radius:14px !important;
    background:linear-gradient(135deg,#fff4bd 0%,#e1aa32 48%,#7b5515 100%) !important;
    color:#2b1a03 !important;
    border:1px solid rgba(115,75,7,.28);
    font-size:15px !important;
    font-weight:950 !important;
    box-shadow:0 12px 26px rgba(123,85,21,.28), inset 0 1px 0 rgba(255,255,255,.72) !important;
    text-shadow:0 1px 0 rgba(255,255,255,.45);
}
.dsdb-public-section:hover h3:before{
    transform:translateY(-1px) scale(1.03);
}
@media(max-width:760px){
    .dsdb-public-section h3{
        padding:10px 11px !important;
        gap:8px;
    }
    .dsdb-public-section h3:before{
        min-width:38px !important;
        height:34px !important;
        font-size:13px !important;
    }
}

/* v3.0 relevant professional icons for public form headings */
.dsdb-section-icon,
.dsdb-title-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    color:#7b5515;
}
.dsdb-section-icon{
    width:38px;
    height:38px;
    border-radius:14px;
    background:linear-gradient(135deg,#fffaf0,#ffe7a5);
    border:1px solid rgba(185,133,34,.34);
    box-shadow:0 9px 20px rgba(123,85,21,.14), inset 0 1px 0 rgba(255,255,255,.8);
}
.dsdb-section-icon svg{
    width:21px;
    height:21px;
    fill:currentColor;
}
.dsdb-public-section h3 > span:last-child{
    min-width:0;
}
.dsdb-title-icon{
    width:34px;
    height:34px;
    border-radius:50%;
    background:rgba(255,255,255,.62);
    border:1px solid rgba(123,85,21,.22);
    color:#7b5515;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}
.dsdb-title-icon svg{
    width:20px;
    height:20px;
    fill:currentColor;
}
.dsdb-contribution-title span:last-child{
    min-width:0;
}
@media(max-width:760px){
    .dsdb-section-icon{
        width:34px;
        height:34px;
        border-radius:12px;
    }
    .dsdb-section-icon svg{
        width:19px;
        height:19px;
    }
    .dsdb-title-icon{
        width:30px;
        height:30px;
    }
    .dsdb-title-icon svg{
        width:18px;
        height:18px;
    }
}

/* v3.1 soft light highlight color refresh */
.dsdb-contribution-title{
    background:linear-gradient(135deg,#f8fff7 0%,#e8f7de 48%,#d8efc8 100%) !important;
    border-color:rgba(86,135,48,.28) !important;
    color:#28410f !important;
    box-shadow:0 14px 32px rgba(60,103,25,.12), inset 0 1px 0 rgba(255,255,255,.82) !important;
}
.dsdb-contribution-title:before,
.dsdb-contribution-title:after{
    color:#5c8b25 !important;
}
.dsdb-public-section h3{
    background:linear-gradient(90deg,rgba(232,247,222,.96),rgba(248,255,247,.76)) !important;
    border-color:rgba(86,135,48,.24) !important;
    color:#30460f !important;
    box-shadow:0 10px 24px rgba(60,103,25,.08), inset 0 1px 0 rgba(255,255,255,.82) !important;
}
.dsdb-public-section h3:before{
    background:linear-gradient(135deg,#fbfff7 0%,#c9e7ac 52%,#6f9f37 100%) !important;
    border-color:rgba(65,103,24,.26) !important;
    color:#203500 !important;
    box-shadow:0 12px 26px rgba(60,103,25,.18), inset 0 1px 0 rgba(255,255,255,.78) !important;
}
.dsdb-section-icon,
.dsdb-title-icon{
    color:#5f8b28 !important;
}
.dsdb-section-icon{
    background:linear-gradient(135deg,#fbfff7,#e2f3d2) !important;
    border-color:rgba(86,135,48,.25) !important;
    box-shadow:0 9px 20px rgba(60,103,25,.10), inset 0 1px 0 rgba(255,255,255,.84) !important;
}
.dsdb-title-icon{
    background:rgba(248,255,247,.82) !important;
    border-color:rgba(86,135,48,.22) !important;
}
.dsdb-contribution-card.dsdb-card-selected{
    background:linear-gradient(180deg,#fffefb,#f0fae8) !important;
    border-color:#9bc46d !important;
    box-shadow:0 16px 34px rgba(60,103,25,.11) !important;
}
.dsdb-contribution-card:before{
    background:linear-gradient(180deg,#b7dd91,#6f9f37) !important;
}
.dsdb-public-checks label:hover,
.dsdb-soft-check:hover,
.dsdb-contribution-card:hover,
.dsdb-public-section:hover,
.dsdb-public-box:hover{
    border-color:#9bc46d !important;
}
.dsdb-contribution-main input[type="checkbox"]{
    accent-color:#6f9f37 !important;
}
.dsdb-public-form input[type=text]:focus,
.dsdb-public-form input[type=tel]:focus,
.dsdb-public-form input[type=email]:focus,
.dsdb-public-form input[type=number]:focus,
.dsdb-public-form input[type=date]:focus,
.dsdb-public-form input[type=month]:focus,
.dsdb-public-form select:focus,
.dsdb-public-form textarea:focus{
    border-color:#7faa46 !important;
    box-shadow:0 0 0 3px rgba(127,170,70,.15) !important;
}


/* v3.2 contribution section unified with other highlighted sections */
.dsdb-contribution-section{
    background:rgba(255,255,255,.74) !important;
    border:1px solid rgba(86,135,48,.22) !important;
    box-shadow:0 12px 30px rgba(60,103,25,.065) !important;
}
.dsdb-contribution-section h3{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}
.dsdb-contribution-section h3 .dsdb-section-icon{
    color:#5f8b28 !important;
}
.dsdb-contribution-help{
    color:#40561f !important;
    background:linear-gradient(90deg,rgba(248,255,247,.72),rgba(232,247,222,.45)) !important;
    border:1px dashed rgba(86,135,48,.26) !important;
    border-radius:14px !important;
    padding:10px 12px !important;
}
.dsdb-contribution-card{
    background:linear-gradient(180deg,#ffffff 0%,#f7fff2 100%) !important;
    border-color:rgba(127,170,70,.30) !important;
    box-shadow:0 8px 20px rgba(60,103,25,.06) !important;
}
.dsdb-contribution-card:hover{
    background:linear-gradient(180deg,#ffffff 0%,#f1fae9 100%) !important;
    border-color:#9bc46d !important;
    box-shadow:0 16px 34px rgba(60,103,25,.12) !important;
}
.dsdb-contribution-main{
    color:#203500 !important;
}
.dsdb-contribution-main span{
    color:#203500 !important;
}
.dsdb-contribution-detail{
    color:#4f6b29 !important;
}
.dsdb-contribution-detail input[type=date],
.dsdb-contribution-detail input[type=month],
.dsdb-contribution-detail input[type=number]{
    background:#ffffff !important;
    border-color:rgba(127,170,70,.30) !important;
}
.dsdb-poya-times label{
    background:#fbfff7 !important;
    border-color:rgba(127,170,70,.30) !important;
    color:#30460f !important;
}
.dsdb-poya-times label:hover{
    border-color:#9bc46d !important;
    box-shadow:0 8px 18px rgba(60,103,25,.08) !important;
}
@media(max-width:760px){
    .dsdb-contribution-section h3{
        align-items:flex-start !important;
    }
    .dsdb-contribution-help{
        text-align:left !important;
    }
}

/* v3.5 final mobile polish for public form */
.dsdb-public-form label{position:relative;}
.dsdb-public-submit{isolation:isolate;}
@media(max-width:760px){
    .dsdb-public-card{box-shadow:0 12px 36px rgba(60,42,9,.13)!important;}
    .dsdb-public-section{margin-bottom:14px!important;}
    .dsdb-public-section h3{line-height:1.35!important;}
    .dsdb-contribution-grid{gap:11px!important;}
    .dsdb-contribution-card{padding:13px!important;border-radius:16px!important;}
    .dsdb-contribution-main span{font-size:15px!important;}
    .dsdb-public-submit{font-size:16px!important;min-height:52px!important;}
}


/* v3.7 Sinhala font rendering fix */
.dsdb-public-wrap,
.dsdb-public-wrap *,
.dsdb-public-form input,
.dsdb-public-form select,
.dsdb-public-form textarea,
.dsdb-public-submit{
    font-family:"Noto Sans Sinhala","Iskoola Pota","Malithi Web","Segoe UI",system-ui,-apple-system,sans-serif !important;
    text-rendering:optimizeLegibility;
}
.dsdb-contribution-main span{
    letter-spacing:0;
    font-feature-settings:"liga" 1,"kern" 1;
}
