@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap";:root{--bg-color:#f1f5f9;--sidebar-bg:#fff;--topbar-bg:#fff;--text-main:#334155;--text-muted:#64748b;--primary:#064e3b;--primary-hover:#047857;--hover-bg:#f8fafc;--border-color:#e2e8f0;--card-bg:#fff;--accent:#dc2626;--shadow-sm:0 1px 2px 0 #0000000d;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--sidebar-width:260px;--transition:all .3s ease}[data-theme=dark]{--bg-color:#0f172a;--sidebar-bg:#1e293b;--topbar-bg:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--primary:#22c55e;--primary-hover:#16a34a;--hover-bg:#334155;--border-color:#334155;--card-bg:#1e293b;--shadow:0 4px 6px -1px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);transition:var(--transition);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}ul{list-style:none}.admin-wrapper{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);height:100vh;transition:var(--transition);z-index:1002;position:fixed;overflow-y:auto}.sidebar-overlay{z-index:1001;opacity:0;background:#0006;width:100vw;height:100vh;transition:opacity .3s;display:none;position:fixed;inset:0}.sidebar-overlay.active{opacity:1;display:block}.sidebar-header{height:70px;color:var(--primary);border-bottom:1px solid var(--border-color);align-items:center;padding:0 1.5rem;font-size:1.25rem;font-weight:700;display:flex}.sidebar-header img{object-fit:contain;width:auto;height:30px;margin-right:10px}.sidebar-menu{padding:1rem 0}.menu-item{color:var(--text-muted);transition:var(--transition);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:1rem;width:100%;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:500;display:flex}.menu-item:hover,.menu-item.active{background-color:var(--hover-bg);color:var(--primary);border-right:3px solid var(--primary)}.menu-item i{text-align:center;width:24px;font-size:1.25rem}.menu-item.logout{color:#ef4444;border-top:1px solid #ffffff1a;margin-top:1rem;padding-top:1rem}.main-content{margin-left:var(--sidebar-width);min-height:100vh;transition:var(--transition);flex-direction:column;flex:1;display:flex}.topbar{background-color:var(--topbar-bg);border-bottom:1px solid var(--border-color);z-index:999;justify-content:space-between;align-items:center;height:70px;padding:0 2rem;display:flex;position:sticky;top:0}.sidebar-toggle{cursor:pointer;color:var(--text-main);font-size:1.25rem}.topbar-right{align-items:center;gap:1.5rem;display:flex}.theme-toggle{cursor:pointer;color:var(--text-main);font-size:1.25rem}.profile-dropdown{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.profile-img{background-color:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;font-weight:700;display:flex}.notification-dropdown{cursor:pointer;position:relative}.notif-badge{color:#fff;background:#ef4444;border-radius:50%;padding:2px 6px;font-size:.7rem;font-weight:700;position:absolute;top:-5px;right:-5px}.notif-panel{background:var(--card-bg);width:320px;box-shadow:var(--shadow-xl);border-radius:var(--radius-lg);z-index:1000;border:1px solid var(--border-color);position:absolute;top:130%;right:0;overflow:hidden}.notif-panel-header{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:1rem;font-weight:600;display:flex}.notif-list{max-height:320px;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border-color);padding:1rem}.notif-item.unread{background:#064e3b0d}.content-area{flex:1;padding:2rem}.page-title{margin-bottom:1.5rem;font-size:1.5rem}.page-title h2{color:var(--text-main);font-size:1.5rem;font-weight:700}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.page-header h1{color:var(--text-main);font-size:1.5rem;font-weight:700}.page-header .subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.9rem}.widgets-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.widget-card{background-color:var(--card-bg);box-shadow:var(--shadow);transition:var(--transition);border-radius:.5rem;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.widget-card:hover{transform:translateY(-5px)}.w-info h3{color:var(--text-main);margin-bottom:.25rem;font-size:2rem}.w-info p{color:var(--text-muted);font-size:.875rem;font-weight:500}.w-icon{width:60px;height:60px;color:var(--primary);background-color:#064e3b1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.75rem;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{background-color:var(--card-bg);box-shadow:var(--shadow);border-radius:.5rem;align-items:center;gap:1rem;padding:1.5rem;display:flex}.stat-icon{width:56px;height:56px;color:var(--primary);background:#064e3b1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-info h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:500}.stat-value{color:var(--text-main);font-size:1.75rem;font-weight:700}.charts-grid{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}.chart-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem}.chart-header{color:var(--text-main);margin-bottom:1rem;font-size:1rem;font-weight:600}.chart-body{height:280px;position:relative}.card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem}.section-title{color:var(--text-main);margin-bottom:1rem;font-size:1.1rem;font-weight:700}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-size:.9rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);box-shadow:var(--shadow);transform:translateY(-1px)}.btn-outline,.btn-ghost{background-color:var(--card-bg);color:var(--text-main);border:1px solid var(--border-color)}.btn-outline:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background-color:var(--hover-bg)}.btn-danger{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca}.btn-danger:hover:not(:disabled){background-color:#fecaca}.btn-sm{padding:.35rem .65rem;font-size:.8rem}.btn-icon{padding:.45rem}[data-theme=dark] .btn-danger{color:#fca5a5;background-color:#ef444426;border-color:#ef44444d}.table-wrap{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-overflow-scrolling:touch;border:1px solid var(--border-color);overflow-x:auto}table.data-table{border-collapse:collapse;width:100%;min-width:560px}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--hover-bg);border-bottom:1px solid var(--border-color);padding:.9rem 1rem;font-size:.75rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-main);padding:.9rem 1rem;font-size:.9rem}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:var(--hover-bg)}.badge{text-transform:capitalize;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge-green{color:#059669;background:#10b9811f}.badge-blue{color:var(--primary);background:#064e3b1a}.badge-purple{color:#7c3aed;background:#8b5cf61f}.badge-amber{color:#d97706;background:#f59e0b1f}.badge-red{color:#dc2626;background:#ef44441f}.badge-gray{color:#64748b;background:#64748b1f}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem;display:grid}.field{flex-direction:column;gap:.4rem;display:flex}.field label,.field .field-label{color:var(--text-muted);font-size:.85rem;font-weight:500}.field input,.field select,.field textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg);width:100%;color:var(--text-main);padding:.6rem .8rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #064e3b1a}.field textarea{resize:vertical;min-height:90px}.field-full{grid-column:1/-1}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.search-box{flex:1;min-width:220px;position:relative}.search-box input{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg);width:100%;color:var(--text-main);padding:.6rem .8rem .6rem 2.3rem;font-family:inherit}.search-box input:focus{border-color:var(--primary);outline:none}.search-box svg,.search-box i{color:var(--text-muted);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}select.filter{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text-main);padding:.6rem .8rem;font-family:inherit}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;background:#00000080;justify-content:center;align-items:flex-start;padding:3rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.modal,.modal-content{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:700px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);padding:2rem}.modal-lg{max-width:850px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.modal-header h2,.modal-header h3{color:var(--text-main);font-size:1.25rem;font-weight:600}.modal-footer{justify-content:flex-end;gap:.75rem;margin-top:1.75rem;display:flex}.mt-8{margin-top:2rem}.muted{color:var(--text-muted)}.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.center-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}.row{align-items:center;gap:.75rem;display:flex}.spread{justify-content:space-between;align-items:center;display:flex}.avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:600;display:flex}.error-text{color:#dc2626;font-size:.85rem}.login-page{background-color:var(--bg-color);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:1rem;width:100%;max-width:400px;padding:3rem;box-shadow:0 10px 25px #0000000d}.logo-container{text-align:center;margin-bottom:2rem}.logo-container img{height:60px;margin-bottom:1rem}.logo-container h2{color:var(--primary);margin:0;font-size:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-muted);margin-bottom:.5rem;font-weight:500;display:block}.form-control{border:1px solid var(--border-color);box-sizing:border-box;background:var(--card-bg);width:100%;color:var(--text-main);border-radius:.5rem;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #064e3b1a}.invalid-feedback{color:#ef4444;margin-bottom:1rem;font-size:.85rem;display:block}.btn-login{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:background-color .2s}.btn-login:hover:not(:disabled){background-color:var(--primary-hover)}.btn-login:disabled{opacity:.7;cursor:not-allowed}.login-hint{text-align:center;color:var(--text-muted);margin-top:1.5rem;font-size:.8rem}.sms-layout{grid-template-columns:370px 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=1024px){.sms-layout{grid-template-columns:1fr}}.panel{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border-color);padding:1.5rem}.panel-title{color:var(--text-main);border-bottom:1px solid var(--border-color);margin-bottom:1.25rem;padding-bottom:.6rem;font-size:1.1rem;font-weight:700}.sms-balance{color:#fff;background:linear-gradient(105deg,#064e3b 0%,#b91c1c 100%);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1.2rem 1.4rem;display:flex}.sms-balance-label{opacity:.9;letter-spacing:.06em;margin-bottom:.3rem;font-size:.72rem}.sms-balance-value{font-size:1.8rem;font-weight:800;line-height:1}.sms-balance-sub{opacity:.85;margin-top:.4rem;font-size:.73rem}.sms-balance-refresh{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;padding:.5rem .65rem}.sms-balance-refresh:hover{background:#ffffff40}.switch{flex-shrink:0;width:46px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch-slider{cursor:pointer;background:#cbd5e1;border-radius:999px;transition:all .3s;position:absolute;inset:0}.switch-slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}.switch input:checked+.switch-slider{background:var(--primary)}.switch input:checked+.switch-slider:before{transform:translate(22px)}.cal{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border-color);-webkit-overflow-scrolling:touch;overflow-x:auto}.cal-head,.cal-grid{min-width:640px}.cal-head{background:var(--hover-bg);border-bottom:1px solid var(--border-color);grid-template-columns:repeat(7,1fr);display:grid}.cal-dow{text-align:center;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:.6rem;font-size:.72rem;font-weight:600}.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-cell{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);cursor:pointer;flex-direction:column;gap:3px;min-height:104px;padding:.4rem;transition:background .15s;display:flex}.cal-cell:nth-child(7n){border-right:none}.cal-cell:hover{background:var(--hover-bg)}.cal-out{background:repeating-linear-gradient(45deg,#0000,#0000 6px,#94a3b80a 6px 12px)}.cal-out .cal-daynum{color:var(--text-muted);opacity:.55}.cal-daynum{color:var(--text-main);border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:600;display:flex}.cal-today .cal-daynum{background:var(--primary);color:#fff}.cal-event{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;border-left:2px solid var(--primary);background:#064e3b1a;border-radius:4px;padding:2px 6px;font-size:.72rem;font-weight:500;overflow:hidden}.cal-event:hover{background:#064e3b2e}[data-theme=dark] .cal-event{color:#4ade80;background:#22c55e26;border-left-color:#22c55e}.cal-more{color:var(--text-muted);padding-left:4px;font-size:.68rem}@media (width<=640px){.cal-cell{min-height:72px}.cal-event{font-size:.62rem}}.reports-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.report-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center;border:1px solid var(--border-color);transition:var(--transition);padding:2rem}.report-card:hover{border-color:var(--primary);transform:translateY(-3px)}.report-icon{color:var(--primary);opacity:.8;margin-bottom:1.5rem;font-size:3rem}.report-title{color:var(--text-main);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.report-desc{color:var(--text-muted);min-height:45px;margin-bottom:2rem;font-size:.875rem}.export-btns{justify-content:center;gap:1rem;display:flex}.btn-export-csv{color:#fff;border-radius:var(--radius-md);cursor:pointer;background:#10b981;border:none;align-items:center;gap:.4rem;padding:.5rem 1.2rem;font-weight:500;display:inline-flex}.btn-export-csv:hover{background:#059669}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.5s cubic-bezier(.16,1,.3,1) both fadeInUp}.stat-card,.widget-card,.chart-card{transition:transform .2s,box-shadow .2s}.stat-card:hover,.chart-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-icon.grad{box-shadow:0 6px 16px -4px #00000040;color:#fff!important}.stat-card{border-radius:16px;gap:1.1rem;padding:1.35rem}.stat-card .stat-icon{border-radius:14px;width:52px;height:52px}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.chart-card{border-radius:16px}.chart-header{align-items:center;gap:.5rem;font-weight:700;display:flex}.widget-card{border-radius:16px}.fin-banner{color:#fff;background:linear-gradient(120deg,#064e3b 0%,#047857 55%,#065f46 100%);border-radius:20px;margin-bottom:1.5rem;padding:2rem 2.25rem;position:relative;overflow:hidden;box-shadow:0 20px 45px -12px #064e3b73}.fin-banner:after{content:"";background:#ffffff12;border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.fin-banner:before{content:"";background:#ffffff0d;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-80px;right:40px}.fin-banner .lbl{text-transform:uppercase;letter-spacing:.12em;opacity:.85;font-size:.78rem;font-weight:600}.fin-banner .net{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:.3rem;font-size:2.75rem;font-weight:800;line-height:1}.fin-chips{z-index:1;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex;position:relative}.fin-chip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff21;border:1px solid #ffffff38;border-radius:14px;align-items:center;gap:.55rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.fin-chip .c-ico{border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;display:flex}.fin-chip small{opacity:.8;text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:500;display:block}.toast-stack{z-index:3000;flex-direction:column;gap:.6rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:#fff;padding:.85rem 1.1rem;font-size:.9rem;animation:.2s ease-out fadeIn}.toast-success{background:#059669}.toast-error{background:#dc2626}.toast-info{background:var(--primary)}@media (width<=1024px){.sidebar{box-shadow:var(--shadow-lg);transform:translate(-100%)}.sidebar.active{transform:translate(0)}.main-content{margin-left:0}.content-area{padding:1.5rem}.charts-grid{grid-template-columns:1fr}}@media (width>=1025px){.sidebar-toggle{display:none}}@media (width<=768px){.topbar{padding:0 1rem}.topbar-right{gap:1rem}.profile-dropdown span{display:none}.content-area{padding:1rem}.page-header h1{font-size:1.3rem}.modal,.modal-content{padding:1.5rem}.modal-overlay{padding:1.5rem .75rem}.notif-panel{width:min(300px,100vw - 2rem)}}@media (width<=480px){.w-info h3{font-size:1.6rem}.login-container{padding:2rem 1.5rem}.stat-value{font-size:1.5rem}}.portal-switch{background:#0f172a0f;border-radius:11px;gap:.2rem;padding:.22rem;display:inline-flex}.portal-switch a{color:var(--text-muted);white-space:nowrap;border-radius:8px;align-items:center;gap:.4rem;padding:.38rem .75rem;font-size:.82rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.portal-switch a i{font-size:.8rem}.portal-switch a:hover{color:var(--text-main)}.portal-switch a.active{color:var(--primary);background:#fff;box-shadow:0 1px 3px #0f172a24}@media (width<=640px){.portal-switch a span{display:none}.portal-switch a{padding:.38rem .55rem}}.give-form{--gf-green:#064e3b;--gf-green-dark:#022c22;--gf-gold:#eab308;color:#1e293b}.give-form *{box-sizing:border-box}.give-form .gf-label{color:#475569;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .4rem;font-size:.8rem;font-weight:600;display:block}.give-form .gf-types{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.5rem;margin-bottom:1.1rem;display:grid}.give-form .gf-type{cursor:pointer;color:#475569;text-align:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:.6rem .4rem;font-size:.82rem;font-weight:600;transition:all .15s}.give-form .gf-type:hover{border-color:var(--gf-green)}.give-form .gf-type.active{background:var(--gf-green);border-color:var(--gf-green);color:#fff}.give-form .gf-field{margin-bottom:1rem}.give-form input,.give-form select{color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;width:100%;padding:.7rem .85rem;font-family:inherit;font-size:.95rem}.give-form input:focus,.give-form select:focus{border-color:var(--gf-green);outline:none;box-shadow:0 0 0 3px #064e3b1a}.give-form .gf-amounts{flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;display:flex}.give-form .gf-amt{cursor:pointer;color:#475569;background:#fff;border:1.5px solid #e2e8f0;border-radius:999px;padding:.5rem .9rem;font-size:.85rem;font-weight:600}.give-form .gf-amt.active{border-color:var(--gf-gold);color:#92600a;background:#eab30826}.give-form .gf-amount-wrap{position:relative}.give-form .gf-currency{color:#64748b;font-weight:700;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.give-form .gf-amount-wrap input{padding-left:3.2rem;font-size:1.2rem;font-weight:700}.give-form .gf-submit{background:linear-gradient(135deg, var(--gf-green), var(--gf-green-dark));color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.5rem;padding:.9rem;font-size:1rem;font-weight:700;transition:filter .15s;display:inline-flex}.give-form .gf-submit:hover:not(:disabled){filter:brightness(1.12)}.give-form .gf-submit:disabled{opacity:.6;cursor:not-allowed}.give-form .gf-note{color:#64748b;text-align:center;margin-top:.75rem;font-size:.78rem}.give-form .gf-as{color:var(--gf-green);margin-bottom:.9rem;font-size:.82rem;font-weight:600}.give-form .gf-error{color:#dc2626;margin-top:.5rem;font-size:.85rem}.give-form .gf-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=480px){.give-form .gf-row{grid-template-columns:1fr}}.landing-root{--primary-color:#064e3b;--primary-light:#047857;--primary-dark:#022c22;--accent-color:#eab308;--accent-hover:#ca8a04;--secondary-color:#be123c;--lp-bg:#f8fafc;--lp-bg-alt:#f1f5f9;--lp-text:#334155;--lp-muted:#64748b;--white:#fff;--lp-border:#e2e8f0;--transition:all .4s cubic-bezier(.16, 1, .3, 1);--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 10px 20px #0000000d;--shadow-lg:0 20px 40px #00000014;--shadow-xl:0 30px 60px #0000001f;--radius-md:.75rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-full:9999px;color:var(--lp-text);background-color:var(--lp-bg);font-family:Inter,sans-serif;line-height:1.7;overflow-x:hidden}.landing-root h1,.landing-root h2,.landing-root h3,.landing-root h4{color:var(--primary-dark);font-weight:700;line-height:1.2}.landing-root .font-serif{font-family:Playfair Display,serif}.landing-root a{color:inherit;transition:var(--transition);text-decoration:none}.landing-root ul{list-style:none}.landing-root img{max-width:100%}html{scroll-behavior:smooth}.landing-root .container{width:100%;max-width:1240px;margin:0 auto;padding:0 2rem}.landing-root .section{padding:6.5rem 0;position:relative}.landing-root section[id]{scroll-margin-top:80px}.landing-root .text-center{text-align:center}.landing-root .section-title{color:var(--primary-dark);margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:2.6rem;display:inline-block;position:relative}.landing-root .section-title:after{content:"";background:linear-gradient(90deg, var(--accent-color), var(--secondary-color));border-radius:2px;width:70px;height:4px;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.landing-root .section-subtitle{color:var(--lp-muted);max-width:620px;margin:0 auto 4rem;font-size:1.05rem;font-weight:400;line-height:1.7}.landing-root .section-eyebrow{letter-spacing:.18em;text-transform:uppercase;width:100%;color:var(--accent-color);margin-bottom:.75rem;font-size:.78rem;font-weight:700;display:block}.landing-root .dept-section .section-eyebrow{color:var(--gf-gold,#eab308)}.landing-root .btn{border-radius:var(--radius-full);cursor:pointer;transition:var(--transition);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 2rem;font-size:1rem;font-weight:600;display:inline-flex}.landing-root .btn-primary{background-color:var(--primary-color);color:var(--white);box-shadow:0 4px 15px #064e3b4d}.landing-root .btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-3px);box-shadow:0 8px 25px #064e3b66}.landing-root .btn-outline{border:2px solid var(--white);color:var(--white);background-color:#0000}.landing-root .btn-outline:hover{background-color:var(--white);color:var(--primary-color)}.landing-root .btn-login{color:var(--white);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#ffffff26;border:1px solid #fff3}.landing-root .btn-login:hover{background-color:var(--white);color:var(--primary-color)}.landing-root header{z-index:1000;width:100%;transition:var(--transition);border-bottom:1px solid #ffffff0d;padding:1.1rem 0;position:fixed;top:0;left:0}.landing-root header.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);background-color:#fffffff5;border-bottom:1px solid #0000000d;padding:.75rem 0}.landing-root header.scrolled .nav-link{color:var(--lp-text)}.landing-root header.scrolled .nav-link:hover{color:var(--primary-color)}.landing-root header.scrolled .btn-login{background-color:var(--primary-color);color:var(--white);border-color:#0000}.landing-root .navbar{justify-content:space-between;align-items:center;display:flex}.landing-root .logo img{object-fit:contain;width:auto;height:42px;transition:var(--transition)}.landing-root header.scrolled .logo img{transform:scale(.92)}.landing-root .nav-links{flex-wrap:nowrap;align-items:center;gap:2rem;display:flex}.landing-root .nav-link{color:var(--white);letter-spacing:.01em;white-space:nowrap;padding-bottom:.2rem;font-size:.9rem;font-weight:500;position:relative}.landing-root .nav-link:after{content:"";background-color:var(--accent-color);width:0;height:2px;transition:var(--transition);position:absolute;bottom:0;left:0}.landing-root .nav-link:hover:after{width:100%}.landing-root header .btn-login{white-space:nowrap;padding:.55rem 1.35rem;font-size:.88rem;font-weight:600}.landing-root .nav-toggle{color:var(--white);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.4rem;line-height:1;display:none}.landing-root header.scrolled .nav-toggle{color:var(--primary-dark)}.landing-root .hero{isolation:isolate;justify-content:center;align-items:center;height:100vh;min-height:calc(100vh + 6rem);display:flex;position:relative;overflow:hidden}.landing-root .hero-slider{z-index:0;position:absolute;inset:0}.landing-root .slide{opacity:0;filter:blur(5px);background-position:50%;background-size:cover;transition:opacity 1.5s ease-in-out,transform 10s linear,filter 1.5s ease-in-out;position:absolute;inset:0;transform:scale(1.1)}.landing-root .slide.active{opacity:1;filter:blur();transform:scale(1)}.landing-root .hero-overlay{z-index:1;background:linear-gradient(135deg,#022c22eb 0%,#022c228c 100%);position:absolute;inset:0}.landing-root .hero-content{text-align:center;color:var(--white);z-index:2;max-width:820px;padding:0 2rem;position:relative}.landing-root .hero-title{color:var(--white);letter-spacing:-.5px;text-shadow:0 10px 30px #00000059;margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:4rem;font-weight:700;line-height:1.15}.landing-root .hero-subtitle{opacity:.92;text-shadow:0 5px 15px #0003;max-width:640px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;font-size:1.15rem;font-weight:300;line-height:1.75}.landing-root .hero-buttons{flex-wrap:wrap;justify-content:center;gap:1.25rem;display:flex}.landing-root .hero .btn{padding:.8rem 1.75rem;font-size:.95rem}.landing-root .go-section{background-color:var(--lp-bg-alt);z-index:10;padding-top:0;position:relative}.landing-root .go-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);background:#ffffffe6;border:1px solid #fffc;align-items:stretch;margin-top:-6rem;display:flex;position:relative;overflow:hidden}.landing-root .go-image{background-position:top;background-size:cover;flex:0 0 450px;position:relative}.landing-root .go-image:before{content:"";background:linear-gradient(90deg,#0000,#ffffffe6 95%);position:absolute;inset:0}.landing-root .go-content{flex-direction:column;flex:1;justify-content:center;padding:5rem 4rem 5rem 2rem;display:flex}.landing-root .go-title{color:var(--primary-dark);margin-bottom:.25rem;font-size:2.75rem}.landing-root .go-role{color:var(--accent-color);text-transform:uppercase;letter-spacing:3px;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:1rem;font-weight:700;display:flex}.landing-root .go-role:before{content:"";background-color:var(--accent-color);width:40px;height:2px}.landing-root .go-bio{color:var(--lp-muted);margin-bottom:2.5rem;font-size:1.1rem;line-height:1.8}.landing-root .about-section{background-color:var(--white);overflow:hidden}.landing-root .dept-section{background-color:var(--primary-dark);color:var(--white);position:relative}.landing-root .dept-section .section-title{color:var(--white)}.landing-root .dept-grid{z-index:1;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid;position:relative}.landing-root .dept-card{border-radius:var(--radius-lg);transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff14;flex-direction:column;height:100%;padding:2.5rem 2rem;display:flex;position:relative;overflow:hidden}.landing-root .dept-card:before{content:"";background:var(--accent-color);transform-origin:0;width:100%;height:4px;transition:transform .4s;position:absolute;top:0;left:0;transform:scaleX(0)}.landing-root .dept-card:hover{background:#ffffff14;border-color:#ffffff26;transform:translateY(-10px);box-shadow:0 20px 40px #0000004d}.landing-root .dept-card:hover:before{transform:scaleX(1)}.landing-root .dept-icon{color:var(--accent-color);margin-bottom:1.5rem;font-size:2.5rem;transition:transform .3s}.landing-root .dept-card:hover .dept-icon{transform:scale(1.1)rotate(5deg)}.landing-root .dept-name{color:var(--white);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:1.5rem}.landing-root .dept-desc{color:#cbd5e1;flex-grow:1;margin-bottom:2rem;font-weight:300}.landing-root .dept-link{color:var(--accent-color);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:inline-flex}.landing-root .dept-link:hover{color:var(--white);gap:.75rem}.landing-root .events-section{background-color:var(--white)}.landing-root .events-list{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2.5rem;max-width:1200px;margin:0 auto;display:grid}.landing-root .event-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition);border:1px solid var(--lp-border);flex-direction:column;display:flex;overflow:hidden}.landing-root .event-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-8px)}.landing-root .event-image-container{height:220px;position:relative;overflow:hidden}.landing-root .event-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.landing-root .event-card:hover .event-image{transform:scale(1.05)}.landing-root .event-date-badge{background:var(--white);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);z-index:1;flex-direction:column;align-items:center;min-width:70px;padding:.5rem 1rem;display:flex;position:absolute;top:1rem;left:1rem}.landing-root .event-day{color:var(--primary-color);font-size:1.75rem;font-weight:800;line-height:1}.landing-root .event-month{text-transform:uppercase;color:var(--secondary-color);letter-spacing:1px;margin-top:.25rem;font-size:.75rem;font-weight:700}.landing-root .event-details{flex-direction:column;flex:1;padding:2rem;display:flex}.landing-root .event-title{color:var(--primary-dark);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:1.5rem}.landing-root .event-meta{color:var(--lp-muted);flex-direction:column;gap:.75rem;font-size:.9rem;display:flex}.landing-root .event-meta span{align-items:center;gap:.5rem;display:flex}.landing-root .event-meta i{color:var(--accent-color);text-align:center;width:16px}.landing-root .connect-section{background:linear-gradient(160deg, var(--primary-color) 0%, var(--primary-dark) 100%);position:relative}.landing-root .connect-layout{grid-template-columns:1fr 440px;align-items:center;gap:3rem;display:grid}.landing-root .connect-intro .section-title:after{left:0;transform:none}.landing-root .connect-list{flex-direction:column;gap:.85rem;margin-top:2rem;display:flex}.landing-root .connect-list li{color:#fff;align-items:center;gap:.75rem;font-weight:500;display:flex}.landing-root .connect-list i{color:var(--accent-color);background:#ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;display:flex}.landing-root .connect-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:1.75rem}.landing-root .connect-card h3{color:var(--primary-dark);margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:1.4rem}@media (width<=900px){.landing-root .connect-layout{grid-template-columns:1fr}.landing-root .connect-intro .section-title:after{left:50%;transform:translate(-50%)}.landing-root .connect-intro{text-align:center}.landing-root .connect-list{align-items:center}}.landing-root .give-section{background:var(--lp-bg-alt)}.landing-root .give-layout{grid-template-columns:1fr 420px;align-items:start;gap:2.5rem;display:grid}.landing-root .give-projects{flex-direction:column;gap:1.25rem;display:flex}.landing-root .give-project{background:var(--white);border:1px solid var(--lp-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.5rem}.landing-root .gp-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.landing-root .gp-top h4{color:var(--primary-dark);font-family:Playfair Display,serif;font-size:1.25rem}.landing-root .gp-pct{color:var(--primary-color);font-weight:800}.landing-root .gp-desc{color:var(--lp-muted);margin:.5rem 0 1rem;font-size:.95rem}.landing-root .gp-bar{background:var(--lp-bg-alt);border:1px solid var(--lp-border);border-radius:999px;height:10px;overflow:hidden}.landing-root .gp-bar span{background:linear-gradient(90deg, var(--primary-color), var(--accent-color));border-radius:999px;height:100%;display:block}.landing-root .gp-meta{color:var(--lp-muted);justify-content:space-between;margin-top:.5rem;font-size:.85rem;font-weight:600;display:flex}.landing-root .gp-give{color:var(--primary-color);margin-top:1rem;font-size:.9rem;font-weight:700;display:inline-block}.landing-root .gp-give:hover{color:var(--accent-hover)}.landing-root .give-verse{background:var(--white);border:1px solid var(--lp-border);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm);padding:2.5rem 2rem}.landing-root .give-verse i{color:var(--accent-color);margin-bottom:1rem;font-size:2.5rem}.landing-root .give-verse p{color:var(--lp-muted);font-size:1.1rem;font-style:italic;line-height:1.7}.landing-root .give-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1.75rem;position:sticky;top:90px}.landing-root .give-card h3{color:var(--primary-dark);margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:1.4rem}@media (width<=900px){.landing-root .give-layout{grid-template-columns:1fr}.landing-root .give-card{position:static}}.landing-root footer{background-color:var(--primary-dark);color:#a7b4ae;padding:4.5rem 0 1.75rem;font-size:.9rem;position:relative;overflow:hidden}.landing-root .footer-grid{z-index:1;grid-template-columns:2fr 1.2fr 1fr 1.4fr;gap:3rem;margin-bottom:3rem;display:grid;position:relative}.landing-root .footer-col h4{color:var(--white);letter-spacing:.01em;margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:1.05rem}.landing-root .footer-logo{color:var(--white);align-items:center;gap:.6rem;margin-bottom:1.1rem;font-family:Playfair Display,serif;font-size:1.4rem;font-weight:700;display:flex}.landing-root .footer-desc{max-width:330px;margin-bottom:1.5rem;font-size:.9rem;line-height:1.7}.landing-root .social-links{gap:.75rem;display:flex}.landing-root .social-links a{width:38px;height:38px;color:var(--white);transition:var(--transition);background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;display:flex}.landing-root .social-links a:hover{background:var(--accent-color);color:var(--primary-dark);transform:translateY(-3px)}.landing-root .footer-col ul{flex-direction:column;gap:.7rem;display:flex}.landing-root .footer-col ul li{font-size:.88rem;line-height:1.5}.landing-root .service-times li{flex-direction:column;gap:.1rem;display:flex}.landing-root .service-times strong{color:var(--white);letter-spacing:.02em;font-size:.82rem;font-weight:600}.landing-root .service-times span{color:#a7b4ae;font-size:.85rem}.landing-root .contact-info li{align-items:flex-start;gap:.6rem;display:flex}.landing-root .contact-info li i{color:var(--accent-color);margin-top:.2rem}.landing-root .footer-col ul a{transition:var(--transition)}.landing-root .footer-col ul a:hover{color:var(--accent-color);padding-left:4px}.landing-root .footer-bottom{text-align:center;color:#8a9a92;z-index:1;border-top:1px solid #ffffff1a;padding-top:1.75rem;font-size:.82rem;position:relative}.landing-root .reveal{opacity:0;filter:blur(8px);transition:all 1s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.landing-root .reveal.active{opacity:1;filter:blur();transform:translate(0)scale(1)}.landing-root .zoom-in{transform:translateY(40px)scale(.85)}@media (width<=992px){.landing-root .go-card{flex-direction:column;margin-top:-3rem}.landing-root .go-image{flex:0 0 400px;width:100%}.landing-root .go-image:before{background:linear-gradient(#0000,#ffffffe6 95%)}.landing-root .go-content{text-align:center;padding:3rem}.landing-root .go-role{justify-content:center}.landing-root .go-role:before{display:none}.landing-root .footer-grid{grid-template-columns:1fr 1fr;gap:3rem}}@media (width<=768px){.landing-root .section{padding:5rem 0}.landing-root header{padding:.9rem 0}.landing-root .navbar{position:relative}.landing-root .nav-toggle{display:block}.landing-root .nav-links{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;background:#022c22fa;border:1px solid #ffffff1a;flex-direction:column;align-items:stretch;gap:.35rem;max-height:0;padding:0 1.25rem;transition:max-height .28s,opacity .28s,padding .28s;position:absolute;top:calc(100% + .6rem);left:1rem;right:1rem;overflow:hidden}.landing-root .nav-links.open{opacity:1;pointer-events:auto;max-height:24rem;padding:.9rem 1.25rem}.landing-root .nav-link{color:#fff;padding:.65rem 0;font-size:1rem}.landing-root header.scrolled .nav-link{color:#fff}.landing-root .nav-links .btn-login{background:var(--primary-light);color:#fff;border-color:#0000;justify-content:center;width:100%;margin-top:.35rem}.landing-root header.scrolled .nav-links .btn-login{background:var(--primary-color)}.landing-root .hero-title{font-size:2.6rem}.landing-root .hero-subtitle{font-size:1.05rem}.landing-root .hero-buttons{flex-direction:column}.landing-root .section-title{font-size:2.1rem}.landing-root .events-list{grid-template-columns:1fr}.landing-root .footer-grid{grid-template-columns:1fr;gap:2.5rem}.landing-root .go-content{padding:2.5rem 1.75rem}.landing-root .container{padding:0 1.25rem}}
