/*
 * Cashback storefront badges.
 *
 * Colours come from the store's own --sf-* palette so the badge belongs to
 * whichever of the ten themes is active, with a warm amber fallback for a theme
 * that has not defined the token. Everything is scoped to .cb-* so the plugin
 * can never restyle a theme's own elements.
 */

.cb-earn {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.35rem;
    padding: 0.15rem 0.45rem;
    border-radius: 0.4rem;
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.4;
    color: var(--sf-cb-fg, #92400e);
    background: var(--sf-cb-bg, rgba(245, 158, 11, 0.14));
    white-space: nowrap;
}

.cb-earn i {
    font-size: 0.62rem;
    opacity: 0.85;
}

.cb-strip {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1rem 0;
    padding: 0.85rem 1rem;
    border: 1px solid var(--sf-cb-line, rgba(245, 158, 11, 0.35));
    border-radius: 0.9rem;
    background: var(--sf-cb-bg, rgba(245, 158, 11, 0.1));
    color: var(--sf-cb-fg, #92400e);
}

.cb-strip__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    font-size: 0.95rem;
    color: #fff;
    background: var(--sf-cb-accent, #f59e0b);
}

.cb-strip__body,
.cb-earned__body {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.cb-strip__amount {
    font-size: 0.9rem;
    font-weight: 800;
}

.cb-strip__note,
.cb-earned__note {
    font-size: 0.72rem;
    font-weight: 500;
    opacity: 0.85;
}

.cb-earned {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--sf-cb-line, rgba(245, 158, 11, 0.35));
    border-radius: 1rem;
    background: var(--sf-cb-bg, rgba(245, 158, 11, 0.1));
    color: var(--sf-cb-fg, #92400e);
}

.cb-earned__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    font-size: 1.05rem;
    color: #fff;
    background: var(--sf-cb-accent, #f59e0b);
}

.cb-earned strong {
    font-size: 0.95rem;
    font-weight: 800;
}

@media (max-width: 480px) {
    .cb-strip,
    .cb-earned {
        gap: 0.6rem;
        padding: 0.7rem 0.8rem;
    }
}
