*{box-sizing:border-box}:root{--bg:#f4f8f6;--surface:rgba(255,255,255,.86);--surface-strong:#ffffff;--surface-soft:#eef8f2;--line:rgba(35,101,73,.10);--line-strong:rgba(35,101,73,.16);--text:#14372c;--muted:#667b72;--green:#159457;--green-dark:#0d6f43;--green-soft:#e9f7ef;--danger:#a84141;--shadow-lg:0 24px 70px rgba(26,77,56,.12),0 3px 10px rgba(26,77,56,.04);--shadow-md:0 14px 34px rgba(26,77,56,.09),0 2px 8px rgba(26,77,56,.035);--shadow-sm:0 8px 20px rgba(26,77,56,.07)}html{background:var(--bg)}body{margin:0;color:var(--text);background:radial-gradient(circle at 12% 0,rgba(203,241,221,.78),transparent 28rem),radial-gradient(circle at 92% 9%,rgba(233,244,216,.62),transparent 24rem),linear-gradient(180deg,#f8fbf9,#f2f7f4);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}a{text-decoration:none}a,button{color:inherit}.page-shell{min-height:100vh;padding:28px 18px 56px}.phone-shell{width:min(100%,460px);margin:0 auto}.landing-shell{width:min(100%,720px)}.brand{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;color:var(--green-dark);font-size:18px;font-weight:900;letter-spacing:-.02em}.auth-brand{margin-bottom:18px}.admin-card,.form-card,.hero,.section{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.admin-card:before,.form-card:before,.hero:before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);pointer-events:none}.hero{padding:30px 24px;border-radius:30px;box-shadow:var(--shadow-lg)}.landing-hero{padding:38px 32px}.eyebrow{margin:0 0 9px;color:var(--green-dark);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}h1{margin:0;max-width:18ch;font-size:clamp(34px,7vw,50px);line-height:1.02;letter-spacing:-.045em}h2,h3{color:#102f26}h3{margin:0}.lead{margin:14px 0 0;max-width:62ch;color:var(--muted);font-size:15px;line-height:1.7}.total-card{margin-top:24px;padding:21px;border:1px solid rgba(21,148,87,.1);border-radius:24px;background:linear-gradient(145deg,rgba(239,250,243,.96),rgba(255,255,255,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--shadow-sm)}.total-label{color:#5d746a;font-size:13px;font-weight:650}.total{display:block;margin-top:6px;font-size:34px;font-weight:950;letter-spacing:-.035em}.meta{display:flex;justify-content:space-between;gap:12px;margin-top:10px;color:#6e8179;font-size:12px}.actions{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 18px;border:1px solid rgba(18,128,75,.38);border-radius:16px;font-weight:850;line-height:1.2;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button-primary{color:#fff;border-color:rgba(12,121,67,.72);background:linear-gradient(180deg,#1baa66,#11894f);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 9px 20px rgba(17,137,79,.18)}.button-primary:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 12px 24px rgba(17,137,79,.22)}.button-secondary{color:var(--green-dark);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,250,248,.96));border-color:rgba(18,128,75,.24);box-shadow:inset 0 1px 0 #fff,0 6px 16px rgba(32,84,64,.06)}.button-danger{color:var(--danger);background:rgba(255,255,255,.96);border-color:rgba(168,65,65,.24)}.compact-button{min-height:42px;padding:0 14px;border-radius:13px;font-size:13px}.section{margin-top:18px;padding:22px;border-radius:24px;box-shadow:0 10px 30px rgba(27,75,56,.045)}.section h2{margin:0 0 12px;font-size:18px;letter-spacing:-.02em}.section h3{font-size:16px}.section p{margin:0;color:var(--muted);line-height:1.65}.simple-steps{display:grid;grid-gap:14px;gap:14px;margin-top:18px}.simple-step{display:grid;grid-template-columns:40px 1fr;grid-gap:13px;gap:13px;align-items:start}.simple-step>strong{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(21,148,87,.1);border-radius:50%;background:linear-gradient(145deg,#f4fcf7,#def4e7);color:var(--green-dark);box-shadow:inset 0 1px 0 #fff,var(--shadow-sm)}.simple-step h3{margin-bottom:4px;font-size:16px}.soft-note{background:rgba(237,249,242,.88)}.landing-credit{margin:22px 0 0;text-align:center;color:#7b8a84;font-size:12px}.summary-grid{display:grid;grid-gap:10px;gap:10px}.summary-item{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #edf2ef}.summary-item:last-child{border-bottom:0}.summary-item span{color:#687a73}.summary-item strong{text-align:right}.report-summary{margin-top:22px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:rgba(244,250,246,.9);box-shadow:inset 0 1px 0 #fff}.admin-list,.campaign-list,.payment-method-list,.public-report-list{display:grid;grid-gap:14px;gap:14px}.campaign-card,.donation-review-card,.payment-card,.public-report-card{padding:18px;border:1px solid var(--line-strong);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,252,250,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.96),var(--shadow-sm)}.campaign-card{gap:20px;align-items:stretch}.campaign-card h3{margin:8px 0 5px;letter-spacing:-.025em}.manager-page-card{align-items:stretch}.manager-page-main{min-width:0;flex:1 1}.manager-page-main>p{overflow:hidden;color:#6f837a;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.manager-page-actions{display:flex;min-width:140px;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:8px;padding-left:16px;border-left:1px solid var(--line);text-align:right;font-size:13px;font-weight:850;color:var(--green-dark)}.manager-page-actions a,.manager-page-actions button{padding:5px 0}.campaign-share-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.danger-link{padding:5px 0;border:0;background:transparent;color:#b14a4a;font-size:13px;font-weight:800;cursor:pointer}.danger-link:disabled{opacity:.55;cursor:wait}.generated-link-card{position:relative;overflow:hidden;margin-top:20px;padding:26px;border:1px solid rgba(20,142,82,.15);border-radius:26px;background:radial-gradient(circle at 90% 0,rgba(255,255,255,.92),transparent 18rem),linear-gradient(145deg,rgba(231,248,238,.97),rgba(246,252,248,.95));box-shadow:var(--shadow-md),inset 0 1px 0 rgba(255,255,255,.96)}.generated-link-card h2{margin:0 0 8px;font-size:24px;letter-spacing:-.035em}.generated-link-card>p:not(.eyebrow){margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.86);word-break:break-all;font-weight:750;box-shadow:inset 0 1px 0 #fff}.empty-start .button{margin-top:16px}.bottom-actions{margin-top:20px}.report-proof-button{width:100%;min-height:44px;margin-top:14px}.admin-link{display:block;margin-top:22px;text-align:center;color:#71817b;font-size:13px}.admin-card{width:min(100%,760px);margin:34px auto 0;padding:30px;border-radius:30px;box-shadow:var(--shadow-lg)}.admin-wide{width:min(100%,1020px)}.auth-card{width:min(100%,520px)}.auth-switch{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;margin-top:22px;padding:5px;border:1px solid var(--line);border-radius:15px;background:rgba(238,245,241,.86);box-shadow:inset 0 1px 4px rgba(28,73,56,.05)}.auth-switch button{min-height:42px;border:0;border-radius:11px;background:transparent;color:#61726c;font-weight:800;cursor:pointer}.auth-switch button.active{background:rgba(255,255,255,.98);color:var(--green-dark);box-shadow:var(--shadow-sm),inset 0 1px 0 #fff}.form-card{padding:30px 24px;border-radius:30px;box-shadow:var(--shadow-lg)}.donation-form{display:grid;grid-gap:18px;gap:18px;margin-top:24px}.donation-form label,.field-label{display:grid;grid-gap:8px;gap:8px}.donation-form label>span,.field-label>span{color:#355c4d;font-size:13px;font-weight:850}.donation-form input,.donation-form select,.donation-form textarea,.field-label select{width:100%;padding:14px 15px;border:1px solid rgba(39,103,77,.14);border-radius:14px;outline:none;background:rgba(249,252,250,.96);color:var(--text);box-shadow:inset 0 1px 2px rgba(29,72,55,.025),0 1px 0 #fff;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.donation-form input:focus,.donation-form select:focus,.donation-form textarea:focus,.field-label select:focus{border-color:rgba(21,148,87,.52);background:#fff;box-shadow:0 0 0 4px rgba(26,154,89,.09),inset 0 1px 0 #fff}.donation-form small{color:#74857e}.checkbox-row{grid-template-columns:auto 1fr!important;align-items:center}.checkbox-row input{width:18px;height:18px}.checkbox-row span{font-weight:600!important}.submit-button{width:100%}.button:disabled,.submit-button:disabled{opacity:.62;cursor:wait;transform:none}.form-error,.form-success{margin-top:14px;padding:13px 15px;border-radius:14px;font-size:14px}.form-error{border:1px solid rgba(154,45,45,.09);background:#fff3f3;color:#9a2d2d}.form-success{border:1px solid rgba(23,109,70,.09);background:#eaf8ef;color:#176d46}.success-card{text-align:center}.success-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 18px;border:1px solid rgba(21,148,87,.1);border-radius:50%;background:linear-gradient(145deg,#f5fff8,#dff5e8);color:var(--green-dark);font-size:28px;font-weight:900;box-shadow:inset 0 1px 0 #fff,var(--shadow-md)}.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:26px}.admin-header>div:first-child{min-width:0;flex:1 1}.admin-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.admin-header-actions .button{min-height:44px;padding-inline:15px;border-radius:14px;font-size:13px}.admin-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:20px}.admin-stats>div{position:relative;overflow:hidden;padding:18px;border:1px solid rgba(29,108,73,.08);border-radius:20px;background:linear-gradient(145deg,rgba(242,250,246,.98),rgba(232,246,238,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),var(--shadow-sm)}.admin-stats>div:after{content:"";position:absolute;width:72px;height:72px;right:-24px;top:-30px;border-radius:50%;background:rgba(255,255,255,.65);filter:blur(2px)}.admin-stats span{display:block;color:#647b71;font-size:12px;font-weight:650}.admin-stats strong{display:block;margin-top:4px;font-size:30px;line-height:1;letter-spacing:-.04em}.review-top{display:flex;justify-content:space-between;gap:18px}.review-top h2{margin:8px 0 3px;font-size:19px;letter-spacing:-.025em}.review-top p{margin:0;color:#71817b;font-size:13px}.review-top>strong{font-size:22px;white-space:nowrap}.payment-type,.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:950;letter-spacing:.055em}.status-pill{background:#fff4d7;color:#806311}.payment-type{background:var(--green-soft);color:var(--green-dark);text-transform:uppercase}.review-message{margin:16px 0 0;padding:14px;border:1px solid rgba(36,91,68,.06);border-radius:14px;background:#f7faf8;color:#52645d}.review-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.review-actions .button{min-height:44px}.payment-card h3{margin:8px 0 0;font-size:18px}.qris-wrap{display:grid;place-items:center;margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(247,250,248,.96)}.qris-image{width:min(100%,320px);height:auto;border-radius:12px}.payment-note{margin-top:12px!important;font-size:13px}.bank-detail{display:grid;grid-gap:4px;gap:4px;margin-top:14px}.bank-detail small,.bank-detail span{color:#697a73}.bank-detail strong{font-size:24px;letter-spacing:.02em;word-break:break-all}@media (max-width:760px){.page-shell{padding:14px 12px 38px}.admin-card{margin-top:0;padding:22px 16px;border-radius:26px}.hero,.landing-hero{padding:27px 20px}.admin-header{gap:18px}.admin-header,.campaign-card,.review-top{flex-direction:column}.admin-header-actions{width:100%;justify-content:stretch}.admin-header-actions .button,.admin-header-actions button{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 6px)}.campaign-card{gap:16px;align-items:stretch;padding:17px}.manager-page-actions{min-width:0;padding:13px 0 0;border-top:1px solid var(--line);border-left:0;align-items:stretch;text-align:left}.manager-page-actions a,.manager-page-actions button{display:flex;min-height:38px;align-items:center;justify-content:space-between;padding:8px 2px}.campaign-share-actions{display:grid;grid-template-columns:1fr 1fr}.campaign-share-actions .button{width:100%}.section{padding:18px 16px;border-radius:21px}.admin-stats{margin-top:14px}.review-actions{display:grid;grid-template-columns:1fr}.generated-link-card{padding:20px 16px}}@media (max-width:430px){h1{font-size:36px}.lead{font-size:14px}.admin-header-actions{display:grid;grid-template-columns:1fr 1fr}.admin-header-actions .button,.admin-header-actions button{width:100%;min-width:0}.admin-header-actions>:last-child:nth-child(odd){grid-column:1/-1}.campaign-share-actions{grid-template-columns:1fr}.admin-stats{grid-template-columns:1fr 1fr;gap:9px}.admin-stats>div{padding:15px 14px}.admin-stats strong{font-size:26px}.meta,.summary-item{gap:8px;font-size:13px}}.campaign-list{display:grid;grid-gap:12px;gap:12px}.campaign-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid #e0ebe5;border-radius:18px;background:#fff}.campaign-card h3{margin:8px 0 6px;font-size:18px}.campaign-card p{margin:0;color:#697a73;line-height:1.5}.campaign-arrow{flex:0 0 auto;font-size:24px;color:#17834e}.contact-setup-section{margin-top:2px;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.9),transparent 14rem),linear-gradient(145deg,rgba(238,250,243,.94),rgba(250,253,251,.94))}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-top:18px}.help-contact-card{background:radial-gradient(circle at 100% 0,rgba(255,255,255,.9),transparent 15rem),linear-gradient(145deg,rgba(240,250,244,.94),rgba(255,255,255,.9))}.help-contact-list{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.help-contact-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;border:1px solid rgba(35,101,73,.1);border-radius:18px;background:rgba(255,255,255,.82);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 22px rgba(28,76,57,.05)}.help-contact-item>div{display:grid;min-width:0;grid-gap:3px;gap:3px}.help-contact-item span{color:#6a7f75;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.help-contact-item strong{color:#173c30;font-size:16px}.help-contact-item small{color:#72847c}.treasurer-handoff-card{text-align:left;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.95),transparent 12rem),linear-gradient(145deg,rgba(230,248,238,.96),rgba(248,252,250,.96))}.treasurer-handoff-card .button{width:100%;margin-top:16px}@media (max-width:640px){.contact-form-grid{grid-template-columns:1fr}.help-contact-item{align-items:stretch;flex-direction:column}.help-contact-item .button{width:100%}}.public-page-shell{padding-top:18px}.public-phone-shell{width:min(100%,520px)}.public-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.public-topbar .brand{margin:0}.public-trust-pill,.step-badge,.verified-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(21,148,87,.12);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(231,247,238,.9));color:#0d6f43;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 7px 20px rgba(27,84,61,.06)}.public-trust-pill{min-height:30px;padding:0 11px;border-radius:999px;font-size:11px;font-weight:850}.public-hero{position:relative;isolation:isolate}.public-hero-glow{position:absolute;z-index:-1;width:220px;height:220px;top:-100px;right:-90px;border-radius:50%;background:radial-gradient(circle,rgba(177,235,205,.68),rgba(225,249,236,.28) 46%,transparent 72%);filter:blur(4px)}.public-hero h1{max-width:13ch}.recipient-note{display:inline-flex;margin:12px 0 0;padding:7px 10px;border-radius:999px;background:rgba(236,248,241,.94);color:#46685a;font-size:12px;font-weight:750}.public-story{white-space:pre-line}.public-total-card{padding:22px}.payment-card-head,.section-heading-row,.total-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.verified-badge{min-height:28px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:850;white-space:nowrap}.public-primary-actions{margin-top:20px}.public-main-cta{min-height:56px;font-size:15px}.section-heading-row h2{margin-bottom:0}.step-badge{width:36px;height:36px;flex:0 0 36px;border-radius:50%;font-size:13px;font-weight:950}.muted-step{color:#577268;background:linear-gradient(145deg,#fff,#f2f6f4)}.section-intro{margin-top:12px!important;font-size:13px}.public-payment-list{margin-top:18px}.public-payment-card{padding:19px}.public-payment-card h3{margin-top:8px;font-size:17px;letter-spacing:-.02em}.payment-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid rgba(21,148,87,.1);border-radius:13px;background:linear-gradient(145deg,#f8fffb,#e6f5ec);color:#0f7747;font-size:18px;font-weight:900;box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(25,78,57,.06)}.public-bank-detail{margin-top:18px;padding:16px;border:1px solid rgba(32,103,75,.08);border-radius:16px;background:rgba(244,250,247,.86);box-shadow:inset 0 1px 0 rgba(255,255,255,.95)}.public-bank-detail strong{color:#123e30;font-size:27px;letter-spacing:.015em}.empty-payment-state{margin-top:16px;padding:16px;border:1px dashed rgba(43,105,81,.2);border-radius:16px;background:rgba(248,251,249,.74)}.empty-payment-state strong{display:block;margin-bottom:4px}.public-confirm-note{background:radial-gradient(circle at 92% 10%,rgba(218,246,230,.72),transparent 11rem),rgba(255,255,255,.88)}.compact-heading-row{align-items:center}.inline-confirm-button{width:100%;margin-top:18px}.public-summary-grid{margin-top:14px}.public-summary-grid .summary-item{padding:14px 0}.highlight-summary{margin-top:2px;padding:14px!important;border:1px solid rgba(21,148,87,.1)!important;border-radius:15px;background:linear-gradient(145deg,#eef9f2,#f9fcfa);box-shadow:inset 0 1px 0 #fff}.highlight-summary strong{color:#0b7342}.public-report-link{display:inline-flex;margin-top:15px;color:#0d6f43;font-size:13px;font-weight:850}.public-footer-note{margin:22px 0 4px;text-align:center;color:#839189;font-size:11px;line-height:1.6}@media (max-width:430px){.public-page-shell{padding:12px 10px 34px}.public-topbar{padding:0 3px}.public-hero{padding:26px 18px}.public-hero h1{font-size:34px}.public-total-card{padding:18px}.total-card-head{align-items:flex-start;flex-direction:column;gap:8px}.public-total-card .total{font-size:31px}.public-total-card .meta{display:grid;grid-template-columns:1fr}.public-confirm-note,.public-how-card,.transparency-card{padding:18px 16px}.public-bank-detail strong{font-size:23px}.section-heading-row{gap:10px}.step-badge{width:34px;height:34px;flex-basis:34px}}