:root {
    --pb-dc-left-bg: #ee5a33;
    --pb-dc-left-text: #ffffff;
    --pb-dc-right-bg: #ffffff;
    --pb-dc-right-text: #0f172a;
    --pb-dc-border: #efb3a2;
    --pb-dc-border-width: 1px;
    --pb-dc-radius: 999px;
    --pb-dc-height: 40px;
    --pb-dc-gap: 14px;
    --pb-dc-font-size: 15px;

    --pb-dc-num-tile-bg: #e3482f;
    --pb-dc-num-tile-text: #ffffff;
    --pb-dc-num-tail-bg: #fff0ec;
    --pb-dc-num-tail-text: #b72e1d;
    --pb-dc-num-tail-border: #efb9ae;
    --pb-dc-num-height: 30px;
    --pb-dc-num-tile-width: 35px;
    --pb-dc-num-tail-radius: 999px;
    --pb-dc-num-pct-size: 14px;
    --pb-dc-num-copy-size: 12px;

    --pb-dc-slash-accent: #ff5a36;
    --pb-dc-slash-bg: #0f1114;
    --pb-dc-slash-text: #ffffff;
    --pb-dc-slash-height: 31px;
    --pb-dc-slash-radius: 999px;
    --pb-dc-slash-pct-size: 17px;
    --pb-dc-slash-copy-size: 14px;
    --pb-dc-slash-mark-size: 22px;
    --pb-dc-slash-pad-x: 14px;

    --pb-dc-floating-bg: #e3482f;
    --pb-dc-floating-block-text: #ffffff;
    --pb-dc-floating-copy-text: #6f6f68;
    --pb-dc-floating-radius: 5px;
    --pb-dc-floating-height: 30px;
    --pb-dc-floating-pct-size: 15px;
    --pb-dc-floating-copy-size: 12px;
    --pb-dc-floating-inner-gap: 7px;

    --pb-dc-ticket-bg: #ffffff;
    --pb-dc-ticket-text: #b72e1d;
    --pb-dc-ticket-border: #e3482f;
    --pb-dc-ticket-outline: #efb9ae;
    --pb-dc-ticket-height: 28px;
    --pb-dc-ticket-radius: 5px;
    --pb-dc-ticket-border-width: 1px;
    --pb-dc-ticket-outline-width: 1px;
    --pb-dc-ticket-outline-offset: 2px;
    --pb-dc-ticket-pct-size: 13px;
    --pb-dc-ticket-copy-size: 12px;
    --pb-dc-ticket-pad-x: 9px;

    --pb-dc-rail-bg: #ffffff;
    --pb-dc-rail-text: #101010;
    --pb-dc-rail-accent: #e3482f;
    --pb-dc-rail-border: #deded7;
    --pb-dc-rail-height: 29px;
    --pb-dc-rail-radius: 999px;
    --pb-dc-rail-width: 6px;
    --pb-dc-rail-pct-size: 13px;
    --pb-dc-rail-copy-size: 12px;
    --pb-dc-rail-pad-x: 9px;

    --pb-dc-maxsave-bg: #ffffff;
    --pb-dc-maxsave-text: #111111;
    --pb-dc-maxsave-border: #111111;
    --pb-dc-maxsave-accent: #e3482f;
    --pb-dc-maxsave-height: 27px;
    --pb-dc-maxsave-radius: 4px;
    --pb-dc-maxsave-pct-size: 13px;
    --pb-dc-maxsave-copy-size: 12px;
    --pb-dc-maxsave-pad-x: 10px;
    --pb-dc-maxsave-accent-width: 3px;

    --pb-dc-oversized-bg: #e33f28;
    --pb-dc-oversized-text: #ffffff;
    --pb-dc-oversized-border: #e33f28;
    --pb-dc-oversized-height: 30px;
    --pb-dc-oversized-radius: 999px;
    --pb-dc-oversized-pct-size: 15px;
    --pb-dc-oversized-copy-size: 10px;
    --pb-dc-oversized-pad-x: 9px;
    --pb-dc-oversized-inner-gap: 6px;

    --pb-dc-pricelock-bg: #ffffff;
    --pb-dc-pricelock-text: #111111;
    --pb-dc-pricelock-accent: #e33f28;
    --pb-dc-pricelock-border: #ddddD7;
    --pb-dc-pricelock-divider: #ddddD7;
    --pb-dc-pricelock-height: 28px;
    --pb-dc-pricelock-radius: 999px;
    --pb-dc-pricelock-border-width: 1px;
    --pb-dc-pricelock-pct-size: 13px;
    --pb-dc-pricelock-copy-size: 12px;
    --pb-dc-pricelock-pad-x: 9px;
    --pb-dc-pricelock-inner-gap: 7px;
    --pb-dc-pricelock-divider-height: 12px;

    --pb-dc-offrail-num-bg: #e3482f;
    --pb-dc-offrail-num-text: #ffffff;
    --pb-dc-offrail-side-bg: #ffffff;
    --pb-dc-offrail-side-text: #e3482f;
    --pb-dc-offrail-border: #e3482f;
    --pb-dc-offrail-height: 30px;
    --pb-dc-offrail-radius: 6px;
    --pb-dc-offrail-border-width: 1px;
    --pb-dc-offrail-num-size: 14px;
    --pb-dc-offrail-label-size: 9px;
    --pb-dc-offrail-num-pad-x: 8px;
    --pb-dc-offrail-side-width: 20px;
    --pb-dc-offrail-letter-spacing: .8px;

    --pb-dc-bracket-bg: #ffffff;
    --pb-dc-bracket-text: #111111;
    --pb-dc-bracket-border: #111111;
    --pb-dc-bracket-num-bg: #111111;
    --pb-dc-bracket-num-text: #ffffff;
    --pb-dc-bracket-height: 28px;
    --pb-dc-bracket-radius: 6px;
    --pb-dc-bracket-num-radius: 3px;
    --pb-dc-bracket-border-width: 1px;
    --pb-dc-bracket-pct-size: 13px;
    --pb-dc-bracket-copy-size: 12px;
    --pb-dc-bracket-pad-x: 5px;
    --pb-dc-bracket-num-pad-x: 6px;
    --pb-dc-bracket-inner-gap: 5px;

    --pb-dc-stamp-bg: #ffffff;
    --pb-dc-stamp-text: #e3482f;
    --pb-dc-stamp-pct-text: #e3482f;
    --pb-dc-stamp-border: #e3482f;
    --pb-dc-stamp-border-width: 1px;
    --pb-dc-stamp-radius: 4px;
    --pb-dc-stamp-height: 28px;
    --pb-dc-stamp-pct-size: 12px;
    --pb-dc-stamp-copy-size: 10px;
    --pb-dc-stamp-pad-x: 7px;
    --pb-dc-stamp-inner-gap: 5px;
    --pb-dc-stamp-rotation: -2deg;
    --pb-dc-stamp-letter-spacing: .6px;
    --pb-dc-stamp-pct-weight: 850;
    --pb-dc-stamp-copy-weight: 700;

    --pb-dc-two-storey-top-bg: #e3482f;
    --pb-dc-two-storey-top-text: #ffffff;
    --pb-dc-two-storey-bottom-bg: #ffffff;
    --pb-dc-two-storey-bottom-text: #e3482f;
    --pb-dc-two-storey-border: #e3482f;
    --pb-dc-two-storey-border-width: 1px;
    --pb-dc-two-storey-radius: 7px;
    --pb-dc-two-storey-top-height: 22px;
    --pb-dc-two-storey-bottom-height: 18px;
    --pb-dc-two-storey-pct-size: 14px;
    --pb-dc-two-storey-copy-size: 9px;
    --pb-dc-two-storey-pad-x: 7px;
    --pb-dc-two-storey-letter-spacing: .8px;

    --pb-dc-micro-card-left-bg: #e3482f;
    --pb-dc-micro-card-left-text: #ffffff;
    --pb-dc-micro-card-right-bg: #ffffff;
    --pb-dc-micro-card-right-text: #111111;
    --pb-dc-micro-card-border: #ddddD7;
    --pb-dc-micro-card-border-width: 1px;
    --pb-dc-micro-card-radius: 7px;
    --pb-dc-micro-card-height: 32px;
    --pb-dc-micro-card-left-width: 38px;
    --pb-dc-micro-card-pct-size: 14px;
    --pb-dc-micro-card-copy-size: 10px;
    --pb-dc-micro-card-pad-x: 8px;
    --pb-dc-micro-card-line-gap: 1px;
    --pb-dc-micro-card-letter-spacing: .4px;

    --pb-dc-slash-divider-bg: #ffffff;
    --pb-dc-slash-divider-text: #111111;
    --pb-dc-slash-divider-accent: #e3482f;
    --pb-dc-slash-divider-border: #111111;
    --pb-dc-slash-divider-mark: #ddddD7;
    --pb-dc-slash-divider-border-width: 1px;
    --pb-dc-slash-divider-height: 28px;
    --pb-dc-slash-divider-radius: 999px;
    --pb-dc-slash-divider-pct-size: 13px;
    --pb-dc-slash-divider-copy-size: 12px;
    --pb-dc-slash-divider-mark-size: 16px;
    --pb-dc-slash-divider-pad-x: 8px;
    --pb-dc-slash-divider-inner-gap: 5px;
    --pb-dc-slash-divider-skew: -15deg;
}

