.dtfp-wrap{--accent:#2b0f55;--accent2:#4b168f;font-family:Inter,Arial,sans-serif;background:#f3effb;border-radius:24px;box-shadow:0 18px 60px #0002;overflow:hidden;margin:20px 0;color:#1d1230}.dtfp-tabs{display:flex;gap:8px;padding:14px;background:linear-gradient(90deg,var(--accent),var(--accent2));overflow:auto}.dtfp-tab,.dtfp-add-board{border:0;border-radius:999px;padding:10px 16px;background:#ffffffdc;color:#24113e;font-weight:800;cursor:pointer}.dtfp-tab.active{background:#fff;box-shadow:0 8px 18px #0003}.dtfp-leftbar{position:absolute;z-index:4;margin:88px 0 0 14px;display:flex;flex-direction:column;gap:10px}.dtfp-leftbar button{border:0;border-radius:18px;background:#fff;color:var(--accent);padding:15px 14px;min-width:58px;min-height:54px;box-shadow:0 8px 22px #0003;font-weight:900;font-size:18px;cursor:pointer}.dtfp-leftbar .danger{color:#b91c1c}.dtfp-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;padding:18px}.dtfp-stage{background:#fff;border-radius:24px;min-height:720px;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:inset 0 0 0 1px #ded0f2;overflow:hidden}.dtfp-canvas{width:min(84vh,92%);height:min(84vh,92%);border-radius:18px;background:#fff;box-shadow:0 18px 40px #0001;cursor:grab}.dtfp-canvas:active{cursor:grabbing}.dtfp-hint{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);background:#ffffffd9;border-radius:999px;padding:8px 14px;color:#4a3765}.dtfp-panel{background:#fff;border-radius:24px;padding:14px;box-shadow:0 8px 30px #0001;max-height:800px;overflow:auto}.dtfp-panel details{border:1px solid #e4d8f8;border-radius:18px;margin:0 0 12px;background:#fbf9ff;overflow:hidden}.dtfp-panel summary{padding:14px 16px;background:#efe7fb;color:var(--accent);font-size:18px;font-weight:900;cursor:pointer}.dtfp-panel details>*:not(summary){margin:12px 14px}.dtfp-panel select,.dtfp-panel input[type=number],.dtfp-panel textarea{width:calc(100% - 28px);border:1px solid #d6c5ef;border-radius:14px;padding:11px;background:#fff}.dtfp-panel input[type=color]{width:58px;height:42px;border:1px solid #d6c5ef;border-radius:12px;background:#fff;padding:3px}.dtfp-panel input[type=range]{width:100%;accent-color:var(--accent)}.dtfp-panel button,.dtfp-add-cart,.dtfp-preview-all,.dtfp-validate{border:0;border-radius:16px;background:var(--accent);color:#fff;padding:13px 16px;font-weight:900;margin:7px 4px 7px 0;cursor:pointer}.dtfp-field{display:block;font-weight:700;color:#2d1847}.dtfp-check{display:block;background:#f0e8fb;border-radius:14px;padding:10px;margin:10px 0}.dtfp-bg-swatches{display:flex;flex-wrap:wrap;gap:8px}.dtfp-bg-swatches button{width:58px;height:42px;border:1px solid #ddd;border-radius:10px;color:#111;font-size:10px;padding:2px;background-size:16px 16px!important}.dtfp-pricebox{background:var(--accent);color:#fff;border-radius:18px;padding:14px;margin-top:14px;line-height:1.8}.dtfp-pricebox strong{float:right}.dtfp-add-cart{width:100%;font-size:18px;background:#32105f}.dtfp-preview-all{width:100%;background:#4b168f}.dtfp-selected-panel{border-color:#b995f2!important}.dtfp-text-edit-wrap label{display:block;margin:10px 0;font-weight:700}.dtfp-modal{display:none;position:fixed;inset:0;background:#0008;z-index:99999;padding:30px;overflow:auto}.dtfp-modal>div{background:#fff;border-radius:24px;max-width:960px;margin:auto;padding:22px;position:relative}.dtfp-close{position:absolute;right:16px;top:12px;border:0;background:#eee;border-radius:99px;width:38px;height:38px}.dtfp-summary-board{border:1px solid #e5ddff;border-radius:18px;padding:14px;margin:12px 0}.dtfp-summary-board img{max-width:100%;border-radius:14px;border:1px solid #ddd}.dtfp-designs-list button{display:block;width:100%;text-align:left;background:#f5f1ff;color:#24164f;border:0;border-radius:14px;padding:12px;margin:8px 0}.dtfp-cart-thumb{max-width:90px;border-radius:8px}@media(max-width:900px){.dtfp-main{grid-template-columns:1fr}.dtfp-leftbar{position:static;flex-direction:row;flex-wrap:wrap;margin:8px}.dtfp-stage{min-height:440px}.dtfp-panel{max-height:none}}
.dtfp-wrap{--accent:#32105f;--accent2:#5917a6;background:#f0e8fb}.dtfp-leftbar button{min-width:74px;min-height:68px;font-size:28px;border-radius:22px}.dtfp-leftbar .dtfp-save,.dtfp-leftbar .dtfp-my-designs,.dtfp-leftbar .dtfp-help{font-size:16px}.dtfp-tab-wrap{display:flex;align-items:center;gap:3px;background:#ffffff55;border-radius:999px;padding-right:5px}.dtfp-tab-wrap .dtfp-tab{border-top-right-radius:0;border-bottom-right-radius:0}.dtfp-delete-board{border:0;background:#fff;color:#b91c1c;border-radius:999px;width:34px;height:34px;cursor:pointer;font-size:16px;font-weight:900}.dtfp-orientation:disabled{opacity:.45;cursor:not-allowed}.dtfp-panel details:not([open]){background:#fff}.dtfp-panel details:not([open]) summary{border-radius:18px}.dtfp-canvas{touch-action:none}

.dtfp-tab[contenteditable=true]{outline:3px solid #fff;background:#fff7cc!important;}
.dtfp-panel details{open:false}
.dtfp-wait{display:none;position:fixed;inset:0;z-index:100000;background:rgba(20,8,45,.72);align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:24px;text-align:center}.dtfp-wait>div{background:#32105f;border-radius:24px;padding:28px 34px;box-shadow:0 20px 60px #0008}.dtfp-note{font-size:13px;color:#59416f;background:#f1e9fb;border-radius:12px;padding:10px}.dtfp-image-edit-wrap label{display:block;margin:10px 0;font-weight:700}.dtfp-canvas{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}.dtfp-tab{user-select:text}.dtfp-tab:focus{outline:3px solid #fff7cc;}

/* V10: zone de travail plus large et indicateur dimensions */
.dtfp-main{grid-template-columns:minmax(0,1fr) 360px;gap:8px;padding:12px 8px 12px 96px}
.dtfp-stage{min-height:780px;border-radius:18px}
.dtfp-canvas{width:min(96vh,99%);height:min(96vh,99%)}
.dtfp-leftbar{margin-left:8px}
.dtfp-measure-edit{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 14px!important;background:#f2eafa;border-radius:14px;padding:10px!important}
.dtfp-measure-edit label{font-weight:900;color:#32105f;font-size:13px}.dtfp-measure-edit input{width:100%!important;box-sizing:border-box;margin-top:4px}
.dtfp-open-preview{background:#32105f!important;color:#fff!important;border-radius:12px!important;font-weight:900!important;margin-top:8px!important}
@media(max-width:900px){.dtfp-main{padding:10px;grid-template-columns:1fr}.dtfp-canvas{width:98%;height:auto}.dtfp-stage{min-height:460px}}
/* V12 ergonomie */
.dtfp-main{grid-template-columns:minmax(0,1fr) 320px;gap:10px;padding:12px 10px 12px 92px;}
.dtfp-stage{border:4px solid #32105f;border-radius:18px;overflow:auto;align-items:flex-start;justify-content:flex-start;min-height:760px;}
.dtfp-canvas{width:1100px;height:1100px;max-width:none;max-height:none;margin:18px;border-radius:14px;}
.dtfp-leftbar{margin:86px 0 0 8px;gap:7px;}
.dtfp-leftbar button{min-width:52px;min-height:48px;padding:8px 6px;font-size:20px;border-radius:14px;}
.dtfp-leftbar .dtfp-save,.dtfp-leftbar .dtfp-my-designs,.dtfp-leftbar .dtfp-help{font-size:11px;line-height:1.05;max-width:64px;}
.dtfp-leftbar button.active{background:#32105f;color:#fff;outline:3px solid #c9a8ff;}
.dtfp-panel{max-height:760px;padding:10px;border-radius:18px;}
.dtfp-panel summary{font-size:15px;padding:10px 12px;}
.dtfp-panel details{border-radius:14px;margin-bottom:8px;}
.dtfp-panel button,.dtfp-add-cart,.dtfp-preview-all,.dtfp-validate{padding:10px 12px;border-radius:12px;}
.dtfp-summary-board{background:#fff;}
.dtfp-summary-board img{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;}
@media(max-width:900px){.dtfp-main{padding:8px;grid-template-columns:1fr}.dtfp-stage{min-height:480px}.dtfp-canvas{width:900px;height:900px}.dtfp-leftbar{margin:8px}}

/* V13 ajustements interface */
.dtfp-leftbar button{min-width:58px!important;min-height:54px!important;font-size:22px!important;padding:9px 7px!important}
.dtfp-leftbar .dtfp-save,.dtfp-leftbar .dtfp-my-designs,.dtfp-leftbar .dtfp-help{font-size:12px!important;max-width:72px!important}
.dtfp-main{grid-template-columns:minmax(0,1fr) 300px!important;gap:8px!important;padding-left:96px!important;align-items:start}
.dtfp-stage{height:700px!important;min-height:0!important;max-height:calc(100vh - 210px);overflow:scroll!important;resize:vertical;background:#fff;border:5px solid #32105f!important}
.dtfp-panel{max-height:700px!important;font-size:13px!important}
.dtfp-panel summary{font-size:14px!important;padding:9px 10px!important}.dtfp-panel details>*:not(summary){margin:9px 10px!important}
.dtfp-canvas{margin:14px!important}
.dtfp-tool-pan .dtfp-canvas{cursor:grab!important}.dtfp-tool-pan .dtfp-canvas:active{cursor:grabbing!important}.dtfp-tool-select .dtfp-canvas{cursor:default!important}
.dtfp-leftbar button.active{background:#32105f!important;color:#fff!important;outline:3px solid #c9a8ff!important}
.dtfp-block-preview-box{margin:18px 0;padding:16px;border:2px solid #32105f;border-radius:16px;background:#f6f0ff}.dtfp-block-preview-row{margin:8px 0}.dtfp-block-preview-row .button{margin-left:8px}
#dtfp-wc-preview-modal img,.dtfp-summary-board img{background-color:#fff;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}
@media(max-width:900px){.dtfp-main{padding-left:8px!important;grid-template-columns:1fr!important}.dtfp-stage{height:520px!important;max-height:none}.dtfp-panel{max-height:none!important}}


/* V14 alignement et compacité */
.dtfp-wrap{position:relative}
.dtfp-main{grid-template-columns:minmax(0,1fr) 292px!important;gap:8px!important;padding:10px 8px 10px 92px!important;align-items:start!important}
.dtfp-leftbar{margin:10px 0 0 8px!important;gap:6px!important;top:64px!important}
.dtfp-leftbar button{min-width:60px!important;min-height:50px!important;font-size:21px!important;padding:7px 6px!important;line-height:1!important;display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box}
.dtfp-leftbar .dtfp-save,.dtfp-leftbar .dtfp-my-designs,.dtfp-leftbar .dtfp-help{font-size:11px!important;line-height:1.05!important;word-break:normal;white-space:normal;max-width:60px!important}
.dtfp-stage{height:610px!important;min-height:610px!important;max-height:610px!important;overflow:auto!important;border:6px solid #32105f!important;border-radius:18px!important;background:#fff!important;box-sizing:border-box}
.dtfp-panel{max-height:610px!important;height:610px!important;overflow:auto!important;border-radius:18px!important;box-sizing:border-box}
.dtfp-canvas{margin:12px!important;box-shadow:none!important;border-radius:12px!important}
.dtfp-hint{display:none!important}
.dtfp-panel button,.dtfp-add-cart,.dtfp-preview-all,.dtfp-validate{font-size:12px!important;padding:9px 10px!important;line-height:1.15!important}
.dtfp-panel summary{font-size:13px!important}.dtfp-panel select,.dtfp-panel input[type=number],.dtfp-panel textarea{font-size:12px!important;padding:8px!important}
.dtfp-block-preview-box{display:block!important;margin:16px 0!important;padding:16px!important;border:3px solid #32105f!important;border-radius:16px!important;background:#f6f0ff!important;clear:both!important}
.dtfp-block-preview-row .button,.dtfp-open-preview,.dtfp-edit-btn{margin:6px 6px 6px 0!important;background:#32105f!important;color:#fff!important;border-radius:12px!important;font-weight:900!important;text-decoration:none!important;padding:9px 12px!important;display:inline-block!important}
@media(max-width:900px){.dtfp-main{padding:8px!important;grid-template-columns:1fr!important}.dtfp-leftbar{position:static!important;flex-direction:row!important}.dtfp-stage,.dtfp-panel{height:auto!important;min-height:440px!important;max-height:none!important}}

/* V15 back-office + boutons */
.dtfp-leftbar .dtfp-save{font-size:22px!important;max-width:none!important;white-space:nowrap!important;word-break:normal!important}
.dtfp-checkout-buttons,.dtfp-cart-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0!important}
.dtfp-cart-lines p{margin:.2em 0}
.dtfp-block-preview-box .dtfp-block-preview-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#dtfp-wc-preview-modal .dtfp-wc-preview-list img{background-color:#fff!important}
.dtfp-admin .button,.dtfp-open-preview,.dtfp-edit-btn{cursor:pointer}


/* V17 : back-office rétractable + recadrage interface */
.dtfp-stage{overflow:auto!important;scrollbar-gutter:stable both-edges;}
.dtfp-stage::-webkit-scrollbar{width:14px;height:14px}.dtfp-stage::-webkit-scrollbar-thumb{background:#32105f;border-radius:999px;border:3px solid #f2eafa}.dtfp-stage::-webkit-scrollbar-track{background:#efe7fb;border-radius:999px}
.dtfp-canvas{transform-origin:top left;}
