/* Shared live price, quantity and total-order progress. */
html body .wholesale-prices { display:grid; width:100%; min-width:0; gap:12px; margin:0; padding:10px; border:1px solid #dce4dd; border-radius:12px; background:#f7f8f4; color:#1e3a2b; text-align:left; }
html body [data-wholesale-current-price] { display:grid; gap:5px; min-width:0; }
html body .wholesale-prices-caption, html body .wholesale-prices-note { margin:0; padding:0; color:#58695f; font-size:12px; font-weight:400; line-height:1.4; }
html body .wholesale-prices-single { margin:0; padding:0; font-size:23px; font-weight:750; line-height:1.2; font-variant-numeric:tabular-nums; }
html body .wholesale-price-saving { margin:0; color:#2d6548; font-size:12px; font-weight:700; line-height:1.4; }
html body .wholesale-price-saving[hidden] { display:none; }
html body .wholesale-quantity { display:grid; gap:6px; padding-top:10px; border-top:1px solid #dce4dd; min-width:0; }
html body .wholesale-quantity-caption { color:#41594a; font-size:12px; line-height:1.4; }
html body .wholesale-quantity-stepper { display:grid; grid-template-columns:32px minmax(0,1fr) 32px; align-items:center; min-width:0; border:1px solid #cedbcf; border-radius:9px; background:white; overflow:hidden; }
html body .wholesale-quantity-stepper button { display:grid; place-items:center; width:100%; min-width:0; height:40px; min-height:40px; padding:0; margin:0; border:0; border-radius:0; background:#eaf0e5; color:#1e3a2b; font-weight:700; font-family:inherit; line-height:1; font-size:23px; cursor:pointer; box-shadow:none; }
html body .wholesale-quantity-stepper button:disabled { opacity:.4; cursor:default; }
html body .wholesale-quantity-stepper label { display:flex; align-items:center; gap:0; padding:0; margin:0; min-width:0; }
html body .wholesale-quantity-stepper input { width:100%; min-width:0; height:40px; padding:4px 0; border:0; border-radius:0; background:white; color:#1e3a2b; text-align:center; font-size:15px; font-weight:700; appearance:textfield; -moz-appearance:textfield; box-shadow:none; }
html body .wholesale-quantity-stepper input::-webkit-inner-spin-button, html body .wholesale-quantity-stepper input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
html body .wholesale-quantity-stepper label span { font-size:12px; padding-right:3px; }
html body .wholesale-quantity small { font-size:11px; color:#58695f; line-height:1.4; }
html body .wholesale-quantity-stepper :focus-visible { outline:2px solid #1e3a2b; outline-offset:-3px; }
html body .wholesale-prices--detail { margin:20px 0; padding:16px; gap:16px; }
html body .wholesale-prices--detail .wholesale-prices-single { font-size:32px; }
html body .wholesale-prices--detail .wholesale-prices-caption, html body .wholesale-prices--detail .wholesale-prices-note { font-size:14px; }
html body .wholesale-prices--detail .wholesale-quantity-stepper { max-width:280px; grid-template-columns:44px minmax(0,1fr) 44px; }
html body .wholesale-order-summary { display:block; min-width:0; margin:0 0 16px; padding:0; background:#f3f6ef; border:1px solid #dce4dd; border-radius:14px; color:#1e3a2b; text-align:left; }
html body .wholesale-order-summary[hidden] { display:none; }
html body .wholesale-order-summary > div, html body .wholesale-order-progress { display:grid; gap:5px; }
html body .wholesale-order-summary strong { font-size:17px; line-height:1.3; }
html body .wholesale-order-summary span, html body .wholesale-order-summary a, html body .wholesale-order-summary b { font-size:13px; line-height:1.5; }
html body .wholesale-order-summary a { color:#1e3a2b; font-weight:700; }
html body .wholesale-order-summary progress { display:block; width:100%; height:6px; border:0; border-radius:10px; overflow:hidden; background:#dce4dd; accent-color:#386c4e; }
html body .wholesale-order-summary progress::-webkit-progress-bar { background:#dce4dd; }
html body .wholesale-order-summary progress::-webkit-progress-value { background:#386c4e; transition:width .2s; }
html body .wholesale-order-summary--detail { grid-template-columns:1fr; margin:20px 0 0; }
html body .wholesale-order-summary--detail strong { font-size:15px; }
html body .wholesale-summary-disclosure { margin:0; padding:0; border:0; background:none; color:inherit; }
html body .wholesale-summary-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; margin:0; padding:12px 14px; border:0; border-radius:14px; background:none; color:inherit; list-style:none; cursor:pointer; text-align:left; }
html body .wholesale-summary-disclosure > summary::-webkit-details-marker { display:none; }
html body .wholesale-summary-disclosure > summary::marker { content:''; }
html body .wholesale-summary-disclosure > summary::before, html body .wholesale-summary-disclosure > summary::after { content:none; }
html body .wholesale-summary-disclosure > summary:focus-visible { outline:2px solid #35664b; outline-offset:3px; }
html body .wholesale-summary-heading { display:grid; gap:4px; min-width:0; }
html body .wholesale-summary-heading > strong { font-size:15px; line-height:1.35; }
html body .wholesale-summary-heading > span { color:#536659; font-size:12px; line-height:1.4; font-variant-numeric:tabular-nums; }
html body .wholesale-summary-chevron { flex:0 0 9px; width:9px; height:9px; margin:0 3px 4px; border:solid currentColor; border-width:0 2px 2px 0; transform:rotate(45deg); }
html body .wholesale-summary-disclosure[open] .wholesale-summary-chevron { transform:rotate(225deg); margin-block:4px 0; }
html body .wholesale-summary-body { display:grid; gap:14px; margin:0 14px; padding:14px 0; border-top:1px solid #dce4dd; font-size:13px; line-height:1.5; }
html body .wholesale-summary-disclosure:not([open]) > .wholesale-summary-body { display:none; }
html body .wholesale-summary-conditions { color:#536659; }
@media (min-width:769px) { html body .wholesale-summary-body { grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; align-items:start; gap:24px; } }
html body .wholesale-order-summary--detail .wholesale-summary-body, html body [data-opt-cart-milestone] .wholesale-summary-body { grid-template-columns:minmax(0,1fr); }

/* One fixed 0–10 kg axis: crossing a price tier never resets the fill. */
html body .wholesale-weight-scale { display:grid; gap:10px; min-width:0; margin:8px 0 2px; color:#536659; text-align:left; }
html body .wholesale-weight-heading { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:3px 8px; min-width:0; }
html body .wholesale-weight-heading span { font-size:11px; line-height:1.35; }
html body .wholesale-weight-heading strong { color:#1e3a2b; font-size:13px; font-weight:750; line-height:1.35; white-space:nowrap; font-variant-numeric:tabular-nums; }
html body .wholesale-weight-axis { position:relative; height:49px; margin-inline:0; }
html body .wholesale-weight-track { position:absolute; inset:0 0 auto; height:6px; border-radius:6px; background:#dce4dd; overflow:hidden; }
html body .wholesale-weight-track > span { display:block; height:100%; border-radius:6px; background:#35664b; }
html body .wholesale-weight-stop { position:absolute; top:0; left:var(--stop); display:grid; gap:2px; padding-top:14px; text-align:center; transform:translateX(-50%); white-space:nowrap; }
html body .wholesale-weight-stop:last-child { transform:translateX(-100%); text-align:right; }
html body .wholesale-weight-stop > i { position:absolute; top:-1px; left:50%; width:8px; height:8px; border:2px solid #b5c5b6; border-radius:50%; background:#f7f8f4; transform:translateX(-50%); }
html body .wholesale-weight-stop:last-child > i { left:100%; }
html body .wholesale-weight-stop > b { color:#637267; font-size:11px; font-weight:600; line-height:1.2; }
html body .wholesale-weight-stop > small { color:#637267; font-size:10px; font-weight:500; line-height:1.2; }
html body .wholesale-weight-stop.is-reached > i { border-color:#35664b; background:#35664b; }
html body .wholesale-weight-stop.is-current > i { box-shadow:0 0 0 3px #c9dbc2; }
html body .wholesale-weight-stop.is-reached > b, html body .wholesale-weight-stop.is-reached > small { color:#1e3a2b; font-weight:750; }
html body .wholesale-prices--detail .wholesale-weight-scale { max-width:360px; }
html body .wholesale-order-summary .wholesale-weight-axis, html body .opt-cart-milestone .wholesale-weight-axis { height:31px; }
html body .wholesale-order-summary .wholesale-weight-heading { display:none; }
/* Catalog-wide small-text rules must not enlarge the compact tick captions. */
html body .wholesale-prices[data-wholesale-pricing] .wholesale-weight-scale .wholesale-weight-stop > b { font-size:11px !important; }
html body .wholesale-prices[data-wholesale-pricing] .wholesale-weight-scale .wholesale-weight-stop > small { font-size:10px !important; }
html body .wholesale-prices--packed .wholesale-weight-axis { height:31px; }

/* Card-scale disclosure: price and quantity remain usable when the chart is hidden. */
html body .wholesale-price-disclosure { min-width:0; margin:0; padding:0; border:0; background:none; color:inherit; }
html body .wholesale-price-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; margin:0; padding:4px 0; border:0; background:none; color:#1e3a2b; cursor:pointer; list-style:none; text-align:left; font-size:12px; font-weight:700; line-height:1.4; }
html body .wholesale-price-disclosure > summary::-webkit-details-marker { display:none; }
html body .wholesale-price-disclosure > summary::marker { content:''; }
html body .wholesale-price-disclosure > summary::before, html body .wholesale-price-disclosure > summary::after { content:none; }
html body .wholesale-price-disclosure > summary:focus-visible { outline:2px solid #35664b; outline-offset:3px; border-radius:4px; }
html body .wholesale-price-disclosure > summary > span { display:grid; gap:2px; min-width:0; font-size:12px; }
html body .wholesale-price-disclosure > summary small, html body .wholesale-price-disclosure > summary b { font-size:11px; font-weight:400; color:#536659; line-height:1.4; }
html body .wholesale-price-disclosure > summary b { font-weight:700; font-variant-numeric:tabular-nums; }
html body .wholesale-price-disclosure[open] .wholesale-summary-chevron { transform:rotate(225deg); margin-block:4px 0; }
html body .wholesale-price-progress-body { display:grid; gap:8px; padding:4px 0 0; }
html body .wholesale-price-disclosure:not([open]) > .wholesale-price-progress-body { display:none; }
html body .wholesale-price-progress-body .wholesale-weight-heading { display:none; }
