:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#182b42;background:#f3f6fa}*{box-sizing:border-box}body{margin:0}.top{background:#102d4a;color:white;padding:16px max(20px,calc((100vw - 1250px)/2));display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{color:white;text-decoration:none;font-size:23px;font-weight:800;display:flex;gap:12px;align-items:center}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#bed2e5}.brand-mark{color:#ffbf4c;font-size:38px}.topright{display:flex;gap:20px;align-items:center}.topright form{margin:0}.nav{display:flex;gap:5px;background:#173f65;padding:8px max(16px,calc((100vw - 1250px)/2));flex-wrap:wrap}.nav a{color:#e6eff7;text-decoration:none;padding:10px 16px;border-radius:7px}.nav a:hover{background:#28587e}main{max-width:1250px;margin:26px auto;padding:0 18px;min-height:72vh}footer{text-align:center;color:#64758a;padding:25px}.hero{background:linear-gradient(120deg,#143d62,#1b6a80);border-radius:18px;color:white;padding:38px 42px;position:relative;overflow:hidden}.hero:after{content:'✦';position:absolute;right:65px;top:-80px;font-size:260px;color:#ffffff15}.hero h1{font-size:36px;margin:0 0 9px}.hero p{color:#d7eaf2;max-width:700px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:17px;margin:22px 0}.card{background:white;border-radius:14px;padding:22px;box-shadow:0 3px 20px #1937550d;border:1px solid #e6ebf0}.card h3{margin:4px 0 10px}.card .big{font-size:32px;font-weight:800;color:#174d75}.card p,.muted{color:#6d7d8e}.card a{color:#1769a4;text-decoration:none;font-weight:650}.panel{background:white;padding:25px;border-radius:14px;margin:20px 0;box-shadow:0 2px 20px #102d4a0b}.btn,button{background:#1769a4;color:white;border:0;border-radius:8px;padding:11px 17px;font-size:14px;cursor:pointer;font-weight:650}.btn{text-decoration:none;display:inline-block}.outline{background:transparent;border:1px solid #c9d9e8}.green{background:#14845d}.gold{background:#d08b16}.danger{background:#aa3740}input,select{padding:10px;border:1px solid #ccd7e2;border-radius:7px;background:white;max-width:100%;font-size:14px}label{display:block;font-weight:600;margin:8px 0 5px}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.toolbar>div{min-width:125px}.toolbar button{margin-bottom:0}.entrygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.field{border:1px solid #e2e9f0;padding:11px;border-radius:9px}.field input{width:100%}.field small{color:#6d7d8e}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tabs a{padding:10px 14px;border:1px solid #cad9e7;background:white;color:#174d75;text-decoration:none;border-radius:8px}.tabs .active{background:#174d75;color:white}.notice{padding:12px 16px;background:#e4f5ed;border:1px solid #b4ddc6;border-radius:8px;margin:14px 0}.warn{background:#fff3da;border-color:#f5d398}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid #e4e9ef;text-align:left;padding:11px}th{background:#f1f6fa}td input{width:105px}.login{max-width:430px;margin:70px auto}.login input{width:100%}.login button{width:100%;margin-top:18px}.hint{font-size:13px;color:#6d7d8e}@media(max-width:700px){.hero{padding:26px}.hero h1{font-size:26px}.top{padding:15px}.nav{padding:8px}.panel{padding:15px}}

