
.exit-overlay {
position: fixed;
inset: 0;
z-index: 300;
display: none;
align-items: center;
justify-content: center;
padding: 16px;
background: rgba(17, 24, 39, 0.66);
-webkit-backdrop-filter: blur(4px);
backdrop-filter: blur(4px);
}

.exit-overlay.is-open {
display: flex;
animation: exit-fade 0.22s ease-out;
}

@keyframes exit-fade {
from { opacity: 0; }
to { opacity: 1; }
}

.exit-card {
position: relative;
width: 100%;
max-width: 430px;
max-height: calc(100vh - 24px);
max-height: calc(100dvh - 24px);
overflow-y: auto;
scrollbar-width: none;
-ms-overflow-style: none;
-webkit-overflow-scrolling: touch;
background: #ffffff;
border-radius: 20px;
padding: 18px 16px 16px;
box-shadow: 0 20px 50px rgba(17, 24, 39, 0.38), 0 4px 14px rgba(17, 24, 39, 0.18);
font-family: 'Nunito', sans-serif;
color: #2c3a44;
}

.exit-card::-webkit-scrollbar {
display: none;
}

.exit-overlay.is-open .exit-card {
animation: exit-pop 0.28s cubic-bezier(0.2, 0.9, 0.3, 1.15);
}

@keyframes exit-pop {
from {
opacity: 0;
transform: translateY(22px) scale(0.96);
}
to {
opacity: 1;
transform: none;
}
}

.exit-close {
position: absolute;
top: 9px;
right: 9px;
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
border: 0;
border-radius: 50%;
background: #f2f2f2;
color: #666666;
cursor: pointer;
transition: background 0.15s ease, color 0.15s ease;
}

.exit-close:hover {
background: #e5e5e5;
color: #333333;
}

.exit-tag {
margin: 0 0 6px;
text-align: center;
font-size: 10px;
font-weight: 800;
letter-spacing: 0.24em;
color: #e51a22;
}

.exit-titulo {
margin: 0 0 6px;
text-align: center;
font-family: 'Fredoka', sans-serif;
font-size: 22px;
font-weight: 700;
line-height: 1.22;
color: #1b2a32;
}

.exit-destaque {
color: #ff6b4a;
}

.exit-preco-destaque {
color: #e51a22;
white-space: nowrap;
}

.exit-sub {
margin: 0;
text-align: center;
font-size: 12.5px;
font-weight: 600;
line-height: 1.5;
color: #5b6b76;
}

.exit-sub strong {
color: #e51a22;
}

.exit-countdown {
display: flex;
align-items: center;
justify-content: center;
gap: 7px;
margin: 10px auto 0;
padding: 7px 14px;
width: fit-content;
background: #fdecec;
border: 1px solid #f9c9c9;
border-radius: 999px;
font-size: 12px;
font-weight: 800;
color: #b31218;
}

.exit-countdown-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #e51a22;
animation: exit-blink 1.1s ease-in-out infinite;
}

@keyframes exit-blink {
0%, 100% { opacity: 1; }
50% { opacity: 0.25; }
}

#exit-countdown-tempo {
font-variant-numeric: tabular-nums;
letter-spacing: 0.06em;
}

.exit-lista {
margin: 10px 0 0;
padding: 0;
list-style: none;
}

.exit-lista li {
display: flex;
align-items: flex-start;
gap: 8px;
margin-bottom: 4px;
padding: 5px 10px;
background: #f5fbf7;
border: 1px solid #e3f3e9;
border-radius: 10px;
font-size: 12.5px;
font-weight: 700;
line-height: 1.35;
color: #2c3a44;
}

.exit-lista li:last-child {
margin-bottom: 0;
}

.exit-lista li span {
flex-shrink: 0;
font-size: 13px;
line-height: 1.35;
}

.exit-bonus-total {
margin: 10px 0 0;
padding: 8px 10px;
background: #fff4e0;
border: 1px dashed #e8b04b;
border-radius: 10px;
font-size: 12.5px;
font-weight: 700;
text-align: center;
color: #2c3a44;
}

.exit-bonus-total s {
color: #b3541e;
text-decoration-thickness: 2px;
}

.exit-bonus-total strong {
color: #0e7a3b;
font-weight: 800;
}

.exit-preco {
margin-top: 12px;
padding: 10px 10px 12px;
background: #eafaf1;
border: 1px solid #cdeedc;
border-radius: 14px;
text-align: center;
}

.exit-economia {
display: inline-block;
margin-bottom: 8px;
background: #d7f5e4;
color: #0e7a3b;
font-size: 11.5px;
font-weight: 800;
padding: 4px 12px;
border-radius: 999px;
}

.exit-preco-card {
background: #1b2a32;
border-radius: 12px;
padding: 12px 12px 10px;
color: #ffffff;
}

.exit-de-para {
margin: 0;
font-size: 12px;
font-weight: 700;
color: rgba(255, 255, 255, 0.88);
}

.exit-de-para s {
color: #ffb4a3;
text-decoration-thickness: 2px;
}

.exit-preco-valor {
margin: 1px 0 2px;
font-family: 'Fredoka', sans-serif;
font-size: 40px;
font-weight: 700;
line-height: 1.05;
color: #ff6b4a;
text-shadow: 0 2px 12px rgba(255, 107, 74, 0.32);
}

.exit-preco-legenda {
margin: 0;
font-size: 11px;
font-weight: 600;
color: rgba(255, 255, 255, 0.7);
}

.exit-cta {
display: block;
margin-top: 11px;
padding: 13px 12px;
background: #00b752;
color: #ffffff;
font-size: 14px;
font-weight: 800;
letter-spacing: 0.03em;
text-align: center;
text-decoration: none;
border-radius: 12px;
box-shadow: 0 8px 20px rgba(0, 183, 82, 0.36);
animation: exit-cta-pulse 1.8s ease-in-out infinite;
transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.exit-cta:hover {
background: #00c853;
transform: scale(1.015);
box-shadow: 0 10px 24px rgba(0, 183, 82, 0.42);
}

@keyframes exit-cta-pulse {
0%, 100% { box-shadow: 0 8px 20px rgba(0, 183, 82, 0.36); }
50% { box-shadow: 0 8px 26px rgba(0, 183, 82, 0.55); }
}

.exit-recusar {
display: block;
margin: 8px auto 0;
padding: 6px 10px;
background: none;
border: 0;
color: #8a959c;
font-size: 11.5px;
font-weight: 700;
font-family: 'Nunito', sans-serif;
text-align: center;
text-decoration: underline;
cursor: pointer;
transition: color 0.15s ease;
}

.exit-recusar:hover {
color: #5b6b76;
}

body.exit-scroll-lock {
overflow: hidden;
}

@media (max-width: 640px) {
.exit-overlay {
padding: 12px;
align-items: flex-end;
}

.exit-card {
max-width: none;
border-radius: 18px 18px 14px 14px;
padding: 16px 14px 14px;
}

.exit-titulo {
font-size: 20px;
}

.exit-sub {
font-size: 12px;
}

.exit-lista li {
font-size: 12px;
padding: 4px 9px;
margin-bottom: 3px;
}

.exit-preco-valor {
font-size: 36px;
}

.exit-cta {
font-size: 13.5px;
padding: 12px 10px;
}
}

@media (prefers-reduced-motion: reduce) {
.exit-overlay.is-open,
.exit-overlay.is-open .exit-card,
.exit-cta,
.exit-countdown-dot {
animation: none;
}
}
