/* Lock card overlay + locked-element decoration — Phase 3 visible-but-locked. */
.lock-overlay{
  position:fixed; inset:0;
  background:rgba(0,0,0,0.65); backdrop-filter:blur(6px);
  z-index:2000;
  display:grid; place-items:center; padding:20px;
}
.lock-card-modal{
  position:relative;
  max-width:480px; width:100%;
  padding:32px 28px;
  background:#0f0d18;
  border:1px solid rgba(168,85,247,0.40);
  border-radius:16px;
  text-align:center;
  color:#f5f1e8;
  font-family:inherit;
}
.lock-icn-box{
  width:56px; height:56px; border-radius:14px;
  display:grid; place-items:center;
  font-size:22px; margin:0 auto 18px;
  background:rgba(168,85,247,0.15);
  border:1px solid rgba(168,85,247,0.35);
  color:#a78bfa;
}
.lock-card-modal h3{
  font-family:'Fraunces', serif; font-size:22px; color:#fff; margin:0;
}
.lock-card-modal p{
  margin:12px 0 20px; font-size:14px;
  color:rgba(245,241,232,0.80); line-height:1.5;
}
.lock-ctas{ display:flex; flex-direction:column; gap:10px; }
.lock-cta-tier{
  padding:13px; background:#a78bfa; color:#fff;
  border:none; border-radius:9px;
  font-weight:600; font-size:13.5px; cursor:pointer;
}
.lock-cta-tier:hover{ background:#9d7df0; }
.lock-cta-pack{
  padding:11px; background:rgba(91,212,168,0.10); color:#5BD4A8;
  border:1px solid rgba(91,212,168,0.30); border-radius:9px;
  font-weight:600; font-size:12.5px; cursor:pointer;
}
.lock-cta-pack:hover{ background:rgba(91,212,168,0.18); }
.lock-close{
  position:absolute; top:12px; right:14px;
  background:transparent; border:none; color:rgba(245,241,232,0.50);
  font-size:24px; cursor:pointer; line-height:1;
}
.lock-close:hover{ color:rgba(245,241,232,0.85); }

/* Locked-element decoration applied by tier-gate.js */
.locked{ position:relative; }
.locked > .lock-badge{
  position:absolute; top:4px; right:4px;
  font-size:11px; padding:2px 6px;
  background:rgba(168,85,247,0.15); border:1px solid rgba(168,85,247,0.40);
  border-radius:5px; color:#a78bfa; pointer-events:none;
  line-height:1.2;
}
