.vv-capela{--vv-bg:#140e0a;--vv-ouro:#d9b26a;--vv-txt:#f3e8d6;font-family:Georgia,"Times New Roman",serif;background:radial-gradient(ellipse at top,#3a2414 0%,var(--vv-bg) 65%);color:var(--vv-txt);padding:40px 20px;border-radius:14px;max-width:1100px;margin:0 auto;box-sizing:border-box}
.vv-capela *{box-sizing:border-box}
.vv-topo{text-align:center;margin-bottom:28px}
.vv-cruz{font-size:38px;color:var(--vv-ouro);text-shadow:0 0 18px rgba(217,178,106,.6)}
.vv-titulo{font-size:2rem;margin:.3em 0;color:var(--vv-ouro);letter-spacing:.04em;font-weight:normal}
.vv-sub{opacity:.85;font-style:italic;margin:0}
.vv-contador{margin-top:10px;font-size:.9rem;letter-spacing:.15em;text-transform:uppercase;color:var(--vv-ouro)}
.vv-form{background:rgba(255,240,210,.06);border:1px solid rgba(217,178,106,.3);border-radius:12px;padding:20px;max-width:680px;margin:0 auto 36px}
.vv-linha{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.vv-linha{grid-template-columns:1fr}}
.vv-form label{display:block;font-size:.85rem;color:var(--vv-ouro);margin-bottom:12px}
.vv-form input:not([type=radio]),.vv-form textarea{display:block;width:100%;margin-top:4px;padding:10px;border-radius:8px;border:1px solid rgba(217,178,106,.35);background:rgba(0,0,0,.35);color:var(--vv-txt);font:inherit;font-size:1rem}
.vv-hp{position:absolute!important;left:-9999px!important}
.vv-cores{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.vv-cor{display:flex!important;align-items:center;gap:6px;cursor:pointer;color:var(--vv-txt)!important;margin:0!important}
.vv-cor input{position:absolute;opacity:0}
.vv-sw{width:18px;height:18px;border-radius:50%;border:2px solid transparent}
.vv-cor input:checked+.vv-sw{border-color:#fff;box-shadow:0 0 8px var(--vv-ouro)}
.vv-branca{background:#f5f0e6}.vv-dourada{background:#e0b64f}.vv-vermelha{background:#b3262b}.vv-azul{background:#3b6fb6}.vv-roxa{background:#6d3f8f}.vv-verde{background:#3e8a52}
.vv-btn{width:100%;padding:13px;border:0;border-radius:30px;background:linear-gradient(135deg,#e7c27a,#b8862f);color:#2a1a0a;font:inherit;font-size:1.05rem;cursor:pointer;box-shadow:0 4px 18px rgba(217,178,106,.35)}
.vv-btn:disabled{opacity:.6}
.vv-aviso{text-align:center;min-height:1.2em;margin:10px 0 0;font-size:.9rem}
.vv-altar{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:26px 12px;padding:30px 10px 10px;border-top:1px solid rgba(217,178,106,.25);background:linear-gradient(to bottom,transparent 0,transparent 160px,rgba(217,178,106,.08) 161px,transparent 175px);background-size:100% 175px}
.vv-vela{display:flex;flex-direction:column;align-items:center;cursor:pointer;background:none;border:0;color:inherit;font:inherit;padding:0}
.vv-vela:focus-visible{outline:2px solid var(--vv-ouro);outline-offset:4px;border-radius:6px}
.vv-chama{width:14px;height:26px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;background:radial-gradient(ellipse at 50% 80%,#fff 0,#ffe08a 30%,#ff9a2a 65%,rgba(255,80,0,0) 100%);box-shadow:0 0 22px 8px rgba(255,170,60,.45),0 0 60px 20px rgba(255,140,40,.15);animation:vv-tremula 1.6s infinite ease-in-out;transform-origin:50% 100%}
.vv-pavio{width:2px;height:6px;background:#222}
.vv-corpo{width:30px;height:70px;border-radius:4px 4px 2px 2px;background:var(--vv-c,#f5f0e6);box-shadow:inset -6px 0 10px rgba(0,0,0,.25),inset 4px 0 8px rgba(255,255,255,.3)}
.vv-base{width:50px;height:8px;border-radius:50%;background:linear-gradient(#c9a35a,#7a5a22)}
.vv-nome{margin-top:8px;font-size:.78rem;text-align:center;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.9}
.vv-nova .vv-chama{animation:vv-acende 1.2s ease-out,vv-tremula 1.6s 1.2s infinite ease-in-out}
@keyframes vv-tremula{0%,100%{transform:scale(1) rotate(-1deg)}25%{transform:scale(1.05,.95) rotate(2deg)}50%{transform:scale(.95,1.08) rotate(-2deg)}75%{transform:scale(1.03) rotate(1deg)}}
@keyframes vv-acende{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
.vv-vazio{grid-column:1/-1;text-align:center;opacity:.7;font-style:italic}
.vv-modal{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:99999;padding:20px}
.vv-modal[hidden]{display:none}
.vv-modal-box{position:relative;background:#1f150d;border:1px solid var(--vv-ouro);border-radius:12px;padding:28px;max-width:440px;width:100%;color:var(--vv-txt);font-family:Georgia,serif;text-align:center}
.vv-modal-box h3{color:var(--vv-ouro);margin:.2em 0;font-weight:normal}
.vv-modal-box blockquote{font-style:italic;margin:16px 0;line-height:1.6;white-space:pre-line}
.vv-fechar{position:absolute;top:8px;right:12px;background:none;border:0;color:var(--vv-ouro);font-size:28px;cursor:pointer}
