@import url(https://fonts.googleapis.com/css2?family=Great+Vibes&family=Pacifico&family=Poppins:wght@400;500;600;700&family=Allura&family=Alex+Brush&display=swap);*{scroll-behavior:smooth}.home-page{background:var(--color-white);min-height:100vh;overflow-x:hidden}.about-card,.contact-item,.ministry-card,.service-item,.testimonial-card{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.fade-in-visible{opacity:1!important;transform:translateY(0)!important}.about-card:first-child{transition-delay:.1s}.about-card:nth-child(2){transition-delay:.2s}.about-card:nth-child(3){transition-delay:.3s}.service-item:first-child{transition-delay:.1s}.service-item:nth-child(2){transition-delay:.2s}.service-item:nth-child(3){transition-delay:.3s}.service-item:nth-child(4){transition-delay:.4s}.ministry-card:first-child{transition-delay:.1s}.ministry-card:nth-child(2){transition-delay:.2s}.ministry-card:nth-child(3){transition-delay:.3s}.ministry-card:nth-child(4){transition-delay:.4s}.ministry-card:nth-child(5){transition-delay:.5s}.ministry-card:nth-child(6){transition-delay:.6s}.testimonial-card:first-child{transition-delay:.1s}.testimonial-card:nth-child(2){transition-delay:.2s}.testimonial-card:nth-child(3){transition-delay:.3s}.contact-item:first-child{transition-delay:.1s}.contact-item:nth-child(2){transition-delay:.2s}.contact-item:nth-child(3){transition-delay:.3s}.contact-item:nth-child(4){transition-delay:.4s}.hero-section{align-items:center;background:var(--gradient-hero),url(../../static/media/church-photo.4e414d02eb6128c4dbc8.jpg) 40% 50%/cover no-repeat;background-attachment:fixed;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:40px 20px;position:relative}.hero-content:before{background:#0000004d;border-radius:20px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:-1}@media (min-width:1024px){.hero-section{background:var(--gradient-hero),url(../../static/media/church-photo.4e414d02eb6128c4dbc8.jpg) 40% 50%/contain}}.hero-overlay{background:radial-gradient(circle at 20% 50%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%);bottom:0;left:0;position:absolute;right:0;top:0}.hero-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--gradient-hero),url(../../static/media/church-group.8e64cbdb472cf750880a.jpg) 50%/cover no-repeat;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000001a;color:#fff;max-width:1400px;padding:50px 30px;position:relative;text-align:center;width:100%;z-index:1}.church-header{animation:fadeInDown 1s ease-out;margin-bottom:40px}.hero-logos{align-items:center;display:flex;gap:40px;justify-content:center;margin-bottom:30px;position:relative}.hero-logo{animation:fadeIn 1.5s ease-out,logoGlow 4s ease-in-out infinite alternate;background:radial-gradient(circle,#ffffff26 0,#0000 70%);filter:brightness(0) invert(1) drop-shadow(0 8px 20px rgba(0,0,0,.3));height:140px;object-fit:contain;padding:12px;transition:transform .5s ease,filter .5s ease}.hero-logo.ag-logo{height:120px;padding:8px}.hero-logo.church-logo{filter:brightness(0) invert(1) drop-shadow(0 8px 20px rgba(0,0,0,.3)) drop-shadow(0 -8px 20px rgba(0,0,0,.3)) drop-shadow(8px 0 20px rgba(0,0,0,.3)) drop-shadow(-8px 0 20px rgba(0,0,0,.3));padding:15px}.hero-logo:hover{filter:brightness(0) invert(1) drop-shadow(0 12px 30px rgba(255,255,255,.5));transform:scale(1.1) translateY(-5px)}@keyframes logoGlow{0%{filter:brightness(0) invert(1) drop-shadow(0 0 15px rgba(255,255,255,.8)) drop-shadow(0 0 25px rgba(255,255,255,.6)) drop-shadow(0 8px 20px rgba(0,0,0,.3))}50%{filter:brightness(0) invert(1) drop-shadow(0 0 25px rgba(255,255,255,.9)) drop-shadow(0 0 35px rgba(255,255,255,.7)) drop-shadow(0 8px 25px rgba(0,0,0,.3))}to{filter:brightness(0) invert(1) drop-shadow(0 0 20px rgba(255,255,255,.85)) drop-shadow(0 0 30px rgba(255,255,255,.65)) drop-shadow(0 8px 20px rgba(0,0,0,.3))}}.church-name{-webkit-text-fill-color:#0000;background:var(--gradient-white-to-off-white);-webkit-background-clip:text;background-clip:text;font-size:56px;font-weight:800;letter-spacing:-1px;margin:0 0 12px}.church-location{font-size:20px;font-weight:500;margin:0}.church-location,.church-tagline{opacity:.95;text-shadow:0 2px 8px #0000001a}.church-tagline{animation:fadeIn 2s ease-out;font-size:18px;font-style:italic;line-height:1.6;margin:0 auto 40px;max-width:700px}.hero-cta{align-items:center;animation:fadeInUp 1s ease-out .5s both;display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.primary-cta,.secondary-cta{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;padding:16px 40px;text-transform:uppercase;transition:all .3s ease}.primary-cta{animation:pulse 2s ease-in-out infinite;background:#fff;box-shadow:0 4px 20px #ffffff4d;color:var(--color-primary);overflow:hidden;position:relative}.primary-cta:before{background:#667eea1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.primary-cta:hover:before{height:300px;width:300px}.primary-cta:hover{animation:none;box-shadow:0 8px 40px #ffffff80;transform:translateY(-3px) scale(1.05)}.secondary-cta{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #fff;color:#fff}.secondary-cta:hover{background:#ffffff4d;transform:translateY(-3px)}.info-banner{background:var(--gradient-white-to-gray);box-shadow:0 -10px 40px #0000001a,inset 0 1px 0 #ffffff80;padding:80px 20px;position:relative}.info-banner:before{background:linear-gradient(90deg,#0000,#667eea,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.info-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:1400px}.info-item{align-items:center;border-radius:16px;cursor:pointer;gap:16px;justify-content:center;padding:20px;transition:all .3s ease}.info-item:hover{background:#667eea0d;transform:translateY(-5px)}.info-icon{animation:float 3s ease-in-out infinite;font-size:48px;transition:transform .3s ease}.info-item:nth-child(2) .info-icon{animation-delay:.3s}.info-item:nth-child(3) .info-icon{animation-delay:.6s}.info-item:nth-child(4) .info-icon{animation-delay:.9s}.info-item:hover .info-icon{animation:none;transform:scale(1.3) rotate(15deg)}.info-text h4{color:#667eea;font-size:32px;font-weight:800;margin:0}.info-text p{color:#718096;font-size:14px;font-weight:600;margin:4px 0 0}.announcements-section{background:linear-gradient(135deg,#ffeaa7,#fdcb6e);overflow:hidden;padding:80px 20px;position:relative}.announcements-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%23fff' fill-opacity='.1' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.4;position:absolute;right:0;top:0}.announcements-content{margin:0 auto;max-width:1400px;position:relative;z-index:1}.announcements-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:40px}.announcements-content h2{color:#2c3e50;font-size:36px;font-weight:700;margin:0;text-shadow:0 2px 4px #0000001a}.view-all-announcements-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:30px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s ease}.view-all-announcements-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.announcements-carousel{display:flex;gap:24px;overflow-x:auto;padding-bottom:20px;scroll-snap-type:x mandatory}.announcement-banner{background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;cursor:pointer;flex:0 0 280px;overflow:hidden;position:relative;scroll-snap-align:start;transition:all .3s ease;width:280px}.announcement-banner:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:6px;left:0;position:absolute;right:0;top:0}.announcement-banner:hover{box-shadow:0 16px 48px #00000040;transform:translateY(-8px)}.announcement-poster{background:linear-gradient(135deg,#667eea,#764ba2);height:380px;overflow:hidden;position:relative;width:100%}.announcement-poster img{height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.announcement-banner:hover .announcement-poster img{transform:scale(1.05)}.announcement-overlay{background:linear-gradient(0deg,#000000eb 0,#000000bf 60%,#0006 85%,#0000);bottom:0;left:0;padding:20px 16px 16px;position:absolute;right:0;transition:all .3s ease}.announcement-overlay-content h3{color:#fff;font-size:16px;font-weight:700;line-height:1.3;margin:0 0 6px}.announcement-overlay-content p{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#ffffffe6;display:-webkit-box;font-size:12px;line-height:1.5;margin:0;overflow:hidden}.announcement-details{padding:16px}.announcement-details h3{color:#2c3e50;font-size:16px;font-weight:700;line-height:1.3;margin:0 0 8px}.announcement-details p{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:13px;line-height:1.6;margin:0 0 12px;overflow:hidden}.announcement-expiry{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:6px;color:#667eea;display:flex;font-size:11px;font-weight:600;gap:6px;padding:8px 12px}.expiry-icon{font-size:14px}.about-section{background:#f7fafc;padding:100px 20px}.about-content{margin:0 auto;max-width:1400px}.about-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;padding-bottom:20px;position:relative;text-align:center}.about-content h2:after{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:100px}.pastor-section{margin:60px 0}.pastors-heading{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;display:inline-block;font-size:48px;font-weight:800;letter-spacing:.5px;margin:0 auto 64px;padding:0 20px;position:relative;text-align:center;width:100%}.pastors-heading:after,.pastors-heading:before{color:#667eea;content:"✝";font-size:32px;opacity:.6;position:absolute;top:50%;transform:translateY(-50%)}.pastors-heading:before{left:10%}.pastors-heading:after{right:10%}.pastors-grid{margin:0 auto;max-width:1400px}.pastor-card.senior-pastor,.pastors-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr}.pastor-card.senior-pastor{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #fff3;border-radius:24px;box-shadow:0 20px 60px #667eea66;color:#fff;margin-bottom:24px;overflow:hidden;padding:48px;position:relative}.pastor-card.senior-pastor:before{animation:rotate 15s linear infinite;background:radial-gradient(circle,#ffffff26 0,#0000 60%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}.pastor-card.senior-pastor .pastor-image-container{aspect-ratio:16/9;margin:0 auto;max-width:700px}.pastor-card.senior-pastor .pastor-content{position:relative;text-align:center;z-index:1}.pastor-card.senior-pastor h3{font-size:42px;font-weight:900;letter-spacing:1px;margin:0 0 12px;text-shadow:0 4px 12px #0000004d}.pastor-card.senior-pastor .pastor-title{font-size:22px;font-weight:700;letter-spacing:3px;margin:0 0 24px;opacity:.95;text-transform:uppercase}.pastor-card.senior-pastor .pastor-message{font-size:19px;line-height:1.9;margin:0 auto;max-width:800px}.associate-pastors-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr;margin:0 auto;max-width:1400px}.pastor-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #667eea4d;color:#fff;overflow:hidden;padding:40px 32px;position:relative;text-align:center}.pastor-card.associate-pastor{grid-gap:24px;align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 10px 40px #48bb784d;display:grid;gap:24px;grid-template-columns:1fr;text-align:center}.pastor-card.associate-pastor .pastor-image-container{margin:0 auto;max-width:100%}.pastor-image-container.associate-pastor-image{aspect-ratio:unset;height:auto;max-width:100%}.pastor-image-container.associate-pastor-image .pastor-image{height:auto;object-fit:contain;width:100%}.pastor-card.associate-pastor .pastor-content{position:relative;z-index:1}.pastor-card:before{animation:rotate 15s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 60%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}.pastor-image-container{background:linear-gradient(145deg,#fff,#f0f0f0);border-radius:20px;box-shadow:0 10px 40px #00000026,inset 0 1px 0 #ffffffe6,inset 0 -1px 0 #0000001a;height:auto;margin:0 auto 24px;max-width:600px;padding:12px;position:relative;width:100%;z-index:1}.pastor-image{border:4px solid #fffffff2;border-radius:16px;box-shadow:0 4px 16px #0003,inset 0 0 0 1px #0000000d;height:auto;object-fit:contain;width:100%}.pastor-icon-badge{align-items:center;background:linear-gradient(135deg,gold,#ffed4e);border:4px solid #fff;border-radius:50%;bottom:5px;box-shadow:0 4px 12px #0000004d;display:flex;font-size:28px;height:50px;justify-content:center;position:absolute;right:5px;width:50px;z-index:2}.pastor-card h3{font-size:32px;font-weight:800;margin:0 0 8px;position:relative;text-shadow:0 2px 8px #0003;z-index:1}.pastor-card.associate-pastor h3{font-size:28px}.pastor-title{font-size:18px;font-weight:600;letter-spacing:2px;margin:0 0 24px;opacity:.95;position:relative;text-transform:uppercase;z-index:1}.pastor-card.associate-pastor .pastor-title{font-size:16px}.pastor-message{font-size:17px;font-style:italic;line-height:1.8;margin:0;opacity:.98;position:relative;text-shadow:0 1px 4px #0000001a;z-index:1}.pastor-card.associate-pastor .pastor-message{font-size:16px}@media (min-width:992px){.pastor-card.senior-pastor{gap:48px;grid-template-columns:1fr 1fr;padding:56px}.pastor-card.senior-pastor .pastor-content{text-align:left}.pastor-card.senior-pastor h3{font-size:48px}.pastor-card.senior-pastor .pastor-title{font-size:24px}.pastor-card.senior-pastor .pastor-message{font-size:18px;margin:0}.associate-pastors-grid{gap:32px;grid-template-columns:repeat(2,1fr)}.pastor-card.associate-pastor{gap:32px;grid-template-columns:280px 1fr;text-align:left}.pastor-card.associate-pastor .pastor-image-container{margin:0}.pastor-card.associate-pastor .pastor-content{padding-right:24px}.pastor-card{padding:32px 24px}.pastor-image-container{aspect-ratio:4/3;max-width:100%}.pastor-card h3{font-size:24px}.pastor-message,.pastor-title{font-size:14px}}@media (min-width:768px) and (max-width:991px){.pastor-card.senior-pastor{padding:40px}.pastor-card.senior-pastor h3{font-size:36px}.pastor-card.senior-pastor .pastor-title{font-size:18px}.associate-pastors-grid{grid-template-columns:1fr;max-width:600px}}@media (max-width:767px){.pastors-heading{font-size:28px;margin-bottom:32px}.pastor-card.senior-pastor{padding:32px 24px}.pastor-card.senior-pastor h3{font-size:32px}.pastor-card.senior-pastor .pastor-message,.pastor-card.senior-pastor .pastor-title{font-size:16px}.pastor-card{padding:32px 24px}.pastor-image-container{aspect-ratio:4/3;max-width:100%}.pastor-card h3{font-size:24px}.pastor-message,.pastor-title{font-size:14px}}@media (min-width:768px) and (max-width:991px){.pastors-grid{grid-template-columns:1fr;max-width:600px}}@media (max-width:767px){.pastors-heading{font-size:28px;margin-bottom:32px}.pastor-card{padding:32px 24px}.pastor-image-container{max-width:100%}.pastor-card h3{font-size:24px}.pastor-title{font-size:14px}.pastor-message{font-size:15px}}.about-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.about-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;padding:40px 32px;position:relative;text-align:center;transition:all .3s ease}.about-card:before{background:linear-gradient(90deg,#0000,#667eea1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.about-card:hover:before{left:100%}.about-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-8px)}.about-icon{font-size:48px;margin-bottom:20px}.about-card h3{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 16px}.about-card p{color:#718096;font-size:15px;line-height:1.7;margin:0}.services-section{background:#fff;padding:100px 20px}.services-content{margin:0 auto;max-width:1400px}.contact-content h2,.ministries-content h2,.services-content h2,.testimonials-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;padding-bottom:20px;position:relative;text-align:center}.contact-content h2:after,.ministries-content h2:after,.services-content h2:after,.testimonials-content h2:after{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:100px}.services-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1400px}.service-item{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #fff3;border-radius:16px;color:#fff;cursor:pointer;overflow:hidden;padding:32px 24px;position:relative;transition:all .3s ease}.service-item:after{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;transform:scale(0);transition:transform .5s;width:200%}.service-item:hover:after{transform:scale(1)}.service-item:hover{box-shadow:0 12px 40px #667eea4d;transform:translateY(-8px) scale(1.02)}.service-day{font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:16px;opacity:.9;text-transform:uppercase}.service-details h4{font-size:20px;font-weight:700;margin:0 0 8px}.service-details p{font-size:15px;margin:0;opacity:.95}.contact-section{background:#f7fafc;padding:100px 20px}.contact-content{margin:0 auto;max-width:1400px}.contact-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;text-align:center}.contact-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.contact-item{background:#fff;border:2px solid #0000;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;padding:40px 32px;position:relative;text-align:center;transition:all .3s ease}.contact-item:before{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:0}.contact-item:hover:before{opacity:.05}.contact-item:hover{border-color:#667eea;box-shadow:0 16px 50px #667eea33;transform:translateY(-10px) scale(1.02)}.contact-icon{font-size:48px;margin-bottom:20px;position:relative;transition:transform .3s ease;z-index:1}.contact-item:hover .contact-icon{transform:scale(1.2) rotate(5deg)}.contact-item h4{color:#2d3748;font-size:20px;font-weight:700;margin:0 0 12px;position:relative;transition:color .3s ease;z-index:1}.contact-item:hover h4{color:#667eea}.contact-item p{color:#718096;font-size:15px;line-height:1.7;margin:0 0 16px}.contact-item p,.map-link{position:relative;z-index:1}.map-link{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.map-link:hover{background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.phone-link{color:#667eea;display:inline-block;font-size:18px;font-weight:700;margin-bottom:8px;text-decoration:none;transition:all .3s ease}.phone-link:hover{color:#764ba2;text-decoration:underline}.whatsapp-link{align-items:center;background:#25d366;border-radius:8px;box-shadow:0 4px 12px #25d3664d;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:6px;margin:8px 0;padding:8px 16px;text-decoration:none;transition:all .3s ease}.whatsapp-link:hover{background:#128c7e;box-shadow:0 6px 20px #25d36666;transform:translateY(-2px)}.home-footer{background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff;padding:60px 20px 30px}.footer-content{margin:0 auto;max-width:1400px}.footer-logo{margin-bottom:32px}.footer-logos{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:16px}.footer-logo img{filter:brightness(0) invert(1)}.footer-logo img.ag-logo{width:70px}.footer-logo img.church-logo{width:200px}.footer-links{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:32px}.footer-link{border-radius:6px;color:#fff;font-size:15px;font-weight:500;padding:8px 16px;text-decoration:none}.footer-link:hover{background:#ffffff1a;text-decoration:none}.footer-links span{opacity:.5}.footer-copyright{border-top:1px solid #ffffff1a;font-size:14px;margin:0;opacity:.7;padding-top:32px}.scroll-to-top{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:40px;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;font-size:24px;height:56px;opacity:0;position:fixed;right:40px;transform:translateY(20px) scale(.8);transition:all .3s ease;visibility:hidden;width:56px;z-index:1000}.scroll-to-top.visible{opacity:1;transform:translateY(0) scale(1);visibility:visible}.scroll-to-top:hover{box-shadow:0 8px 30px #667eea80;transform:translateY(-5px) scale(1.1)}.scroll-to-top:active{transform:translateY(-2px) scale(1.05)}.scroll-to-top span{align-items:center;display:flex;font-weight:700;justify-content:center}@media (max-width:1024px){.about-content h2,.contact-content h2,.ministries-content h2,.services-content h2,.testimonials-content h2{font-size:36px}.hero-content{padding:35px 25px}}@media (max-width:768px){.church-name{font-size:36px}.church-location{font-size:16px}.church-tagline{font-size:15px;margin-bottom:40px}.hero-content{border-radius:20px;padding:25px 15px}.primary-cta,.secondary-cta{font-size:15px;padding:14px 32px}.info-content{gap:20px;grid-template-columns:repeat(2,1fr)}.announcements-section{padding:60px 20px}.announcements-content h2{font-size:28px;margin-bottom:30px}.announcements-carousel{gap:16px}.announcement-banner{flex:0 0 260px;width:260px}.announcement-poster{height:340px}.announcement-overlay-content h3{font-size:15px}.announcement-overlay-content p{font-size:11px}.announcement-modal-info{padding:24px}.announcement-modal-info h2{font-size:24px}.announcement-modal-description{font-size:15px}.info-icon{font-size:40px}.info-text h4{font-size:28px}.about-content h2,.contact-content h2,.ministries-content h2,.services-content h2,.testimonials-content h2{font-size:32px;margin-bottom:40px}.about-section,.contact-section,.info-banner,.ministries-section,.portal-access-section,.services-section,.testimonials-section{padding:60px 20px}.footer-nav{gap:30px;grid-template-columns:1fr;text-align:center}.footer-link{padding:8px 0;text-align:center}.footer-link:hover{padding-left:0}.ministries-grid,.testimonials-grid{grid-template-columns:1fr}.portal-links{flex-direction:column}.portal-link-btn{justify-content:center;width:100%}.scroll-to-top{bottom:20px;font-size:20px;height:48px;right:20px;width:48px}}@media (max-width:480px){.hero-content{background:linear-gradient(135deg,#667eeae0,#764ba2e0),url(../../static/media/church-group.8e64cbdb472cf750880a.jpg) 50%/contain no-repeat}.church-name{font-size:28px}.church-location,.church-tagline{font-size:14px}.hero-cta{flex-direction:column;gap:16px}.primary-cta,.secondary-cta{width:100%}.info-content{gap:16px;grid-template-columns:1fr}.about-content h2,.contact-content h2,.ministries-content h2,.services-content h2,.testimonials-content h2{font-size:28px}.about-grid,.contact-grid,.services-grid{gap:20px}.portal-access-content h3{font-size:26px}}.ministries-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:100px 20px}.ministries-content{margin:0 auto;max-width:1400px}.ministries-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;text-align:center}.ministries-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.ministry-card{background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;cursor:pointer;overflow:hidden;padding:40px 32px;position:relative;text-align:center;transition:all .3s ease}.ministry-card:before{background:linear-gradient(90deg,#0000,#667eea0d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.ministry-card:hover:before{left:100%}.ministry-card:hover{border-top-color:#764ba2;border-top-width:6px;box-shadow:0 16px 50px #667eea40;transform:translateY(-12px) rotate(1deg)}.ministry-icon{font-size:56px;margin-bottom:20px;transition:transform .3s ease}.ministry-card:hover .ministry-icon{transform:scale(1.2) rotate(-5deg)}.ministry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:600;margin-top:20px;padding:12px 28px;transition:all .3s ease}.ministry-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.ministry-card h4{color:#2d3748;font-size:22px;font-weight:700;margin:0 0 16px}.ministry-card p{color:#4a5568}.quick-links-section{background:linear-gradient(135deg,#fff,#f7fafc);padding:100px 20px}.quick-links-content{margin:0 auto;max-width:1400px}.quick-links-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;text-align:center}.quick-links-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.quick-link-card{background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;cursor:pointer;overflow:hidden;padding:40px 32px;position:relative;text-align:center;transition:all .3s ease}.quick-link-card:before{background:linear-gradient(90deg,#0000,#667eea0d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.quick-link-card:hover:before{left:100%}.quick-link-card:hover{border-top-color:#764ba2;border-top-width:6px;box-shadow:0 16px 50px #667eea40;transform:translateY(-12px)}.quick-link-icon{font-size:56px;margin-bottom:20px;transition:transform .3s ease}.quick-link-card:hover .quick-link-icon{transform:scale(1.2)}.quick-link-card h4{color:#2d3748;font-size:22px;font-weight:700;margin:0 0 12px}.quick-link-card p{color:#718096;font-size:15px;line-height:1.7;margin:0 0 24px}.quick-link-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:600;padding:12px 28px;transition:all .3s ease}.quick-link-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.ministry-card h3{color:#2d3748;font-size:22px;font-weight:700;margin:0 0 12px}.ministry-card p{color:#718096;font-size:15px;line-height:1.7;margin:0}.footer-logo p{font-size:18px;font-weight:600;margin:0;opacity:.9}.footer-nav{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:40px;text-align:left}.footer-section h4{color:#fff;font-size:16px;font-weight:700;letter-spacing:1px;margin:0 0 16px;text-transform:uppercase}.footer-link{background:none;border:none;color:#fffc;cursor:pointer;display:block;font-size:14px;font-weight:400;padding:6px 0;text-align:left;transition:all .2s}.footer-link:hover{color:#667eea;padding-left:8px}.footer-text{color:#fffc;line-height:1.6}.contact-item p a,.footer-text a{color:#667eea;font-weight:600;text-decoration:none;transition:all .3s ease}.contact-item p a:hover,.footer-text a:hover{color:#764ba2;text-decoration:underline}.testimonials-section{background:#fff;clear:both;overflow:visible;padding:100px 20px}.testimonials-content{margin:0 auto;max-width:1400px;width:100%}.testimonials-content h2{color:#2d3748;font-size:42px;font-weight:800;margin:0 0 60px;text-align:center}.testimonials-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));min-height:auto;width:100%}.testimonial-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:16px;box-shadow:0 4px 20px #00000014;display:block;min-height:200px;padding:40px 32px;position:relative;transition:all .3s ease;visibility:visible}.testimonial-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-8px)}.testimonial-quote{color:#667eea;font-family:Georgia,serif;font-size:80px;left:20px;line-height:1;opacity:.2;position:absolute;top:20px}.testimonial-card p{color:#4a5568;font-size:16px;font-style:italic;line-height:1.7;margin:0 0 24px;position:relative;z-index:1}.testimonial-card p.truncated{overflow:hidden;text-overflow:ellipsis}.see-more-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;margin:12px 0;padding:0;text-align:left;transition:color .3s ease}.see-more-link:hover{color:#764ba2;text-decoration:underline}.testimonial-author{border-top:2px solid #e2e8f0;display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:16px}.testimonial-author strong{color:#2d3748;font-size:16px;font-weight:700}.testimonial-author span{color:#718096;font-size:13px}.portal-access-section{background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden;padding:100px 20px;position:relative;text-align:center}.portal-access-section:before{animation:rotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.portal-access-content{margin:0 auto;max-width:800px}.portal-access-content h3{color:#fff;font-size:32px;font-weight:800;margin:0 0 12px}.portal-access-content>p{color:#ffffffe6;font-size:16px;margin:0 0 40px}.portal-links{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.portal-link-btn{align-items:center;background:#fff;border:none;border-radius:10px;box-shadow:0 4px 20px #0003;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:12px;overflow:hidden;padding:14px 32px;position:relative;transition:all .3s ease}.portal-link-btn:before{background:linear-gradient(45deg,#0000 30%,#ffffff4d 50%,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:translateX(-100%);transition:transform .6s;width:200%}.portal-link-btn:hover:before{transform:translateX(100%)}.portal-link-btn:hover{box-shadow:0 10px 40px #0006;transform:translateY(-5px) scale(1.05)}.admin-link{color:#667eea}.member-link{color:#48bb78}.portal-link-icon{font-size:24px}.portal-link-text{font-size:15px}.this-week-section{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:20px;margin-bottom:60px;padding:40px}.this-week-section h3{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 30px;text-align:center}.week-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.week-header h3{color:#2c3e50;font-size:28px;font-weight:700;margin:0}.week-duration{background:#667eea1a;border-radius:8px;color:#667eea;font-size:16px;font-weight:600;padding:8px 16px}.week-duration p{margin:0}.week-events-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-width:100%}@media (min-width:1200px){.week-events-list{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.this-week-section{margin-bottom:40px;padding:24px}.this-week-section h3{font-size:22px;margin:0 0 24px}.week-events-list{gap:16px;grid-template-columns:1fr}.home-week-event-card{flex-direction:row;gap:12px;padding:16px}.event-date-badge{height:60px;min-width:60px}.event-date-badge .day{font-size:20px}.event-date-badge .month{font-size:10px}.event-title{font-size:15px}.event-description{-webkit-line-clamp:2;font-size:13px}.event-meta-info{gap:12px}.meta-item{font-size:12px}}@media (max-width:480px){.this-week-section{margin-bottom:32px;padding:16px}.this-week-section h3{font-size:18px;margin:0 0 16px}.week-events-list{gap:12px;grid-template-columns:1fr}.home-week-event-card{flex-direction:row;gap:10px;padding:12px}.event-date-badge{height:50px;min-width:50px}.event-date-badge .day{font-size:18px}.event-date-badge .month{font-size:9px}.event-date-badge .weekday{font-size:8px}.event-title{font-size:14px}.event-description{-webkit-line-clamp:1;font-size:12px}.event-meta-info{flex-wrap:wrap;gap:8px}.meta-item{font-size:11px}}.home-week-event-card{background:#fff;border-left:4px solid #667eea;border-radius:16px;box-shadow:0 2px 8px #0000001a;display:flex;gap:12px;padding:12px 16px;transition:all .3s ease}.home-week-event-card:hover{border-left-color:#764ba2;box-shadow:0 8px 24px #667eea40;transform:translateX(8px) translateY(-4px)}.home-week-event-card.today{background:linear-gradient(135deg,#d4fc79f2,#96e6a1f2);border-left-color:#48bb78;box-shadow:0 8px 24px #48bb784d}.home-week-event-card.today:hover{border-left-color:#38a169;box-shadow:0 12px 32px #48bb7866}.event-date-badge{height:55px;min-width:55px}.home-week-event-card.today .event-date-badge{animation:pulse-shadow 2s infinite;background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 16px #48bb7866}.event-details{display:flex;flex:1 1;flex-direction:column;gap:4px}.event-title{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.home-week-event-card.today .event-title{color:#1a5838}.home-week-event-card.today .event-description{color:#2d5a3d}.event-meta-info{gap:12px;margin-top:2px}.home-week-event-card.today .meta-item{color:#2d5a3d}.modal-overlay{animation:fadeIn .3s ease}.modal-content{animation:slideUp .3s ease;box-shadow:0 10px 40px #0003;max-height:80vh;position:relative;width:90%}.modal-close-btn{background:none;border:none;color:#4a5568;right:16px;top:16px;transition:color .2s ease}.modal-close-btn:hover{color:#2d3748}.modal-header{border-bottom:2px solid #edf2f7;padding:32px 24px 16px}.modal-header h2{font-size:24px;font-weight:700}.modal-section{border-bottom:1px solid #edf2f7;margin-bottom:24px;padding-bottom:20px}.modal-section:last-of-type{border-bottom:none}.modal-section h3{color:#2c3e50;font-size:16px;font-weight:700;margin:0 0 12px}.modal-section p{color:#4a5568;font-size:14px;line-height:1.6;margin:8px 0}.zoom-button{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;border-radius:8px;box-shadow:0 4px 12px #4facfe4d;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-top:12px;padding:12px 20px;transition:all .3s ease}.zoom-button:hover{box-shadow:0 6px 20px #4facfe66;transform:translateY(-2px)}.zoom-button:active{transform:translateY(0)}.modal-footer{border-top:1px solid #edf2f7;padding:16px 24px}.modal-btn-close{background:#edf2f7;border:none;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s ease}.modal-btn-close:hover{background:#e2e8f0;color:#1a202c}.home-week-event-card{cursor:pointer}.resources-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:80px 20px}.resources-content{margin:0 auto;max-width:1400px}.resources-content h2{color:#2c3e50;font-size:36px;font-weight:700;margin:0 0 12px;text-align:center}.section-subtitle{color:#667eea;font-size:16px;font-weight:500;margin:0 0 40px;text-align:center}.no-articles{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.no-articles p{color:#4a5568;font-size:16px;margin:0}.no-testimonials{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.no-testimonials p{color:#4a5568;font-size:16px;margin:0}.articles-grid{grid-gap:28px;gap:28px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:40px}.article-card{border-radius:16px;box-shadow:0 4px 12px #00000014;height:100%}.article-card:hover{box-shadow:0 12px 24px #667eea26}.article-image{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:200px;justify-content:center;overflow:hidden;width:100%}.article-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.article-image img.error,.article-image img:not([src]){display:none}.article-card:hover .article-image img{transform:scale(1.05)}.article-content{display:flex;flex:1 1;flex-direction:column;padding:24px}.article-meta{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.article-category{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.article-date{color:#a0aec0;font-size:12px;font-weight:500}.article-title{color:#2d3748;flex-grow:1;font-size:18px;font-weight:700;line-height:1.4;margin:0 0 12px}.article-excerpt{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:14px;line-height:1.6;margin:0 0 12px;overflow:hidden}.article-author{color:#718096;font-size:13px;font-style:italic;margin:0 0 16px}.read-more-btn{background:none;border:none;color:#667eea;cursor:pointer;display:inline-block;font-family:inherit;font-size:14px;font-weight:600;margin-top:auto;padding:0;text-decoration:none;transition:all .3s ease}.read-more-btn:hover{color:#764ba2;transform:translateX(4px)}.view-all-articles-section{border-top:2px solid #e0e0e0;margin-top:50px;padding-top:40px;text-align:center}.btn-view-all-articles{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:30px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px 40px;transition:all .3s ease}.btn-view-all-articles:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-3px)}.gallery-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:100px 20px}.gallery-content{margin:0 auto;max-width:1400px}.gallery-content h2{color:#2c3e50;font-size:36px;font-weight:700;margin:0 0 12px;text-align:center}.gallery-content .section-subtitle{color:#667eea;font-size:16px;font-weight:500;margin:0 0 50px;text-align:center}.gallery-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.gallery-item{aspect-ratio:1;background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.gallery-item:hover{box-shadow:0 12px 32px #667eea40;transform:scale(1.05) translateY(-8px)}.gallery-image{height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.gallery-item:hover .gallery-image{transform:scale(1.1)}.gallery-overlay{align-items:center;background:linear-gradient(135deg,#667eeacc,#764ba2cc);border-radius:16px;bottom:0;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;width:100%}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-info{color:#fff;text-align:center;transform:translateY(20px);transition:transform .3s ease}.gallery-item:hover .gallery-info{transform:translateY(0)}.gallery-info h4{font-size:18px;font-weight:700;line-height:1.4;margin:0 0 8px}.view-text{font-size:13px;font-weight:500;margin:0;opacity:.9}.gallery-view-all{margin-top:40px;text-align:center}.view-all-gallery-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:30px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:.5px;padding:16px 40px;text-transform:uppercase;transition:all .3s ease}.view-all-gallery-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 6px 20px #667eea66;transform:translateY(-3px)}.photo-modal-overlay{background:#000000f2;z-index:1100}.photo-modal-content{animation:zoomIn .3s ease;max-width:90vw;overflow:auto}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.photo-modal-close-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;font-weight:700;height:48px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .3s ease;width:48px;z-index:10}.photo-modal-close-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:scale(1.1)}.photo-modal-body{display:flex;flex-direction:column;height:auto;width:100%}.photo-modal-image{border-radius:12px 12px 0 0;height:auto;max-height:calc(90vh - 100px)}.photo-modal-info{background:#fff;border-radius:0 0 12px 12px;padding:24px;text-align:center}.photo-modal-info h3{color:#2c3e50;font-size:20px;margin:0 0 8px}.photo-counter{color:#667eea;font-size:14px;font-weight:500;margin:0}.announcement-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1100}.announcement-modal-content{animation:zoomIn .3s ease;background:#fff;border-radius:16px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:auto;position:relative}.announcement-modal-close-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;font-weight:700;height:48px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .3s ease;width:48px;z-index:10}.announcement-modal-close-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:scale(1.1)}.announcement-modal-body{display:flex;flex-direction:column;height:auto;width:100%}.announcement-modal-image{background:linear-gradient(135deg,#667eea,#764ba2);width:100%}.announcement-modal-image img{display:block;height:auto;max-height:500px;object-fit:contain;width:100%}.announcement-modal-info{background:#fff;border-radius:0 0 16px 16px;padding:32px}.announcement-modal-info h2{color:#2c3e50;font-size:28px;font-weight:700;line-height:1.3;margin:0 0 16px}.announcement-modal-description{color:#4a5568;font-size:16px;line-height:1.8;margin:0 0 24px;white-space:pre-wrap}.announcement-modal-expiry{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:10px;color:#667eea;display:flex;font-size:15px;font-weight:600;gap:10px;padding:16px 20px}.announcement-modal-expiry .expiry-icon{font-size:20px}.photo-modal-nav-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#667eeae6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:48px;font-weight:700;height:56px;justify-content:center;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:56px;z-index:11}.photo-modal-prev-btn{left:20px}.photo-modal-next-btn{right:20px}.photo-modal-nav-btn:hover{background:#764ba2f2;box-shadow:0 8px 24px #667eea66;transform:translateY(-50%) scale(1.1)}.photo-modal-nav-btn:active{transform:translateY(-50%) scale(.95)}@media (max-width:768px){.gallery-section{padding:60px 20px}.gallery-content h2{font-size:28px;margin:0 0 12px}.gallery-content .section-subtitle{font-size:14px;margin:0 0 30px}.gallery-grid{gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.gallery-info h4{font-size:15px}.photo-modal-overlay{padding:16px}.photo-modal-image{max-height:calc(90vh - 80px)}.photo-modal-nav-btn{font-size:36px;height:48px;width:48px}.photo-modal-prev-btn{left:12px}.photo-modal-next-btn{right:12px}}@media (max-width:480px){.gallery-section{padding:40px 16px}.gallery-content h2{font-size:22px;margin:0 0 8px}.gallery-content .section-subtitle{font-size:12px;margin:0 0 20px}.gallery-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.gallery-item{border-radius:12px}.gallery-info h4{font-size:13px}.view-text{font-size:11px}.photo-modal-close-btn{font-size:20px;height:40px;right:12px;top:12px;width:40px}.photo-modal-info{padding:16px}.photo-modal-nav-btn{font-size:28px;height:40px;width:40px}.photo-modal-prev-btn{left:8px}.photo-modal-next-btn{right:8px}.photo-counter{font-size:12px}.photo-modal-info h3{font-size:16px}.photo-modal-overlay{padding:12px}.photo-modal-image{max-height:calc(90vh - 60px)}}.youtube-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:100px 20px}.youtube-content{margin:0 auto;max-width:1400px}.youtube-content h2{color:#2c3e50;font-size:36px;font-weight:700;margin:0 0 12px;text-align:center}.youtube-content .section-subtitle{color:#667eea;font-size:16px;font-weight:500;margin:0 0 40px;text-align:center}.youtube-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:40px}.youtube-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.youtube-card:hover{box-shadow:0 12px 24px #667eea26;transform:translateY(-8px)}.youtube-thumbnail{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:180px;justify-content:center;overflow:hidden;width:100%}.youtube-thumbnail img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.youtube-thumbnail img.error,.youtube-thumbnail img:not([src]){display:none}.youtube-card:hover .youtube-thumbnail img{transform:scale(1.05)}.youtube-content{display:flex;flex:1 1;flex-direction:column;padding:24px}.youtube-title{color:#2d3748;flex-grow:1;font-size:18px;font-weight:700;line-height:1.4;margin:0 0 12px}.youtube-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:14px;line-height:1.6;margin:0 0 16px;overflow:hidden}.youtube-feed{margin:0 auto;max-width:1400px;width:100%}.youtube-header{margin-bottom:50px;text-align:center}.youtube-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:42px;font-weight:800;letter-spacing:-.5px;margin:0 0 12px}.youtube-header .section-subtitle{color:#718096;font-size:18px;font-weight:500;margin:0}.live-stream-section{margin-bottom:50px}.live-stream-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 30px #667eea4d;overflow:hidden;padding:50px 40px;position:relative;text-align:center;transition:all .4s ease}.live-stream-card:before{animation:pulse 3s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}.live-stream-card:hover{box-shadow:0 15px 40px #667eea66;transform:translateY(-5px)}.live-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:2px solid #ffffff4d;border-radius:30px;color:#fff;display:inline-flex;font-size:14px;font-weight:700;gap:8px;letter-spacing:1px;margin-bottom:25px;padding:8px 20px;position:relative;z-index:1}.live-dot{animation:blink 1.5s infinite;background:#f44;border-radius:50%;box-shadow:0 0 10px #f44;height:10px;width:10px}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.live-content{position:relative;z-index:1}.live-icon{animation:float 3s ease-in-out infinite;font-size:64px;margin-bottom:20px}.live-content h3{color:#fff;font-size:32px;font-weight:800;margin:0 0 12px;text-shadow:0 2px 10px #0003}.live-content p{color:#fffffff2;font-size:18px;font-weight:500;margin:0 0 30px}.watch-live-btn{align-items:center;background:#fff;border:none;border-radius:50px;box-shadow:0 5px 20px #0003;color:#667eea;cursor:pointer;display:inline-flex;font-size:18px;font-weight:700;gap:12px;padding:16px 40px;text-decoration:none;transition:all .3s ease}.watch-live-btn:hover{background:#f7f9fc;box-shadow:0 8px 30px #0000004d;transform:scale(1.05)}.watch-live-btn:active{transform:scale(.98)}.play-icon{font-size:20px;transition:transform .3s ease}.watch-live-btn:hover .play-icon{transform:translateX(3px)}.video-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin-bottom:50px}.video-card{animation:fadeInUp .6s ease forwards;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer;display:flex;flex-direction:column;opacity:0;overflow:hidden;position:relative;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.video-card:hover{box-shadow:0 20px 40px #667eea33;transform:translateY(-12px)}.video-card:hover:before{opacity:1}.video-card:before{content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.video-card:before,.video-thumbnail-wrapper{background:linear-gradient(135deg,#667eea,#764ba2)}.video-thumbnail-wrapper{overflow:hidden;padding-top:56.25%;position:relative;width:100%}.video-thumbnail{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform .4s ease;width:100%}.video-card:hover .video-thumbnail{transform:scale(1.08)}.thumbnail-error{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center}.thumbnail-error:after{content:"🎥";font-size:48px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.play-overlay{align-items:center;background:#0000004d;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.video-card:hover .play-overlay{opacity:1}.play-button{align-items:center;background:#fffffff2;border-radius:50%;box-shadow:0 8px 24px #0000004d;display:flex;height:70px;justify-content:center;transform:scale(.8);transition:all .3s ease;width:70px}.video-card:hover .play-button{background:#fff;transform:scale(1)}.play-button svg{height:28px;margin-left:4px;width:28px}.play-button svg path{fill:#667eea}.video-duration{background:#000000d9;border-radius:6px;bottom:12px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;position:absolute;right:12px}.video-content{display:flex;flex:1 1;flex-direction:column;padding:20px}.video-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#2d3748;display:-webkit-box;font-size:16px;font-weight:700;line-height:1.5;margin:0 0 10px;overflow:hidden;transition:color .3s ease}.video-card:hover .video-title{color:#667eea}.video-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#718096;display:-webkit-box;flex:1 1;font-size:14px;line-height:1.6;margin:0 0 12px;overflow:hidden}.video-meta{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-top:auto;padding-top:12px}.video-date,.view-count{color:#a0aec0;font-size:13px;font-weight:500}.view-count{align-items:center;display:flex;gap:4px}.view-count:before{content:"👁️";font-size:12px}.channel-link-wrapper{margin-top:20px;text-align:center}.channel-link{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50px;box-shadow:0 4px 15px #667eea4d;color:#fff;display:inline-flex;font-size:16px;font-weight:600;gap:12px;padding:16px 32px;text-decoration:none;transition:all .3s ease}.channel-link:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-3px)}.channel-icon{font-size:20px}.channel-link .arrow{transition:transform .3s ease}.channel-link:hover .arrow{transform:translateX(5px)}.video-card.skeleton{animation:none;opacity:1;pointer-events:none}.skeleton-thumbnail{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;padding-top:56.25%;width:100%}.skeleton-content{padding:20px}.skeleton-description,.skeleton-meta,.skeleton-title{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;margin-bottom:10px}.skeleton-title{height:20px;width:80%}.skeleton-description{height:40px;width:100%}.skeleton-meta{height:16px;margin-bottom:0;width:60%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.error-message,.no-videos{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:60px 20px;text-align:center}.error-icon,.no-videos-icon{font-size:64px;margin-bottom:20px}.error-message p,.no-videos p{color:#718096;font-size:18px;margin:0}.no-live-stream{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:30px;box-shadow:0 15px 40px #667eea40;margin-bottom:40px;overflow:hidden;padding:70px 50px;position:relative;text-align:center;transition:all .5s cubic-bezier(.4,0,.2,1)}.no-live-stream:before{animation:slidePattern 20s linear infinite;background:repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff08 0,#ffffff08 20px);height:200%;left:-50%;top:-50%;width:200%}.no-live-stream:after,.no-live-stream:before{content:"";pointer-events:none;position:absolute}.no-live-stream:after{background:radial-gradient(circle at 30% 50%,#ffffff26 0,#0000 50%);inset:0}@keyframes slidePattern{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.no-live-stream:hover{box-shadow:0 20px 50px #667eea59;transform:scale(1.02)}.no-live-icon{animation:float-bounce 3s ease-in-out infinite;display:inline-block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2));font-size:80px;margin-bottom:20px;opacity:.9;position:relative;z-index:1}@keyframes float-bounce{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-10px) rotate(-5deg)}75%{transform:translateY(-5px) rotate(5deg)}}.no-live-stream p{color:#fff;font-size:28px;font-weight:800;letter-spacing:-.5px;line-height:1.2;margin:0 0 16px;position:relative;text-shadow:0 2px 10px #0003;z-index:1}.check-back-text{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50px;box-shadow:0 4px 15px #00000026;color:#fffffff2;display:inline-flex;font-size:17px;font-weight:600;gap:10px;margin-top:12px;padding:16px 32px;position:relative;transition:all .3s ease;z-index:1}.check-back-text:before{animation:tick 2s ease-in-out infinite;content:"🕐";font-size:20px}@keyframes tick{0%,to{transform:rotate(0deg)}50%{transform:rotate(1turn)}}.check-back-text:hover{background:#ffffff4d;box-shadow:0 6px 20px #0003;transform:translateY(-2px)}@media (max-width:1024px){.video-grid{gap:28px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.youtube-header h2{font-size:32px}.no-live-stream{border-radius:24px;padding:50px 35px}.no-live-icon{font-size:68px}.no-live-stream p{font-size:24px}.check-back-text{font-size:16px;padding:14px 28px}.watch-live-btn{font-size:16px;padding:14px 32px}.no-live-stream{padding:45px 30px}.no-live-icon{font-size:60px}.no-live-stream p{font-size:20px}.check-back-text{font-size:15px;padding:10px 20px}.video-grid{gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.video-content{padding:16px}.channel-link{font-size:15px;padding:14px 28px}}@media (max-width:600px){.video-grid{gap:20px;grid-template-columns:1fr}.live-content p{font-size:15px;margin-bottom:25px}.watch-live-btn{font-size:15px;padding:12px 28px}.no-live-stream{border-radius:20px;padding:45px 30px}.no-live-icon{font-size:64px}.no-live-stream p{font-size:22px}.check-back-text{font-size:15px;padding:12px 24px}.video-title{font-size:15px}.play-button{height:60px;width:60px}.play-button svg{height:24px;width:24px}}.chat-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;bottom:40px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:40px;transition:all .3s ease;width:60px;z-index:999}.chat-button.shifted{bottom:116px}.chat-button:hover{box-shadow:0 6px 20px #667eea99;transform:scale(1.1)}.chat-button.hidden{display:none}.chat-badge{align-items:center;background:#f44;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-5px;top:-5px;width:24px}.chat-widget{background:#fff;border-radius:15px;bottom:40px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;height:550px;overflow:hidden;position:fixed;right:40px;width:380px;z-index:1000}.chat-header{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px}.chat-header-content{flex:1 1}.chat-header h3{font-size:1.2rem;margin:0 0 5px}.admin-joined{align-items:center;display:flex;font-size:.85rem;gap:6px;opacity:.95}.status-dot{animation:pulse 2s infinite;background:#4ade80;border-radius:50%;height:8px;width:8px}.waiting-status{font-size:.85rem;font-style:italic;opacity:.9}.close-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:32px;justify-content:center;line-height:1;transition:background .2s ease;width:32px}.close-button:hover{background:#ffffff4d}.chat-start-form{display:flex;flex-direction:column;gap:20px;padding:30px}.chat-start-form h4{color:#333;font-size:1.1rem;margin:0 0 10px}.form-group label{color:#555;font-size:.9rem;font-weight:500}.form-group input{border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;transition:border-color .2s ease}.btn-start-chat{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px;transition:transform .2s ease}.btn-start-chat:hover{transform:translateY(-2px)}.chat-messages{background:#f8f9fa;display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1}.chat-messages::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.no-messages{align-items:center;color:#666;display:flex;height:100%;justify-content:center;padding:20px;text-align:center}.message{display:flex;margin-bottom:8px}.message-visitor{justify-content:flex-end}.message-admin{justify-content:flex-start}.message-content{display:flex;flex-direction:column;gap:4px;max-width:75%}.message-visitor .message-text{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:4px;color:#fff}.message-admin .message-text{background:#fff;border:1px solid #e0e0e0;border-bottom-left-radius:4px;color:#333}.message-time{color:#999;font-size:.75rem;padding:0 8px}.message-visitor .message-time{text-align:right}.message-admin .message-time{text-align:left}.chat-input-container{background:#fff;border-top:1px solid #e0e0e0;padding:15px}.chat-input-form{align-items:center;display:flex;gap:10px}.chat-input{border:2px solid #e0e0e0;border-radius:25px;flex:1 1;font-size:.95rem;padding:12px 16px;transition:border-color .2s ease}.chat-input:focus{border-color:#667eea;outline:none}.send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:all .2s ease;width:44px}.send-button:hover:not(:disabled){transform:scale(1.1)}.send-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.chat-widget{bottom:10px;height:calc(100vh - 100px);right:10px;width:calc(100vw - 20px)}.chat-button{bottom:20px;right:20px}.chat-button.shifted{bottom:90px}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{animation:fadeInUp .5s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:40px;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{color:#667eea;font-size:24px;font-weight:700;margin-bottom:10px}.auth-header h2{color:#2d3748;font-size:28px;font-weight:600;margin-bottom:8px}.auth-header p{color:#718096;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group input,.form-group select{height:44px;line-height:44px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{box-shadow:0 0 0 3px #667eea1a}.password-input-wrapper input{flex:1 1;padding-right:50px}.toggle-password{color:#718096;padding:4px;transition:color .2s}.toggle-password:hover{color:#667eea}.form-options{align-items:center;display:flex;font-size:14px;justify-content:space-between}.checkbox-label{gap:8px}.checkbox-label input{width:auto}.link{color:#667eea;font-weight:500;text-decoration:none;transition:color .2s}.link:hover{color:#5568d3;text-decoration:underline}.btn{display:flex;font-size:16px;height:48px;justify-content:center;line-height:24px;padding:12px 24px}.auth-card .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important}.auth-card .btn-primary:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.auth-card .btn-primary:disabled{cursor:not-allowed;opacity:.6}.auth-footer{border-top:1px solid #e2e8f0;color:#718096;font-size:14px;padding-top:10px;text-align:center}.demo-credentials{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:13px;margin-top:10px;padding:12px}.demo-credentials p{margin:4px 0}.demo-credentials strong{color:#2d3748}.home-link{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-top:15px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.home-link:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.home-icon{font-size:16px}@media (max-width:480px){.auth-card{padding:30px 20px}.auth-header h1{font-size:20px}.auth-header h2{font-size:24px}.form-options{align-items:flex-start;flex-direction:column;gap:10px}}.notification-dropdown{animation:fadeIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;margin-top:8px;max-height:500px;position:absolute;right:80px;top:100%;width:360px;z-index:1000}.notification-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:16px 20px}.notification-header h3{font-size:16px;font-weight:600;margin:0}.notification-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:18px}.notification-list{max-height:400px;overflow-y:auto}.no-notifications{color:var(--text-muted);padding:40px;text-align:center}.notification-item{border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:16px 20px;transition:background .2s}.notification-item:hover{background:var(--bg-hover)}.notification-item.unread{background:var(--bg-hover-dark)}.notification-content{flex:1 1}.notification-content p{color:var(--text-primary);font-size:14px;margin:0 0 4px}.notification-time{color:var(--text-muted);font-size:12px}.notification-actions{display:flex;gap:8px}.notification-actions button{background:none;border:none;cursor:pointer;font-size:16px;padding:4px}@media (max-width:768px){.notification-dropdown{left:10px;margin-top:0;max-width:calc(100vw - 20px);position:fixed;right:10px;top:60px;width:auto}}@media (max-width:480px){.notification-dropdown{border-radius:0;left:0;max-width:100vw;right:0;top:56px;width:100%}.notification-header{padding:12px 16px}.notification-header h3{font-size:14px}.notification-item{padding:12px 16px}.notification-content p{font-size:13px}.notification-time{font-size:11px}.notification-list{max-height:350px}}.header{background:#fff;box-shadow:0 2px 8px #0000001a;height:70px;justify-content:space-between;left:0;padding:0 24px;position:fixed;right:0;top:0;z-index:100}.header,.header-left{align-items:center;display:flex}.header-left{gap:16px}.menu-button{background:none;border:none;color:#4a5568;cursor:pointer;font-size:24px;padding:8px;transition:color .2s}.menu-button:hover{color:#667eea}.header-title{color:#2d3748;font-size:20px;font-weight:600;margin:0}.header-right{align-items:center;display:flex;gap:20px}.search-bar{position:relative}.search-bar input{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:8px 16px;transition:border-color .2s;width:250px}.search-bar input:focus{border-color:#667eea;outline:none}.notification-icon{cursor:pointer;padding:8px;position:relative;transition:transform .2s}.notification-icon:hover{transform:scale(1.1)}.notification-icon .icon{font-size:24px}.notification-icon .badge{background:#f56565;border-radius:10px;color:#fff;font-size:11px;font-weight:600;min-width:18px;padding:2px 6px;position:absolute;right:4px;text-align:center;top:4px}.user-menu{position:relative}.user-button{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:8px;transition:background .2s}.user-button:hover{background:#f7fafc}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:600;height:36px;justify-content:center;width:36px}.user-name{color:#2d3748;font-size:14px;font-weight:500}.dropdown-arrow{color:#718096;font-size:10px}.user-dropdown{animation:fadeIn .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 10px 40px #00000026;margin-top:8px;min-width:220px;padding:8px;position:absolute;right:0;top:100%;z-index:1000}.user-info{border-bottom:1px solid #e2e8f0;padding:12px}.user-name-full{color:#2d3748;font-weight:600;margin:0 0 4px}.user-email{color:#718096;font-size:13px;margin:0}.user-dropdown hr{border:none;border-top:1px solid #e2e8f0;margin:8px 0}.user-dropdown button{background:none;border:none;border-radius:6px;color:#4a5568;cursor:pointer;font-size:14px;padding:10px 12px;text-align:left;transition:background .2s;width:100%}.user-dropdown button:hover{background:#f7fafc}.user-dropdown button.logout-btn{color:#e53e3e}.user-dropdown button.logout-btn:hover{background:#fff5f5}@media (max-width:768px){.header{height:60px;padding:0 16px}.header-title{font-size:16px}.dropdown-arrow,.search-bar,.user-name{display:none}}.sidebar{background:#fff;bottom:0;box-shadow:2px 0 8px #0000001a;left:0;overflow-x:hidden;position:fixed;top:70px;transition:width .3s ease;z-index:90}.sidebar.open{width:250px}.sidebar.closed{width:70px}.sidebar-header{border-bottom:1px solid var(--border-light);flex-direction:column;padding:20px}.sidebar-header,.sidebar-logos{align-items:center;display:flex}.sidebar-logos{gap:12px;margin-bottom:10px}.sidebar-logo{height:auto}.sidebar-logo.ag-logo{width:40px}.sidebar-logo.church-logo,.sidebar.open .sidebar-logo.ag-logo{width:50px}.sidebar.open .sidebar-logo.church-logo{filter:invert(1);width:80px}.sidebar-title{color:var(--color-gray-900);font-size:14px;font-weight:600;margin:0;text-align:center;white-space:nowrap}.sidebar-nav{display:flex;flex-direction:column;padding:20px 0}.sidebar-item{align-items:center;background:none;border:none;color:var(--text-tertiary);cursor:pointer;display:flex;font-family:inherit;font-size:inherit;gap:16px;padding:16px 24px;text-align:left;text-decoration:none;transition:all .2s;width:100%}.sidebar-action-item,.sidebar-item{border-left:4px solid #0000}.sidebar-item:hover{background:var(--bg-hover);color:var(--color-primary)}.sidebar-action-item.active,.sidebar-item.active{background:var(--bg-hover-dark);border-left-color:var(--color-primary);color:var(--color-primary);font-weight:600}.sidebar-icon{display:flex;font-size:24px;justify-content:center;min-width:24px}.sidebar-label{font-size:15px;white-space:nowrap}.sidebar.closed .sidebar-label{display:none}.sidebar.closed .sidebar-item{justify-content:center;padding:16px}@media (max-width:768px){.sidebar{top:60px;transform:translateX(-100%);transition:transform .3s ease}.sidebar.open{transform:translateX(0);width:250px}.sidebar-overlay{animation:sidebarFadeIn .25s ease;background:#00000073;bottom:0;display:block;left:0;position:fixed;right:0;top:60px;z-index:85}}@media (max-width:768px){@keyframes sidebarFadeIn{0%{opacity:0}to{opacity:1}}}.birthday-modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.birthday-modal-content{animation:slideUp .4s cubic-bezier(.34,1.56,.64,1);max-height:90vh;max-width:400px;overflow-y:auto;position:relative;width:100%}.birthday-close-btn{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 4px 12px #0000004d;color:#2d3748;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;position:absolute;right:-12px;top:-12px;transition:all .2s;width:40px;z-index:10001}.birthday-close-btn:hover{background:#667eea;color:#fff;transform:rotate(90deg) scale(1.1)}.birthday-card{background:#fff;border:4px solid #d4af37;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;margin:0 auto;max-width:500px;outline:1px solid gold;outline-offset:-2px;overflow:hidden;padding:0;position:relative}.birthday-card-photo-section{background:linear-gradient(135deg,#ffffff26,#ffffff0d);border:12px solid #fff;border-bottom:none;box-shadow:inset 0 0 0 2px #d4af37,inset 0 0 0 4px #fff,0 0 30px #d4af374d;height:240px;overflow:hidden;padding:8px;position:relative;width:100%}.birthday-card-main-photo{display:block;filter:grayscale(100%);height:auto;margin:auto;max-height:100%;max-width:100%;mix-blend-mode:multiply;object-fit:contain;object-position:center;opacity:.75;width:auto}.birthday-card-stars{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.star{animation:twinkle 3s ease-in-out infinite;color:#d4af37;opacity:.7;position:absolute;text-shadow:0 0 10px #d4af37cc}.star-1{animation-delay:0s;font-size:36px;left:5%;top:3%}.star-2{animation-delay:.5s;font-size:18px;left:20%;top:8%}.star-3{animation-delay:1s;font-size:24px;left:50%;top:6%}.star-4{animation-delay:1.5s;font-size:28px;right:18%;top:12%}.star-5{animation-delay:2s;font-size:40px;right:4%;top:3%}.star-6{animation-delay:.3s;font-size:16px;left:8%;top:30%}.star-7{animation-delay:.8s;font-size:22px;right:6%;top:40%}.star-8{animation-delay:1.2s;bottom:30%;font-size:26px;left:6%}.star-9{animation-delay:1.7s;bottom:18%;font-size:32px;right:10%}.star-10{animation-delay:2.2s;bottom:5%;font-size:20px;left:35%}.star-11{animation-delay:.7s;font-size:14px;left:3%;top:55%}.star-12{animation-delay:1.4s;font-size:24px;right:4%;top:48%}.birthday-card-content{background:#fff;padding:24px 20px;text-align:center}.birthday-card-title{color:#d4af37;font-family:Alex Brush,Great Vibes,cursive;font-size:48px;font-weight:400;letter-spacing:2px;line-height:1.1;margin:0 0 12px;text-shadow:3px 3px 6px #d4af3766,0 0 20px #d4af3733}.birthday-card:before{animation:rotateAndPulse 10s linear infinite;content:"🎉";font-size:120px;left:50%;margin-left:-60px;margin-top:-60px;opacity:.15;pointer-events:none;position:absolute;top:50%;z-index:1}.birthday-card-header{margin-bottom:24px;position:relative;text-align:center;z-index:2}.birthday-card-icon{animation:bounce 2s ease-in-out infinite;font-size:64px;margin-bottom:12px}.birthday-card-header h2{color:#fff;font-family:Great Vibes,cursive;font-size:42px;font-weight:800;letter-spacing:1px;margin:0;text-shadow:2px 2px 8px #0000004d}.birthday-card-body{background:#fffffffa;border-radius:16px;padding:28px;position:relative;z-index:2}.birthday-card-photo-container{display:flex;justify-content:center;margin-bottom:20px;margin-top:-70px}.birthday-card-photo-wrapper{animation:photoGlow 3s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffc700,gold);border:3px solid #fff;border-radius:12px;box-shadow:0 8px 24px #ffd70080,0 4px 12px #00000026;height:140px;padding:6px;position:relative;width:140px}@keyframes photoGlow{0%,to{box-shadow:0 8px 24px #ffd70080,0 4px 12px #00000026}50%{box-shadow:0 10px 32px #ffd700b3,0 6px 16px #0003}}.birthday-card-photo{border:2px solid #ffffff80;border-radius:8px;box-shadow:inset 0 2px 8px #0000001a;display:block;height:100%;object-fit:cover;object-position:center;width:100%}.birthday-card-name{border-bottom:none;color:#b8956a;font-size:28px;font-weight:700;letter-spacing:5px;padding-bottom:0;text-shadow:2px 2px 4px #b8956a33;text-transform:uppercase}.birthday-card-message,.birthday-card-name{font-family:Poppins,sans-serif;margin:0 0 20px;text-align:center}.birthday-card-message{color:#666;font-size:14px;font-style:italic;font-weight:400;line-height:1.8}.birthday-card-message p{font-size:15px;margin:0 0 16px}.birthday-card-blessing{color:#48bb78;font-size:16px;font-weight:600;margin-top:20px!important;text-align:center}.birthday-card-footer{background:#0000;border-radius:0;border-top:none;box-shadow:none;font-family:Poppins,sans-serif;margin-top:8px;padding-top:0;text-align:center}.birthday-card-footer p{color:#999;font-family:Poppins,sans-serif;font-size:13px;font-weight:400;margin:4px 0}.birthday-card-footer .birthday-card-church-name{color:#b8956a!important;font-family:Allura,cursive!important;font-size:18px!important;font-weight:700!important;letter-spacing:1px;margin-top:4px!important}.birthday-card-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px;width:100%}.birthday-download-image-btn,.birthday-share-image-btn{align-items:center;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s ease;width:100%}.birthday-download-image-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66}.birthday-download-image-btn:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.birthday-share-image-btn{background:linear-gradient(135deg,#25d366,#128c7e);box-shadow:0 4px 12px #25d36666}.birthday-share-image-btn:hover{box-shadow:0 6px 20px #25d36699;transform:translateY(-2px)}.birthday-download-image-btn:active,.birthday-share-image-btn:active{transform:translateY(0)}.birthday-download-image-btn span,.birthday-share-image-btn span{font-size:20px}.birthday-btn-text-desktop{display:inline}.whatsapp-icon{animation:shake 1s ease-in-out infinite;font-size:24px}@media (min-width:768px){.birthday-card{padding:40px}.birthday-card-body{padding:28px}.birthday-card-header h2{font-size:32px}.birthday-card-icon{font-size:64px}}@media (max-width:600px){.birthday-modal-content{width:95%}.birthday-card{padding:24px 20px}.birthday-card-header h2{font-size:36px}.birthday-card-name{font-size:30px}.birthday-card-message p{font-size:14px}.birthday-share-image-btn{font-size:15px;padding:14px}.birthday-btn-text-desktop{display:none}.birthday-btn-text-mobile{display:inline}}.anniversary-modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.anniversary-modal-content{animation:slideUp .4s cubic-bezier(.34,1.56,.64,1);max-height:90vh;max-width:400px;overflow-y:auto;position:relative;width:100%}.anniversary-close-btn{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 4px 12px #0000004d;color:#2d3748;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;position:absolute;right:-12px;top:-12px;transition:all .2s;width:40px;z-index:10001}.anniversary-close-btn:hover{background:#d4af37;color:#fff;transform:rotate(90deg) scale(1.1)}.anniversary-card{background:#fff;border:4px solid #d4af37;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;margin:0 auto;max-width:500px;outline:1px solid gold;outline-offset:-2px;overflow:hidden;padding:0;position:relative}.anniversary-card-photo-section{background:linear-gradient(135deg,#ffffff26,#ffffff0d);border:12px solid #fff;border-bottom:none;box-shadow:inset 0 0 0 2px #d4af37,inset 0 0 0 4px #fff,0 0 30px #d4af374d;height:240px;overflow:hidden;padding:8px;position:relative;width:100%}.anniversary-card-main-photo{display:block;filter:grayscale(100%);height:auto;margin:auto;max-height:100%;max-width:100%;mix-blend-mode:multiply;object-fit:contain;object-position:center;opacity:.75;width:auto}.anniversary-card-stars{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.anniversary-card-stars .star{animation:twinkle 3s ease-in-out infinite;color:#d4af37;opacity:.7;position:absolute;text-shadow:0 0 10px #d4af37cc}@keyframes twinkle{0%,to{opacity:.7;transform:scale(1)}50%{opacity:.3;transform:scale(.8)}}.anniversary-card-stars .star-1{animation-delay:0s;font-size:36px;left:5%;top:3%}.anniversary-card-stars .star-2{animation-delay:.5s;font-size:18px;left:20%;top:8%}.anniversary-card-stars .star-3{animation-delay:1s;font-size:24px;left:50%;top:6%}.anniversary-card-stars .star-4{animation-delay:1.5s;font-size:28px;right:18%;top:12%}.anniversary-card-stars .star-5{animation-delay:2s;font-size:40px;right:4%;top:3%}.anniversary-card-stars .star-6{animation-delay:.3s;font-size:16px;left:8%;top:30%}.anniversary-card-stars .star-7{animation-delay:.8s;font-size:22px;right:6%;top:40%}.anniversary-card-stars .star-8{animation-delay:1.2s;bottom:30%;font-size:26px;left:6%}.anniversary-card-stars .star-9{animation-delay:1.7s;bottom:18%;font-size:32px;right:10%}.anniversary-card-stars .star-10{animation-delay:2.2s;bottom:5%;font-size:20px;left:35%}.anniversary-card-stars .star-11{animation-delay:.7s;font-size:14px;left:3%;top:55%}.anniversary-card-stars .star-12{animation-delay:1.4s;font-size:24px;right:4%;top:48%}.anniversary-card-content{background:#fff;padding:24px 20px;text-align:center}.anniversary-card-title{color:#d4af37;font-family:Alex Brush,Great Vibes,cursive;font-size:48px;font-weight:400;letter-spacing:2px;line-height:1.1;margin:0 0 12px;text-shadow:3px 3px 6px #d4af3766,0 0 20px #d4af3733}.anniversary-card:before{animation:rotateAndPulse 10s linear infinite;content:"❤️";font-size:120px;left:50%;margin-left:-60px;margin-top:-60px;opacity:.15;pointer-events:none;position:absolute;top:50%;z-index:1}@keyframes rotateAndPulse{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.1)}to{transform:rotate(1turn) scale(1)}}.anniversary-card .anniversary-card-header{margin-bottom:24px;position:relative;text-align:center;z-index:2}.anniversary-card .anniversary-card-icon{animation:heartbeat 1.5s ease-in-out infinite;font-size:64px;margin-bottom:12px}@keyframes heartbeat{0%,to{transform:scale(1)}14%,28%{transform:scale(1.15)}42%{transform:scale(1)}}.anniversary-card .anniversary-card-header h2{color:#fff;font-family:Great Vibes,cursive;font-size:42px;font-weight:800;letter-spacing:1px;margin:0;text-shadow:2px 2px 8px #0000004d}.anniversary-years-badge{background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#b8956a;display:inline-block;font-family:Poppins,sans-serif;font-size:18px;font-weight:700;margin-top:12px;padding:8px 20px}.anniversary-card .anniversary-card-body{background:#fffffffa;border-radius:16px;box-shadow:0 8px 24px #0000001f,0 2px 6px #00000014;margin-bottom:24px;padding:28px;position:2}.anniversary-card-photo-container{display:flex;justify-content:center;margin-bottom:20px;margin-top:-70px}.anniversary-card-photo-wrapper{animation:anniversaryPhotoGlow 3s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffc700,gold);border:3px solid #fff;border-radius:12px;box-shadow:0 8px 24px #ffd70080,0 4px 12px #00000026;height:140px;padding:6px;position:relative;width:140px}@keyframes anniversaryPhotoGlow{0%,to{box-shadow:0 8px 24px #f5576c80,0 4px 12px #00000026}50%{box-shadow:0 10px 32px #f5576cb3,0 6px 16px #0003}}.anniversary-card-photo{border:2px solid #ffffff80;border-radius:8px;box-shadow:inset 0 2px 8px #0000001a;display:block;height:100%;object-fit:cover;object-position:center;width:100%}.anniversary-card-name{border-bottom:none;color:#b8956a;font-size:28px;font-weight:700;letter-spacing:5px;padding-bottom:0;text-shadow:2px 2px 4px #b8956a33;text-transform:uppercase}.anniversary-card-message,.anniversary-card-name{font-family:Poppins,sans-serif;margin:0 0 20px;text-align:center}.anniversary-card-message{color:#666;font-size:14px;font-style:italic;font-weight:400;line-height:1.8}.anniversary-card .anniversary-card-message p{font-size:15px;margin:0 0 16px}.anniversary-card .anniversary-card-blessing{color:#b8956a;font-size:16px;font-weight:600;margin-top:20px!important;text-align:center}.anniversary-card-footer{border-top:none;margin-top:8px;padding-top:0;text-align:center}.anniversary-card-footer p{color:#999;font-family:Poppins,sans-serif;font-size:13px;font-weight:400;margin:4px 0}.anniversary-card-church-name{color:#b8956a!important;font-family:Allura,cursive!important;font-size:18px!important;font-weight:700;letter-spacing:1px}.anniversary-card .anniversary-card-footer p{color:#1a202c;font-size:14px;font-weight:500;margin:4px 0}.anniversary-card .anniversary-card-footer .card-church-name{color:#1a202c!important;font-size:16px!important;font-weight:800!important;margin-top:8px!important}.anniversary-card-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px;width:100%}.anniversary-download-image-btn,.anniversary-share-image-btn{align-items:center;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s ease;width:100%}.anniversary-download-image-btn{background:linear-gradient(135deg,gold,#ffc700);box-shadow:0 4px 12px #ffd70066}.anniversary-download-image-btn:hover{box-shadow:0 6px 20px #ffd70099;transform:translateY(-2px)}.anniversary-share-image-btn{background:linear-gradient(135deg,#25d366,#128c7e);box-shadow:0 4px 12px #25d36666}.anniversary-share-image-btn:hover{box-shadow:0 6px 20px #25d36699;transform:translateY(-2px)}.anniversary-download-image-btn:active,.anniversary-share-image-btn:active{transform:translateY(0)}.anniversary-card .anniversary-download-image-btn span,.anniversary-card .anniversary-share-image-btn span{font-size:20px}.anniversary-card .anniversary-btn-text-desktop{display:inline}.anniversary-card .whatsapp-icon{animation:shake 1s ease-in-out infinite;font-size:24px}@keyframes shake{0%,to{transform:rotate(0deg)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@media (min-width:768px){.anniversary-card{padding:40px}.anniversary-card .anniversary-card-body{padding:28px}.anniversary-card .anniversary-card-header h2{font-size:32px}.anniversary-card .anniversary-card-icon{font-size:64px}}@media (max-width:600px){.anniversary-modal-content{width:95%}.anniversary-card{padding:24px 20px}.anniversary-card .anniversary-card-header h2{font-size:36px}.anniversary-years-badge{font-size:16px;padding:6px 16px}.anniversary-card .anniversary-card-name{font-size:30px}.anniversary-card .anniversary-card-message p{font-size:14px}.anniversary-card .anniversary-card-actions{gap:10px;grid-template-columns:1fr}.anniversary-card .anniversary-download-image-btn,.anniversary-card .anniversary-share-image-btn{font-size:15px;padding:14px}.anniversary-card .anniversary-btn-text-desktop{display:none}.anniversary-card .anniversary-btn-text-mobile{display:inline}}.celebrations-modal-overlay{align-items:center;animation:overlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.celebrations-page{animation:modalSlideIn .4s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);border-radius:24px;box-shadow:0 25px 100px #00000080;height:95vh;overflow:hidden;width:95vw}.celebrations-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:48px;z-index:10}.celebrations-close-btn:hover{background:#ffffff4d;box-shadow:0 4px 20px #0000004d;transform:rotate(90deg) scale(1.1)}.celebrations-close-btn:active{transform:rotate(90deg) scale(.95)}.celebrations-page:before{animation:backgroundShift 20s ease-in-out infinite;background:radial-gradient(circle at 20% 50%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 40% 20%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0}.toggle-next-week-btn{position:absolute;right:80px;top:24px}.celebrations-content{max-height:calc(95vh - 200px);overflow-y:auto}.celebrations-content::-webkit-scrollbar{width:10px}.celebrations-content::-webkit-scrollbar-track{background:#ffffff1a;border-radius:10px}.celebrations-content::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.celebrations-content::-webkit-scrollbar-thumb:hover{background:#ffffff80}.celebrations-grid{grid-gap:24px;gap:24px}.celebration-card{animation:cardPopIn .6s ease-out backwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid #ffffff4d;box-shadow:0 10px 40px #00000026;padding:28px 24px}.celebrations-grid .celebration-card:nth-child(2){animation-delay:.15s}.celebrations-grid .celebration-card:nth-child(3){animation-delay:.2s}.celebrations-grid .celebration-card:nth-child(4){animation-delay:.25s}.celebrations-grid .celebration-card:nth-child(5){animation-delay:.3s}.celebrations-grid .celebration-card:nth-child(6){animation-delay:.35s}.celebration-card:hover{border-color:#ffffff80;box-shadow:0 20px 60px #00000040;transform:translateY(-12px) scale(1.05)}.celebration-display{height:100px;margin:0 auto 16px;width:100px}.celebration-icon{filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}.years-number{font-size:48px;text-shadow:0 3px 10px #0000004d}.years-text{color:#fffffff2;font-size:14px;font-weight:700;letter-spacing:1px;margin-top:4px}.celebration-info{flex-grow:1;margin-bottom:16px}.celebration-info h4{color:#fff;font-size:20px;text-shadow:0 2px 8px #00000026}.celebration-type{color:#ffffffe6;font-size:14px}.celebration-date{background:#0000001a;color:#fffffff2;display:inline-block;font-size:16px;padding:4px 12px}.celebration-wish{animation:pulse 2s ease-in-out infinite;background:#00000026;border:1px solid #fff3;border-radius:20px;color:#fff;font-size:15px;font-weight:700;padding:10px 20px}.no-celebrations{animation:fadeIn .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:24px;box-shadow:0 10px 40px #00000026}.no-celebrations-icon{margin-bottom:20px}.no-celebrations h2{color:#2d3748}.no-celebrations p{color:#718096}.celebrations-page.loading{height:95vh;max-width:1600px;width:95vw}.loading-spinner{animation:spin 1s linear infinite;text-shadow:0 2px 10px #0000004d}@media (max-width:768px){.celebrations-header{padding:40px 20px 30px}.celebrations-title{font-size:36px}.celebrations-subtitle{font-size:16px}.celebrations-week-range{font-size:14px;padding:6px 16px}.toggle-next-week-btn{display:block;margin-left:auto;margin-right:auto;margin-top:16px;max-width:200px;position:static;width:100%}.celebrations-content{padding:0 20px 40px}.celebrations-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.category-title{font-size:24px;margin-bottom:20px}.celebration-card{padding:24px 20px}}@media (max-width:480px){.celebrations-title{font-size:28px}.toggle-next-week-btn{font-size:14px;max-width:100%;padding:10px 20px}.celebrations-grid{grid-template-columns:1fr}.category-title{font-size:20px}}.shareable-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.shareable-modal{animation:modalSlideUp .4s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 100px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90vw}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.shareable-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 30px}.shareable-header h2{color:#2d3748;font-size:24px;font-weight:700;margin:0}.close-btn{border-radius:50%;font-size:28px;height:40px;transition:all .3s ease;width:40px}.close-btn:hover{background:#f7fafc;transform:rotate(90deg)}.shareable-preview-container{background:#f7fafc;flex:1 1;overflow-y:auto;padding:30px}.shareable-preview{background:#0284c7;border-radius:16px;box-shadow:0 10px 40px #0003;overflow:hidden}.shareable-content{color:#fff;padding:25px 20px}.shareable-header-section{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:15px}.shareable-header-top{flex-shrink:0}.cag-logo-shareable{display:block;filter:brightness(0) invert(1) drop-shadow(0 2px 8px rgba(0,0,0,.3));-webkit-filter:brightness(0) invert(1) drop-shadow(0 2px 8px #0000004d);height:auto;width:120px}.cag-main-title{word-wrap:break-word;color:#fbbf24;font-size:16px;margin:0;text-shadow:0 4px 20px #0006}.cag-main-title,.events-main-heading{font-weight:900;letter-spacing:1.5px;line-height:1.2}.events-main-heading{color:#fff;font-size:18px;margin:4px 0 6px;text-shadow:0 3px 15px #0000004d}.shareable-title-section{flex:1 1;text-align:right}.week-date-range{color:#fff!important;display:block!important;font-size:14px!important;font-weight:800!important;letter-spacing:1px;line-height:1.4;margin:0;opacity:1!important;text-shadow:0 3px 15px #0006;text-transform:uppercase;visibility:visible!important}.shareable-events-list{display:flex;flex-direction:column;gap:15px;min-height:50px}.no-events-message-shareable{background:#fffffff2;border-radius:16px;box-shadow:0 8px 30px #00000026;padding:40px 20px;text-align:center}.no-events-message-shareable p{color:#0284c7;font-size:16px;font-weight:600;margin:0}.shareable-day-section{position:relative}.day-section-wrapper{align-items:stretch;border-radius:0 50px 50px 0;box-shadow:0 4px 20px #0003;display:flex;min-height:100px;overflow:hidden;padding-left:15px;position:relative}.day-date-badge{align-items:center;background:#fff!important;border-radius:50%;box-shadow:0 4px 15px #0003;display:flex!important;flex-direction:column;flex-shrink:0;height:90px;justify-content:center;margin:auto 0 auto -10px;padding:10px;position:relative;width:90px;z-index:2}.day-number{color:#10b981!important;font-size:32px!important;font-weight:900!important;line-height:1!important;margin:0!important}.day-name,.day-number{display:block!important;opacity:1!important;visibility:visible!important}.day-name{color:#1f2937!important;font-size:12px!important;font-weight:800!important;letter-spacing:.5px;margin-top:4px!important}.day-events-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;flex:1 1;gap:8px;justify-content:center;padding:15px 25px 15px 35px}.day-events-content,.event-line{display:flex;flex-direction:column}.event-line{gap:2px}.event-title-main{font-size:16px;font-weight:800;letter-spacing:.5px;line-height:1.3;text-shadow:0 2px 8px #0003;text-transform:uppercase}.event-time-main{font-size:12px;font-weight:700;letter-spacing:.3px;text-shadow:0 1px 4px #0003}.event-primary .event-title-main{color:#fbbf24}.event-primary .event-time-main{color:#fff}.event-secondary .event-title-main{color:#84cc16}.event-secondary .event-time-main{color:#fff}.event-tertiary .event-title-main{color:#06b6d4}.event-tertiary .event-time-main{color:#fff}.contact-card-shareable{background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:12px;box-shadow:0 4px 20px #0003;margin-top:20px;overflow:hidden;padding:15px 20px;position:relative;text-align:center}.contact-badge{background:#fff;border-radius:20px;box-shadow:0 2px 8px #00000026;color:#16a34a;display:inline-block;font-size:12px;font-weight:800;letter-spacing:.5px;margin-bottom:8px;padding:6px 16px}.contact-card-shareable p{color:#fff;font-size:16px;font-weight:800;letter-spacing:.5px;line-height:1.5;margin:0;text-shadow:0 2px 8px #0000004d}.shareable-footer{background:#fff;margin-top:20px;padding:15px}.footer-content{text-align:center}.contact-info{width:100%}.contact-item{color:#333;font-size:14px;font-weight:500;margin:0;padding:10px}.shareable-actions{background:#f7fafc;border-radius:0 0 20px 20px;border-top:2px solid #e5e7eb;display:flex;gap:15px;padding:20px 30px}.shareable-actions button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .3s ease}.btn-download{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 15px #3498db4d}.btn-download:hover{box-shadow:0 6px 20px #3498db66}.btn-share{background:linear-gradient(135deg,#25d366,#128c7e);box-shadow:0 4px 15px #25d3664d;color:#fff}.btn-share:hover{box-shadow:0 6px 20px #25d36666;transform:translateY(-2px)}@media (max-width:768px){.shareable-modal{max-height:95vh;width:95vw}.shareable-header{padding:15px 20px}.shareable-header h2{font-size:20px}.shareable-preview-container{padding:15px}.shareable-content{padding:25px 20px}.cag-logo-shareable{width:120px}.cag-main-title{font-size:17px;letter-spacing:1.5px}.events-main-heading{font-size:26px;letter-spacing:1.5px}.week-date-range{font-size:20px;letter-spacing:1.5px}.shareable-events-list{gap:12px}.day-date-badge{height:70px;padding:8px;width:70px}.day-number{font-size:28px!important}.day-name{font-size:11px!important}.day-events-content{gap:6px;padding:12px 20px 12px 25px}.event-title-main{font-size:15px}.event-time-main{font-size:13px}.contact-card-shareable p{font-size:14px}.shareable-actions{flex-direction:column;gap:10px;padding:15px 20px}}@media (max-width:480px){.shareable-content{padding:20px 15px}.cag-logo-shareable{width:120px}.cag-main-title{font-size:17px;letter-spacing:1.5px}.events-main-heading{font-size:20px;letter-spacing:1px}.week-date-range{font-size:16px;letter-spacing:1px}.shareable-events-list{gap:10px}.day-section-wrapper{min-height:80px}.day-date-badge{height:60px;margin-left:-8px;padding:6px;width:60px}.day-number{font-size:24px!important}.day-name{font-size:9px!important}.day-events-content{gap:5px;padding:10px 15px 10px 20px}.event-title-main{font-size:13px}.event-time-main{font-size:11px}.contact-badge{font-size:10px;padding:5px 12px}.contact-card-shareable{margin-top:15px;padding:12px 15px}.contact-card-shareable p{font-size:12px}}.weekly-events-modal-overlay{align-items:center;animation:overlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.weekly-events-page{animation:modalSlideIn .4s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);border-radius:24px;box-shadow:0 25px 100px #00000080;height:95vh;max-width:1600px;overflow:hidden;position:relative;width:95vw}.modal-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:48px;z-index:10}.modal-close-btn:hover{background:#ffffff4d;box-shadow:0 4px 20px #0000004d;transform:rotate(90deg) scale(1.1)}.modal-close-btn:active{transform:rotate(90deg) scale(.95)}.modal-share-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:48px;justify-content:center;position:absolute;right:80px;top:20px;transition:all .3s ease;width:48px;z-index:10}.modal-share-btn:hover{background:#ffffff4d;box-shadow:0 4px 20px #0000004d;transform:scale(1.1)}.modal-share-btn:active{transform:scale(.95)}.weekly-events-page:before{animation:backgroundShift 20s ease-in-out infinite;background:radial-gradient(circle at 20% 50%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 40% 20%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0}.weekly-events-container{height:100%;margin:0 auto;max-width:1400px;overflow:hidden;padding:0 40px 40px;position:relative;z-index:1}.weekly-events-header{padding:60px 40px 40px;position:relative;text-align:center;z-index:1}.header-content{animation:fadeInDown .8s ease-out;margin:0 auto;max-width:800px}.weekly-events-header .header-content h1{color:#fff!important;font-size:48px;font-weight:800;letter-spacing:-.5px;margin:0 0 12px;text-shadow:0 4px 20px #0000004d}.weekly-events-header .week-range{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;color:#ffffffd9!important;display:inline-block;font-size:16px;font-weight:600;margin:0;padding:8px 20px;text-shadow:0 2px 10px #0003}.header-decoration{display:flex;gap:12px;justify-content:center;margin-top:20px}.decoration-circle{animation:pulse 2s ease-in-out infinite;background:#fff;border-radius:50%;height:12px;opacity:.6;width:12px}.decoration-circle:nth-child(2){animation-delay:.3s}.decoration-circle:nth-child(3){animation-delay:.6s}.weekly-events-content{animation:slideInUp .6s ease-out;margin:0 auto;max-height:calc(95vh - 200px);max-width:1400px;overflow-y:auto;padding:0 40px 40px;position:relative;z-index:1}.loading-spinner{padding:100px 20px;text-align:center}.spinner{border:4px solid #ffffff4d;border-top-color:#fff;height:60px;width:60px}.loading-spinner p{font-size:18px;font-weight:500;text-shadow:0 2px 10px #0003}.no-events-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #ffffff4d;border-radius:24px;box-shadow:0 20px 60px #0003;margin:0 auto;max-width:600px;padding:80px 40px;text-align:center}.no-events-icon{filter:drop-shadow(0 4px 12px rgba(0,0,0,.15));margin-bottom:20px}.no-events-message h3{color:#2d3748;font-size:28px;font-weight:700;margin:0 0 12px}.no-events-message p{color:#718096;font-size:16px;line-height:1.6}.day-section{animation:slideInUp .6s ease-out;margin-bottom:48px}.day-section-title{align-items:center;color:#fff;display:flex;font-size:28px;font-weight:700;gap:12px;margin:0 0 24px;text-shadow:0 2px 10px #0003}.days-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.day-card{animation:cardPopIn .6s ease-out backwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-radius:25px;box-shadow:0 15px 40px #00000026;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.day-card:first-child{animation-delay:.1s}.day-card:nth-child(2){animation-delay:.2s}.day-card:nth-child(3){animation-delay:.3s}.day-card:nth-child(4){animation-delay:.4s}.day-card:nth-child(5){animation-delay:.5s}.day-card:nth-child(6){animation-delay:.6s}.day-card:nth-child(7){animation-delay:.7s}.day-card:hover{box-shadow:0 20px 50px #0003;transform:translateY(-5px)}.day-card.today{border:3px solid gold;box-shadow:0 15px 40px #ffd7004d}.day-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:space-between;padding:20px}.day-card.today .day-header{background:linear-gradient(135deg,gold,#ffb700)}.day-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:15px;display:flex;flex-direction:column;padding:12px 20px}.day-name{color:#fff;font-size:14px;font-weight:700;letter-spacing:1px}.day-number{color:#fff;font-size:32px;font-weight:800;line-height:1;margin-top:4px}.today-badge{background:#fff;border-radius:20px;box-shadow:0 4px 10px #00000026;color:gold;font-size:13px;padding:8px 16px}.day-title{border-bottom:2px solid #f0f0f0;padding:20px 25px 15px}.day-title h3{color:#2d3748;font-size:18px;font-weight:700;margin:0}.day-events{display:flex;flex-direction:column;gap:15px;max-height:600px;overflow-y:auto;padding:20px}.day-events::-webkit-scrollbar{width:10px}.day-events::-webkit-scrollbar-track{background:#ffffff1a;border-radius:10px}.day-events::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.day-events::-webkit-scrollbar-thumb:hover{background:#ffffff80}.events-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.week-event-card{background:linear-gradient(135deg,#fffffffa,#f9fafbfa 50%,#f3f4f6fa);border-left:4px solid #8b5cf6;border-radius:15px;box-shadow:0 4px 15px #8b5cf614,inset 0 1px 0 #fff,0 1px 3px #0000000d;cursor:pointer;margin:0;overflow:hidden;padding:18px;position:relative;transition:all .3s ease}.week-event-card:before{background:linear-gradient(135deg,#8b5cf608,#a855f708);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.week-event-card:hover{background:linear-gradient(135deg,#fff,#f9fafb 50%,#f3f4f6);border-left-color:#a78bfa;box-shadow:0 12px 35px #8b5cf626,inset 0 1px 0 #fff,0 0 0 1px #8b5cf61a;transform:translateX(8px) translateY(-2px)}.week-event-card:hover:before{opacity:1}.event-time{align-items:center;display:flex;gap:8px;margin-bottom:12px}.time-icon{font-size:16px}.time-text{color:#8b5cf6;font-size:14px;font-weight:600}.event-details h4{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 8px}.event-location{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:6px;margin-top:8px}.location-icon{font-size:14px}.category-badge.youth{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}@media (max-width:768px){.modal-close-btn{font-size:20px;height:42px;right:15px;top:15px;width:42px}.weekly-events-header{padding:40px 20px 30px}.weekly-events-header .header-content h1{font-size:36px}.weekly-events-header .week-range{font-size:14px;padding:6px 16px}.weekly-events-content{padding:0 20px 30px}.day-section-title{font-size:24px}.days-grid{gap:20px;grid-template-columns:1fr}.day-events{max-height:500px}}@media (max-width:480px){.weekly-events-container{padding:0 15px 20px}.weekly-events-header{padding:30px 15px 20px}.weekly-events-header .header-content h1{font-size:28px}.weekly-events-header .week-range{font-size:13px;padding:5px 14px}.weekly-events-content{padding:0 15px 20px}.day-section-title{font-size:20px}.day-card{border-radius:20px}.event-details h4{font-size:16px}.modal-share-btn{bottom:20px;right:20px;top:auto}}.layout{background:var(--bg-page);display:flex;flex-direction:column;min-height:100vh}.layout-content{display:flex;flex:1 1;padding-top:70px}.main-content{flex:1 1;overflow-y:auto;padding:24px;transition:margin-left .3s ease}.main-content.sidebar-open{margin-left:250px}.main-content.sidebar-closed{margin-left:70px}@media (max-width:768px){.main-content.sidebar-closed,.main-content.sidebar-open{margin-left:0}.layout-content{padding-top:60px;position:relative}.main-content{padding:16px}}.stats-card{background:#fff;border-radius:12px;border-top:4px solid;box-shadow:0 2px 8px #0000001a;padding:24px;transition:transform .2s,box-shadow .2s}.stats-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.stats-card-content{align-items:center;display:flex;justify-content:space-between}.stats-card-text h3{color:#718096;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stats-value{color:#2d3748;font-size:32px;font-weight:700;margin:0 0 4px}.stats-subtitle{color:#a0aec0;font-size:13px;margin:0}.stats-card-icon{align-items:center;border-radius:12px;display:flex;font-size:28px;height:60px;justify-content:center;opacity:.9;width:60px}@media (max-width:480px){.stats-card{padding:20px}.stats-value{font-size:28px}.stats-card-icon{font-size:24px;height:50px;width:50px}}.recent-activity{max-height:400px;overflow-y:auto}.no-activity{color:#a0aec0;padding:40px 0;text-align:center}.activity-list{list-style:none;margin:0;padding:0}.activity-item{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:16px;padding:16px;transition:background .2s}.activity-item:last-child{border-bottom:none}.activity-icon,.activity-item:hover{background:#f7fafc}.activity-icon{align-items:center;border-radius:10px;display:flex;font-size:24px;height:40px;justify-content:center;min-width:40px}.activity-content{flex:1 1}.activity-title{color:#2d3748;font-size:14px;font-weight:600;margin:0 0 4px}.activity-subtitle{color:#718096;font-size:13px;margin:0}.activity-date{color:#a0aec0;font-size:12px;font-weight:500}.recent-activity::-webkit-scrollbar{width:6px}.recent-activity::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.recent-activity::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:10px}.recent-activity::-webkit-scrollbar-thumb:hover{background:#a0aec0}.upcoming-events{display:flex;flex-direction:column;gap:16px}.no-events{color:#a0aec0;padding:40px 0}.events-list{list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:0}.event-item{border-bottom:1px solid #e2e8f0;display:flex;gap:16px;padding:16px;transition:background .2s}.event-item:last-child{border-bottom:none}.event-item:hover{background:#f7fafc}.event-date{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;display:flex;flex-direction:column;height:60px;justify-content:center;min-width:60px}.event-day{font-size:24px;font-weight:700;line-height:1}.event-month{font-size:12px;font-weight:600;text-transform:uppercase}.event-content h4{color:#2d3748;font-size:15px;font-weight:600;margin:0 0 6px}.event-content p{color:#718096;font-size:13px;margin:0 0 4px}.event-time{color:#a0aec0;font-size:12px;font-weight:500}.view-all-btn{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;padding:10px;transition:all .2s;width:100%}.view-all-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.events-list::-webkit-scrollbar{width:6px}.events-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.events-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:10px}.events-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.dashboard{margin:0 auto;max-width:1400px}.dashboard-header{margin-bottom:32px}.dashboard-header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.dashboard-header h1{color:#2d3748;font-size:32px;font-weight:700;margin:0 0 8px}.dashboard-header p{color:#718096;font-size:16px;margin:0}.celebrations-btn{align-items:center;animation:pulseGlow 2s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:all .3s ease}.celebrations-btn:hover{animation:none;box-shadow:0 6px 25px #667eea80;transform:translateY(-2px)}.celebrations-btn:active{transform:translateY(0)}@keyframes pulseGlow{0%,to{box-shadow:0 4px 15px #667eea4d}50%{box-shadow:0 4px 25px #667eea80}}.celebrations-section{animation:sectionSlideIn .6s ease-out;margin-bottom:32px}@keyframes sectionSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.celebrations-section h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:22px;font-weight:600;margin:0 0 20px}.celebrations-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.celebration-card{align-items:center;animation:cardPopIn .5s ease-out backwards;border-radius:14px;display:flex;flex-direction:column;padding:20px;text-align:center;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.celebrations-grid .celebration-card:first-child{animation-delay:.1s}.celebrations-grid .celebration-card:nth-child(2){animation-delay:.2s}.celebrations-grid .celebration-card:nth-child(3){animation-delay:.3s}.celebrations-grid .celebration-card:nth-child(4){animation-delay:.4s}.celebrations-grid .celebration-card:nth-child(5){animation-delay:.5s}.celebrations-grid .celebration-card:nth-child(6){animation-delay:.6s}@keyframes cardPopIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.celebration-card{background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 8px 24px #48bb7840}.celebration-card:before{animation:shimmer 3s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);bottom:0;left:0;right:0;top:0}.celebration-card.anniversary{background:linear-gradient(135deg,#ed8936,#dd6b20);box-shadow:0 8px 24px #ed893640}.celebration-card.churchJoinAnniversary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 24px #667eea40}.celebration-card:hover{box-shadow:0 12px 32px #0003;transform:translateY(-8px) scale(1.03)}.celebration-card.anniversary:hover{box-shadow:0 12px 32px #ed893659}.celebration-icon{animation:bounce 2s infinite;margin-bottom:12px;position:relative}.celebration-card:hover .celebration-icon{animation:bounce .6s ease-out,scale .3s ease-out}.celebration-display{align-items:center;display:flex;height:80px;justify-content:center;margin:0 auto 12px;perspective:1000px;width:80px}.celebration-icon{-webkit-backface-visibility:hidden;backface-visibility:hidden;font-size:48px;position:absolute;z-index:2}.celebration-card.anniversary .celebration-icon,.celebration-card.churchJoinAnniversary .celebration-icon{animation:iconFlip 5s ease-in-out infinite}.anniversary-badge{animation:badgeFlip 5s ease-in-out infinite;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;justify-content:center;position:absolute}.years-number{color:#fff;font-size:42px;text-shadow:0 2px 8px #0003}@keyframes iconFlip{0%{opacity:1;transform:rotateY(0deg)}40%{opacity:1;transform:rotateY(0deg)}50%{opacity:0;transform:rotateY(90deg)}60%{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0deg)}}@keyframes badgeFlip{0%{opacity:0;transform:rotateY(-90deg)}40%{opacity:0;transform:rotateY(-90deg)}50%{opacity:1;transform:rotateY(0deg)}60%{opacity:1;transform:rotateY(0deg)}to{opacity:0;transform:rotateY(-90deg)}}@keyframes scale{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.celebration-card h4{color:#fff;font-size:16px;font-weight:700;margin:0 0 6px;position:relative;text-shadow:0 2px 4px #0000001a;z-index:2}.celebration-type{font-size:11px;letter-spacing:.8px;margin:0 0 8px;position:relative;z-index:2}.celebration-date{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border-radius:12px;color:#fff;font-weight:700;padding:6px 12px;position:relative;z-index:2}.stats-grid{grid-gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.charts-grid,.stats-grid{gap:24px;margin-bottom:32px}.charts-grid{grid-gap:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.chart-card h3{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 20px}.activity-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.activity-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.activity-card h3{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 20px}.loading{min-height:400px}.loading-spinner{color:#667eea;font-size:20px}@media (max-width:768px){.activity-grid,.charts-grid,.stats-grid{grid-template-columns:1fr}.dashboard-header h1{font-size:24px}}.modal-overlay{padding:20px}.modal-content{animation:slideUp .3s ease-out;border-radius:16px;max-width:600px}.close-btn{padding:4px;transition:color .2s}.close-btn:hover{color:#2d3748}.modal-form{padding:24px}.form-group,.form-row{margin-bottom:16px}.form-group label{margin-bottom:6px}.form-group input,.form-group select{padding:10px 12px;width:100%}.modal-actions{border-top:1px solid #e2e8f0;flex-wrap:wrap;margin-top:24px;padding-top:24px}.modal-actions .btn{align-items:center;display:inline-flex;gap:8px;justify-content:center;min-width:140px;padding:10px 20px}.modal-actions .btn svg{display:block;height:18px;width:18px}.btn-success{background:#25d366;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s ease}.btn-success:hover{background:#128c7e;box-shadow:0 4px 12px #25d3664d;transform:translateY(-1px)}.btn-success:disabled{background:#cbd5e0;cursor:not-allowed;transform:none}.btn-whatsapp{border-radius:8px;padding:8px 10px}.whatsapp-label{color:#fff;font-size:13px;font-weight:600;margin-left:8px;text-transform:none}@media (max-width:520px){.whatsapp-label{display:none}}.checkbox-label{align-items:flex-start;color:#2d3748;gap:10px}.checkbox-label input[type=checkbox]{margin-top:3px;width:auto}.help-text{background:#edf2f7;border-left:3px solid #667eea;border-radius:4px;font-size:13px;margin-top:8px;padding:12px}.credentials-modal{max-width:500px}.modal-body{padding:24px}.credentials-info{display:flex;flex-direction:column;gap:20px}.credential-item{display:flex;flex-direction:column;gap:8px}.credential-item label{color:#2d3748;font-size:14px}.credential-value{background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;padding:12px}.credential-value code{color:#667eea;font-weight:500}.copy-btn{transition:transform .2s}.copy-btn:hover{transform:scale(1.2)}.warning-box{background:#fef5e7;border:1px solid #f39c12;border-radius:8px;color:#7d6608;font-size:13px;line-height:1.5;padding:12px}.success-message{animation:fadeIn .3s ease-out;background:#d4edda;border:1px solid #48bb78;border-radius:8px;color:#155724;font-weight:600;text-align:center}.days-selector{display:flex;flex-wrap:wrap;gap:8px}.day-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px;transition:all .2s}.day-btn:hover{background:#f7fafc;border-color:#667eea}.day-btn.active{background:#667eea;border-color:#667eea;color:#fff}.checkbox-label span{font-size:14px}.profile-image-upload .image-preview img{border:3px solid #667eea}.profile-image-upload .upload-label:hover{border-color:#667eea}@media (max-width:600px){.form-row{grid-template-columns:1fr}.modal-content{max-height:95vh}.credential-value{flex-wrap:wrap}.day-btn{font-size:12px;padding:6px 10px}.profile-image-upload .image-preview img{height:100px;width:100px}}.members-container{margin:0 auto;max-width:1200px;padding:24px}.members-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.members-header h2{color:#2d3748;font-size:28px;font-weight:700;margin:0}.members-btn-primary{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.members-btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.members-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-input{flex:1 1;min-width:250px;transition:border-color .2s}.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:14px;min-width:150px;padding:12px 16px;transition:border-color .2s}.filter-select:focus{border-color:#667eea;outline:none}.members-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.members-table{border-collapse:collapse;width:100%}.members-table thead{background:#f7fafc}.members-table th{color:#4a5568;font-size:12px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase;white-space:nowrap}.members-table td{border-top:1px solid #e2e8f0;color:#2d3748;font-size:14px;padding:10px 12px}.members-table tbody tr{transition:background-color .2s}.members-table tbody tr:hover{background-color:#f7fafc}.members-table tbody tr.birthday-row{background:linear-gradient(135deg,#ffd70026,#ffed4e26);border-left:4px solid gold}.members-table tbody tr.birthday-row:hover{background:linear-gradient(135deg,#ffd70040,#ffed4e40)}.members-table tbody tr.birthday-this-week{background:linear-gradient(135deg,#66bb6a1a,#81c7841a);border-left:4px solid #66bb6a}.members-table tbody tr.birthday-this-week:hover{background:linear-gradient(135deg,#66bb6a33,#81c78433)}.members-table tbody tr.birthday-next-week{background:linear-gradient(135deg,#42a5f514,#64b5f614);border-left:4px solid #42a5f5}.members-table tbody tr.birthday-next-week:hover{background:linear-gradient(135deg,#42a5f526,#64b5f626)}.birthday-indicator{animation:bounce 1s infinite;font-size:16px}.members-status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.members-status-badge.active{background:#c6f6d5;color:#22543d}.members-status-badge.inactive{background:#fed7d7;color:#742a2a}.members-portal-access-yes{color:#38a169;font-weight:600;margin-right:8px}.members-portal-access-no{color:#e53e3e;font-weight:600;margin-right:8px}.members-btn-icon{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;margin:0 2px;padding:6px 8px;transition:all .2s}.members-btn-icon:hover{background:#f7fafc;transform:scale(1.15)}.members-btn-icon.members-btn-success{color:#38a169}.members-btn-icon.members-btn-success:hover{background:#c6f6d5}.members-btn-icon.members-btn-danger{color:#e53e3e}.members-btn-icon.members-btn-danger:hover{background:#fed7d7}.members-btn-action{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:4px;margin:0 4px;padding:8px 16px;transition:all .2s}.members-btn-edit{background:#e6fffa;color:#234e52}.members-btn-edit:hover{background:#b2f5ea;transform:translateY(-1px)}.members-btn-delete{background:#fff5f5;color:#742a2a}.members-btn-delete:hover{background:#fed7d7;transform:translateY(-1px)}.members-btn-whatsapp{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-weight:600}.members-btn-whatsapp:hover{background:linear-gradient(135deg,#20ba5a,#0e7569);box-shadow:0 4px 12px #25d3664d;transform:translateY(-2px)}.members-btn-anniversary{background:linear-gradient(135deg,#ff6b9d,#ffc3a0)}.members-btn-anniversary:hover{background:linear-gradient(135deg,#f58,#ffb38d);box-shadow:0 4px 12px #ff6b9d4d}.no-data{font-style:italic;padding:40px}@media (max-width:1024px){.members-table-container{overflow-x:auto}.members-table{min-width:1000px}}@media (max-width:768px){.members-container{padding:16px}.members-header{align-items:flex-start;flex-direction:column;gap:16px}.members-header h2{font-size:24px}.members-btn-primary{justify-content:center;width:100%}.members-filters{flex-direction:column}.filter-select,.search-input{min-width:0;min-width:auto;width:100%}.members-table td,.members-table th{font-size:13px;padding:12px 8px}.btn-action{font-size:12px;padding:6px 12px}}@media (max-width:480px){.members-header h2{font-size:20px}.members-btn-icon{font-size:16px;padding:4px 6px}.members-btn-action{margin:2px}}.donations-page,.events-page{margin:0 auto;max-width:1400px}.header-actions{align-items:center;display:flex;gap:16px}.cleanup-btn{background:linear-gradient(135deg,#f56565,#e53e3e);border:none;border-radius:8px;box-shadow:0 2px 8px #f565654d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .3s ease;white-space:nowrap}.cleanup-btn:hover{background:linear-gradient(135deg,#e53e3e,#c53030);box-shadow:0 4px 12px #f5656566;transform:translateY(-2px)}.cleanup-btn:active{box-shadow:0 2px 6px #f565654d;transform:translateY(0)}.view-toggle{background:#fff;border-radius:8px;display:flex;gap:8px;padding:4px}.view-toggle button{background:none;border:none;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.view-toggle button.active{background:#667eea;color:#fff}.events-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.event-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px;transition:transform .2s,box-shadow .2s}.event-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.event-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.event-card-header h3{color:#2d3748;font-size:18px;font-weight:600;margin:0}.event-type{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.event-type.worship{background:#bee3f8;color:#2c5282}.event-type.youth{background:#c6f6d5;color:#22543d}.event-type.special{background:#feebc8;color:#7c2d12}.event-description{margin:0 0 16px}.event-details{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:16px}.event-detail{align-items:center;color:#4a5568;display:flex;font-size:14px;gap:8px}.event-actions{border-top:1px solid #e2e8f0;display:flex;gap:8px;padding-top:16px}.btn-small{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.btn-danger{background:#fed7d7;color:#c53030}.btn-danger:hover{background:#fc8181;color:#fff}.calendar-view{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:40px;text-align:center}.calendar-placeholder{color:#a0aec0;font-size:16px}@media (max-width:768px){.page-header{align-items:stretch}.header-actions,.page-header{flex-direction:column}.event-details,.events-grid{grid-template-columns:1fr}}.add-donation-modal{max-height:90vh;max-width:600px;overflow-y:auto}.form-select option{padding:10px}.donations-page{margin:0 auto;max-width:1400px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-header h1{margin:0}.btn{align-items:center;border-radius:8px;display:inline-flex;gap:8px;padding:10px 20px;transition:all .2s}.btn-primary{background:#667eea}.btn-primary:hover{background:#5568d3;box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0}.donation-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.stat-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.stat-box h3{color:#718096;font-size:14px;margin:0 0 12px;text-transform:uppercase}.stat-value{color:#2d3748;margin:0}.donations-filters{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:24px}.filter-group{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:200px}.filter-group label{color:#4a5568;font-size:14px;font-weight:600}.filter-input,.filter-select{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s}.filter-input:focus,.filter-select:focus{border-color:#667eea;outline:none}.filter-results{align-items:center;background:#edf2f7;border-radius:8px;color:#4a5568;display:flex;font-size:14px;font-weight:600;padding:10px 20px;white-space:nowrap}.donations-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.donations-table{border-collapse:collapse;width:100%}.donations-table thead{background:#f7fafc}.donations-table th{color:#4a5568;font-size:13px;font-weight:600;padding:16px;text-align:left;text-transform:uppercase}.donations-table td{border-top:1px solid #e2e8f0;font-size:14px;padding:16px}.donations-table .amount{color:#48bb78;font-weight:600}.badge{border-radius:16px;display:inline-block;font-size:12px;font-weight:600;padding:6px 14px;text-transform:capitalize;white-space:nowrap}.badge.Tithe{background:linear-gradient(135deg,#bee3f8,#90cdf4);color:#2c5282}.badge.Offering,.badge.offering{background:linear-gradient(135deg,#c6f6d5,#9ae6b4);color:#22543d}.badge.general{background:linear-gradient(135deg,#e2e8f0,#cbd5e0);color:#2d3748}.badge.building{background:linear-gradient(135deg,#fed7d7,#fc8181);color:#742a2a}.badge.missions{background:linear-gradient(135deg,#feebc8,#fbd38d);color:#7c2d12}.badge.youth{background:linear-gradient(135deg,#e9d8fd,#d6bcfa);color:#44337a}.badge.charity{background:linear-gradient(135deg,#fed7e2,#fbb6ce);color:#702459}.badge.special{background:linear-gradient(135deg,#fef5e7,#fce7c0);color:#744210}.badge.Building.Fund,.badge[class*=Building]{background:linear-gradient(135deg,#fed7d7,#fc8181);color:#742a2a}.badge.Mission{background:linear-gradient(135deg,#feebc8,#fbd38d);color:#7c2d12}.settings-page{margin:0 auto;max-width:1000px}.settings-container{grid-gap:24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:grid;gap:24px;grid-template-columns:250px 1fr;overflow:hidden}.settings-tabs{background:#f7fafc;display:flex;flex-direction:column;padding:24px 0}.settings-tabs button{background:none;border:none;color:#4a5568;cursor:pointer;font-size:15px;padding:14px 24px;text-align:left;transition:all .2s}.settings-tabs button:hover{background:#edf2f7}.settings-tabs button.active{background:#fff;border-left:3px solid #667eea;color:#667eea;font-weight:600}.settings-content{padding:32px}.settings-form h2{color:#2d3748;font-size:22px;font-weight:600;margin:0 0 24px}.settings-form .form-group{margin-bottom:20px}.settings-form .form-group label{color:#2d3748;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.settings-form .form-group input{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 12px;width:100%}@media (max-width:768px){.settings-container{grid-template-columns:1fr}.settings-tabs{flex-direction:row;overflow-x:auto}}.change-password-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.change-password-card{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:500px;padding:40px;width:100%}.change-password-header{margin-bottom:30px;text-align:center}.change-password-header h2{color:#2d3748;font-size:24px;font-weight:700;margin-bottom:8px}.change-password-header p{color:#718096;font-size:14px}.change-password-form{margin-bottom:30px}.password-input-wrapper{align-items:center;display:flex;position:relative}.form-group input{padding:12px 40px 12px 12px;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.toggle-password{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:4px 8px;position:absolute;right:12px}.toggle-password:hover{opacity:.7}.toggle-password:disabled{cursor:not-allowed;opacity:.5}.help-text{color:#718096;font-size:12px;margin-top:6px}.success-message{animation:slideDown .3s ease-out;background-color:#c6f6d5;border-left:4px solid #48bb78;border-radius:6px;color:#22543d;font-size:14px;padding:12px}.form-actions{margin-top:30px}.btn{flex:1 1;font-weight:600;padding:12px 20px;text-transform:capitalize}.btn-primary{background-color:#667eea}.btn-primary:hover:not(:disabled){background-color:#5a67d8;box-shadow:0 4px 12px #667eea66}.btn-secondary{background-color:#e2e8f0;color:#2d3748}.btn-secondary:hover:not(:disabled){background-color:#cbd5e0}.security-tips{background-color:#f0f4ff;border:2px solid #e0e7ff;border-radius:8px;margin-top:20px;padding:20px}.security-tips h3{color:#667eea;font-size:14px;margin-bottom:12px}.security-tips ul{margin:0;padding-left:20px}.security-tips li{color:#4a5568;font-size:13px;line-height:1.5;margin-bottom:8px}.security-tips li:last-child{margin-bottom:0}@media (max-width:600px){.change-password-container{padding:12px}.change-password-card{max-width:100%;padding:24px 16px}.change-password-header h2{font-size:20px}.change-password-header{margin-bottom:20px}.form-group{margin-bottom:16px}.form-group label{font-size:13px}.form-group input{font-size:16px;padding:10px 36px 10px 10px}.toggle-password{font-size:16px;right:8px}.form-actions{flex-direction:column;margin-top:20px}.btn{font-size:13px;padding:10px 16px;width:100%}.security-tips{margin-top:16px;padding:16px}.security-tips h3{font-size:13px}.security-tips li{font-size:12px;margin-bottom:6px}}@media (max-width:380px){.change-password-container{padding:8px}.change-password-card{padding:16px 12px}.change-password-header h2{font-size:18px}.form-group input{font-size:16px;padding:10px 32px 10px 8px}.toggle-password{right:6px}.btn{font-size:12px;padding:8px 12px}.security-tips{padding:12px}}.user-management{padding:30px}.page-header h1{color:#2d3748;font-size:28px;font-weight:700;margin-bottom:8px}.page-header p{color:#718096;font-size:14px}.users-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:30px 0}.search-box{flex:1 1;min-width:300px}.search-box input{border:1px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;width:100%}.search-box input:focus{border-color:#4299e1;outline:none}.btn-create-admin{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.btn-create-admin:hover{box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.btn-create-admin:disabled{cursor:not-allowed;opacity:.6}.role-info-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.role-info-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#fff;padding:20px}.role-info-card:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.role-info-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.role-info-card:nth-child(4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.role-info-card h4{font-size:16px;font-weight:700;margin-bottom:8px}.role-info-card p{font-size:13px;margin:0;opacity:.9}.users-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f7fafc}.users-table th{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:14px;font-weight:600;padding:16px;text-align:left}.users-table td{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:14px;padding:16px}.users-table tbody tr:hover{background:#f7fafc}.role-badge{border-radius:16px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.badge-admin{background:#667eea;color:#fff}.badge-events{background:#f5576c;color:#fff}.badge-finance{background:#00f2fe;color:#1a202c}.badge-resources{background:#667eea;color:#fff}.badge-user{background:#e2e8f0;color:#4a5568}.role-editor{align-items:center;display:flex;gap:8px}.role-select{border:1px solid #e2e8f0;border-radius:6px;font-size:14px;min-width:150px;padding:8px 12px}.role-select:focus{border-color:#4299e1;outline:none}.btn-edit{background:#4299e1;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:background .2s}.btn-edit:hover{background:#3182ce}.btn-cancel{border-radius:6px;font-size:13px;padding:8px 16px;transition:background .2s}.no-users{color:#a0aec0;padding:60px;text-align:center}.loading{color:#4a5568;font-size:16px;padding:60px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #e2e8f0;padding:24px}.modal-header h2{color:#2d3748;font-size:20px;font-weight:600}.modal-close{border-radius:6px;color:#718096;font-size:24px;transition:all .2s}.modal-close:hover{background:#f7fafc;color:#2d3748}.admin-form{display:flex;flex-direction:column;gap:20px;padding:24px}.admin-form .form-group{display:flex;flex-direction:column;gap:8px}.admin-form .form-group label{color:#2d3748;font-size:14px;font-weight:600}.admin-form .form-group input{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease}.admin-form .form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.admin-form .form-group input:disabled{background:#f7fafc;cursor:not-allowed}.error-message{background:#fed7d7;border:1px solid #fc8181;border-radius:8px}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn-cancel,.btn-create{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-cancel{background:#f7fafc;border:1px solid #e2e8f0}.btn-cancel:hover:not(:disabled){background:#edf2f7}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}.btn-create{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-create:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.btn-create:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.user-management{padding:20px}.users-table-container{overflow-x:auto}.role-info-cards{grid-template-columns:1fr}}.resource-form{display:flex;flex-direction:column;height:100%}.form-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px}.form-header h2{color:#1a202c;font-size:20px;font-weight:700;margin:0}.close-btn{align-items:center;background:none;border:none;color:#718096;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.close-btn:hover:not(:disabled){background:#e2e8f0;border-radius:4px;color:#1a202c}.close-btn:disabled{cursor:not-allowed;opacity:.5}.form-content{flex:1 1;overflow-y:auto;padding:24px}.form-group input[type=text],.form-group input[type=url],.form-group select,.form-group textarea{border:1px solid #cbd5e0;border-radius:6px;box-shadow:0 1px 3px #00000014;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.form-group input[type=text]:focus,.form-group input[type=url]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a,0 1px 3px #00000014;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#f56565}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 3px #f565651a,0 1px 3px #00000014}.error-message{color:#c00}.error-message,.helper-text{display:block;margin-top:6px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group textarea{min-height:80px}.image-preview{background:#f0f4f8;border:1px solid #e2e8f0;border-radius:6px;margin-top:12px;max-width:200px}.image-preview img{max-height:200px;object-fit:cover}.form-actions{background:#f9fafb;border-top:1px solid #e2e8f0;padding:20px}.btn-cancel,.btn-submit{align-items:center;border-radius:6px;display:flex;gap:8px;padding:10px 20px}.btn-cancel{color:#2d3748}.btn-cancel:hover:not(:disabled){background:#cbd5e0}.btn-submit:hover:not(:disabled){box-shadow:0 6px 16px #667eea80;transform:translateY(-1px)}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;width:14px}.pdf-upload-area{background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;padding:30px;text-align:center;transition:all .3s ease}.pdf-upload-area:hover{background:#eef2f7;border-color:#667eea}.pdf-upload-label{cursor:pointer;display:block}.upload-icon{font-size:48px;margin-bottom:12px}.upload-text{color:#2d3748;font-size:16px;font-weight:600;margin-bottom:8px}.upload-hint{color:#718096;font-size:14px}.pdf-preview{background:#fff;border:2px solid #667eea;border-radius:8px;padding:20px}.pdf-preview-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.pdf-icon{font-size:32px}.pdf-name{color:#2d3748;flex:1 1;font-weight:600;text-align:left;word-break:break-word}.remove-pdf-btn{align-items:center;background:#fc8181;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.remove-pdf-btn:hover:not(:disabled){background:#f56565;transform:scale(1.1)}.remove-pdf-btn:disabled{cursor:not-allowed;opacity:.5}.pdf-preview-info{color:#667eea;font-size:14px;font-weight:500}.author-selection-type{display:flex;gap:24px;margin-bottom:12px}.radio-label{align-items:center;color:#4a5568;display:flex;font-size:14px;gap:8px}.radio-label,.radio-label input[type=radio]{cursor:pointer}.radio-label span{-webkit-user-select:none;user-select:none}.author-photo-upload-area{margin-top:8px}.author-photo-upload-label{align-items:center;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:32px;transition:all .3s ease}.author-photo-upload-label:hover{background:#edf2f7;border-color:#667eea}.author-photo-preview{border-radius:8px;box-shadow:0 2px 8px #0000001a;display:inline-block;overflow:hidden;position:relative}.author-photo-preview img{display:block;height:200px;object-fit:cover;width:200px}.remove-photo-btn{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:32px;.author-photo-preview-readonly{border-radius:8px;box-shadow:0 2px 8px #0000001a;display:inline-block;overflow:hidden}.author-photo-preview-readonly img{display:block;height:150px;object-fit:cover;width:150px}}.remove-photo-btn:hover:not(:disabled){background:#f56565;transform:scale(1.1)}.remove-photo-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:600px){.form-content,.form-header{padding:16px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse;gap:8px}.btn-cancel,.btn-submit{justify-content:center;width:100%}}.resources-manager{margin:0 auto;max-width:1200px;padding:30px}.resources-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.resources-header h1{color:#1a202c;font-size:28px;font-weight:700;margin:0}.btn-create-resource{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.btn-create-resource:hover:not(:disabled){box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.btn-create-resource:disabled{cursor:not-allowed;opacity:.6}.alert{animation:slideDown .3s ease-out;border-radius:8px;font-weight:500;margin-bottom:20px;padding:16px 20px}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.resources-search{margin-bottom:30px}.search-input{border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d}.search-input:focus{box-shadow:0 4px 12px #667eea26}.form-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.form-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.loading-state{color:#718096;padding:60px 20px;text-align:center}.loading-state .spinner{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:40px;margin:0 auto 20px;width:40px}.empty-state{background:#f7fafc;border-radius:8px}.empty-state p{font-size:16px;margin-bottom:20px}.resources-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.resource-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.resource-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.resource-image{background:#f0f4f8;height:180px;overflow:hidden;position:relative;width:100%}.resource-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.resource-card:hover .resource-image img{transform:scale(1.05)}.resource-category{background:#667eeae6;border-radius:20px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 12px;position:absolute;right:8px;text-transform:uppercase;top:8px}.resource-content{display:flex;flex:1 1;flex-direction:column;padding:16px}.resource-title{color:#1a202c;font-size:16px;font-weight:700;line-height:1.3;margin:0 0 8px}.resource-author{color:#718096;font-size:13px;font-weight:500;margin:0 0 8px}.resource-description{color:#4a5568;flex:1 1;font-size:13px;line-height:1.5;margin:0 0 auto}.resource-meta{border-top:1px solid #edf2f7;color:#a0aec0;font-size:12px;margin-top:8px;padding-top:8px}.resource-actions{background:#f9fafb;border-top:1px solid #edf2f7;display:flex;gap:8px;padding:12px 16px}.btn-delete,.btn-edit{font-size:12px;letter-spacing:.3px;padding:8px 12px;text-transform:uppercase}.btn-edit{background:#e6f2ff;color:#06c}.btn-edit:hover:not(:disabled){background:#06c;color:#fff}.btn-delete{background:#ffe6e6;color:#c00}.btn-delete:hover:not(:disabled){background:#c00;color:#fff}.btn-delete:disabled,.btn-edit:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.resources-manager{padding:20px}.resources-header{align-items:stretch;flex-direction:column}.resources-header h1{font-size:22px}.btn-create-resource{text-align:center;width:100%}.resources-grid{grid-template-columns:1fr}.form-modal{max-height:95vh}.resource-actions{flex-direction:column}.btn-delete,.btn-edit{width:100%}}.article-detail-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Georgia,Garamond,serif;min-height:100vh;padding:40px 20px}.article-detail-loading{align-items:center;color:#2c3e50;display:flex;font-size:18px;justify-content:center;min-height:100vh}.article-paper{background:#fff;border-radius:4px;box-shadow:0 10px 50px #00000026,0 20px 100px #0000001a;color:#2d3748;line-height:1.8;margin:0 auto;max-width:800px;padding:60px;position:relative}.article-paper:before{background:repeating-linear-gradient(90deg,#0000,#0000 2px,#00000003 0,#00000003 4px),repeating-linear-gradient(0deg,#0000,#0000 2px,#00000003 0,#00000003 4px);border-radius:4px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.article-paper-header{margin-bottom:40px}.article-paper-image{border-radius:4px;box-shadow:0 4px 12px #0000001a;height:300px;margin-bottom:30px;object-fit:cover;width:100%}.article-paper-title-section{text-align:center}.article-paper-title{color:#1a202c;font-size:48px;font-weight:700;letter-spacing:-.5px;line-height:1.2;margin:0 0 20px}.article-paper-meta{border-top:2px solid #edf2f7;flex-direction:column;padding-top:20px}.article-paper-meta,.meta-group{align-items:center;display:flex;gap:12px}.meta-group{font-size:14px}.category-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 16px;text-transform:uppercase}.author{color:#4a5568;font-style:italic;font-weight:600}.separator{color:#cbd5e0;font-weight:300}.date{color:#718096;font-size:13px}.article-paper-content{margin:40px 0;max-width:100%;overflow-x:hidden;position:relative;width:100%;z-index:1}.author-photo-float{float:left;margin:0 24px 16px 0;max-width:200px;text-align:center}.author-photo{border:3px solid #fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:block;height:180px;object-fit:cover;width:180px}.author-photo-caption{color:#4a5568;font-size:14px;font-style:italic;font-weight:600;margin-top:8px}.article-content-formatted{width:100%}.article-content-formatted p{color:#2d3748;font-size:16px;line-height:1.9;margin:0 0 20px;text-align:justify}.article-content-formatted p:first-of-type{margin-top:0}.article-content-formatted strong{color:#1a202c;font-weight:700}.article-content-formatted em{color:#4a5568;font-style:italic}.article-content-formatted ol,.article-content-formatted ul{color:#2d3748;margin:20px 0;padding-left:40px}.article-content-formatted ul{list-style-type:disc}.article-content-formatted ol{list-style-type:decimal}.article-content-formatted li{font-size:16px;line-height:1.9;margin-bottom:8px;text-align:justify}.article-content-formatted li:last-child{margin-bottom:0}.article-paragraph{word-wrap:break-word;color:#2d3748;font-size:16px;line-height:1.9;margin:0 0 20px;text-align:justify;white-space:pre-wrap}.article-paragraph:first-of-type{margin-top:0}.article-paragraph:first-letter{color:#667eea;font-size:1.1em;font-weight:700}.pdf-viewer-container{background:#f7fafc;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:30px 0;padding:20px;width:100%}.pdf-viewer{background:#fff;border:2px solid #e2e8f0;border-radius:8px;display:block;height:800px;margin:0 auto;min-width:100%;overflow:hidden;width:100%}.pdf-viewer::-webkit-scrollbar{display:none}.pdf-viewer{-ms-overflow-style:none;scrollbar-width:none}.pdf-fallback{color:#4a5568;padding:60px 20px;text-align:center}.pdf-fallback p{color:#2d3748;font-size:16px;margin-bottom:20px}.pdf-controls{border-top:2px solid #e2e8f0;margin-top:20px;padding-top:20px;text-align:center}.pdf-download-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.pdf-download-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.article-detail-share{border-top:2px solid #e2e8f0;margin:40px 0;padding:30px 0}.article-paper-footer{margin-top:50px;padding-top:30px}.footer-text{color:#718096;font-size:14px;font-style:italic;margin:0;text-align:center}@media (max-width:768px){.article-paper{padding:30px 20px}.article-paper-title{font-size:32px}.author-photo-float{float:left;margin:0 16px 12px 0;max-width:120px}.author-photo{height:120px;width:120px}.author-photo-caption{font-size:12px}.article-paragraph{text-indent:1.5em}.article-content-formatted li,.article-content-formatted p,.article-paragraph{font-size:15px;line-height:1.8;text-align:left}.article-content-formatted ol,.article-content-formatted ul{padding-left:24px}.article-paper-image{height:200px}.pdf-viewer{height:600px}.pdf-download-btn{font-size:14px;padding:10px 20px}.pdf-viewer-container{padding:15px}}@media (max-width:480px){.article-detail-page{padding:20px 10px}.article-paper{padding:20px 15px}.article-paper-title{font-size:24px}.article-paragraph{font-size:14px;text-indent:1em}.pdf-viewer{height:500px}.pdf-download-btn{font-size:13px;padding:8px 16px}.pdf-viewer-container{margin:20px 0;padding:10px}}.all-articles-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Georgia,Garamond,serif;min-height:100vh;padding:40px 20px}.articles-paper{background:#fff;border-radius:4px;box-shadow:0 10px 50px #00000026,0 20px 100px #0000001a;margin:0 auto;max-width:1200px;padding:60px;position:relative}.articles-paper-header{border-bottom:3px solid #667eea;margin-bottom:40px;padding-bottom:30px;text-align:center}.articles-paper-title{color:#1a202c;font-family:Georgia,Times New Roman,serif;font-size:48px;font-weight:900;line-height:1.2;margin:0 0 15px}.articles-paper-subtitle{color:#4a5568;font-family:Georgia,Times New Roman,serif;font-size:18px;font-style:italic;margin:0}.all-articles-page .share-section{border-top:2px solid #e2e8f0;margin-top:30px;padding-top:25px}.all-articles-page .share-label{color:#2d3748;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:600;margin-bottom:15px}.all-articles-page .share-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.all-articles-page .share-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;transition:all .3s ease}.all-articles-page .share-btn:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.all-articles-page .share-btn:active{transform:translateY(0)}.all-articles-page .share-btn.facebook{background:linear-gradient(135deg,#1877f2,#0d5ecc)}.all-articles-page .share-btn.facebook:hover{background:linear-gradient(135deg,#0d5ecc,#0a4da3)}.all-articles-page .share-btn.twitter{background:linear-gradient(135deg,#1da1f2,#0c85d0)}.all-articles-page .share-btn.twitter:hover{background:linear-gradient(135deg,#0c85d0,#0a6bb3)}.all-articles-page .share-btn.whatsapp{background:linear-gradient(135deg,#25d366,#1ebe57)}.all-articles-page .share-btn.whatsapp:hover{background:linear-gradient(135deg,#1ebe57,#17a347)}.all-articles-page .share-btn.email{background:linear-gradient(135deg,#ea4335,#c5221f)}.all-articles-page .share-btn.email:hover{background:linear-gradient(135deg,#c5221f,#a01b1b)}.all-articles-page .share-btn.copy{background:linear-gradient(135deg,#6c757d,#495057)}.all-articles-page .share-btn.copy:hover{background:linear-gradient(135deg,#495057,#343a40)}.articles-filter-section{padding:30px 0}.articles-filter-container{margin:0 auto;max-width:1200px}.articles-filter-container h3{color:#333;font-size:1.2rem;margin:0 0 20px}.articles-filter-buttons{display:flex;flex-wrap:wrap;gap:12px}.articles-content-section{padding:30px 0}.articles-paper-footer{margin-top:50px;padding-top:30px}.articles-empty,.articles-loading{padding:80px 20px;text-align:center}.articles-empty h3{color:#555;font-size:1.8rem;margin-bottom:10px}.articles-empty p{color:#888;font-size:1.1rem}.articles-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.article-card{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.article-card:hover{box-shadow:0 12px 30px #667eea33;transform:translateY(-8px)}.article-card-image{background:linear-gradient(135deg,#667eea15,#764ba215);height:220px;overflow:hidden;position:relative}.article-card-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.article-card:hover .article-card-image img{transform:scale(1.1)}.article-category-badge{background:linear-gradient(135deg,#667eea,#764ba2);padding:6px 16px;right:15px;text-transform:capitalize}.article-category-badge,.article-type-badge{border-radius:20px;box-shadow:0 2px 8px #0003;color:#fff;font-size:.85rem;font-weight:600;position:absolute;top:15px}.article-type-badge{background:linear-gradient(135deg,#f56565,#ed8936);left:15px;padding:6px 14px}.article-card-content{display:flex;flex:1 1;flex-direction:column;padding:25px}.article-card-title{-webkit-line-clamp:2;color:#2d3748;font-size:1.5rem;font-weight:700;line-height:1.4;margin:0 0 15px}.article-card-excerpt,.article-card-title{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.article-card-excerpt{-webkit-line-clamp:3;color:#666;flex:1 1;line-height:1.6;margin:0 0 20px}.article-card-meta{align-items:center;border-top:1px solid #e0e0e0;color:#888;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:20px;padding-top:15px}.article-author{color:#667eea;font-weight:600}.article-date{color:#999}.article-read-more{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.article-read-more:hover{box-shadow:0 4px 12px #667eea66;transform:translateX(5px)}@media (max-width:768px){.articles-paper{padding:40px 30px}.articles-paper-title{font-size:36px}.articles-paper-subtitle{font-size:16px}.articles-grid{gap:20px;grid-template-columns:1fr}.article-card-title{font-size:1.3rem}.articles-filter-buttons{gap:8px}.filter-btn{font-size:.9rem;padding:8px 18px}}@media (max-width:480px){.all-articles-page{padding:20px 15px}.articles-paper{padding:30px 20px}.articles-paper-title{font-size:28px}.articles-paper-subtitle{font-size:14px}.articles-filter-container h3{font-size:1rem}.article-card-content{padding:20px}}.testimonials-management-container{margin:0 auto;max-width:1200px;padding:40px 20px}.management-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:40px}.header-content h1{color:#2c3e50;font-size:32px;font-weight:700;margin:0 0 8px}.header-content p{color:#718096;font-size:16px;margin:0}.btn-new-testimonial{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.btn-new-testimonial:hover{box-shadow:0 8px 24px #667eea66;transform:translateY(-2px)}.management-error{background:#fed7d7;border-left:4px solid #c53030;border-radius:8px;color:#c53030;margin-bottom:20px;padding:16px}.search-section{margin-bottom:30px}.search-input{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;max-width:400px;padding:12px 16px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.loading,.no-data{color:#718096;font-size:16px;padding:60px 20px;text-align:center}.no-data p{color:#4a5568}.testimonials-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.testimonials-table{border-collapse:collapse;width:100%}.testimonials-table thead{background:linear-gradient(135deg,#f7fafc,#edf2f7)}.testimonials-table th{border-bottom:2px solid #e2e8f0;color:#2c3e50;font-size:13px;font-weight:700;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.testimonials-table td{border-bottom:1px solid #edf2f7;font-size:14px;padding:16px}.testimonials-table tbody tr{transition:background .2s ease}.testimonials-table tbody tr:hover{background:#f7fafc}.name-cell{color:#2c3e50}.role-cell{color:#667eea;font-weight:500}.content-cell{color:#4a5568;max-width:300px}.content-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-cell{color:#a0aec0;font-size:13px}.actions-cell{gap:8px}.btn-delete,.btn-edit{background:none;font-size:16px;padding:6px 10px;transition:all .2s ease}.btn-edit{color:#667eea}.btn-edit:hover{background:#667eea1a}.btn-delete{color:#e53e3e}.btn-delete:hover{background:#e53e3e1a}.confirmation-modal{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content h3{color:#2c3e50;font-size:20px;font-weight:700;margin:0 0 8px}.modal-content p{color:#718096;font-size:14px;margin:0 0 24px}.modal-actions{justify-content:flex-end}.btn-cancel{font-size:14px;padding:10px 24px;transition:all .2s ease}.btn-cancel:hover{background:#e2e8f0}.btn-confirm-delete{background:#e53e3e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.btn-confirm-delete:hover{background:#c53030;transform:translateY(-2px)}@media (max-width:768px){.testimonials-management-container{padding:20px 16px}.management-header{align-items:stretch;flex-direction:column}.header-content h1{font-size:24px}.btn-new-testimonial{text-align:center;width:100%}.search-input{max-width:100%}.testimonials-table{font-size:12px}.testimonials-table td,.testimonials-table th{padding:12px 8px}.content-preview{max-width:150px}}@media (max-width:480px){.testimonials-table-wrapper{overflow-x:auto}.testimonials-table{min-width:600px}.testimonials-table td,.testimonials-table th{font-size:11px;padding:8px 6px}.header-content h1{font-size:20px}.content-preview{max-width:100px}}.testimonial-form-container{margin:40px auto;max-width:800px;padding:20px}.form-header{margin-bottom:40px;text-align:center}.form-header h1{color:#2c3e50;font-size:32px;font-weight:700;margin:0 0 8px}.form-header p{color:#667eea;font-size:16px;margin:0}.testimonial-form{background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a;padding:32px}.form-group{margin-bottom:24px;position:relative}.form-group:last-of-type{margin-bottom:32px}.form-group label{letter-spacing:.5px;text-transform:uppercase}.form-group input,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:14px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:150px}.form-group input:disabled,.form-group textarea:disabled{background:#f7fafc;cursor:not-allowed;opacity:.6}.char-count{color:#a0aec0;font-size:12px;font-weight:500;position:absolute;right:16px;top:8px}.form-error{background:#fed7d7;border-left:4px solid #c53030;color:#c53030}.form-error,.form-success{border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.form-success{background:#c6f6d5;border-left:4px solid #38a169;color:#22543d}.form-actions{gap:16px;justify-content:flex-end}.btn-cancel,.btn-submit{font-size:14px;letter-spacing:.5px;text-transform:uppercase}.btn-cancel{background:#edf2f7}.btn-cancel:hover:not(:disabled){background:#e2e8f0}.btn-submit{box-shadow:0 4px 12px #667eea4d}.btn-submit:hover:not(:disabled){box-shadow:0 8px 24px #667eea66}.btn-cancel:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.testimonial-form-container{margin:20px auto;padding:16px}.form-header h1{font-size:24px}.form-header p{font-size:14px}.testimonial-form{padding:24px}.form-group{margin-bottom:20px}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}@media (max-width:480px){.testimonial-form-container{margin:16px auto;padding:12px}.form-header h1{font-size:20px}.testimonial-form{padding:16px}.form-group{margin-bottom:16px}.form-group input,.form-group textarea{font-size:13px;padding:10px 12px}.char-count{right:12px}}.celebrations-page-wrapper{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);min-height:100vh;overflow-x:hidden;padding:20px;position:relative}.celebrations-page-wrapper:before{animation:backgroundShift 20s ease-in-out infinite;background:radial-gradient(circle at 20% 50%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 40% 20%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0}@keyframes backgroundShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.celebrations-page{animation:fadeIn .8s ease-out;margin:0 auto;max-width:1600px;position:relative}.celebrations-header{padding:60px 40px 40px;position:relative;text-align:center;z-index:1}.celebrations-title-wrapper{animation:fadeInDown .8s ease-out;margin:0 auto;max-width:800px}.celebrations-title{color:#fff;font-size:48px;font-weight:800;letter-spacing:-.5px;margin:0 0 12px;text-shadow:0 4px 20px #0000004d}.celebrations-subtitle{color:#fffffff2;font-size:20px;font-weight:500;margin:0 0 8px;text-shadow:0 2px 10px #0003}.celebrations-week-range{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;color:#ffffffd9;display:inline-block;font-size:16px;font-weight:600;margin:0;padding:8px 20px}.celebrations-header-actions{align-items:center;display:flex;gap:16px;position:absolute;right:40px;top:24px}.toggle-next-week-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:none;color:#ffffffd9;cursor:pointer;font-size:13px;font-weight:500;padding:8px 18px;transition:all .3s ease}.toggle-next-week-btn:hover{background:#fff3;box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.toggle-next-week-btn:active{box-shadow:none;transform:translateY(0)}.celebrations-content{margin:0 auto;max-width:1400px;padding:0 40px 40px;position:relative;z-index:1}.celebration-category{animation:slideInUp .6s ease-out;margin-bottom:48px}.category-title{align-items:center;color:#fff;display:flex;font-size:28px;font-weight:700;gap:12px;margin:0 0 24px;text-shadow:0 2px 10px #0003}.category-icon{filter:drop-shadow(0 2px 8px rgba(0,0,0,.2));font-size:32px}.week-subtitle{border-left:4px solid #fff6;color:#ffffffe6;font-size:20px;font-weight:600;margin:0 0 16px;padding-left:8px;text-shadow:0 2px 8px #0003}.celebrations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-bottom:32px}.celebration-card{animation:cardFadeIn .5s ease-out;background:#fffffff2;border:2px solid #0000;border-radius:20px;box-shadow:0 8px 24px #00000026;overflow:hidden;padding:24px;position:relative;transition:all .4s cubic-bezier(.34,1.56,.64,1)}.celebration-card:before{background:linear-gradient(45deg,#0000,#ffffff4d,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);transition:all .6s ease;width:200%}.celebration-card:hover:before{animation:shimmer 3s infinite}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}@keyframes cardFadeIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.celebration-card:hover{box-shadow:0 16px 40px #0000004d;transform:translateY(-12px) scale(1.03)}.celebration-card.birthday{animation:cardFadeIn .8s ease-out,gradientShift 6s ease infinite;background:linear-gradient(135deg,#48bb78f2,#38a169f2);border:2px solid #48bb7880;color:#fff}.celebration-card.birthday:hover{background:linear-gradient(135deg,#38a169f2,#228b57f2);box-shadow:0 16px 40px #48bb7899}.celebration-card.anniversary{animation:cardFadeIn .8s ease-out,gradientShift 6s ease infinite;background:linear-gradient(135deg,#ed8936f2,#dd6b20f2);border:2px solid #ed893680;color:#fff}.celebration-card.anniversary:hover{background:linear-gradient(135deg,#dd6b20f2,#c6570ff2);box-shadow:0 16px 40px #ed893699}.celebration-card.churchJoinAnniversary{animation:cardFadeIn .8s ease-out,gradientShift 6s ease infinite;background:linear-gradient(135deg,#667eeaf2,#764ba2f2);border:2px solid #667eea80;color:#fff}.celebration-card.churchJoinAnniversary:hover{background:linear-gradient(135deg,#764ba2f2,#58387af2);box-shadow:0 16px 40px #667eea99}@keyframes gradientShift{0%,to{background-position:0 50%;background-size:200% 200%}50%{background-position:100% 50%;background-size:200% 200%}}.celebration-card.today{animation:cardFadeIn .5s ease-out,gradientShift 3s ease infinite,todayPulse 2s ease-in-out infinite!important;border:3px solid #ffd700cc!important;box-shadow:0 0 30px #ffd70099,0 8px 24px #0003!important;position:relative}.celebration-card.today:after{animation:badgeBounce 2s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffed4e);border-radius:20px;box-shadow:0 4px 12px #ffd70099;color:#1a202c;content:"⭐ TODAY ⭐";font-size:11px;font-weight:700;letter-spacing:.5px;padding:6px 12px;position:absolute;right:10px;top:6px;z-index:10}@keyframes todayPulse{0%,to{box-shadow:0 0 30px #ffd70099,0 8px 24px #0003}50%{box-shadow:0 0 40px #ffd700cc,0 12px 32px #00000040}}@keyframes badgeBounce{0%,to{transform:scale(1) rotate(-5deg)}50%{transform:scale(1.1) rotate(-5deg)}}.celebration-card.today:hover{box-shadow:0 0 50px #ffd700e6,0 20px 60px #0000004d!important;transform:translateY(-16px) scale(1.08)!important}.celebration-display{margin-bottom:16px;position:relative;text-align:center}.celebration-icon{animation:iconBounce 4s ease-in-out infinite;display:inline-block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));font-size:64px;margin-bottom:8px}.anniversary-badge{align-items:center;animation:badgePulse 4s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff4d,#ffffff1a);border:1px solid #ffffff4d;border-radius:12px;display:inline-flex;flex-direction:column;margin-top:8px;padding:8px 16px}@keyframes badgePulse{0%,to{box-shadow:0 2px 8px #0000001a;transform:scale(1)}50%{box-shadow:0 4px 12px #0003;transform:scale(1.05)}}.years-number{color:#fffffff2;font-size:28px;font-weight:800;line-height:1;text-shadow:0 2px 4px #0003}.years-text{color:#ffffffe6;font-size:12px;font-weight:600;letter-spacing:.5px;text-shadow:0 1px 2px #0003;text-transform:uppercase}.celebration-info{margin-bottom:12px;text-align:center}.celebration-info h4{color:#fffffff2;font-size:18px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 4px #0003}.celebration-type{color:#ffffffd9;font-size:13px;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.celebration-date,.celebration-type{font-weight:600;text-shadow:0 1px 2px #00000026}.celebration-date{color:#ffffffe6;font-size:14px;margin:0}.celebration-wish{animation:wishGlow 4s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff40,#ffffff26);border:1px solid #ffffff4d;border-radius:10px;color:#fffffff2;font-size:14px;font-weight:600;margin-top:12px;padding:10px 16px;text-align:center;text-shadow:0 2px 4px #0003}.celebration-whatsapp-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#25d36626;border:1px solid #25d3664d;border-radius:50%;color:#25d366;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;padding:0;pointer-events:auto;position:absolute;right:8px;top:8px;transition:all .3s;width:36px;z-index:20}.celebration-whatsapp-btn:hover{background:#25d36640;border-color:#25d36680;transform:scale(1.1)}@keyframes wishGlow{0%,to{box-shadow:0 0 10px #ffffff4d}50%{box-shadow:0 0 20px #ffffff80}}.no-celebrations{color:#fff;padding:80px 40px;text-align:center}.no-celebrations-icon{animation:float 3s ease-in-out infinite;font-size:80px;margin-bottom:24px}.no-celebrations h2{font-size:32px;font-weight:700;margin:0 0 12px;text-shadow:0 2px 10px #0003}.no-celebrations p{color:#ffffffe6;font-size:18px;margin:0}.celebrations-page.loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.loading-spinner{animation:pulse 1.5s ease-in-out infinite;color:#fff;font-size:24px;font-weight:600;text-shadow:0 2px 10px #0003}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.celebration-slideshow-link{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 4px 12px #00000026;color:#667eea;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:8px 18px;text-decoration:none;transition:all .3s ease;white-space:nowrap}.celebration-slideshow-link:hover{background:#fff;box-shadow:0 6px 16px #0003;transform:translateY(-1px)}.slideshow-icon{font-size:18px}.slideshow-text{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;letter-spacing:.3px}@media (max-width:768px){.celebrations-page-wrapper{padding:10px}.celebrations-header{padding:40px 20px 30px}.celebrations-title{font-size:32px}.celebrations-subtitle{font-size:16px}.toggle-next-week-btn{display:block;margin-left:auto;margin-right:auto;margin-top:16px;max-width:200px;position:static;width:100%}.celebrations-content{padding:0 20px 30px}.celebrations-header-actions{flex-wrap:wrap;justify-content:center;margin-top:20px;position:static}.category-title{font-size:22px}.celebrations-grid{gap:16px;grid-template-columns:1fr}.celebration-card{padding:20px}.celebration-slideshow-link{font-size:13px;gap:6px;padding:8px 16px}.slideshow-icon{font-size:16px}}@media (max-width:480px){.celebrations-title{font-size:28px}.celebrations-subtitle{font-size:14px}.celebrations-week-range{font-size:14px;padding:6px 16px}.toggle-next-week-btn{font-size:14px;max-width:100%;padding:10px 20px}.category-title{font-size:20px}.week-subtitle{font-size:18px}.celebration-slideshow-link{font-size:12px;gap:5px;padding:7px 14px}.slideshow-icon{font-size:14px}}.celebration-slideshow-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative;width:100%}.celebration-slideshow-container:after,.celebration-slideshow-container:before{content:"🎂 🎉 🎈 💕 🎁 🥳 💐 ✨ 🎊 💑 ❤️ 🌟";font-size:40px;opacity:.15;pointer-events:none;position:absolute;white-space:nowrap;z-index:0}.celebration-slideshow-container:before{animation:floatRight 40s linear infinite;left:-100%;top:10%}.celebration-slideshow-container:after{animation:floatLeft 45s linear infinite;bottom:10%;right:-100%}@keyframes floatRight{0%{left:-100%;transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}to{left:100%;transform:translateY(0) rotate(1turn)}}@keyframes floatLeft{0%{right:-100%;transform:translateY(0) rotate(0deg)}50%{transform:translateY(20px) rotate(-180deg)}to{right:100%;transform:translateY(0) rotate(-1turn)}}.celebration-balloon{animation:floatUp linear infinite;font-size:60px;opacity:.3;pointer-events:none;position:absolute;z-index:10}.celebration-balloon:first-child{animation-delay:0s;animation-duration:12s;left:10%}.celebration-balloon:nth-child(2){animation-delay:2s;animation-duration:15s;left:25%}.celebration-balloon:nth-child(3){animation-delay:4s;animation-duration:13s;left:45%}.celebration-balloon:nth-child(4){animation-delay:1s;animation-duration:14s;left:65%}.celebration-balloon:nth-child(5){animation-delay:3s;animation-duration:16s;left:80%}.celebration-balloon:nth-child(6){animation-delay:5s;animation-duration:13s;left:90%}.celebration-balloon:nth-child(7){animation-delay:6s;animation-duration:14s;left:15%}.celebration-balloon:nth-child(8){animation-delay:2.5s;animation-duration:15s;left:35%}.celebration-balloon:nth-child(9){animation-delay:4.5s;animation-duration:12s;left:55%}.celebration-balloon:nth-child(10){animation-delay:1.5s;animation-duration:16s;left:75%}.celebration-balloon:nth-child(11){animation-delay:7s;animation-duration:13s;left:20%}.celebration-balloon:nth-child(12){animation-delay:3.5s;animation-duration:14s;left:85%}@keyframes floatUp{0%{bottom:-10%;transform:translateX(0) rotate(0deg)}25%{transform:translateX(-15px) rotate(-5deg)}50%{transform:translateX(15px) rotate(5deg)}75%{transform:translateX(-10px) rotate(-3deg)}to{bottom:110%;transform:translateX(0) rotate(0deg)}}.celebration-slideshow-header{display:none}.celebration-slideshow-title{align-items:center;animation:fadeInDown .8s ease-out;color:#fff;display:flex;font-family:Georgia,Palatino,serif;font-size:36px;font-weight:700;gap:20px;justify-content:center;margin:0 0 10px;text-shadow:0 4px 12px #0000004d}.celebration-title-icon{animation:sparkle 2s infinite;font-size:40px}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.celebration-counter{background:#fff3;border:2px solid #ffffff4d;border-radius:50px;color:#fff;display:inline-block;font-size:16px;font-weight:600;padding:10px 24px}.celebration-counter,.celebration-slideshow-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.celebration-slideshow-content{animation:fadeIn .8s ease-out;background:#ffffff1a;border:1px solid #fff3;border-radius:35px;box-shadow:0 8px 32px #0003;padding:10px;position:relative;width:95%;z-index:1}.celebration-slideshow-card{animation:slideIn .5s ease-out;background:#f9f6f0;background-image:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 0,#00000008 3px),repeating-linear-gradient(90deg,#0000,#0000 2px,#00000008 0,#00000008 3px);border-radius:30px;box-shadow:0 20px 60px #0000004d;display:grid;grid-template-columns:50% 50%;height:85vh;max-height:85vh;overflow:hidden;position:relative}@keyframes slideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.celebration-image-section{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e4e9f2);background-image:linear-gradient(135deg,#f5f7fa,#e4e9f2),repeating-linear-gradient(0deg,#0000,#0000 1px,#00000005 0,#00000005 2px);display:flex;flex-direction:column;gap:15px;justify-content:center;overflow:hidden;padding:20px;position:relative}.celebration-image-section:after,.celebration-image-section:before{content:"✨ 🎊 💫 ⭐ 🌟 💝";font-size:40px;opacity:.25;pointer-events:none;position:absolute;white-space:nowrap;z-index:0}.celebration-image-section:before{animation:floatRightImage 45s linear infinite;left:-100%;top:20%}.celebration-image-section:after{animation:floatLeftImage 50s linear infinite;bottom:20%;right:-100%}@keyframes floatRightImage{0%{left:-100%;transform:translateY(0) rotate(0deg) scale(.8)}50%{transform:translateY(-10px) rotate(180deg) scale(1)}to{left:100%;transform:translateY(0) rotate(1turn) scale(.8)}}@keyframes floatLeftImage{0%{right:-100%;transform:translateY(0) rotate(0deg) scale(.8)}50%{transform:translateY(10px) rotate(-180deg) scale(1)}to{right:100%;transform:translateY(0) rotate(-1turn) scale(.8)}}.celebration-image-wrapper{aspect-ratio:1;background:#fff;border-radius:0;box-shadow:inset 0 0 0 1px #e0e0e0,0 0 0 15px #3e2723,inset 0 2px 4px #0000001a,0 10px 30px #0000004d;cursor:pointer;max-height:70vh;max-width:600px;overflow:visible;padding:20px;position:relative;transform:rotate(-3deg);transition:transform .3s ease,box-shadow .3s ease;width:90%}.celebration-image-wrapper:before{background:linear-gradient(135deg,#8b45131a,#0000 20%,#0000 80%,#6543211a);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.celebration-image-wrapper:hover{box-shadow:inset 0 0 0 1px #e0e0e0,0 0 0 15px #3e2723,inset 0 2px 4px #0000001a,0 15px 45px #0006;transform:rotate(-3deg) translateY(-8px) scale(1.02)}.celebration-image{display:block;object-fit:cover}.celebration-image,.celebration-image-placeholder{height:100%;position:relative;width:100%;z-index:0}.celebration-image-placeholder{align-items:center;background:linear-gradient(135deg,#ffecd2,#fcb69f);cursor:pointer;display:flex;flex-direction:column;justify-content:center;transition:background .3s ease}.celebration-image-placeholder:hover{background:linear-gradient(135deg,#fcb69f,#ffecd2)}.celebration-placeholder-icon{animation:bounce 2s infinite;font-size:80px;margin-bottom:20px}.celebration-placeholder-text{color:#8b4513;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:16px;font-weight:600;margin:0}.celebration-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:25px}.celebration-upload-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 8px 20px #667eea66;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s ease;white-space:nowrap}.celebration-upload-btn:hover{box-shadow:0 12px 30px #667eea99;transform:translateY(-3px)}.celebration-type-badge{margin:0}.celebration-badge{border-radius:50px;box-shadow:0 6px 20px #00000026;display:inline-block;font-family:Comic Sans MS,Arial Rounded MT Bold,cursive;font-size:18px;font-weight:700;padding:12px 28px}.celebration-badge-birthday{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.celebration-badge-anniversary{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.celebration-message-section{background:linear-gradient(180deg,#fefdfb 0,#f9f6f0);background-image:linear-gradient(180deg,#fefdfb 0,#f9f6f0),repeating-linear-gradient(0deg,#0000,#0000 1.5px,#8b451308 0,#8b451308 3px);display:flex;flex-direction:column;justify-content:space-between;padding:30px;position:relative}.celebration-message-header{margin-bottom:30px}.celebration-message-title{color:#e91e63;font-family:Lucida Calligraphy,Monotype Corsiva,Apple Chancery,cursive;font-size:64px;font-weight:700;line-height:1.2;margin:0 0 30px;text-align:center;text-shadow:4px 4px 8px #e91e634d}.celebration-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b6b,#ee5a6f 50%,#c44569);-webkit-background-clip:text;background-clip:text;color:#2d3748;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.1));font-family:Georgia,Palatino Linotype,Times New Roman,serif;font-size:90px;font-weight:700;margin-bottom:40px;text-align:center;text-shadow:3px 3px 6px #00000026}.celebration-message-body{align-items:center;display:flex;flex:1 1;flex-direction:column;padding:20px 0}.celebration-date-display{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:3px solid #2d3748;border-radius:20px;box-shadow:0 4px 15px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.celebration-date-day{color:#1a202c;font-family:Georgia,Times New Roman,serif;font-size:120px;font-weight:900;line-height:1;margin-bottom:5px;text-shadow:2px 2px 4px #00000026}.celebration-date-month{color:#2d3748;font-family:Trebuchet MS,Arial,sans-serif;font-size:40px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.celebration-message-text{color:#5f27cd;font-family:Palatino Linotype,Book Antiqua,URW Palladio L,serif;font-size:28px;font-style:italic;font-weight:500;line-height:1.6;margin:0 0 30px;text-align:center;text-shadow:2px 2px 4px #5f27cd1a}.celebration-church-name{color:#0984e3;font-family:Copperplate,Papyrus,"fantasy";font-size:20px;font-weight:700;letter-spacing:1px;margin:20px 0 0;text-align:center;text-shadow:2px 2px 4px #0984e333}.celebration-date-info{align-items:center;background:linear-gradient(135deg,#667eea15,#764ba215);border-left:4px solid #667eea;border-radius:15px;display:flex;gap:12px;justify-content:center;margin-top:30px;padding:16px}.celebration-date-icon{font-size:28px}.celebration-date-text{color:#667eea;font-family:Trebuchet MS,Lucida Sans Unicode,sans-serif;font-size:20px;font-weight:600}.celebration-nav-arrow{align-items:center;background:#fffffff2;border:none;border-radius:50%;box-shadow:0 8px 20px #0003;color:#667eea;cursor:pointer;display:flex;font-size:40px;font-weight:300;height:60px;justify-content:center;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:100}.celebration-nav-arrow:hover{background:#fff;box-shadow:0 12px 30px #0000004d;color:#764ba2;transform:translateY(-50%) scale(1.1)}.celebration-nav-left{left:-30px}.celebration-nav-right{right:-30px}.celebration-dots{display:flex;gap:12px;justify-content:center;margin-top:15px}.celebration-dot{background:#ffffff80;border:none;border-radius:50%;cursor:pointer;height:12px;padding:0;transition:all .3s ease;width:12px}.celebration-dot:hover{background:#fffc;transform:scale(1.2)}.celebration-dot-active{background:#fff;border-radius:6px;width:40px}.celebration-slideshow-loading{color:#fff;padding:100px 20px;text-align:center}.celebration-spinner{animation:spin 1s linear infinite;border:6px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:60px;margin:0 auto 20px;width:60px}.celebration-slideshow-loading p{font-size:20px;font-weight:600}.celebration-slideshow-empty{color:#fff;padding:100px 20px;text-align:center}.celebration-empty-icon{animation:bounce 2s infinite;font-size:100px;margin-bottom:30px}.celebration-slideshow-empty h2{font-family:Georgia,Palatino,serif;font-size:36px;margin:0 0 15px;text-shadow:0 2px 8px #0003}.celebration-slideshow-empty p{font-size:18px;opacity:.9}@media (max-width:968px){.celebration-slideshow-card{grid-template-columns:1fr;height:auto;max-height:none;min-height:auto}.celebration-image-section,.celebration-message-section{padding:20px}.celebration-slideshow-title{font-size:32px}.celebration-title-icon{font-size:28px}.celebration-message-title{font-size:48px}.celebration-name{font-size:42px}.celebration-message-text{font-size:22px}.celebration-church-name{font-size:17px}.celebration-nav-arrow{font-size:32px;height:50px;width:50px}.celebration-nav-left{left:-25px}.celebration-nav-right{right:-25px}}@media (max-width:640px){.celebration-slideshow-container{justify-content:flex-start;min-height:100vh;padding:10px}.celebration-slideshow-title{font-size:20px;gap:8px;margin:10px 0}.celebration-title-icon{font-size:18px}.celebration-slideshow-card{border-radius:15px;height:auto;max-height:none}.celebration-image-section{padding:15px}.celebration-image-section,.celebration-message-section{padding:10px}.celebration-image-wrapper{max-width:280px}.celebration-message-title{font-size:36px}.celebration-name{font-size:32px}.celebration-message-text{font-size:18px;line-height:1.5}.celebration-date-display{margin-bottom:20px;padding:15px}.celebration-date-day{font-size:64px}.celebration-date-month{font-size:22px}.celebration-church-name{font-size:15px}.celebration-nav-arrow{font-size:28px;height:40px;width:40px}.celebration-nav-left{left:5px}.celebration-nav-right{right:5px}.celebration-placeholder-icon{font-size:60px}.celebration-type-badge,.celebration-upload-btn{display:none}}.thumbnail-creator{background:linear-gradient(135deg,#667eea,#764ba2);margin:0 auto;max-width:1600px;min-height:100vh;padding:20px}.creator-header{color:#fff;margin-bottom:30px;text-align:center}.creator-header h1{font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px #0000004d}.creator-header p{font-size:1.1rem;opacity:.9}.creator-container{background:#fff;border-radius:15px;box-shadow:0 10px 40px #0003;display:flex;gap:30px;padding:30px}.canvas-area{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:15px}.thumbnail-canvas{background:#f0f0f0;border:3px solid #667eea;border-radius:10px;box-shadow:0 5px 20px #00000026;height:auto;max-width:900px;width:100%}.canvas-info{color:#666;font-size:.9rem}.controls-panel{display:flex;flex-direction:column;gap:20px;max-height:85vh;overflow-y:auto;padding-right:10px;width:350px}.controls-panel::-webkit-scrollbar{width:8px}.controls-panel::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.controls-panel::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.control-section{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;padding:20px}.control-section h3{border-bottom:2px solid #667eea;color:#333;font-size:1.1rem;margin-bottom:15px;margin-top:0;padding-bottom:8px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.section-header h3{border:none;margin:0;padding:0}.btn-add,.btn-download,.btn-upload{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .3s ease;width:100%}.btn-upload{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-upload:hover{box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.btn-add{background:#28a745;font-size:.9rem;padding:8px 15px;width:auto}.btn-add:hover{background:#218838}.btn-download{background:linear-gradient(135deg,#f093fb,#f5576c);font-size:1.1rem;margin-top:10px}.btn-download:hover{box-shadow:0 5px 15px #f5576c66;transform:translateY(-2px)}.text-elements-list{display:flex;flex-direction:column;gap:8px}.text-element-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:all .2s ease}.text-element-item:hover{background:#f0f4ff;border-color:#667eea}.text-element-item.selected{background:linear-gradient(135deg,#e0e7ff,#f0f4ff);border-color:#667eea;box-shadow:0 2px 8px #667eea4d}.btn-remove{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:28px;justify-content:center;transition:all .2s ease;width:28px}.btn-remove:hover{background:#c82333;transform:scale(1.1)}.text-controls{display:flex;flex-direction:column;gap:12px}.text-controls label{color:#555;display:flex;flex-direction:column;font-size:.9rem;font-weight:500;gap:5px}.text-controls input[type=number],.text-controls input[type=text],.text-controls select{border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;padding:8px 12px;transition:border-color .2s ease}.text-controls input[type=number]:focus,.text-controls input[type=text]:focus,.text-controls select:focus{border-color:#667eea;outline:none}.text-controls input[type=color]{border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;height:40px;width:100%}.checkbox-label{flex-direction:row!important;gap:10px!important}.checkbox-label input[type=checkbox]{height:18px;width:18px}.logo-controls{display:flex;flex-direction:column;gap:10px;margin-top:10px}.logo-controls label{align-items:center;color:#555;display:flex;font-size:.9rem;justify-content:space-between}.logo-controls input{border:2px solid #e0e0e0;border-radius:6px;padding:6px 10px;width:100px}@media (max-width:1200px){.creator-container{flex-direction:column}.controls-panel{max-height:none;width:100%}}@media (max-width:768px){.thumbnail-creator{padding:10px}.creator-header h1{font-size:1.8rem}.creator-container{padding:15px}.controls-panel{padding-right:0}}.admin-chat-panel{background:#f5f5f5;display:flex;flex-direction:column;height:calc(100vh - 60px);padding:20px}.chat-panel-header{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.chat-panel-header h2{color:#333;font-size:1.8rem;margin:0}.chat-stats{display:flex;gap:15px}.stat-badge{border-radius:20px;font-size:.9rem;font-weight:600;padding:8px 16px}.stat-badge.waiting{background:#fff3cd;color:#856404}.stat-badge.active{background:#d1ecf1;color:#0c5460}.chat-panel-container{display:flex;flex:1 1;gap:20px;overflow:hidden}.sessions-sidebar{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden;width:320px}.sessions-filter{border-bottom:1px solid #e0e0e0;display:flex;gap:8px;padding:15px}.sessions-filter button{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:8px 12px;transition:all .2s ease}.sessions-filter button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.sessions-filter button:hover:not(.active){background:#f0f4ff;border-color:#667eea}.sessions-list{flex:1 1;overflow-y:auto;padding:10px}.sessions-list::-webkit-scrollbar{width:6px}.sessions-list::-webkit-scrollbar-track{background:#f1f1f1}.sessions-list::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.no-sessions{color:#999;height:200px;justify-content:center}.no-sessions,.session-item{align-items:center;display:flex}.session-item{background:#f8f9fa;border:2px solid #0000;border-radius:8px;cursor:pointer;justify-content:space-between;margin-bottom:8px;padding:15px;transition:all .2s ease}.session-item:hover{background:#e9ecef;border-color:#667eea}.session-item.selected{background:linear-gradient(135deg,#e0e7ff,#f0f4ff);border-color:#667eea;box-shadow:0 2px 8px #667eea33}.session-item.waiting{border-left:4px solid #ffc107}.session-item.active{border-left:4px solid #28a745}.session-info{flex:1 1}.session-name{align-items:center;color:#333;display:flex;font-weight:600;gap:8px;margin-bottom:4px}.new-badge{background:#f44;border-radius:4px;color:#fff;font-size:.7rem;font-weight:700;padding:2px 6px}.session-meta{align-items:center;display:flex;gap:8px;justify-content:space-between}.session-time{color:#666;font-size:.8rem}.unread-badge{background:#667eea;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:2px 8px}.session-status-indicator{font-size:1.3rem}.chat-area{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.chat-area-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.visitor-info h3{color:#333;font-size:1.3rem;margin:0 0 4px}.visitor-email{color:#666;font-size:.9rem;margin:0 0 8px}.status-label{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 12px}.status-label.waiting{background:#fff3cd;color:#856404}.status-label.active{background:#d4edda;color:#155724}.btn-close-session{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s ease}.btn-close-session:hover{background:#c82333}.chat-messages-area{background:#f8f9fa;display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.chat-messages-area::-webkit-scrollbar{width:8px}.chat-messages-area::-webkit-scrollbar-track{background:#f1f1f1}.chat-messages-area::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.chat-message{display:flex}.admin-message{justify-content:flex-end}.visitor-message{justify-content:flex-start}.message-bubble{display:flex;flex-direction:column;gap:4px;max-width:70%}.message-sender{font-size:.8rem;font-weight:600;padding:0 8px}.admin-message .message-sender{color:#667eea;text-align:right}.visitor-message .message-sender{color:#666;text-align:left}.message-text{word-wrap:break-word;border-radius:12px;font-size:.95rem;line-height:1.4;padding:12px 16px}.admin-message .message-text{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:4px;color:#fff}.visitor-message .message-text{background:#fff;border:1px solid #e0e0e0;border-bottom-left-radius:4px;color:#333}.message-timestamp{color:#999;font-size:.75rem;padding:0 8px}.admin-message .message-timestamp{text-align:right}.visitor-message .message-timestamp{text-align:left}.chat-input-area{background:#fff;border-top:1px solid #e0e0e0;padding:20px}.chat-input-area form{display:flex;gap:12px}.admin-chat-input{border:2px solid #e0e0e0;border-radius:8px;flex:1 1;font-size:.95rem;padding:12px 16px;transition:border-color .2s ease}.admin-chat-input:focus{border-color:#667eea;outline:none}.btn-send-admin{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 30px;transition:transform .2s ease}.btn-send-admin:hover:not(:disabled){transform:translateY(-2px)}.btn-send-admin:disabled{cursor:not-allowed;opacity:.5}.no-chat-selected{align-items:center;display:flex;height:100%;justify-content:center}.empty-state{color:#999}.empty-state svg{margin-bottom:20px;opacity:.3}.empty-state h3{color:#666;margin:0 0 10px}.empty-state p{color:#999}@media (max-width:1024px){.sessions-sidebar{width:280px}}@media (max-width:768px){.admin-chat-panel{height:100vh;padding:5px}.chat-panel-header{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:10px;padding:15px}.chat-panel-header h2{font-size:1.3rem}.chat-stats{gap:10px;width:100%}.stat-badge{flex:1 1;font-size:.85rem;padding:6px 12px;text-align:center}.chat-panel-container{flex-direction:column;gap:0;height:calc(100vh - 150px)}.sessions-sidebar{border-radius:8px;margin-bottom:10px;max-height:35vh;width:100%}.sessions-filter{padding:10px}.sessions-filter button{font-size:.8rem;padding:6px 8px}.session-item{padding:12px}.chat-area{border-radius:8px;flex:1 1;min-height:0}.chat-area-header{padding:15px}.visitor-info h3{font-size:1.1rem}.visitor-email{font-size:.85rem}.btn-close-session{font-size:.9rem;padding:8px 16px}.chat-messages-area{padding:15px}.message-bubble{max-width:85%}.chat-input-area{padding:15px}.admin-chat-input{font-size:.9rem;padding:10px 14px}.btn-send-admin{font-size:.9rem;padding:10px 20px}.no-chat-selected .empty-state svg{height:60px;width:60px}.no-chat-selected .empty-state h3{font-size:1rem}.no-chat-selected .empty-state p{font-size:.9rem}}@media (max-width:480px){.chat-panel-header h2{font-size:1.1rem}.sessions-sidebar{max-height:30vh}.sessions-filter button{font-size:.75rem;padding:5px 6px}.session-item{padding:10px}.session-name{font-size:.9rem}.session-time{font-size:.75rem}.chat-input-area form{gap:8px}.admin-chat-input{font-size:.85rem;padding:8px 12px}.btn-send-admin{font-size:.85rem;padding:8px 16px}}.member-portal-login-container{align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);display:flex;justify-content:center;min-height:100vh;padding:20px}.member-portal-login-card{animation:fadeInUp .5s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:40px;width:100%}.member-portal-header{margin-bottom:30px;text-align:center}.member-portal-header h1{color:#48bb78;font-size:28px;font-weight:700;margin-bottom:10px}.member-portal-header h2{color:#2d3748;font-size:24px;font-weight:600;margin-bottom:8px}.member-portal-header p{color:#718096;font-size:14px}.member-portal-form{display:flex;flex-direction:column;gap:20px}.member-portal-footer{display:flex;flex-direction:column;gap:12px;padding-top:10px}.member-portal-footer,.signup-section{border-top:1px solid #e2e8f0;text-align:center}.signup-section{color:#718096;font-size:14px;padding:15px 0}.signup-section p{margin:0}.link-button-signup{background:none;border:none;color:#48bb78;cursor:pointer;font-size:14px;font-weight:600;padding:0;text-decoration:none}.link-button-signup:hover{color:#38a169;text-decoration:underline}.link-button{background:none;border:none;color:#48bb78;cursor:pointer;font-size:14px;text-decoration:underline}.link-button:hover{color:#38a169}.home-link-button{align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;box-shadow:0 2px 8px #48bb784d;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;transition:all .3s ease}.home-link-button:hover{box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.home-link-button .home-icon{font-size:16px}.member-portal-layout{background:#f7fafc;min-height:100vh}.member-portal-nav{align-items:center;background:#fff;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:16px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.member-portal-nav-left{align-items:center;display:flex;gap:32px}.member-portal-logo{align-items:center;display:flex;gap:12px}.logo-image{height:45px;width:auto}.member-portal-nav-left h2{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.member-nav-links{display:flex;gap:8px}.nav-link{align-items:center;background:none;border:none;border-radius:6px;color:#4a5568;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.nav-link:hover{background:#edf2f7;color:#667eea}.member-portal-nav-right{align-items:center;display:flex;gap:12px;min-width:0}.notification-container{position:relative}.notification-bell{background:none;border:none;border-radius:50%;cursor:pointer;font-size:22px;padding:8px;position:relative;transition:all .2s}.notification-bell:hover{background:#f7fafc;transform:scale(1.1)}.notification-badge{background:#f56565;border-radius:10px;color:#fff;font-size:10px;font-weight:700;min-width:18px;padding:2px 5px;position:absolute;right:4px;text-align:center;top:4px}.member-name{color:#4a5568;font-size:14px;font-weight:500;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{background:#f56565;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:background .2s}.btn-logout:hover{background:#e53e3e}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:none;font-size:24px;padding:8px}.member-sidebar,.sidebar-overlay{display:none}.member-portal-content{padding:20px}@media (max-width:1024px){.member-portal-nav{padding:12px 20px}.member-portal-nav-left{gap:24px}.member-portal-nav-left h2{font-size:16px}.nav-link{font-size:13px;padding:8px 12px}.btn-logout,.member-name{font-size:12px}.btn-logout{padding:6px 16px}}@media (max-width:768px){.member-portal-nav-left{display:none}.member-portal-nav-right{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:0 8px;width:100%}.notification-container{margin-left:auto;order:2;z-index:300}.member-name{z-index:100}.member-portal-nav{position:relative}.member-center{align-items:center;display:flex;gap:8px;justify-content:center;left:50%;max-width:80%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.member-center .member-name{color:#4a5568;display:inline-block;font-size:13px;max-width:calc(100% - 36px);overflow:hidden;pointer-events:none;text-align:center;text-overflow:ellipsis;white-space:nowrap}.member-center .notification-container{margin-left:0;order:0;pointer-events:auto;position:static}.btn-logout{display:none}.member-portal-nav{gap:12px;min-height:auto;padding:12px 16px}.mobile-menu-toggle{align-items:center;display:flex;font-size:20px;justify-content:center;margin-right:8px;order:-1}.member-sidebar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:2px 0 12px #00000026;display:flex;flex-direction:column;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;width:100%;z-index:200}.member-sidebar.open{transform:translateX(0)}.sidebar-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;padding:24px 16px}.sidebar-header,.sidebar-logo{align-items:center;display:flex}.sidebar-logo{color:#fff;gap:12px;text-decoration:none}.sidebar-logo-image{filter:brightness(0) invert(1);height:40px;width:auto}.sidebar-logo h2{color:#fff;font-size:16px;font-weight:700;margin:0}.sidebar-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;padding:16px 0}.sidebar-nav .nav-link{align-items:center;background:none;border:none;color:#fffc;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:12px;padding:16px 20px;text-align:left;transition:all .2s;width:100%}.sidebar-nav .nav-link:hover{background:#ffffff26;color:#fff}.nav-icon{align-items:center;display:flex;font-size:18px;justify-content:center;min-width:24px}.nav-text{flex:1 1}.sidebar-footer{border-top:1px solid #ffffff1a;padding:16px}.sidebar-footer .btn-logout{background:#fff3;border:1px solid #ffffff4d;color:#fff;display:block;padding:12px 16px;width:100%}.sidebar-footer .btn-logout:hover{background:#ffffff4d;border-color:#ffffff80}.sidebar-overlay{background:#00000080;display:block;inset:0;position:fixed}.member-portal-nav{position:-webkit-sticky;position:sticky}.member-portal-content{padding:16px}.notification-bell{font-size:20px}}@media (max-width:480px){.member-portal-nav{height:auto;min-height:56px;padding:10px 12px}.mobile-menu-toggle{font-size:18px;min-width:40px;padding:6px}.member-portal-nav-right{flex-shrink:0;gap:8px}.notification-container{align-items:center;display:flex;flex-shrink:0;margin-left:auto;order:2;position:relative;z-index:400}.notification-bell{align-items:center;background:none;color:#2c3e50;display:flex;font-size:18px;justify-content:center;padding:4px}.notification-badge{font-size:9px;padding:1px 3px;right:2px;top:2px}.member-portal-content{padding:12px}.sidebar-header{padding:16px 12px}.sidebar-close{font-size:20px;height:28px;width:28px}.sidebar-logo h2{font-size:13px}.sidebar-logo-image{height:32px}.sidebar-nav .nav-link{font-size:14px;padding:12px 16px}.nav-icon{font-size:16px;min-width:20px}.sidebar-footer{padding:12px}.sidebar-footer .btn-logout{font-size:13px;padding:10px 12px}}.member-portal-dashboard{margin:0 auto;max-width:1200px;padding:24px}.member-portal-header-section{margin-bottom:32px}.member-portal-header-section h1{color:#2d3748;font-size:28px;font-weight:700;margin:0 0 8px}.member-portal-header-section p{color:#718096;font-size:16px;margin:0}.member-portal-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.member-portal-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.member-portal-card.full-width{grid-column:1/-1}.member-portal-card h3{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 20px}.profile-info{display:flex;flex-direction:column;gap:16px}.profile-picture-section{border-bottom:1px solid #e2e8f0;display:flex;justify-content:center;margin-bottom:16px;padding:20px 0}.profile-picture{border:4px solid #667eea;border-radius:50%;box-shadow:0 4px 12px #667eea4d;height:150px;object-fit:cover;width:150px}.profile-item{border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;padding:12px 0}.profile-item:last-child{border-bottom:none}.profile-item .label{color:#4a5568;font-size:14px;font-weight:600}.profile-item .value{color:#2d3748;font-size:16px}.profile-item .badge{background:#bee3f8;border-radius:12px;color:#2c5282;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.profile-actions{display:flex;gap:8px;margin-top:12px}.btn-edit-profile{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 12px}.btn-edit-profile:hover{background:#5563d6}.weekly-events-card .card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.weekly-events-card .card-header h3{margin:0}.week-label{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px}.no-data-state{padding:40px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:12px}.no-data-state p{color:#a0aec0;font-size:14px;margin:0}.weekly-events-list{display:flex;flex-direction:column;gap:16px;max-height:400px;overflow-y:auto;padding-right:8px}.weekly-events-list::-webkit-scrollbar{width:6px}.weekly-events-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.weekly-events-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:10px}.weekly-events-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.weekly-event-item{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:12px;padding:16px}.weekly-event-item.compact{gap:12px;padding:12px}.weekly-event-item:hover{box-shadow:0 4px 12px #667eea26;transform:translateX(8px)}.weekly-event-item.compact .event-date-badge{border-radius:10px;height:55px;min-width:55px}.weekly-event-item.compact .event-date-badge .day{font-size:22px}.weekly-event-item.compact .event-date-badge .month{font-size:10px}.event-title{font-size:16px}.weekly-event-item.compact .event-title{font-size:15px}.event-description{font-size:13px}.weekly-event-item.compact .event-meta-info{gap:12px;margin-top:2px}.weekly-event-item.compact .meta-item{font-size:12px;gap:4px}.weekly-event-item.compact .meta-item .icon{font-size:13px}.available-events-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.available-event-card{background:#f7fafc;border-radius:8px;padding:20px;transition:transform .2s,box-shadow .2s}.available-event-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-4px)}.available-event-card h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 8px}.available-event-card .description{color:#718096;font-size:14px;line-height:1.5;margin:0 0 16px}.event-meta{color:#4a5568;font-size:13px;gap:8px;margin-bottom:16px}.btn-register{background:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:background .2s;width:100%}.btn-register:hover{background:#38a169}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:1fr 1fr}.stat-item{background:#f7fafc;border-radius:8px;padding:20px;text-align:center}.stat-value{color:#48bb78;display:block;margin-bottom:8px}.stat-label{font-size:13px}.no-data{color:#a0aec0;padding:40px 0}@media (max-width:768px){.available-events-grid,.member-portal-grid,.stats-grid{grid-template-columns:1fr}.member-portal-dashboard{padding:16px}.member-portal-header-section h1{font-size:22px}.member-portal-header-section p{font-size:14px}.member-portal-card{padding:16px}.profile-item{flex-direction:column;gap:4px}.label{font-weight:600}}@media (max-width:480px){.member-portal-dashboard{padding:12px}.member-portal-grid{gap:16px}.member-portal-header-section{margin-bottom:16px}.member-portal-header-section h1{font-size:18px}.member-portal-header-section p{font-size:12px}.member-portal-card{padding:12px}.member-portal-card h3{font-size:16px;margin-bottom:12px}.stat-item{padding:12px}.stat-value{font-size:24px}.stat-label{font-size:11px}.available-event-card{padding:12px}.available-event-card h4{font-size:14px}.available-event-card .description,.event-meta{font-size:12px}.event-meta{gap:8px}.btn-register{font-size:12px;margin-top:8px;padding:8px 12px}.weekly-event-item{gap:8px;padding:12px}.event-date-badge{min-width:40px}.event-title{font-size:13px}.event-meta-info{font-size:11px;gap:4px}}.member-donation-container{margin:0 auto;max-width:900px;padding:24px}.donation-header h1{color:#2d3748;font-size:36px;margin-bottom:12px}.donation-header p{color:#718096;font-size:16px;margin:0 auto;max-width:600px}.donation-form{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:32px}.form-section{border-bottom:2px solid #f7fafc;margin-bottom:32px;padding-bottom:32px}.form-section:last-of-type{border-bottom:none}.form-section h3{font-size:18px}.donation-type-selector{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.type-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:16px;font-weight:600;gap:8px;padding:20px;transition:all .2s}.type-btn:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.type-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.type-icon{font-size:32px}.category-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.category-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px;padding:16px;transition:all .2s}.category-btn:hover{border-color:#667eea;transform:translateY(-2px)}.category-btn.active{background:#eef2ff;border-color:#667eea;color:#667eea}.category-icon{font-size:28px}.amount-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.amount-btn{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;font-size:18px;font-weight:700;padding:16px;transition:all .2s}.amount-btn:hover{border-color:#667eea;transform:translateY(-2px)}.amount-btn.active{background:#c6f6d5;border-color:#38a169;color:#22543d}.custom-amount{margin-top:20px}.custom-amount label{color:#4a5568;display:block;font-size:14px;font-weight:600;margin-bottom:12px}.amount-input-wrapper{max-width:300px;position:relative}.currency-symbol{color:#4a5568;font-size:20px;font-weight:700;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.amount-input-wrapper input{border:2px solid #e2e8f0;border-radius:8px;font-size:18px;font-weight:600;padding:14px 16px 14px 40px;transition:border-color .2s;width:100%}.amount-input-wrapper input:focus{border-color:#667eea;outline:none}.payment-methods{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.payment-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:8px;padding:16px 12px;transition:all .2s}.payment-btn:hover{border-color:#667eea;transform:translateY(-2px)}.payment-btn.active{background:#eef2ff;border-color:#667eea;color:#667eea}.payment-icon{font-size:28px}.payment-details{background:#f7fafc;border-radius:12px;margin-top:24px;padding:24px}.form-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(2,1fr)}.form-group.full-width{grid-column:1/-1}.form-group input,.form-group select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#667eea;outline:none}.payment-info-box{background:#eef2ff;border:2px solid #c3dafe;border-radius:10px;margin-top:16px;padding:20px}.payment-info-box h4{color:#2d3748;font-size:16px;margin:0 0 12px}.payment-info-box p{color:#4a5568;font-size:14px;margin:8px 0}.payment-info-box address{color:#2d3748;font-style:normal;font-weight:500;line-height:1.8;margin:12px 0}.info-note{color:#718096;font-size:13px;font-style:italic}.bank-details{background:#fff;border-radius:8px;margin:16px 0;padding:16px}.detail-row{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-value{color:#2d3748;font-family:Courier New,monospace;font-size:14px;font-weight:600}.crypto-info{background:#fffaf0;border-color:#fbd38d}.wallet-address{align-items:center;background:#fff;border-radius:8px;display:flex;gap:12px;margin:12px 0;padding:12px 16px}.wallet-address code{color:#2d3748;flex:1 1;font-family:Courier New,monospace;font-size:14px;font-weight:600}.copy-btn{background:#667eea;border-radius:6px;color:#fff;font-size:12px;font-weight:600;padding:6px 12px;transition:background .2s}.copy-btn:hover{background:#5568d3}.checkbox-label{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px}.checkbox-label input[type=checkbox]{cursor:pointer;height:20px;width:20px}.donation-summary{background:#f7fafc;border-radius:12px;margin-bottom:24px;padding:24px}.donation-summary h3{color:#2d3748;font-size:18px;font-weight:700;margin-bottom:16px}.summary-row{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 0}.summary-row:last-child{border-bottom:none;padding-bottom:0}.summary-row span{color:#718096;font-size:14px}.summary-row strong{color:#2d3748;font-size:16px;font-weight:600}.submit-btn{background:linear-gradient(135deg,#38a169,#2f855a);border:none;border-radius:12px;box-shadow:0 4px 12px #38a1694d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;padding:18px;transition:all .3s;width:100%}.submit-btn:hover:not(:disabled){box-shadow:0 6px 16px #38a16966;transform:translateY(-2px)}.submit-btn:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed}.secure-note{color:#718096;font-size:13px;margin-top:20px;text-align:center}@media (max-width:768px){.member-donation-container{padding:16px}.donation-form{padding:20px}.donation-header h1{font-size:28px}.amount-grid,.category-grid,.payment-methods{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-group{grid-column:1}}@media (max-width:480px){.donation-header h1{font-size:24px}.donation-type-selector{grid-template-columns:1fr}.amount-grid,.category-grid{grid-template-columns:repeat(2,1fr)}.payment-methods{grid-template-columns:1fr}}.receipt-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.receipt-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:100%}.receipt-close-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:35px;justify-content:center;position:absolute;right:15px;top:15px;width:35px;z-index:10}.receipt-close-btn:hover{background:#c82333}.receipt-container{background:#fff;padding:40px}.receipt-header{border-bottom:3px solid #4a90e2;margin-bottom:30px;padding-bottom:20px;text-align:center}.receipt-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0 0 10px}.church-address{color:#495057;font-size:13px;line-height:1.6;margin:10px 0 15px}.receipt-subtitle{color:#7f8c8d;font-size:14px;letter-spacing:1px;margin:0;text-transform:uppercase}.receipt-info-bar{background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:30px;padding:15px 20px}.receipt-date,.receipt-number{color:#2c3e50;font-size:14px}.receipt-section{margin-bottom:30px}.receipt-section h3{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:18px;margin-bottom:15px;padding-bottom:8px}.receipt-details p{color:#495057;font-size:14px;margin:8px 0}.receipt-table{border-collapse:collapse;margin-top:10px;width:100%}.receipt-table td,.receipt-table th{border-bottom:1px solid #dee2e6;padding:12px;text-align:left}.receipt-table th{color:#2c3e50;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.receipt-table tbody tr:hover,.receipt-table th{background:#f8f9fa}.receipt-amount,.receipt-total{font-family:Courier New,monospace;text-align:right}.receipt-table tfoot td{border-top:2px solid #2c3e50;font-size:16px;padding-top:15px}.receipt-total{color:#28a745;font-size:18px}.receipt-tax-info{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;padding:15px}.receipt-tax-info h3{border:none;margin-bottom:10px}.receipt-tax-info p{color:#856404;font-size:13px;margin:5px 0}.receipt-footer{border-top:2px solid #e9ecef;margin-top:40px;padding-top:20px;text-align:center}.receipt-footer p{color:#6c757d;margin:10px 0}.receipt-signature{color:#2c3e50!important;font-style:italic;margin-top:30px!important}.receipt-disclaimer{color:#adb5bd!important;font-size:11px;margin-top:20px!important}.receipt-actions{background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:15px;justify-content:center;padding:20px 40px}.btn-close-receipt,.btn-print{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 30px;transition:all .3s ease}.btn-print{background:#28a745;color:#fff}.btn-print:hover{background:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.btn-close-receipt{background:#6c757d;color:#fff}.btn-close-receipt:hover{background:#5a6268}@media print{@page{margin:.5in}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden}.receipt-modal-overlay{background:#fff!important;position:static!important}.receipt-modal-content{box-shadow:none!important;max-height:none!important;max-width:100%!important;overflow:visible!important;position:static!important}.receipt-container,.receipt-container *{visibility:visible!important}.receipt-container{background:#fff;left:0;padding:20px;position:absolute;top:0;width:100%}.receipt-actions,.receipt-close-btn{display:none!important}.receipt-footer,.receipt-header,.receipt-info-bar,.receipt-section,.receipt-table{page-break-inside:avoid}.receipt-table{border-collapse:collapse}.receipt-table td,.receipt-table th{border:1px solid #dee2e6!important}}@media (max-width:768px){.receipt-container{padding:20px}.receipt-header h1{font-size:24px}.receipt-info-bar{flex-direction:column;gap:10px}.receipt-actions{flex-direction:column;padding:15px 20px}.btn-close-receipt,.btn-print{width:100%}}.donation-history-container{margin:0 auto;max-width:1000px;padding:24px}.history-header{margin-bottom:32px}.history-header h2{color:#2d3748;font-size:28px;font-weight:700;margin-bottom:24px}.history-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:8px;padding:24px}.stat-label{color:#718096;font-size:14px;font-weight:500}.stat-value{color:#38a169;font-size:32px;font-weight:700}.history-filters{margin-bottom:24px}.year-filter{background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:200px;padding:12px 16px}.year-filter:focus{border-color:#667eea;outline:none}.donations-list{display:flex;flex-direction:column;gap:16px}.donation-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;padding:24px;transition:transform .2s,box-shadow .2s}.donation-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.donation-info{flex:1 1}.donation-main{align-items:center;display:flex;gap:16px;margin-bottom:12px}.donation-amount{color:#38a169;font-size:28px;font-weight:700}.donation-category{background:#eef2ff;border-radius:8px;color:#667eea;font-size:14px;font-weight:600;padding:6px 12px}.donation-details{color:#718096;display:flex;flex-wrap:wrap;font-size:14px;gap:16px}.donation-date,.donation-method{align-items:center;display:flex;gap:4px}.donation-type{border-radius:6px;font-size:13px;font-weight:600;padding:4px 8px}.donation-type.recurring{background:#c6f6d5;color:#22543d}.donation-type.one-time{background:#bee3f8;color:#2c5282}.donation-actions{align-items:flex-end;display:flex;flex-direction:column;gap:12px}.receipt-number{color:#a0aec0;font-family:Courier New,monospace;font-size:13px}.btn-download{align-items:center;background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;transition:background .2s}.btn-download:hover{background:#5568d3}.no-donations{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center}.no-donations p{color:#a0aec0;font-size:16px;font-style:italic}.loading{color:#667eea;font-weight:600}@media (max-width:768px){.donation-history-container{padding:16px}.history-header h2{font-size:24px}.history-stats{grid-template-columns:1fr}.donation-card{align-items:flex-start;flex-direction:column;gap:16px}.donation-actions{align-items:center;flex-direction:row;justify-content:space-between;width:100%}.donation-details{flex-direction:column;gap:8px}.year-filter{width:100%}}@media (max-width:480px){.donation-amount{font-size:24px}.donation-main{align-items:flex-start;flex-direction:column;gap:8px}}.member-events-container{background:#f7fafc;margin:0 auto;max-width:1000px;min-height:100vh;padding:32px}.member-events-header{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;margin-bottom:40px;padding:32px;text-align:center}.member-events-header h2{color:#2c3e50;font-size:32px;font-weight:700;margin:0 0 12px}.week-info{color:#667eea;font-size:16px;font-weight:600;margin:0}.member-events-loading{color:#fff;font-size:18px;font-weight:600;padding:80px 20px;text-align:center}.no-events{background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;padding:80px 40px;text-align:center}.no-events-icon{animation:float 3s ease-in-out infinite;display:block;font-size:80px;margin-bottom:24px}.no-events p{color:#4a5568;font-size:18px;font-weight:500;margin:0}.events-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.weekly-event-item{background:#fff;border-left:4px solid #667eea;border-radius:16px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;gap:16px;padding:20px;transition:all .3s ease}.weekly-event-item:hover{border-left-color:#764ba2;box-shadow:0 8px 24px #667eea40;transform:translateX(8px) translateY(-4px)}.weekly-event-item.today{background:linear-gradient(135deg,#d4fc79f2,#96e6a1f2);border-left-color:#48bb78;box-shadow:0 8px 24px #48bb784d}.weekly-event-item.today:hover{border-left-color:#38a169;box-shadow:0 12px 32px #48bb7866}.weekly-event-item.past{filter:grayscale(.3);opacity:.7}.weekly-event-item.past:hover{opacity:.85}.event-date-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;flex-direction:column;flex-shrink:0;height:70px;justify-content:center;min-width:70px}.weekly-event-item.today .event-date-badge{animation:pulse-shadow 2s infinite;background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 16px #48bb7866}@keyframes pulse-shadow{0%,to{box-shadow:0 4px 16px #48bb7866}50%{box-shadow:0 8px 24px #48bb7899}}.event-date-badge .day{font-size:26px;font-weight:800;line-height:1;margin-bottom:2px}.event-date-badge .month{font-size:11px;font-weight:600;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.event-date-badge .weekday{font-size:10px;font-weight:500;margin-top:2px;opacity:.8;text-transform:uppercase}.event-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.event-title{color:#2d3748;font-size:17px;font-weight:700;line-height:1.3;margin:0}.weekly-event-item.today .event-title{color:#1a5838}.event-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;line-height:1.5;margin:0;overflow:hidden}.weekly-event-item.today .event-description{color:#2d5a3d}.event-meta-info{display:flex;flex-wrap:wrap;gap:16px;margin-top:4px}.meta-item{align-items:center;color:#4a5568;display:flex;font-size:13px;font-weight:500;gap:6px}.weekly-event-item.today .meta-item{color:#2d5a3d}.meta-item .icon{font-size:14px}.event-type-badge{border-radius:16px;box-shadow:0 2px 8px #0000001a;font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.event-type-badge.worship{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.event-type-badge.youth{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.event-type-badge.special{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#d946a6}.event-type-badge.fellowship{background:linear-gradient(135deg,#d299c2,#fef9d7);color:#7c3aed}.event-type-badge.prayer{background:linear-gradient(135deg,#84fab0,#8fd3f4);color:#059669}.today-badge{animation:pulse-scale 2s infinite;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:16px;box-shadow:0 2px 8px #f5576c66;color:#fff;font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}@keyframes pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.event-description{color:#718096;font-size:14px;margin:4px 0}.event-meta{display:flex;flex-direction:column;gap:4px}.meta-item{font-size:14px;margin:4px 0}.meta-icon{font-size:16px;text-align:center;width:20px}@media (max-width:768px){.member-events-container{padding:20px 16px}.member-events-header{padding:24px 20px}.member-events-header h2{font-size:26px}.week-info{font-size:14px}.events-list{gap:20px;grid-template-columns:1fr}.event-item{padding:24px 20px}.event-date-badge{padding:12px 16px}.day-number{font-size:36px}.event-title{font-size:20px}.event-description,.meta-item{font-size:14px}.meta-icon{font-size:18px}}.member-signup-container{align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);display:flex;justify-content:center;min-height:100vh;padding:20px}.signup-card{animation:slideInUp .5s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:40px;width:100%}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.signup-header{margin-bottom:30px;text-align:center}.signup-header h1{color:#48bb78;font-size:28px;font-weight:700;margin-bottom:8px}.signup-header p{color:#718096;font-size:14px}.signup-form{display:flex;flex-direction:column;gap:20px;margin-bottom:25px}.form-group label{color:#2d3748}.form-group input{border:2px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;transition:all .3s ease}.form-group input:focus{border-color:#48bb78;box-shadow:0 0 0 3px #48bb781a;outline:none}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed}.error-message{background-color:#fed7d7;border-left:4px solid #c53030;border-radius:6px;color:#c53030;font-size:14px;padding:12px}.btn-signup{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .3s ease}.btn-signup:hover:not(:disabled){box-shadow:0 8px 20px #48bb7866;transform:translateY(-2px)}.btn-signup:disabled{cursor:not-allowed;opacity:.6}.signup-footer{border-top:1px solid #e2e8f0;margin-bottom:25px;padding-top:20px;text-align:center}.signup-footer p{color:#718096;font-size:14px;margin-bottom:8px}.btn-login-link{background:none;border:none;color:#48bb78;cursor:pointer;font-size:14px;font-weight:600;text-decoration:underline}.btn-login-link:hover{color:#38a169}.signup-info{background:#f0fdf4;border:2px solid #bbf7d0;border-radius:8px;margin-top:20px;padding:20px}.signup-info h3{color:#48bb78;font-size:14px;margin-bottom:12px}.signup-info ol{margin:0;padding-left:20px}.signup-info li{color:#4a5568;font-size:13px;line-height:1.5;margin-bottom:8px}.signup-info li:last-child{margin-bottom:0}.popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.popup-content{animation:popupIn .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:40px;text-align:center}.popup-icon{animation:iconBounce .6s ease-out;font-size:60px;margin-bottom:20px}@keyframes iconBounce{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.popup-content h2{color:#2d3748;font-size:24px;font-weight:700;margin-bottom:12px}.popup-content>p{color:#718096;font-size:14px;margin-bottom:20px}.popup-message{background:#f0fdf4;border-left:4px solid #48bb78;border-radius:6px;margin:20px 0;padding:16px;text-align:left}.popup-message p{color:#4a5568;font-size:13px;line-height:1.6;margin-bottom:10px}.popup-message p:last-child{margin-bottom:0}.popup-message strong{color:#22543d;font-weight:600}.btn-popup-close{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:20px;padding:12px 32px;transition:all .3s ease}.btn-popup-close:hover{box-shadow:0 8px 20px #48bb7866;transform:translateY(-2px)}.profile-image-upload .image-upload-container{width:100%}.profile-image-upload .image-preview{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:15px}.profile-image-upload .image-preview img{border:3px solid #48bb78;border-radius:50%;height:120px;object-fit:cover;width:120px}.profile-image-upload .remove-image-btn{background:#fc8181;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.profile-image-upload .remove-image-btn:hover{background:#f56565;transform:scale(1.05)}.profile-image-upload .remove-image-btn:disabled{background:#cbd5e0;cursor:not-allowed;transform:none}.profile-image-upload .image-upload-placeholder{width:100%}.profile-image-upload .upload-label{align-items:center;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:30px 20px;text-align:center;transition:all .3s ease}.profile-image-upload .upload-label:hover{background:#edf2f7;border-color:#48bb78}.profile-image-upload .upload-icon{font-size:36px}.profile-image-upload .upload-label>span:nth-child(2){color:#2d3748;font-size:14px;font-weight:600}.profile-image-upload .upload-hint{color:#718096;font-size:12px}@media (max-width:600px){.signup-card{padding:30px 20px}.signup-header h1{font-size:24px}.popup-content{padding:30px 20px}.popup-icon{font-size:48px}.popup-content h2{font-size:20px}.profile-image-upload .image-preview img{height:100px;width:100px}}.admin-member-approvals{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:40px 20px}.approvals-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:1200px;padding:40px}.page-title{color:#2c3e50;font-size:32px;font-weight:700;margin:0 0 10px;text-align:center}.page-subtitle{color:#7f8c8d;font-size:16px;margin:0 0 30px;text-align:center}.error-message{background-color:#fee;border-left:4px solid #e74c3c;color:#c0392b}.error-message,.success-message{animation:slideInDown .3s ease-out;border-radius:4px;margin-bottom:20px;padding:15px 20px}.success-message{background-color:#efe;border-left:4px solid #27ae60;color:#229954}.loading{align-items:center;display:flex;flex-direction:column;justify-content:center}.spinner{border:4px solid #ecf0f1;border-top-color:#3498db;margin-bottom:20px}.loading p{color:#7f8c8d;font-size:16px}.no-data{color:#7f8c8d;padding:60px 20px;text-align:center}.no-data-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#27ae60,#16a085);-webkit-background-clip:text;background-clip:text;display:inline-block;font-size:48px;margin-bottom:20px}.no-data p{font-size:18px;margin:0}.approvals-table-wrapper{margin-top:20px;overflow-x:auto}.approvals-table{border-collapse:collapse;font-size:15px;width:100%}.approvals-table thead{background:linear-gradient(135deg,#34495e,#2c3e50);color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}.approvals-table th{font-weight:600;letter-spacing:.5px;padding:18px;text-align:left}.approvals-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .2s ease}.approvals-table tbody tr:hover{background-color:#f8f9fa}.approvals-table td{color:#2c3e50;padding:18px}.name-cell{font-weight:600}.member-name{background:linear-gradient(135deg,#3498db1a,#2980b91a);border-radius:6px;color:#2980b9;display:inline-block;padding:6px 12px}.email-cell{color:#7f8c8d;word-break:break-all}.phone-cell{color:#7f8c8d;font-family:Courier New,monospace}.date-cell{color:#95a5a6;font-size:14px}.actions-cell{display:flex;flex-wrap:wrap;gap:10px}.btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-approve{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 2px 8px #27ae604d;color:#fff}.btn-approve:hover:not(:disabled){box-shadow:0 4px 12px #27ae6066;transform:translateY(-2px)}.btn-approve:active:not(:disabled){transform:translateY(0)}.btn-reject{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 2px 8px #e74c3c4d;color:#fff}.btn-reject:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.btn-reject:active:not(:disabled){transform:translateY(0)}.btn-primary-large{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;flex:1 1;font-size:16px;padding:12px 32px}.btn-primary-large:hover:not(:disabled){box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;flex:1 1;font-size:14px;padding:12px 24px}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.btn-secondary{background:#ecf0f1;color:#2c3e50;flex:1 1;font-size:14px;padding:12px 24px}.btn-secondary:hover:not(:disabled){background:#bdc3c7}.btn-whatsapp{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;flex:1 1;font-size:14px;padding:12px 24px}.btn-whatsapp:hover:not(:disabled){box-shadow:0 4px 12px #25d36666;transform:translateY(-2px)}.btn-whatsapp:disabled{background:#95a5a6;cursor:not-allowed;opacity:.6}.modal-actions-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.credential-value code{background:#f8f9fa;border-radius:6px;color:#2c3e50;flex:1 1;font-family:Monaco,Courier New,monospace;font-size:14px;padding:8px 12px;word-break:break-all}.btn-cancel{background:#ecf0f1;flex:1 1}.btn-cancel:hover:not(:disabled){background:#bdc3c7}.btn-reject-confirm{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;flex:1 1}.btn-reject-confirm:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.approval-modal-overlay,.reject-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.approval-modal,.reject-modal{animation:popupIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:450px;width:90%}@keyframes popupIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:30px}.modal-header h2{color:#2c3e50;font-size:22px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#95a5a6;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background:#ecf0f1;color:#2c3e50}.modal-content{padding:30px}.approval-success-icon{-webkit-text-fill-color:#0000;animation:bounce .6s ease-out;background:linear-gradient(135deg,#27ae60,#16a085);-webkit-background-clip:text;background-clip:text;font-size:48px;margin-bottom:20px;text-align:center}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.member-info{margin-bottom:30px;text-align:center}.member-info h3{color:#2c3e50;font-size:20px;margin:0 0 8px}.info-email{color:#7f8c8d;font-size:14px;margin:0}.credentials-section{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:20px}.credentials-section h4{color:#2c3e50;font-size:16px;margin:0 0 10px}.credentials-note{color:#7f8c8d;font-size:13px;margin:0 0 15px}.credential-item{margin-bottom:15px}.credential-item:last-child{margin-bottom:0}.credential-item label{color:#2c3e50;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.credential-value{align-items:center;background:#fff;border:1px solid #ecf0f1;border-radius:6px;color:#2c3e50;display:flex;font-family:Courier New,monospace;font-size:14px;gap:8px;padding:10px 12px;word-break:break-all}.copy-btn{background:none;border:none;border-radius:4px;cursor:pointer;flex-shrink:0;font-size:16px;padding:4px 8px;transition:background .2s ease}.copy-btn:hover{background:#ecf0f1}.credentials-warning{background:#fef5e7;border-left:4px solid #f39c12;border-radius:6px;color:#8b6f47;font-size:13px;margin-bottom:20px;padding:15px}.credentials-warning strong{color:#d68910;display:block;margin-bottom:6px}.credentials-warning p{margin:0}.confirm-text{color:#2c3e50;font-size:15px;line-height:1.6;margin-bottom:25px}.modal-actions{display:flex;gap:12px}@media (max-width:768px){.approvals-container{padding:20px}.page-title{font-size:24px}.page-subtitle{font-size:14px}.approvals-table{font-size:13px}.approvals-table td,.approvals-table th{padding:12px}.actions-cell{flex-direction:column;gap:6px}.btn{font-size:12px;padding:6px 12px;width:100%}.approval-modal,.reject-modal{width:95%}.modal-content,.modal-header{padding:20px}.approval-success-icon{font-size:36px;margin-bottom:15px}.member-info h3{font-size:18px}.credentials-section{margin-bottom:15px;padding:15px}.credential-value{align-items:flex-start;flex-direction:column}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.announcement-management{margin:0 auto;max-width:1400px;padding:20px}.announcement-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:30px}.announcement-header h1{color:#2c3e50;font-size:32px;font-weight:700;margin:0}.announcement-header-actions{display:flex;gap:12px}.btn-cleanup,.btn-new-announcement{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-new-announcement{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-new-announcement:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-cleanup{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-cleanup:hover{box-shadow:0 4px 12px #f093fb66;transform:translateY(-2px)}.announcement-form-container{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;margin-bottom:40px;padding:30px}.announcement-form-container h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 24px}.announcement-form{gap:20px}.announcement-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#2c3e50}.form-group input[type=date],.form-group input[type=text],.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease}.form-group input[type=date]:focus,.form-group input[type=text]:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input.error,.form-group textarea.error{border-color:#f5576c}.form-group textarea{min-height:100px;resize:vertical}.error-message{color:#f5576c;font-size:12px;font-weight:500}.helper-text{color:#718096;font-size:12px}.image-preview-container{margin-top:16px;position:relative}.image-preview{border:2px solid #e2e8f0;height:auto;max-width:100%;object-fit:contain;width:100%}.btn-remove-image{background:#f5576c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:8px;padding:8px 16px;transition:all .3s ease}.btn-remove-image:hover{background:#e04c5f}.form-actions{margin-top:8px}.btn-cancel,.btn-submit{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .3s ease}.btn-submit:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-cancel{color:#2c3e50}.announcements-list{margin-top:40px}.announcements-list h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 24px}.no-announcements{background:#fff;border-radius:12px;color:#718096;padding:60px 20px;text-align:center}.announcements-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.expired-badge{background:#f5576c;border-radius:6px;color:#fff;font-size:12px;font-weight:700;padding:6px 12px;position:absolute;right:12px;top:12px;z-index:10}.announcement-image{background:#f7fafc;height:200px;overflow:hidden;width:100%}.announcement-image img{height:100%;object-fit:cover;width:100%}.announcement-content{padding:20px}.announcement-content h3{color:#2c3e50;font-size:18px;font-weight:700;line-height:1.4;margin:0 0 12px}.announcement-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:14px;line-height:1.6;margin:0 0 16px;overflow:hidden}.announcement-meta{border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:6px;padding-top:12px}.meta-item{color:#718096;font-size:12px}.meta-item.expired-date{color:#f5576c;font-weight:600}.announcement-actions{background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;gap:8px;padding:16px}.btn-edit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-edit:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-delete{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-delete:hover{box-shadow:0 4px 12px #f093fb4d;transform:translateY(-2px)}.announcement-loading{color:#718096;font-size:18px;padding:60px 20px;text-align:center}@media (max-width:768px){.announcement-header{align-items:flex-start;flex-direction:column}.announcement-header h1{font-size:24px}.announcement-header-actions{flex-direction:column;width:100%}.btn-cleanup,.btn-new-announcement{width:100%}.announcement-form-container{padding:20px}.announcements-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}@media (max-width:480px){.announcement-management{padding:12px}.announcement-header h1{font-size:20px}.btn-cleanup,.btn-new-announcement{font-size:14px;padding:10px 16px}.announcement-form-container{padding:16px}.image-preview{max-width:100%}}.announcement-detail-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Georgia,Garamond,serif;min-height:100vh;padding:40px 20px}.announcement-back-btn{align-items:center;background:#fff;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:30px;padding:12px 24px;transition:all .3s ease}.announcement-back-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateX(-4px)}.announcement-detail-loading{color:#2c3e50;font-size:18px}.announcement-detail-wrapper{background:#fff;border-radius:4px;box-shadow:0 10px 50px #00000026,0 20px 100px #0000001a;color:#2d3748;line-height:1.8;margin:0 auto;max-width:1000px;padding:60px;position:relative}.announcement-detail-wrapper:before{background:repeating-linear-gradient(90deg,#0000,#0000 2px,#00000003 0,#00000003 4px),repeating-linear-gradient(0deg,#0000,#0000 2px,#00000003 0,#00000003 4px);border-radius:4px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.announcement-expired-banner{background:linear-gradient(135deg,#f56565,#e53e3e);border-radius:12px;box-shadow:0 4px 12px #f565654d;color:#fff;font-weight:600;margin-bottom:32px;padding:16px 24px;text-align:center}.announcement-detail-meta{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;font-family:Arial,sans-serif;gap:20px;margin-bottom:20px;padding-bottom:16px}.announcement-detail-date,.announcement-detail-expiry{color:#4a5568;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.announcement-detail-title{border-bottom:3px solid #1a202c;color:#1a202c;font-family:Georgia,Times New Roman,serif;font-size:48px;font-weight:900;line-height:1.2;margin:0 0 20px;padding-bottom:16px;text-align:left}.announcement-detail-divider{background:#cbd5e0;height:2px;margin-bottom:30px;width:100%}.announcement-detail-image{background:#fff;border:1px solid #cbd5e0;box-shadow:0 4px 12px #0000001a;margin:0 0 30px;width:100%}.announcement-detail-image img{display:block;height:auto;max-height:600px;object-fit:contain;width:100%}@media (min-width:768px){.announcement-detail-content-grid.portrait .announcement-detail-image{float:left;margin:0 30px 20px 0;width:48%}.announcement-detail-content-grid.landscape .announcement-detail-image{float:none;margin:0 0 30px;width:100%}}.announcement-detail-body{word-wrap:break-word;color:#2d3748;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.7;text-align:justify;white-space:pre-wrap}.announcement-detail-body p{margin:0 0 1em}.announcement-detail-body h1,.announcement-detail-body h2,.announcement-detail-body h3,.announcement-detail-body h4,.announcement-detail-body h5,.announcement-detail-body h6{color:#1a202c;font-family:Georgia,Times New Roman,serif;margin:1.5em 0 .5em}.announcement-detail-body ol,.announcement-detail-body ul{margin:1em 0;padding-left:2em}.announcement-detail-body li{margin:.5em 0}.announcement-detail-body a{color:#667eea;text-decoration:underline}.announcement-detail-body a:hover{color:#764ba2}.announcement-detail-body b,.announcement-detail-body strong{color:#1a202c;font-weight:700}.announcement-detail-body em,.announcement-detail-body i{font-style:italic}.announcement-detail-body blockquote{background:#667eea0d;border-left:4px solid #667eea;font-style:italic;margin:1.5em 0;padding:1em 1.5em}.announcement-detail-body code{background:#0000000d;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;padding:.2em .4em}.announcement-detail-body pre{background:#0000000d;border-radius:6px;margin:1em 0;overflow-x:auto;padding:1em}.announcement-detail-body pre code{background:none;padding:0}.announcement-detail-body img{border-radius:6px;display:block;height:auto;margin:1.5em 0;max-width:100%}.announcement-detail-body hr{border:none;border-top:2px solid #e2e8f0;margin:2em 0}.announcement-detail-content-grid:after{clear:both;content:"";display:table}.announcement-detail-body:first-letter{color:#667eea;float:left;font-size:3.5em;font-weight:700;line-height:.9;margin:.05em .1em 0 0}.announcement-detail-body p{margin:0 0 20px}.announcement-detail-body:after{clear:both;content:"";display:table}.announcement-detail-body p{margin:0 0 24px;white-space:pre-wrap}.announcement-detail-share{border-top:2px solid #e2e8f0;clear:both;margin:40px 0;padding:30px 0}.share-title{color:#2d3748;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:600;margin-bottom:20px}.share-buttons{display:flex;flex-wrap:wrap;gap:12px}.share-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;transition:all .3s ease}.share-btn:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.share-btn:active{transform:translateY(0)}.share-btn svg{height:20px;width:20px}.share-facebook{background:linear-gradient(135deg,#1877f2,#0d5ecc)}.share-facebook:hover{background:linear-gradient(135deg,#0d5ecc,#0a4da3)}.share-twitter{background:linear-gradient(135deg,#1da1f2,#0c85d0)}.share-twitter:hover{background:linear-gradient(135deg,#0c85d0,#0a6bb3)}.share-whatsapp{background:linear-gradient(135deg,#25d366,#1ebe57)}.share-whatsapp:hover{background:linear-gradient(135deg,#1ebe57,#17a347)}.share-email{background:linear-gradient(135deg,#ea4335,#d33426)}.share-email:hover{background:linear-gradient(135deg,#d33426,#b82a1c)}.share-copy{background:linear-gradient(135deg,#667eea,#5568d3)}.share-copy:hover{background:linear-gradient(135deg,#5568d3,#4553bc)}.announcement-detail-footer{border-top:3px double #2d3748;clear:both;margin-top:60px;padding-top:30px}.announcement-church-info{color:#4a5568;font-family:Georgia,Times New Roman,serif;text-align:center}.announcement-church-info h3{color:#1a202c;font-size:22px;font-weight:700;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.announcement-church-info p{font-size:14px;line-height:1.6;margin:6px 0}.announcement-detail-loading{align-items:center;background:#f7fafc;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.announcement-detail-loading .spinner{animation:spin .8s linear infinite;border:6px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:60px;margin-bottom:20px;width:60px}.announcement-detail-loading p{color:#718096;font-size:18px;font-weight:500}@media (max-width:768px){.announcement-back-btn{font-size:14px;padding:10px 20px}.announcement-detail-wrapper{padding:30px 20px}.announcement-detail-title{font-size:36px}.announcement-detail-image{float:none;margin:0 0 25px;width:100%}.announcement-detail-body{font-size:16px}.announcement-detail-body:first-letter{font-size:3em}.announcement-detail-meta{align-items:flex-start;flex-direction:column;gap:12px}}@media (max-width:480px){.announcement-detail-page{padding:20px 10px}.announcement-back-btn{font-size:13px;padding:8px 16px}.announcement-detail-wrapper{padding:20px 15px}.announcement-detail-title{font-size:28px}.announcement-detail-body{font-size:15px;text-align:left}.announcement-detail-body:first-letter{font-size:2.5em}.announcement-church-info h3{font-size:18px}.announcement-church-info p{font-size:13px}}.announcement-detail-body .content-link{border-bottom:1px solid #3182ce;color:#3182ce;display:inline;padding:0 2px;text-decoration:none;transition:all .2s ease;word-break:break-all}.announcement-detail-body .content-link:hover{background-color:#3182ce1a;border-bottom-color:#2c5282;color:#2c5282}.announcement-detail-body .content-link:active{color:#1a365d}.announcement-detail-body .youtube-embed-container{background-color:#000;border-radius:12px;box-shadow:0 10px 40px #0003;height:0;margin:24px auto;max-width:800px;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.announcement-detail-body .youtube-embed-container iframe{border:none;border-radius:12px;height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:768px){.announcement-detail-body .youtube-embed-container{border-radius:8px;margin:20px 0;max-width:100%}.announcement-detail-body .content-link{word-break:break-word}}.all-announcements-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Georgia,Garamond,serif;min-height:100vh;padding:40px 20px}.back-button{align-items:center;background:#fff;border:none;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:30px;padding:12px 24px;transition:all .3s ease}.back-button:hover{box-shadow:0 4px 12px #00000026;transform:translateX(-4px)}.announcements-paper{background:#fff;border-radius:4px;box-shadow:0 10px 50px #00000026,0 20px 100px #0000001a;margin:0 auto;max-width:1200px;padding:60px;position:relative}.announcements-paper-header{border-bottom:3px solid #667eea;margin-bottom:40px;padding-bottom:30px;text-align:center}.announcements-paper-title{color:#1a202c;font-family:Georgia,Times New Roman,serif;font-size:48px;font-weight:900;line-height:1.2;margin:0 0 15px}.announcements-paper-subtitle{color:#4a5568;font-family:Georgia,Times New Roman,serif;font-size:18px;font-style:italic;margin:0}.all-announcements-page .share-section{border-top:2px solid #e2e8f0;margin-top:30px;padding-top:25px}.all-announcements-page .share-label{color:#2d3748;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:600;margin-bottom:15px}.all-announcements-page .share-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.all-announcements-page .share-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;transition:all .3s ease}.all-announcements-page .share-btn:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.all-announcements-page .share-btn:active{transform:translateY(0)}.all-announcements-page .share-btn.facebook{background:linear-gradient(135deg,#1877f2,#0d5ecc)}.all-announcements-page .share-btn.facebook:hover{background:linear-gradient(135deg,#0d5ecc,#0a4da3)}.all-announcements-page .share-btn.twitter{background:linear-gradient(135deg,#1da1f2,#0c85d0)}.all-announcements-page .share-btn.twitter:hover{background:linear-gradient(135deg,#0c85d0,#0a6bb3)}.all-announcements-page .share-btn.whatsapp{background:linear-gradient(135deg,#25d366,#1ebe57)}.all-announcements-page .share-btn.whatsapp:hover{background:linear-gradient(135deg,#1ebe57,#17a347)}.all-announcements-page .share-btn.email{background:linear-gradient(135deg,#ea4335,#c5221f)}.all-announcements-page .share-btn.email:hover{background:linear-gradient(135deg,#c5221f,#a01b1b)}.all-announcements-page .share-btn.copy{background:linear-gradient(135deg,#6c757d,#495057)}.all-announcements-page .share-btn.copy:hover{background:linear-gradient(135deg,#495057,#343a40)}.announcements-filter-section{padding:30px 0}.announcements-filter-container{width:100%}.announcements-filter-container h3{color:#333;font-size:1.2rem;margin:0 0 20px}.announcements-filter-buttons{display:flex;flex-wrap:wrap;gap:12px}.filter-btn{background:#f0f0f0;border:2px solid #e0e0e0;border-radius:25px;color:#555;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 24px;transition:all .3s ease}.filter-btn:hover{background:#e0e0e0;border-color:#667eea;color:#667eea}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff}.announcements-content-section{padding:30px 0}.announcements-empty,.announcements-loading{padding:80px 20px;text-align:center}.spinner{border:5px solid #f3f3f3;border-top-color:#667eea;height:50px;margin:0 auto 20px;width:50px}.announcements-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (min-width:1024px){.announcements-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:768px) and (max-width:1023px){.announcements-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.announcements-grid{grid-template-columns:1fr}}.announcement-card{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.announcement-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.announcement-card.expired{border:2px solid #f5576c;opacity:.7}.announcement-status-badge{background:#f5576c;border-radius:6px;color:#fff;font-size:12px;font-weight:700;padding:6px 12px;position:absolute;right:12px;text-transform:uppercase;top:12px;z-index:10}.announcement-status-badge.active{background:linear-gradient(135deg,#48bb78,#38a169)}.announcement-status-badge.expired{background:#f5576c}.announcement-card-image{align-items:center;background:#f7fafc;display:flex;flex-shrink:0;height:250px;justify-content:center;overflow:hidden;width:100%}.announcement-card-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.announcement-card:hover .announcement-card-image img{transform:scale(1.05)}.announcement-card-content{display:flex;flex:1 1;flex-direction:column;padding:20px}.announcement-card-title{color:#2c3e50;font-size:18px;font-weight:700;line-height:1.4;margin:0 0 12px}.announcement-card-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:14px;line-height:1.6;margin:0 0 16px;overflow:hidden}.announcement-card-meta{border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:6px;margin-bottom:auto;padding-top:12px}.announcement-date,.announcement-expiry{align-items:center;color:#718096;display:flex;font-size:12px;gap:6px}.announcement-expiry.expired-date{color:#f5576c;font-weight:600}.announcement-read-more{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:16px;padding:12px 24px;transition:all .3s ease}.announcement-read-more:hover{box-shadow:0 4px 12px #667eea66;transform:translateX(5px)}.announcements-paper-footer{margin-top:50px;padding-top:30px}.footer-divider{background:linear-gradient(90deg,#0000,#cbd5e0,#0000);height:3px;margin-bottom:25px}.church-info{color:#4a5568;font-family:Georgia,Times New Roman,serif;text-align:center}.church-info h3{color:#1a202c;font-size:22px;font-weight:700;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.church-info p{font-size:14px;line-height:1.6;margin:6px 0}@media (max-width:768px){.announcements-paper{padding:40px 30px}.announcements-paper-title{font-size:36px}.announcements-paper-subtitle{font-size:16px}.announcements-grid{gap:20px;grid-template-columns:1fr}.announcement-card-title{font-size:1.3rem}.announcements-filter-buttons{gap:8px}.filter-btn{font-size:.9rem;padding:8px 18px}}@media (max-width:480px){.all-announcements-page{padding:20px 15px}.announcements-paper{padding:30px 20px}.announcements-paper-title{font-size:28px}.announcements-paper-subtitle{font-size:14px}.announcements-filter-container h3{font-size:1rem}.announcement-card-content{padding:20px}}.donation-page-public{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Georgia,Garamond,serif;min-height:100vh;padding:40px 20px}.donation-paper{background:#fff;border-radius:4px;box-shadow:0 10px 50px #00000026,0 20px 100px #0000001a;line-height:1.8;margin:0 auto;max-width:900px;padding:60px;position:relative}.donation-paper:before{background:repeating-linear-gradient(90deg,#0000,#0000 2px,#00000003 0,#00000003 4px),repeating-linear-gradient(0deg,#0000,#0000 2px,#00000003 0,#00000003 4px);border-radius:4px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.donation-header{border-bottom:3px solid #667eea;margin-bottom:40px;padding-bottom:30px;position:relative;text-align:center;z-index:1}.donation-header h1{color:#1a202c;font-size:42px;font-weight:700;margin:0 0 15px}.donation-subtitle{color:#4a5568;font-size:16px;font-style:italic;line-height:1.8}.donation-form{position:relative;z-index:1}.form-section{margin-bottom:40px}.form-section h3{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:24px;font-weight:600;margin-bottom:20px;padding-bottom:10px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.donation-form-group,.form-group{margin-bottom:20px}.donation-form-group label,.form-group label{color:#2d3748;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.donation-form-group input,.donation-form-group select,.donation-form-group textarea,.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-family:Georgia,Garamond,serif;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.donation-form-group input:focus,.donation-form-group select:focus,.donation-form-group textarea:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-family:Georgia,Garamond,serif;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.suggested-amounts{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.suggested-amounts button{background:#f7fafc;border:2px solid #e2e8f0;border-radius:6px;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s ease}.suggested-amounts button:hover{background:#667eea;border-color:#667eea;color:#fff}.donation-payment-methods,.payment-methods{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-top:10px}.donation-payment-card,.payment-method-card{align-items:center;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:24px;position:relative;transition:all .3s ease}.donation-payment-card input[type=radio],.payment-method-card input[type=radio]{height:0;opacity:0;position:absolute;width:0}.donation-payment-card:hover,.payment-method-card:hover{background:#667eea0d;border-color:#667eea}.donation-payment-card.selected,.payment-method-card.selected{background:#667eea1a;border-color:#667eea}.donation-method-icon,.method-icon{font-size:36px;margin-bottom:10px}.donation-method-label,.method-label{color:#2d3748;font-size:15px;font-weight:600;margin-bottom:5px;text-align:center}.donation-method-desc{color:#718096;font-size:12px;text-align:center}.form-actions{justify-content:center;margin-top:40px}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 40px;transition:all .3s ease}.btn-submit:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.payment-info,.tax-info{border-top:2px solid #e2e8f0;margin-top:50px;padding-top:40px;position:relative;z-index:1}.qr-code-section{display:flex;justify-content:center;margin-bottom:40px}.qr-code-container{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 40px #667eea4d;max-width:400px;padding:40px;text-align:center;width:100%}.qr-code-container h4{color:#fff;font-size:22px;font-weight:600;margin-bottom:20px}.qr-placeholder{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:inline-block;margin-bottom:20px;padding:20px}.qr-code-image{border-radius:8px;display:block;height:200px;object-fit:contain;width:200px}.qr-instructions{color:#fff;text-align:left}.qr-instructions p{font-size:14px;line-height:1.6;margin:10px 0}.qr-instructions strong{font-weight:700}.qr-note{background:#fff3;border-radius:8px;font-size:13px;margin-top:15px;padding:12px}.payment-info h3,.tax-info h3{color:#2d3748;font-size:24px;font-weight:600;margin-bottom:20px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-card{background:#f7fafc;border-left:4px solid #667eea;border-radius:8px;padding:20px}.info-card h4{color:#2d3748;font-size:18px;font-weight:600;margin-bottom:12px}.info-card p{color:#4a5568;font-size:14px;line-height:1.8;margin:0}.info-card strong{color:#2d3748}.info-card em{color:#718096;font-size:13px}.info-qr-container{background:#fff;border-radius:8px;display:flex;justify-content:center;margin:15px 0;padding:15px}.info-qr-image{border-radius:4px;height:220px;object-fit:contain;width:220px}.btn-upi-app-info{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:15px;padding:12px 24px;transition:all .3s ease;width:100%}.btn-upi-app-info:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-upi-app-info:disabled{background:#667eea4d;cursor:not-allowed;opacity:.5}.mobile-only-note{color:#718096;font-size:12px;font-style:italic;margin-top:10px;text-align:center}.donation-footer{border-top:3px double #2d3748;clear:both;margin-top:60px;padding-top:30px}.donation-church-info{color:#4a5568;font-family:Georgia,Times New Roman,serif;text-align:center}.donation-church-info h3{color:#1a202c;font-size:22px;font-weight:700;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.donation-church-info p{font-size:14px;line-height:1.6;margin:6px 0}.tax-info p{background:#fffaf0;border-left:4px solid #f6ad55;border-radius:8px;color:#4a5568;font-size:15px;line-height:1.8;padding:20px}.payment-section-container{margin:40px 0;position:relative;z-index:1}.proceed-section{background:#667eea0d;border:2px dashed #667eea;border-radius:12px;padding:30px;text-align:center}.btn-proceed{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:16px 48px;transition:all .3s ease}.btn-proceed:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-proceed:disabled{cursor:not-allowed;opacity:.6}.cash-payment-section{background:linear-gradient(135deg,#48bb78,#38a169);border-radius:12px;color:#fff;margin:40px 0;padding:40px;position:relative;z-index:1}.cash-payment-section h3{color:#fff;font-size:28px;font-weight:600;margin-bottom:30px;text-align:center}.bank-details-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:30px}.bank-details-section h4{color:#fff;font-size:22px;font-weight:600;margin-bottom:20px;text-align:center}.bank-info-card{background:#fffffff2;border-radius:8px;color:#2d3748;padding:25px}.bank-detail-row{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 0}.bank-detail-row:last-child{border-bottom:none}.bank-detail-row.highlight{background:#48bb781a;border-bottom:none;border-radius:0 0 8px 8px;margin:10px -10px -10px;padding:15px 12px}.detail-label{color:#4a5568;font-size:14px;font-weight:600}.detail-value{color:#1a202c;font-size:15px;font-weight:700;text-align:right}.bank-detail-row.highlight .detail-value{color:#38a169;font-size:20px}.cash-details-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:30px}.cash-details-section h4{color:#fff;font-size:22px;font-weight:600;margin-bottom:20px;text-align:center}.cash-info-card{background:#fffffff2;border-radius:8px;color:#2d3748;padding:25px}.cash-info-card p{font-size:14px;line-height:1.6;margin:10px 0}.cash-info-card strong{color:#2d3748;display:block;font-size:15px;margin-bottom:5px}.address-text{border-left:3px solid #48bb78;color:#4a5568;line-height:1.8;margin:15px 0;padding:10px 0 10px 15px}.contact-info,.timing-info{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:15px}.contact-info p:not(:first-child),.timing-info p:not(:first-child){color:#4a5568;margin:5px 0}.upi-payment-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin:40px 0;padding:40px;position:relative;z-index:1}.upi-payment-section h3{color:#fff;font-size:28px;font-weight:600;margin-bottom:30px;text-align:center}.payment-options-container{grid-gap:30px;align-items:start;display:grid;gap:30px;grid-template-columns:1fr auto 1fr;margin-bottom:40px}.upi-app-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:30px;text-align:center}.upi-app-section h4{color:#fff;font-size:22px;font-weight:600;margin-bottom:10px}.upi-app-desc{color:#ffffffe6;font-size:14px;margin-bottom:20px}.btn-upi-app{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 15px #0003;color:#667eea;cursor:pointer;font-size:18px;font-weight:600;margin-bottom:15px;padding:16px 32px;transition:all .3s ease;width:100%}.btn-upi-app:hover:not(:disabled){background:#f7fafc;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.btn-upi-app:disabled{background:#ffffff4d;color:#ffffffb3;cursor:not-allowed;opacity:.5}.desktop-note{color:#fffc;font-size:13px;font-style:italic;margin-top:10px}.payment-details{background:#ffffff1a;border-radius:8px;color:#fff;font-size:14px;line-height:1.8;margin-top:20px;padding:15px}.payment-divider{align-items:center;display:flex;justify-content:center;position:relative}.payment-divider span{background:#fff3;border-radius:50px;color:#fff;font-size:14px;font-weight:600;padding:10px 20px}.payment-divider:after,.payment-divider:before{background:#ffffff4d;content:"";height:80%;position:absolute;top:50%;transform:translateY(-50%);width:1px}.payment-divider:before{left:0}.payment-divider:after{right:0}.payment-completion{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:30px;text-align:center}.completion-instruction{color:#fff;font-size:16px;font-weight:500;margin-bottom:20px}.btn-complete-payment{background:#48bb78;border:none;border-radius:8px;box-shadow:0 4px 15px #48bb7866;color:#fff;cursor:pointer;font-size:18px;font-weight:600;margin-bottom:15px;padding:16px 48px;transition:all .3s ease}.btn-complete-payment:hover:not(:disabled){background:#38a169;box-shadow:0 6px 20px #48bb7880;transform:translateY(-2px)}.btn-complete-payment:disabled{cursor:not-allowed;opacity:.6}.whatsapp-reminder{background:#ffffff1a;border-radius:8px;color:#ffffffe6;font-size:14px;margin-top:15px;padding:15px}.whatsapp-reminder strong{color:#fff;font-weight:600}@media (max-width:768px){.payment-options-container{gap:20px;grid-template-columns:1fr}.payment-divider{height:60px}.payment-divider:after,.payment-divider:before{display:none}.payment-divider span{text-align:center;width:100%}.cash-payment-section,.upi-payment-section{padding:30px 20px}.bank-details-section,.cash-details-section,.qr-code-section,.upi-app-section{padding:20px}.btn-proceed,.btn-upi-app{font-size:16px;padding:14px 24px}.btn-complete-payment{font-size:16px;padding:14px;width:100%}.bank-detail-row{flex-direction:column;gap:5px}.detail-value{text-align:left}.donation-paper{padding:30px 20px}.donation-header h1{font-size:32px}.donation-payment-methods,.form-grid,.info-grid,.payment-methods{grid-template-columns:1fr}.suggested-amounts{justify-content:center}.qr-code-container{padding:30px 20px}}@media (max-width:480px){.cash-payment-section,.upi-payment-section{padding:20px 15px}.cash-payment-section h3,.upi-payment-section h3{font-size:22px}.bank-details-section h4,.cash-details-section h4,.qr-code-container h4,.upi-app-section h4{font-size:18px}.btn-proceed,.btn-upi-app{font-size:15px;padding:12px 20px}.bank-info-card,.cash-info-card{padding:20px 15px}.donation-page-public{padding:20px 10px}.donation-paper{padding:20px 15px}.donation-header h1{font-size:28px}.donation-subtitle{font-size:14px}.donation-payment-methods,.payment-methods{grid-template-columns:1fr}.btn-submit{font-size:16px;padding:14px;width:100%}.qr-code-container{padding:20px 15px}.qr-code-container h4{font-size:18px}.qr-code-image{height:150px;width:150px}}.ministry-page{background:#f7fafc;min-height:100vh;position:relative}.ministry-hero{color:#fff;overflow:hidden;padding:60px 20px;position:relative;text-align:center}.ministry-hero:before{background:linear-gradient(135deg,#667eeae6,#764ba2e6);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:0}.ministry-hero-content{margin:0 auto;max-width:900px;position:relative;z-index:1}.ministry-hero-icon{animation:float 3s ease-in-out infinite;font-size:56px;margin-bottom:15px}.ministry-hero h1{font-size:38px;font-weight:800;margin:0 0 12px;text-shadow:2px 2px 4px #0003}.ministry-hero-subtitle{font-size:18px;font-weight:400;margin:0;opacity:.95}.ministry-content{margin:0 auto;max-width:1200px;padding:60px 20px}.ministry-section{margin-bottom:60px}.ministry-section h2{color:#2d3748;font-size:36px;font-weight:700;margin:0 0 30px;text-align:center}.ministry-section p{color:#4a5568;font-size:17px;line-height:1.8;margin:0 0 20px}.highlight-section{background:#fff;border-radius:20px;border-top:5px solid #667eea;box-shadow:0 10px 40px #00000014;padding:50px 40px}.feature-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:40px}.feature-card{background:linear-gradient(135deg,#f7fafc,#fff);border:2px solid #e2e8f0;border-radius:16px;padding:35px 25px;text-align:center;transition:all .3s ease}.feature-card:hover{border-color:#667eea;box-shadow:0 12px 35px #667eea33;transform:translateY(-8px)}.feature-icon{font-size:48px;margin-bottom:20px}.feature-card h3{color:#2d3748;font-size:20px;font-weight:700;margin:0 0 15px}.feature-card p{color:#718096;font-size:15px;line-height:1.7;margin:0}.info-list{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.info-item{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;gap:20px;margin-bottom:25px;padding-bottom:25px}.info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-bullet{color:#667eea;flex-shrink:0;font-size:24px;font-weight:700}.info-item strong{color:#2d3748;font-weight:700}.info-item div{color:#4a5568;line-height:1.7}.schedule-card{background:#fff;border-left:5px solid #667eea;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.schedule-item{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 0}.schedule-item:last-child{border-bottom:none}.schedule-label{color:#2d3748;font-size:16px;font-weight:700}.schedule-value{color:#667eea;font-size:16px;font-weight:600;text-align:right}.goals-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:30px}.goal-card{background:#fff;border-left:4px solid #764ba2;border-radius:12px;box-shadow:0 4px 15px #0000000f;padding:30px}.goal-card h4{color:#2d3748;font-size:18px;font-weight:700;margin:0 0 12px}.goal-card p{color:#718096;font-size:15px;line-height:1.6;margin:0}.gfk-intro{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 25px #667eea4d;color:#fff;margin-bottom:40px;padding:35px}.gfk-intro p{color:#fff;font-size:17px;line-height:1.8;margin:0}.stats-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:30px}.stat-card{background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;padding:35px 25px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 30px #667eea33;transform:scale(1.05)}.stat-number{color:#667eea;font-size:42px;font-weight:800;margin-bottom:10px}.stat-label{color:#4a5568;font-size:15px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.involvement-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:30px}.involvement-card{background:linear-gradient(135deg,#fff,#f7fafc);border:2px solid #e2e8f0;border-radius:12px;padding:30px;transition:all .3s ease}.involvement-card:hover{border-color:#667eea;box-shadow:0 8px 25px #667eea26;transform:translateY(-5px)}.involvement-card h4{color:#2d3748;font-size:18px;font-weight:700;margin:0 0 12px}.involvement-card p{color:#718096;font-size:15px;line-height:1.6;margin:0}.zoom-prayer-intro{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 25px #667eea4d;color:#fff;margin-bottom:40px;padding:35px}.zoom-prayer-intro p{color:#fff;font-size:17px;line-height:1.8;margin:0}.prayer-schedule-item{border-bottom:2px solid #e2e8f0;padding:25px 0}.prayer-schedule-item:last-child{border-bottom:none}.schedule-day{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.day-label{color:#2d3748;font-size:18px;font-weight:700}.time-label{background:#f7fafc;border-radius:20px;color:#667eea;font-size:16px;font-weight:600;padding:6px 16px}.schedule-details strong{color:#4a5568;display:block;font-size:16px;margin-bottom:6px}.schedule-details p{color:#718096;font-size:14px;margin:0}.zoom-instructions{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.instruction-step{align-items:flex-start;display:flex;gap:25px;margin-bottom:35px}.instruction-step:last-child{margin-bottom:0}.step-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 15px #667eea4d;color:#fff;display:flex;flex-shrink:0;font-size:22px;font-weight:700;height:50px;justify-content:center;width:50px}.step-content h4{color:#2d3748;font-size:19px;font-weight:700;margin:0 0 10px}.step-content p{color:#718096;font-size:15px;line-height:1.7;margin:0}.testimony-card{background:linear-gradient(135deg,#f7fafc,#fff);border-left:5px solid #667eea;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.testimony-card p{color:#4a5568;font-size:17px;font-style:italic;line-height:1.8;margin:0 0 15px}.testimony-author{color:#667eea;font-size:15px;font-style:normal;font-weight:700;margin:0}.join-info{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.requirements-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:30px}.requirement-card{background:linear-gradient(135deg,#f7fafc,#fff);border:2px solid #e2e8f0;border-radius:12px;padding:30px}.requirement-card h4{border-bottom:2px solid #667eea;color:#2d3748;font-size:19px;font-weight:700;margin:0 0 20px;padding-bottom:15px}.requirement-card ul{list-style:none;margin:0;padding:0}.requirement-card li{color:#4a5568;line-height:1.6;padding:10px 0 10px 30px;position:relative}.requirement-card li:before{color:#667eea;content:"✓";font-size:18px;font-weight:700;left:0;position:absolute}.counseling-info{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.counseling-info>p{color:#4a5568;font-size:16px;line-height:1.8;margin-bottom:30px}.vision-mission-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:30px}.vm-card{background:#fff;border-radius:16px;border-top:5px solid #667eea;box-shadow:0 4px 20px #00000014;padding:35px}.vm-card h3{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 20px}.vm-card p{color:#4a5568;font-size:16px;line-height:1.8;margin:0}.ministry-areas-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:30px}.area-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #0000000f;padding:30px 25px;text-align:center;transition:all .3s ease}.area-card:hover{border-color:#667eea;box-shadow:0 8px 25px #667eea26;transform:translateY(-5px)}.area-icon{font-size:42px;margin-bottom:15px}.area-card h4{color:#2d3748;font-size:17px;font-weight:700;margin:0 0 10px}.area-card p{color:#718096;font-size:14px;line-height:1.6;margin:0}.leadership-info{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:40px}.leadership-info>p{color:#4a5568;font-size:16px;line-height:1.8;margin-bottom:30px}.committees-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.committee-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 4px 15px #667eea4d;color:#fff;font-size:16px;font-weight:600;padding:20px;text-align:center;transition:all .3s ease}.committee-card:hover{box-shadow:0 6px 20px #667eea66;transform:scale(1.05)}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 15px 50px #667eea4d;padding:60px 50px;text-align:center}.cta-section h2{color:#fff;margin-bottom:20px}.cta-section p{color:#fff;font-size:18px;margin-bottom:35px;opacity:.95}.cta-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.btn-primary,.btn-secondary{border:none;border-radius:10px;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;padding:16px 40px;text-transform:uppercase;transition:all .3s ease}.btn-primary{background:#fff;box-shadow:0 4px 15px #ffffff4d;color:#667eea}.btn-primary:hover{box-shadow:0 6px 20px #fff6;transform:translateY(-3px)}.btn-secondary{background:#fff3;border:2px solid #fff;color:#fff}.btn-secondary:hover{background:#ffffff4d;transform:translateY(-3px)}.ministry-footer{background:#2d3748;border-top:4px solid #667eea;padding:40px 20px;text-align:center}.ministry-footer-content h3{color:#fff;font-size:24px;font-weight:700;margin:0 0 12px}.ministry-footer-content p{color:#cbd5e0;font-size:16px;margin:0}.leadership-section{margin-top:30px}.headmaster-card{align-items:center;background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;display:flex;gap:40px;padding:40px}.headmaster-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f7fafc,#e2e8f0);border:3px dashed #cbd5e0;border-radius:50%;display:flex;flex-direction:column;flex-shrink:0;gap:10px;height:180px;justify-content:center;width:180px}.photo-icon{color:#a0aec0;font-size:64px}.photo-label{color:#718096;font-size:14px;font-weight:600}.headmaster-info h3,.photo-label{letter-spacing:.5px;text-transform:uppercase}.headmaster-info h3{color:#667eea;font-size:16px;font-weight:700;margin:0 0 8px}.headmaster-info h4{color:#2d3748;font-size:28px;font-weight:700;margin:0 0 15px}.headmaster-info p{color:#4a5568;font-size:16px;line-height:1.7;margin:0}.scripture-quote{background:linear-gradient(135deg,#f7f9fc,#eef2f7);border-left:5px solid #667eea;border-radius:16px;box-shadow:0 4px 15px #667eea1a;margin:30px 0;padding:30px 40px}.scripture-text{color:#2d3748;font-size:20px;font-style:italic;font-weight:600;line-height:1.6;margin:0 0 10px}.scripture-reference{color:#667eea;font-size:15px;font-weight:700;margin:0;text-align:right}.section-intro{color:#4a5568;font-size:17px;font-weight:500;line-height:1.8;margin-bottom:35px}.missionaries-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:30px}.missionary-card{align-items:center;background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;padding:30px;text-align:center;transition:all .3s ease}.missionary-card:hover{border-top-color:#764ba2;box-shadow:0 12px 35px #667eea33;transform:translateY(-8px)}.missionary-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f7fafc,#e2e8f0);border:3px dashed #cbd5e0;border-radius:50%;display:flex;flex-direction:column;gap:8px;height:140px;justify-content:center;margin-bottom:20px;transition:all .3s ease;width:140px}.missionary-card:hover .missionary-photo-placeholder{background:linear-gradient(135deg,#eef2f7,#dfe6f0);border-color:#667eea}.missionary-photo-placeholder .photo-icon{color:#a0aec0;font-size:56px}.missionary-photo-placeholder .photo-label{color:#718096;font-size:13px;font-weight:600}.missionary-photo{border-radius:12px;box-shadow:0 4px 15px #667eea33;height:250px;margin-bottom:20px;object-fit:cover;transition:all .3s ease;width:100%}.missionary-card:hover .missionary-photo{box-shadow:0 8px 25px #667eea59;transform:scale(1.05)}.missionary-info h3{color:#2d3748;font-size:22px;font-weight:700;line-height:1.3;margin:0 0 12px}.missionary-focus{color:#667eea;font-size:15px;font-weight:600;line-height:1.6;margin:0}.photo-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.photo-modal-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.photo-modal-close{align-items:center;background:#fffffff2;border:none;border-radius:50%;box-shadow:0 2px 10px #0003;color:#2d3748;cursor:pointer;display:flex;font-size:32px;height:45px;justify-content:center;line-height:1;position:absolute;right:15px;top:15px;transition:all .2s ease;width:45px;z-index:10}.photo-modal-close:hover{background:#667eea;color:#fff;transform:rotate(90deg)}.photo-modal-image{background:#f7fafc;max-height:calc(90vh - 150px);object-fit:contain;width:100%}.photo-modal-info{background:linear-gradient(135deg,#f7f9fc,#eef2f7);border-top:3px solid #667eea;padding:25px 30px}.photo-modal-info h3{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 10px}.photo-modal-info p{color:#667eea;font-size:16px;font-weight:600;line-height:1.6;margin:0}.teachers-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:30px}.teacher-card{background:#fff;border-radius:16px;border-top:4px solid #667eea;box-shadow:0 4px 20px #00000014;padding:30px 25px;text-align:center;transition:all .3s ease}.teacher-card:hover{border-top-color:#764ba2;box-shadow:0 12px 35px #667eea33;transform:translateY(-8px)}.teacher-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f7fafc,#e2e8f0);border:3px dashed #cbd5e0;border-radius:50%;display:flex;flex-direction:column;gap:8px;height:120px;justify-content:center;margin:0 auto 20px;width:120px}.teacher-photo-placeholder .photo-icon{font-size:48px}.teacher-photo-placeholder .photo-label{font-size:12px}.teacher-card h4{color:#2d3748;font-size:20px;font-weight:700;margin:0 0 8px}.teacher-card p{color:#718096;font-size:14px;margin:0}@media (max-width:768px){.ministry-hero{padding:40px 20px}.ministry-hero h1{font-size:28px}.ministry-hero-icon{font-size:44px}.ministry-hero-subtitle{font-size:16px;font-size:18px}.ministry-hero-icon{font-size:60px}.ministry-content{padding:40px 15px}.ministry-section h2{font-size:28px}.feature-grid{gap:20px;grid-template-columns:1fr}.highlight-section{padding:35px 20px}.info-list{padding:25px 15px}.schedule-card{padding:25px 20px}.schedule-item{align-items:flex-start;flex-direction:column;gap:10px}.schedule-value{text-align:left}.cta-section{padding:40px 25px}.cta-buttons{flex-direction:column;gap:15px}.btn-primary,.btn-secondary{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}.zoom-instructions{padding:25px 20px}.instruction-step{flex-direction:column;gap:15px}.headmaster-card{flex-direction:column;padding:30px 20px;text-align:center}.headmaster-photo-placeholder{height:150px;width:150px}.missionaries-grid,.teachers-grid{gap:20px;grid-template-columns:repeat(2,1fr)}.missionary-photo-placeholder{height:120px;width:120px}.scripture-quote{padding:25px 30px}.scripture-text{font-size:18px}.missionary-photo{height:220px}.photo-modal-overlay{padding:15px}.photo-modal-info{padding:20px 25px}.photo-modal-info h3{font-size:22px}.photo-modal-info p{font-size:15px}}@media (max-width:480px){.ministry-hero h1{font-size:24px}.ministry-hero-icon{font-size:36px}.ministry-hero-subtitle{font-size:14px}.ministry-section h2{font-size:24px}.missionaries-grid,.stats-grid,.teachers-grid{grid-template-columns:1fr}.missionary-photo-placeholder{height:100px;width:100px}.missionary-photo-placeholder .photo-icon{font-size:42px}.missionary-info h3{font-size:20px}.missionary-focus{font-size:14px}.scripture-quote{padding:20px 25px}.scripture-text{font-size:16px}.missionary-photo{height:auto}.photo-modal-overlay{padding:10px}.photo-modal-close{font-size:28px;height:40px;right:10px;top:10px;width:40px}.photo-modal-info{padding:18px 20px}.photo-modal-info h3{font-size:20px}.photo-modal-info p{font-size:14px}.headmaster-photo-placeholder{height:120px;width:120px}.photo-icon{font-size:48px}}.sitemap-page{background:#f7fafc;min-height:100vh;position:relative}.back-to-home-btn{align-items:center;background:#fffffff2;border:2px solid #667eea;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#667eea;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;left:20px;padding:10px 20px;position:fixed;top:20px;transition:all .3s ease;z-index:1000}.back-to-home-btn:hover{background:#667eea;box-shadow:0 6px 16px #667eea4d;color:#fff;transform:translateX(-3px)}.sitemap-hero{background:linear-gradient(135deg,#667eeae6,#764ba2e6);color:#fff;overflow:hidden;padding:60px 20px;position:relative;text-align:center}.sitemap-hero-content{margin:0 auto;max-width:900px;position:relative;z-index:1}.sitemap-hero-icon{animation:float 3s ease-in-out infinite;font-size:56px;margin-bottom:15px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.sitemap-hero h1{font-size:38px;font-weight:800;margin:0 0 12px;text-shadow:2px 2px 4px #0003}.sitemap-hero-subtitle{font-size:18px;font-weight:400;margin:0;opacity:.95}.sitemap-content{margin:0 auto;max-width:1200px;padding:60px 20px}.sitemap-intro{margin-bottom:60px;text-align:center}.sitemap-intro p{color:#4a5568;font-size:18px;line-height:1.8;margin:0 auto;max-width:800px}.sitemap-sections{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:60px}.sitemap-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px;transition:all .3s ease}.sitemap-section:hover{box-shadow:0 8px 30px #667eea33;transform:translateY(-5px)}.sitemap-section-title{align-items:center;border-bottom:3px solid #667eea;color:#2d3748;display:flex;font-size:24px;font-weight:700;gap:12px;margin:0 0 25px;padding-bottom:15px}.sitemap-section-icon{font-size:28px}.sitemap-links{list-style:none;margin:0;padding:0}.sitemap-links li{margin-bottom:12px}.sitemap-link{align-items:center;background:#0000;border:none;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-size:16px;gap:10px;padding:12px 15px;position:relative;text-align:left;transition:all .3s ease;width:100%}.sitemap-link:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d;color:#fff;transform:translateX(5px)}.sitemap-link-icon{font-size:18px;font-weight:600;transition:transform .3s ease}.sitemap-link:hover .sitemap-link-icon{transform:translateX(3px)}.sitemap-cta{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 8px 30px #667eea4d;color:#fff;padding:50px 30px;text-align:center}.sitemap-cta h2{font-size:32px;font-weight:800;margin:0 0 15px}.sitemap-cta p{font-size:18px;line-height:1.8;margin:0 0 30px;opacity:.95}.sitemap-cta .btn-primary{background:#fff;border:none;border-radius:10px;box-shadow:0 4px 15px #0003;color:#667eea;cursor:pointer;font-size:16px;font-weight:700;padding:15px 40px;transition:all .3s ease}.sitemap-cta .btn-primary:hover{background:#f7fafc;box-shadow:0 6px 20px #0000004d;transform:translateY(-3px)}.sitemap-footer{background:linear-gradient(135deg,#2d3748,#1a202c);color:#fff;margin-top:60px;padding:40px 20px;text-align:center}.sitemap-footer-content{margin:0 auto;max-width:800px}.sitemap-footer h3{font-size:24px;font-weight:700;margin:0 0 15px}.sitemap-footer p{font-size:16px;line-height:1.6;margin:8px 0;opacity:.9}@media (max-width:768px){.sitemap-hero{padding:40px 20px}.sitemap-hero h1{font-size:28px}.sitemap-hero-icon{font-size:44px}.sitemap-hero-subtitle{font-size:16px}.sitemap-content{padding:40px 20px}.sitemap-sections{gap:30px;grid-template-columns:1fr}.sitemap-section{padding:25px}.sitemap-section-title{font-size:20px}.sitemap-link{font-size:15px;padding:10px 12px}.sitemap-cta{padding:40px 20px}.sitemap-cta h2{font-size:26px}.sitemap-cta p{font-size:16px}}@media (max-width:480px){.sitemap-hero h1{font-size:24px}.sitemap-hero-icon{font-size:36px}.sitemap-hero-subtitle{font-size:14px}.sitemap-section-title{align-items:flex-start;flex-direction:column;font-size:18px;gap:8px}.sitemap-intro p{font-size:16px}.sitemap-link{font-size:14px}}.gallery-management{margin:0 auto;max-width:1400px;padding:20px}.gallery-header{align-items:center;border-bottom:3px solid #667eea;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.gallery-header h1{color:#2d3748;font-size:32px;font-weight:800;margin:0}.btn-add{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-add:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.notification{animation:slideDown .3s ease;border-radius:8px;font-weight:600;margin-bottom:20px;padding:15px 20px}.notification.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.notification.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.gallery-form-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px;padding:30px}.gallery-form-card h2{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 25px}.form-group{margin-bottom:20px}.form-group label{color:#4a5568;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input[type=text],.form-group select,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:15px;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input[type=file]{border:2px dashed #cbd5e0;border-radius:8px;cursor:pointer;padding:10px;width:100%}.image-preview{border-radius:8px;margin-top:15px;max-width:300px;overflow:hidden}.image-preview img{display:block;height:auto;width:100%}.form-actions{display:flex;gap:12px;margin-top:25px}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s ease}.btn-save:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-cancel{background:#e2e8f0;border:none;border-radius:8px;color:#4a5568;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s ease}.btn-cancel:hover{background:#cbd5e0}.gallery-list{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:30px}.gallery-list h2{color:#2d3748;font-size:24px;font-weight:700;margin:0 0 25px}.loading{font-size:18px}.empty-state,.loading{color:#718096;padding:60px 20px;text-align:center}.empty-state p{font-size:18px;margin:0}.photos-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.photo-card{background:#f7fafc;border-radius:12px;box-shadow:0 2px 10px #00000014;overflow:hidden;transition:all .3s ease}.photo-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.photo-image{background:#e2e8f0;height:220px;overflow:hidden;width:100%}.photo-image img{height:100%;object-fit:cover;width:100%}.photo-info{padding:20px}.photo-info h3{color:#2d3748;font-size:18px;font-weight:700;margin:0 0 10px}.photo-category{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-bottom:10px;padding:4px 12px}.photo-info p{color:#718096;font-size:14px;line-height:1.5;margin:0 0 10px}.photo-date{color:#a0aec0;font-size:13px;font-style:italic}.photo-actions{background:#fff;border-top:1px solid #e2e8f0;display:flex;gap:10px;padding:15px 20px}.btn-delete,.btn-edit{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s ease}.btn-edit{background:#edf2f7;color:#4a5568}.btn-edit:hover{background:#667eea;color:#fff}.btn-delete{background:#fed7d7;color:#c53030}.btn-delete:hover{background:#fc8181;color:#fff}@media (max-width:768px){.gallery-header{align-items:flex-start;flex-direction:column;gap:15px}.gallery-header h1{font-size:26px}.photos-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-save{width:100%}}.public-gallery-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.public-gallery-loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.public-gallery-loading-spinner{animation:public-gallery-spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;width:50px}@keyframes public-gallery-spin{to{transform:rotate(1turn)}}.public-gallery-header{background:#0000001a;color:#fff;padding:80px 20px 60px;position:relative;text-align:center}.public-gallery-header .back-to-home-btn{background:#fff;border:none;border-radius:25px;box-shadow:0 4px 15px #0003;color:#667eea;cursor:pointer;font-weight:600;left:20px;padding:12px 24px;position:fixed;top:20px;transition:all .3s ease;z-index:1000}.public-gallery-header .back-to-home-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 6px 20px #0000004d;color:#fff;transform:translateY(-2px)}.public-gallery-header-content h1{font-size:48px;margin-bottom:15px;text-shadow:0 2px 10px #0003}.public-gallery-header-content p{font-size:20px;margin-bottom:20px;opacity:.95}.public-gallery-stats{display:flex;gap:30px;justify-content:center;margin-top:20px}.photo-count{background:#fff3;border-radius:25px;font-weight:600;padding:10px 25px}.category-filter-container,.photo-count{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.category-filter-container{background:#ffffff1a;padding:30px 20px}.category-filter-content{margin:0 auto;max-width:1400px}.category-filter-content h3{color:#fff;font-size:18px;font-weight:600;margin-bottom:15px}.category-tags{display:flex;flex-wrap:wrap;gap:12px}.category-tag{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border:2px solid #0000;border-radius:25px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.category-tag:hover{background:#ffffff4d;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.category-tag.active{background:#fff;border-color:#fff;box-shadow:0 4px 15px #ffffff4d;color:#667eea}.tag-count{background:#667eeacc;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:2px 8px}.category-tag.active .tag-count{background:#667eea}.no-photos-message{color:#fff;padding:60px 20px;text-align:center}.no-photos-message p{font-size:20px;margin-bottom:20px;opacity:.9}.reset-filter-btn{background:#fff;border:none;border-radius:25px;color:#667eea;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s ease}.reset-filter-btn:hover{box-shadow:0 6px 20px #ffffff4d;transform:translateY(-2px)}.public-gallery-grid-container{margin:0 auto;max-width:1400px;padding:40px 20px}.public-gallery-grid-layout{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.public-gallery-grid-item{border-radius:15px;box-shadow:0 4px 15px #0003;cursor:pointer;height:280px;overflow:hidden;position:relative;transition:all .3s ease}.public-gallery-grid-item:hover{box-shadow:0 12px 30px #0006;transform:translateY(-8px)}.public-gallery-grid-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.public-gallery-grid-item:hover .public-gallery-grid-image{transform:scale(1.1)}.public-gallery-grid-overlay{background:linear-gradient(0deg,#000000e6,#0000);bottom:0;left:0;padding:30px 20px 20px;position:absolute;right:0;transform:translateY(100%);transition:transform .3s ease}.public-gallery-grid-item:hover .public-gallery-grid-overlay{transform:translateY(0)}.public-gallery-grid-info h3{color:#fff;font-size:20px;margin-bottom:8px}.public-gallery-grid-info p{color:#ffffffe6;font-size:14px;margin-bottom:10px}.photo-category-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:5px 12px}.public-gallery-slideshow{background:#000000f2;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:2000}.slideshow-close-btn{align-items:center;background:#ffffff1a;border:2px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:50px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:50px;z-index:2001}.slideshow-close-btn:hover{background:#fff;color:#667eea;transform:rotate(90deg)}.slideshow-nav-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:40px;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:2001}.slideshow-prev-btn{left:30px}.slideshow-next-btn{right:30px}.slideshow-nav-btn:hover{background:#fff;color:#667eea;transform:translateY(-50%) scale(1.1)}.slideshow-content{flex:1 1;flex-direction:column;padding:80px 120px 20px}.slideshow-content,.slideshow-image-container{align-items:center;display:flex;justify-content:center}.slideshow-image-container{margin-bottom:20px;max-height:60vh;max-width:100%}.slideshow-image{border-radius:10px;box-shadow:0 10px 50px #00000080;max-height:60vh;max-width:100%;object-fit:contain}.slideshow-info{color:#fff;max-width:800px;padding:20px;text-align:center}.slideshow-info h2{font-size:32px;margin-bottom:15px}.slideshow-description{font-size:18px;line-height:1.6;margin-bottom:15px;opacity:.9}.slideshow-category-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-block;font-size:14px;font-weight:600;margin-bottom:15px;padding:8px 20px}.slideshow-counter{font-size:16px;margin-top:10px;opacity:.7}.slideshow-thumbnails{background:#00000080;display:flex;gap:10px;justify-content:center;overflow-x:auto;padding:20px}.slideshow-thumbnails::-webkit-scrollbar{height:8px}.slideshow-thumbnails::-webkit-scrollbar-track{background:#ffffff1a}.slideshow-thumbnails::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.slideshow-thumbnail{border:2px solid #0000;border-radius:8px;cursor:pointer;flex-shrink:0;height:60px;overflow:hidden;transition:all .3s ease;width:80px}.slideshow-thumbnail.active{border-color:#fff;box-shadow:0 0 15px #ffffff80}.slideshow-thumbnail:hover{border-color:#ffffff80;transform:scale(1.1)}.slideshow-thumbnail img{height:100%;object-fit:cover;width:100%}.public-gallery-cta-section{background:#0003;padding:60px 20px;text-align:center}.public-gallery-cta-content h2{color:#fff;font-size:36px;margin-bottom:15px}.public-gallery-cta-content p{color:#fff;font-size:18px;margin-bottom:30px;opacity:.9}.public-gallery-cta-btn{background:#fff;border:none;border-radius:30px;box-shadow:0 4px 15px #ffffff4d;color:#667eea;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:.5px;padding:16px 40px;text-transform:uppercase;transition:all .3s ease}.public-gallery-cta-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 6px 25px #ffffff80;color:#fff;transform:translateY(-3px)}.public-gallery-footer{background:#0000004d;border-top:1px solid #ffffff1a;color:#fff;padding:40px 20px;text-align:center}.public-gallery-footer p{margin:8px 0;opacity:.9}@media (max-width:768px){.public-gallery-header-content h1{font-size:32px}.category-filter-content h3,.public-gallery-header-content p{font-size:16px}.category-tags{gap:8px}.category-tag{font-size:13px;padding:8px 16px}.public-gallery-grid-layout{gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.public-gallery-grid-item{height:220px}.slideshow-content{padding:80px 20px 20px}.slideshow-nav-btn{font-size:32px;height:50px;width:50px}.slideshow-prev-btn{left:10px}.slideshow-next-btn{right:10px}.slideshow-info h2{font-size:24px}.slideshow-description{font-size:16px}.slideshow-image,.slideshow-image-container{max-height:50vh}.public-gallery-cta-content h2{font-size:28px}.public-gallery-cta-content p{font-size:16px}}@media (max-width:480px){.public-gallery-header .back-to-home-btn{font-size:14px;padding:10px 18px}.public-gallery-header-content h1{font-size:28px}.category-filter-container{padding:20px 15px}.category-filter-content h3{font-size:14px;margin-bottom:12px}.category-tag{font-size:12px;padding:6px 12px}.tag-count{font-size:11px;padding:2px 6px}.public-gallery-grid-layout{gap:15px;grid-template-columns:1fr}.public-gallery-grid-item{height:200px}.slideshow-nav-btn{font-size:28px;height:40px;width:40px}.slideshow-close-btn{font-size:24px;height:40px;width:40px}.slideshow-info h2{font-size:20px}.public-gallery-cta-btn{font-size:16px;padding:14px 32px}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6,ol,p,ul{margin:0;padding:0}ol,ul{list-style:none}button{font-family:inherit}input,select,textarea{font-family:inherit;width:100%}textarea{border:2px solid var(--border-light);border-radius:8px;font-size:14px;padding:10px 12px;resize:vertical}textarea:focus{border-color:var(--color-primary);outline:none}.text-center{text-align:center}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--color-gray-light)}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinner{animation:spin 1s linear infinite;border-top:3px solid var(--color-gray-border);border:3px solid var(--color-gray-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;margin:0 auto;width:40px}
/*# sourceMappingURL=main.d315519f.css.map*/