/* ==========================================================================
   PRAYER ROOM — ported from the original build (already dark glass there),
   re-tuned to the RISV2 marble + glass system. The church-doors entrance
   animation, member gate, hymn player, and card grid keep their original
   class hooks; only the skin and the chrome integration changed.
   The page now uses the standard sticky .site-header and .site-footer, so the
   experience is a viewport-height stage in the normal document flow instead
   of a fixed full-screen takeover.
   ========================================================================== */

.prayer-body{background:transparent}

.prayer-experience{
  position:relative;
  height:calc(100vh - 76px);
  height:calc(100dvh - 76px);
  min-height:650px;
  overflow:hidden;
  background:#080b09;
}

/* ---- member gate ---- */
.member-gate{
  position:absolute;
  inset:0;
  z-index:60;
  background:linear-gradient(rgba(5,10,8,.78),rgba(5,10,8,.92)),url("../assets/prayer/old-church-prayer-room.png") center/cover;
  color:#fff;
  display:grid;
  place-items:center;
  padding:25px;
}
.member-gate[hidden]{display:none}
.member-gate-card{
  width:min(760px,96%);
  padding:clamp(28px,5vw,58px);
  background:var(--glass-strong);
  border:1px solid rgba(201,164,92,.45);
  border-radius:var(--radius);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 30px 80px rgba(0,0,0,.48);
}
.member-gate-card h1{font:400 clamp(2.6rem,5vw,5rem)/.95 var(--serif);margin:0 0 20px;color:#f4efe2}
.member-gate-card>p{font:1.05rem/1.7 var(--serif);color:rgba(255,255,255,.8)}
.member-gate-card li{margin:9px 0;color:rgba(255,255,255,.76)}

/* ---- the room beyond the doors ---- */
.church-room,.doorway{position:absolute;inset:0}
.church-room{
  background:url("../assets/prayer/old-church-prayer-room.png") center/cover no-repeat;
  color:#fff;
  display:grid;
  place-items:center;
  overflow:auto;
  overscroll-behavior:contain;
}
.church-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,9,7,.92),rgba(8,20,15,.52) 48%,rgba(4,9,7,.78))}
.room-content{width:min(1180px,92%);margin:auto;padding:70px 0;position:relative;z-index:2}
.room-content>header{max-width:760px}
.room-content h1{font:400 clamp(3.4rem,6vw,7rem)/.9 var(--serif);margin:0 0 20px;color:#f4efe2}
.room-content>header>p:last-child{font:1.15rem/1.7 var(--serif);max-width:650px;color:rgba(255,255,255,.82)}
.prayer-actions{display:flex;gap:12px;margin:28px 0 42px}

/* Buttons keep their hooks; the skin follows theme.css .button variants. */
.prayer-gold{
  background:linear-gradient(135deg,#d8b878,var(--gold) 55%,#a8843e);
  color:#141109;
  border:0;
  box-shadow:0 10px 30px rgba(201,164,92,.25);
}
.prayer-gold:hover{color:#141109;box-shadow:0 16px 40px rgba(201,164,92,.4)}
.prayer-glass{
  border:1px solid var(--glass-border);
  color:#fff;
  background:rgba(14,22,18,.6);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.prayer-glass:hover{border-color:var(--gold);color:#fff}

/* ---- prayer cards ---- */
.prayer-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.room-prayer-card{
  position:relative;
  min-height:220px;
  padding:28px;
  border:1px solid rgba(201,164,92,.35);
  border-radius:var(--radius);
  background:rgba(10,18,15,.78);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 24px 55px rgba(0,0,0,.35);
  overflow:hidden;
}
.room-prayer-card::before{
  content:"";
  position:absolute;
  top:0;left:8%;right:8%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-glow),transparent);
  pointer-events:none;
}
.room-prayer-card>span{text-transform:uppercase;letter-spacing:.18em;color:var(--gold-pale);font-size:.67rem;font-weight:900}
.room-prayer-card h2{font:400 1.8rem var(--serif);margin:10px 0;color:#f4efe2}
.room-prayer-card p{color:rgba(255,255,255,.72);line-height:1.6}
.room-prayer-card button{border:0;background:transparent;color:var(--gold-pale);font-weight:850;padding:0}
.room-prayer-card small{display:block;margin-top:13px;color:rgba(255,255,255,.54)}
.post-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}
.room-prayer-card .post-actions button{color:var(--gold-pale);cursor:pointer}

/* ---- hymn player ---- */
.hymn-player{
  width:min(620px,100%);
  margin:22px 0 6px;
  padding:12px 15px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  border:1px solid rgba(201,164,92,.35);
  border-radius:var(--radius-sm);
  background:rgba(10,18,15,.65);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.hymn-note{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold-pale);font-size:1.2rem}
.hymn-player small,.hymn-player strong{display:block}
.hymn-player small{text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.55);font-size:.57rem}
.hymn-player strong{margin-top:3px;color:#fff;font:400 1rem var(--serif)}
.hymn-controls{display:flex;gap:6px}
.hymn-player button{border:1px solid rgba(201,164,92,.5);border-radius:999px;background:transparent;color:var(--gold-pale);padding:7px 10px;font-size:.7rem;font-weight:800;white-space:nowrap;cursor:pointer}
.hymn-player button:hover{background:rgba(201,164,92,.14)}
@media(max-width:560px){.hymn-player{grid-template-columns:auto 1fr}.hymn-controls{grid-column:1/-1;justify-content:flex-end}}

/* ---- the church doors ---- */
.doorway{perspective:1900px;z-index:10;background:#050806;transition:visibility 0s 3s}
.door-shadow{position:absolute;inset:0;background:url("../assets/prayer/old-church-prayer-room.png") center/cover no-repeat;filter:brightness(.32)}
.door-panel{
  position:absolute;top:0;bottom:0;width:50.1%;
  background-image:url("../assets/prayer/antique-church-double-doors-engraved.png");
  background-repeat:no-repeat;
  background-size:200% 100%;
  box-shadow:inset 0 0 60px rgba(0,0,0,.58),0 0 45px rgba(0,0,0,.6);
  transition:transform 3.1s cubic-bezier(.64,.02,.24,1),filter 2.2s;
  backface-visibility:hidden;
  will-change:transform;
}
.door-left{left:0;background-position:left center;transform-origin:left center}
.door-right{right:0;background-position:right center;transform-origin:right center}
.door-welcome{
  position:absolute;z-index:4;top:2.5%;left:50%;transform:translateX(-50%);
  width:min(430px,72%);
  padding:10px 16px;
  text-align:center;color:white;
  background:rgba(11,19,15,.88);
  border:1px solid rgba(201,164,92,.6);
  border-radius:var(--radius-sm);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 15px 40px rgba(0,0,0,.35);
  transition:.8s opacity;
}
.door-welcome .eyebrow{font-size:.52rem;letter-spacing:.2em;margin-bottom:5px}
.door-welcome h1{font-size:clamp(1.35rem,2.4vw,2.15rem);line-height:1;margin:0 0 5px;color:#f4efe2;font-family:var(--serif);font-weight:400}
.door-welcome p:last-child{font:.76rem/1.25 var(--serif);margin:0}
.door-agreement{
  position:absolute;z-index:5;left:50%;bottom:1.5%;transform:translateX(-50%);
  width:min(720px,90%);
  padding:8px 11px;color:white;
  background:rgba(9,16,13,.88);
  border:1px solid rgba(201,164,92,.6);
  border-radius:var(--radius-sm);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 15px 40px rgba(0,0,0,.5);
  display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;
  transition:.7s opacity;
}
.door-agreement label{display:flex;gap:8px;align-items:center;font:700 .76rem/1.2 var(--serif)}
.door-agreement input{width:17px;height:17px;flex:0 0 auto;accent-color:var(--gold)}
.door-agreement small{grid-column:1/-1;color:rgba(255,255,255,.63);font-size:.57rem;text-align:center;line-height:1.15}
.enter-prayer-room{
  border:1px solid var(--gold);border-radius:999px;
  padding:8px 13px;
  background:linear-gradient(135deg,#d8b878,var(--gold) 55%,#a8843e);
  color:#141109;
  font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.64rem;
  cursor:pointer;
}
.enter-prayer-room:disabled{opacity:.42;cursor:not-allowed}
.doors-open .door-left{transform:rotateY(-108deg);filter:brightness(.55)}
.doors-open .door-right{transform:rotateY(108deg);filter:brightness(.55)}
.doors-open .door-welcome,.doors-open .door-agreement{opacity:0;pointer-events:none}
.doors-open .doorway{visibility:hidden}

.leave-room{
  position:fixed;z-index:80;right:18px;bottom:18px;
  border:1px solid var(--glass-border);border-radius:999px;
  padding:11px 16px;
  background:rgba(10,18,15,.8);color:#fff;font-weight:800;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  cursor:pointer;
}
.leave-room:hover{border-color:var(--gold)}

/* ---- prayer dialog ---- */
.prayer-dialog{
  width:min(620px,92vw);
  border:1px solid rgba(201,164,92,.5);
  border-radius:var(--radius);
  padding:0;
  background:var(--glass-strong);
  color:var(--ink);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 35px 90px rgba(0,0,0,.55);
}
.prayer-dialog::backdrop{background:rgba(4,7,6,.78);backdrop-filter:blur(6px)}
.prayer-dialog form{padding:34px;display:grid;gap:16px;position:relative}
.prayer-dialog h2{font:400 2.3rem/1 var(--serif);margin:0 0 8px;color:#f4efe2}
.prayer-dialog label{display:grid;gap:7px;font-weight:800;font-size:.84rem;color:var(--gold-pale)}
.prayer-dialog input,.prayer-dialog textarea{
  width:100%;
  border:1px solid var(--glass-border);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  padding:11px;
  color:var(--ink);
  font:inherit;
}
.prayer-dialog input:focus,.prayer-dialog textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
.prayer-dialog textarea{resize:vertical}
.prayer-dialog .privacy-check{display:flex;grid-template-columns:auto 1fr;align-items:center;font-weight:600}
.prayer-dialog .privacy-check input{width:18px;height:18px;accent-color:var(--gold)}
.dialog-close{position:absolute;right:13px;top:10px;border:0;background:none;color:var(--muted);font-size:1.8rem;cursor:pointer}
.dialog-close:hover{color:#fff}
.form-error{color:#e08a7a;font-weight:800;margin:0;min-height:1.2em}

/* ---- responsive ---- */
@media(max-width:700px){
  .prayer-experience{min-height:720px}
  .door-welcome{top:2%;width:78%;padding:8px 11px}
  .door-welcome h1{font-size:1.38rem}
  .door-welcome p:last-child{font-size:.68rem}
  .door-agreement{bottom:1%;width:94%;padding:8px;gap:5px;grid-template-columns:1fr auto}
  .door-agreement label{font-size:.68rem}
  .enter-prayer-room{width:auto;padding:8px 10px}
  .door-agreement small{grid-column:1/-1;font-size:.52rem}
  .room-content{padding-top:45px}
  .room-content h1{font-size:3.3rem}
  .prayer-actions{display:grid}
  .prayer-card-grid{grid-template-columns:1fr}
  .door-panel{background-size:auto 100%}
  .door-left{background-position:38% center}
  .door-right{background-position:62% center}
}
@media(prefers-reduced-motion:reduce){
  .door-panel{transition-duration:.35s}
  .doorway{transition-delay:.35s}
}
