/* Scoped styles; no theme-wide price overrides. */
.bf15-price { display: inline-flex; flex-direction: column; align-items: flex-start; gap: .35rem; max-width: 100%; line-height: 1.35; font-style: normal; }
.bf15-badge { display: inline-block; padding: .32em .65em; border-radius: 5px; background: #131313; color: #ffe400; font-size: .76rem; font-weight: 850; letter-spacing: .035em; line-height: 1.35; }
.bf15-price .bf15-price-values { display: flex; align-items: baseline; flex-wrap: wrap; column-gap: .5em; row-gap: .2em; }
.bf15-price .bf15-price-values del { color: #626262 !important; opacity: 1 !important; font-size: .82em; font-weight: 400; }
.bf15-price .bf15-price-values ins { background: transparent !important; color: #b01925 !important; font-size: 1.28em; font-weight: 850; text-decoration: none !important; }
.bf15-price .bf15-price-values ins .amount { color: inherit !important; }
.bf15-saving { color: #235c35; font-size: .76rem; font-weight: 700; }
.bf15-deadline { color: #565656; font-size: .69rem; font-weight: 400; }
.woocommerce span.onsale.bf15-sale-flash, .bf15-sale-flash { display: block; background: #ffe400 !important; color: #121212 !important; border-radius: 5px !important; line-height: 1.35 !important; padding: .65em !important; min-height: 0 !important; min-width: 0 !important; font-size: .78rem !important; font-weight: 850; }
.bf15-banner { background: #121212; color: #fff; border-bottom: 4px solid #ffe400; width: 100%; box-sizing: border-box; position: relative; z-index: 20; }
.bf15-banner-inner { max-width: 1240px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding: 17px 24px; box-sizing: border-box; }
.bf15-banner strong { display: block; color: #fff; font: 850 clamp(1.15rem, 3vw, 1.65rem)/1.2 system-ui, sans-serif; letter-spacing: .04em; }
.bf15-banner strong span { color: #ffe400; white-space: nowrap; }
.bf15-banner p { margin: 6px 0 0; color: #eee; font-size: .8rem; line-height: 1.5; }
.bf15-banner-time { display: flex; flex-direction: column; gap: 3px; text-align: right; }
.bf15-banner-time span { color: #ddd; font-size: .76rem; }
.bf15-banner-time b { color: #ffe400; font: 750 1.3rem/1.4 ui-monospace, monospace; letter-spacing: .06em; }
.bf15-cart-message th, .bf15-cart-message td { background: #fff7cc; color: #242424; font-size: .87rem; }
.bf15-refresh { box-sizing: border-box; position: fixed; bottom: 16px; left: 16px; right: 16px; z-index: 999990; margin: 0 auto; max-width: 780px; display: flex; align-items: center; gap: 12px; padding: 16px; border: 2px solid #ffe400; border-radius: 8px; box-shadow: 0 8px 32px #0004; background: #121212; color: #fff; font: 500 14px/1.5 system-ui, sans-serif; }
.bf15-refresh button { border: 0; border-radius: 5px; padding: 10px 16px; cursor: pointer; background: #ffe400; color: #121212; font: 750 14px/1.3 system-ui, sans-serif; flex-shrink: 0; }
.bf15-refresh button:focus-visible { outline: 3px solid white; outline-offset: 3px; }
@media (max-width: 600px) {
    .bf15-banner-inner { padding: 14px 16px; gap: 9px; }
    .bf15-banner-time { text-align: left; }
    .bf15-banner-time b { font-size: 1.12rem; }
    .bf15-refresh { left: 10px; right: 10px; bottom: 10px; flex-direction: column; align-items: stretch; }
    .bf15-deadline { font-size: .65rem; }
}
