/* Transiciones de la evaluación, sin retrasos artificiales de carga. */
.reward-open{overflow:hidden}
.reward-overlay{background:#151b2266;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.reward-card{max-width:355px;border:1px solid #e6ece6;position:relative;padding-bottom:23px}
.reward-check svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.reward-earned{font-size:39px;width:max-content;max-width:100%;margin:0 auto;padding:12px 22px}
.reward-timer{position:absolute;bottom:0;left:0;right:0;height:3px;background:#eef5ef}
.reward-timer span{display:block;height:100%;background:#61ab72;transform-origin:left}
.image-loading{overflow:hidden;background:#f5f6f7}
.image-loading img{opacity:0}
.image-loading:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,#ffffffbb 50%,transparent 75%);background-size:200% 100%;pointer-events:none}
.image-error:after{content:'Imagen no disponible';color:#727b87;font-size:13px;position:absolute;inset:0;display:grid;place-items:center;background:#f6f7f8}
.is-loading{display:flex;align-items:center;justify-content:center;gap:9px}
.is-loading:before,.video-loading:before{content:'';display:inline-block;width:17px;height:17px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;flex-shrink:0}
.video-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;background:#14202b99;font-size:12px;pointer-events:none}
.vote-buttons button,.confirmation-button,.vsl-continue{transition:transform .15s,box-shadow .15s,background-color .15s}
.vote-buttons button:active:not(:disabled),.confirmation-button:active,.vsl-continue:active{transform:scale(.97)}
@media(prefers-reduced-motion:no-preference){
 .stage-enter{animation:stage-in .35s ease-out both}
 .reward-overlay:not([hidden]){animation:veil-in .2s ease-out both}
 .reward-overlay.reward-leaving{animation:veil-out .2s ease-in both}
 .reward-card{animation:card-in .4s cubic-bezier(.2,.8,.2,1) both}
 .reward-check{animation:check-in .45s .1s backwards}
 .reward-check path{stroke-dasharray:24;stroke-dashoffset:24;animation:draw-check .35s .25s forwards}
 .reward-earned{animation:credit-in .4s .18s backwards}
 .reward-timer span{animation:credit-time 1.8s linear both}
 .balance-credit{animation:balance-glow .7s ease-out}
 .image-loading:after{animation:shimmer 1.2s linear infinite}
 .is-loading:before,.video-loading:before{animation:spin .75s linear infinite}
 .confirmation-check{animation:check-in .5s .1s backwards}
 progress::-webkit-progress-value{transition:width .35s ease}
 @keyframes stage-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
 @keyframes veil-in{from{opacity:0}to{opacity:1}}
 @keyframes veil-out{from{opacity:1}to{opacity:0}}
 @keyframes card-in{from{opacity:0;transform:translateY(18px) scale(.91)}to{opacity:1;transform:none}}
 @keyframes check-in{from{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}
 @keyframes draw-check{to{stroke-dashoffset:0}}
 @keyframes credit-in{from{opacity:0;transform:translateY(8px) scale(.9)}to{opacity:1;transform:none}}
 @keyframes credit-time{from{transform:scaleX(0)}to{transform:scaleX(1)}}
 @keyframes balance-glow{40%{box-shadow:0 0 0 5px #67c48440;transform:scale(1.06)}100%{box-shadow:0 0 0 0 #67c48400;transform:none}}
 @keyframes shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
 @keyframes spin{to{transform:rotate(360deg)}}
}
@media(prefers-reduced-motion:reduce){.vote-buttons button,.confirmation-button,.vsl-continue{transition:none}}

/* Cartão de crédito: superfície sólida e destaque monetário. */
.reward-overlay{background:#10192391;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.reward-card{max-width:350px;border-radius:24px;background:#fff;border:1px solid #ffffffb3;box-shadow:0 28px 80px #06120e40;padding:0 24px 23px;isolation:isolate}
.reward-eyebrow{margin:0 -24px 22px;padding:12px 16px;background:#f4f7f5;border-bottom:1px solid #e9eeeb;color:#788a7e;font-size:8px;letter-spacing:1.8px}
.reward-check{width:62px;height:62px;background:#e9f7ed;color:#278753;border:6px solid #f4faf6;box-shadow:0 0 0 1px #dfede3;margin-bottom:17px}
.reward-check svg{width:30px;height:30px}
.reward-verified{font-size:9px;letter-spacing:1.2px;color:#61816d;margin-bottom:7px}
.reward-card h2{font-size:24px;letter-spacing:-.8px;color:#192a22;margin-bottom:20px}
.reward-earned{width:100%;border-radius:15px;border:1px solid #daede1;background:linear-gradient(135deg,#f1faf4,#e8f5ed);color:#25834f;font-size:43px;line-height:1.2;letter-spacing:-1.8px;padding:19px 10px;font-weight:800}
.reward-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:19px 0 14px;padding-bottom:14px;border-bottom:1px solid #edf0ed;font-size:11px;color:#7b857f}
.reward-total b{font-size:17px;letter-spacing:-.4px;color:#243b2c;font-variant-numeric:tabular-nums}
.reward-disclaimer{font-size:9px;color:#89928b;line-height:1.5;max-width:240px;margin-inline:auto}
.reward-timer{height:4px;background:#f1f6f2}
.reward-timer span{background:#65ad7f}
@media(prefers-reduced-motion:no-preference){
 .reward-overlay:not([hidden]){animation:none}
 .reward-overlay.reward-leaving{animation:none}
 .reward-card{animation:solid-card-in .35s cubic-bezier(.2,.8,.2,1) both}
 .reward-overlay.reward-leaving .reward-card{transform:translateY(-5px);transition:transform .2s ease}
 @keyframes solid-card-in{from{transform:translateY(12px) scale(.96)}to{transform:none}}
}
@media(max-height:600px){.reward-card{padding-bottom:17px}.reward-eyebrow{margin-bottom:13px}.reward-check{width:48px;height:48px;margin-bottom:11px}.reward-card h2{margin-bottom:12px}.reward-earned{padding:13px 8px;font-size:36px}.reward-total{margin-top:12px;margin-bottom:10px;padding-bottom:10px}}

/* Vivid emerald confirmation. */
.reward-card{background:radial-gradient(ellipse at 50% 16%,#dcfced 0,transparent 54%),#fafffc;border-color:#a7efcb}
.reward-eyebrow{background:#e6fff1;border-bottom-color:#bbf0d3;color:#008c50}
.reward-check{background:linear-gradient(145deg,#10d080,#05a661);color:#fff;border-color:#b8f5d6;box-shadow:0 10px 26px #00ac6330,0 0 0 1px #9ee8bf}
.reward-verified{color:#078452}
.reward-earned{background:linear-gradient(135deg,#d9ffea,#edfff5);border-color:#86e9b6;color:#079957;box-shadow:inset 0 1px 0 #fff}
.reward-total{border-bottom-color:#d9f2e4;color:#587367}.reward-total b{color:#087e49}
.reward-timer{background:#d9f9e7}.reward-timer span{background:#0abc70}

.reward-timer span{animation-duration:1.8s}
