/* CORVE Bundles – textale-style black/white look, green offer accents, espresso as a subtle brand touch. Jost. Mobile-first.
   All colors are CSS variables; override in Additional CSS if needed. */
.corve-bundles{--cb-ink:#111;--cb-accent:#2e7d4f;--cb-pill-bg:#e8f3ec;--cb-pill-ink:#2e7d4f;--cb-line:#dcdcdc;--cb-muted:#9b9b9b;--cb-bg:#fff;--cb-ok:#3bb54a;--cb-brand:#3b2a20;
	font-family:'Jost',system-ui,sans-serif;color:var(--cb-ink);margin:22px 0 10px;width:100%;clear:both}
.corve-bundles__heading{text-align:center;font-size:15px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin:6px 0 14px}
.corve-bundles__cards{display:flex;flex-direction:column;gap:12px}
.corve-card{position:relative;display:block;margin:0;padding:16px 16px;background:var(--cb-bg);border:1px solid var(--cb-line);border-radius:8px;cursor:pointer;font-weight:400;transition:border-color .15s}
.corve-card:hover{border-color:#bdbdbd}
.corve-card.is-selected{border:2px solid var(--cb-ink);padding:15px}
.corve-card__radio{position:absolute;opacity:0;pointer-events:none}
.corve-card__badge{position:absolute;top:-11px;right:12px;background:var(--cb-ink);color:#fff;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1;padding:5px 8px;border-radius:3px}
.corve-card__head{display:flex;align-items:center;gap:14px}
.corve-card__dot{flex:0 0 20px;height:20px;border-radius:50%;border:1.5px solid #b5b5b5;position:relative;background:#fff}
.corve-card.is-selected .corve-card__dot{border-color:var(--cb-ink)}
.corve-card.is-selected .corve-card__dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--cb-ink)}
.corve-card__radio:focus-visible ~ .corve-card__head .corve-card__dot{outline:2px solid var(--cb-ink);outline-offset:2px}
.corve-card__text{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px;line-height:1.2}
.corve-card__title{font-size:16px;font-weight:400;letter-spacing:.02em;text-transform:uppercase}
.corve-card[data-tier="single"] .corve-card__title{text-transform:none}
.corve-card__sub{font-size:13px;color:var(--cb-muted)}
.corve-card__pill{display:inline-block;background:var(--cb-pill-bg);color:var(--cb-pill-ink);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border-radius:3px}
.corve-card__price{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;white-space:nowrap}
.corve-card__now{font-size:16px;font-weight:600;color:var(--cb-accent)}
.corve-card__was{font-size:13px;color:var(--cb-muted)}
.corve-card__was:empty{display:none}
.corve-card__rows{display:flex;flex-direction:column;gap:10px}
.corve-card__rows:not(:empty){margin-top:14px;padding-top:14px;border-top:1px solid var(--cb-line)}
.corve-rows__label{font-size:12px;color:var(--cb-muted);margin-bottom:-2px}
.corve-row{display:flex;align-items:center;gap:8px}
.corve-bundles .corve-row__thumb{display:block;flex:0 0 44px;width:44px;height:52px;max-width:none;object-fit:cover;object-position:center top;border-radius:6px;background:#f2f2f2;border:1px solid var(--cb-line);margin:0}
.corve-bundles .corve-row__select{height:30px;min-width:0;padding:0 22px 0 8px;border:1px solid #cfcfcf;border-radius:6px;background-color:#fff;font:inherit;font-size:13px;color:var(--cb-ink);margin:0}
.corve-bundles .corve-row__select--0{flex:0 1 128px}
.corve-bundles .corve-row__select--1{flex:0 0 74px}
.corve-row__select:focus{border-color:var(--cb-ink);outline:none}
.corve-row__free{margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.06em;background:var(--cb-pill-bg);color:var(--cb-pill-ink);padding:3px 6px;border-radius:3px}
.corve-bundles__msg{margin:10px 0 0;font-size:13px;color:#9b3b2b}
.corve-bundles .corve-bundles__add{display:block;width:100%;margin-top:14px;min-height:50px;border:0;border-radius:0;background:var(--cb-ink);color:#fff;font-family:inherit;font-size:15px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:none}
.corve-bundles .corve-bundles__add:hover{background:var(--cb-brand)}
.corve-bundles .corve-bundles__add[disabled]{opacity:.6;cursor:wait}
.corve-bundles__info{list-style:none;margin:14px 0 0;padding:0;font-size:13px;color:#555}
.corve-info{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:0}
.corve-info:before{content:"";flex:0 0 10px;height:10px;border-radius:50%;background:var(--cb-line)}
.corve-info--dot:before{background:var(--cb-ok)}
.corve-info--truck:before,.corve-info--box:before{border-radius:2px;background:#fff;border:1px solid #777;height:8px}
/* The plugin's button is always used; hide the native one + qty on enabled products. */
.variations_form .single_variation_wrap .corve-bundles ~ .woocommerce-variation-add-to-cart,
.variations_form .corve-bundles ~ .woocommerce-variation-add-to-cart{display:none!important}
@media (min-width:768px){.corve-card{padding:18px 20px}.corve-card.is-selected{padding:17px 19px}.corve-card__title,.corve-card__now{font-size:17px}.corve-bundles .corve-row__select--0{flex-basis:150px}}
/* ---- Top options: round color swatches + square size buttons (textale style) ---- */
.variations_form.corve-has-opts table.variations,.variations_form.corve-has-opts .wd-swatches-product,.variations_form.corve-active .woocommerce-variation-price,.variations_form.corve-active .woocommerce-variation-add-to-cart{display:none!important}
.corve-opts{margin:0 0 22px}
.corve-opt{margin:0 0 18px}
.corve-opt__head{display:flex;align-items:center;gap:14px;margin:0 0 10px;font-size:15px}
.corve-opt__label b{font-weight:600}
.corve-opt--color .corve-opt__label{flex:1}
.corve-opt__count{font-size:12px;color:var(--cb-muted)}
.corve-opt__chart{display:inline-flex;align-items:center;gap:6px;color:var(--cb-ink);text-decoration:underline;text-underline-offset:3px;font-size:15px}
.corve-opt__list{display:flex;flex-wrap:wrap;gap:10px}
.corve-bundles .corve-swatch{width:44px;height:44px;padding:3px;margin:0;border-radius:50%;border:1.5px solid #e2e2e2;background:#fff;cursor:pointer;line-height:0;box-shadow:none;min-height:0}
.corve-bundles .corve-swatch.is-selected{border-color:var(--cb-ink)}
.corve-swatch__dot{display:block;width:100%;height:100%;border-radius:50%;background:#ddd center/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.corve-bundles .corve-swatch.is-soldout{opacity:.35;cursor:not-allowed}
.corve-bundles .corve-size{flex:1 0 54px;max-width:72px;height:44px;margin:0;padding:0 8px;border:1px solid #cfcfcf;border-radius:0;background:#fff;color:var(--cb-ink);font:inherit;font-size:14px;cursor:pointer;min-height:0;box-shadow:none;letter-spacing:0;text-transform:none}
.corve-bundles .corve-size.is-selected{border:2px solid var(--cb-ink)}
.corve-bundles .corve-size.is-soldout{background:#efefef;border-color:#e6e6e6;color:#b5b5b5;cursor:not-allowed}
.corve-bundles .corve-swatch:focus-visible,.corve-bundles .corve-size:focus-visible{outline:2px solid var(--cb-ink);outline-offset:2px}
.corve-info svg{flex:0 0 16px;color:#666}
.corve-bundles .corve-info:before{display:none}
/* Optional brand theme: add_filter('corve_bundles_theme', fn() => 'espresso'); */
.corve-bundles.corve-theme-espresso{--cb-ink:#3b2a20;--cb-accent:#6a4a32;--cb-pill-bg:#efe4d4;--cb-pill-ink:#5a3f2b;--cb-line:#e3dbd0}