.pb-discount-chip-wrap {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: var(--pb-dc-gap);
}

.pb-discount-chip {
    vertical-align: middle;
}

/* Template 03 — Split badge */
.pb-discount-chip--split {
    align-items: stretch;
    border: var(--pb-dc-border-width) solid var(--pb-dc-border);
    border-radius: var(--pb-dc-radius);
    display: inline-flex;
    min-height: var(--pb-dc-height);
    overflow: hidden;
}

.pb-discount-chip__left,
.pb-discount-chip__right {
    align-items: center;
    display: inline-flex;
    font-size: var(--pb-dc-font-size);
    font-weight: 700;
    line-height: 1;
    padding: 0 14px;
    white-space: nowrap;
}

.pb-discount-chip__left {
    background: var(--pb-dc-left-bg);
    color: var(--pb-dc-left-text);
    letter-spacing: .02em;
}

.pb-discount-chip__left.is-uppercase {
    text-transform: uppercase;
}

.pb-discount-chip__right {
    background: var(--pb-dc-right-bg);
    color: var(--pb-dc-right-text);
}

/* Template 04 — Numeric tile */
.pb-discount-chip--numeric {
    align-items: center;
    background: transparent;
    display: inline-flex;
    gap: 0;
}

.pb-dc-numeric__tile {
    align-items: center;
    background: var(--pb-dc-num-tile-bg);
    border-radius: 6px 0 0 6px;
    color: var(--pb-dc-num-tile-text);
    display: inline-flex;
    font-size: var(--pb-dc-num-pct-size);
    font-weight: 850;
    height: var(--pb-dc-num-height);
    justify-content: center;
    line-height: 1;
    min-width: var(--pb-dc-num-tile-width);
    padding: 0 8px;
    white-space: nowrap;
}

