:root {
    --cbcc-black:#000000;
    --cbcc-red:#ff0000;
    --cbcc-green:#188450;
    --cbcc-yellow:#ffcc00;
    --cbcc-blue:#1800ad;
    --cbcc-ink:#252a33;
    --cbcc-muted:#66707d;
    --cbcc-line:#dfe3e8;
    --cbcc-soft:#f6f7f9;
    --cbcc-white:#ffffff;
    --cbcc-radius:18px;
    --cbcc-shadow:0 18px 52px rgba(18,24,35,.20);
}

[hidden]{display:none!important}
.cbcc-native-hidden,.cbcc-fallback-host,.cbcc-modal-marker{display:none!important}

/* Product-page launcher */
.cbcc-launcher{
    position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;
    margin:18px 0;padding:18px 18px 18px 22px;border:1px solid var(--cbcc-line);border-radius:16px;
    background:#fff;box-shadow:0 6px 20px rgba(20,29,43,.07);overflow:hidden;cursor:pointer;
    transition:border-color .14s ease,box-shadow .14s ease;
}
.cbcc-launcher:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--cbcc-black) 0 20%,var(--cbcc-red) 20% 40%,var(--cbcc-green) 40% 60%,var(--cbcc-yellow) 60% 80%,var(--cbcc-blue) 80%)}
.cbcc-launcher:hover{border-color:#cbd1d9;box-shadow:0 8px 24px rgba(20,29,43,.10)}
.cbcc-launcher-copy{display:flex;flex-direction:column;min-width:0}
.cbcc-launcher-eyebrow,.cbcc-eyebrow,.cbcc-modal-eyebrow{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--cbcc-green)}
.cbcc-launcher-copy strong{font-size:18px;line-height:1.25;color:var(--cbcc-ink);margin-top:3px}
.cbcc-launcher-description{font-size:14px;line-height:1.45;color:var(--cbcc-muted);margin-top:4px}
.cbcc-launcher-summary{grid-column:1/-1;display:flex;flex-direction:column;padding:11px 13px;border-radius:10px;background:var(--cbcc-soft);border-left:4px solid var(--cbcc-green)}
.cbcc-launcher-selection{font-weight:700;color:var(--cbcc-ink);line-height:1.35}
.cbcc-launcher-meta{font-size:13px;color:var(--cbcc-muted);margin-top:2px}
.cbcc-open-selector{white-space:nowrap;min-height:46px!important;padding:0 20px!important;border-radius:10px!important;background:var(--cbcc-blue)!important;border-color:var(--cbcc-blue)!important;color:#fff!important;font-weight:700!important}
.cbcc-launcher.has-selection .cbcc-open-selector{background:var(--cbcc-green)!important;border-color:var(--cbcc-green)!important}

/* Modal shell: no backdrop blur or large animated transforms; these caused sustained GPU use. */
html.cbcc-modal-open,body.cbcc-modal-open{overflow:hidden!important;overscroll-behavior:none!important}
.cbcc-modal-layer{
    position:fixed;z-index:999999;inset:0;display:flex;align-items:center;justify-content:center;padding:28px;
    background:rgba(10,14,22,.68);opacity:0;transition:opacity .12s linear;isolation:isolate;
}
.cbcc-modal-layer.is-open{opacity:1}
.cbcc-modal-backdrop{
    position:absolute!important;z-index:0!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
    box-shadow:none!important;outline:0!important;cursor:default!important;appearance:none!important;
}
.cbcc-modal-dialog{
    position:relative;z-index:1;display:flex;flex-direction:column;width:min(980px,100%);max-height:min(860px,calc(100vh - 56px));
    background:#fff;border-radius:22px;box-shadow:var(--cbcc-shadow);overflow:hidden;contain:layout paint style;
}
.cbcc-modal-stripe{display:grid;grid-template-columns:repeat(5,1fr);height:8px;flex:0 0 auto}
.cbcc-modal-stripe i{display:block!important;min-width:0!important}
.cbcc-modal-stripe i:nth-child(1){background:var(--cbcc-black)}
.cbcc-modal-stripe i:nth-child(2){background:var(--cbcc-red)}
.cbcc-modal-stripe i:nth-child(3){background:var(--cbcc-green)}
.cbcc-modal-stripe i:nth-child(4){background:var(--cbcc-yellow)}
.cbcc-modal-stripe i:nth-child(5){background:var(--cbcc-blue)}
.cbcc-modal-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:24px 28px 20px;border-bottom:1px solid var(--cbcc-line);background:#fff}
.cbcc-modal-header h2{font-size:26px!important;line-height:1.2!important;margin:3px 0 4px!important;color:var(--cbcc-ink)!important}
.cbcc-modal-header p{max-width:720px;margin:0;color:var(--cbcc-muted);font-size:14px;line-height:1.5}
button.cbcc-modal-close{
    display:grid!important;place-items:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;
    margin:0!important;padding:0!important;border:1px solid var(--cbcc-line)!important;border-radius:50%!important;
    background:#fff!important;color:var(--cbcc-ink)!important;box-shadow:none!important;font-size:28px!important;line-height:1!important;cursor:pointer!important;
}
button.cbcc-modal-close:hover,button.cbcc-modal-close:focus{background:var(--cbcc-soft)!important;border-color:#bfc5cd!important;color:var(--cbcc-ink)!important}
.cbcc-modal-body{min-height:0;overflow:auto;padding:0 28px 28px;overscroll-behavior:contain;scrollbar-gutter:stable}
.cbcc-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:15px 28px;border-top:1px solid var(--cbcc-line);background:#fff;box-shadow:0 -5px 16px rgba(18,24,35,.04)}
.cbcc-modal-footer:empty{display:none}
.cbcc-use-selection{min-height:46px!important;padding:0 24px!important;border-radius:10px!important;background:var(--cbcc-green)!important;border-color:var(--cbcc-green)!important;color:#fff!important;font-weight:700!important}
.cbcc-use-selection:disabled{opacity:.42!important;cursor:not-allowed!important}

/* Selector content */
.cbcc-selector{margin:0;padding:0;background:#fff;color:var(--cbcc-ink)}
.cbcc-selector-intro{padding:22px 0 4px}
.cbcc-selector-intro h3,.cbcc-selector-intro p{display:none}
.cbcc-field{position:relative;margin:0 0 18px}
.cbcc-field label{display:block;margin:0 0 7px;font-size:14px;font-weight:750;color:var(--cbcc-ink)}
.cbcc-selector .cbcc-field input,.cbcc-selector .cbcc-field select,.cbcc-selector .cbcc-field textarea{
    width:100%!important;max-width:100%!important;box-sizing:border-box!important;min-height:48px!important;
    margin:0!important;padding:10px 13px!important;border:1px solid #cbd1d8!important;border-radius:10px!important;
    background:#fff!important;color:var(--cbcc-ink)!important;font:inherit!important;line-height:1.35!important;
    box-shadow:none!important;outline:none!important;transition:border-color .12s ease,box-shadow .12s ease!important;
}
.cbcc-selector .cbcc-field textarea{min-height:110px!important;resize:vertical}
.cbcc-selector .cbcc-field input:focus,.cbcc-selector .cbcc-field select:focus,.cbcc-selector .cbcc-field textarea:focus{border-color:var(--cbcc-blue)!important;box-shadow:0 0 0 3px rgba(24,0,173,.10)!important}
.cbcc-selector .cbcc-field input:disabled,.cbcc-selector .cbcc-field select:disabled{background:#f0f2f4!important;color:#9aa1aa!important;cursor:not-allowed}
.cbcc-primary-search{margin-top:12px}
.cbcc-search-wrap{position:relative;display:block}
.cbcc-selector .cbcc-search-wrap input[type="search"]{padding-left:56px!important;padding-right:42px!important;text-indent:0!important;background-image:none!important;-webkit-appearance:none!important;appearance:none!important}
.cbcc-search-icon{position:absolute!important;z-index:2!important;left:18px!important;top:50%!important;display:block!important;box-sizing:border-box!important;width:16px!important;height:16px!important;border:2px solid #66707d!important;border-radius:50%!important;transform:translateY(-58%)!important;pointer-events:none!important}
.cbcc-search-icon:after{content:"";position:absolute;width:7px;height:2px;background:#66707d;right:-6px;bottom:-3px;transform:rotate(45deg);border-radius:2px}
.cbcc-selector input[type="search"]::-webkit-search-decoration{-webkit-appearance:none!important}.cbcc-selector input[type="search"]::-webkit-search-cancel-button{margin-right:2px}
.cbcc-help{margin:7px 0 0;font-size:13px;line-height:1.45;color:var(--cbcc-muted)}
.cbcc-grid,.cbcc-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cbcc-config-grid{grid-template-columns:minmax(0,1fr) 150px;margin-top:20px}
.cbcc-qty-field{max-width:none}
.cbcc-selection{margin:18px 0 0;padding:14px 16px;border-left:5px solid var(--cbcc-green);border-radius:8px;background:#f1f8f5;color:#1d4e39;font-weight:700;line-height:1.45}
.cbcc-live-price{margin:14px 0;font-size:22px;font-weight:800;color:var(--cbcc-ink)}
.cbcc-live-price .price{font-size:inherit!important}
.cbcc-notice,.cbcc-error{padding:12px 14px;margin-top:12px;border-radius:9px;font-size:14px;line-height:1.45}
.cbcc-notice{background:#f5f4ff;color:#332596;border-left:4px solid var(--cbcc-blue)}
.cbcc-error{background:#fff0f0;color:#8a1f1f;border-left:4px solid var(--cbcc-red)}
.cbcc-add-landing{width:100%;min-height:50px!important;margin-top:4px!important;border-radius:10px!important;background:var(--cbcc-green)!important;border-color:var(--cbcc-green)!important;color:#fff!important;font-weight:800!important;font-size:16px!important}
.cbcc-add-landing:disabled{opacity:.42!important}

/* RAL family controls and approximate screen swatches. */
.cbcc-family-browser{margin:5px 0 20px}
.cbcc-family-browser>span{display:block;margin-bottom:9px;font-size:13px;font-weight:700;color:var(--cbcc-muted)}
.cbcc-family-chips{display:flex;flex-wrap:wrap;gap:8px}
button.cbcc-family-chip{
    appearance:none!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
    gap:8px!important;min-height:40px!important;height:auto!important;margin:0!important;padding:8px 13px!important;
    border:1px solid #cfd5dc!important;border-radius:999px!important;background:#fff!important;color:var(--cbcc-ink)!important;
    box-shadow:none!important;font:inherit!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important;
    letter-spacing:0!important;text-transform:none!important;text-align:left!important;white-space:nowrap!important;cursor:pointer!important;
}
button.cbcc-family-chip:hover,button.cbcc-family-chip:focus,button.cbcc-family-chip.is-active{border-color:var(--cbcc-blue)!important;background:#f7f6ff!important;color:var(--cbcc-ink)!important;box-shadow:0 0 0 2px rgba(24,0,173,.07)!important}
.cbcc-family-dot{display:block!important;box-sizing:border-box!important;flex:0 0 16px!important;width:16px!important;min-width:16px!important;height:16px!important;margin:0!important;border-radius:50%!important;border:1px solid rgba(0,0,0,.16)!important;background:#ddd}
.cbcc-family-1 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-1 .cbcc-card-swatch{background:#e0ba16}
.cbcc-family-2 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-2 .cbcc-card-swatch{background:#d97019}
.cbcc-family-3 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-3 .cbcc-card-swatch{background:#b9292b}
.cbcc-family-4 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-4 .cbcc-card-swatch{background:#71405f}
.cbcc-family-5 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-5 .cbcc-card-swatch{background:#245788}
.cbcc-family-6 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-6 .cbcc-card-swatch{background:#28714a}
.cbcc-family-7 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-7 .cbcc-card-swatch{background:#747a7b}
.cbcc-family-8 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-8 .cbcc-card-swatch{background:#74513d}
.cbcc-family-9 .cbcc-family-dot,.cbcc-colour-card.cbcc-family-9 .cbcc-card-swatch{background:linear-gradient(135deg,#f7f7f5 0 48%,#252525 52% 100%)}
.cbcc-ral-screen-note{margin:0 0 10px;font-size:12.5px;line-height:1.45;color:var(--cbcc-muted)}

/* Results: explicit button reset prevents the theme from stacking and centring card contents. */
.cbcc-results{margin-top:8px;border:1px solid var(--cbcc-line);border-radius:14px;background:#f7f8fa;overflow:auto;max-height:390px;overscroll-behavior:contain;scrollbar-gutter:stable;contain:layout paint style}
.cbcc-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;border:0;max-height:430px}
button.cbcc-result{
    appearance:none!important;display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;align-items:stretch!important;justify-content:stretch!important;
    width:100%!important;min-width:0!important;min-height:96px!important;height:auto!important;margin:0!important;padding:0!important;
    overflow:hidden!important;border:1px solid #d8dde4!important;border-radius:14px!important;background:#fff!important;color:var(--cbcc-ink)!important;
    box-shadow:0 1px 2px rgba(20,29,43,.045)!important;text-align:left!important;font:inherit!important;line-height:1.3!important;
    letter-spacing:0!important;text-transform:none!important;cursor:pointer!important;transition:border-color .1s linear,background-color .1s linear!important;
    contain:layout paint style;
}
button.cbcc-result:hover,button.cbcc-result:focus{border-color:#9fa8b3!important;background:#fbfcfd!important;color:var(--cbcc-ink)!important;box-shadow:0 1px 2px rgba(20,29,43,.045)!important;outline:none!important}
button.cbcc-result:focus-visible{box-shadow:0 0 0 3px rgba(24,0,173,.13)!important}
button.cbcc-result:disabled{cursor:not-allowed!important;opacity:.5!important;box-shadow:none!important}
.cbcc-card-swatch{
    display:block!important;box-sizing:border-box!important;align-self:stretch!important;flex:none!important;width:76px!important;min-width:76px!important;
    height:100%!important;min-height:96px!important;margin:0!important;border:0!important;border-right:1px solid rgba(0,0,0,.12)!important;
    border-radius:0!important;background:var(--cbcc-ral-hex,#d7dbe0)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;
}
.cbcc-neutral-swatch{background:linear-gradient(145deg,#f2f4f6,#c8ced5)!important}
.cbcc-card-copy{display:flex!important;min-width:0!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;padding:13px 15px!important;text-align:left!important}
.cbcc-card-copy strong{display:block!important;margin:0!important;font-size:15.5px!important;line-height:1.25!important;color:var(--cbcc-ink)!important;text-align:left!important}
.cbcc-card-name{display:block!important;margin-top:3px!important;font-size:13px!important;line-height:1.35!important;color:#4f5864!important;text-align:left!important}
.cbcc-card-meta-row{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:8px!important}
.cbcc-price-group-badge,.cbcc-unavailable-note{display:inline-flex!important;align-items:center!important;min-height:23px!important;padding:3px 8px!important;border-radius:999px!important;font-size:11.5px!important;line-height:1.2!important;font-weight:750!important}
.cbcc-price-group-badge{background:#eef5f1!important;color:#216143!important}
.cbcc-unavailable-note{background:#fff0f0!important;color:#8a1f1f!important}
.cbcc-empty,.cbcc-loading{grid-column:1/-1;padding:25px;text-align:center;color:var(--cbcc-muted)}
.cbcc-loading:before{content:"";display:inline-block;width:18px;height:18px;margin-right:9px;border:2px solid #cbd1d8;border-top-color:var(--cbcc-blue);border-radius:50%;vertical-align:-4px;animation:cbcc-spin .75s linear infinite}
@keyframes cbcc-spin{to{transform:rotate(360deg)}}

/* Vehicle finder */
.cbcc-route-tabs{display:inline-flex;margin:12px 0 20px;padding:4px;border-radius:12px;background:#eef0f3}
button.cbcc-route-tab{min-height:42px!important;margin:0!important;padding:8px 16px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--cbcc-muted)!important;box-shadow:none!important;font-weight:750!important;cursor:pointer!important}
button.cbcc-route-tab.is-active{background:#fff!important;color:var(--cbcc-ink)!important;box-shadow:0 2px 8px rgba(18,24,35,.1)!important}
.cbcc-bc-facets{grid-template-columns:repeat(3,minmax(0,1fr))}
.cbcc-combobox{z-index:4}
.cbcc-facet-results{position:absolute;z-index:60;top:calc(100% - 13px);left:0;right:0;max-height:310px;overflow:auto;border:1px solid #cbd1d8;border-radius:10px;background:#fff;box-shadow:0 10px 26px rgba(18,24,35,.14);padding:6px;contain:layout paint style}
button.cbcc-facet-option{appearance:none!important;display:flex!important;width:100%!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0!important;padding:10px!important;border:0!important;border-radius:7px!important;background:#fff!important;color:var(--cbcc-ink)!important;box-shadow:none!important;text-align:left!important;cursor:pointer!important}
button.cbcc-facet-option:hover,button.cbcc-facet-option:focus{background:var(--cbcc-soft)!important;color:var(--cbcc-ink)!important}
.cbcc-facet-option strong{font-size:14px;color:var(--cbcc-ink)}
.cbcc-facet-option span{font-size:11.5px;color:var(--cbcc-muted)}
button.cbcc-result.cbcc-vehicle-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding:15px!important;min-height:0!important}
.cbcc-vehicle-card-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important}
.cbcc-brand-badge,.cbcc-fallback-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800}
.cbcc-brand-badge{background:#edf4ff;color:#234f85}
.cbcc-fallback-badge{background:#fff5d9;color:#745500}
.cbcc-vehicle-card .cbcc-card-copy{padding:0!important}
.cbcc-card-meta{display:flex!important;flex-wrap:wrap;gap:5px;margin-top:7px!important}
.cbcc-card-meta span{display:inline-flex;padding:3px 7px;border-radius:999px;background:#f0f2f4;color:#59616d!important;font-size:11.5px!important}
.cbcc-bc-size-field{margin-top:20px}

@media(max-width:760px){
    .cbcc-launcher{grid-template-columns:1fr;padding:17px 16px 17px 21px}.cbcc-open-selector{width:100%}
    .cbcc-modal-layer{padding:0;align-items:stretch}.cbcc-modal-dialog{width:100%;height:100%;max-height:none;border-radius:0;box-shadow:none}
    .cbcc-modal-header{padding:18px 18px 15px}.cbcc-modal-header h2{font-size:21px!important}.cbcc-modal-header p{font-size:13px}
    button.cbcc-modal-close{width:40px!important;height:40px!important;min-width:40px!important;flex-basis:40px!important}
    .cbcc-modal-body{padding:0 16px 24px}.cbcc-modal-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));position:sticky;bottom:0}.cbcc-use-selection{width:100%}
    .cbcc-grid,.cbcc-config-grid,.cbcc-bc-facets{grid-template-columns:1fr;gap:0}.cbcc-results-grid{grid-template-columns:1fr;max-height:none}
    .cbcc-family-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}button.cbcc-family-chip{width:100%!important}
    .cbcc-route-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.cbcc-route-tab{padding:8px}.cbcc-selector-intro{padding-top:15px}
    .cbcc-results{max-height:45vh}.cbcc-bc-results{max-height:none}.cbcc-add-landing{position:sticky;bottom:0;z-index:5;box-shadow:0 -8px 18px rgba(255,255,255,.95)}
}
@media(max-width:420px){
    .cbcc-family-chips{grid-template-columns:1fr}.cbcc-launcher-copy strong{font-size:16px}.cbcc-launcher-description{font-size:13px}
    button.cbcc-result{grid-template-columns:62px minmax(0,1fr)!important;min-height:84px!important}.cbcc-card-swatch{width:62px!important;min-width:62px!important;min-height:84px!important}
}
@media(hover:none){button.cbcc-result:hover{box-shadow:0 1px 2px rgba(20,29,43,.045)!important}.cbcc-launcher:hover{box-shadow:0 6px 20px rgba(20,29,43,.07)!important}}
@media(prefers-reduced-motion:reduce){.cbcc-modal-layer,.cbcc-launcher,button.cbcc-result{transition:none!important}.cbcc-loading:before{animation:none}}

/* 1.1.2 native product-form integration and mobile layout hardening. */
.cbcc-native-variations-hidden{display:none!important}
form.cbcc-native-product-form{width:100%!important;max-width:100%!important;min-width:0!important}
form.cbcc-native-product-form .single_variation_wrap{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
form.cbcc-mode-bc-vehicle .variations,
form.cbcc-mode-exact-variation .variations,
form.cbcc-mode-bc-vehicle .reset_variations,
form.cbcc-mode-exact-variation .reset_variations{display:none!important}
form.cbcc-native-product-form .cbcc-launcher{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
form.cbcc-native-product-form .cbcc-native-purchase-row{
    display:grid!important;grid-template-columns:96px minmax(180px,260px)!important;gap:12px!important;align-items:stretch!important;
    justify-content:start!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:14px 0 0!important;padding:0!important;
}
form.cbcc-native-product-form .cbcc-native-purchase-row .quantity{
    display:block!important;float:none!important;width:96px!important;min-width:96px!important;max-width:96px!important;height:50px!important;
    margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;
}
form.cbcc-native-product-form .cbcc-native-purchase-row .quantity input.qty{
    display:block!important;width:96px!important;min-width:96px!important;max-width:96px!important;height:50px!important;min-height:50px!important;
    margin:0!important;padding:0 10px!important;box-sizing:border-box!important;border:1px solid #cbd1d8!important;border-radius:10px!important;
    background:#fff!important;color:var(--cbcc-ink)!important;box-shadow:none!important;text-align:center!important;font-size:16px!important;line-height:48px!important;
}
form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;float:none!important;width:auto!important;min-width:180px!important;max-width:260px!important;
    height:50px!important;min-height:50px!important;margin:0!important;padding:0 24px!important;box-sizing:border-box!important;
    border:1px solid var(--cbcc-green)!important;border-radius:10px!important;background:var(--cbcc-green)!important;color:#fff!important;
    box-shadow:none!important;font-size:16px!important;font-weight:800!important;line-height:1.2!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;
}
form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button:hover,
form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button:focus{
    border-color:#126b40!important;background:#126b40!important;color:#fff!important;box-shadow:0 0 0 3px rgba(24,132,80,.14)!important;
}
form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button:disabled,
form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button.disabled{
    border-color:#a9d4bf!important;background:#a9d4bf!important;color:#fff!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;
}
.cbcc-selection-title,.cbcc-selection-detail{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere}
.cbcc-selection-detail{margin-top:4px;color:#596b62;font-size:13px;font-weight:600;line-height:1.4}
button.cbcc-facet-option{min-width:0!important;max-width:100%!important}
button.cbcc-facet-option strong{min-width:0!important;overflow-wrap:anywhere!important;white-space:normal!important}
button.cbcc-facet-option>span{flex:0 0 auto!important;white-space:nowrap!important}
button.cbcc-result.cbcc-vehicle-card,.cbcc-vehicle-card .cbcc-card-copy,.cbcc-card-meta{min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important}
.cbcc-card-meta{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:6px!important}
.cbcc-card-meta span{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;padding:5px 8px!important;
    border-radius:8px!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;line-height:1.35!important;
}
.cbcc-price-group-badge{display:none!important}

@media(max-width:760px){
    .cbcc-modal-dialog{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-width:0!important}
    .cbcc-modal-header{flex:0 0 auto;min-width:0;gap:12px;padding:16px 16px 14px}
    .cbcc-modal-header>div{min-width:0}.cbcc-modal-header h2,.cbcc-modal-header p{max-width:100%;overflow-wrap:anywhere}
    .cbcc-modal-body{flex:1 1 auto;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:0 14px 22px;overflow-x:hidden;scrollbar-gutter:auto}
    .cbcc-selector,.cbcc-selector-intro,.cbcc-field,.cbcc-grid,.cbcc-results,.cbcc-card-copy{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
    .cbcc-modal-footer{flex:0 0 auto;position:relative;bottom:auto;width:100%;box-sizing:border-box;padding:11px 14px calc(11px + env(safe-area-inset-bottom))}
    .cbcc-facet-results{position:relative;z-index:10;top:auto;left:auto;right:auto;width:100%;max-height:min(300px,36dvh);margin-top:6px;box-sizing:border-box;overflow:auto}
    .cbcc-combobox{z-index:auto}
    .cbcc-results{max-height:min(46dvh,440px);overflow-x:hidden}.cbcc-bc-results{max-height:none}
    button.cbcc-result.cbcc-vehicle-card{padding:13px!important;border-radius:12px!important}
    .cbcc-vehicle-card-top{min-width:0;flex-wrap:wrap!important}
    form.cbcc-native-product-form .cbcc-launcher{margin:14px 0!important}
    form.cbcc-native-product-form .cbcc-native-purchase-row{
        grid-template-columns:88px minmax(0,1fr)!important;gap:10px!important;width:100%!important;max-width:100%!important;margin-top:10px!important;
    }
    form.cbcc-native-product-form .cbcc-native-purchase-row .quantity,
    form.cbcc-native-product-form .cbcc-native-purchase-row .quantity input.qty{
        width:88px!important;min-width:88px!important;max-width:88px!important;
    }
    form.cbcc-native-product-form .cbcc-native-purchase-row button.single_add_to_cart_button{
        width:100%!important;min-width:0!important;max-width:none!important;padding:0 14px!important;font-size:15.5px!important;white-space:normal!important;text-align:center!important;
    }
}

@media(max-width:380px){
    form.cbcc-native-product-form .cbcc-native-purchase-row{grid-template-columns:78px minmax(0,1fr)!important;gap:8px!important}
    form.cbcc-native-product-form .cbcc-native-purchase-row .quantity,
    form.cbcc-native-product-form .cbcc-native-purchase-row .quantity input.qty{width:78px!important;min-width:78px!important;max-width:78px!important}
    .cbcc-modal-body{padding-left:12px;padding-right:12px}.cbcc-modal-header{padding-left:12px;padding-right:12px}.cbcc-modal-footer{padding-left:12px;padding-right:12px}
}


/* 1.1.3 popup-only purchase flow and iPhone scroll isolation. */
form.cbcc-popup-purchase-only .variations,
form.cbcc-popup-purchase-only table.variations,
form.cbcc-popup-purchase-only .reset_variations,
form.cbcc-popup-purchase-only .single_variation,
form.cbcc-popup-purchase-only .cbcc-native-purchase-row,
form.cbcc-popup-purchase-only .quantity,
form.cbcc-popup-purchase-only .single_add_to_cart_button{
    display:none!important;
}
.cbcc-modal-footer{align-items:flex-end}
.cbcc-modal-quantity{display:flex;flex-direction:column;gap:6px;min-width:92px;color:var(--cbcc-ink);font-size:13px;font-weight:750}
.cbcc-modal-quantity input{
    width:92px!important;height:46px!important;min-height:46px!important;margin:0!important;padding:0 10px!important;box-sizing:border-box!important;
    border:1px solid #cbd1d8!important;border-radius:10px!important;background:#fff!important;color:var(--cbcc-ink)!important;
    box-shadow:none!important;text-align:center!important;font:inherit!important;font-size:16px!important;
}
.cbcc-use-selection{min-width:210px!important}
.cbcc-use-selection.is-loading{cursor:wait!important}

@media(max-width:760px){
    .cbcc-modal-layer{inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;overflow:hidden!important;touch-action:none!important}
    .cbcc-modal-dialog{position:absolute!important;inset:0!important;width:100vw!important;max-width:100vw!important;height:100vh!important;height:100dvh!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important;touch-action:none!important}
    .cbcc-modal-body{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important}
    .cbcc-results,.cbcc-results-grid,.cbcc-bc-results,.cbcc-facet-results{
        max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;scrollbar-gutter:auto!important;contain:none!important;
    }
    .cbcc-modal-footer{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;gap:10px!important;align-items:end!important}
    .cbcc-modal-footer:empty{display:none!important}
    .cbcc-modal-quantity{min-width:0!important;width:86px!important}
    .cbcc-modal-quantity input{width:86px!important;min-width:0!important}
    .cbcc-use-selection{width:100%!important;min-width:0!important;height:46px!important;margin:0!important}
    .cbcc-add-landing{position:relative!important;bottom:auto!important;box-shadow:none!important}
}

/* 1.1.4 selector authority: no dead colours, no redundant native controls. */
.cbcc-single-size-config{grid-template-columns:150px!important;justify-content:start!important}
.cbcc-size-field-fixed[hidden]{display:none!important}
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .variations,
body.cbcc-popup-variation-controls-hidden .summary form.variations_form table.variations,
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .reset_variations,
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .single_variation,
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .woocommerce-variation-add-to-cart,
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .variations_button,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .variations,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart table.variations,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .reset_variations,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .single_variation,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .woocommerce-variation-add-to-cart,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .variations_button{
    display:none!important;
}
body.cbcc-popup-variation-controls-hidden .summary form.variations_form .cbcc-launcher,
body.cbcc-popup-variation-controls-hidden .product .summary form.cart .cbcc-launcher{
    display:grid!important;
}
@media(max-width:760px){.cbcc-single-size-config{grid-template-columns:1fr!important}}
body.cbcc-popup-variation-controls-hidden .variations,
body.cbcc-popup-variation-controls-hidden table.variations,
body.cbcc-popup-variation-controls-hidden .reset_variations,
body.cbcc-popup-variation-controls-hidden .single_variation,
body.cbcc-popup-variation-controls-hidden form.cart .woocommerce-variation-add-to-cart,
body.cbcc-popup-variation-controls-hidden form.cart .variations_button{
    display:none!important;
}
body.cbcc-popup-variation-controls-hidden .cbcc-launcher{display:grid!important}


/* 1.1.5 popup-only authority and single-scroll modal. */
/* WooCommerce variation data stays in the DOM for validation, but customers never choose it outside the Coatblend popup. */
body.cbcc-popup-variation-controls-hidden form.variations_form .variations,
body.cbcc-popup-variation-controls-hidden form.variations_form table.variations,
body.cbcc-popup-variation-controls-hidden form.variations_form .reset_variations,
body.cbcc-popup-variation-controls-hidden form.variations_form .single_variation,
body.cbcc-popup-variation-controls-hidden form.cart .variations,
body.cbcc-popup-variation-controls-hidden form.cart table.variations,
body.cbcc-popup-variation-controls-hidden form.cart .reset_variations,
body.cbcc-popup-variation-controls-hidden form.cart .single_variation,
.cbcc-native-variations-hidden{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/* Exactly one scrolling surface inside the selector: the modal body itself. */
.cbcc-modal-body{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
}
.cbcc-modal-dialog .cbcc-results,
.cbcc-modal-dialog .cbcc-results-grid,
.cbcc-modal-dialog .cbcc-bc-results,
.cbcc-modal-dialog .cbcc-facet-results{
    max-height:none!important;
    height:auto!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    scrollbar-gutter:auto!important;
    contain:none!important;
}
.cbcc-modal-dialog .cbcc-facet-results{
    position:relative!important;
    z-index:10!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    margin-top:6px!important;
    box-sizing:border-box!important;
}
.cbcc-bc-size-field.cbcc-size-field-fixed[hidden]{display:none!important}


/* 1.1.6 popup-only product UI: selector pages never expose WooCommerce variation choices.
   This stylesheet is only enqueued on products with a CBCC selector mode, so the broad
   selectors are intentional and do not affect ordinary variable products. */
body.single-product form.variations_form .variations,
body.single-product form.variations_form table.variations,
body.single-product form.cart .variations,
body.single-product form.cart table.variations,
body.single-product .variations_form .reset_variations,
body.single-product form.cart .reset_variations,
body.single-product .woocommerce-variation.single_variation {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Keep only the Coatblend launcher visible outside the modal. Native quantity / purchase
   controls remain hidden for selector modes whose purchase is completed in the popup. */
body.single-product form.cbcc-popup-purchase-only .woocommerce-variation-add-to-cart,
body.single-product form.cbcc-popup-purchase-only .variations_button,
body.single-product form.cbcc-popup-purchase-only > .quantity,
body.single-product form.cbcc-popup-purchase-only > button.single_add_to_cart_button {
    display: none !important;
}
body.single-product .cbcc-launcher {
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    pointer-events: auto !important;
}

/* v1.1.7: native WooCommerce variation UI is technical state only on popup-authoritative products. */
body.single-product [data-cbcc-native-variation-table="hidden"],
body.single-product [data-cbcc-native-hidden="1"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}


/* v1.1.10: compatibility with the site's independent static variation UI helper.
   The helper is still available for ordinary variable products. On CBCC popup-authoritative
   forms only, its cloned controls are technical duplicates and must never be customer-facing. */
body.single-product form[data-cbcc-popup-authority="1"] .cb-static-variation-ui {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
