:root{--boec-accent:#32105f;--boec-accent2:#5917a6;--boec-soft:#f0e8fb;--boec-ink:#1d1230;--boec-line:#e4d8f8;--boec-danger:#b91c1c}.boec-wrap{--accent:var(--boec-accent);--accent2:var(--boec-accent2);font-family:Inter,Arial,sans-serif;background:var(--boec-soft);border-radius:24px;box-shadow:0 18px 60px #0002;overflow:hidden;margin:18px 0;color:var(--boec-ink);width:calc(100vw - 36px);max-width:none!important;position:relative;left:50%;transform:translateX(-50%)}.boec-wrap *{box-sizing:border-box}.boec-tabs{display:flex;gap:8px;padding:14px 16px;background:linear-gradient(90deg,var(--accent),var(--accent2));min-height:86px;align-items:flex-start}.boec-tab-wrap{display:flex;align-items:center;background:#ffffff55;border-radius:999px;padding-right:5px}.boec-tab{border:0;border-radius:999px 0 0 999px;padding:12px 18px;background:#fff;color:#24113e;font-weight:900;font-size:17px}.boec-delete-project{border:0;background:#fff;color:#c0222b;border-radius:999px;width:38px;height:38px;cursor:pointer;font-size:17px;margin-left:4px}.boec-leftbar{position:absolute;z-index:8;left:12px;top:98px;display:flex;flex-direction:column;gap:8px}.boec-leftbar button{border:0;border-radius:18px;background:#fff;color:var(--accent);width:62px;min-height:60px;padding:9px 6px;box-shadow:0 8px 22px #0002;font-weight:900;font-size:22px;cursor:pointer;transition:.15s}.boec-leftbar button:hover,.boec-leftbar button.active{background:var(--accent);color:#fff;box-shadow:0 8px 22px #32105f44}.boec-leftbar .danger{color:var(--boec-danger)}.boec-leftbar .danger:hover{background:var(--boec-danger);color:#fff}.boec-leftbar .boec-text-tool,.boec-leftbar .boec-save-tool{font-size:12px;line-height:1.05}.boec-main{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:10px;padding:12px 10px 12px 94px}.boec-stage{background:#fff;border:4px solid var(--accent);border-radius:18px;height:730px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ded0f2}.boec-canvas{display:block;width:100%;height:100%;touch-action:none;background-image: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;cursor:default}.boec-width-label,.boec-height-label,.boec-zoom-label{position:absolute;background:#ffffffde;color:var(--accent);font-weight:900;border-radius:999px;padding:5px 9px;font-size:12px;pointer-events:none;box-shadow:0 2px 8px #0001}.boec-width-label{top:8px;left:50%;transform:translateX(-50%)}.boec-height-label{left:8px;top:50%;transform:rotate(-90deg) translateX(50%);transform-origin:left top}.boec-zoom-label{right:9px;bottom:9px}.boec-panel{background:#fff;border-radius:18px;padding:10px;box-shadow:0 8px 30px #0001;height:730px;overflow:auto}.boec-panel details{border:1px solid var(--boec-line);border-radius:18px;margin:0 0 10px;background:#fbf9ff;overflow:hidden}.boec-panel summary{padding:13px 14px;background:#efe7fb;color:var(--accent);font-size:16px;font-weight:900;cursor:pointer;list-style:none}.boec-panel summary::-webkit-details-marker{display:none}.boec-panel summary:before{content:'▸';display:inline-block;margin-right:7px;transition:transform .15s}.boec-panel details[open]>summary:before{transform:rotate(90deg)}.boec-panel details>*:not(summary){margin:11px 13px}.boec-detail-body,.boec-selected-body{margin:0!important;padding:12px 13px}.boec-field{display:block;font-weight:700;color:#2d1847;margin:8px 0}.boec-panel select,.boec-panel input[type=number],.boec-panel textarea{width:100%;border:1px solid #d6c5ef!important;border-radius:14px!important;padding:10px 11px!important;background:#fff!important;color:#24113e!important;font-size:14px!important;box-shadow:none!important}.boec-panel input[type=color]{width:58px;height:42px;border:1px solid #d6c5ef;border-radius:12px;background:#fff;padding:3px}.boec-panel input[type=range]{width:100%;accent-color:var(--accent)}.boec-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.boec-check{display:block;background:#f0e8fb;border-radius:14px;padding:10px;margin:10px 0;color:#2d1847;font-weight:700}.boec-check input{width:auto!important}.boec-file{display:none}.boec-panel button,.boec-panel .boec-studio-link{border:0;border-radius:14px;background:var(--accent);color:#fff!important;padding:12px 14px;font-weight:900;margin:6px 0;cursor:pointer;text-decoration:none;display:block;text-align:center}.boec-upload-btn,.boec-add-text{width:100%}.boec-note{font-size:12px;color:#59416f;background:#f1e9fb;border-radius:12px;padding:9px 10px;line-height:1.45}.boec-ai-subpanel{margin:10px 0!important;border:1px solid rgba(62,16,105,.22)!important;border-radius:14px!important;background:rgba(124,77,255,.045)!important}.boec-ai-subpanel>summary{font-size:14px!important;padding:11px 12px!important;background:rgba(124,77,255,.10)!important}.boec-ai-box{margin:0!important;padding:12px!important}.boec-ai-box p{font-size:12px;line-height:1.45;color:#5b4b68}.boec-selected-panel{border-color:#b995f2!important}.boec-selected-panel>summary{background:#e7daf8!important}.boec-measure-edit{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f2eafa;border-radius:14px;padding:10px;margin-bottom:8px}.boec-measure-edit label{font-size:12px;font-weight:900;color:var(--accent)}.boec-selected-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.boec-selected-actions button{font-size:12px;padding:9px!important;margin:0!important;background:#eee6f8!important;color:var(--accent)!important}.boec-selected-actions .danger{background:#fff0f3!important;color:#9f1239!important}.boec-text-edit-wrap{display:none}.boec-price{background:var(--accent);color:#fff;border-radius:16px;padding:12px;margin-top:12px;line-height:1.75}.boec-price div{display:flex;justify-content:space-between}.boec-price .total{font-size:16px;border-top:1px solid #ffffff44;margin-top:6px;padding-top:6px}.boec-preview,.boec-cart{width:100%!important;font-size:15px!important;margin:7px 0!important}.boec-preview{background:#4b168f!important}.boec-cart{background:#32105f!important}.boec-modal{display:none;position:fixed;inset:0;background:#0008;z-index:99999;padding:30px;overflow:auto;align-items:center;justify-content:center}.boec-modal>div{background:#fff;border-radius:24px;max-width:860px;width:min(860px,94vw);margin:auto;padding:24px;position:relative}.boec-close{position:absolute;right:16px;top:12px;border:0;background:#eee;border-radius:99px;width:38px;height:38px;font-size:22px}.boec-ai-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.boec-ai-options button{border:2px solid #e6d7f1;background:#faf6fd;border-radius:18px;padding:22px 16px;color:#32104e;text-align:left}.boec-ai-options strong,.boec-ai-options small{display:block}.boec-ai-options small{margin-top:6px;color:#666}.boec-preview-img{display:block;max-width:600px;width:100%;margin:16px auto;border-radius:14px}.boec-design-list button{width:100%;text-align:left;background:#f5f1ff;color:#24164f;border:0;border-radius:14px;padding:12px;margin:8px 0}
/* intro */
body.boec-overlay-open{overflow:hidden!important}.boec-guide-intro,.boec-entry-choice{display:none;position:fixed;inset:0;z-index:2147483646;background:rgba(20,8,45,.62);align-items:center;justify-content:center;padding:20px}.boec-guide-intro>div{position:relative;width:min(540px,calc(100vw - 30px));background:#fff;border-radius:24px;padding:30px;text-align:center;box-shadow:0 30px 100px #0008}.boec-guide-welcome{font-size:42px}.boec-guide-intro h2,.boec-entry-choice h2{color:#35105f;margin:8px 0}.boec-guide-intro p,.boec-entry-choice p{line-height:1.55;color:#493a5a}.boec-guide-begin{width:100%;margin-top:14px;background:#35105f;color:#fff;border:0;border-radius:14px;padding:14px;font-size:16px;font-weight:900}.boec-guide-skip{margin-top:9px;background:transparent;color:#5a4770;border:0;text-decoration:underline;cursor:pointer}.boec-guide-x{position:absolute;right:14px;top:14px;width:38px;height:38px;border-radius:50%;background:#f1eafa;color:#35105f;border:0;font-size:20px}.boec-entry-choice{z-index:2147483647}.boec-entry-choice>div{width:min(720px,94vw);background:#fff;border-radius:24px;padding:28px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.3)}.boec-entry-icon{font-size:34px}.boec-entry-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.boec-entry-cards button{border:2px solid #e6d7f1;background:#faf6fd;border-radius:18px;padding:22px 16px;cursor:pointer;color:#32104e}.boec-entry-cards button:hover{border-color:#5b1687;background:#f3e7fb}.boec-entry-cards strong{display:block;font-size:17px}.boec-entry-cards small{display:block;margin-top:7px;font-size:13px;color:#666}
/* guide spotlight */
.boec-guide-layer{display:none;position:fixed;inset:0;z-index:2147483647;background:rgba(20,8,45,.56)}.boec-guide-focus{position:fixed;border:3px solid #8c4fda;border-radius:16px;box-shadow:0 0 0 5px rgba(255,255,255,.82),0 0 34px rgba(139,82,218,.75);transition:all .2s;pointer-events:none}.boec-guide-tip{position:fixed;width:360px;background:#fff;border-radius:18px;padding:18px;box-shadow:0 20px 70px #0007;color:#30203f}.boec-guide-tip h3{margin:8px 0 6px;color:#35105f;font-size:19px}.boec-guide-tip p{margin:0 0 14px;line-height:1.5;font-size:14px}.boec-guide-count{font-weight:800;color:#7040a6}.boec-guide-progress{height:6px;background:#eee5f7;border-radius:99px;overflow:hidden;margin-bottom:8px}.boec-guide-progress i{display:block;height:100%;background:linear-gradient(90deg,#35105f,#8b52da)}.boec-guide-actions{display:flex;gap:8px;justify-content:space-between}.boec-guide-actions button{background:#35105f;color:#fff;border:0;border-radius:11px;padding:10px 12px;font-weight:800}.boec-guide-pass{display:block;margin:9px auto 0;background:transparent;color:#6d5a80;border:0;text-decoration:underline;font-size:12px;cursor:pointer}
@media(max-width:1150px){.boec-main{grid-template-columns:minmax(0,1fr) 330px}.boec-stage,.boec-panel{height:680px}.boec-leftbar button{width:56px;min-height:54px}.boec-main{padding-left:84px}}@media(max-width:900px){.boec-wrap{width:100%;left:auto;transform:none;border-radius:0}.boec-leftbar{position:static;flex-direction:row;flex-wrap:wrap;padding:8px}.boec-leftbar button{width:52px;min-height:48px}.boec-main{padding:8px;grid-template-columns:1fr}.boec-stage{height:520px}.boec-panel{height:auto;max-height:none}.boec-entry-cards{grid-template-columns:1fr}}@media(max-width:600px){.boec-stage{height:430px}.boec-tabs{min-height:70px}.boec-main{padding:6px}.boec-panel{padding:7px}.boec-guide-tip{width:calc(100vw - 28px);left:14px!important}}

/* V0.8 — palette atelier et contrôles simplifiés */
.boec-color-block{padding:10px 0 13px;border-bottom:1px solid #eadff7}.boec-color-block:last-of-type{border-bottom:0}.boec-color-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;color:#2e164a}.boec-color-head strong{font-size:14px}.boec-color-current{font-size:11px;font-weight:900;background:#eee5f8;color:#4a167d;border-radius:999px;padding:4px 8px}.boec-color-palette{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:7px}.boec-color-swatch{position:relative!important;display:block!important;width:27px!important;height:27px!important;min-width:27px!important;padding:0!important;margin:0 auto!important;border-radius:50%!important;background:var(--swatch)!important;border:1px solid rgba(20,10,30,.18)!important;box-shadow:0 1px 3px #0001!important}.boec-color-swatch.is-selected{outline:3px solid #5b21b6!important;outline-offset:2px;transform:scale(1.04)}.boec-color-swatch:hover{transform:scale(1.12)}.boec-thread-note{margin:11px 0 0;padding:9px 10px;border-radius:12px;background:#f4eefb;color:#5d4a70;font-size:11px;line-height:1.4}.boec-panel>.boec-preview,.boec-panel>.boec-cart{position:relative;z-index:2}.boec-panel .boec-main-panel[data-guide="finish"] .boec-field{margin-bottom:11px}.boec-panel .boec-main-panel[data-guide="finish"] select{font-weight:600}.boec-selected-panel{display:none}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1250px){.boec-color-palette{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}.boec-color-swatch{width:26px!important;height:26px!important;min-width:26px!important}}

/* V0.9 — multi-écussons, édition panier et aperçu atelier */
.boec-tabs{align-items:center;gap:10px;overflow-x:auto;white-space:nowrap}.boec-tabs-list{display:flex;gap:8px;align-items:center}.boec-tab-wrap{background:rgba(255,255,255,.35);padding:4px;border-radius:999px;display:flex;align-items:center}.boec-tab-wrap.active{background:#fff}.boec-patch-tab{border:0;background:transparent;color:#26143c;font-weight:900;padding:9px 12px;cursor:pointer;font-size:14px}.boec-patch-delete{border:0;background:#fff;color:#c7354d;width:32px;height:32px;border-radius:50%;cursor:pointer}.boec-add-patch{border:0;background:#fff;color:#32105f;border-radius:999px;padding:12px 18px;font-weight:900;cursor:pointer}.boec-edit-badge{margin-left:auto;background:#fff;color:#32105f;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900}.boec-selected-panel{border:2px solid #b995f2!important;background:#fff!important}.boec-selected-panel[open]{display:block!important}.boec-selected-panel summary{background:#e7daf8!important}.boec-selected-actions{grid-template-columns:1fr 1fr}.boec-preview-card{display:grid;grid-template-columns:minmax(240px,42%) 1fr;gap:18px;padding:16px;border:1px solid #e8def4;border-radius:18px;margin:14px 0;background:#fcfaff}.boec-preview-card img{width:100%;height:auto;border-radius:14px;border:1px solid #ddd;background-image: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:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}.boec-preview-card h3{margin:0 0 8px;color:#32105f}.boec-preview-codes{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.boec-preview-codes span{background:#efe7fb;color:#35105f;border-radius:999px;padding:7px 10px;font-size:12px}.boec-price .grand{border-top:1px solid #ffffff55;margin-top:6px;padding-top:7px;font-size:16px}.boec-curve-value,.boec-text-curve-value{display:inline-block;min-width:34px;margin-left:7px;background:#efe7fb;border-radius:999px;padding:2px 7px;text-align:center;font-size:11px;color:#32105f;font-weight:900}.boec-bat-required{background:#fff4d6;color:#6b4a00}.boec-cart-thumb{border-radius:8px!important}.boec-main{align-items:start}
@media(max-width:900px){.boec-preview-card{grid-template-columns:1fr}.boec-edit-badge{display:none}.boec-add-patch{padding:10px 13px}}

/* V1.0 — ergonomie texte, banque de formes, cotes proches et rendu atelier */
.boec-width-label,.boec-height-label{z-index:7;border:1px solid #d9c8ef;background:#fff;color:#32105f;box-shadow:0 3px 12px rgba(50,16,95,.15);white-space:nowrap}
.boec-width-label{transform:translate(-50%,-50%)}
.boec-height-label{transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}
.boec-curve-ui{display:grid;grid-template-columns:repeat(3,1fr) 34px 44px 34px;gap:5px;align-items:center;margin-top:6px}
.boec-curve-ui button{margin:0!important;padding:8px 6px!important;border-radius:10px!important;background:#eee6f8!important;color:#3a1267!important;font-size:11px!important}
.boec-curve-ui button.active{background:#3b126d!important;color:#fff!important}
.boec-curve-ui .boec-curve-step{font-size:18px!important;font-weight:900!important;padding:5px!important}
.boec-curve-ui .boec-curve-value,.boec-curve-ui .boec-text-curve-value{margin:0;min-width:0;text-align:center;background:#f6f1fc;padding:7px 3px}
.boec-shape-bank{margin-top:14px;padding-top:12px;border-top:1px solid #eadff7}
.boec-shape-bank-head{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#30154d;margin-bottom:9px}
.boec-shape-bank-head label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800}
.boec-shape-bank-head input[type=color]{width:38px;height:34px}
.boec-library-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.boec-library-grid button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-height:58px;padding:6px!important;margin:0!important;background:#f6f0fd!important;color:#35105f!important;border:1px solid #dfcef3!important;font-size:20px!important;line-height:1!important}
.boec-library-grid button:hover{background:#eadcf8!important;border-color:#6d28d9!important}
.boec-library-grid small{display:block;margin-top:4px;font-size:9px;line-height:1.05;font-weight:800}
.boec-shape-edit-wrap{background:#f7f2fc;border-radius:12px;padding:8px 10px;margin-bottom:9px}
.boec-stage:after{content:'Aperçu de personnalisation — rendu indicatif';position:absolute;left:12px;bottom:10px;background:rgba(255,255,255,.9);color:#5c4670;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:700;pointer-events:none;box-shadow:0 2px 8px #0001}
@media(max-width:1250px){.boec-curve-ui{grid-template-columns:repeat(3,1fr);}.boec-curve-ui .boec-curve-step,.boec-curve-ui .boec-curve-value,.boec-curve-ui .boec-text-curve-value{grid-row:2}.boec-library-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
/* V1.0.1 — renommage, bibliothèque persistante et CTA aperçu */
.boec-patch-rename{border:0;background:rgba(255,255,255,.82);color:#5b2688;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:15px;font-weight:900}.boec-patch-rename:hover{background:#efe2fb}.boec-preview-modal>div{width:min(980px,94vw)}.boec-confirm-cart{display:block!important;width:min(420px,100%)!important;margin:20px auto 2px!important;padding:16px 24px!important;border:0!important;border-radius:15px!important;background:linear-gradient(135deg,#35105f,#6e20b3)!important;color:#fff!important;font-size:17px!important;font-weight:900!important;box-shadow:0 10px 24px rgba(53,16,95,.28)!important;cursor:pointer!important;transition:.18s ease!important}.boec-confirm-cart:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(53,16,95,.36)!important}.boec-design-list{display:grid;gap:10px}.boec-design-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #e7daf2;border-radius:14px;padding:9px;background:#fbf9fd}.boec-design-open{border:0!important;background:transparent!important;color:#35105f!important;text-align:left!important;padding:8px!important;cursor:pointer}.boec-design-row>div{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.boec-design-row>div button{border:1px solid #dac7ec;background:#fff;color:#4b1a72;border-radius:9px;padding:7px 8px;cursor:pointer;font-size:11px;font-weight:800}.boec-design-row>div .danger{color:#b32742;border-color:#efc5cc}
@media(max-width:650px){.boec-design-row{grid-template-columns:1fr}.boec-design-row>div{justify-content:flex-start}}

/* V1.1 — atelier réaliste, palette de formes, panneau sélection flottant */
.boec-selected-floating{display:none;position:absolute!important;z-index:12;top:14px;right:14px;width:min(310px,38%);max-height:calc(100% - 28px);overflow:auto;margin:0!important;border:2px solid #a77be1!important;border-radius:16px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 14px 38px rgba(48,14,87,.24);backdrop-filter:blur(7px)}
.boec-selected-floating[open]{display:block!important}.boec-selected-floating summary{position:sticky;top:0;z-index:2;padding:10px 12px!important;background:linear-gradient(135deg,#eadcf8,#f7f1fd)!important;color:#35105f!important;font-size:13px!important;font-weight:900!important;cursor:pointer;list-style:none}.boec-selected-floating summary:before{content:'✦';margin-right:6px}.boec-selected-floating .boec-selected-body{padding:10px!important}.boec-selected-floating .boec-field{font-size:11px;margin:6px 0}.boec-selected-floating select,.boec-selected-floating input[type=text]{width:100%;border:1px solid #d8c6ec;border-radius:10px;padding:7px 8px;background:#fff}.boec-selected-floating input[type=color]{width:42px;height:34px}.boec-selected-floating .boec-selected-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.boec-selected-floating .boec-selected-actions button{border:0;border-radius:9px;padding:7px;background:#eee4f8;color:#3a1267;font-size:10px;font-weight:900;cursor:pointer}.boec-selected-floating .boec-selected-actions .danger{background:#fff0f3;color:#a51d39}
.boec-library-categories{display:flex;gap:6px;overflow:auto;padding:2px 0 9px}.boec-library-categories button{flex:0 0 auto!important;display:inline-flex!important;width:auto!important;min-height:30px!important;margin:0!important;padding:6px 9px!important;border:1px solid #dbc8ef!important;border-radius:999px!important;background:#fff!important;color:#4a197b!important;font-size:10px!important;font-weight:900!important}.boec-library-categories button.active{background:#431078!important;color:#fff!important;border-color:#431078!important}.boec-library-grid [data-cat]{display:none}.boec-library-grid [data-cat="basic"]{display:flex}.boec-print-only{display:none}
.boec-save-mode{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.boec-save-mode button,.boec-save-new{border:2px solid #e2d1f3;background:#faf7fd;color:#35105f;border-radius:16px;padding:16px;text-align:left;cursor:pointer}.boec-save-mode button:hover{border-color:#6e2bb0;background:#f1e7fb}.boec-save-mode strong,.boec-save-mode small{display:block}.boec-save-mode small{margin-top:5px;color:#675774;line-height:1.35}.boec-save-new{width:100%;text-align:center;background:linear-gradient(135deg,#35105f,#7025bd);color:#fff;border:0;font-weight:900}.boec-save-modal .boec-field input{width:100%;border:1px solid #d7c5eb;border-radius:12px;padding:11px}
.boec-design-open{display:grid!important;grid-template-columns:76px 1fr;gap:10px;align-items:center}.boec-design-open img,.boec-design-placeholder{width:76px;height:58px;object-fit:contain;border-radius:9px;background-color:#f3eef8;background-image:linear-gradient(45deg,#e7e7e7 25%,transparent 25%),linear-gradient(-45deg,#e7e7e7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e7e7e7 75%),linear-gradient(-45deg,transparent 75%,#e7e7e7 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0}.boec-design-placeholder{display:grid;place-items:center;font-size:9px;color:#705d80}
.boec-stage{background-color:#faf9fc}.boec-canvas{filter:saturate(1.04) contrast(1.015)}
@media(max-width:900px){.boec-selected-floating{width:min(300px,62%);right:8px;top:8px}.boec-save-mode{grid-template-columns:1fr}}
@media(max-width:600px){.boec-selected-floating{width:calc(100% - 16px);max-height:52%;}.boec-library-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.boec-save-mode[hidden]{display:none!important}

/* V1.4 depuis V1.2 — correctifs fluides */
.boec-measure-input{position:absolute!important;z-index:9!important;width:58px!important;height:28px!important;padding:3px 6px!important;border:1px solid #d8caeb!important;border-radius:999px!important;background:#fff!important;color:#351064!important;font-size:12px!important;font-weight:900!important;text-align:center!important;box-shadow:0 3px 10px rgba(53,16,100,.13)!important}
.boec-width-label{transform:translate(-50%,-50%)!important}
.boec-height-label{transform:translate(-50%,-50%) rotate(-90deg)!important}
.boec-leftbar{gap:8px!important}
.boec-leftbar button{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;max-width:58px!important;max-height:58px!important;padding:4px 3px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;overflow:hidden!important;font-size:20px!important;line-height:1!important}
.boec-leftbar button span{display:block;line-height:1!important}
.boec-leftbar button small{display:block!important;font-size:8px!important;line-height:1.05!important;white-space:nowrap!important;font-weight:800!important}
.boec-library-categories{display:flex!important;gap:5px!important;flex-wrap:wrap!important;margin-bottom:8px!important}
.boec-library-categories button{font-size:10px!important;padding:6px 8px!important}
.boec-library-grid button{min-height:72px!important;padding:7px!important}
.boec-library-grid button img{width:40px!important;height:40px!important;object-fit:contain!important;display:block!important;margin:0 auto!important}
.boec-library-grid button small{font-size:9px!important;line-height:1.1!important;display:block!important;margin-top:5px!important}
.boec-tech-message{display:none;position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:35;max-width:82%;padding:11px 15px;border-radius:13px;background:#9f1f35;color:white;font-size:12px;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.boec-selected-panel[style*="display: none"]{display:none!important}

/* V1.4.1 — densité visuelle équivalente à ~80 % navigateur */
@media (min-width:1100px){
 .boec-wrap{border-radius:19px!important;margin:12px 0!important}
 .boec-tabs{min-height:69px!important;padding:11px 13px!important;gap:6px!important}
 .boec-tab,.boec-patch-tab,.boec-add-patch{font-size:13px!important;padding:9px 14px!important}
 .boec-leftbar{left:10px!important;top:79px!important;gap:6px!important}
 .boec-leftbar button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;max-width:48px!important;max-height:48px!important;border-radius:14px!important;font-size:16px!important;padding:3px!important}
 .boec-leftbar button small{font-size:7px!important}
 .boec-main{grid-template-columns:minmax(0,1fr) 300px!important;gap:8px!important;padding:10px 8px 10px 74px!important}
 .boec-stage,.boec-panel{height:584px!important}
 .boec-stage{border-width:3px!important;border-radius:15px!important}
 .boec-panel{border-radius:15px!important;padding:8px!important}
 .boec-panel details{border-radius:14px!important;margin-bottom:8px!important}
 .boec-panel summary{padding:10px 11px!important;font-size:13px!important}
 .boec-detail-body,.boec-selected-body{padding:9px 10px!important}
 .boec-panel select,.boec-panel input[type=number],.boec-panel input[type=text],.boec-panel textarea{font-size:12px!important;padding:8px 9px!important;border-radius:11px!important}
 .boec-btn,.boec-preview,.boec-cart{font-size:12px!important;min-height:38px!important}
}
.boec-width-label,.boec-height-label{pointer-events:auto!important;cursor:text!important}
.boec-measure-input{position:absolute!important;z-index:12!important;width:54px!important;height:26px!important;padding:2px 6px!important;border:1px solid #d8c8ed!important;border-radius:999px!important;background:#fff!important;color:#371060!important;font-size:11px!important;font-weight:900!important;text-align:center!important;box-shadow:0 2px 8px rgba(52,16,95,.14)!important}
.boec-width-label{transform:translate(-50%,-50%)!important}
.boec-height-label{transform:translate(-50%,-50%) rotate(-90deg)!important}
.boec-lib-hidden{display:none!important}
.boec-library-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center}
.boec-selected-panel .boec-edit-text-mm{width:100%!important}

/* V1.4.2 */
.boec-lib-hidden{display:none!important}
@media (min-width:1100px){
 .boec-tabs{min-height:60px!important;padding:8px 11px!important}
 .boec-leftbar{top:68px!important;gap:4px!important}
 .boec-leftbar button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;border-radius:13px!important}
 .boec-leftbar button small{font-size:6.7px!important}
 .boec-main{grid-template-columns:minmax(0,1fr) 282px!important;padding:7px 6px 7px 66px!important}
 .boec-stage,.boec-panel{height:532px!important}
 .boec-panel{padding:6px!important}
 .boec-panel details{margin-bottom:5px!important}
 .boec-panel summary{padding:8px 9px!important;font-size:12px!important}
 .boec-detail-body,.boec-selected-body{padding:7px 8px!important}
 .boec-preview,.boec-cart{min-height:34px!important;padding:7px 9px!important;font-size:11.5px!important}
}

/* V1.4.3 — filtrage banque */
.boec-library-grid > button.boec-lib-hidden{display:none!important;visibility:hidden!important}
.boec-library-grid > button:not(.boec-lib-hidden){visibility:visible}

@media (min-width:1100px){
 .boec-main{grid-template-columns:minmax(0,1fr) 306px!important}
 .boec-grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:6px!important}
 .boec-grid2 .boec-field{min-width:0!important;font-size:10.5px!important;line-height:1.15!important}
 .boec-grid2 input,.boec-grid2 select{min-width:0!important;width:100%!important}
 .boec-panel summary{font-size:11.7px!important}
}
.boec-measure-input{width:66px!important}

/* V1.5.0 — cible visuelle validée */
@media (min-width:1100px){
 .boec-wrap{border-radius:20px!important}
 .boec-tabs{min-height:68px!important;padding:10px 14px!important;align-items:center!important}
 .boec-main{grid-template-columns:minmax(0,1fr) 342px!important;padding:10px 10px 10px 154px!important;gap:10px!important}
 .boec-stage,.boec-panel{height:610px!important}
 .boec-leftbar{left:18px!important;top:82px!important;gap:7px!important;width:124px!important}
 .boec-leftbar button{width:124px!important;height:50px!important;min-width:124px!important;max-width:124px!important;min-height:50px!important;max-height:50px!important;border-radius:15px!important;padding:6px 12px!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:10px!important;font-size:18px!important}
 .boec-leftbar button span{width:27px!important;min-width:27px!important;text-align:center!important}
 .boec-leftbar button small{font-size:10.5px!important;line-height:1!important;white-space:nowrap!important;text-align:left!important}
 .boec-panel{padding:8px!important;border-radius:18px!important}
 .boec-panel details{margin-bottom:7px!important;border-radius:15px!important}
 .boec-panel summary{font-size:13px!important;padding:10px 12px!important}
 .boec-detail-body,.boec-selected-body{padding:10px 11px!important}
 .boec-grid2 .boec-field{font-size:11px!important}
}
.boec-panel textarea.boec-text,.boec-selected-panel textarea.boec-edit-text{
 width:100%!important;min-height:78px!important;resize:vertical!important;background:#fff!important;color:#211331!important;
 caret-color:#5a16a5!important;border:1px solid #cdb9e9!important;box-shadow:inset 0 0 0 1px rgba(90,22,165,.03)!important;
 line-height:1.35!important;font-size:13px!important;padding:10px 11px!important;border-radius:12px!important;
}
.boec-panel textarea.boec-text:focus,.boec-selected-panel textarea.boec-edit-text:focus{outline:2px solid rgba(90,22,165,.22)!important;outline-offset:1px!important}
.boec-align-ui{display:flex;gap:5px;margin-top:6px}
.boec-align-ui button{width:38px;height:32px;border:1px solid #d8c5ef;border-radius:10px;background:#fff;color:#3b1268;font-size:17px;font-weight:900;cursor:pointer}
.boec-align-ui button[data-align="left"]{text-align:left;padding-left:8px}
.boec-align-ui button[data-align="right"]{text-align:right;padding-right:8px}
.boec-align-ui button.active{background:#4a1184;color:#fff;border-color:#4a1184}
.boec-selected-floating{max-width:330px!important}
.boec-selected-panel .boec-edit-font,.boec-panel .boec-font{font-size:12px!important}
/* V1.5.2 — sélecteurs POLY 60 et liste des textes */
.boec-thread-picker{display:block;margin-top:6px}.boec-thread-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(25px,1fr));gap:5px;max-height:150px;overflow:auto;padding:5px;border:1px solid #e4d6f7;border-radius:10px;background:#fff}.boec-thread-swatch{width:25px;height:25px;min-width:25px;border-radius:50%;border:1px solid rgba(0,0,0,.18);background:var(--swatch);padding:0;cursor:pointer}.boec-thread-swatch.is-selected{outline:3px solid #5b21b6;outline-offset:1px}.boec-thread-current{display:inline-block;margin-top:5px;font-weight:700;color:#4b177f}.boec-text-elements-list{display:grid;gap:7px;margin-top:12px}.boec-text-entry{width:100%;text-align:left;border:1px solid #dcc8f5;background:#fff;border-radius:10px;padding:9px 11px;color:#30105f;font-weight:700;cursor:pointer}.boec-text-entry:hover{background:#f5effd}.boec-dimension-row .boec-field{min-width:0}

/* V1.5.3 — corrections ciblées couleurs / minimum / banque */
.boec-selected-floating .boec-text-edit-wrap .boec-grid2{
  grid-template-columns:minmax(0,1.55fr) minmax(105px,.75fr)!important;
  gap:9px!important;
}
.boec-selected-floating .boec-thread-swatches{
  grid-template-columns:repeat(auto-fill,25px)!important;
  justify-content:start!important;
  max-height:118px!important;
}
.boec-selected-floating .boec-thread-swatch{
  position:relative!important;
  z-index:2!important;
  pointer-events:auto!important;
}
.boec-text-min-note{
  margin-top:-3px!important;
  margin-bottom:9px!important;
  font-size:9.5px!important;
  color:#6b5879!important;
}
.boec-shape-bank-head{
  display:block!important;
}

/* V1.5.8 — fiabilité de l’éditeur Élément sélectionné */
.boec-selected-floating{
  z-index:120!important;
  pointer-events:auto!important;
}
.boec-selected-floating .boec-selected-body,
.boec-selected-floating input,
.boec-selected-floating textarea,
.boec-selected-floating select,
.boec-selected-floating button,
.boec-selected-floating .boec-thread-picker,
.boec-selected-floating .boec-thread-swatches{
  pointer-events:auto!important;
}
.boec-selected-floating input,
.boec-selected-floating textarea,
.boec-selected-floating select,
.boec-selected-floating button{position:relative;z-index:121}

/* V1.6.1 — taille directe des silhouettes */
.boec-selected-panel .boec-edit-shape-mm{width:100%!important}

/* V1.6.9 — police visuelle + palette texte pleine largeur */
.boec-selected-floating .boec-font-field{display:block!important;width:100%!important;margin-bottom:8px!important}
.boec-native-font-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.boec-font-picker{position:relative;width:100%;margin-top:5px}
.boec-font-current{width:100%!important;min-height:38px!important;padding:7px 36px 7px 11px!important;text-align:left!important;border:1px solid #cfb8ed!important;border-radius:10px!important;background:#fff!important;color:#2f0d5d!important;font-size:14px!important;cursor:pointer!important}
.boec-font-current:after{content:"▾";position:absolute;right:12px;font-family:Arial,sans-serif}
.boec-font-list{position:absolute;z-index:500;left:0;right:0;top:calc(100% + 4px);max-height:235px;overflow:auto;padding:5px;background:#fff;border:1px solid #cdb5ea;border-radius:11px;box-shadow:0 12px 30px rgba(50,15,90,.20)}
.boec-font-list[hidden]{display:none!important}
.boec-font-option{display:block!important;width:100%!important;min-height:37px!important;padding:7px 10px!important;text-align:left!important;background:#fff!important;border:0!important;border-radius:7px!important;color:#251039!important;font-size:16px!important;line-height:1.15!important;cursor:pointer!important}
.boec-font-option:hover{background:#f1e8fb!important;color:#4a1184!important}
.boec-selected-floating .boec-text-color-field{display:block!important;width:100%!important}
.boec-selected-floating .boec-text-color-field .boec-thread-picker{width:100%!important}
.boec-selected-floating .boec-text-color-field .boec-thread-swatches{width:100%!important;grid-template-columns:repeat(auto-fill,25px)!important;justify-content:start!important;box-sizing:border-box!important}

/* V1.7.0 — interactions fluides */
.boec-selected-floating input,
.boec-selected-floating textarea,
.boec-selected-floating button,
.boec-selected-floating select{transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}

/* V1.7.4 — Séquence / ordre des éléments */
.boec-sequence-panel{padding-bottom:10px!important}
.boec-sequence-list{display:grid;gap:6px;margin:8px 0}
.boec-sequence-item{
 display:grid;grid-template-columns:28px 22px minmax(0,1fr) 62px;align-items:center;gap:5px;
 min-height:42px;padding:5px 6px;border:1px solid #dac7f2;border-radius:10px;background:#fff;
 color:#32105f;cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease;
}
.boec-sequence-item:hover{background:#f8f3fd;border-color:#bd98e8}
.boec-sequence-item.is-selected{border-color:#681eb6;background:#f0e6fb;box-shadow:0 0 0 1px rgba(104,30,182,.12)}
.boec-sequence-item.is-dragging{opacity:.45}
.boec-sequence-item.is-drag-over{border-color:#681eb6;box-shadow:0 2px 0 #681eb6}
.boec-seq-number{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#4a1184;color:#fff;font-weight:800;font-size:11px}
.boec-seq-grip{color:#8a65aa;font-weight:900;letter-spacing:-2px;cursor:grab;text-align:center}
.boec-seq-label{font-size:11px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.boec-seq-controls{display:flex;gap:4px;justify-content:flex-end}
.boec-seq-control{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border:1px solid #d5bdec!important;border-radius:8px!important;background:#f7f0fc!important;color:#451176!important;font-weight:900!important;cursor:pointer!important}
.boec-seq-control:hover:not(:disabled){background:#4a1184!important;color:#fff!important}
.boec-seq-control:disabled{opacity:.28!important;cursor:default!important}

/* V1.7.6 — Séquence verticale V1.7.4 + aperçus visuels */
.boec-sequence-item.boec-sequence-item-visual{
 grid-template-columns:27px 18px 42px minmax(0,1fr) 74px!important;
 min-height:54px!important;
 padding:5px 6px!important;
 gap:5px!important;
}
.boec-sequence-item-visual .boec-seq-thumb{
 width:40px!important;height:40px!important;
 display:grid!important;place-items:center!important;
 overflow:hidden!important;border-radius:8px!important;
 background:#f7f3fb!important;border:1px solid #e1d4ee!important;
}
.boec-sequence-item-visual .boec-seq-thumb img{
 display:block!important;max-width:36px!important;max-height:36px!important;
 width:auto!important;height:auto!important;object-fit:contain!important;
}
.boec-sequence-item-visual .boec-seq-text-preview{
 display:block!important;max-width:37px!important;max-height:34px!important;
 overflow:hidden!important;text-align:center!important;
 font-size:8px!important;line-height:1.05!important;color:#32105f!important;
}
.boec-sequence-item-visual .boec-seq-label{
 font-size:10px!important;font-weight:800!important;
 overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
}
.boec-sequence-item-visual .boec-seq-controls{
 display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important;
}
.boec-sequence-item-visual .boec-seq-control{
 width:33px!important;height:36px!important;min-width:33px!important;
 padding:0!important;border-radius:9px!important;
 border:2px solid #5b159b!important;background:#5b159b!important;
 color:#fff!important;font-size:20px!important;line-height:1!important;font-weight:900!important;
 box-shadow:0 2px 5px rgba(69,17,118,.18)!important;
}
.boec-sequence-item-visual .boec-seq-control:hover:not(:disabled){
 background:#37105f!important;border-color:#37105f!important;transform:translateY(-1px);
}
.boec-sequence-item-visual .boec-seq-control:disabled{
 opacity:.25!important;background:#a98fc0!important;border-color:#a98fc0!important;
 box-shadow:none!important;cursor:default!important;
}
.boec-sequence-item-visual .boec-seq-grip{
 font-size:15px!important;color:#6d3c92!important;cursor:grab!important;
}
