:root{
  --cream:#F7F1E6;--surface:#FFFCF7;--sage:#7F8B65;--forest:#4F6247;
  --ink:#17364A;--kraft:#B89468;--pray:#A6AD7D;--talk:#A9CAD2;
  --share:#D8A83E;--rose:#C98D83;--danger:#A94442;--warning:#D8A83E;
}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:ui-rounded,"Avenir Next",Avenir,system-ui,sans-serif;line-height:1.55}
.shell{width:min(100%,760px);margin:auto;padding:18px}
.hero{text-align:center;padding:12px 0}
.hero img{width:min(88%,420px);max-height:280px;object-fit:contain}
.brand{font-size:clamp(2rem,10vw,3.5rem);font-weight:900;letter-spacing:.02em;margin:.2rem 0}
.tag{font-style:italic;color:var(--forest)}
h1,h2,h3{line-height:1.15}h1{font-size:clamp(1.7rem,7vw,2.5rem)}
a{color:var(--forest)}
.card{background:var(--surface);border-radius:24px;padding:22px;margin:16px 0;box-shadow:0 8px 25px #17364a12}
.actions{display:grid;gap:12px}
.btn,button{display:block;width:100%;border:0;border-radius:16px;padding:15px 18px;font:inherit;font-weight:800;text-decoration:none;text-align:center;color:var(--ink);cursor:pointer}
.pray{background:var(--pray)}.talk{background:var(--talk)}.neutral{background:#eadfce}.primary{background:var(--sage);color:white}
.danger{background:#f3d5d2;color:#6b2321}.warning-btn{background:#f5e3b8;color:#67490b}
.field{margin:14px 0}.field label{display:block;font-weight:800;margin-bottom:6px}
.field input,.field textarea,.field select{width:100%;padding:13px;border:1px solid #17364a30;border-radius:13px;background:white;font:inherit}
.field textarea{min-height:150px;resize:vertical}
.checkrow{display:flex;gap:10px;align-items:flex-start;margin:12px 0}.checkrow input{margin-top:5px}
.muted{opacity:.75;font-size:.92rem}.small{font-size:.85rem}
.notice{padding:14px;border-radius:14px;background:#eef2e7;margin:12px 0}.warning{background:#fff0d4}.danger-note{background:#f7dddd}
.chat{display:flex;flex-direction:column;gap:10px}
.bubble{max-width:88%;padding:12px 14px;border-radius:18px;background:#eef5f7}
.bubble.staffmsg{align-self:flex-end;background:#e6ecdf}
.meta{font-size:.78rem;opacity:.65;margin-top:6px}
.code{font-size:1.25rem;font-weight:900;letter-spacing:.06em;background:#efe6d8;padding:14px;border-radius:14px;text-align:center;word-break:break-all}
.topnav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}
.topnav a{padding:9px 11px;background:white;border-radius:12px;text-decoration:none;color:var(--ink)}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat{background:white;border-radius:18px;padding:16px}.stat b{display:block;font-size:1.8rem}
.list{display:grid;gap:10px}.item{background:white;border-radius:16px;padding:14px;text-decoration:none;color:var(--ink);border-left:6px solid var(--talk)}
.item.prayer{border-left-color:var(--pray)}.item.safety{border-left-color:var(--danger)}
.pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#eee;font-size:.78rem;margin-right:4px}.pill.green{background:#e7efdf}.pill.orange{background:#f8e8c2}.pill.red{background:#f4d7d5}.pill.blue{background:#dcebef}
.honeypot{position:absolute!important;left:-9999px!important}
.page-brand{display:block;margin:0 auto 24px;padding:4px 8px 12px;text-align:center;text-decoration:none;color:var(--ink);border-radius:20px}
.page-brand:hover{background:#ffffff55}.page-brand:focus-visible{outline:3px solid var(--sage);outline-offset:4px}
.page-brand-title{display:block;font-size:clamp(2.15rem,10vw,3.5rem);font-weight:900;line-height:1;letter-spacing:.02em;color:var(--ink)}
.page-brand-tag{display:block;margin-top:20px;font-size:clamp(.95rem,4vw,1.15rem);font-style:italic;font-weight:400;color:var(--forest)}
.staff .shell{width:min(100%,1100px)}
.section-title{margin-top:28px}.inline-actions{display:flex;flex-wrap:wrap;gap:8px}.inline-actions .btn,.inline-actions button{width:auto}
.role-grid{display:grid;gap:10px}.role-card{background:white;border-radius:16px;padding:14px;border:1px solid #17364a18}
.statusbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
hr{border:0;border-top:1px solid #17364a18;margin:20px 0}
@media(min-width:760px){
  .shell{padding:34px}.actions.three{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(4,1fr)}
  .two{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.8fr);gap:18px}
  .role-grid{grid-template-columns:repeat(2,1fr)}
}
