.world-emblem{width:44px;height:44px;flex:0 0 44px;pointer-events:none;object-fit:contain}
.reward-emblem{display:block;width:44px;height:44px;margin:0 auto 4px;pointer-events:none}
/* Saw-tooth spikes: announced on the map and the featured card. */
.challenge-badge{display:inline-block;width:max-content;max-width:100%;margin:0 0 3px;padding:2px 7px;border-radius:999px;font:900 9px/1.4 var(--body,inherit);font-style:normal;letter-spacing:.3px;text-transform:uppercase;color:#fff;background:#e0703a;box-shadow:0 2px 0 #b5532a}
.challenge-badge.super{background:#b4325d;box-shadow:0 2px 0 #84213f}
.map-featured>.challenge-badge{display:table;margin:6px 0 0;font-size:11px;text-transform:none}
.map-featured>.challenge-badge[hidden]{display:none}
.map-world .level-stop.challenge-hard{border-color:#f3b58f}
.map-world .level-stop.challenge-super{border-color:#e88aa8}
/* Retention: streak line, wildcard booster and daily reward. */
.overlay-streak{font-size:11px;line-height:1.4;margin:10px 0 0;color:#7a5468}
.booster-button{display:block;width:100%;min-height:44px;margin-top:8px;border:2px dashed #e7a1b7;border-radius:14px;background:#fff8ec;color:#a3365a;font:800 13px/1.2 inherit;cursor:pointer}
.booster-button:disabled{opacity:.55;cursor:not-allowed}
.commerce-daily{border:2px solid #fff;border-radius:16px;background:linear-gradient(130deg,#fff3d4,#fde3ec);padding:10px 12px;margin:10px 0}
.commerce-daily>p:first-child{font-weight:900;color:#a3365a;margin:0}
.commerce-price.free{color:#2f7a52}