.dots{display:flex;gap:7px;margin-top:18px}.dots .dot{background:#ffffff2b;border:1px solid #ffffff88;padding:5px 10px}.slide{min-height:115px}.slide[hidden]{display:none}

/* Vibrant church theme */
:root{--royal:#203dba;--violet:#7138be;--gold:#ffc83e;--emerald:#009e77}body{background:#f6f5fc;color:#232849}.top{background:linear-gradient(110deg,#202b80,#6837a5,#0a899b)}.nav{background:#222d81}.nav a:hover{background:#6b44b6}.brand-mark{color:#ffcf4b}.btn,button{background:#3156c8}.gold{background:#f2b521;color:#18213e}.green{background:#00a277}.card,.panel{border-radius:17px;box-shadow:0 9px 24px #28226710}.card h3{color:#4637a1}.public-hero{border-radius:23px;min-height:340px;padding:65px 45px;color:white;display:flex;align-items:center;background:radial-gradient(circle at 86% 20%,#ffcd3b66,transparent 28%),linear-gradient(120deg,#242e91,#763eb2 55%,#e56b83)}.public-hero h1{font-size:clamp(30px,4vw,54px);max-width:700px;margin:10px 0}.public-hero p{max-width:650px;font-size:18px}.eyebrow{letter-spacing:3px;font-weight:800;color:#ffe38a}.feature-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:22px 0}.feature{border-radius:17px;padding:25px;color:white}.f1{background:linear-gradient(120deg,#863ac5,#d95d9e)}.f2{background:linear-gradient(120deg,#148c9c,#17b28b)}.f3{background:linear-gradient(120deg,#d58122,#e7b53d)}.feature h2{margin:0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.media-card img,.media-card video{width:100%;max-height:240px;object-fit:cover;border-radius:10px}.media-card audio{width:100%}textarea{width:100%;padding:12px;border:1px solid #ccd7e2;border-radius:9px}.report-news{border-bottom:1px solid #ddd;padding:10px 0;white-space:pre-wrap}.signoff{margin-top:50px}.print-sheet{max-width:1000px;margin:auto}@media print{.top,.nav,footer,.print-tools{display:none!important}main{max-width:none;margin:0;padding:0}.print-sheet{box-shadow:none;border:0}body{background:white}}

.report-preview{border:2px dashed #9ab5d8;border-radius:14px;padding:18px;background:#fff;color:#172e50;overflow:auto}.report-preview table{width:100%;font-size:13px}.report-preview th{background:#e6effc}.notice{margin:14px 0;padding:12px;border-left:5px solid #e9ad28;background:#fff5d9;color:#27354a}

/* Ten selectable, site-wide palettes. */
body[data-theme="jubilee"]{--theme1:#273baf;--theme2:#8d3ed1;--theme3:#ffcf45;--theme4:#f6f5ff}
body[data-theme="royal"]{--theme1:#092e80;--theme2:#1876cd;--theme3:#f5c84b;--theme4:#f0f6ff}
body[data-theme="emerald"]{--theme1:#075c46;--theme2:#13a47e;--theme3:#e9b844;--theme4:#f0faf5}
body[data-theme="sunrise"]{--theme1:#9c2847;--theme2:#f16a4c;--theme3:#ffca55;--theme4:#fff5ed}
body[data-theme="purple"]{--theme1:#4a2288;--theme2:#a357d5;--theme3:#eec55a;--theme4:#faf3ff}
body[data-theme="ocean"]{--theme1:#06446a;--theme2:#1594ae;--theme3:#ffc64e;--theme4:#effbff}
body[data-theme="harvest"]{--theme1:#6b421c;--theme2:#b88327;--theme3:#ffd768;--theme4:#fff9e9}
body[data-theme="rose"]{--theme1:#92275c;--theme2:#d86e9e;--theme3:#ffcc72;--theme4:#fff4f8}
body[data-theme="midnight"]{--theme1:#111c36;--theme2:#394f80;--theme3:#f4b94c;--theme4:#eff1f8}
body[data-theme="zambia"]{--theme1:#17693e;--theme2:#d86a23;--theme3:#e6c148;--theme4:#f4faf0}
body[data-theme]{background:var(--theme4)}body[data-theme] .top{background:linear-gradient(110deg,var(--theme1),var(--theme2))}body[data-theme] .nav{background:var(--theme1)}body[data-theme] .nav a:hover{background:var(--theme2)}body[data-theme] button:not(.outline),body[data-theme] .btn{background:var(--theme2)}body[data-theme] .public-hero{background:linear-gradient(120deg,var(--theme1),var(--theme2))}body[data-theme] .brand-mark{color:var(--theme3)}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:16px}.theme-tile{padding:18px;border:1px solid #d5dce5;border-radius:14px;background:white}.theme-preview{height:75px;border-radius:10px;margin-bottom:12px;background:linear-gradient(110deg,var(--theme1),var(--theme2));border-bottom:12px solid var(--theme3)}

/* Dashboard and resource library */
.dashboard-hero{background:linear-gradient(120deg,var(--theme1,#273baf),var(--theme2,#8d3ed1));padding:34px 42px}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:15px;margin:24px 0}.kpi-card{color:#fff;border-radius:16px;padding:20px;min-height:136px;box-shadow:0 10px 25px #152b4d19;display:flex;flex-direction:column;gap:8px}.kpi-card span{font-weight:650}.kpi-card strong{font-size:32px}.kpi-card small{opacity:.87}.kpi-card.blue{background:linear-gradient(125deg,#1459bd,#438bdc)}.kpi-card.purple{background:linear-gradient(125deg,#5e37b5,#9b68d5)}.kpi-card.green{background:linear-gradient(125deg,#078b66,#30b68b)}.kpi-card.orange{background:linear-gradient(125deg,#c77617,#edac35)}.kpi-card.teal{background:linear-gradient(125deg,#117f9e,#29b9bb)}.kpi-card.indigo{background:linear-gradient(125deg,#2b439c,#697bd6)}.kpi-card.rose{background:linear-gradient(125deg,#a93267,#e57699)}.kpi-card.amber{background:linear-gradient(125deg,#b27b18,#d6a53c)}
.dashboard-panels{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}.dashboard-panels .panel{min-width:0}.dashboard-panels h2 small{font-size:13px;color:#738199;font-weight:400}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.action-grid a{padding:13px;border-radius:10px;background:#f1f3fc;color:#263c88;text-decoration:none;font-weight:600}.status-pill{padding:5px 9px;background:#e7ecfa;color:#30417b;border-radius:15px}.download-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px}.resource-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.resource-card .qr-image{width:175px;height:175px;object-fit:contain;align-self:center}.resource-icon{font-size:30px}.resource-card .btn{align-self:stretch;text-align:center}.resource-card .muted{align-self:center;font-size:13px}
@media(max-width:850px){.dashboard-panels{grid-template-columns:1fr}}@media(max-width:520px){.action-grid{grid-template-columns:1fr}.dashboard-hero{padding:24px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{padding:13px}.kpi-card strong{font-size:24px}}

/* LUSE modern responsive header: appended to retain all existing page and theme styles. */
.church-header{position:relative;z-index:50;background:linear-gradient(110deg,var(--theme1,#273baf),var(--theme2,#8d3ed1));color:#fff;box-shadow:0 8px 24px #172a4c25}
.church-header-inner{max-width:1250px;margin:auto;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.church-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-size:23px;font-weight:850;letter-spacing:.3px}
.church-brand-symbol{font-size:33px;color:var(--theme3,#ffcf45)}
.church-brand-text small{display:block;font-size:10px;letter-spacing:2.1px;color:#ffffffcf}
.church-header-right{display:flex;align-items:center;gap:16px}
.church-user{font-size:13px;color:#f0f5ff;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.church-header-link{color:white;text-decoration:none;font-weight:650}
.church-header-link:hover{text-decoration:underline}
.church-nav{background:#ffffffee;border-bottom:1px solid #dce5f1}
.church-nav-inner{max-width:1250px;margin:auto;padding:0 12px;display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.church-nav-link,.church-nav-group>summary,.church-signout-link{display:flex;align-items:center;gap:6px;padding:15px 14px;color:#233b60;font-size:14px;font-weight:650;text-decoration:none;white-space:nowrap;background:transparent;border:0;border-radius:0;cursor:pointer;font-family:inherit}
.church-nav-link:hover,.church-nav-group>summary:hover,.church-signout-link:hover{background:#f0f3fd;color:var(--theme1,#273baf)}
.church-nav-group{position:relative}
.church-nav-group>summary{list-style:none;user-select:none}
.church-nav-group>summary::-webkit-details-marker{display:none}
.church-nav-group[open]>summary{background:#f0f3fd;color:var(--theme1,#273baf)}
.church-nav-group .chevron{font-size:18px;line-height:1}
.church-dropdown{position:absolute;left:0;top:100%;min-width:235px;padding:7px;background:white;border:1px solid #dfe7f0;border-radius:0 0 13px 13px;box-shadow:0 15px 35px #0d234329;display:flex;flex-direction:column;z-index:60}
.church-dropdown a{padding:11px 12px;border-radius:8px;color:#253e62;font-size:14px;text-decoration:none;font-weight:550}
.church-dropdown a:hover{background:#edf2ff;color:var(--theme1,#273baf)}
.church-signout{margin:0 0 0 auto}
.church-signout-link{color:#a73c47}
.church-menu-toggle{display:none;background:transparent!important;border:1px solid #ffffff80!important;border-radius:10px;padding:11px;min-width:44px;min-height:44px;flex-direction:column;justify-content:center;gap:5px}
.church-menu-toggle span{display:block;width:23px;height:2px;background:#fff;border-radius:3px}
.skip-link{position:absolute;top:-80px;left:12px;z-index:100;background:#fff;color:#152a50;padding:12px}
.skip-link:focus{top:12px}
@media(max-width:900px){
 .church-header-inner{padding:11px 16px}
 .church-menu-toggle{display:flex}
 .church-user{max-width:135px}
 .church-nav{display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100dvh - 70px);overflow-y:auto;background:#fff;box-shadow:0 18px 28px #0d23432b}
 .church-nav.is-open{display:block}
 .church-nav-inner{display:flex;flex-direction:column;align-items:stretch;padding:10px 14px 18px;gap:2px}
 .church-nav-link,.church-nav-group>summary,.church-signout-link{width:100%;padding:14px 13px;border-radius:9px;min-height:46px}
 .church-nav-group{width:100%}
 .church-dropdown{position:static;min-width:0;box-shadow:none;border:0;border-left:3px solid var(--theme2,#8d3ed1);border-radius:0;margin:0 0 5px 12px;padding:3px 0 3px 9px}
 .church-dropdown a{padding:12px 13px}
 .church-signout{margin:7px 0 0;border-top:1px solid #e8edf5;padding-top:7px}
}
@media(max-width:420px){.church-brand{font-size:19px}.church-brand-symbol{font-size:27px}.church-user{font-size:11px;max-width:105px}}
@media print{.church-header,.church-nav{display:none!important}}

/* Accordion fix: hide dropdown contents whenever their details element is closed.
   This overrides the generic .church-dropdown { display:flex } rule. */
.church-nav-group:not([open]) > .church-dropdown {
    display: none !important;
}
/* Salvation Army shield in website header */
.church-brand-logo {
    width: 45px;
    height: 45px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

/* Prevent the existing star-symbol styling
   from affecting the new shield image */
.church-brand-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Smaller shield on mobile devices */
@media (max-width: 576px) {
    .church-brand-logo {
        width: 34px;
        height: 34px;
    }
}
