/* One screen-only design system derived from the welcome page. */
.master-backdrop,.master-header,.master-hero{display:none}
@media screen{
body:has(.master-backdrop){--cream:#f8f5ed;--ink:#102037;--muted:#53647a;--gold-500:#d7ad58;--gold-300:#f2d89a;margin:0;background:#071426;color:#102037;font-family:'DM Sans',Arial,sans-serif;line-height:1.6;isolation:isolate}
.master-backdrop{display:block;position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(5,13,25,.94),rgba(7,20,38,.80) 48%,rgba(12,32,58,.58)),url('/assets/welcome-church.jpeg') 63% center/cover no-repeat}
body.master-design .site-header,.master-header{position:relative;inset:auto;background:rgba(7,20,38,.20);border-bottom:1px solid #ffffff24;color:#fff;backdrop-filter:blur(12px);z-index:25}
.master-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px max(22px,calc((100vw - 1240px)/2));}
.master-brand{display:flex;gap:14px;align-items:center;color:#fff;text-decoration:none}.master-brand img{object-fit:contain}.master-brand strong{letter-spacing:.14em;font-size:19px}.master-brand small{display:block;color:#f2d89a;font-size:12px;letter-spacing:.15em}
.master-menu{position:relative}.master-menu summary{list-style:none;display:flex;align-items:center;gap:9px;cursor:pointer;min-height:44px;padding:0 15px;border:1px solid #ffffff55;border-radius:12px}.master-menu summary::-webkit-details-marker{display:none}.master-menu nav{position:absolute;right:0;top:55px;width:min(280px,80vw);padding:14px;display:grid;background:#0c203a;border:1px solid #ffffff33;border-radius:18px;box-shadow:0 20px 50px #0005}.master-menu a{color:#fff;padding:11px 14px;text-decoration:none;border-radius:9px}.master-menu a:hover{background:#ffffff14;color:#f2d89a}
body.master-design .hero,body.master-design .page-heading,.master-hero{display:block;background:transparent!important;color:#f8f5ed;position:relative;min-height:0;height:auto;max-height:none;padding:70px 0 64px}
body.master-design .hero-image,body.master-design .hero-overlay,body.master-design .hero-grid{display:none}
body.master-design .hero-content{padding-top:30px;padding-bottom:45px}
body.master-design .page-heading h1,body.master-design .hero h1,.master-hero h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,4.5vw,64px);line-height:1.16;letter-spacing:-.025em;color:#fff;max-width:950px;margin:22px 0}
body.master-design .page-heading p,body.master-design .hero-lead{color:#e0e5ed;max-width:720px}
body.master-design .page-heading .kicker,body.master-design .eyebrow,.master-eyebrow{color:#f2d89a;font-size:12px;font-weight:700;letter-spacing:.2em}
.master-hero{width:min(1240px,calc(100% - 44px));margin:auto}
.master-back{display:inline-flex;align-items:center;min-height:44px;color:#f2d89a!important;font-size:14px;text-decoration:none;margin-bottom:16px}
body.master-design .breadcrumbs{background:transparent;color:#e1e7ed;border-color:#ffffff24}
body.master-design main>.section,body.master-design main>.related-pages{background:transparent!important;padding:24px 0}
body.master-design main>.section>.container,body.master-design .related-pages>.container{background:rgba(248,245,237,.96);border:1px solid #ffffff66;border-radius:24px;padding:clamp(22px,3vw,42px);box-shadow:0 12px 32px #00000018;overflow-wrap:anywhere}
body.master-design :is(.paper,.card,.feed-card,.stat-card,.empty-state,.home-fixed-panel){border-radius:18px;box-shadow:0 6px 20px #0714260c;border-color:#dce1e6}
body.master-design .master-workspace{box-sizing:border-box;width:min(1240px,calc(100% - 44px));max-width:1240px;margin:0 auto 48px;padding:clamp(20px,3vw,36px);background:rgba(255,255,255,.97);color:#102037;border:1px solid #fff;border-radius:24px;box-shadow:0 12px 32px #0002;min-width:0;overflow-x:auto}
body.master-design .subnav,body.master-design .quicklinks{padding:16px;border-radius:18px;background:rgba(248,245,237,.96);box-sizing:border-box}
body.master-design :is(.button,button,input,select,textarea){border-radius:10px}
body.master-design :is(button,.button,input,select){min-height:44px}
body.master-design .button-gold{background:#d7ad58;color:#071426;border-color:#d7ad58}
body.master-design :is(input,select,textarea){background:#fff;color:#102037}
body.master-design table{background:#fff;color:#102037}
body.master-design th{background:#eef1f5;color:#102037}
body.master-design .module-navigation{background:#0c203a;border-radius:16px}
body.master-design footer{background:rgba(5,13,25,.90);color:#f8f5ed;margin-top:56px;border-top:1px solid #ffffff24;padding:48px 22px 24px}
body.master-design footer a{color:#f2d89a}body.master-design footer .container{max-width:1240px;margin-inline:auto}body.master-design footer .social-links{display:flex;flex-wrap:wrap;gap:12px;margin-block:24px}body.master-design footer .button{display:inline-flex;gap:10px;align-items:center;padding:10px 16px;border:1px solid #ffffff40;text-decoration:none}
body.master-design :focus-visible{outline:3px solid #d7ad58;outline-offset:4px}
body.master-design .finance-print-layout{width:100%}
@media(max-width:700px){
.master-header{padding:14px 20px}.master-brand strong{font-size:16px}.master-brand img{width:34px;height:52px}
body.master-design .desktop-nav{display:none}body.master-design .nav-shell{height:82px}
.master-backdrop{background-image:linear-gradient(180deg,rgba(5,13,25,.88),rgba(7,20,38,.80) 65%,rgba(12,32,58,.90)),url('/assets/welcome-church.jpeg')}
body.master-design .page-heading,.master-hero,body.master-design .hero{padding-top:35px;padding-bottom:32px}
body.master-design main>.section>.container{border-radius:18px;padding:22px 18px}
body.master-design .master-workspace{width:calc(100% - 24px);padding:18px;border-radius:18px}
body.master-design :is(.cards,.stats-grid,.card-grid){grid-template-columns:1fr}
body.master-design footer{padding:32px 16px}body.master-design .hero h1{font-size:38px}
}
}
@media print{.master-backdrop,.master-header,.master-hero,.master-back{display:none!important}body.master-design>footer{display:none!important}}
/* Keep viewport-fixed navigation anchored to the left, outside header effects. */
@media screen{
body.master-design .site-header,.master-header{backdrop-filter:none;transform:none;filter:none}
body.master-design .nav-shell{justify-content:flex-start;gap:22px}
body.master-design .menu-button{order:-1;margin-right:0}
body.master-design .desktop-nav{display:none}
body.master-design .primary-nav{left:0;right:auto;top:0;bottom:0;position:fixed;height:100dvh;max-height:100dvh;border-radius:0 20px 20px 0}
.master-header{justify-content:flex-start}
.master-menu{order:-1}
.master-menu nav{position:fixed;left:0;right:auto;top:96px;bottom:0;width:280px;max-width:calc(100vw - 36px);box-sizing:border-box;overflow-y:auto;align-content:start;border-radius:0 20px 0 0;background:rgba(7,20,38,.98);z-index:40}
@media(min-width:1100px){
body.master-design:has(.master-menu){padding-left:280px}
.master-menu summary{display:none}
.master-menu nav{top:0;height:100dvh;padding-top:32px}
body.master-design .primary-nav{width:280px;box-sizing:border-box}
}
@media(max-width:1099px){
body.master-design .nav-shell{gap:16px}
.master-menu nav{top:84px}
}
}
/* Subtle translucent navy navigation; text remains fully opaque. */
@media screen{
body.master-design .primary-nav,.master-menu nav{
 background:rgba(7,20,38,.84);
 -webkit-backdrop-filter:blur(10px);
 backdrop-filter:blur(10px);
 border-right:1px solid rgba(242,216,154,.22);
 box-shadow:10px 0 32px rgba(0,0,0,.16);
}
}
/* Transparent, collapsible navigation on every screen size. */
@media screen{
body.master-design.has-sidebar,body.master-design:has(.master-menu){padding-left:0}
body.master-design .menu-button,.master-menu summary{display:flex;align-items:center;min-height:46px;color:#fff!important;background:rgba(7,20,38,.55);border-color:#ffffff80}
body.master-design .menu-button{display:block;order:-2}
.master-menu{order:-2}
body.master-design .primary-nav{display:none;background:transparent!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(320px,calc(100vw - 40px));text-shadow:0 1px 4px #000}
body.master-design .primary-nav.open{display:grid;gap:6px}
body.master-design .sidebar-close{display:block}
body.master-design.sidebar-open{overflow:hidden}
body.master-design.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:35;background:rgba(2,9,23,.58)}
.master-menu nav{background:transparent!important;top:90px;height:calc(100dvh - 90px);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-shadow:0 1px 4px #000}
body.master-design .primary-nav a,.master-menu nav a{color:#fff!important;background:rgba(7,20,38,.64);font-weight:600;line-height:1.5;min-height:46px;border-radius:10px}
body.master-design .primary-nav a:hover,body.master-design .primary-nav a[aria-current=page],.master-menu nav a:hover{background:rgba(215,173,88,.94);color:#071426!important;text-shadow:none}
body.master-design .sidebar-label,body.master-design .sidebar-brand small{color:#fff;text-shadow:0 1px 4px #000}
.header-live{order:5;margin-left:auto;display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:8px 16px;border:1px solid #d7ad5880;border-radius:12px;background:rgba(7,20,38,.6);color:#f2d89a!important;text-decoration:none;font-size:14px;font-weight:700;white-space:nowrap;box-sizing:border-box}
body.master-design :is(.paper,.content-card,.card,.empty-state){color:#102037}
body.master-design :is(.paper,.content-card,.card) :is(h1,h2,h3,h4,label){color:#102037}
body.master-design :is(.paper,.content-card) :is(.meta,.note){color:#45556b}
body.master-design .home-fixed-panel{display:none!important}
body.master-design.home-fixed-info #main{margin-right:0}
@media(max-width:600px){body.master-design .nav-shell{gap:10px;width:calc(100% - 24px)}.master-header{gap:10px;padding-inline:12px}.header-live{padding:8px 10px;font-size:12px;gap:6px}.header-live svg{width:17px}.brand-copy strong,.master-brand strong{font-size:14px}.brand-copy small,.master-brand small{font-size:10px}.brand,.master-brand{gap:7px}.brand-logo,.master-brand img{width:28px;height:44px}body.master-design .menu-button{padding-right:8px}body.master-design .menu-button b{display:none}.master-menu summary{font-size:0;padding:0 10px;gap:0}}
}
@media print{.header-live{display:none!important}}
/* Manifesto: frosted glass over the shared church photograph. */
@media screen{
body.master-design .manifesto{margin-top:40px;margin-bottom:48px;padding:clamp(22px,4vw,48px);box-sizing:border-box;border:1px solid rgba(242,216,154,.28);border-radius:24px;background:rgba(7,20,38,.58);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 16px 40px #0002;color:#f8f5ed}
body.master-design .manifesto-heading{padding-top:0;border-top:0;gap:32px}
body.master-design .manifesto-heading h3{color:#fff;font-family:Georgia,serif;font-size:clamp(28px,3.8vw,52px);line-height:1.18}
body.master-design .manifesto :is(.kicker,.manifesto-number,.declaration-label){color:#f2d89a}
body.master-design .manifesto-heading>p,body.master-design .manifesto-item :is(p,li,em){color:#edf1f6}
body.master-design .manifesto-grid{gap:20px;margin-top:32px;border:0}
body.master-design .manifesto-item{min-height:0;padding:clamp(22px,3vw,34px);border:1px solid #ffffff26;border-radius:18px;background:rgba(255,255,255,.055)}
body.master-design .manifesto-item h4{color:#fff}
body.master-design .manifesto-number{margin-bottom:20px;font-size:13px}
body.master-design .manifesto-item .manifesto-conclusion{color:#f2d89a;border-top:1px solid #ffffff26;padding-top:18px}
body.master-design .manifesto-declaration{margin-top:24px;border:1px solid #ffffff26;border-radius:18px;overflow:hidden;background:rgba(7,20,38,.35);color:#fff}
body.master-design .manifesto-motto{background:rgba(215,173,88,.08)}
@media(max-width:700px){body.master-design .manifesto-heading,body.master-design .manifesto-grid,body.master-design .manifesto-declaration{grid-template-columns:1fr}body.master-design .manifesto-declaration>div:first-child,body.master-design .manifesto-motto{padding:24px}body.master-design .manifesto-motto{border-left:0;border-top:1px solid #ffffff26}}
}
/* Keep the shared header visible while scrolling without covering page content. */
@media screen{
html:has(.master-backdrop){scroll-padding-top:120px}
body.master-design .site-header,body.master-design .master-header{
 position:sticky;top:0;inset-inline:0;z-index:45;
 background:rgba(7,20,38,.94);
 box-shadow:0 4px 20px rgba(0,0,0,.16);
}
}
@media screen{
body.master-design footer .footer-edit-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:18px;margin-bottom:28px;border:1px solid #d7ad58;border-radius:14px;background:#12263c;color:#fff}
body.master-design footer .footer-edit-toolbar .button-gold{background:#d7ad58;color:#071426;font-weight:700}
body.master-design footer a.footer-item-edit{display:inline-flex;align-items:center;min-height:36px;padding:5px 10px;margin:4px 8px 12px 0;font:600 12px/1.4 Arial,sans-serif;color:#071426;background:#f2d89a;border:1px solid #d7ad58;border-radius:8px;text-shadow:none}
}
@media print{.footer-edit-toolbar,.footer-item-edit{display:none!important}}
/* Admin Utama: contextual controls for individual header items. */
.header-item-tools{position:relative;display:inline-flex;align-items:center;vertical-align:middle;flex:none;z-index:65}
.header-item-trigger{border:1px solid #ffffff70!important;border-radius:8px;background:#10263e!important;color:#fff!important;font-size:23px;min-width:36px;min-height:40px;padding:0 8px!important;cursor:pointer}
.header-item-popup{position:absolute;top:100%;right:0;min-width:165px;padding:6px;background:#fff;color:#172b40;border-radius:10px;box-shadow:0 8px 28px #0005;z-index:100}
.header-item-popup[hidden]{display:none!important}.header-item-popup button{display:block;width:100%;min-height:44px;padding:10px!important;border:0!important;border-radius:6px;background:#fff!important;color:#172b40!important;text-align:left;cursor:pointer}.header-item-popup button:hover{background:#e9eff5!important}
.primary-nav>.header-item-tools,.master-menu nav>.header-item-tools{justify-self:end;margin-top:-48px;margin-right:8px}.primary-nav>a:has(+.header-item-tools),.master-menu nav>a:has(+.header-item-tools){padding-right:52px!important}
[data-header-deleted]{opacity:.45;text-decoration:line-through}.header-edit-dialog{width:min(440px,calc(100vw - 32px));border:0;border-radius:18px;padding:24px;background:#fff;color:#172b40;z-index:200}.header-edit-dialog::backdrop{background:#071426aa}.header-edit-dialog label{display:grid;gap:8px}.header-edit-dialog input{width:100%;box-sizing:border-box;padding:12px;border:1px solid #8d9baa;border-radius:8px;color:#172b40;background:#fff}.header-edit-dialog form>div{display:flex;justify-content:flex-end;gap:12px}.header-edit-dialog button{padding:10px 20px;border-radius:8px;cursor:pointer}.header-edit-dialog [role=status]{color:#a21e28}
@media(max-width:600px){.nav-shell:has(.header-item-tools),.master-header:has(.header-item-tools){flex-wrap:wrap;gap:6px!important}.header-item-trigger{min-width:40px;min-height:44px}}
@media print{.header-item-tools,.header-edit-dialog{display:none!important}}
/* Footer item actions use the same controls as the header. */
.footer-item-row{display:flex;align-items:center;gap:10px;position:relative;min-width:0}.footer-item-row> :first-child{min-width:0;overflow-wrap:anywhere}.footer-item-tools{margin-left:auto}.footer-item-row .footer-bottom{width:auto;margin:0;padding:0}.footer-item-row:has(>.footer-bottom){max-width:1200px;margin:24px auto 0;padding:20px}.footer-item-row [data-footer-state=deleted]{opacity:.45;text-decoration:line-through}.footer-item-tools .header-item-popup{top:auto;bottom:100%}.footer-edit-dialog textarea{box-sizing:border-box;width:100%;min-height:100px;resize:vertical;padding:12px;border:1px solid #8d9baa;border-radius:8px;background:#fff;color:#172b40;font:inherit}.footer-edit-dialog label{margin:14px 0}.footer-edit-dialog [hidden]{display:none!important}.social-links .footer-item-row{flex-wrap:nowrap}@media(max-width:600px){.social-links:has(.footer-item-row){display:grid;grid-template-columns:1fr}.footer-item-row{gap:8px}.footer-item-tools{flex-shrink:0}}

/* Keep Live Streaming and its action menu together at every screen size. */
.header-live-group{order:5;margin-left:auto;display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.header-live-group>.header-live{order:0;margin-left:0}.header-live-group>.header-item-tools{margin-left:0;flex:none}@media print{.header-live-group{display:none!important}}
