:root{--bg: #f8fafc;--ink: #0f172a;--muted: #64748b;--line: rgba(15, 23, 42, .1);--primary: #2563eb;--primary-dark: #1d4ed8;--secondary: #10b981;--accent: #f59e0b;--surface: #ffffff;--navy: #081226;color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit}button,input,textarea{font:inherit}.app-shell{min-height:100vh;overflow-x:hidden;background:var(--bg)}.topbar{position:sticky;top:0;z-index:30;display:grid;min-height:72px;grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);align-items:center;gap:24px;padding:12px clamp(18px,6vw,96px);background:#f8fafcf0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;min-width:0;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{display:inline-grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--primary);color:#fff;box-shadow:0 12px 28px #2563eb47}.brand-copy{display:grid;min-width:0;gap:2px}.brand-copy strong,.brand-copy small{overflow:hidden;max-width:330px;text-overflow:ellipsis;white-space:nowrap}.brand-copy strong{font-size:.98rem;font-weight:900}.brand-copy small{color:var(--muted);font-weight:700}.nav-links{display:flex;align-items:center;justify-content:center;gap:8px;color:#475569;font-weight:800}.nav-links a{border-radius:999px;padding:10px 16px;text-decoration:none}.nav-links a:hover,.nav-links a:focus-visible{background:#eff6ff;color:var(--primary);outline:0}.nav-links a:first-child{background:#eff6ff;color:var(--primary)}.nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.nav-icon-link,.language-button,.menu-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border:0;border-radius:12px;background:transparent;color:#64748b;cursor:pointer;text-decoration:none}.nav-icon-link{width:40px}.facebook-glyph{display:inline-flex;align-items:center;justify-content:center;color:inherit;font-size:1rem;font-weight:900;line-height:1}.language-button{gap:6px;padding:0 8px;font-weight:800}.login-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;padding:0 16px;background:var(--primary);color:#fff;cursor:pointer;font-weight:900;box-shadow:0 12px 28px #2563eb3d}.menu-button{display:none;width:40px}.mobile-menu{display:none}.hero{position:relative;display:flex;min-height:min(820px,calc(100vh - 72px));align-items:center;padding:clamp(70px,8vw,108px) clamp(18px,8vw,128px);background:linear-gradient(90deg,#081226fa,#081226d6),radial-gradient(circle at 82% 28%,rgba(37,99,235,.32),transparent 30%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1440' height='860' viewBox='0 0 1440 860'%3E%3Crect width='1440' height='860' fill='%23081226'/%3E%3Cpath d='M0 620c198-130 360-143 514-42 193 127 385 79 630-85 98-66 193-103 296-122v489H0z' fill='%23111c33' opacity='.62'/%3E%3Ccircle cx='1050' cy='210' r='210' fill='%232563eb' opacity='.16'/%3E%3C/svg%3E"),var(--navy);background-position:center;background-size:cover;color:#fff}.hero:after{position:absolute;right:8%;bottom:0;left:8%;height:1px;background:#ffffff1a;content:""}.hero-content{position:relative;z-index:1;max-width:820px;margin-left:clamp(0px,11vw,220px)}.eyebrow{margin:0 0 14px;color:var(--primary);font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.hero .eyebrow{display:inline-flex;align-items:center;gap:10px;color:#93c5fd}.hero .eyebrow:before{display:inline-block;width:4px;height:30px;border-radius:999px;background:var(--primary);content:""}h1,h2,h3,p{margin-top:0}h1{display:grid;max-width:850px;margin-bottom:12px;font-size:clamp(2.8rem,6.6vw,5.85rem);line-height:.98;letter-spacing:0}h1 span{max-width:13ch}h1 strong{color:#bfdbfe;font-size:clamp(2rem,4.3vw,4rem);line-height:1.05}.hero-city{margin-bottom:18px;color:var(--secondary);font-size:clamp(1.1rem,2vw,1.45rem);font-weight:900}h2{margin-bottom:14px;color:var(--ink);font-size:clamp(2rem,4.4vw,3.7rem);line-height:1.04;letter-spacing:0}h3{margin-bottom:10px;font-size:1.12rem}.hero-copy{max-width:620px;margin-bottom:30px;color:#cbd5e1;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:9px;border:0;border-radius:14px;padding:0 22px;cursor:pointer;font-weight:900;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 16px 36px #2563eb47}.button-primary:hover{background:var(--primary-dark)}.button-secondary{background:#ffffff14;color:#fff;outline:1px solid rgba(255,255,255,.18)}.hero-service-cards{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-service-cards article{display:flex;min-width:210px;align-items:center;gap:13px;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:15px 18px;background:#ffffff1a;color:#93c5fd}.hero-service-cards strong{display:block;color:#fff;font-size:.95rem}.hero-service-cards span{color:#cbd5e1;font-size:.84rem;font-weight:700}.hero-visual{position:relative;min-height:540px;border-radius:28px;background:linear-gradient(#0812261a,#0812267a),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 760 920'%3E%3Cdefs%3E%3ClinearGradient id='sky' x1='0' x2='1' y1='0' y2='1'%3E%3Cstop stop-color='%23f8fafc'/%3E%3Cstop offset='1' stop-color='%23dbeafe'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='760' height='920' fill='url(%23sky)'/%3E%3Cpath d='M0 650c120-88 238-110 355-68 150 54 260 22 405-74v412H0z' fill='%23e2e8f0'/%3E%3Cpath d='M132 508 380 318l248 190v275H132z' fill='%23ffffff'/%3E%3Cpath d='M380 318 108 526l32 45 240-184 240 184 32-45z' fill='%23155dfc'/%3E%3Cpath d='M338 548h84v235h-84z' fill='%23081226'/%3E%3Cpath d='M238 564h58v80h-58zM464 564h58v80h-58z' fill='%23bfdbfe'/%3E%3Cpath d='M380 205v96M340 245h80' stroke='%23155dfc' stroke-width='28' stroke-linecap='round'/%3E%3Ccircle cx='144' cy='174' r='48' fill='%23f59e0b' opacity='.9'/%3E%3C/svg%3E") center/cover;box-shadow:0 36px 80px #0000004d}.hero-visual:before{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,transparent 52%,rgba(8,18,38,.72));content:""}.hero-location-pill{position:absolute;top:52%;left:50%;z-index:1;display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 48px);border-radius:16px;padding:12px 16px;background:#fff;color:var(--ink);box-shadow:0 18px 44px #08122638;transform:translate(-50%,-50%)}.hero-location-pill svg{color:#ef4444}.hero-location-pill strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-visual-card{position:absolute;right:24px;bottom:24px;left:24px;display:grid;gap:3px;border-radius:18px;padding:22px;background:#fffffff0;color:var(--ink);box-shadow:0 20px 54px #08122638}.hero-visual-card span{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.hero-visual-card strong{font-size:1.8rem}.hero-visual-card small{color:var(--primary);font-weight:900}.content-section,.location-section,.contact-section{padding:clamp(58px,8vw,104px) clamp(18px,8vw,128px)}.quick-info-section{padding:clamp(44px,7vw,86px) clamp(18px,8vw,128px);background:#fff}.quick-info-grid{display:grid;max-width:1180px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.quick-info-card{min-height:250px;border:1px solid var(--line);border-radius:24px;padding:clamp(28px,4vw,42px);background:#fff;box-shadow:0 18px 44px #0f172a1a}.quick-info-card h2{margin-bottom:10px;font-size:clamp(1.45rem,2.4vw,2rem)}.quick-info-card p{margin-bottom:6px;color:var(--ink);font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.45}.quick-info-card small{color:var(--muted);font-size:1rem;line-height:1.45}.quick-icon{display:inline-grid;width:76px;height:76px;margin-bottom:28px;place-items:center;border-radius:24px}.quick-icon.blue{background:#eff6ff;color:var(--primary)}.quick-icon.purple{background:#faf5ff;color:#9333ea}.quick-icon.amber{background:#fffbeb;color:#d97706}.quick-icon.green{background:#ecfdf5;color:var(--secondary)}.about-section{background:var(--bg)}.section-alt{background:var(--surface)}.section-heading{max-width:780px;margin-bottom:30px}.section-heading-centered{margin-right:auto;margin-bottom:clamp(38px,6vw,62px);margin-left:auto;text-align:center}.section-heading-centered:after{display:block;width:98px;height:6px;margin:24px auto 0;border-radius:999px;background:var(--primary);content:""}.section-heading-row{display:flex;max-width:none;align-items:end;justify-content:space-between;gap:24px}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-weight:900;text-decoration:none}.text-link:hover{text-decoration:underline}.feature-grid,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.about-section .feature-grid{max-width:1100px;margin:0 auto;grid-template-columns:1fr;gap:28px}.about-section .feature-card{min-height:230px;padding:clamp(28px,4vw,44px)}.about-section .feature-card p{font-size:clamp(1rem,1.7vw,1.25rem)}.feature-card,.event-card{min-height:230px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 16px 46px #0f172a14}.feature-card{padding:24px}.feature-icon{display:inline-grid;width:48px;height:48px;margin-bottom:24px;place-items:center;border-radius:14px;background:#eff6ff;color:var(--primary)}.feature-card p,.event-card p{color:var(--muted);line-height:1.65}.pastor-card{display:flex;min-height:clamp(360px,42vw,500px);align-items:flex-start;flex-direction:column;gap:clamp(22px,4vw,40px);max-width:1100px;margin:clamp(48px,7vw,78px) auto 0;border-radius:24px;padding:clamp(34px,6vw,58px);background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 24px 70px #2563eb47}.pastor-photo{overflow:hidden;display:inline-grid;width:clamp(126px,14vw,164px);height:clamp(126px,14vw,164px);align-self:center;flex:0 0 auto;place-items:center;border-radius:24px;background:linear-gradient(#0812260f,#0812262e),#dbeafe;color:var(--primary);font-weight:900;box-shadow:inset 0 0 0 6px #ffffff38}.pastor-photo img{width:100%;height:100%;object-fit:cover}.pastor-card p{margin-bottom:8px;color:#bfdbfe;font-size:.82rem;font-weight:900;text-transform:uppercase}.pastor-card h3{margin-bottom:10px;font-size:clamp(1.9rem,4vw,2.55rem)}.pastor-card span{display:block;max-width:880px;color:#dbeafe;font-size:clamp(1.05rem,1.9vw,1.35rem);line-height:1.65}.event-card{overflow:hidden}.card-grid{max-width:1100px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}.event-art{display:block;width:100%;height:clamp(230px,23vw,300px);background:radial-gradient(circle at 22% 32%,rgba(255,255,255,.9),transparent 18%),#e2e8f0;object-fit:cover;transition:transform .42s ease}.event-card:hover .event-art{transform:scale(1.04)}.event-body{padding:clamp(24px,4vw,36px)}.event-body h3{font-size:clamp(1.35rem,2.5vw,1.9rem)}.event-category{display:inline-flex;width:fit-content;margin-bottom:18px;border-radius:999px;padding:7px 14px;font-size:.9rem;font-weight:900}.event-category.blue{background:#dbeafe;color:var(--primary)}.event-category.purple{background:#f3e8ff;color:#9333ea}.event-category.green{background:#dcfce7;color:#047857}.event-meta{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:14px;color:var(--muted)}.event-meta span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:800}.date-label{display:inline-flex;margin-bottom:12px;border-radius:999px;padding:7px 10px;background:#eff6ff;color:var(--primary)!important;font-size:.78rem;font-weight:900;text-transform:capitalize}.muted{color:var(--muted)}.location-section{display:grid;grid-template-columns:1fr;gap:clamp(28px,5vw,52px);justify-items:center;overflow:hidden;background:#f1f5f9}.location-section>*{min-width:0;max-width:100%}.location-action{display:flex;width:min(100%,1100px);justify-content:center}.map-panel{position:relative;min-height:clamp(360px,42vw,520px);width:100%;max-width:1100px;margin:0 auto;overflow:hidden;border-radius:24px;background:#dbe4ef;color:inherit;box-shadow:0 20px 60px #0f172a24}.map-panel iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.map-open-pill{position:absolute;right:18px;bottom:18px;z-index:1;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(15,23,42,.12);border-radius:12px;padding:11px 13px;background:#fff;color:var(--ink);box-shadow:0 14px 32px #0f172a2e;font-weight:900;text-decoration:none}.map-open-pill svg{color:var(--primary)}.map-open-pill:hover{color:var(--primary)}.map-open-pill:focus-visible,.info-tile-link:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:4px}.location-details{display:grid;width:100%;max-width:1100px;margin:0 auto;grid-template-columns:1fr;gap:22px}.location-details .section-heading{margin-bottom:4px}.info-tile{display:flex;min-width:0;align-items:flex-start;gap:24px;border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff;color:inherit;box-shadow:0 12px 34px #0f172a0f;text-decoration:none}.info-tile-link:hover{border-color:#2563eb59;box-shadow:0 16px 40px #0f172a1a}.info-tile span{display:inline-grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.info-tile p{margin:0 0 4px;color:var(--muted);font-size:1rem;font-weight:900}.info-tile>div{min-width:0}.info-tile strong{display:block;color:var(--ink);font-size:1.16rem;line-height:1.35;overflow-wrap:anywhere}.location-note{display:flex;width:100%;max-width:1100px;align-items:flex-start;gap:10px;margin:0 auto;border:1px solid #bfdbfe;border-radius:16px;padding:22px 24px;background:#eff6ff;color:#1d4ed8}.location-note p{margin:0;color:#1d4ed8;font-weight:800}.location-note svg{flex:0 0 auto}.location-details p,.contact-section p{max-width:560px;color:var(--muted);line-height:1.7}.contact-list{display:grid;gap:12px;margin-top:24px}.contact-list a{display:inline-flex;align-items:center;gap:10px;color:var(--primary);font-weight:900}.contact-section{display:grid;grid-template-columns:1fr;gap:clamp(42px,7vw,84px);background:#fff}.contact-form-column{width:min(100%,1100px);max-width:none;margin:0 auto}.community-stat{position:absolute;left:-18px;bottom:-18px;display:inline-flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:18px;padding:16px 18px;background:#fff;box-shadow:0 18px 48px #0f172a29}.community-stat svg{color:var(--secondary)}.community-stat strong,.community-stat span{display:block}.community-stat strong{margin-bottom:4px}.community-stat span{color:var(--muted);font-size:.88rem;font-weight:800}.contact-form{display:grid;width:min(100%,1100px);gap:16px;margin-top:26px}.contact-visual{position:relative;min-height:clamp(420px,50vw,650px);width:min(100%,1100px);margin:0 auto;border-radius:24px;background:linear-gradient(#0812260a,#0812261f),url(https://images.unsplash.com/photo-1529156069898-49953e39b3ac?w=700&h=600&fit=crop&auto=format) center/cover;box-shadow:0 24px 70px #0f172a29}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-form label{display:grid;gap:8px;color:#334155;font-size:.92rem;font-weight:900}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:14px;padding:13px 14px;background:#f8fafc;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary);outline:3px solid rgba(37,99,235,.14)}.form-status{margin:0;font-weight:800}.form-status.success{color:#047857}.form-status.error{color:#b42318}.form-status.warning{color:#b45309}.form-status.loading{color:var(--muted)}.modal-status{border:1px solid rgba(15,23,42,.1);border-radius:12px;padding:10px 12px;background:#f8fafc}.modal-status.success{border-color:#0478572e;background:#ecfdf5}.modal-status.error{border-color:#b423182e;background:#fef2f2}.modal-status.loading{border-color:#2563eb24;background:#eff6ff}.site-footer{padding:48px clamp(18px,8vw,128px) 28px;background:var(--navy);color:#94a3b8}.footer-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.8fr) minmax(180px,.6fr);gap:32px;margin-bottom:34px}.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:#fff}.site-footer h4,.site-footer strong{color:#fff}.site-footer p{margin-bottom:8px;line-height:1.6}.site-footer a{display:inline-flex;align-items:center;gap:10px;color:#cbd5e1;font-weight:800;text-decoration:none}.site-footer a:hover{color:#fff}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:24px;font-size:.86rem}.footer-bottom p{margin:0}.login-shell{display:grid;min-height:100vh;grid-template-columns:minmax(0,1.05fr) minmax(380px,.8fr);background:#f8fafc}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(28px,6vw,72px);background:radial-gradient(circle at 72% 20%,rgba(37,99,235,.35),transparent 32%),linear-gradient(145deg,#081226,#0f1d36);color:#fff}.login-visual:after{position:absolute;right:-12%;bottom:-18%;width:440px;height:440px;border-radius:50%;background:#2563eb38;content:""}.back-link{position:relative;z-index:1;display:inline-flex;width:fit-content;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 14px;background:#ffffff14;color:#dbeafe;cursor:pointer;font-weight:900}.back-link svg{rotate:180deg}.login-brand-block{position:relative;z-index:1;max-width:720px}.login-brand-block .brand-mark{margin-bottom:26px}.login-brand-block h1{margin-bottom:18px;font-size:clamp(3rem,7vw,5.4rem)}.login-brand-block p,.login-feature{color:#cbd5e1;font-size:1.1rem;line-height:1.6}.login-feature{position:relative;z-index:1;display:inline-flex;max-width:520px;align-items:center;gap:12px;border-radius:18px;padding:18px;background:#ffffff14}.login-feature svg{color:var(--secondary);flex:0 0 auto}.login-panel{display:grid;min-height:100vh;place-items:center;padding:clamp(24px,5vw,64px)}.login-card{display:grid;width:min(100%,460px);gap:18px;border:1px solid var(--line);border-radius:26px;padding:clamp(24px,5vw,38px);background:#fff;box-shadow:0 28px 80px #0f172a24}.login-heading{display:flex;align-items:center;gap:14px;margin-bottom:8px}.login-heading h2{margin-bottom:3px;font-size:1.85rem}.login-heading p{margin:0;color:var(--muted)}.login-card label{display:grid;gap:8px;color:#334155;font-size:.92rem;font-weight:900}.login-card input{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:14px;padding:13px 14px;background:#f8fafc;color:var(--ink)}.login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.9rem}.login-options button{border:0;background:transparent;color:var(--primary);cursor:pointer;font-weight:900}.checkbox-row{display:inline-flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important}.checkbox-row input{width:auto}.admin-shell{display:grid;min-height:100vh;grid-template-columns:292px minmax(0,1fr);background:#f1f5f9}.admin-sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;gap:24px;padding:22px;background:#081226;color:#cbd5e1}.admin-brand{display:flex;align-items:center;gap:12px;min-width:0}.admin-brand strong,.admin-brand small{display:block;overflow:hidden}.admin-brand strong{color:#fff;line-height:1.15}.admin-brand small{color:#94a3b8;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.admin-nav{display:grid;gap:7px}.admin-nav button{display:flex;width:100%;min-height:44px;align-items:center;gap:12px;border:0;border-radius:13px;padding:0 13px;background:transparent;color:#94a3b8;cursor:pointer;font-weight:900;text-align:left}.admin-nav button:hover,.admin-nav button.is-active{background:#12213d;color:#fff}.admin-nav button.is-active svg{color:#60a5fa}.admin-user{display:flex;align-items:center;gap:11px;margin-top:auto;border-radius:16px;padding:12px;background:#ffffff0f}.admin-user strong,.admin-user small{display:block}.admin-user strong{color:#fff}.admin-user small{color:#94a3b8;font-size:.8rem;font-weight:800}.avatar{display:inline-grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:14px;background:#2563eb;color:#fff;font-size:.82rem;font-weight:900}.avatar.lg{width:72px;height:72px;border-radius:20px;font-size:1rem}.avatar.has-image{overflow:hidden;padding:0;background:#e2e8f0}.avatar img{width:100%;height:100%;object-fit:cover}.admin-main{min-width:0}.admin-menu-backdrop{display:none}.admin-title-row{display:flex;min-width:0;align-items:center;gap:14px}.admin-menu-trigger{display:none;width:44px;min-height:44px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:#334155;cursor:pointer}.admin-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:20px clamp(22px,4vw,44px);background:#f8fafcf0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.admin-topbar p{margin-bottom:4px;color:var(--muted);font-weight:800}.admin-topbar h1{margin:0;font-size:clamp(1.8rem,3vw,2.7rem)}.admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.admin-actions button,.admin-card-header button,.quick-actions button,.profile-block button,.integration-row button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;padding:0 13px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.admin-search{display:flex;min-height:40px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:0 12px;background:#fff;color:var(--muted)}.admin-search input{width:min(22vw,240px);border:0;outline:0}.admin-content{padding:clamp(22px,4vw,44px)}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.admin-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff;box-shadow:0 16px 46px #0f172a12}.stat-card{position:relative;display:grid;gap:18px}.stat-card>div:first-child{padding-right:58px}.stat-card span,.admin-card-header span,.finance-card span{color:var(--muted);font-size:.82rem;font-weight:900}.stat-card strong{display:block;margin-top:6px;color:var(--ink);font-size:2rem}.stat-icon{position:absolute;top:22px;right:22px;display:inline-grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#eff6ff;color:var(--primary)}.stat-icon.warning{background:#fff7ed;color:#f59e0b}.stat-card p{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.88rem;font-weight:900}.positive{color:#059669}.warning{color:#d97706}.admin-grid-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.admin-grid-three{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(280px,.8fr);gap:18px;margin-top:18px}.admin-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-card-header h2{margin:4px 0 0;font-size:1.35rem}.access-control-card{margin-bottom:18px}.access-tabs{display:flex;flex-wrap:wrap;gap:9px}.access-tabs button,.role-modal-header button,.role-modal-actions button,.table-action{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;padding:0 13px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.access-tabs button.is-active{border-color:#2563eb47;background:#eff6ff;color:var(--primary)}.access-grid{align-items:start}.roles-manager-card{display:grid;gap:18px}.role-table-cell{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-width:240px}.role-table-cell>div{min-width:0}.role-table-cell>div>span{display:block;overflow:hidden;color:var(--muted);font-size:.82rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-form{display:grid;gap:14px}.admin-field{display:grid;gap:8px;color:#334155;font-size:.88rem;font-weight:900}.admin-field input,.admin-field select,.admin-field textarea,.invite-result input{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:13px;padding:12px 13px;background:#f8fafc;color:var(--ink);font-family:inherit;font-size:.95rem;font-weight:800;line-height:1.35;outline:0}.admin-select{min-height:46px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:40px!important}.admin-select option{color:var(--ink);font-family:inherit;font-size:.95rem;font-weight:700}.admin-field textarea{resize:vertical}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.invite-result input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.role-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.permission-toggle{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:11px;background:#f8fafc;color:#334155;cursor:pointer}.permission-toggle input{width:17px;height:17px;accent-color:var(--primary)}.permission-toggle strong,.permission-toggle small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-toggle strong{font-size:.88rem}.permission-toggle small{color:var(--muted);font-size:.76rem;font-weight:800}.role-icon{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.role-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.role-title-line strong{display:block}.role-title-line strong{color:var(--ink)}.event-title-cell{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-width:250px}.event-title-cell>span{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.event-title-cell strong,.event-title-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-title-cell small{margin-top:2px;color:var(--muted);font-size:.8rem}.event-occurrence-list{display:flex;flex-wrap:wrap;gap:6px}.event-occurrence-list span{display:inline-flex;border-radius:999px;padding:6px 9px;background:#f1f5f9;color:#334155;font-size:.78rem;font-weight:900}.event-admin-actions,.event-calendar-panel{display:grid;gap:14px}.event-admin-actions{grid-template-columns:auto auto;align-items:center;justify-content:end}.event-calendar-legend{display:flex;flex-wrap:wrap;gap:10px;color:#475569;font-size:.8rem;font-weight:900}.event-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.event-dot{display:inline-block;width:9px;height:9px;border-radius:999px;background:#2563eb}.event-dot.special{background:#d97706}.event-dot.canceled{background:#dc2626}.event-dot.moved{background:#059669}.event-calendar-day{min-height:188px}.event-calendar-chip{display:grid;gap:3px;width:100%;min-height:82px;border:1px solid rgba(37,99,235,.16);border-radius:12px;padding:9px;background:#eff6ff;color:#1e3a8a;cursor:pointer;text-align:left}.event-calendar-chip:hover{border-color:#2563eb57;background:#dbeafe}.event-calendar-chip.is-special{border-color:#d9770647;background:#fffbeb;color:#92400e}.event-calendar-chip.is-moved{border-color:#0596693d}.event-calendar-chip.is-canceled{border-color:#dc26263d;background:#fef2f2;color:#991b1b}.event-calendar-chip span,.event-calendar-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-calendar-chip span{font-size:.72rem;font-weight:900;text-transform:uppercase}.event-calendar-chip strong{overflow-wrap:anywhere;color:var(--ink);font-size:.86rem;line-height:1.25}.event-calendar-chip.is-canceled strong{color:#7f1d1d;text-decoration:line-through}.event-calendar-chip small{color:currentColor;font-size:.76rem;font-weight:900}.event-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);gap:14px}.event-active-toggle{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:12px;background:#f8fafc;cursor:pointer}.event-active-toggle.danger{background:#fff7ed}.event-active-toggle input{width:17px;height:17px;accent-color:var(--primary)}.event-active-toggle strong,.event-active-toggle small{display:block}.event-active-toggle small{margin-top:2px;color:var(--muted);font-size:.8rem;font-weight:800}.event-occurrence-modal{width:min(100%,720px)}.event-occurrence-summary{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;border:1px solid rgba(15,23,42,.09);border-radius:14px;padding:13px;background:#f8fafc}.event-occurrence-summary>span{display:inline-grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.event-occurrence-summary strong,.event-occurrence-summary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-occurrence-summary small{margin-top:3px;color:var(--muted);font-size:.84rem;font-weight:900}.event-occurrence-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.event-base-location{display:inline-flex;align-items:center;gap:6px;margin:-6px 0 0;color:var(--muted);font-size:.82rem;font-weight:900}.accounting-panel{display:grid;gap:16px}.website-panel{display:grid;gap:16px;align-items:start}.website-editor-card,.website-editor-form{display:grid;gap:16px}.website-editor-section{display:grid;grid-template-columns:1fr;gap:16px;border:1px solid rgba(15,23,42,.09);border-radius:16px;padding:16px;background:#f8fafc}.website-editor-section>div:first-child span{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.website-editor-section>div:first-child p{margin:6px 0 0;color:#64748b;font-size:.86rem;font-weight:800;line-height:1.45}.website-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.website-field-grid .admin-field.is-wide{grid-column:1 / -1}.website-editor-actions{justify-content:flex-end}.website-photo-layout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center}.website-photo-preview,.profile-photo-preview{display:grid;width:132px;aspect-ratio:1;overflow:hidden;place-items:center;border:1px solid rgba(15,23,42,.09);border-radius:18px;background:#f8fafc}.website-photo-preview img,.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.website-photo-actions{display:flex;align-items:flex-start;flex-direction:column;gap:9px;min-width:0}.website-photo-actions strong,.website-photo-actions span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.website-photo-actions span{color:var(--muted);font-weight:800}.website-photo-upload{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;padding:0 13px;background:#fff;color:#334155;cursor:pointer;font-size:.88rem;font-weight:900}.website-photo-upload input{display:none}.profile-panel,.profile-form{display:grid;gap:18px}.profile-avatar-layout .avatar{width:100%;height:100%;border-radius:18px}.profile-readonly-input{color:var(--muted)!important}.profile-actions{justify-content:flex-end}.accounting-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.accounting-summary-card{display:grid;gap:7px;border:1px solid rgba(15,23,42,.09);border-radius:14px;padding:14px;background:#f8fafc}.accounting-summary-card span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.accounting-summary-card strong{color:var(--ink);font-size:1.35rem}.accounting-summary-card.success strong{color:#047857}.accounting-summary-card.danger strong{color:#b91c1c}.accounting-toolbar,.accounting-range-actions{display:flex;align-items:center;gap:10px}.accounting-toolbar{justify-content:space-between;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:10px;background:#f8fafc}.accounting-range-actions{justify-content:flex-end;flex-wrap:wrap}.accounting-range-actions strong{color:var(--ink);text-transform:capitalize}.accounting-range-actions button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:0 12px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.accounting-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.accounting-calendar-card,.accounting-expenses-panel{display:grid;gap:12px;min-width:0;border:1px solid rgba(15,23,42,.09);border-radius:16px;padding:14px;background:#fff}.accounting-day{min-height:188px}.accounting-expenses-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.accounting-expenses-content.is-list-only{grid-template-columns:minmax(0,1fr)}.accounting-expense-column{min-width:0}.accounting-expense-column h3{margin-bottom:12px;color:var(--ink);font-size:1rem}.accounting-expense-column-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.accounting-expense-column-header h3{margin-bottom:0}.accounting-expense-column-header span{flex:0 0 auto;border-radius:999px;padding:4px 9px;background:#eef2ff;color:#3730a3;font-size:.74rem;font-weight:900}.accounting-event-chip{display:grid;gap:3px;width:100%;min-height:82px;border:1px solid rgba(16,185,129,.18);border-radius:12px;padding:9px;background:#ecfdf5;color:#065f46;cursor:pointer;text-align:left}.accounting-event-chip:hover{border-color:#10b9815c;background:#d1fae5}.accounting-event-chip span,.accounting-event-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounting-event-chip span{font-size:.72rem;font-weight:900;text-transform:uppercase}.accounting-event-chip strong{overflow-wrap:anywhere;color:var(--ink);font-size:.86rem;line-height:1.25}.accounting-event-chip small{color:#047857;font-size:.8rem;font-weight:900}.accounting-expense-list,.accounting-tithe-list{display:grid;gap:9px}.accounting-expense-list-compact{align-content:start}.accounting-expense-row,.accounting-tithe-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid rgba(15,23,42,.08);border-radius:12px;padding:10px;background:#f8fafc}.accounting-expense-row>div,.accounting-tithe-row>div{min-width:0}.accounting-expense-row strong,.accounting-expense-row span,.accounting-tithe-row strong,.accounting-tithe-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounting-expense-row span,.accounting-tithe-row span{margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:800}.accounting-modal{width:min(100%,920px)}.accounting-modal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.accounting-section-form{display:grid;gap:12px;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:14px;background:#f8fafc}.accounting-section-form .admin-field input{background:#fff}.accounting-section-form .button,.accounting-expenses-panel .button{justify-self:start;min-height:44px}.tithe-form-grid{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,.55fr) minmax(140px,.8fr) auto;align-items:end;gap:10px}.worship-planner-card{display:grid;gap:16px}.worship-view-actions,.calendar-nav-actions,.worship-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px}.worship-view-actions .segmented-control{grid-template-columns:1fr 1fr}.segmented-control{display:inline-grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.segmented-control button{min-height:40px;border:0;border-radius:0;padding:0 13px;background:transparent;color:#64748b;box-shadow:none}.segmented-control button.is-active{background:#fff;color:var(--primary);box-shadow:0 8px 22px #0f172a14}.worship-toolbar{justify-content:space-between;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:10px;background:#f8fafc}.worship-toolbar strong{color:var(--ink);font-size:1rem;text-transform:capitalize}.worship-overview{display:grid;gap:16px}.worship-overview-header,.worship-overview-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.worship-overview-header span,.worship-overview-panel-header span{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.worship-overview-header h3,.worship-overview-panel-header h3{margin:4px 0 0;color:var(--ink);font-size:1.18rem}.worship-overview-header button,.worship-overview-panel-header button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;padding:0 13px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.worship-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.summary-pill{display:grid;gap:5px;border:1px solid rgba(15,23,42,.09);border-radius:14px;padding:13px;background:#f8fafc}.summary-pill span{color:var(--muted);font-size:.78rem;font-weight:900}.summary-pill strong{color:var(--ink);font-size:1.35rem}.worship-overview-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;align-items:start}.worship-overview-panel{display:grid;gap:14px;min-width:0;border:1px solid rgba(15,23,42,.09);border-radius:16px;padding:16px;background:#fff}.worship-team-manager{display:grid;gap:14px}.worship-team-member-list{display:grid;gap:9px}.worship-team-member-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:10px;background:#f8fafc}.worship-team-member-row strong,.worship-team-member-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worship-team-member-row span{margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:800}.worship-team-picker{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:14px}.worship-team-picker>div:first-child span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.worship-team-picker p{margin:3px 0 0;color:var(--muted);font-weight:800}.worship-team-picker .button{justify-self:start;min-height:44px}.my-worship-list{display:grid;gap:10px}.my-worship-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:11px;background:#f8fafc;color:inherit;cursor:pointer;text-align:left}.my-worship-row:hover{border-color:#2563eb3d;background:#eff6ff}.my-worship-row>span,.my-worship-empty>span{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.my-worship-row>div{min-width:0}.my-worship-row strong,.my-worship-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-worship-row small{margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:800}.my-worship-empty{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;border:1px dashed rgba(15,23,42,.16);border-radius:14px;padding:14px;background:#f8fafc}.my-worship-empty strong,.my-worship-empty p{display:block}.my-worship-empty p{margin:4px 0 0;color:var(--muted);font-size:.88rem;font-weight:800}.my-worship-empty button{grid-column:2;display:inline-flex;width:fit-content;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:0 12px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.my-worship-empty small{grid-column:2;color:var(--muted);font-weight:800}.worship-assignment-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:11px;background:#f8fafc;color:inherit;cursor:pointer;text-align:left}.worship-assignment-row:hover{border-color:#2563eb3d;background:#eff6ff}.worship-assignment-row>span{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.worship-assignment-row>div{min-width:0}.worship-assignment-row strong,.worship-assignment-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worship-assignment-row strong{color:var(--ink)}.worship-assignment-row small{margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:800}.worship-assignment-row .badge{justify-self:end;justify-content:center;min-width:84px;line-height:1;text-align:center;white-space:nowrap}.worship-toolbar button,.songs-editor-heading button,.song-remove-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:0 12px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.rotate-left{transform:rotate(90deg)}.rotate-right{transform:rotate(-90deg)}.worship-calendar-head{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;color:var(--muted);font-size:.76rem;font-weight:900;text-align:center;text-transform:uppercase}.worship-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.worship-day{display:grid;grid-template-rows:auto minmax(126px,1fr);min-height:178px;border:1px solid rgba(15,23,42,.1);border-radius:14px;background:#fff;overflow:hidden}.worship-day.is-outside{background:#f8fafc}.worship-day header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(15,23,42,.08);padding:10px 11px}.worship-day header strong{color:var(--ink);font-size:1rem}.worship-day header span{color:var(--muted);font-size:.74rem;font-weight:900;text-transform:uppercase}.worship-day-events{display:grid;align-content:start;gap:8px;padding:10px}.worship-event-chip{display:grid;gap:3px;width:100%;min-height:78px;border:1px solid rgba(37,99,235,.16);border-radius:12px;padding:9px;background:#eff6ff;color:#1e3a8a;cursor:pointer;text-align:left}.worship-event-chip:hover{border-color:#2563eb57;background:#dbeafe}.worship-event-chip span,.worship-event-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worship-event-chip span{font-size:.72rem;font-weight:900;text-transform:uppercase}.worship-event-chip strong{overflow-wrap:anywhere;color:var(--ink);font-size:.86rem;line-height:1.25}.worship-event-chip small{color:#475569;font-size:.76rem;font-weight:900}.worship-modal{width:min(100%,940px)}.worship-assignment-summary{display:grid;gap:12px}.readonly-assignment{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:13px;background:#f8fafc}.readonly-assignment>span:first-child{grid-column:1 / -1}.readonly-assignment .avatar{grid-row:2 / 4;margin-right:8px}.readonly-assignment span,.songs-editor-heading span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.readonly-assignment strong{color:var(--ink)}.readonly-assignment small{color:var(--muted);font-weight:800}.songs-editor{display:grid;gap:12px}.songs-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.songs-editor-heading h3{margin:3px 0 0;font-size:1.05rem}.song-category-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.song-category-tabs button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid rgba(15,23,42,.1);border-radius:12px;padding:9px 10px;background:#f8fafc;color:#334155;cursor:pointer;font-weight:900;text-align:left}.song-category-tabs button.is-active{border-color:#2563eb47;background:#eff6ff;color:var(--primary)}.song-category-tabs span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-category-tabs strong{display:inline-grid;min-width:24px;height:24px;place-items:center;border-radius:999px;background:#fff;color:inherit;font-size:.78rem}.empty-song-category{display:grid;gap:10px;border:1px dashed rgba(15,23,42,.16);border-radius:14px;padding:14px;background:#f8fafc}.empty-song-category button{display:inline-flex;width:fit-content;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:0 12px;background:#fff;color:#334155;cursor:pointer;font-weight:900}.song-list{display:grid;gap:10px}.song-row{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(140px,.95fr) minmax(88px,.45fr) minmax(160px,1fr) 42px;align-items:end;gap:10px;border:1px solid rgba(15,23,42,.09);border-radius:14px;padding:12px;background:#f8fafc}.song-row .admin-field{gap:6px}.song-row .admin-field input{background:#fff}.song-remove-button{width:42px;padding:0;color:#b91c1c}.role-modal-actions button:disabled,.songs-editor-heading button:disabled,.song-remove-button:disabled{cursor:not-allowed;opacity:.58}.role-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:18px;background:#0812268f}.role-modal{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(100%,760px);max-height:min(92dvh,780px);overflow:hidden;border:1px solid rgba(15,23,42,.12);border-radius:18px;background:#fff;box-shadow:0 30px 90px #08122652}.role-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:20px 22px}.role-modal-header span,.permission-editor>div>span{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.role-modal-header h2{margin:4px 0 0;font-size:1.45rem}.role-modal-header p{margin:6px 0 0;color:var(--muted);font-weight:800}.role-modal-header button{width:40px;flex:0 0 auto;padding:0}.role-modal-body{display:grid;gap:16px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px}.permission-editor{display:grid;gap:12px}.permission-editor p{margin:4px 0 0;color:var(--muted);font-size:.9rem}.permission-matrix{overflow:hidden;border:1px solid rgba(15,23,42,.1);border-radius:14px;background:#fff}.permission-matrix-head,.permission-matrix-row{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.4fr);gap:14px;align-items:center;padding:12px 14px}.permission-matrix-head{background:#f8fafc;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.permission-matrix-row+.permission-matrix-row{border-top:1px solid rgba(15,23,42,.08)}.permission-matrix-row strong{color:#334155}.permission-action-list{display:flex;flex-wrap:wrap;gap:8px}.permission-action{display:inline-flex;min-height:34px;align-items:center;gap:8px;border:1px solid rgba(15,23,42,.1);border-radius:999px;padding:0 12px;background:#f8fafc;color:#334155;cursor:pointer;font-size:.86rem;font-weight:900}.permission-action input{width:16px;height:16px;accent-color:var(--primary)}.role-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:16px}.user-role-modal{width:min(100%,620px)}.role-select-list{display:grid;gap:10px}.role-select-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid rgba(15,23,42,.1);border-radius:14px;padding:12px;background:#f8fafc;cursor:pointer}.role-select-option input{width:17px;height:17px;accent-color:var(--primary)}.role-select-option strong,.role-select-option small{display:block}.role-select-option small{margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:900}.role-edit-form{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px}.user-identity{display:flex;align-items:center;gap:10px}.user-identity strong,.user-identity span{display:block}.user-identity span{color:var(--muted);font-size:.78rem}.role-badge-list{display:flex;flex-wrap:wrap;gap:6px}.invite-result{display:grid;gap:8px;margin-top:16px}.invite-result span{color:var(--muted);font-size:.8rem;font-weight:900}.table-action{min-height:34px;border-radius:10px;padding:0 10px;font-size:.82rem}.table-action.danger{border-color:#dc26262e;color:#b91c1c}.activity-list,.quick-actions,.settings-list,.integration-list,.compact-list{display:grid;gap:12px}.compact-row,.event-admin-row{display:grid;align-items:center;gap:12px;border-radius:14px;padding:13px;background:#f8fafc}.compact-row{grid-template-columns:auto minmax(0,1fr) auto}.event-admin-row{grid-template-columns:42px minmax(0,1fr) auto}.event-admin-row>span:first-child{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary)}.compact-row strong,.compact-row span,.event-admin-row strong,.event-admin-row small{display:block}.compact-row span,.event-admin-row small{overflow:hidden;color:var(--muted);font-size:.84rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.finance-mini-card>strong{display:block;margin:8px 0 4px;font-size:2.35rem}.finance-mini-card p{color:var(--muted)}.finance-bars.compact{height:92px;margin-top:20px}.activity-list p{display:flex;align-items:center;gap:10px;margin:0;border-radius:14px;padding:13px;background:#f8fafc;color:#334155;font-weight:800}.activity-list svg{color:var(--secondary);flex:0 0 auto}.activity-list p>span,.activity-list p strong,.activity-list p small{display:block;min-width:0}.activity-list p strong{color:var(--ink)}.activity-list p small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.finance-transaction-list{display:grid;gap:8px;margin-top:14px}.finance-transaction-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:11px;padding:9px 10px;background:#ffffffad}.finance-transaction-list span{min-width:0;overflow:hidden;color:#475569;font-size:.82rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.finance-transaction-list strong{flex:0 0 auto;font-size:.88rem}.finance-transaction-list small{color:#64748b;font-weight:900}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions button{min-height:58px;justify-content:flex-start;background:#f8fafc}.data-table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;min-width:560px}.data-table th,.data-table td{border-bottom:1px solid var(--line);padding:14px 12px;text-align:left}.data-table th{color:var(--muted);font-size:.8rem;text-transform:uppercase}.data-table td{color:#334155;font-weight:800}.badge{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:900}.badge.success{background:#dcfce7;color:#047857}.badge.warning{background:#fef3c7;color:#b45309}.badge.neutral{background:#e2e8f0;color:#334155}.badge.danger{background:#fee2e2;color:#b91c1c}button:disabled{cursor:not-allowed;opacity:.62}.finance-card strong{display:block;margin:10px 0;font-size:3rem}.finance-card p{color:var(--muted)}.finance-bars{display:grid;height:140px;grid-template-columns:repeat(5,1fr);align-items:end;gap:10px;margin-top:28px}.finance-bars span{border-radius:999px 999px 6px 6px;background:linear-gradient(180deg,#2563eb,#10b981)}.finance-bars span:nth-child(1){height:44%}.finance-bars span:nth-child(2){height:68%}.finance-bars span:nth-child(3){height:52%}.finance-bars span:nth-child(4){height:86%}.finance-bars span:nth-child(5){height:74%}.amount-positive{color:#059669}.amount-negative{color:#dc2626}.info-row{display:grid;gap:4px;border-radius:14px;padding:13px;background:#f8fafc}.info-row span{color:var(--muted);font-size:.8rem;font-weight:900}.info-row strong{overflow-wrap:anywhere;color:var(--ink);line-height:1.25}.integration-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:14px;padding:13px;background:#f8fafc}.integration-row>span{display:inline-grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#eff6ff;color:var(--primary);font-weight:900}.integration-row strong,.integration-row p{display:block;margin:0}.integration-row p{color:var(--muted);font-size:.88rem;font-weight:700}.profile-block{display:flex;align-items:center;gap:18px}.profile-block>div strong,.profile-block>div span{display:block}.profile-block>div span{margin:4px 0 12px;color:var(--muted);font-weight:800}.settings-pastor-photo{align-items:flex-start}.settings-pastor-form{display:grid;gap:16px}.settings-pastor-photo>div{min-width:0}.settings-pastor-photo p{margin:0;line-height:1.5}.settings-pastor-fields{gap:12px}.settings-photo-controls,.settings-photo-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:14px}.settings-photo-controls{display:flex;gap:9px}.settings-photo-actions{padding-top:0}@media(max-width:1120px){.topbar{grid-template-columns:minmax(220px,1fr) auto}.nav-center{display:none}.menu-button{display:inline-flex}.mobile-menu.is-open{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:8px;padding-top:6px}.mobile-menu a{border-radius:999px;padding:10px 14px;background:#eff6ff;color:var(--primary);font-weight:900;text-decoration:none}}@media(max-width:1080px){.hero{grid-template-columns:1fr}.hero-visual{min-height:420px}.feature-grid,.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-shell,.admin-shell{grid-template-columns:1fr}.login-visual,.login-panel{min-height:auto}.login-visual{gap:80px}.admin-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:50;width:min(84vw,320px);height:100dvh;overflow-y:auto;transform:translate(-104%);transition:transform .18s ease;box-shadow:28px 0 70px #08122647}.admin-nav{grid-template-columns:1fr}.admin-user{margin-top:auto}.admin-menu-open .admin-sidebar{transform:translate(0)}.admin-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:block;border:0;background:#08122685;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .18s ease}.admin-menu-open .admin-menu-backdrop{opacity:1;pointer-events:auto}.admin-menu-trigger{display:inline-flex}.admin-stat-grid,.admin-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-mini-card{grid-column:1 / -1}}@media(max-width:860px){.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.brand-copy strong,.brand-copy small{max-width:calc(100vw - 210px)}.language-button span,.login-button span{display:none}.login-button{width:42px;padding:0}.hero{min-height:auto;padding-top:58px}.hero-content{margin-left:0}h1 span{max-width:none}.location-section,.contact-section{grid-template-columns:1fr}.section-heading-row{align-items:flex-start;flex-direction:column}.feature-grid,.card-grid,.quick-info-grid,.form-grid,.footer-grid,.admin-grid-two,.admin-grid-three,.event-form-grid,.event-admin-actions,.event-occurrence-options,.website-panel,.website-editor-section,.website-field-grid,.accounting-layout,.accounting-expenses-content,.accounting-summary-grid,.accounting-modal-summary,.tithe-form-grid,.worship-overview-grid,.worship-summary-strip,.song-category-tabs,.role-choice-list,.role-edit-form,.song-row{grid-template-columns:1fr}.admin-topbar{align-items:flex-start;flex-direction:column}.admin-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.admin-search input{width:160px}.role-modal{max-height:94dvh}.worship-view-actions,.calendar-nav-actions,.worship-toolbar,.accounting-toolbar,.accounting-range-actions,.worship-overview-header,.worship-overview-panel-header,.songs-editor-heading{align-items:stretch;flex-direction:column}.event-admin-actions{width:100%;justify-content:stretch}.event-admin-actions .segmented-control,.worship-overview-header button,.worship-overview-panel-header button,.worship-toolbar button,.event-admin-actions button,.accounting-range-actions button,.songs-editor-heading button,.song-remove-button{width:100%}.accounting-range-actions strong{text-align:center}.accounting-expense-row,.accounting-tithe-row{grid-template-columns:1fr}.worship-calendar-head{display:none}.worship-calendar{grid-template-columns:1fr}.worship-day{grid-template-rows:auto auto;min-height:auto}.worship-assignment-row,.my-worship-row{grid-template-columns:42px minmax(0,1fr)}.my-worship-row .badge{grid-column:1 / -1;width:fit-content}.my-worship-empty{grid-template-columns:1fr}.my-worship-empty button,.my-worship-empty small{grid-column:auto}.worship-team-member-row{grid-template-columns:auto minmax(0,1fr)}.worship-team-member-row .badge,.worship-assignment-row .badge{grid-column:1 / -1;width:fit-content}.song-remove-button{min-height:40px}.permission-matrix-head,.permission-matrix-row{grid-template-columns:1fr;gap:8px}.pastor-card,.footer-bottom{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.topbar{padding:10px 16px}.brand-mark{width:38px;height:38px;border-radius:11px}.brand-copy strong{max-width:calc(100vw - 208px);font-size:.9rem}.brand-copy small{max-width:calc(100vw - 208px)}.nav-actions{gap:4px}.nav-icon-link{display:none}.language-button,.menu-button,.login-button{width:38px;min-height:38px}.hero{gap:32px;padding-bottom:48px}h1{font-size:clamp(2.15rem,10.8vw,2.75rem)}h1 strong{font-size:clamp(1.75rem,8.6vw,2.2rem)}.hero-actions,.hero-service-cards{align-items:stretch;flex-direction:column}.button{width:100%}.hero-service-cards article{min-width:0}.hero-visual{min-height:340px;border-radius:22px}.hero-location-pill{top:46%}.map-panel{min-height:320px}.location-section{padding-right:16px;padding-left:16px}.location-action,.location-action .button{width:100%}.map-open-pill{right:12px;left:12px;justify-content:center}.info-tile,.location-note{padding:18px}.info-tile{gap:14px}.login-options,.profile-block,.website-photo-layout,.integration-row{align-items:flex-start;flex-direction:column}.integration-row,.website-photo-layout{display:flex}.admin-sidebar,.admin-content,.admin-topbar{padding:16px}.admin-stat-grid,.quick-actions,.admin-nav{grid-template-columns:1fr}.admin-nav button{min-height:48px;padding:0 10px;font-size:.86rem}.compact-row,.event-admin-row{grid-template-columns:1fr}.admin-actions button span{display:none}}
