.pl-main{max-width:1100px;margin:0 auto;padding:calc(var(--hdr-h,72px) + 28px) 1rem 4rem}
.pl-hero{text-align:center;padding:1rem 0 1.5rem}
.pl-hero h1{font-size:clamp(2.2rem,7vw,4rem);margin:.3rem 0 .6rem}.pl-hero h1 span{color:var(--gold);text-shadow:0 0 40px rgba(255,214,107,.45)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pl-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.6rem;position:sticky;top:calc(var(--hdr-h,72px) + 6px);z-index:5;background:rgba(14,20,40,.92);backdrop-filter:blur(6px);padding:.6rem;border-radius:16px;border:1px solid rgba(227,168,58,.25)}
.pl-filters input,.pl-filters select{width:100%;font:inherit;color:var(--cream);background:var(--navy);border:1px solid rgba(244,233,211,.18);border-radius:12px;padding:.7rem .9rem}
.pl-filters input:focus,.pl-filters select:focus{outline:2px solid var(--glow);outline-offset:1px}
.pl-count{color:#d9cfbb;font-size:.9rem;margin:.9rem .2rem}
.pl-gatebar{background:rgba(31,95,107,.45);border:1px solid rgba(255,214,107,.3);border-radius:14px;padding:.7rem 1rem;margin:0 0 1rem;font-size:.95rem}
.pl-gatebar span{color:var(--glow)}
.pl-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.pl-card{background:linear-gradient(180deg,rgba(30,42,74,.85),rgba(14,20,40,.9));border:1px solid rgba(227,168,58,.22);border-radius:18px;transition:transform .15s,border-color .15s}
.pl-card:hover{transform:translateY(-2px);border-color:rgba(255,214,107,.6)}
.pl-grid .pl-card>a{display:block;padding:1.1rem 1.2rem;color:var(--cream);text-decoration:none;height:100%}
.pl-card h2{font-size:1.35rem;margin:.35rem 0 .4rem}
.pl-card .eyebrow{font-size:.7rem}
.pl-teaser{font-family:Lora,serif;font-style:italic;color:#d9cfbb;margin:0 0 .6rem;font-size:.98rem}
.pl-ref{font-size:.8rem;color:var(--gold)}
.pl-card.is-locked{opacity:.78}.pl-open{background:var(--teal);color:var(--cream);border-radius:99px;padding:0 .5rem;margin-left:.3rem;letter-spacing:.05em}
.pl-empty{grid-column:1/-1;text-align:center;color:#d9cfbb;padding:2rem}
.pl-single{max-width:720px}
.pl-back a{color:var(--gold);text-decoration:none;font-size:.95rem}
.pl-card--big{padding:1.6rem 1.6rem 1.2rem}
.pl-card--big h1{font-size:clamp(2rem,6vw,3rem);margin:.4rem 0 1rem}
.pl-chip{display:inline-block;color:var(--gold);text-decoration:none;margin-right:.6rem}
.pl-body p{font-family:Lora,serif;font-style:italic;font-size:1.2rem;margin:.2rem 0;color:var(--cream)}
.pl-verse{margin:1.4rem 0;padding:1rem 1.2rem;border-left:3px solid var(--gold);background:rgba(31,95,107,.25);border-radius:0 12px 12px 0}
.pl-verse cite{display:block;margin-top:.4rem;color:var(--gold);font-style:normal;font-size:.9rem}
.pl-video{width:100%;max-height:70vh;border-radius:14px;background:#000;margin:.4rem 0 1rem}
.pl-actions{display:flex;flex-wrap:wrap;gap:.5rem;position:relative;margin-top:1rem}
.pl-btn{font:600 .95rem "DM Sans",sans-serif;color:var(--cream);background:var(--navy);border:1px solid rgba(244,233,211,.22);border-radius:99px;padding:.6rem 1.05rem;cursor:pointer}
.pl-btn:hover,.pl-btn:focus-visible{border-color:var(--glow)}
.pl-btn--gold{background:var(--gold);color:var(--midnight);border-color:var(--gold)}
.pl-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:10;min-width:220px;background:var(--navy);border:1px solid rgba(255,214,107,.4);border-radius:14px;padding:.4rem;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.pl-menu a{display:block;padding:.55rem .8rem;color:var(--cream);text-decoration:none;border-radius:10px}.pl-menu a:hover{background:rgba(227,168,58,.15)}
.pl-lock{text-align:center;padding:1rem 0}.pl-lock h2{font-size:1.6rem}.pl-lock p{color:#d9cfbb}
.pl-ghost{display:inline-block;margin-left:.6rem;color:var(--gold)}
.pl-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);opacity:0;background:var(--gold);color:var(--midnight);font-weight:700;padding:.6rem 1.1rem;border-radius:99px;transition:.2s;z-index:50}
.pl-toast.on{opacity:1;transform:translateX(-50%)}
@media (max-width:720px){.pl-filters{grid-template-columns:1fr 1fr}.pl-search{grid-column:1/-1}.pl-card--big{padding:1.2rem}}
.pl-badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--glow);border:1px solid rgba(255,214,107,.45);border-radius:99px;padding:.05rem .55rem;margin:.35rem 0 0}
.pl-badge--on{color:var(--midnight);background:var(--glow)}
.pl-acctbar,.pl-acct{font-size:.92rem;color:#d9cfbb}.pl-acct{float:right}
.pl-link{background:none;border:0;color:var(--glow);font:inherit;text-decoration:underline;cursor:pointer;padding:0}
.pl-check{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:#d9cfbb;grid-column:1/-1}.pl-filters .pl-check input{width:1.1rem;height:1.1rem;padding:0;margin:0;flex:none;border-radius:4px;accent-color:var(--glow)}
.pl-teaser--big{font-size:1.15rem}
.pl-signin input[type=email]{width:100%;font:inherit;color:var(--cream);background:var(--navy);border:1px solid rgba(244,233,211,.25);border-radius:12px;padding:.75rem .9rem;margin:.4rem 0}
.pl-ages{display:flex;flex-wrap:wrap;gap:.5rem}.fine{font-size:.85rem;color:#bfb6a3}
.pl-mail{white-space:pre-wrap;background:#F4E9D3;color:#0E1428;border-radius:12px;padding:1rem;font:.9rem/1.5 ui-monospace,monospace}
.pl-mail a{color:#1F5F6B;font-weight:700}
.pl-err{color:#ffb4a0}
.pl-ctas{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;align-items:center;margin:.4rem 0}
.pl-tool .w-label{display:block}.pl-tool select,.pl-tool input:not([type=radio]):not([type=checkbox]),.pl-tool textarea{width:100%;font:inherit;color:var(--cream);background:var(--navy);border:1px solid rgba(244,233,211,.22);border-radius:12px;padding:.7rem .9rem}
.rq-mode{border:0;padding:0;margin:0 0 .4rem;display:flex;flex-wrap:wrap;gap:.5rem}.rq-mode legend{width:100%}
.rq-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:.6rem 0 1rem}
.rq-result{padding:1.2rem;margin-top:1.2rem}.rq-note{font-size:1.05rem;color:var(--glow)}
.wr-step{border-top:1px solid rgba(244,233,211,.12);padding:1rem 0}.wr-step h2,.wr-final h2{font-size:1.4rem;margin:.2rem 0 .3rem}
.wr-sug{background:rgba(31,95,107,.3);border-radius:12px;padding:.6rem .9rem}
.wr-final{border-top:2px solid rgba(227,168,58,.4);padding-top:1rem;margin-top:.6rem}
.pl-howto h2{font-size:1.45rem;margin:1.6rem 0 .4rem;color:var(--glow)}.pl-lede{font-size:1.12rem}
.pl-tiny{columns:2;gap:2rem}.pl-tiny li{font-family:Lora,serif;font-style:italic;margin:.2rem 0}
@media (max-width:720px){.rq-row{grid-template-columns:1fr}.pl-tiny{columns:1}}
.pl-tool .w-label,.pl-tool legend{text-align:left}
.pl-card--big a:not(.tb-cta):not(.pl-chip){color:var(--glow)}

/* kid-facing: hide sign-in, AI tools, founding sign-up */
.pl-kidmode [data-acct],.pl-kidmode a[href^="/prayers/signin"],.pl-kidmode a[href^="/prayers/request"],.pl-kidmode .pl-ai,.pl-kidmode [data-ai],.pl-kidmode a[href*="founding"],.pl-kidmode .tb-header a.tb-cta,.pl-kidmode .pl-lock{display:none!important}

/* help_note: support resources, visually separate from the prayer text */
.pl-help{margin:1.25rem 0 .5rem;padding:.75rem 1rem;border:1px solid rgba(255,214,107,.55);border-left:4px solid #E3A83A;border-radius:10px;background:rgba(31,95,107,.28);color:#F4E9D3;font-family:"DM Sans",system-ui,sans-serif;font-size:.9rem;line-height:1.45;font-style:normal}
.pl-help p{margin:0}
.pl-help .pl-help-h{font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:#FFD66B;margin-bottom:.3rem}
