.tbcv-configurator{--brown:#8a5f3f;--cream:#fffaf3;--line:#eadfce;background:linear-gradient(180deg,#fffaf3,#fff);border:1px solid var(--line);border-radius:22px;padding:22px;margin:24px 0;box-shadow:0 14px 42px rgba(75,48,29,.08);box-sizing:border-box;clear:both;position:relative;z-index:1}.tbcv-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#f5ead9;border:1px solid #ead8bf;border-radius:20px;padding:18px 20px;margin-bottom:16px}.tbcv-hero span{text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:.75rem;color:#9a6d47}.tbcv-hero h3{margin:.15rem 0 .35rem;font-size:1.35rem;color:#2b2119}.tbcv-hero p{margin:0;color:#72563f}.tbcv-hero img{max-width:82px;height:auto}.tbcv-section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;margin:14px 0}.tbcv-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}.tbcv-section-head>span{width:36px;height:36px;border-radius:14px;background:#f7ead7;display:flex;align-items:center;justify-content:center}.tbcv-section h4{margin:0;color:#2b2119;font-size:1.05rem}.tbcv-section p{margin:3px 0 0;color:#80654e;font-size:.92rem}.tbcv-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tbcv-grid .tbcv-section{margin:0}.tbcv-configurator label{font-weight:700;color:#3a2b20;display:block;margin:.45rem 0}.tbcv-configurator input[type=number],.tbcv-configurator input[type=file],.tbcv-configurator select,.tbcv-configurator textarea{width:100%;border:1px solid #decdb6;border-radius:14px;background:#fff;padding:12px 13px;box-sizing:border-box}.tbcv-configurator textarea{min-height:86px;resize:vertical}.tbcv-choice-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tbcv-choice-row label,.tbcv-check{border:1px solid #e4d3bc;background:#fffaf3;border-radius:16px;padding:12px;cursor:pointer}.tbcv-check{display:flex!important;gap:10px;align-items:center}.tbcv-foil-fields{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.tbcv-preview{margin-top:12px}.tbcv-thumb{display:block;max-width:160px;max-height:120px;object-fit:contain;border:1px solid #d8c9b6;background:#fff;border-radius:12px;padding:6px}.tbcv-badge{display:inline-block;padding:10px 12px;border:1px dashed #c9b49a;border-radius:12px;background:#fffaf3;color:#4b382a}.tbcv-error{display:inline-block;padding:10px 12px;border:1px solid #d87b63;border-radius:12px;background:#fff1ed;color:#9b2d18} .tbcv-price-card{position:sticky;bottom:10px;z-index:5;display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;background:linear-gradient(135deg,#2c2119,#7b583c);border-radius:14px;padding:10px 14px;margin-top:14px;box-shadow:0 10px 24px rgba(43,33,25,.18);color:#fff}.tbcv-price-card .tbcv-price-label{color:rgba(255,255,255,.78);font-size:.9rem}.tbcv-price-card strong{color:#fff;font-size:1.12rem;line-height:1}.tbcv-price-card .tbcv-price-tax{color:rgba(255,255,255,.72);font-size:.78rem;font-weight:700}.tbcv-price-card .tbcv-price-separator{color:rgba(255,255,255,.45);font-size:.85rem}.tbcv-hidden-qty{display:none!important}.tbcv-price-placeholder{font-weight:700;color:#72563f}.woocommerce div.product form.cart{overflow:visible!important}.woocommerce div.product form.cart .button{position:relative;z-index:20}@media(max-width:700px){.tbcv-configurator{padding:14px;border-radius:18px}.tbcv-hero{align-items:flex-start}.tbcv-hero img{max-width:62px}.tbcv-grid,.tbcv-choice-row,.tbcv-foil-fields,.tbcv-price-card{grid-template-columns:1fr}.tbcv-price-card{bottom:8px}.tbcv-price-card strong{font-size:1.2rem}}

.tbcv-min-note{display:block;margin-top:6px;color:#80654e;font-size:.86rem}

/* Prix compact HT / TTC */
@media(max-width:700px){
 .tbcv-price-card{bottom:6px!important;padding:9px 10px!important;gap:5px!important;border-radius:12px!important;margin-top:12px!important;white-space:nowrap!important;flex-wrap:nowrap!important}
 .tbcv-price-card .tbcv-price-label{font-size:12px!important}
 .tbcv-price-card strong{font-size:15px!important}
 .tbcv-price-card .tbcv-price-tax{font-size:10px!important}
 .tbcv-price-card .tbcv-price-separator{font-size:11px!important}
}

.tbcv-quantity-error{display:none;margin-top:6px;color:#b42318;font-size:.88rem;font-weight:700}
/* Prix compact HT / TTC */
@media(max-width:700px){
 .tbcv-price-card{bottom:6px!important;padding:9px 10px!important;gap:5px!important;border-radius:12px!important;margin-top:12px!important;white-space:nowrap!important;flex-wrap:nowrap!important}
 .tbcv-price-card .tbcv-price-label{font-size:12px!important}
 .tbcv-price-card strong{font-size:15px!important}
 .tbcv-price-card .tbcv-price-tax{font-size:10px!important}
 .tbcv-price-card .tbcv-price-separator{font-size:11px!important}
}

.tbcv-quantity-error.is-visible{display:block}
.single_add_to_cart_button.tbcv-disabled,.single_add_to_cart_button:disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important}
