.sponsor-entry{margin:18px 0;padding:14px;border:var(--outline) solid var(--bark-900);border-radius:var(--radius-l);background:#e1f0c4;box-shadow:var(--lip-s)}
.sponsor-entry-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.sponsor-entry-title>svg{width:36px;height:36px}
.sponsor-entry-title h3{margin:0;font:800 17px/1.15 var(--font-display);color:var(--bark-900)}
.dialog-inner .sponsor-entry-title p{margin:4px 0 0;font:700 12px/1.25 var(--font-body);color:var(--bark-700)}
.sponsor-free{margin-left:auto;padding:4px 6px;border:2px solid var(--bark-900);border-radius:var(--radius-pill);background:var(--leaf-500);font:900 10px/1 var(--font-body);white-space:nowrap}
.sponsor-entry .primary{height:auto;min-height:50px;padding:10px 8px;font-size:16px;gap:5px;letter-spacing:0}
.sponsor-entry .primary svg{width:23px;height:23px}
.dialog-inner .sponsor-partners{margin:12px 0 0;text-align:center;font:700 11px/1.3 var(--font-body);color:var(--forest)}
.dialog-inner .sponsor-limit{margin:10px 0 0;font:700 14px/1.4 var(--font-body);color:var(--bark-700)}
/* A sponsor owns the viewport; other reward dialogs keep their regular layout. */
#modal.sponsor-fullscreen{position:fixed;inset:0;margin:0;padding:0;width:100%;max-width:none;height:100dvh;height:min(100dvh,var(--app-height,100dvh));max-height:none;border:0;border-radius:0;box-shadow:none;background:#102833;overflow:hidden;scroll-padding:0;color:#effff6}
#modal.sponsor-fullscreen>.dialog-inner,#modal.sponsor-fullscreen #modal-content{height:100%;padding:0;min-height:0}
#modal.sponsor-fullscreen #close-modal{display:none}
.sponsor-screen{--ad-accent:#baf795;--ad-muted:#b4dcd0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;height:100%;padding:max(14px,var(--app-safe-top,0px),env(safe-area-inset-top,0px)) max(18px,var(--app-safe-right,0px),env(safe-area-inset-right,0px)) max(16px,var(--app-safe-bottom,0px),env(safe-area-inset-bottom,0px)) max(18px,var(--app-safe-left,0px),env(safe-area-inset-left,0px));background:radial-gradient(ellipse at 80% 35%,#58d5aa30,transparent 60%),linear-gradient(150deg,#1d4058,#102833 70%)}
.sponsor-theme-mireon{--ad-accent:#a6e8ff;--ad-muted:#c0c6fc;background:radial-gradient(ellipse at 75% 35%,#7772ff40,transparent 60%),linear-gradient(150deg,#242657,#101d3f 70%)}
.sponsor-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.sponsor-ad-label{padding:7px 10px;border:1px solid #ffffff40;border-radius:30px;font:800 11px/1.2 var(--font-body);color:#effff6;background:#ffffff0a}
.sponsor-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #ffffff50;border-radius:50%;background:#ffffff15;color:#fff}
.sponsor-close:hover{background:#ffffff30}
.sponsor-close svg{width:24px;height:24px}
.sponsor-creative{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:0;overflow:auto;text-align:center}
.sponsor-kicker{color:var(--ad-accent);font:800 10px/1.2 var(--font-body);letter-spacing:1.8px;text-transform:uppercase}
#modal.sponsor-fullscreen #modal-title{position:static;flex-shrink:0;margin:0;padding:0;background:none;box-shadow:none;color:#f4fff8;font:900 clamp(36px,8vw,64px)/1.05 var(--font-display);letter-spacing:-1px;overflow-wrap:normal}
.sponsor-art{width:100%;max-width:720px;flex-shrink:0;isolation:isolate}
.sponsor-art img{display:block;width:100%;height:auto;aspect-ratio:640/300;object-fit:contain}
.sponsor-disclosure{display:none}
#modal.sponsor-fullscreen .sponsor-caption{margin:0;color:var(--ad-muted);font:700 14px/1.4 var(--font-body)}
.sponsor-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 18px;border:1px solid #ffffff50;border-radius:30px;color:var(--ad-accent);background:#ffffff0a;font:800 14px/1.2 var(--font-body);text-decoration:none;flex-shrink:0}
.sponsor-link:hover{background:#ffffff20}
.sponsor-link svg{width:18px;height:18px}
#modal.sponsor-fullscreen .sponsor-controls{display:block;width:100%;max-width:560px;margin:0 auto;padding:14px 16px 10px;border:1px solid #ffffff30;border-radius:22px;background:#071b2580;letter-spacing:0}
.sponsor-reward{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}
.sponsor-reward>svg{width:32px;height:32px}
.sponsor-reward strong{color:#ffdc64;font:900 30px/1 var(--font-display)}
.sponsor-reward>span{color:#dceee6;text-align:left;font:700 11px/1.3 var(--font-body)}
.sponsor-controls .reward-progress{height:6px;margin:0;border:0;background:#ffffff25;box-shadow:none}
.sponsor-controls .reward-progress i{background:var(--ad-accent);border:0}
#modal.sponsor-fullscreen .sponsor-countdown{margin:8px 0 12px;text-align:center;color:var(--ad-muted);font:700 11px/1.35 var(--font-body)}
#modal.sponsor-fullscreen #ad-finish{height:auto;min-height:48px;padding:10px 8px;font-size:17px;letter-spacing:0}
#modal.sponsor-fullscreen #ad-finish:disabled{color:#d7e8df;background:#365b5b;border:2px solid #68938b;box-shadow:0 3px 0 #071b25;opacity:1}
#modal.sponsor-fullscreen .sponsor-footnote{margin:9px 0 0;text-align:center;color:var(--ad-muted);font:700 10px/1.25 var(--font-body)}
@media(max-width:360px){.sponsor-entry{padding:11px}.sponsor-entry-title h3{font-size:15px}.sponsor-free{font-size:9px;padding:4px}.sponsor-entry .primary{font-size:15px}.sponsor-screen{gap:8px;padding-left:12px;padding-right:12px}.sponsor-creative{gap:7px}#modal.sponsor-fullscreen .sponsor-controls{padding:11px 12px 9px}#modal.sponsor-fullscreen .sponsor-caption{font-size:12px}.sponsor-reward{margin-bottom:9px}}
@media(max-height:640px) and (orientation:portrait){.sponsor-screen{gap:8px}.sponsor-creative{gap:6px}#modal.sponsor-fullscreen #modal-title{font-size:32px}.sponsor-kicker{font-size:9px}.sponsor-art{max-width:400px}.sponsor-reward{margin-bottom:8px}.sponsor-reward strong{font-size:25px}#modal.sponsor-fullscreen .sponsor-controls{padding:10px 12px 9px}#modal.sponsor-fullscreen .sponsor-countdown{margin:7px 0 9px}}
@media(max-height:540px) and (orientation:landscape){.sponsor-screen{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:8px 22px}.sponsor-topline{grid-column:1/-1}.sponsor-creative{gap:5px}.sponsor-art{max-width:370px}#modal.sponsor-fullscreen #modal-title{font-size:27px}#modal.sponsor-fullscreen .sponsor-caption{font-size:12px}.sponsor-kicker{display:none}.sponsor-link{font-size:12px;min-height:40px}#modal.sponsor-fullscreen .sponsor-controls{align-self:center;max-width:400px}}

.sponsor-reward:has(.sponsor-revive-label){display:grid;grid-template-columns:32px auto;gap:3px 8px}
.sponsor-reward:has(.sponsor-revive-label)>svg{grid-row:1/3}
.sponsor-reward .sponsor-revive-label{font-size:22px;letter-spacing:0}
.sponsor-reward:has(.sponsor-revive-label)>span br{display:none}
.sponsor-reward:has(.sponsor-revive-label)>span{font-size:10px;text-align:left}
/* The product card already contains its title and CTA. Keep it whole above the reward controls. */
.sponsor-theme-sellori{--ad-accent:#d5ff29;--ad-muted:#d2d6c4;background:radial-gradient(ellipse at 75% 35%,#c8e94018,transparent 60%),linear-gradient(150deg,#27291e,#111612 70%)}
.sponsor-theme-sellori .sponsor-creative{height:100%;overflow:hidden}
#modal.sponsor-fullscreen #modal-title.sponsor-card-title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sponsor-card-link{display:flex;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:none;flex-shrink:1}
.sponsor-card-link:hover{background:none}
.sponsor-card-link:focus-visible{outline:2px solid var(--ad-accent);outline-offset:-2px}
.sponsor-card-link .sponsor-art{height:100%;max-width:none;min-height:0}
.sponsor-card-link img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
