:root{--brand-green:#d71920;--brand-blue:#0b63ce;--brand-red:#d71920;--deep-red:#8f1018;--ink:#17233a;--soft:#fff5f5}
body{color:var(--ink);background:#fff}
.page-preloader{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .45s ease,visibility .45s ease}.page-preloader.preloader-hide{opacity:0;visibility:hidden;pointer-events:none}.drop-loader{text-align:center}.blood-drop{width:56px;height:74px;background:linear-gradient(180deg,#ff4b55,#b70f18);clip-path:polygon(50% 0,80% 30%,96% 58%,88% 84%,50% 100%,12% 84%,4% 58%,20% 30%);border-radius:50%;margin:0 auto 18px;position:relative;box-shadow:0 16px 34px rgba(215,25,32,.28);animation:dropBounce 1.05s ease-in-out infinite}.blood-drop:after{content:"";position:absolute;width:17px;height:22px;border-radius:50%;background:rgba(255,255,255,.36);top:22px;left:18px}.drop-pulse{width:72px;height:12px;border-radius:50%;background:rgba(215,25,32,.16);margin:-8px auto 14px;animation:dropPulse 1.05s ease-in-out infinite}.drop-loader p{margin:0;color:var(--deep-red);font-weight:800;letter-spacing:.2px}@keyframes dropBounce{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-16px) scale(1.04)}}@keyframes dropPulse{0%,100%{transform:scale(.86);opacity:.45}50%{transform:scale(1.18);opacity:1}}
.navbar-brand.text-success{color:var(--brand-red)!important}.btn-success{background:var(--brand-red);border-color:var(--brand-red)}.btn-success:hover{background:var(--deep-red);border-color:var(--deep-red)}.btn-outline-success{color:var(--brand-red);border-color:var(--brand-red)}.btn-outline-success:hover{background:var(--brand-red);border-color:var(--brand-red)}.text-success{color:var(--brand-red)!important}.bg-success{background:var(--brand-red)!important}
.hero{background:linear-gradient(110deg,rgba(143,16,24,.94),rgba(215,25,32,.78)),url('https://images.unsplash.com/photo-1615461066841-6116e61058f4?auto=format&fit=crop&w=1600&q=80') center/cover;min-height:74vh;color:#fff;display:flex;align-items:center}
.hero-copy{max-width:760px;font-size:1.08rem}
.section-pad{padding:64px 0}.admin-bg{background:var(--soft)}.stat-card,.panel-card,.public-card{background:#fff;border:1px solid #e6edf4;border-radius:8px;box-shadow:0 8px 24px rgba(23,35,58,.06)}
.stat-card{padding:22px}.stat-card .num{font-size:2rem;font-weight:800;color:var(--brand-blue)}
.btn{border-radius:6px}.footer-band{background:#0d2438;color:#dce8ef}.table-responsive{background:#fff;border-radius:8px}
.thumb{width:100%;height:210px;object-fit:cover;border-radius:8px}.avatar{width:92px;height:92px;object-fit:cover;border-radius:8px}
.badge{letter-spacing:.2px}.form-control,.form-select{border-radius:6px}.nav-link{font-weight:500}
.id-preview{max-width:420px;border:2px solid var(--brand-blue);border-radius:10px;background:#fff}
.impact-strip{background:#fff;margin-top:-42px;position:relative;z-index:2}.impact-item{background:#fff;border:1px solid #f2d5d8;border-radius:8px;padding:20px;box-shadow:0 12px 30px rgba(143,16,24,.14)}.impact-item strong{display:block;color:var(--brand-red);font-size:1.8rem}.impact-item span{font-weight:600;color:#526173}
.service-band{background:#fff5f5}.service-tile{background:#fff;border-left:4px solid var(--brand-red);border-radius:8px;padding:22px;height:100%;box-shadow:0 8px 20px rgba(23,35,58,.06)}.service-tile p{margin-bottom:0;color:#526173}
.cta-panel{height:100%;border-radius:8px;padding:34px;background:#fff5f5;border:1px solid #f2d5d8}.donation-panel{background:linear-gradient(120deg,var(--deep-red),var(--brand-red));color:#fff;border:0}.donation-panel p{color:#fff0f0}
.donation-hero{background:linear-gradient(110deg,rgba(143,16,24,.95),rgba(215,25,32,.78)),url('https://images.unsplash.com/photo-1579154204601-01588f351e67?auto=format&fit=crop&w=1600&q=80') center/cover;color:#fff;padding:86px 0}.donation-summary{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:24px}.donation-summary strong,.donation-summary span{display:block}.donation-summary strong{font-size:1.4rem}.donation-summary span{color:#fff0f0;margin-top:6px}
.impact-list{display:grid;gap:12px}.impact-list div{border:1px solid #f2d5d8;border-radius:8px;padding:14px;background:#fffafa}.impact-list strong,.impact-list span{display:block}.impact-list strong{color:var(--brand-red);font-size:1.2rem}.impact-list span{color:#526173}
.quick-amounts{display:flex;flex-wrap:wrap;gap:10px}.payment-note{background:#fff5f5;border:1px solid #f2d5d8;border-radius:8px;padding:12px;color:#7c1b21}
.page-hero{background:linear-gradient(110deg,rgba(143,16,24,.94),rgba(215,25,32,.82));color:#fff;padding:76px 0}.page-hero p{max-width:720px;font-size:1.15rem;margin-bottom:0}.check-list{padding-left:0;list-style:none}.check-list li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid #f2d5d8}.check-list li:before{content:"";position:absolute;left:0;top:15px;width:14px;height:14px;border-radius:50%;background:var(--brand-red)}.program-card p{color:#526173}.program-card a{font-weight:700;text-decoration:none;color:var(--brand-red)}
@media(max-width:991px){.navbar-nav{padding-top:12px}.navbar .btn{width:100%;margin:.25rem 0!important}.hero,.donation-hero,.page-hero{text-align:left}.public-card,.panel-card,.stat-card{box-shadow:0 6px 18px rgba(23,35,58,.06)}}
@media(max-width:767px){.hero{min-height:62vh;padding:48px 0}.hero .btn{width:100%;margin:.35rem 0!important}.donation-hero,.page-hero{padding:48px 0}.section-pad{padding:38px 0}.display-4{font-size:2.15rem}.table{font-size:.88rem}.impact-strip{margin-top:0;padding-top:16px}.impact-item{padding:16px 10px}.impact-item strong{font-size:1.45rem}.service-tile,.cta-panel,.public-card{padding:20px!important}.quick-amounts .btn{flex:1 1 calc(50% - 10px)}.donation-summary{padding:18px}.thumb{height:180px}.avatar{width:76px;height:76px}.list-group-item .d-flex{display:block!important}.drop-loader p{font-size:.9rem}.blood-drop{width:48px;height:48px}.drop-pulse{width:62px}}
@media(max-width:420px){.container{padding-left:16px;padding-right:16px}.display-4{font-size:1.9rem}h1{font-size:1.75rem}h2{font-size:1.45rem}.lead{font-size:1rem}.quick-amounts .btn{flex-basis:100%}.table-responsive{border-radius:6px}}