.pb-dc-numeric__tail {
    align-items: center;
    background: var(--pb-dc-num-tail-bg);
    border: 1px solid var(--pb-dc-num-tail-border);
    border-left: 0;
    border-radius: 0 var(--pb-dc-num-tail-radius) var(--pb-dc-num-tail-radius) 0;
    color: var(--pb-dc-num-tail-text);
    display: inline-flex;
    font-size: var(--pb-dc-num-copy-size);
    font-weight: 750;
    height: var(--pb-dc-num-height);
    line-height: 1;
    padding: 0 9px;
    white-space: nowrap;
}

/* Template 07 — Slash capsule */
.pb-discount-chip--slash {
    align-items: center;
    background: var(--pb-dc-slash-bg);
    border-radius: var(--pb-dc-slash-radius);
    color: var(--pb-dc-slash-text);
    display: inline-flex;
    gap: 4px;
    height: var(--pb-dc-slash-height);
    padding: 0 var(--pb-dc-slash-pad-x);
    white-space: nowrap;
}

.pb-dc-slash__mark {
    color: var(--pb-dc-slash-accent);
    font-size: var(--pb-dc-slash-mark-size);
    font-style: italic;
    font-weight: 900;
    line-height: 1;
    margin-right: 1px;
    transform: translateY(-1px);
}

.pb-dc-slash__pct {
    color: var(--pb-dc-slash-text);
    font-size: var(--pb-dc-slash-pct-size);
    font-weight: 850;
    line-height: 1;
}

.pb-dc-slash__copy {
    color: var(--pb-dc-slash-text);
    font-size: var(--pb-dc-slash-copy-size);
    font-weight: 700;
    line-height: 1;
}

/* Template 08 — Floating percent block */
.pb-discount-chip--floating {
    align-items: center;
    display: inline-flex;
    gap: var(--pb-dc-floating-inner-gap);
    white-space: nowrap;
}

.pb-dc-floating__block {
    align-items: center;
    background: var(--pb-dc-floating-bg);
    border-radius: var(--pb-dc-floating-radius);
    color: var(--pb-dc-floating-block-text);
    display: inline-flex;
    font-size: var(--pb-dc-floating-pct-size);
    font-weight: 850;
    height: var(--pb-dc-floating-height);
    justify-content: center;
    line-height: 1;
    padding: 0 8px;
}

.pb-dc-floating__copy {
    color: var(--pb-dc-floating-copy-text);
    display: inline-flex;
    flex-direction: column;
    font-size: var(--pb-dc-floating-copy-size);
    font-weight: 700;
    line-height: 1.05;
}

/* Template 09 — Double-line ticket */
.pb-discount-chip--ticket {
    align-items: center;
    background: var(--pb-dc-ticket-bg);
    border: var(--pb-dc-ticket-border-width) solid var(--pb-dc-ticket-border);
    border-radius: var(--pb-dc-ticket-radius);
    color: var(--pb-dc-ticket-text);
    display: inline-flex;
    gap: 4px;
    height: var(--pb-dc-ticket-height);
    outline: var(--pb-dc-ticket-outline-width) solid var(--pb-dc-ticket-outline);
    outline-offset: var(--pb-dc-ticket-outline-offset);
    padding: 0 var(--pb-dc-ticket-pad-x);
    white-space: nowrap;
}

.pb-dc-ticket__pct {
    font-size: var(--pb-dc-ticket-pct-size);
    font-weight: 850;
    line-height: 1;
}

.pb-dc-ticket__copy {
    font-size: var(--pb-dc-ticket-copy-size);
    font-weight: 700;
    line-height: 1;
}

/* Template 10 — Urgency rail */
.pb-discount-chip--rail {
    align-items: stretch;
    background: var(--pb-dc-rail-bg);
    border: 1px solid var(--pb-dc-rail-border);
    border-radius: var(--pb-dc-rail-radius);
    color: var(--pb-dc-rail-text);
    display: inline-flex;
    height: var(--pb-dc-rail-height);
    overflow: hidden;
    white-space: nowrap;
}

.pb-dc-rail__bar {
    background: var(--pb-dc-rail-accent);
    flex: 0 0 var(--pb-dc-rail-width);
    width: var(--pb-dc-rail-width);
}

.pb-dc-rail__body {
    align-items: center;
    display: inline-flex;
    font-size: var(--pb-dc-rail-copy-size);
    font-weight: 650;
    gap: 4px;
    line-height: 1;
    padding: 0 var(--pb-dc-rail-pad-x) 0 max(3px, calc(var(--pb-dc-rail-pad-x) - 6px));
}

.pb-dc-rail__body strong {
    color: var(--pb-dc-rail-accent);
    font-size: var(--pb-dc-rail-pct-size);
    font-weight: 850;
}

.pb-dc-rail__dot {
    color: var(--pb-dc-rail-text);
}

/* Template 09 — Maximum Savings
 * Canonical block shared by the template library, live preview, and frontend.
 */
