.bonvis-app{max-width:980px;margin:24px auto;padding:24px;border:1px solid #e4d7f2;border-radius:22px;background:#fff;box-sizing:border-box}.bonvis-app header{text-align:center;margin-bottom:22px}.bonvis-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:#5d178c}.bonvis-app h2{margin:7px 0 9px;font-size:28px}.bonvis-app p{line-height:1.55}.bonvis-auth,.bonvis-compose,.bonvis-dtf-prep{background:#f8f2fc;border:1px solid #eadcf6;border-radius:18px;padding:20px}.bonvis-balance{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.bonvis-balance span{background:#f3e8fb;border-radius:999px;padding:8px 12px}.bonvis-balance .total{background:#3b0b63;color:#fff}.bonvis-compose label,.bonvis-dtf-prep label{display:block;font-weight:700;margin-bottom:8px}.bonvis-compose textarea{width:100%;min-height:145px;border:1px solid #d9c2eb;border-radius:14px;padding:14px;box-sizing:border-box;font-size:16px}.bonvis-help{font-size:13px;color:#666;margin:8px 0 14px}.bonvis-generate,.bonvis-use-dtf,.bonvis-open-config{background:#3b0b63!important;color:#fff!important;border:0!important;border-radius:12px!important;padding:12px 18px!important;font-weight:800!important}.bonvis-buy{display:inline-block;margin-left:12px}.bonvis-status{margin:15px 0}.bonvis-loading{padding:14px;border-radius:14px;background:#fbf8fd}.bonvis-loading span{font-size:25px;margin-right:8px}.bonvis-loading small{display:block;margin-top:5px}.bonvis-result{margin-top:18px}.bonvis-image-wrap{background:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;border-radius:18px;padding:16px;text-align:center}.bonvis-image{max-width:100%;max-height:620px;border-radius:12px}.bonvis-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.bonvis-dtf-prep{margin-top:18px}.bonvis-dtf-prep input,.bonvis-dtf-prep select{width:100%;padding:10px;border-radius:10px;border:1px solid #d9c2eb;box-sizing:border-box}.bonvis-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin:12px 0}.bonvis-check{font-weight:500!important}.bonvis-suggestion{margin:10px 0;color:#4d176a}.bonvis-pack-selector{padding:16px;border:1px solid #e4d7f2;border-radius:16px;margin:14px 0}.bonvis-pack-selector label{display:block;margin:9px 0}.bonvis-pack-selector small{display:block;margin-top:12px}.bonvis-account header{margin-bottom:18px}.bonvis-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.bonvis-card{border:1px solid #eadcf6;border-radius:16px;overflow:hidden;background:#fff}.bonvis-card img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#f7f7f7}.bonvis-card>div{padding:12px}.bonvis-card p{min-height:48px}.bonvis-delete{border:0;background:transparent;color:#a00;cursor:pointer}.bonvis-account-balance{margin:10px 0}.bonvis-login-note{padding:14px;background:#fff7e8;border-radius:12px}@media(max-width:650px){.bonvis-app{padding:14px}.bonvis-grid{grid-template-columns:1fr}.bonvis-app h2{font-size:23px}.bonvis-buy{display:block;margin:12px 0 0}}

/* Product landing page V1.1 */
.bonvis-product-page.single-product div.product{max-width:1220px;margin-left:auto;margin-right:auto}
.bonvis-product-page.single-product div.product .summary .product_meta{display:none}
.bonvis-product-page.single-product div.product .summary .price{color:#4b117f;font-weight:800}
.bonvis-product-page .bonvis-app{box-shadow:0 14px 38px rgba(49,14,82,.07);border-color:#e5d8f2}
.bonvis-product-page .bonvis-app header h2{color:#1d1235;line-height:1.15}
.bonvis-product-page .bonvis-pack-selector{background:#fff;border:1px solid #e8dcf4;box-shadow:0 10px 28px rgba(55,19,91,.06)}
.bonvis-product-page .bonvis-pack-selector h3{margin-top:0;color:#24133f}
.bonvis-product-page .bonvis-pack-selector label{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #eee3f7;border-radius:12px;background:#fff}
.bonvis-product-page .bonvis-pack-selector label:has(input:checked){background:#f7f0fc;border-color:#7a32b4}
.bonvis-separator{max-width:1220px;margin:48px auto 24px;display:flex;align-items:center;gap:14px;color:#fff;font-size:12px;font-weight:900;letter-spacing:.06em}
.bonvis-separator:before,.bonvis-separator:after{content:"";height:0;border-top:2px dashed #7b37b5;flex:1}
.bonvis-separator span{background:#5a188d;padding:7px 14px;border-radius:999px;white-space:nowrap}
.bonvis-marketing{max-width:1220px;margin:0 auto 50px;color:#241934}
.bonvis-marketing h2{font-size:30px;line-height:1.2;color:#1e1237;margin:0 0 16px}
.bonvis-marketing h3{color:#291346}
.bonvis-marketing p{line-height:1.72}
.bonvis-kicker{font-size:12px!important;font-weight:900;letter-spacing:.12em;color:#6f23a8;margin-bottom:9px!important}
.bonvis-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;background:linear-gradient(90deg,#fbf7fe,#f6effb);border:1px solid #eadcf5;border-radius:22px;padding:20px;margin-bottom:44px}
.bonvis-benefits article{text-align:center;padding:10px 14px}.bonvis-benefits article>span{display:grid;width:52px;height:52px;place-items:center;margin:0 auto 10px;border-radius:50%;background:#efe2f8;font-size:23px}.bonvis-benefits h3{font-size:16px;margin:6px 0}.bonvis-benefits p{font-size:13px;margin:0;color:#5d5369}
.bonvis-two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start;margin:44px 0}
.bonvis-why{background:#faf7fd;border:1px solid #eadcf5;border-radius:20px;padding:28px}.bonvis-why ul{list-style:none;padding:0;margin:0}.bonvis-why li{position:relative;padding:7px 0 7px 26px}.bonvis-why li:before{content:"✓";position:absolute;left:0;color:#6b20a4;font-weight:900}
.bonvis-credit-callout{display:flex;align-items:center;justify-content:center;gap:15px;background:linear-gradient(90deg,#f7effd,#f1e4fb);border:1px solid #e7d6f4;border-radius:18px;padding:18px 22px;text-align:left;margin:38px 0}.bonvis-credit-callout>span{font-size:34px}.bonvis-credit-callout strong,.bonvis-credit-callout small{display:block}.bonvis-credit-callout small{margin-top:3px;color:#594d64}
.bonvis-how{text-align:center;margin:55px 0}.bonvis-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:30px}.bonvis-steps article{position:relative;padding:12px}.bonvis-steps b{display:grid;width:58px;height:58px;place-items:center;margin:0 auto 13px;border-radius:50%;background:#efe3f8;border:1px solid #dfc8f0;color:#5a178d;font-size:20px}.bonvis-steps h3{font-size:16px;margin:6px 0}.bonvis-steps p{font-size:13px;color:#61576a;margin:0}
.bonvis-faq-grid{gap:26px}.bonvis-faq,.bonvis-assurance{border:1px solid #e5d7f1;border-radius:20px;padding:26px;background:#fff}.bonvis-faq details{border-bottom:1px solid #eee5f4}.bonvis-faq details:last-child{border-bottom:0}.bonvis-faq summary{cursor:pointer;padding:14px 28px 14px 0;font-weight:800;position:relative;list-style:none}.bonvis-faq summary::-webkit-details-marker{display:none}.bonvis-faq summary:after{content:"+";position:absolute;right:0;color:#5b178e;font-size:22px}.bonvis-faq details[open] summary:after{content:"−"}.bonvis-faq details p{margin:0 0 15px;color:#5e5369}
.bonvis-assurance{background:#faf7fd}.bonvis-assurance>div{display:flex;gap:12px;align-items:flex-start;margin:16px 0}.bonvis-assurance>div>span{display:grid;min-width:34px;height:34px;place-items:center;border-radius:50%;background:#eadbf6;color:#57138b;font-weight:900}.bonvis-assurance p{margin:0}
.bonvis-seo-copy{background:linear-gradient(135deg,#fbf8fd,#f4eafb);border-radius:20px;border:1px solid #eadcf5;padding:30px;margin-top:35px}.bonvis-seo-copy h2{font-size:24px}.bonvis-keywords{font-size:13px;color:#61566b}
@media(max-width:980px){.bonvis-benefits{grid-template-columns:repeat(2,1fr)}.bonvis-two-col{grid-template-columns:1fr;gap:20px}.bonvis-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.bonvis-benefits{grid-template-columns:1fr}.bonvis-steps{grid-template-columns:1fr}.bonvis-marketing h2{font-size:24px}.bonvis-separator{margin-top:32px}.bonvis-separator span{font-size:10px}.bonvis-marketing{padding:0 12px}.bonvis-credit-callout{align-items:flex-start}}

/* V1.2 — full-width creator-first product page */
.bonvis-product-page.single-product div.product>.woocommerce-product-gallery{display:none!important}
.bonvis-product-page.single-product div.product>.summary{float:none!important;width:min(1180px,calc(100% - 40px))!important;max-width:1180px!important;margin:20px auto 44px!important;padding:0!important;clear:both!important}
.bonvis-product-page.single-product div.product>.summary>h1.product_title,.bonvis-product-page.single-product div.product>.summary>p.price,.bonvis-product-page.single-product div.product>.summary>.woocommerce-product-details__short-description{display:none!important}
.bonvis-product-page.single-product div.product>.summary form.cart{background:#fff;border:1px solid #e6d8f1;border-radius:22px;padding:24px;box-shadow:0 12px 32px rgba(54,18,88,.07)}
.bonvis-product-page.single-product div.product>.summary form.cart:before{content:'Acheter des créations supplémentaires';display:block;font-size:24px;font-weight:850;color:#1f1237;margin-bottom:4px}
.bonvis-product-page.single-product div.product>.summary form.cart:after{content:'Les crédits s’ajoutent à votre compte après paiement.';display:block;clear:both;font-size:13px;color:#675b70;padding-top:10px}
.bonvis-product-page.single-product div.product>.summary form.cart .quantity{display:none!important}
.bonvis-product-page.single-product div.product>.summary form.cart .single_add_to_cart_button{float:none!important;width:100%;margin-top:12px!important;border-radius:12px!important;padding:14px 18px!important;background:#4b117f!important;color:#fff!important}
.bonvis-product-intro{width:min(1180px,calc(100% - 40px));margin:28px auto 18px;text-align:center}
.bonvis-product-intro h1{font-size:clamp(34px,4vw,54px);line-height:1.05;color:#1d1235;margin:18px auto 12px;max-width:850px}
.bonvis-product-intro .bonvis-lead{font-size:19px;line-height:1.55;color:#574d62;max-width:780px;margin:0 auto}
.bonvis-free-hero{display:inline-flex;align-items:center;gap:12px;text-align:left;background:linear-gradient(90deg,#f3e6fc,#faf5fe);border:1px solid #dfc8ef;border-radius:16px;padding:11px 18px;color:#3e0d68}
.bonvis-free-hero>span{font-size:28px}.bonvis-free-hero strong,.bonvis-free-hero small{display:block}.bonvis-free-hero strong{font-size:17px}.bonvis-free-hero small{margin-top:2px;color:#66536f}
.bonvis-app.bonvis-creator{width:min(1180px,calc(100% - 40px));max-width:1180px!important;margin:28px auto 36px!important;padding:0!important;display:grid;grid-template-columns:1.08fr .92fr;gap:0;overflow:hidden;border-radius:26px;box-shadow:0 18px 48px rgba(49,14,82,.09)}
.bonvis-live-preview{min-height:590px;padding:32px;background:linear-gradient(145deg,#f8f3fc,#fff);display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.bonvis-create-panel{padding:42px 38px;background:#fff;box-sizing:border-box}.bonvis-create-panel h2{font-size:31px;line-height:1.12;margin:8px 0 12px;color:#1e1237}.bonvis-create-panel>p{color:#62566c;margin-bottom:22px}
.bonvis-preview-placeholder{width:100%;max-width:500px;text-align:center;border:2px dashed #d8bfe9;border-radius:24px;padding:54px 30px;position:relative;overflow:hidden;background:rgba(255,255,255,.68)}
.bonvis-placeholder-icon{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:#eee0f8;font-size:32px}.bonvis-preview-placeholder h2{font-size:28px;color:#27143f;margin:0 0 9px}.bonvis-preview-placeholder p{color:#675a70;margin:0 0 20px}.bonvis-placeholder-tags{display:flex;gap:7px;justify-content:center;flex-wrap:wrap}.bonvis-placeholder-tags span{font-size:12px;padding:7px 10px;border-radius:999px;background:#f0e5f8;color:#5b2185;font-weight:700}.bonvis-placeholder-art{position:absolute;inset:0;pointer-events:none}.bonvis-placeholder-art span{position:absolute;color:#b98ad8;opacity:.35;font-size:30px}.bonvis-placeholder-art span:nth-child(1){left:9%;top:12%}.bonvis-placeholder-art span:nth-child(2){right:10%;bottom:12%}.bonvis-placeholder-art span:nth-child(3){right:13%;top:15%}
.bonvis-creator .bonvis-compose{padding:0;background:transparent;border:0}.bonvis-creator .bonvis-compose textarea{min-height:180px;background:#fcfaff}.bonvis-creator .bonvis-generate{width:100%;font-size:16px;padding:15px 18px!important}.bonvis-free-note{text-align:center;font-size:12px;color:#6d6075;margin-top:8px}.bonvis-creator .bonvis-result{width:100%;margin:0}.bonvis-creator .bonvis-image-wrap{padding:20px}.bonvis-creator .bonvis-result-actions{justify-content:center}.bonvis-creator .bonvis-dtf-prep{grid-column:1/-1;margin:0;border-radius:0;border-width:1px 0 0;padding:28px 34px}
.bonvis-buy-separator{width:min(1180px,calc(100% - 40px));margin:48px auto 14px;display:flex;align-items:center;gap:14px;color:#fff;font-size:12px;font-weight:900;letter-spacing:.06em}.bonvis-buy-separator:before,.bonvis-buy-separator:after{content:'';height:0;border-top:2px dashed #7b37b5;flex:1}.bonvis-buy-separator span{background:#5a188d;padding:7px 14px;border-radius:999px;white-space:nowrap}.bonvis-buy-intro{width:min(900px,calc(100% - 40px));margin:0 auto 10px;text-align:center}.bonvis-buy-intro h2{font-size:30px;color:#1e1237;margin-bottom:8px}.bonvis-buy-intro p{color:#62566c;font-size:16px}
.bonvis-product-page .bonvis-separator{margin-top:62px}.bonvis-product-page .bonvis-marketing{width:min(1180px,calc(100% - 40px));max-width:1180px!important}
@media(max-width:850px){.bonvis-app.bonvis-creator{grid-template-columns:1fr}.bonvis-live-preview{min-height:410px;padding:20px}.bonvis-create-panel{padding:28px 22px}.bonvis-product-intro{width:calc(100% - 24px)}.bonvis-app.bonvis-creator,.bonvis-product-page.single-product div.product>.summary,.bonvis-product-page .bonvis-marketing{width:calc(100% - 24px)!important}.bonvis-free-hero{max-width:100%;box-sizing:border-box}.bonvis-product-intro h1{font-size:36px}}

/* V1.3 — inline account, compact top, premium actions, animated generation, refinement */
.bonvis-product-intro{margin-top:6px!important;margin-bottom:12px!important}
.bonvis-product-intro .bonvis-free-hero{box-shadow:0 8px 24px rgba(88,24,141,.08)}
.bonvis-create-panel .bonvis-generate,.bonvis-refine-submit,.bonvis-auth-submit,.bonvis-product-page.single-product div.product>.summary form.cart .single_add_to_cart_button,.bonvis-open-config{appearance:none;border:0!important;background:linear-gradient(135deg,#4d0d82 0%,#7526b0 55%,#5b128f 100%)!important;color:#fff!important;font-weight:850!important;letter-spacing:.01em;border-radius:14px!important;box-shadow:0 10px 24px rgba(83,23,134,.24)!important;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;cursor:pointer}
.bonvis-create-panel .bonvis-generate:hover,.bonvis-refine-submit:hover,.bonvis-auth-submit:hover,.bonvis-product-page.single-product div.product>.summary form.cart .single_add_to_cart_button:hover,.bonvis-open-config:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(83,23,134,.31)!important;filter:brightness(1.04)}
.bonvis-create-panel .bonvis-generate:disabled,.bonvis-refine-submit:disabled,.bonvis-auth-submit:disabled{opacity:.65;cursor:wait;transform:none}
.bonvis-auth-inline{border:1px solid #dfcbed;background:linear-gradient(145deg,#fbf8fe,#f5ebfb);border-radius:20px;padding:20px;margin-top:18px}
.bonvis-auth-head{text-align:center;margin-bottom:14px}.bonvis-auth-head strong{font-size:19px;color:#47106f}.bonvis-auth-head p{margin:4px 0 0;color:#64576d;font-size:13px}
.bonvis-auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#eee1f6;border-radius:12px;padding:4px;margin-bottom:16px}.bonvis-auth-tabs button{border:0;background:transparent;padding:10px 12px;border-radius:9px;font-weight:800;color:#5f4c6a;cursor:pointer}.bonvis-auth-tabs button.is-active{background:#fff;color:#4d0f7d;box-shadow:0 4px 12px rgba(71,18,110,.09)}
.bonvis-auth-form label{display:block;font-weight:750;font-size:13px;color:#31223d;margin-bottom:11px}.bonvis-auth-form input{width:100%;box-sizing:border-box;margin-top:5px;border:1px solid #d7c6e3;border-radius:11px;padding:12px 13px;background:#fff;min-height:44px}.bonvis-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bonvis-auth-submit{width:100%;padding:13px 15px!important;margin-top:4px}.bonvis-auth-status{min-height:23px;margin-top:10px;text-align:center;font-size:13px}.bonvis-auth-error{color:#9d1d36;font-weight:700}.bonvis-auth-ok{color:#237a44;font-weight:700}.bonvis-mini-loader{display:inline-block;width:13px;height:13px;border:2px solid #d7bee7;border-top-color:#5d198f;border-radius:50%;vertical-align:-2px;animation:bonvis-spin .65s linear infinite}
.bonvis-text-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.bonvis-text-fields label{font-size:13px;font-weight:800;color:#352540}.bonvis-text-fields small{font-weight:500;color:#75677e}.bonvis-text-fields input,.bonvis-refine-panel input{display:block;width:100%;box-sizing:border-box;margin-top:5px;padding:11px 12px;border:1px solid #d9c8e5;border-radius:11px;background:#fff}
.bonvis-rights-warning{margin:14px 0;background:#fff7e8;border:1px solid #f0d8a4;border-left:4px solid #c68b1f;border-radius:12px;padding:12px 13px;color:#604713;font-size:12.5px;line-height:1.45}.bonvis-rights-warning strong{display:block;margin-bottom:3px;color:#704e0f}.bonvis-rights-warning p{margin:0!important;color:#604713!important}
.bonvis-live-preview{position:relative}.bonvis-generation-overlay{position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;opacity:0;visibility:hidden;pointer-events:none;background:radial-gradient(circle at center,rgba(255,255,255,.97),rgba(246,237,252,.94));transition:opacity .18s ease}.bonvis-generation-overlay.is-active{opacity:1;visibility:visible}.bonvis-generation-overlay strong{font-size:22px;color:#35104f;margin-top:18px}.bonvis-generation-overlay small{max-width:390px;color:#695775;margin-top:5px}.bonvis-ai-motion{position:relative;width:96px;height:96px}.bonvis-ai-motion:before,.bonvis-ai-motion:after{content:"";position:absolute;border-radius:50%;inset:9px;border:2px solid rgba(103,28,158,.18);animation:bonvis-pulse 1.6s ease-in-out infinite}.bonvis-ai-motion:after{inset:22px;animation-delay:.3s}.bonvis-ai-motion span{position:absolute;left:45px;top:4px;width:8px;height:8px;border-radius:50%;background:#66199d;transform-origin:3px 44px;animation:bonvis-orbit 1.35s linear infinite}.bonvis-ai-motion span:nth-child(2){background:#a25bd0;animation-duration:1.8s;transform-origin:3px 44px}.bonvis-ai-motion span:nth-child(3){background:#d7b3ec;animation-duration:2.3s;transform-origin:3px 44px}.bonvis-ai-motion i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-size:32px;color:#6a1ba2;animation:bonvis-spark 1s ease-in-out infinite alternate}
@keyframes bonvis-orbit{to{transform:rotate(360deg)}}@keyframes bonvis-pulse{50%{transform:scale(1.12);opacity:.45}}@keyframes bonvis-spark{to{transform:scale(1.18) rotate(8deg)}}@keyframes bonvis-spin{to{transform:rotate(360deg)}}
.bonvis-loading-line{text-align:center;color:#654b73;font-size:13px;padding:8px}.bonvis-success{color:#237a44}.bonvis-error,.bonvis-policy-error{border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.5}.bonvis-error{background:#fff1f3;border:1px solid #efc9cf;color:#8b2636}.bonvis-policy-error{background:#fff7e7;border:1px solid #efd6a1;color:#704d0f}
.bonvis-refine-panel{display:none;margin:16px 18px 4px;padding:17px;background:#faf6fd;border:1px solid #e4d4ef;border-radius:16px;text-align:left}.bonvis-refine-panel h3{margin:0 0 4px;color:#35104f}.bonvis-refine-panel>p{margin:0 0 12px;color:#6b5a74;font-size:13px}.bonvis-refine-panel label{display:block;font-size:13px;font-weight:800;margin:9px 0;color:#392645}.bonvis-refine-panel textarea{width:100%;min-height:100px;box-sizing:border-box;margin-top:5px;border:1px solid #d9c8e5;border-radius:11px;padding:11px;background:#fff}.bonvis-refine-submit{width:100%;padding:13px 14px!important;margin-top:8px}.bonvis-refine-panel>small{display:block;text-align:center;margin-top:8px;color:#75677e}
.bonvis-result-actions .bonvis-refine-toggle{border-color:#7a34aa!important;color:#5b168a!important;background:#fff!important;font-weight:800!important}
@media(max-width:700px){.bonvis-auth-grid,.bonvis-text-fields{grid-template-columns:1fr}.bonvis-product-intro{margin-top:2px!important}}

/* V1.3.1 — boutons harmonisés + bibliothèque Mes créations */
.bonvis-app .button,
.bonvis-app button:not(.bonvis-auth-tabs button),
.bonvis-account .button,
.bonvis-account button,
.bonvis-premium-btn,
.bonvis-product-page.single-product div.product>.summary form.cart button.single_add_to_cart_button,
.bonvis-product-page.single-product div.product>.summary form.cart .single_add_to_cart_button,
.bonvis-product-page .single_add_to_cart_button.button.alt{
 appearance:none!important;border:0!important;background:linear-gradient(135deg,#4d0d82 0%,#7b2dbc 52%,#5a128e 100%)!important;color:#fff!important;font-weight:850!important;border-radius:14px!important;box-shadow:0 10px 24px rgba(83,23,134,.24)!important;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;text-decoration:none!important;cursor:pointer!important;line-height:1.2!important;padding:13px 18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;text-align:center!important
}
.bonvis-app .button:hover,.bonvis-app button:not(.bonvis-auth-tabs button):hover,.bonvis-account .button:hover,.bonvis-account button:hover,.bonvis-premium-btn:hover,.bonvis-product-page .single_add_to_cart_button:hover{transform:translateY(-2px)!important;box-shadow:0 14px 30px rgba(83,23,134,.32)!important;filter:brightness(1.05)!important;color:#fff!important}
.bonvis-app .bonvis-result-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;padding:15px 18px 18px!important}.bonvis-app .bonvis-result-actions>*{width:100%!important;box-sizing:border-box!important;margin:0!important}
.bonvis-product-page.single-product div.product>.summary form.cart{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important}.bonvis-product-page.single-product div.product>.summary form.cart .single_add_to_cart_button{min-height:52px!important;padding:15px 28px!important;font-size:16px!important}
.bonvis-pack-selector label{border:1px solid #e4d5ed;border-radius:13px;padding:12px 14px;background:#fff;transition:.15s ease}.bonvis-pack-selector label:has(input:checked){border-color:#8745b7;background:#f7effc;box-shadow:0 6px 16px rgba(85,25,132,.08)}
.bonvis-account{max-width:1180px;margin:0 auto;padding:6px 0 30px}.bonvis-account-head{display:flex;justify-content:space-between;align-items:flex-end;gap:26px;padding:24px 26px;margin-bottom:24px;border:1px solid #eadcf3;border-radius:22px;background:linear-gradient(145deg,#fff,#faf5fd);box-shadow:0 8px 24px rgba(73,22,111,.06)}.bonvis-account-kicker{display:inline-block;color:#7425aa;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:5px}.bonvis-account-head h2{font-size:32px;line-height:1.1;color:#251039;margin:0 0 8px}.bonvis-account-head p{margin:0;max-width:680px;color:#68566f}.bonvis-account-tools{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:250px}.bonvis-account-balance{border-radius:15px;background:#f3e7fa;padding:11px 14px;color:#48116f}.bonvis-account-balance small{display:block;color:#786082;font-size:11px;text-transform:uppercase;font-weight:800}.bonvis-account-balance strong{font-size:18px}.bonvis-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.bonvis-card{overflow:hidden;border:1px solid #eadcf3;border-radius:22px;background:#fff;box-shadow:0 9px 28px rgba(63,17,98,.08);transition:transform .18s ease,box-shadow .18s ease}.bonvis-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(63,17,98,.12)}.bonvis-card-image{aspect-ratio:1/1;background:linear-gradient(145deg,#fbf8fd,#f3e9f8);display:flex;align-items:center;justify-content:center;padding:13px}.bonvis-card-image img{width:100%;height:100%;object-fit:contain;border-radius:14px}.bonvis-card-body{padding:16px}.bonvis-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8a7892;font-size:12px}.bonvis-card-meta span{background:#f2e6f8;color:#6e239d;border-radius:999px;padding:3px 8px;font-weight:800}.bonvis-card-prompt{min-height:50px;margin:10px 0 15px;color:#4e4055;line-height:1.45}.bonvis-card-actions{display:grid;grid-template-columns:1fr;gap:8px}.bonvis-card-actions .bonvis-premium-btn{width:100%!important;box-sizing:border-box!important;font-size:13px!important;padding:11px 12px!important}.bonvis-card-actions .bonvis-delete{opacity:.82}.bonvis-empty{grid-column:1/-1;text-align:center;padding:55px 25px;border:2px dashed #dec7ec;border-radius:22px;background:#fcf9fe}.bonvis-empty>span{display:block;font-size:34px}.bonvis-empty h3{color:#35104f;margin:10px 0 6px}.bonvis-empty p{color:#74637d;margin-bottom:16px}
@media(max-width:980px){.bonvis-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.bonvis-account-head{align-items:stretch;flex-direction:column}.bonvis-account-tools{min-width:0;width:100%}}
@media(max-width:620px){.bonvis-gallery{grid-template-columns:1fr}.bonvis-account{padding-left:12px;padding-right:12px}.bonvis-account-head{padding:20px}.bonvis-account-head h2{font-size:28px}.bonvis-app .bonvis-result-actions{grid-template-columns:1fr}}
/* V1.4.0 — choix nouveau/existant */
.bonvis-start-mode{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:1320px;margin:0 auto 22px}.bonvis-mode-card{display:flex;align-items:center;gap:16px;padding:20px 24px;border:1px solid #e3d5f4;border-radius:20px;background:#fff;cursor:pointer;box-shadow:0 10px 28px rgba(68,14,112,.07);transition:.2s}.bonvis-mode-card:hover{transform:translateY(-2px);border-color:#7b2bc1;box-shadow:0 14px 32px rgba(68,14,112,.13)}.bonvis-mode-card>span{font-size:30px}.bonvis-mode-card strong{display:block;font-size:18px;color:#25033d}.bonvis-mode-card small{display:block;margin-top:4px;color:#6c6173}.bonvis-existing-picker{max-width:1320px;margin:0 auto 24px;padding:22px;border:1px solid #e3d5f4;border-radius:22px;background:#fbf8ff}.bonvis-picker-head{display:flex;justify-content:space-between;align-items:center}.bonvis-picker-close{border:0;background:transparent;font-size:30px;cursor:pointer}.bonvis-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:16px}.bonvis-picker-item{background:#fff;border:1px solid #eadff5;border-radius:15px;padding:8px;text-decoration:none;text-align:center}.bonvis-picker-item img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:10px;background:#f7f2fb}.bonvis-picker-item span{display:block;padding:8px 4px;font-weight:700;color:#57109a}@media(max-width:800px){.bonvis-start-mode{grid-template-columns:1fr}.bonvis-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.4.1 — modes Création / Modification strictement exclusifs */
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-create-panel{display:none!important}
.bonvis-app.bonvis-creator.is-refine-mode{grid-template-columns:1fr!important}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-live-preview{min-height:auto;display:block;padding:30px}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-result{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:24px;align-items:start;width:100%;margin:0}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-image-wrap{grid-column:1;grid-row:1 / span 2}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-result-actions{grid-column:1;grid-row:3;padding:0!important}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-refine-panel{display:block!important;grid-column:2;grid-row:1 / span 3;margin:0!important;padding:24px!important;position:sticky;top:20px}
.bonvis-app.bonvis-creator.is-refine-mode .bonvis-refine-panel h3{font-size:27px;margin-bottom:7px}
@media(max-width:850px){.bonvis-app.bonvis-creator.is-refine-mode .bonvis-result{grid-template-columns:1fr}.bonvis-app.bonvis-creator.is-refine-mode .bonvis-image-wrap,.bonvis-app.bonvis-creator.is-refine-mode .bonvis-result-actions,.bonvis-app.bonvis-creator.is-refine-mode .bonvis-refine-panel{grid-column:1;grid-row:auto}.bonvis-app.bonvis-creator.is-refine-mode .bonvis-refine-panel{position:static}}

/* V1.4.3 - image edit compatibility fix */
.bonvis-refine-balance{margin:14px 0 18px!important;display:flex!important;flex-wrap:wrap;gap:8px}
.bonvis-test-unlimited{background:linear-gradient(135deg,#34105f,#7a22c9)!important;color:#fff!important;font-weight:800!important;border:none!important}
.bonvis-refine-status{margin-top:12px;min-height:4px}
.bonvis-refine-status .bonvis-error,.bonvis-refine-status .bonvis-policy-error{display:block;padding:12px 14px;border-radius:12px;background:#fff2f2;color:#9d1414;border:1px solid #efb5b5;font-weight:700}
.bonvis-refine-status .bonvis-success{display:block;padding:12px 14px;border-radius:12px;background:#effbf3;color:#176c34;border:1px solid #bce7ca}
.bonvis-refine-cost{display:block;margin-top:10px}

/* V1.4.5 — états initiaux anti-flash / interface robuste */
.bonvis-product-page [hidden]{display:none!important}
.bonvis-generation-overlay[hidden],.bonvis-result[hidden],.bonvis-refine-panel[hidden],.bonvis-create-panel[hidden],.bonvis-dtf-prep[hidden]{display:none!important}
.bonvis-generation-overlay.is-active:not([hidden]){display:flex!important}

/* V1.4.6 — verrouillage affichage initial, priorité supérieure aux modes */
.bonvis-app.bonvis-creator .bonvis-generation-overlay[hidden],
.bonvis-app.bonvis-creator .bonvis-result[hidden],
.bonvis-app.bonvis-creator .bonvis-refine-panel[hidden],
.bonvis-app.bonvis-creator .bonvis-create-panel[hidden],
.bonvis-app.bonvis-creator .bonvis-dtf-prep[hidden]{display:none!important}

/* V1.4.9 — mise en page produit isolée, centrée et sans impact Divi header/footer */
/* IMPORTANT : aucune règle ne cible #main-content, .container, .et_pb_*, header ou footer. */
.bonvis-product-page.single-product div.product{
  width:100%!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.bonvis-product-page.single-product div.product:after{content:"";display:table;clear:both}

/* Zone créateur : centrage uniquement des blocs de cette extension */
.bonvis-product-page .bonvis-product-intro,
.bonvis-product-page .bonvis-start-mode,
.bonvis-product-page .bonvis-existing-picker,
.bonvis-product-page .bonvis-app.bonvis-creator,
.bonvis-product-page .bonvis-buy-separator,
.bonvis-product-page .bonvis-buy-intro,
.bonvis-product-page .bonvis-separator,
.bonvis-product-page .bonvis-marketing{
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.bonvis-product-page .bonvis-product-intro,
.bonvis-product-page .bonvis-app.bonvis-creator,
.bonvis-product-page .bonvis-buy-separator,
.bonvis-product-page .bonvis-marketing{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
}
.bonvis-product-page .bonvis-start-mode,
.bonvis-product-page .bonvis-existing-picker{
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
}
.bonvis-product-page .bonvis-buy-intro{width:min(900px,calc(100% - 32px))!important;max-width:900px!important}

/* Le créateur retrouve son esthétique 2 colonnes sans toucher au thème */
.bonvis-product-page .bonvis-app.bonvis-creator:not(.is-refine-mode){
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
  overflow:hidden!important;
  border:1px solid #e5d8f2!important;
  border-radius:26px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(49,14,82,.09)!important;
}
.bonvis-product-page .bonvis-live-preview{min-width:0!important}
.bonvis-product-page .bonvis-create-panel{min-width:0!important}
.bonvis-product-page .bonvis-product-intro{text-align:center!important}
.bonvis-product-page .bonvis-product-intro h1,
.bonvis-product-page .bonvis-product-intro .bonvis-lead{margin-left:auto!important;margin-right:auto!important}

/* Zone achat WooCommerce : uniquement le résumé de CE produit */
.bonvis-product-page.single-product div.product .summary{
  float:none!important;
  clear:both!important;
  width:min(1180px,calc(100% - 32px))!important;
  max-width:1180px!important;
  margin:22px auto 44px!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.bonvis-product-page.single-product div.product .summary .product_title,
.bonvis-product-page.single-product div.product .summary .price,
.bonvis-product-page.single-product div.product .summary .woocommerce-product-details__short-description,
.bonvis-product-page.single-product div.product .summary .product_meta{display:none!important}
.bonvis-product-page.single-product div.product .summary form.cart{
  width:100%!important;
  margin:0!important;
  box-sizing:border-box!important;
}

/* Avis : filet de sécurité visuel limité à CE produit, en plus de la désactivation PHP. */
.bonvis-product-page.single-product div.product .woocommerce-tabs,
.bonvis-product-page.single-product div.product #reviews,
.bonvis-product-page.single-product div.product .woocommerce-Reviews{display:none!important}

/* Etat masqué : limité à l'application, jamais au header/footer Divi. */
.bonvis-product-page .bonvis-app [hidden]{display:none!important}

@media(max-width:850px){
  .bonvis-product-page .bonvis-app.bonvis-creator:not(.is-refine-mode){grid-template-columns:1fr!important}
  .bonvis-product-page .bonvis-product-intro,
  .bonvis-product-page .bonvis-start-mode,
  .bonvis-product-page .bonvis-existing-picker,
  .bonvis-product-page .bonvis-app.bonvis-creator,
  .bonvis-product-page .bonvis-buy-separator,
  .bonvis-product-page .bonvis-buy-intro,
  .bonvis-product-page .bonvis-separator,
  .bonvis-product-page .bonvis-marketing,
  .bonvis-product-page.single-product div.product .summary{width:calc(100% - 24px)!important}
}

/* V1.5.0 — pleine largeur du CONTENU uniquement, header/footer Divi intacts
   Les sélecteurs restent confinés à body.bonvis-product-page et à #main-content/.et-l--body.
   Aucun sélecteur ne vise .et-l--header, .et-l--footer, #main-header, header ou footer. */
body.bonvis-product-page #main-content > .container,
body.bonvis-product-page #main-content .container.et_main_content_container{
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.bonvis-product-page #main-content > .container:before,
body.bonvis-product-page #main-content .container.et_main_content_container:before{display:none!important}
body.bonvis-product-page #left-area{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}
body.bonvis-product-page #sidebar{display:none!important}

/* Si le produit est rendu par un modèle Theme Builder Divi, on libère seulement la zone BODY.
   Header et footer Theme Builder ne sont jamais ciblés. */
body.bonvis-product-page .et-l--body .et_builder_inner_content,
body.bonvis-product-page .et-l--body .et_pb_section{
  width:100%!important;
  max-width:none!important;
}
body.bonvis-product-page .et-l--body .et_pb_section > .et_pb_row{
  width:100%!important;
  max-width:none!important;
}

/* Canevas du produit : large, centré, avec une marge confortable sur grand écran. */
body.bonvis-product-page.single-product div.product{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.bonvis-product-page .bonvis-product-intro,
body.bonvis-product-page .bonvis-start-mode,
body.bonvis-product-page .bonvis-existing-picker,
body.bonvis-product-page .bonvis-app.bonvis-creator,
body.bonvis-product-page .bonvis-buy-separator,
body.bonvis-product-page .bonvis-buy-intro,
body.bonvis-product-page .bonvis-separator,
body.bonvis-product-page .bonvis-marketing,
body.bonvis-product-page.single-product div.product .summary{
  width:calc(100% - 48px)!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.bonvis-product-page .bonvis-buy-intro{max-width:980px!important;text-align:center!important}
body.bonvis-product-page .bonvis-product-intro{padding-top:8px!important}

/* Le créateur garde sa présentation esthétique et symétrique. */
body.bonvis-product-page .bonvis-app.bonvis-creator:not(.is-refine-mode){
  grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr)!important;
}

/* Avis WooCommerce : masqués exclusivement pour ce produit, sans toucher aux autres pages. */
body.bonvis-product-page.single-product .woocommerce-tabs,
body.bonvis-product-page.single-product #reviews,
body.bonvis-product-page.single-product .woocommerce-Reviews,
body.bonvis-product-page.single-product .comment-respond,
body.bonvis-product-page.single-product #review_form_wrapper{display:none!important}

@media(max-width:900px){
  body.bonvis-product-page .bonvis-app.bonvis-creator:not(.is-refine-mode){grid-template-columns:1fr!important}
  body.bonvis-product-page .bonvis-product-intro,
  body.bonvis-product-page .bonvis-start-mode,
  body.bonvis-product-page .bonvis-existing-picker,
  body.bonvis-product-page .bonvis-app.bonvis-creator,
  body.bonvis-product-page .bonvis-buy-separator,
  body.bonvis-product-page .bonvis-buy-intro,
  body.bonvis-product-page .bonvis-separator,
  body.bonvis-product-page .bonvis-marketing,
  body.bonvis-product-page.single-product div.product .summary{width:calc(100% - 24px)!important}
}
