
.k3dbl{--red:#C62828;--ink:#1C1C1E;--cream:#F6F4F1;--line:#E4E0DA;--muted:#6B6863}


.k3dbl *{box-sizing:border-box}
.k3dbl{margin:0;background:var(--cream);color:var(--ink);font-family:Barlow,system-ui,sans-serif}
.k3dbl .cond{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.01em}
.k3dbl .wrap{max-width:1320px;margin:0 auto;padding:24px}
.k3dbl .top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px}
.k3dbl .top h1{margin:0;font-size:52px;line-height:.95;font-weight:800;color:var(--top,#1C1C1E)}
.k3dbl .top h1 span{color:var(--red)}
.k3dbl .top p{margin:6px 0 0;color:var(--topmuted,#6B6863);font-size:16px;max-width:620px}
.k3dbl .grid{display:flex;gap:22px;align-items:flex-start}
.k3dbl .panel{flex:0 0 380px;display:flex;flex-direction:column;gap:14px}
.k3dbl .card{background:#fff;border-radius:22px;padding:20px}
.k3dbl .card h2{margin:0 0 12px;font-size:21px;font-weight:800;display:flex;align-items:center;gap:10px}
.k3dbl .card h2 i{font-style:normal;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:15px}
.k3dbl label.f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#4A4743}
.k3dbl input[type=text]{height:50px;border:1px solid #DCD7D0;border-radius:14px;padding:0 16px;font:600 20px Barlow,sans-serif;background:#FAF8F6}
.k3dbl .chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.k3dbl .chip{height:52px;border:2px solid #ECE7E0;background:#fff;border-radius:14px;cursor:pointer;font-size:20px;color:var(--ink)}
.k3dbl .chip.on{border-color:var(--red);background:#FBE9E7}
.k3dbl .sw{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.k3dbl .sw button{width:42px;height:42px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px #DCD7D0;cursor:pointer}
.k3dbl .sw button.on{box-shadow:0 0 0 3px var(--red)}
.k3dbl .sw input[type=color]{width:42px;height:42px;border:0;padding:0;background:none;cursor:pointer;border-radius:50%;overflow:hidden;-webkit-appearance:none;appearance:none}
.k3dbl .sw input[type=color]::-webkit-color-swatch-wrapper{padding:0}
.k3dbl .sw input[type=color]::-webkit-color-swatch{border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #DCD7D0}
.k3dbl .lab{margin:14px 0 8px;font-size:13px;font-weight:600;color:#4A4743}
.k3dbl .lab b{color:var(--ink)}
.k3dbl .leds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.k3dbl .led{border:2px solid #ECE7E0;background:#fff;border-radius:14px;padding:10px 12px;cursor:pointer;display:flex;align-items:center;gap:10px;font:600 14px Barlow,sans-serif;color:var(--ink);text-align:left}
.k3dbl .led.on{border-color:var(--red);background:#FBE9E7}
.k3dbl .led span{width:22px;height:22px;border-radius:50%;flex:none}
.k3dbl input[type=range]{width:100%;accent-color:var(--red)}
.k3dbl .stagecol{flex:1 1 auto;min-width:0;position:sticky;top:16px}
.k3dbl .stage{position:relative;height:620px;border-radius:26px;overflow:hidden;background:#d9d6d1;box-shadow:0 24px 50px rgba(0,0,0,.15)}
.k3dbl .stage canvas{display:block;width:100%;height:100%;cursor:grab}
.k3dbl .stage canvas:active{cursor:grabbing}
.k3dbl .bar{position:absolute;left:14px;right:14px;top:14px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}
.k3dbl .bar>*{pointer-events:auto}
.k3dbl .pill{height:38px;padding:0 14px;border-radius:999px;border:0;background:rgba(255,255,255,.9);font:700 13px Barlow,sans-serif;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px;backdrop-filter:blur(6px)}
.k3dbl .pill.dark{background:rgba(28,28,30,.85);color:#fff}
.k3dbl .hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);background:rgba(28,28,30,.7);color:#fff;font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;pointer-events:none}
.k3dbl .loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#4A4743}
.k3dbl .order{margin-top:14px}
.k3dbl .sum{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:12px;border-bottom:1px solid #EEEAE4;font-size:14px;color:#4A4743}
.k3dbl .sum b{font:800 30px 'Barlow Condensed',sans-serif;color:var(--ink)}
.k3dbl .check{margin-top:12px;display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#4A4743;cursor:pointer}
.k3dbl .check input{width:18px;height:18px;accent-color:var(--red);margin-top:1px}
.k3dbl .btn{margin-top:12px;width:100%;height:54px;border:0;border-radius:999px;background:var(--red);color:#fff;font:700 16px Barlow,sans-serif;cursor:pointer}
.k3dbl .btn:disabled{background:#CFC9C1;cursor:not-allowed}
.k3dbl .btn2{margin-top:8px;width:100%;height:44px;border:1px solid #DCD7D0;border-radius:999px;background:#fff;font:700 14px Barlow,sans-serif;cursor:pointer}
.k3dbl .small{margin-top:8px;font-size:12px;color:var(--muted);text-align:center}
.k3dbl .ok{display:none;margin-top:12px;padding:12px 14px;border-radius:14px;background:#E7F6EC;color:#1E5B32;font-size:14px;font-weight:600}
@media (max-width:980px){.k3dbl .grid{flex-direction:column}.k3dbl .panel{flex:auto;width:100%;order:1}.k3dbl .stagecol{display:contents}.k3dbl .stage{height:440px;width:100%;order:0}.k3dbl .order{width:100%;order:2;margin-top:0}}
@media (max-width:560px){.k3dbl .stage{height:380px}}
.k3dbl .stage{container-type:inline-size}
@container (max-width:600px){.k3dbl .bar{flex-wrap:wrap;row-gap:6px;left:10px;right:10px;top:10px}.k3dbl .pill{height:32px;padding:0 10px;font-size:12px}.k3dbl .indic{display:none}.k3dbl .hint{display:none}}
@media (max-width:560px){.k3dbl .top h1{font-size:38px}.k3dbl .wrap{padding:16px}}
.k3dbl .ghint{font-size:12px;margin:-2px 0 10px;font-weight:600}.k3dbl .ghint.warn{color:#c2410c}.k3dbl .ghint.ok{color:#15803d}
.k3dbl .dims{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.92);border-radius:14px;padding:8px 12px;line-height:1.15;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.k3dbl .dims small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#8a847c;font-weight:700}
.k3dbl .dims b{font-size:15px;color:#1c1c1e}
.k3dbl .dims span{display:block;font-size:12px;font-weight:700;color:#C62828;margin-top:2px}.k3dbl .dims span:empty{display:none}
.k3dbl .indic{position:absolute;right:14px;bottom:14px;font-size:11px;font-weight:700;color:#fff;background:rgba(28,28,30,.55);padding:5px 10px;border-radius:999px}
.k3dbl .warnbox{margin:12px 0 4px;padding:10px 12px;border-radius:12px;background:#FFF6E8;border:1px solid #F3D7A8;font-size:12.5px;line-height:1.45;color:#6b4e1f}
.k3dbl .warnbox b{color:#8a5a12}
.k3dbl .pill.on{background:#1c1c1e;color:#fff}
@media(max-width:700px){.k3dbl .hint{display:none}.k3dbl .indic{bottom:auto;top:58px;right:10px}.k3dbl .dims{left:10px;bottom:10px}}
.k3dbl .pdet{margin:8px 0 2px;font-size:13px;color:#4A4743}.k3dbl .pdet summary{cursor:pointer;font-weight:700;color:#1c1c1e}
.k3dbl .pdet div div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed #EEEAE4}
.k3dbl .pdet p{margin:6px 0 0;font-size:11.5px;color:#8a847c}
.k3dbl .led em.sup{font-style:normal;font-size:11px;font-weight:800;color:#C62828;background:#FDECEC;border-radius:999px;padding:2px 7px;margin-left:auto;white-space:nowrap;flex-shrink:0}
.k3dbl .seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border-radius:16px;background:#F1EDE8;margin-bottom:14px}
.k3dbl .seg button{height:44px;border:0;border-radius:12px;background:transparent;font:700 14px Barlow,sans-serif;color:#4A4743;cursor:pointer}
.k3dbl .seg button.on{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.k3dbl .drop{position:relative;display:flex;align-items:center;gap:12px;border:2px dashed #CFC9C1;border-radius:16px;padding:12px 14px;background:#FAF8F6;cursor:pointer}
.k3dbl .drop:hover{border-color:var(--red)}
.k3dbl .drop input{position:absolute;opacity:0;width:1px;height:1px}
.k3dbl .drop b{display:block;font-size:15px;word-break:break-all}.k3dbl .drop small{display:block;font-size:12.5px;color:#6B6863}
.k3dbl .dropic{flex:none;width:42px;height:42px;border-radius:50%;background:#FBE9E7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C62828' stroke-width='2'%3E%3Cpath d='M12 16V4M7 9l5-5 5 5'/%3E%3Cpath d='M4 16v3a1 1 0 001 1h14a1 1 0 001-1v-3'/%3E%3C/svg%3E") no-repeat center/22px}
.k3dbl .lpv{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.k3dbl .lpv figure{margin:0;border-radius:12px;background:#F1EDE8;padding:6px;text-align:center}
.k3dbl .lpv img,.k3dbl .lpv canvas{display:block;width:100%;height:96px;object-fit:contain;border-radius:8px;background-color:#fff;background-image:linear-gradient(45deg,#eee 25%,transparent 25%,transparent 75%,#eee 75%),linear-gradient(45deg,#eee 25%,transparent 25%,transparent 75%,#eee 75%);background-size:12px 12px;background-position:0 0,6px 6px}
.k3dbl .lpv figcaption{font-size:11.5px;font-weight:600;color:#6B6863;margin-top:4px}
.k3dbl .opt{display:flex;gap:9px;align-items:flex-start;margin-top:9px;font-size:13.5px;color:#4A4743;cursor:pointer;line-height:1.35}
.k3dbl .opt input{width:17px;height:17px;accent-color:var(--red);margin:0;flex:none}
.k3dbl [hidden]{display:none !important}

/* Remise à zéro face aux styles du thème (Flatsome) */
.k3dbl{background:transparent;font-family:Barlow,system-ui,sans-serif;color:var(--ink);line-height:1.4;--red:#C62828;--ink:#1C1C1E;--cream:#F6F4F1;--line:#E4E0DA;--muted:#6B6863}
.k3dbl .wrap{padding-left:0;padding-right:0}
.k3dbl button,.k3dbl input,.k3dbl select{margin:0;text-transform:none;letter-spacing:normal;min-height:0;line-height:1.2;box-shadow:none;font-family:inherit;max-width:none}
.k3dbl input[type=text]{width:100%;box-sizing:border-box;box-shadow:none;max-width:100%;margin:0}
.k3dbl input[type=range]{height:auto;padding:0;border:0;background:transparent;box-shadow:none;margin:0}
.k3dbl input[type=checkbox]{display:inline-block;margin:0}
.k3dbl label{display:block;font-weight:inherit;font-size:inherit;margin:0;color:inherit}
.k3dbl label.f,.k3dbl .check,.k3dbl .opt,.k3dbl .drop{display:flex}
.k3dbl h1,.k3dbl h2{text-transform:uppercase;letter-spacing:.01em;margin-bottom:0}
.k3dbl p{margin:0}
.k3dbl small{font-size:inherit}
.k3dbl figure{margin:0}
.k3dbl .stagecol{top:var(--k3dbl-sticky,90px)}
.k3dbl .stage canvas{max-width:none}
.k3dbl .err{display:none;margin-top:12px;padding:12px 14px;border-radius:14px;background:#FDECEC;color:#8E1B1B;font-size:14px;font-weight:600}
.k3dbl .ok a{color:#1E5B32;text-decoration:underline}
.k3dbl .btn.busy{opacity:.75;cursor:progress}
.k3dbl .sum b{white-space:nowrap}
.k3dbl .stage{container-type:inline-size}
@container (max-width:760px){.k3dbl .hint{display:none}}
