/* Carta pública genérica; frente e verso da proposta vêm da API autenticada. */
.colecao-secreta .colecao-arte img { filter:none; opacity:1; }
.especial-verso,.colecao-card .especial-verso { padding:0; border:0; background:transparent; border-radius:0; }
.especial-arte-verso { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; }
.especial-beneficio { position:absolute; top:68%; bottom:13%; left:17%; right:17%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; color:#fff6ce; font-size:12px; line-height:1.25; }
.especial-beneficio .especial-percentual { font-size:40px; color:#f7dc75; }
.especial-beneficio .especial-cupom { margin:2px 0 0; font-size:12px; }
.especial-beneficio .especial-condicao { font-size:10px; line-height:1.3; color:#eee2b9; }
.especial-carta { transform:perspective(1100px) rotateX(var(--especial-rx,0deg)) rotateY(var(--especial-ry,0deg)); transition:transform .18s ease-out; }
.especial-frente::after,.especial-verso::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(110deg,transparent 40%,rgb(255 255 255 / .75) 50%,transparent 60%); background-size:300% 100%; background-position:100% center; mask-image:var(--especial-mascara); mask-size:contain; mask-position:center; mask-repeat:no-repeat; opacity:0; }
.especial-carta:is(:hover,:focus-visible) :is(.especial-frente,.especial-verso)::after { animation:secreto-reflexo .95s ease-out both; }
.especial-carta.virado:is(:hover,:focus-visible) .especial-verso::after { animation-name:secreto-reflexo-verso; }
@keyframes secreto-reflexo { 0% { background-position:100% center; opacity:0; } 25% { opacity:.85; } 100% { background-position:0% center; opacity:0; } }
@keyframes secreto-reflexo-verso { 0% { background-position:100% center; opacity:0; } 25% { opacity:.85; } 100% { background-position:0% center; opacity:0; } }
@media(prefers-reduced-motion:reduce) {
 .especial-carta { transform:none !important; transition:none; }
 .especial-carta:is(:hover,:focus-visible) :is(.especial-frente,.especial-verso)::after { animation:none !important; opacity:0; }
}