.pb-discount-chip.pb-discount-chip--maxsave {
    align-items: center;
    background: var(--pb-dc-maxsave-bg, #ffffff);
    border: 1px solid var(--pb-dc-maxsave-border, #111111);
    border-radius: var(--pb-dc-maxsave-radius, 4px);
    box-shadow: inset var(--pb-dc-maxsave-accent-width, 3px) 0 0 var(--pb-dc-maxsave-accent, #e3482f);
    box-sizing: border-box;
    color: var(--pb-dc-maxsave-text, #111111);
    display: inline-flex;
    font-family: inherit;
    gap: 5px;
    height: var(--pb-dc-maxsave-height, 27px);
    justify-content: center;
    line-height: 1;
    min-height: var(--pb-dc-maxsave-height, 27px);
    overflow: hidden;
    padding: 0 var(--pb-dc-maxsave-pad-x, 10px) 0 calc(var(--pb-dc-maxsave-pad-x, 10px) + var(--pb-dc-maxsave-accent-width, 3px));
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--maxsave .pb-dc-maxsave__copy {
    color: var(--pb-dc-maxsave-text, #111111);
    display: inline-block;
    font-size: var(--pb-dc-maxsave-copy-size, 12px);
    font-weight: 700;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--maxsave .pb-dc-maxsave__pct {
    color: var(--pb-dc-maxsave-accent, #e3482f);
    display: inline-block;
    font-size: var(--pb-dc-maxsave-pct-size, 13px);
    font-weight: 800;
    letter-spacing: -.01em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

/* Template 11 — Oversized Percentage */
.pb-discount-chip.pb-discount-chip--oversized {
    align-items: center;
    background: var(--pb-dc-oversized-bg, #e33f28);
    border: 1px solid var(--pb-dc-oversized-border, #e33f28);
    border-radius: var(--pb-dc-oversized-radius, 999px);
    box-sizing: border-box;
    color: var(--pb-dc-oversized-text, #ffffff);
    display: inline-flex;
    font-family: inherit;
    gap: var(--pb-dc-oversized-inner-gap, 6px);
    height: var(--pb-dc-oversized-height, 30px);
    justify-content: center;
    line-height: 1;
    min-height: var(--pb-dc-oversized-height, 30px);
    padding: 0 var(--pb-dc-oversized-pad-x, 9px);
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--oversized .pb-dc-oversized__pct {
    color: var(--pb-dc-oversized-text, #ffffff);
    display: inline-block;
    font-size: var(--pb-dc-oversized-pct-size, 15px);
    font-weight: 850;
    letter-spacing: -.02em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--oversized .pb-dc-oversized__copy {
    color: var(--pb-dc-oversized-text, #ffffff);
    display: inline-block;
    font-size: var(--pb-dc-oversized-copy-size, 10px);
    font-weight: 750;
    letter-spacing: .05em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--oversized .pb-dc-oversized__copy.is-uppercase {
    text-transform: uppercase;
}

/* Template 12 — Price-Lock Value */
.pb-discount-chip.pb-discount-chip--pricelock {
    align-items: center;
    background: var(--pb-dc-pricelock-bg, #ffffff);
    border: var(--pb-dc-pricelock-border-width, 1px) solid var(--pb-dc-pricelock-border, #ddddD7);
    border-radius: var(--pb-dc-pricelock-radius, 999px);
    box-sizing: border-box;
    color: var(--pb-dc-pricelock-text, #111111);
    display: inline-flex;
    font-family: inherit;
    gap: var(--pb-dc-pricelock-inner-gap, 7px);
    height: var(--pb-dc-pricelock-height, 28px);
    justify-content: center;
    line-height: 1;
    min-height: var(--pb-dc-pricelock-height, 28px);
    padding: 0 var(--pb-dc-pricelock-pad-x, 9px);
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--pricelock .pb-dc-pricelock__pct {
    color: var(--pb-dc-pricelock-accent, #e33f28);
    display: inline-block;
    font-size: var(--pb-dc-pricelock-pct-size, 13px);
    font-weight: 850;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--pricelock .pb-dc-pricelock__sep {
    align-self: center;
    background: var(--pb-dc-pricelock-divider, #ddddD7);
    display: inline-block;
    flex: 0 0 1px;
    height: var(--pb-dc-pricelock-divider-height, 12px);
    margin: 0;
    padding: 0;
    width: 1px;
}

.pb-discount-chip.pb-discount-chip--pricelock .pb-dc-pricelock__copy {
    color: var(--pb-dc-pricelock-text, #111111);
    display: inline-block;
    font-size: var(--pb-dc-pricelock-copy-size, 12px);
    font-weight: 650;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

/* Unique 03 — Vertical Off Rail */
.pb-discount-chip.pb-discount-chip--offrail {
    align-items: stretch;
    background: var(--pb-dc-offrail-side-bg, #ffffff);
    border: var(--pb-dc-offrail-border-width, 1px) solid var(--pb-dc-offrail-border, #e3482f);
    border-radius: var(--pb-dc-offrail-radius, 6px);
    box-sizing: border-box;
    display: inline-flex;
    height: var(--pb-dc-offrail-height, 30px);
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-offrail-height, 30px);
    overflow: hidden;
    padding: 0;
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--offrail .pb-dc-offrail__num {
    align-items: center;
    background: var(--pb-dc-offrail-num-bg, #e3482f);
    color: var(--pb-dc-offrail-num-text, #ffffff);
    display: inline-flex;
    font-size: var(--pb-dc-offrail-num-size, 14px);
    font-weight: 850;
    height: 100%;
    justify-content: center;
    line-height: 1;
    margin: 0;
    padding: 0 var(--pb-dc-offrail-num-pad-x, 8px);
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--offrail .pb-dc-offrail__label {
    align-items: center;
    background: var(--pb-dc-offrail-side-bg, #ffffff);
    color: var(--pb-dc-offrail-side-text, #e3482f);
    display: inline-flex;
    font-size: var(--pb-dc-offrail-label-size, 9px);
    font-weight: 800;
    height: 100%;
    justify-content: center;
    letter-spacing: var(--pb-dc-offrail-letter-spacing, .8px);
    line-height: 1;
    margin: 0;
    min-width: var(--pb-dc-offrail-side-width, 20px);
    padding: 0;
    text-decoration: none !important;
    transform: rotate(180deg);
    white-space: nowrap;
    width: var(--pb-dc-offrail-side-width, 20px);
    writing-mode: vertical-rl;
}

.pb-discount-chip.pb-discount-chip--offrail .pb-dc-offrail__label.is-uppercase {
    text-transform: uppercase;
}

/* Unique 05 — Number Bracket */
.pb-discount-chip.pb-discount-chip--number-bracket {
    align-items: center;
    background: var(--pb-dc-bracket-bg, #ffffff);
    border: var(--pb-dc-bracket-border-width, 1px) solid var(--pb-dc-bracket-border, #111111);
    border-radius: var(--pb-dc-bracket-radius, 6px);
    box-sizing: border-box;
    color: var(--pb-dc-bracket-text, #111111);
    display: inline-flex;
    gap: var(--pb-dc-bracket-inner-gap, 5px);
    height: var(--pb-dc-bracket-height, 28px);
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-bracket-height, 28px);
    padding: 0 var(--pb-dc-bracket-pad-x, 5px);
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--number-bracket .pb-dc-number-bracket__num {
    align-items: center;
    align-self: center;
    background: var(--pb-dc-bracket-num-bg, #111111);
    border-radius: var(--pb-dc-bracket-num-radius, 3px);
    color: var(--pb-dc-bracket-num-text, #ffffff);
    display: inline-flex;
    font-size: var(--pb-dc-bracket-pct-size, 13px);
    font-weight: 850;
    height: calc(100% - 8px);
    justify-content: center;
    line-height: 1;
    margin: 0;
    padding: 0 var(--pb-dc-bracket-num-pad-x, 6px);
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--number-bracket .pb-dc-number-bracket__copy {
    color: var(--pb-dc-bracket-text, #111111);
    display: inline-flex;
    font-size: var(--pb-dc-bracket-copy-size, 12px);
    font-weight: 700;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

/* Template 11 — Micro Stamp */
.pb-discount-chip.pb-discount-chip--stamp {
    align-items: center;
    background: var(--pb-dc-stamp-bg, #ffffff);
    border: var(--pb-dc-stamp-border-width, 1px) solid var(--pb-dc-stamp-border, #e3482f);
    border-radius: var(--pb-dc-stamp-radius, 4px);
    box-sizing: border-box;
    color: var(--pb-dc-stamp-text, #e3482f);
    display: inline-flex;
    font-family: inherit;
    gap: var(--pb-dc-stamp-inner-gap, 5px);
    height: var(--pb-dc-stamp-height, 28px);
    justify-content: center;
    letter-spacing: var(--pb-dc-stamp-letter-spacing, .6px);
    line-height: 1;
    margin: 2px 1px;
    min-height: var(--pb-dc-stamp-height, 28px);
    padding: 0 var(--pb-dc-stamp-pad-x, 7px);
    text-decoration: none !important;
    transform: rotate(var(--pb-dc-stamp-rotation, -2deg));
    transform-origin: center;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--stamp .pb-dc-stamp__pct {
    color: var(--pb-dc-stamp-pct-text, #e3482f);
    display: inline-block;
    font-size: var(--pb-dc-stamp-pct-size, 12px);
    font-weight: var(--pb-dc-stamp-pct-weight, 850);
    letter-spacing: -.01em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--stamp .pb-dc-stamp__copy {
    color: var(--pb-dc-stamp-text, #e3482f);
    display: inline-block;
    font-size: var(--pb-dc-stamp-copy-size, 10px);
    font-weight: var(--pb-dc-stamp-copy-weight, 700);
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--stamp .pb-dc-stamp__copy.is-uppercase {
    text-transform: uppercase;
}

/* Template 09 — Two-Storey Percent */
.pb-discount-chip.pb-discount-chip--two-storey {
    align-items: stretch;
    background: var(--pb-dc-two-storey-bottom-bg, #ffffff);
    border: var(--pb-dc-two-storey-border-width, 1px) solid var(--pb-dc-two-storey-border, #e3482f);
    border-radius: var(--pb-dc-two-storey-radius, 7px);
    box-sizing: border-box;
    display: inline-flex;
    flex-direction: column;
    font-family: inherit;
    justify-content: center;
    line-height: 1;
    margin: 0;
    min-width: 42px;
    overflow: hidden;
    padding: 0;
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--two-storey .pb-dc-two-storey__top {
    align-items: center;
    background: var(--pb-dc-two-storey-top-bg, #e3482f);
    color: var(--pb-dc-two-storey-top-text, #ffffff);
    display: flex;
    font-size: var(--pb-dc-two-storey-pct-size, 14px);
    font-weight: 850;
    height: var(--pb-dc-two-storey-top-height, 22px);
    justify-content: center;
    letter-spacing: -.015em;
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-two-storey-top-height, 22px);
    padding: 0 var(--pb-dc-two-storey-pad-x, 7px);
    text-decoration: none !important;
}

.pb-discount-chip.pb-discount-chip--two-storey .pb-dc-two-storey__bottom {
    align-items: center;
    background: var(--pb-dc-two-storey-bottom-bg, #ffffff);
    color: var(--pb-dc-two-storey-bottom-text, #e3482f);
    display: flex;
    font-size: var(--pb-dc-two-storey-copy-size, 9px);
    font-weight: 800;
    height: var(--pb-dc-two-storey-bottom-height, 18px);
    justify-content: center;
    letter-spacing: var(--pb-dc-two-storey-letter-spacing, .8px);
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-two-storey-bottom-height, 18px);
    padding: 0 var(--pb-dc-two-storey-pad-x, 7px);
    text-decoration: none !important;
}

.pb-discount-chip.pb-discount-chip--two-storey .pb-dc-two-storey__bottom.is-uppercase {
    text-transform: uppercase;
}

/* Template 12 — Micro Card */
.pb-discount-chip.pb-discount-chip--micro-card {
    align-items: stretch;
    background: var(--pb-dc-micro-card-right-bg, #ffffff);
    border: var(--pb-dc-micro-card-border-width, 1px) solid var(--pb-dc-micro-card-border, #ddddD7);
    border-radius: var(--pb-dc-micro-card-radius, 7px);
    box-sizing: border-box;
    display: inline-flex;
    font-family: inherit;
    height: var(--pb-dc-micro-card-height, 32px);
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-micro-card-height, 32px);
    overflow: hidden;
    padding: 0;
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--micro-card .pb-dc-micro-card__left {
    align-items: center;
    background: var(--pb-dc-micro-card-left-bg, #e3482f);
    color: var(--pb-dc-micro-card-left-text, #ffffff);
    display: flex;
    flex: 0 0 var(--pb-dc-micro-card-left-width, 38px);
    font-size: var(--pb-dc-micro-card-pct-size, 14px);
    font-weight: 850;
    justify-content: center;
    letter-spacing: -.015em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
    width: var(--pb-dc-micro-card-left-width, 38px);
}

.pb-discount-chip.pb-discount-chip--micro-card .pb-dc-micro-card__right {
    align-content: center;
    background: var(--pb-dc-micro-card-right-bg, #ffffff);
    color: var(--pb-dc-micro-card-right-text, #111111);
    display: flex;
    flex-direction: column;
    font-size: var(--pb-dc-micro-card-copy-size, 10px);
    font-weight: 750;
    gap: var(--pb-dc-micro-card-line-gap, 1px);
    justify-content: center;
    letter-spacing: var(--pb-dc-micro-card-letter-spacing, .4px);
    line-height: 1;
    margin: 0;
    padding: 0 var(--pb-dc-micro-card-pad-x, 8px);
    text-decoration: none !important;
}

.pb-discount-chip.pb-discount-chip--micro-card .pb-dc-micro-card__right span {
    color: inherit;
    display: block;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
}

.pb-discount-chip.pb-discount-chip--micro-card .pb-dc-micro-card__right.is-uppercase {
    text-transform: uppercase;
}

/* Template 13 — Slash Divider */
.pb-discount-chip.pb-discount-chip--slash-divider {
    align-items: center;
    background: var(--pb-dc-slash-divider-bg, #ffffff);
    border: var(--pb-dc-slash-divider-border-width, 1px) solid var(--pb-dc-slash-divider-border, #111111);
    border-radius: var(--pb-dc-slash-divider-radius, 999px);
    box-sizing: border-box;
    color: var(--pb-dc-slash-divider-text, #111111);
    display: inline-flex;
    font-family: inherit;
    gap: var(--pb-dc-slash-divider-inner-gap, 5px);
    height: var(--pb-dc-slash-divider-height, 28px);
    line-height: 1;
    margin: 0;
    min-height: var(--pb-dc-slash-divider-height, 28px);
    padding: 0 var(--pb-dc-slash-divider-pad-x, 8px);
    text-decoration: none !important;
    vertical-align: middle;
    white-space: nowrap;
}

.pb-discount-chip.pb-discount-chip--slash-divider .pb-dc-slash-divider__pct {
    color: var(--pb-dc-slash-divider-accent, #e3482f);
    display: inline-block;
    font-size: var(--pb-dc-slash-divider-pct-size, 13px);
    font-weight: 850;
    letter-spacing: -.01em;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
}

.pb-discount-chip.pb-discount-chip--slash-divider .pb-dc-slash-divider__mark {
    color: var(--pb-dc-slash-divider-mark, #ddddD7);
    display: inline-block;
    font-size: var(--pb-dc-slash-divider-mark-size, 16px);
    font-weight: 800;
    line-height: 1;
    margin: 0;
    padding: 0;
    transform: skewX(var(--pb-dc-slash-divider-skew, -15deg));
    transform-origin: center;
}

.pb-discount-chip.pb-discount-chip--slash-divider .pb-dc-slash-divider__copy {
    color: var(--pb-dc-slash-divider-text, #111111);
    display: inline-block;
    font-size: var(--pb-dc-slash-divider-copy-size, 12px);
    font-weight: 700;
    line-height: 1;
    margin: 0;
    padding: 0;
    text-decoration: none !important;
}

.productboost-discount-chip-thumb {
    align-items: center;
    display: flex;
    gap: 14px;
    min-height: 72px;
    padding: 0 6px 8px;
}

.pb-discount-chip-preview-price {
    color: var(--pb-dc-price-color, #0f172a);
    font-size: 38px;
    font-weight: 800;
    letter-spacing: -.04em;
    line-height: 1;
}

.productboost-discount-preview-shell {
    background: #fffdfa;
    border: 1px solid #e8dfd7;
    border-radius: 24px;
    min-height: 220px;
    padding: 34px 32px;
}

.productboost-discount-preview-title {
    color: #8c694c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .12em;
    margin-bottom: 70px;
    text-transform: uppercase;
}

.productboost-discount-preview-line {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--pb-dc-gap);
    margin-bottom: 0;
}

.productboost-discount-preview-line .pb-discount-chip-preview-price {
    font-size: 62px;
}

/* Only the selected Discount Chip template is visible in Live Preview. */
.productboost-discount-chip-preview-template {
    display: none !important;
}

.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--split,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--numeric,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--slash,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--floating,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--ticket,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--rail,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--maxsave,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--oversized,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--pricelock,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--offrail,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--number-bracket,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--stamp,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--two-storey,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--micro-card,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--slash-divider {
    display: inline-flex !important;
}

.productboost-discount-chip-template-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.productboost-design-card[data-discount-chip-template-card] input[type="radio"] {
    left: 16px;
    position: absolute;
    top: 18px;
}

.productboost-design-card[data-discount-chip-template-card] {
    position: relative;
}

.productboost-field-full {
    grid-column: 1 / -1;
}

.productboost-input-suffix {
    align-items: center;
    display: flex;
    gap: 8px;
}

.productboost-input-suffix span {
    color: var(--pb-muted);
    font-size: 12px;
    font-weight: 700;
}

.productboost-toggle-card--compact {
    min-height: 100%;
}

.productboost-discount-chip-layout {
    margin-top: 0;
}

.productboost-discount-chip-main {
    gap: 24px;
}

.productboost-discount-chip-preview-panel {
    gap: 18px;
}

.productboost-discount-chip-save-card {
    margin-top: 0;
}

.productboost-discount-chip-save-card .productboost-button {
    justify-content: center;
    width: 100%;
}

@media (max-width: 1240px) {
    .productboost-discount-chip-preview-panel {
        position: static;
    }
}

@media (max-width: 960px) {
    .productboost-discount-preview-shell {
        min-height: 0;
        padding: 24px 22px;
    }

    .productboost-discount-preview-title {
        margin-bottom: 42px;
    }

    .productboost-discount-preview-line .pb-discount-chip-preview-price {
        font-size: 50px;
    }
}

@media (max-width: 640px) {
    .productboost-discount-preview-line .pb-discount-chip-preview-price {
        font-size: 42px;
    }

    .pb-discount-chip__left,
    .pb-discount-chip__right {
        padding: 0 12px;
    }

    .productboost-discount-chip-thumb {
        flex-wrap: wrap;
    }

    .pb-discount-chip--slash {
        padding: 0 12px;
    }
}

/* Discount Chip template library cards — v1.0.23 */
.productboost-discount-chip-template-grid {
    align-items: stretch;
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.productboost-discount-template-card {
    background: #ffffff;
    border: 1px solid #dce4ef;
    border-radius: 18px;
    box-shadow: 0 5px 16px rgba(15, 23, 42, .035);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    min-height: 176px;
    overflow: hidden;
    padding: 18px;
    position: relative;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.productboost-discount-template-card:hover {
    border-color: #9db7f8;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .10);
    transform: translateY(-2px);
}

.productboost-discount-template-card.is-active {
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10), 0 16px 32px rgba(37, 99, 235, .12);
}

.productboost-discount-template-card:focus-within {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .16);
}

.productboost-discount-template-radio {
    height: 1px !important;
    margin: 0 !important;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute !important;
    width: 1px !important;
}

.productboost-discount-template-head {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    min-height: 34px;
}

.productboost-discount-template-name {
    color: #0f172a;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -.015em;
    line-height: 1.3;
}

.productboost-discount-template-select {
    align-items: center;
    background: #f1f5f9;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    color: transparent;
    display: inline-flex;
    flex: 0 0 28px;
    height: 28px;
    justify-content: center;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
    width: 28px;
}

.productboost-discount-template-select .dashicons {
    font-size: 17px;
    height: 17px;
    width: 17px;
}

.productboost-discount-template-card.is-active .productboost-discount-template-select {
    background: #2563eb;
    border-color: #2563eb;
    color: #ffffff;
    transform: scale(1.04);
}

.productboost-discount-template-preview {
    align-items: center;
    border-top: 1px solid #edf1f6;
    display: flex;
    flex: 1;
    margin-top: 14px;
    min-height: 98px;
    padding-top: 16px;
}

.productboost-discount-template-preview .productboost-discount-chip-thumb {
    min-height: 0;
    padding: 0;
    width: 100%;
}

.productboost-discount-template-card.is-active .productboost-discount-template-preview {
    border-top-color: #dbeafe;
}

@media (max-width: 1180px) {
    .productboost-discount-chip-template-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .productboost-discount-chip-template-grid {
        grid-template-columns: 1fr;
    }

    .productboost-discount-template-card {
        min-height: 154px;
    }
}

/* Compact, clearly spaced template cards — v1.0.24 */
.productboost-discount-template-card {
    min-height: 148px;
    padding: 15px 16px;
}

.productboost-discount-template-head {
    min-height: 30px;
}

.productboost-discount-template-preview {
    gap: 16px;
    margin-top: 9px;
    min-height: 64px;
    padding-top: 10px;
}

.productboost-discount-template-preview > .pb-discount-chip-preview-price,
.productboost-discount-template-preview > .pb-discount-chip {
    flex: 0 0 auto;
}

@media (max-width: 680px) {
    .productboost-discount-template-card {
        min-height: 138px;
    }

    .productboost-discount-template-preview {
        min-height: 58px;
    }
}

:root {
    --pb-dc-offset-frame-bg: #ffffff;
    --pb-dc-offset-frame-text: #e3482f;
    --pb-dc-offset-frame-border: #e3482f;
    --pb-dc-offset-frame-shadow: #fff0ec;
    --pb-dc-offset-frame-height: 28px;
    --pb-dc-offset-frame-radius: 4px;
    --pb-dc-offset-frame-border-width: 1px;
    --pb-dc-offset-frame-pct-size: 13px;
    --pb-dc-offset-frame-copy-size: 12px;
    --pb-dc-offset-frame-pad-x: 8px;
    --pb-dc-offset-frame-inner-gap: 5px;
    --pb-dc-offset-frame-shadow-x: 3px;
    --pb-dc-offset-frame-shadow-y: 3px;

    --pb-dc-ladder-top-color: #e3482f;
    --pb-dc-ladder-bottom-color: #6f6f68;
    --pb-dc-ladder-bar-color: #e3482f;
    --pb-dc-ladder-top-bar-width: 48px;
    --pb-dc-ladder-bottom-bar-width: 28px;
    --pb-dc-ladder-bar-height: 3px;
    --pb-dc-ladder-row-gap: 3px;
    --pb-dc-ladder-inner-gap: 5px;
    --pb-dc-ladder-pct-size: 11px;
    --pb-dc-ladder-amount-size: 11px;

    --pb-dc-seal-bg: #ffffff;
    --pb-dc-seal-text: #e3482f;
    --pb-dc-seal-border: #e3482f;
    --pb-dc-seal-size: 40px;
    --pb-dc-seal-border-width: 2px;
    --pb-dc-seal-pct-size: 13px;
    --pb-dc-seal-suffix-size: 9px;
    --pb-dc-seal-pct-weight: 850;
    --pb-dc-seal-suffix-weight: 800;
    --pb-dc-seal-letter-spacing: 0.2px;
    --pb-dc-seal-line-height: 1.05;
}

/* Replacement — Offset Frame */
.pb-discount-chip.pb-discount-chip--offset-frame {
    align-items: center;
    background: var(--pb-dc-offset-frame-bg);
    border: var(--pb-dc-offset-frame-border-width) solid var(--pb-dc-offset-frame-border);
    border-radius: var(--pb-dc-offset-frame-radius);
    box-shadow: var(--pb-dc-offset-frame-shadow-x) var(--pb-dc-offset-frame-shadow-y) 0 var(--pb-dc-offset-frame-shadow);
    color: var(--pb-dc-offset-frame-text);
    display: inline-flex;
    gap: var(--pb-dc-offset-frame-inner-gap);
    height: var(--pb-dc-offset-frame-height);
    padding: 0 var(--pb-dc-offset-frame-pad-x);
    white-space: nowrap;
}

.pb-dc-offset-frame__pct {
    color: var(--pb-dc-offset-frame-text);
    font-size: var(--pb-dc-offset-frame-pct-size);
    font-weight: 850;
    line-height: 1;
}

.pb-dc-offset-frame__copy {
    color: var(--pb-dc-offset-frame-text);
    font-size: var(--pb-dc-offset-frame-copy-size);
    font-weight: 700;
    line-height: 1;
}

/* Template 15 — Savings Ladder */
.pb-discount-chip.pb-discount-chip--ladder {
    display: inline-grid;
    gap: var(--pb-dc-ladder-row-gap);
    line-height: 1;
}

.pb-dc-ladder__row {
    align-items: center;
    display: inline-flex;
    gap: var(--pb-dc-ladder-inner-gap);
    white-space: nowrap;
}

.pb-dc-ladder__row--top {
    color: var(--pb-dc-ladder-top-color);
    font-size: var(--pb-dc-ladder-pct-size);
    font-weight: 800;
}

.pb-dc-ladder__row--bottom {
    color: var(--pb-dc-ladder-bottom-color);
    font-size: var(--pb-dc-ladder-amount-size);
    font-weight: 750;
}

.pb-dc-ladder__bar {
    background: var(--pb-dc-ladder-bar-color);
    border-radius: 999px;
    display: inline-block;
    flex: 0 0 auto;
    height: var(--pb-dc-ladder-bar-height);
}

.pb-dc-ladder__bar--top {
    width: var(--pb-dc-ladder-top-bar-width);
}

.pb-dc-ladder__bar--bottom {
    opacity: .45;
    width: var(--pb-dc-ladder-bottom-bar-width);
}

/* Template 16 — Compact Seal */
.pb-discount-chip.pb-discount-chip--seal {
    align-items: center;
    background: var(--pb-dc-seal-bg);
    border: var(--pb-dc-seal-border-width) solid var(--pb-dc-seal-border);
    border-radius: 50%;
    color: var(--pb-dc-seal-text);
    display: inline-flex;
    height: var(--pb-dc-seal-size);
    justify-content: center;
    text-align: center;
    width: var(--pb-dc-seal-size);
}

.pb-dc-seal__inner {
    color: var(--pb-dc-seal-text);
    display: inline-grid;
    line-height: var(--pb-dc-seal-line-height);
    letter-spacing: var(--pb-dc-seal-letter-spacing);
    place-items: center;
}

.pb-dc-seal__inner strong {
    display: block;
    font-size: var(--pb-dc-seal-pct-size);
    font-weight: var(--pb-dc-seal-pct-weight);
    letter-spacing: -.02em;
}

.pb-dc-seal__suffix {
    display: block;
    font-size: var(--pb-dc-seal-suffix-size);
    font-weight: var(--pb-dc-seal-suffix-weight);
}

.pb-dc-seal__suffix.is-uppercase {
    text-transform: uppercase;
}

.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--offset-frame,
.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--seal {
    display: inline-flex !important;
}

.productboost-discount-chip-preview-template.is-active-template.pb-discount-chip--ladder {
    display: inline-grid !important;
}
