*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#004d40;--primary-dark:#002d25;--secondary:teal;--accent:#02c39a;--accent-light:#70e4ef;--text-dark:#002c24;--text-muted:#4d7a73;--text-light:#7da59f;--bg:#fff;--bg-light:#f4fbf9;--border:#e0f2f1}body{color:var(--text-dark);background:var(--bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}#root{min-height:100vh;margin:0 auto;position:relative;overflow-x:hidden}a{text-decoration:none}button{font-family:inherit}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:700;line-height:1.3}img{max-width:100%;height:auto}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.campus-meet{background:#fff;max-width:480px;min-height:100vh;margin:0 auto;box-shadow:0 0 40px #004d4014}@media (width>=768px){.campus-meet{max-width:520px}}.hero-section{background:linear-gradient(165deg, var(--primary-dark) 0%, var(--primary) 40%, var(--secondary) 75%, var(--accent) 100%);text-align:center;color:#fff;padding:40px 24px;position:relative;overflow:hidden}.hero-section:before{content:"";pointer-events:none;background:radial-gradient(circle at 20%,#ffffff14 0%,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff0d 0%,#0000 40%),radial-gradient(circle at 50% 80%,#02c39a1f 0%,#0000 50%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.hero-section:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40'%3E%3Cpath fill='%23ffffff' d='M0,20 C360,40 720,0 1080,20 C1260,30 1380,35 1440,20 L1440,40 L0,40 Z'/%3E%3C/svg%3E") bottom/cover no-repeat;height:40px;position:absolute;bottom:-2px;left:0;right:0}.hero-section .hero-content:before{content:"";background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;width:120px;height:120px;position:absolute;top:-30px;right:-40px}.hero-section .hero-content:after{content:"";background:#ffffff08;border:1px solid #ffffff0f;border-radius:50%;width:80px;height:80px;position:absolute;bottom:20px;left:-30px}.hero-content{z-index:1;max-width:500px;margin:0 auto;position:relative}.logo-container{margin-bottom:16px;display:inline-block;position:relative}.cm-logo{filter:drop-shadow(0 4px 20px #02c39a4d);width:75%;max-width:320px;height:auto;margin-left:auto;margin-right:auto}.hero-title{color:#fff;letter-spacing:-.5px;text-shadow:0 2px 8px #00000026;margin:0 0 18px;font-family:Poppins,sans-serif;font-size:32px;font-weight:800}.hero-meta{flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;display:flex}.meta-item{opacity:.9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#ffffff1a;border-radius:20px;align-items:center;gap:8px;padding:6px 14px;font-size:14px;text-decoration:none;display:inline-flex}.meta-venue{cursor:pointer;transition:background .2s}.meta-venue:hover{background:#fff3}.meta-announce{color:var(--accent-light);text-shadow:0 0 10px #02c39a66;margin:4px 0;font-size:13px;font-weight:700}.hero-description{opacity:.9;max-width:380px;margin-bottom:28px;margin-left:auto;margin-right:auto;font-size:14px;line-height:1.6}.btn-primary{background:linear-gradient(135deg, var(--secondary), var(--primary));color:#fff;letter-spacing:1px;border:1px solid #ffffff26;border-radius:30px;padding:16px 44px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 4px 20px #004d4040}.btn-primary:hover{background:linear-gradient(135deg, var(--secondary), var(--secondary));transform:translateY(-3px)scale(1.03);box-shadow:0 8px 30px #004d4059}.btn-primary:active{transform:translateY(0)scale(.98)}.countdown-section{text-align:center;background:#fff;padding:40px 24px}.countdown-label{letter-spacing:2px;color:var(--text-muted);margin:0 0 20px;font-size:12px;font-weight:600}.countdown-timer{justify-content:center;align-items:center;gap:16px;display:flex}.countdown-item{flex-direction:column;align-items:center;display:flex}.countdown-number{color:var(--primary);font-family:Poppins,sans-serif;font-size:42px;font-weight:800;line-height:1}.countdown-unit{color:var(--text-light);letter-spacing:1px;margin-top:4px;font-size:11px;font-weight:500}.countdown-sep{color:var(--accent-light);font-size:32px;font-weight:300}.prayer-college-section{text-align:center;padding:0}.prayer-college-card{box-shadow:none;background:0 0;border-radius:0;padding:0;position:relative;overflow:hidden}.prayer-college-card:before{display:none}.prayer-college-img{object-fit:cover;width:100%;height:240px;margin:0;display:block}.prayer-college-overlay{background:linear-gradient(#004d4026 0%,#004d40bf 100%);flex-direction:column;justify-content:flex-end;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.prayer-college-label{letter-spacing:3px;color:#fff;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;border-radius:12px;padding:6px 14px;font-size:10px;font-weight:700;position:absolute;top:16px;left:50%;transform:translate(-50%)}.prayer-college-name{color:#fff;text-shadow:0 2px 8px #00000080;margin:0 0 4px;font-size:22px;font-weight:800;line-height:1.3}.prayer-college-sub{color:#fff;text-shadow:0 1px 4px #0006;font-size:13px;font-weight:400}.prayer-college-no-img{background:linear-gradient(135deg, var(--primary), var(--secondary));padding:32px 24px}.prayer-college-no-img .prayer-college-label{color:#ffffffb3;background:0 0;margin-bottom:12px;padding:0;display:block;position:static;transform:none}.prayer-college-no-img .prayer-college-name{color:#fff}.prayer-college-no-img .prayer-college-sub{color:#ffffffb3}.spiritual-section{text-align:center;background:#fff;padding:40px 24px}.spiritual-section h2{color:var(--primary);margin:0 0 8px;font-size:22px;font-weight:700}.spiritual-subtitle{color:var(--text-muted);margin:0 0 30px;font-size:14px}.prayer-counter{flex-direction:column;align-items:center;margin-bottom:30px;display:flex}.prayer-number{background:linear-gradient(135deg, var(--secondary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-family:Poppins,sans-serif;font-size:64px;font-weight:800;line-height:1}.prayer-label{letter-spacing:2px;color:var(--text-muted);margin-top:8px;font-size:12px;font-weight:600}.offerings-grid{grid-template-columns:repeat(3,1fr);gap:12px;max-width:400px;margin-bottom:30px;margin-left:auto;margin-right:auto;display:grid}.offering-card{cursor:pointer;background:#f8f9fa;border:1px solid #eee;border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:16px 6px;transition:background .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.offering-card:hover:not(.offered){background:#f0f7ff;border-color:#d0dfff;box-shadow:0 2px 8px #1a73e81a}.offering-card.offered{cursor:default;background:#f0fdf4;border-color:#86efac}.offering-card.offering-display{cursor:default}.offering-icon{color:var(--primary);justify-content:center;align-items:center;line-height:1;display:flex}.offering-count{color:var(--primary);word-break:break-all;font-family:Outfit,sans-serif;font-size:24px;font-weight:800;line-height:1}.offering-card.offered .offering-count{color:#16a34a}.offering-label{color:#555;text-align:center;font-size:11px;font-weight:600}.offering-status{color:#999;font-size:10px;font-weight:500}.offering-card.offered .offering-status{color:#16a34a}.quote-block{background:var(--bg-light);border-left:4px solid var(--accent);text-align:left;border:1px solid var(--border);border-left-width:4px;border-radius:0 8px 8px 0;max-width:400px;margin:0 auto 30px;padding:20px 24px}.quote-block p{color:var(--text-dark);margin:0 0 8px;font-size:14px;line-height:1.6}.quote-note{margin-top:12px!important}.quote-attribution{color:var(--primary);font-weight:600}.btn-orange{background:linear-gradient(135deg, var(--accent), var(--secondary));color:var(--primary-dark);letter-spacing:.5px;cursor:pointer;border:none;border-radius:30px;margin-bottom:28px;padding:14px 36px;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-block;box-shadow:0 4px 12px #02c39a40}.btn-orange:hover{transform:translateY(-2px);box-shadow:0 8px 22px #02c39a59}.btn-orange:disabled{cursor:default}.btn-orange.btn-prayed{background:var(--primary);color:#fff;box-shadow:0 4px 12px #004d404d}.support-banner{text-align:center;background:var(--border);padding:20px 24px}.btn-yellow{background:linear-gradient(90deg, var(--accent-light), var(--accent), var(--accent-light));color:var(--primary-dark);box-sizing:border-box;background-size:200%;border-radius:30px;width:100%;max-width:320px;padding:14px 36px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;animation:3s linear infinite shimmer;display:inline-block;box-shadow:0 4px 12px #02c39a4d}.btn-yellow:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 6px 18px #02c39a73}.glimpses-section{text-align:center;background:#fff;padding:40px 24px}.glimpses-section h2{color:var(--primary);margin:0 0 8px;font-size:22px;font-weight:700}.glimpses-subtitle{color:#888;margin:0 0 24px;font-size:13px}.glimpses-gallery{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;padding-bottom:12px;display:flex;overflow-x:auto}.glimpses-gallery::-webkit-scrollbar{height:4px}.glimpses-gallery::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.gallery-item{scroll-snap-align:start;flex:0 0 180px;transition:transform .3s}.gallery-item:hover{transform:scale(1.05)rotate(1deg)}.gallery-img{object-fit:cover;border-radius:12px;width:180px;height:220px;transition:box-shadow .3s}.gallery-item:hover .gallery-img{box-shadow:0 8px 25px #00000026}.highlights-section{text-align:center;background:#fff;padding:40px 24px}.highlights-section h2{color:var(--primary);margin:0 0 20px;font-size:22px;font-weight:700}.video-embed{border-radius:12px;width:100%;margin-bottom:24px;padding-bottom:56.25%;position:relative;overflow:hidden;box-shadow:0 4px 16px #0000001a}.video-embed iframe{border:none;border-radius:12px;width:100%;height:100%;position:absolute;top:0;left:0}.btn-theme-song{color:#fff;background:#1db954;border-radius:30px;align-items:center;gap:8px;margin-bottom:24px;padding:12px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-flex;box-shadow:0 4px 12px #1db9544d}.btn-theme-song:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 6px 18px #1db95466}.day-tabs{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.day-tab{cursor:pointer;color:#666;background:#f0f0f0;border:none;border-radius:20px;padding:8px 20px;font-size:13px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.day-tab.active{background:var(--primary);color:#fff;transform:scale(1.05);box-shadow:0 4px 12px #004d404d}.day-tab:hover:not(.active){background:#e0e0e0;transform:translateY(-2px)}.faq-section{text-align:left;background:#fff;padding:40px 24px}.faq-section h2{color:var(--primary);text-align:center;margin:0 0 24px;font-size:22px;font-weight:700}.faq-list{flex-direction:column;gap:10px;max-width:500px;margin:0 auto 24px;display:flex}.faq-item{background:#f8f9fa;border:1px solid #eee;border-radius:12px;padding:0 16px;transition:background .3s,box-shadow .3s,border-color .3s;overflow:hidden}.faq-item:hover{background:var(--bg-light);border-color:var(--accent-light)}.faq-item.open{background:var(--bg-light);border-color:var(--primary);box-shadow:0 2px 12px #004d4014}.faq-question{color:#333;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:16px 0;font-size:14px;font-weight:500;line-height:1.4;display:flex}.faq-question:hover{color:var(--secondary)}.faq-chevron{color:#999;flex-shrink:0;transition:transform .3s cubic-bezier(.4,0,.2,1)}.faq-item.open .faq-chevron{color:var(--primary);transform:rotate(180deg)}.faq-answer{color:#555;border-top:1px solid #e0e8f5;padding:12px 0 16px;font-size:13px;line-height:1.7;overflow:hidden}.faq-answer p{margin:0}.whatsapp-link{background:var(--bg-light);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:10px;max-width:500px;margin:0 auto;padding:16px 20px;transition:background .2s;display:flex}.whatsapp-link:hover{background:var(--border)}.whatsapp-link span{color:var(--text-dark);flex:1;font-size:14px}.connect-section{text-align:center;background:#f8f9fa;padding:40px 24px}.connect-label{letter-spacing:2px;color:#666;margin:0 0 16px;font-size:11px;font-weight:600}.btn-outline{border:2px solid var(--primary);color:var(--primary);border-radius:30px;align-items:center;gap:8px;padding:12px 24px;font-size:13px;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-outline:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #004d4040}.btn-outline:hover svg{stroke:#fff}.footer{text-align:center;background:#fff;border-top:1px solid #eee;padding:40px 24px}.footer-logo{justify-content:center;align-items:center;gap:12px;margin-bottom:24px;display:flex}.jy-logo{object-fit:contain;width:40px;height:40px}.footer-brand{text-align:left;flex-direction:column;display:flex}.footer-brand strong{color:var(--primary);font-size:15px}.footer-brand span{color:#888;font-size:12px}.btn-whatsapp{color:#fff;background:#25d366;border-radius:30px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 32px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-flex;box-shadow:0 4px 12px #25d3664d}.btn-whatsapp:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 6px 18px #25d36666}.footer-call{color:#333;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;font-size:14px;text-decoration:none;display:flex}.footer-call:hover{color:var(--secondary)}.footer-social{justify-content:center;gap:20px;margin-bottom:24px;display:flex}.footer-social a{color:#555;transition:color .2s,transform .2s;display:inline-flex}.footer-social a:hover{color:var(--accent);transform:translateY(-3px)scale(1.15)}.footer-copy{color:#aaa;margin:0;font-size:11px}.fab{background:var(--accent);cursor:pointer;z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 12px #02c39a66}.fab:hover{box-shadow:0 6px 20px #02c39a80}@media (width<=360px){.hero-section{padding:40px 16px 36px}.hero-title{font-size:24px}.hero-description{font-size:13px}.cm-logo{width:300px}.btn-primary{padding:12px 32px;font-size:14px}.countdown-number{font-size:32px}.countdown-timer{gap:10px}.countdown-sep{font-size:24px}.prayer-number{font-size:48px}.gallery-item{flex:0 0 150px}.gallery-img{width:150px;height:180px}.day-tabs{gap:6px}.day-tab{padding:6px 14px;font-size:12px}.faq-question{padding:14px 0;font-size:13px}.btn-yellow{max-width:260px;padding:12px 24px}.btn-outline{padding:10px 18px;font-size:12px}.fab{width:44px;height:44px;bottom:16px;right:16px}}@media (width>=480px){.hero-title{font-size:32px}.countdown-number{font-size:48px}.countdown-timer{gap:20px}.spiritual-section h2,.glimpses-section h2,.highlights-section h2,.faq-section h2{font-size:24px}.gallery-item{flex:0 0 200px}.gallery-img{width:200px;height:240px}}@media (width>=768px){.hero-title{font-size:36px}.hero-description{font-size:15px}.countdown-number{font-size:56px}.prayer-number{font-size:72px}.gallery-item{flex:0 0 220px}.gallery-img{width:220px;height:260px}.faq-question{font-size:15px}.whatsapp-link{padding:18px 24px}}.offer-page{background:var(--bg-light);max-width:520px;min-height:100vh;margin:0 auto;padding:24px;position:relative}.back-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:8px 12px;font-size:14px;font-weight:600;transition:background .2s;display:inline-flex}.back-btn:hover{background:var(--border)}.offer-header{text-align:center;margin:24px 0 32px}.offer-header h1{color:var(--primary);margin:0 0 8px;font-size:24px;font-weight:800}.offer-header p{color:var(--text-muted);max-width:320px;margin:0 auto;font-size:14px;line-height:1.5}.offer-grid{grid-template-columns:repeat(2,1fr);gap:14px;max-width:360px;margin:0 auto;display:grid}.offer-card{border:2px solid var(--border);cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;transition:background .2s,border-color .2s,box-shadow .2s;display:flex}.offer-card:hover:not(.done){background:var(--bg-light);border-color:var(--accent);box-shadow:0 4px 16px #02c39a1f}.offer-card.done{cursor:default;background:#f0fdf4;border-color:#86efac}.offer-card-emoji{font-size:36px;line-height:1}.offer-card-icon{color:var(--secondary);justify-content:center;align-items:center;display:flex}.success-icon{color:var(--accent);justify-content:center;align-items:center;margin-bottom:12px;display:flex}.success-check{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 16px;display:flex}.offer-card-label{color:var(--text-dark);font-size:14px;font-weight:700}.offer-card-status{color:var(--text-light);font-size:12px;font-weight:500}.offer-card.done .offer-card-status{color:#16a34a}.success-overlay{z-index:1000;background:#f4fbf9f7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.success-content{text-align:center;padding:40px}.success-content h2{color:var(--primary);margin:0 0 12px;font-size:28px;font-weight:800}.success-content p{color:var(--text-muted);margin:0;font-size:15px;line-height:1.5}.success-sub{color:var(--text-dark)!important;margin-top:16px!important;font-size:18px!important}.bs-backdrop{z-index:1000;background:#0006;position:fixed;inset:0}.bs-sheet{z-index:1001;background:#fff;border-radius:20px 20px 0 0;flex-direction:column;max-height:75vh;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0000001f}.bs-handle{background:#ddd;border-radius:2px;width:36px;height:4px;margin:10px auto 0}.bs-header{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.bs-header h3{color:var(--primary);margin:0;font-size:16px;font-weight:700}.bs-close{cursor:pointer;color:#666;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:background .2s;display:flex}.bs-close:hover{background:#f0f0f0}.bs-options{-webkit-overflow-scrolling:touch;padding:8px 12px 24px;overflow-y:auto}.bs-option{width:100%;color:var(--text-dark);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;padding:14px 16px;font-family:inherit;font-size:14px;transition:background .2s;display:flex}.bs-option:hover{background:var(--bg-light)}.bs-option.selected{color:var(--primary);background:#e0f7f1;font-weight:600}.bs-option.selected svg{stroke:var(--accent)}@media (width>=768px){.bs-backdrop,.bs-sheet{display:none!important}}.register-page{background:var(--bg-light);max-width:520px;min-height:100vh;margin:0 auto;padding:24px;position:relative}.reg-header{text-align:center;margin:24px 0 28px}.reg-header h1{color:var(--primary);margin:0 0 8px;font-size:22px;font-weight:800}.reg-header p{color:var(--text-muted);font-size:14px}.reg-form{flex-direction:column;gap:18px;max-width:400px;margin:0 auto;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-dark);font-size:13px;font-weight:600}.required{color:#e53e3e}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--border);background:var(--bg-light);color:var(--text-dark);border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-light)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--secondary);background:#fff;box-shadow:0 0 0 3px #0080801a}.form-group textarea{resize:vertical;min-height:80px}.phone-input-wrapper{border:1.5px solid var(--border);border-radius:10px;align-items:center;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.phone-input-wrapper:focus-within{border-color:var(--secondary);box-shadow:0 0 0 3px #0080801a}.phone-prefix{background:var(--border);color:var(--text-dark);white-space:nowrap;padding:12px 12px 12px 14px;font-size:14px;font-weight:600}.phone-input-wrapper input{background:var(--bg-light);color:var(--text-dark);letter-spacing:1px;outline:none;flex:1;padding:12px 14px;font-family:inherit;font-size:14px;box-shadow:none!important;border:none!important}.gender-options{gap:12px;display:flex}.gender-option{border:1.5px solid var(--border);color:var(--text-dark);cursor:pointer;background:var(--bg-light);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.gender-option input{display:none}.gender-option.selected{border-color:var(--secondary);color:var(--primary);background:#e0f2f1;font-weight:600}.photo-upload-label{border:2px dashed var(--border);color:var(--text-muted);cursor:pointer;text-align:center;border-radius:12px;justify-content:center;align-items:center;padding:24px 14px;font-size:14px;transition:border-color .2s,background .2s;display:flex}.photo-upload-label:hover{border-color:var(--secondary);background:var(--bg-light)}.photo-preview{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:100px;height:100px;margin-top:8px}.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23004D40' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.sheet-trigger{border:1.5px solid var(--border);background:var(--bg-light);color:var(--text-dark);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23004D40' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:10px;padding:12px 36px 12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.sheet-trigger:hover{border-color:var(--secondary);box-shadow:0 0 0 3px #0080801a}.mobile-only{display:block}.desktop-only{display:none}@media (width>=768px){.mobile-only{display:none}.desktop-only{display:block}}.form-error{color:#e53e3e;text-align:center;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;margin:0;padding:10px;font-size:13px;font-weight:500}.reg-submit-btn{background:linear-gradient(135deg, var(--accent), var(--secondary));color:var(--primary-dark);letter-spacing:1px;cursor:pointer;border:none;border-radius:30px;margin-top:8px;padding:14px 40px;font-size:15px;font-weight:700;transition:box-shadow .2s,transform .2s;box-shadow:0 4px 16px #02c39a40}.reg-submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #02c39a59}.reg-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.reg-success-overlay{z-index:1000;background:#f4fbf9f7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reg-success-content{text-align:center;padding:40px}.reg-success-icon{color:var(--accent);margin-bottom:16px}.reg-success-content h2{color:var(--primary);margin:0 0 12px;font-size:28px;font-weight:800}.reg-success-content p{color:var(--text-muted);margin:0;font-size:15px;line-height:1.5}.reg-success-sub{color:var(--text-muted)!important;margin-top:16px!important;font-size:14px!important}.reg-success-avatar{object-fit:cover;border:3px solid var(--accent);border-radius:50%;width:90px;height:90px;margin-bottom:16px;box-shadow:0 4px 16px #02c39a33}.reg-success-note{font-style:italic;color:var(--text-light)!important;margin-top:16px!important;font-size:13px!important}.reg-code-display{background:var(--bg-light);border:2px dashed var(--accent);border-radius:12px;flex-direction:column;align-items:center;gap:6px;margin-top:20px;padding:16px 24px;display:flex}.reg-code-label{color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:500}.reg-code-value{color:var(--primary);letter-spacing:2px;font-family:Outfit,monospace;font-size:32px;font-weight:900}.reg-home-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;margin-top:20px;padding:12px 28px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s}.reg-home-btn:hover{background:var(--primary-dark)}.admin-page,.admin-login-page{width:100%;max-width:none}.admin-login-page{background:linear-gradient(160deg,#f4fbf9 0%,#e0f2f1 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.admin-login-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:360px;padding:40px 32px;box-shadow:0 4px 24px #004d4014}.admin-login-icon{color:var(--primary);margin-bottom:16px}.admin-login-logo{width:120px;height:auto}.admin-login-card h1{color:var(--primary);margin:0 0 4px;font-size:22px;font-weight:800}.admin-login-card p{color:var(--text-muted);margin:0 0 28px;font-size:13px}.admin-field{margin-bottom:14px}.admin-field input{border:1.5px solid var(--border);box-sizing:border-box;border-radius:10px;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;transition:border-color .2s}.admin-field input:focus{border-color:var(--secondary)}.admin-error{color:#e53e3e;margin:0 0 12px;font-size:13px}.admin-login-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:8px;padding:12px;font-size:14px;font-weight:600;transition:background .2s}.admin-login-btn:hover{background:var(--primary-dark)}.admin-login-btn:disabled{opacity:.7;cursor:not-allowed}.admin-page{max-width:960px;min-height:100vh;margin:0 auto;padding:32px 40px}.admin-loading{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:24px;display:flex}.admin-header h1{color:var(--primary);margin:0;font-size:24px;font-weight:800}.admin-header-actions{flex-wrap:wrap;gap:6px;display:flex}.admin-nav-btn{background:var(--bg-light);border:1px solid var(--border);color:var(--primary);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:background .2s;display:inline-flex}.admin-nav-btn:hover{background:var(--border)}.admin-logout-btn{color:#e53e3e;cursor:pointer;white-space:nowrap;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:background .2s;display:inline-flex}.admin-logout-btn:hover{background:#fed7d7}.admin-back-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:8px 0;font-family:inherit;font-size:14px;font-weight:500;display:inline-flex}.admin-export-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:background .2s;display:inline-flex}.admin-export-btn:hover{background:var(--primary-dark)}.admin-title{color:var(--primary);margin:0 0 16px;font-size:20px;font-weight:700}.admin-stats{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:32px;display:grid}.stat-card{border:1px solid var(--border);color:var(--primary);background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;display:flex}.stat-number{word-break:break-all;font-family:Outfit,sans-serif;font-size:36px;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);font-size:12px;font-weight:500}.admin-section{margin-bottom:28px}.admin-section h2{color:var(--text-dark);margin:0 0 14px;font-size:16px;font-weight:700}.admin-empty{color:var(--text-light);text-align:center;padding:24px;font-size:14px}.offerings-breakdown{flex-direction:column;gap:10px;display:flex}.offering-row{align-items:center;gap:12px;display:flex}.offering-type{color:var(--text-dark);text-transform:capitalize;flex-shrink:0;width:80px;font-size:13px;font-weight:500}.offering-bar-container{background:var(--bg-light);border-radius:4px;flex:1;height:8px;overflow:hidden}.offering-bar{background:linear-gradient(90deg, var(--accent), var(--secondary));border-radius:4px;min-width:4px;height:100%;transition:width .5s;display:block}.offering-row-count{color:var(--primary);text-align:right;min-width:48px;font-size:14px;font-weight:700}.recent-list{flex-direction:column;gap:8px;display:flex}.recent-item{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 14px}.recent-name{color:var(--text-dark);font-size:14px;font-weight:600}.recent-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.admin-search{border:1.5px solid var(--border);color:var(--text-muted);background:#fff;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.admin-search input{color:var(--text-dark);border:none;outline:none;flex:1;font-family:inherit;font-size:14px}.admin-search input::placeholder{color:var(--text-light)}.reg-table{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=640px){.reg-table{grid-template-columns:repeat(2,1fr)}}.reg-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px 16px}.reg-card-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.reg-card-header-left{align-items:center;gap:10px;display:flex}.reg-card-photo{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:36px;height:36px}.reg-card-name{color:var(--text-dark);font-size:15px;font-weight:600}.reg-card-year{background:var(--bg-light);color:var(--primary);border-radius:10px;padding:2px 8px;font-size:12px;font-weight:500}.reg-card-details{color:var(--text-muted);flex-direction:column;gap:2px;font-size:12px;display:flex}.reg-card-prayer{color:var(--text-light);background:var(--bg-light);border-radius:6px;margin-top:8px;padding:8px 10px;font-size:12px}.reg-card-date{color:var(--text-light);margin-top:8px;font-size:11px}.reg-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;display:flex}.reg-payment-btn{cursor:pointer;border:none;border-radius:20px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.reg-payment-btn.unpaid{color:#e65100;background:#fff3e0;border:1px solid #ffcc80}.reg-payment-btn.unpaid:hover{background:#ffe0b2}.reg-payment-btn.paid{color:#2e7d32;background:#e8f5e9;border:1px solid #a5d6a7}.reg-payment-btn.paid:hover{background:#c8e6c9}.load-more-container{justify-content:center;padding:24px 0;display:flex}.load-more-btn{background:var(--bg-light);border:1.5px solid var(--border);color:var(--primary);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 28px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.load-more-btn:hover{background:var(--border)}.load-more-btn:disabled{opacity:.7;cursor:not-allowed}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.prayer-college-admin{border:1px solid var(--border);background:#fff;border-radius:12px;padding:16px}.prayer-college-current{color:var(--text-muted);margin-bottom:12px;font-size:13px;display:block}.prayer-college-current strong{color:var(--primary)}.prayer-college-input-row{gap:8px;display:flex}.prayer-college-input{border:1.5px solid var(--border);border-radius:8px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.prayer-college-input:focus{border-color:var(--secondary)}.prayer-college-save{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:600;transition:background .2s}.prayer-college-save:hover{background:var(--primary-dark)}.prayer-college-save:disabled{opacity:.5;cursor:not-allowed}.prayer-college-preview{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:100%;max-height:180px;margin:12px 0}.prayer-college-file-label{border:1.5px dashed var(--border);color:var(--text-muted);cursor:pointer;text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;flex:1;padding:10px 14px;font-size:13px;transition:border-color .2s,background .2s;overflow:hidden}.prayer-college-file-label:hover{border-color:var(--secondary);background:var(--bg-light)}@media (width>=768px){.admin-stats{grid-template-columns:repeat(4,1fr)}.admin-header h1{font-size:28px}.offering-type{width:100px}}@media (width<=480px){.admin-page{padding:16px}.admin-header{flex-direction:column;align-items:flex-start}.admin-stats{grid-template-columns:repeat(2,1fr);gap:8px}.stat-number{font-size:28px}.offering-type{width:60px;font-size:11px}.reg-table{grid-template-columns:1fr}}.ministry-groups{flex-direction:column;gap:16px;display:flex}.ministry-group{border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden}.ministry-group-header{cursor:pointer;width:100%;color:var(--primary);background:0 0;border:none;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;font-size:15px;font-weight:600;transition:background .2s;display:flex}.ministry-group-header:hover{background:var(--bg-light)}.ministry-group-name{text-align:left;flex:1}.ministry-group-count{background:var(--bg-light);color:var(--text-muted);border-radius:10px;padding:2px 10px;font-size:13px;font-weight:500}.ministry-group-members{flex-direction:column;gap:10px;padding:0 16px 16px;display:flex}.vol-card{background:var(--bg-light);border-radius:10px;padding:12px 14px}.vol-card-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.vol-card-info{align-items:center;gap:10px;display:flex}.vol-card-photo{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:32px;height:32px}.vol-card-name{color:var(--text-dark);font-size:14px;font-weight:600;display:block}.vol-card-code{color:var(--text-muted);font-family:monospace;font-size:11px}.vol-card-details{color:var(--text-muted);flex-direction:column;gap:2px;margin-bottom:8px;font-size:12px;display:flex}.vol-card-actions{gap:8px;display:flex}.vol-action-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:background .2s;display:inline-flex}.vol-action-btn.transfer{color:#1565c0;background:#e3f2fd}.vol-action-btn.transfer:hover{background:#bbdefb}.vol-action-btn.demote{color:#c62828;background:#fce4ec}.vol-action-btn.demote:hover{background:#f8bbd0}.vol-action-btn.promote{color:#2e7d32;background:#e8f5e9}.vol-action-btn.promote:hover{background:#c8e6c9}.reg-card-footer-actions{align-items:center;gap:6px;display:flex}.ministry-add-row{gap:8px;margin-bottom:20px;display:flex}.ministry-add-input{border:1.5px solid var(--border);border-radius:8px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .2s}.ministry-add-input:focus{border-color:var(--secondary)}.ministry-add-btn{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.ministry-add-btn:disabled{opacity:.5;cursor:not-allowed}.ministry-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.ministry-item{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 16px}.ministry-item-row{justify-content:space-between;align-items:center;display:flex}.ministry-item-info{flex-direction:column;gap:2px;display:flex}.ministry-item-name{color:var(--text-dark);font-size:15px;font-weight:600}.ministry-item-count{color:var(--text-muted);font-size:12px}.ministry-item-actions{gap:6px;display:flex}.ministry-icon-btn{cursor:pointer;border:none;border-radius:6px;padding:6px;transition:background .2s;display:flex}.ministry-icon-btn.edit{color:#1565c0;background:#e3f2fd}.ministry-icon-btn.delete{color:#c62828;background:#fce4ec}.ministry-icon-btn.save{color:#2e7d32;background:#e8f5e9}.ministry-icon-btn.cancel{color:#666;background:#f5f5f5}.ministry-edit-row{align-items:center;gap:6px;display:flex}.ministry-edit-input{border:1.5px solid var(--secondary);border-radius:6px;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:14px}.modal-backdrop{z-index:1000;background:#0006;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:360px;max-height:80vh;padding:24px;overflow-y:auto}.modal-content h3{color:var(--primary);margin:0 0 16px;font-size:18px;font-weight:700}.modal-options{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.modal-option{background:var(--bg-light);border:1px solid var(--border);color:var(--text-dark);cursor:pointer;text-align:left;border-radius:10px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s}.modal-option:hover{border-color:var(--secondary);background:#e0f2f1}.modal-cancel{border:1px solid var(--border);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:10px;font-family:inherit;font-size:13px}.ministry-tabs{-webkit-overflow-scrolling:touch;gap:8px;margin-bottom:20px;padding-bottom:8px;display:flex;overflow-x:auto}.ministry-tabs::-webkit-scrollbar{height:3px}.ministry-tabs::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.ministry-tab{border:1.5px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:20px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s}.ministry-tab:hover{border-color:var(--secondary);color:var(--primary)}.ministry-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.vol-list{flex-direction:column;gap:10px;display:flex}.vol-card-ministry{color:var(--primary);background:#e0f2f1;border-radius:8px;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.participant-detail{max-width:600px;margin-top:20px}.pd-header{align-items:center;gap:20px;margin-bottom:28px;display:flex}.pd-photo{object-fit:cover;border:3px solid var(--accent);border-radius:50%;width:80px;height:80px}.pd-photo-placeholder{background:var(--bg-light);border:2px solid var(--border);width:80px;height:80px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.pd-header-info{flex-direction:column;gap:4px;display:flex}.pd-name{color:var(--text-dark);margin:0;font-size:24px;font-weight:800}.pd-code{color:var(--secondary);font-family:monospace;font-size:14px;font-weight:600}.pd-gender{color:var(--text-muted);text-transform:capitalize;font-size:12px}.pd-info-grid{flex-direction:column;gap:14px;margin-bottom:24px;display:flex}.pd-info-item{color:var(--secondary);align-items:flex-start;gap:12px;display:flex}.pd-info-item div{flex-direction:column;gap:2px;display:flex}.pd-info-label{color:var(--text-light);font-size:11px;font-weight:500}.pd-info-value{color:var(--text-dark);font-size:14px;font-weight:500}.pd-prayer{background:var(--bg-light);border-radius:10px;margin-bottom:20px;padding:14px 16px}.pd-prayer-label{color:var(--text-light);margin-bottom:6px;font-size:11px;font-weight:500;display:block}.pd-prayer p{color:var(--text-muted);margin:0;font-size:14px;font-style:italic}.pd-meta{color:var(--text-muted);flex-wrap:wrap;gap:20px;margin-bottom:24px;font-size:13px;display:flex}.pd-actions{flex-wrap:wrap;gap:12px;display:flex}.pd-promote-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s;display:inline-flex}.pd-promote-btn:hover{background:var(--primary-dark)}.reg-card-clickable{cursor:pointer;transition:border-color .2s,box-shadow .2s}.reg-card-clickable:hover{border-color:var(--secondary);box-shadow:0 2px 12px #0080801a}
