#bego28{--blue:#1297c8;--navy:#0c3048;--line:#dce8ef;--bg:#f5f9fc;font-family:Arial,Helvetica,sans-serif;color:#0b2f48;max-width:1500px;margin:0 auto;background:linear-gradient(180deg,#fff,#f7fbfe);padding:18px;border-radius:24px;box-sizing:border-box}
#bego28 *{box-sizing:border-box}.bego28-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.bego28-brand img{width:185px;height:68px;object-fit:contain;object-position:left center;display:block}.bego28-sub{letter-spacing:3px;color:#6a8598;font-size:11px;margin-top:4px}.bego28-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.bego28-actions button,.bego28-actions select{border:1px solid #d5e2ea;background:#fff;border-radius:10px;padding:11px 13px;font-weight:800;color:#12364d;cursor:pointer;box-shadow:0 4px 12px rgba(20,55,75,.08);min-height:42px}.bego28-actions .dark{background:#082d45;color:#fff;border-color:#082d45}
.bego28-main{display:grid;grid-template-columns:175px minmax(0,1fr) 360px;gap:18px;align-items:start}.bego28-views,.bego28-tools,.bego28-parts{background:#fff;border:1px solid #e0eaf0;border-radius:18px;box-shadow:0 10px 30px rgba(16,55,75,.06)}.bego28-views{padding:14px}.bego28-views h3,.bego28-tools h3,.bego28-parts h3{margin:0 0 14px;font-size:18px}.bego28-view{display:block;width:100%;background:#f7fafc;border:2px solid transparent;border-radius:12px;padding:6px;margin-bottom:10px;cursor:pointer;color:#12364d;font-weight:800}.bego28-view.active{border-color:var(--blue);background:#fff}.bego28-view img{width:100%;height:78px;object-fit:contain;display:block;border-radius:8px;background:#fff}.bego28-view span{display:block;font-size:11px;margin-top:5px}
.bego28-stage{min-height:790px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px}.bego28-carbox{position:relative;width:min(780px,100%);height:760px;background:#fff;border-radius:22px;overflow:hidden;display:flex;align-items:center;justify-content:center}.bego28-carbox>img{width:100%;height:100%;object-fit:contain;display:block;user-select:none}.bego28-zones,.bego28-overlays{position:absolute;inset:0}.bego28-zones{pointer-events:none}.bego28-zone{position:absolute;inset:0;pointer-events:none;background:transparent}.bego28-zone.colored{mix-blend-mode:multiply;opacity:.58}.bego28-zone.selected:not(.colored){background:rgba(18,151,200,.10);opacity:.35}.bego28-overlays{z-index:8;pointer-events:none}.bego28-decal,.bego28-textoverlay{position:absolute;transform-origin:center center;pointer-events:none;user-select:none;touch-action:none}.bego28-decal.active,.bego28-textoverlay.active{pointer-events:auto;cursor:move}.bego28-decal{height:auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.15))}.bego28-textoverlay{font-weight:700;white-space:nowrap;text-shadow:0 1px 2px rgba(255,255,255,.28)}.bego28-hint{font-size:13px;color:#59788c;margin-top:8px;text-align:center}
.bego28-tools{padding:18px;max-height:690px;overflow:auto}.bego28-selected{display:flex;align-items:center;gap:12px;margin:12px 0}.bego28-resetpart{display:block;width:100%;border:1px solid #d4e3eb;background:#fff5f5;color:#9c2530;border-radius:10px;padding:10px 12px;font-weight:900;cursor:pointer;margin:-2px 0 10px}.bego28-resetpart[hidden]{display:none!important}.bego28-selected>span{width:46px;height:46px;border-radius:50%;border:3px solid #d7e4ec;background:#fff}.bego28-selected strong{display:block;font-size:15px}.bego28-selected small{display:block;color:#71889a;margin-top:3px}.bego28-block{border-top:1px solid #e5edf2;padding-top:14px;margin-top:14px}.bego28-block h4{margin:0 0 9px;font-size:14px}.bego28-tools label{display:block;font-size:11px;font-weight:800;margin:9px 0 5px}.bego28-swatches{display:grid;grid-template-columns:repeat(7,38px);gap:8px;justify-content:start;margin-bottom:12px}.bego28-swatch{width:38px;height:38px;border-radius:50%;border:3px solid #fff;outline:1px solid #cbdbe5;cursor:pointer;padding:0}.bego28-swatch.active{outline:3px solid var(--blue)}.bego28-custom{display:grid;grid-template-columns:56px 1fr;gap:8px}.bego28-custom input[type=color]{width:56px;height:46px;padding:3px;border:1px solid #d5e2ea;border-radius:10px;background:#fff}.bego28-custom input[type=text],.bego28-input{width:100%;height:46px;border:1px solid #d5e2ea;border-radius:10px;padding:0 12px;font-size:15px;color:#314d60;background:#fff}.bego28-upload,.bego28-primary,.bego28-lightbtn{width:100%;border-radius:10px;padding:12px;border:0;text-align:center;cursor:pointer;font-weight:800}.bego28-upload,.bego28-primary{display:block;background:#149acb!important;color:#fff!important}.bego28-lightbtn{background:#f3f7fa;color:#28485c;border:1px solid #dce6ec;margin-top:8px}.bego28-help{font-size:12px;line-height:1.4;color:#688397}.bego28-range input{width:100%}.bego28-range label{display:flex;justify-content:space-between}.bego28-two{display:grid;grid-template-columns:1fr 1.4fr;gap:9px}.bego28-two input[type=color]{width:100%;height:46px;border:1px solid #d5e2ea;border-radius:10px;padding:4px;background:#fff}
.bego28-parts{margin-top:18px;padding:18px;width:100%}.bego28-partshead{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}.bego28-partshead span{font-size:12px;color:#658094}.bego28-grid{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:9px;width:100%}.bego28-part{min-width:0;background:#fff;border:1px solid #dce7ed;border-radius:12px;padding:8px 5px;color:#0b3049;cursor:pointer;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px}.bego28-part.active{border:2px solid var(--blue);background:#f4fbfe}.bego28-part.customized{box-shadow:inset 0 -5px 0 var(--part-color,#fff)}.bego28-part.customized .bego28-num{outline:3px solid var(--part-color,#fff);outline-offset:2px}.bego28-partthumb{position:relative;display:block;width:100%;height:58px;overflow:hidden;border-radius:8px;background:#fff}.bego28-partthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}.bego28-partmask{position:absolute;inset:0;background:rgba(18,151,200,.72);mix-blend-mode:multiply;pointer-events:none}.bego28-num{width:30px;height:30px;border-radius:50%;background:#159aca;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}.bego28-part strong{font-size:10px;line-height:1.15;text-align:center;word-break:normal}
@media(max-width:1100px){.bego28-main{grid-template-columns:130px minmax(0,1fr)}.bego28-tools{grid-column:1/-1;max-height:none}.bego28-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:700px){#bego28{padding:10px;border-radius:0}.bego28-head{align-items:flex-start;flex-direction:column}.bego28-main{display:block}.bego28-views{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}.bego28-views h3{grid-column:1/-1}.bego28-view{margin:0}.bego28-view img{height:58px}.bego28-stage{min-height:560px}.bego28-carbox{height:540px}.bego28-tools{margin-top:12px}.bego28-grid{grid-template-columns:repeat(2,1fr)}.bego28-swatches{grid-template-columns:repeat(7,34px)}.bego28-swatch{width:34px;height:34px}.bego28-partshead{align-items:flex-start;flex-direction:column}}
/* v3.0 - raccolta pubblica configurazioni */
.bego30-modal{position:fixed;inset:0;background:rgba(7,28,42,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.bego30-modal.open{display:flex}.bego30-modalbox{position:relative;width:min(620px,96vw);max-height:82vh;overflow:auto;background:#fff;border-radius:18px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.28);color:#0b2f48}.bego30-modalbox h3{margin:0 40px 14px 0;font-size:22px}.bego30-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer;color:#516c7f}.bego30-modalactions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.bego30-modalactions .bego28-lightbtn,.bego30-modalactions .bego28-primary{width:auto;min-width:130px}.bego30-warning{background:#fff7e6;border:1px solid #f0cf8c;border-radius:12px;padding:14px;line-height:1.5;color:#5d4717}.bego30-label{font-weight:800;font-size:12px;display:block;margin-bottom:6px}.bego30-note{display:block;color:#6b8393;margin-top:6px}.bego30-list{display:grid;gap:8px}.bego30-configrow{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;border:1px solid #dce8ef;background:#f8fbfd;border-radius:12px;padding:12px 14px;cursor:pointer;color:#0b2f48}.bego30-configrow:hover{border-color:#1297c8;background:#f1fbff}.bego30-configrow span{display:flex;flex-direction:column;gap:4px}.bego30-configrow small{color:#748b9a}.bego30-configrow b{color:#1297c8}.bego30-loading{padding:18px 0;color:#6b8393}
/* v3.5 - vettura scomposta in parti reali */
.bego28-piece-thumb{height:66px!important;display:flex!important;align-items:center;justify-content:center;padding:2px;background:linear-gradient(180deg,#f8fbfd,#fff)!important}
.bego28-piece-thumb img{position:static!important;max-width:100%!important;max-height:62px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.12))}
.bego28-partmask{display:none!important}

/* v3.6 - pannello strumenti compatto, tutto visibile senza scrollbar */
.bego28-tools{
  padding:10px 12px!important;
  height:760px!important;
  max-height:760px!important;
  overflow:hidden!important;
  font-size:11px!important;
}
.bego28-tools h3{
  font-size:14px!important;
  margin:0 0 5px!important;
  line-height:1.1!important;
}
.bego28-selected{
  gap:8px!important;
  margin:5px 0 6px!important;
  min-height:34px!important;
}
.bego28-selected>span{
  width:34px!important;
  height:34px!important;
  border-width:2px!important;
}
.bego28-selected strong{font-size:12px!important;line-height:1.1!important}
.bego28-selected small{font-size:10px!important;margin-top:1px!important}
.bego28-resetpart{
  padding:7px 9px!important;
  margin:0 0 6px!important;
  font-size:10px!important;
  line-height:1!important;
}
.bego28-block{
  padding-top:7px!important;
  margin-top:7px!important;
}
.bego28-block h4{
  margin:0 0 5px!important;
  font-size:12px!important;
  line-height:1.1!important;
}
.bego28-tools label{
  font-size:9.5px!important;
  margin:5px 0 3px!important;
  line-height:1.1!important;
}
.bego28-swatches{
  grid-template-columns:repeat(7,26px)!important;
  gap:5px!important;
  margin-bottom:6px!important;
}
.bego28-swatch{
  width:26px!important;
  height:26px!important;
  border-width:2px!important;
}
.bego28-swatch.active{outline-width:2px!important}
.bego28-custom{
  grid-template-columns:42px 1fr!important;
  gap:6px!important;
}
.bego28-custom input[type=color]{
  width:42px!important;
  height:32px!important;
  padding:2px!important;
  border-radius:8px!important;
}
.bego28-custom input[type=text],.bego28-input{
  height:32px!important;
  padding:0 9px!important;
  font-size:11px!important;
  border-radius:8px!important;
}
.bego28-help{
  font-size:9px!important;
  line-height:1.22!important;
  margin:0 0 4px!important;
}
.bego28-upload,.bego28-primary,.bego28-lightbtn{
  padding:7px 9px!important;
  border-radius:8px!important;
  font-size:10px!important;
  line-height:1.05!important;
  min-height:30px!important;
}
.bego28-lightbtn{margin-top:4px!important}
.bego28-range{margin-top:2px!important}
.bego28-range label{
  margin:4px 0 1px!important;
  font-size:9.5px!important;
}
.bego28-range input[type=range]{
  height:18px!important;
  margin:0!important;
}
.bego28-two{gap:6px!important}
.bego28-two input[type=color]{
  height:32px!important;
  padding:2px!important;
  border-radius:8px!important;
}
.bego28-two select.bego28-input{font-size:10.5px!important;padding:0 7px!important}
.bego28-tools small{
  font-size:8.5px!important;
  line-height:1.15!important;
}
@media(max-width:1100px){
  .bego28-tools{height:auto!important;max-height:none!important;overflow:visible!important}
}

/* v3.7 - maschere alpha reali e miniature bianche */
.bego28-partmask{display:none!important}
.bego28-piece-thumb{background:#fff!important}
.bego28-piece-thumb img{filter:none!important}

/* v3.8 - anteprima automatica componente selezionato, con dettaglio e prospettiva */
.bego38-partpreview{margin:4px 0 7px;padding:7px;border:1px solid #dce7ed;border-radius:10px;background:linear-gradient(180deg,#f8fbfd,#fff)}
.bego38-previewcanvas{position:relative;height:84px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:#fff}
.bego38-previewcanvas img{position:relative;z-index:1;max-width:100%;max-height:80px;width:auto;height:auto;object-fit:contain;display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.08))}
.bego38-previewcolor{position:absolute;inset:0;-webkit-mask-mode:alpha;mask-mode:alpha;z-index:2;pointer-events:none;mix-blend-mode:multiply;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transition:background .12s ease,opacity .12s ease}
.bego38-partpreview>small{display:block;margin-top:3px;text-align:center;color:#698194;font-size:8.5px!important}
/* le miniature mostrano il pezzo reale, non forme astratte */
.bego28-piece-thumb img{max-height:70px!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.12))!important}
.bego28-piece-thumb{height:72px!important}

/* v4.0.4 - finiture pellicole wrapping */
.bego404-finishes{margin-top:16px;padding-top:15px;border-top:1px solid #dce7ed}
.bego404-finishhead{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}
.bego404-finishhead h3{margin:0!important;font-size:17px!important}.bego404-finishhead span{font-size:11px;color:#658094}
.bego404-finishgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}
.bego404-finish{background:#fff;border:1px solid #dce7ed;border-radius:12px;padding:7px;cursor:pointer;color:#0b3049;min-height:86px}
.bego404-finish.active{border:2px solid #159aca;background:#f4fbfe}
.bego404-fsample{display:block;height:46px;border-radius:8px;border:1px solid #cad9e1;background-color:#177cc2;margin-bottom:6px;overflow:hidden}
.bego404-finish strong{font-size:10px;line-height:1.1;display:block}
.f-glossy{background-image:linear-gradient(120deg,rgba(255,255,255,.8) 5%,rgba(255,255,255,.08) 28%,transparent 50%,rgba(255,255,255,.4) 72%,transparent 90%)}
.f-satin{background-image:linear-gradient(135deg,rgba(255,255,255,.3),rgba(255,255,255,.05) 45%,rgba(0,0,0,.09))}
.f-matte{background-image:linear-gradient(rgba(238,238,238,.14),rgba(25,25,25,.14))}
.f-metallic{background-image:repeating-linear-gradient(120deg,rgba(255,255,255,.35) 0 2px,rgba(0,0,0,.06) 2px 4px),linear-gradient(135deg,rgba(255,255,255,.35),transparent 45%,rgba(0,0,0,.08))}
.f-carbon{background-color:#26343d;background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.35) 0 4px,rgba(255,255,255,.14) 4px 8px),repeating-linear-gradient(-45deg,rgba(0,0,0,.2) 0 4px,transparent 4px 8px)}
.f-iridescent{background-image:linear-gradient(115deg,#08cce8,#8758e8,#ee5a9f,#f4c83f,#21caa0)}
@media(max-width:900px){.bego404-finishgrid{grid-template-columns:repeat(3,1fr)}.bego404-finishhead{align-items:flex-start;flex-direction:column}}
/* v5.0.0: layer nativi raster, nessuna maschera CSS sul render centrale */
.bego28-zones{z-index:4;pointer-events:none;overflow:hidden}.bego28-native-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;display:block}.bego28-carbox>img#bego28-car{z-index:1}.bego28-overlays{z-index:8}

/* v5.1.1 - anteprime canvas: nessuna dipendenza da data: URL */
.bego28-piece-thumb canvas{display:block;width:100%;height:100%;object-fit:contain}
.bego38-previewcanvas canvas,#bego38-previewcanvas{display:block;width:100%;height:100%;max-height:150px}

/* v5.1.2: JPG reali per anteprime + controlli testo */
.bego28-piece-thumb img{position:static!important;width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;background:#fff}
#bego38-previewimg{display:block!important;max-width:100%!important;max-height:82px!important;width:auto!important;height:auto!important;object-fit:contain!important}
.bego28-textmeta{margin-top:4px}
.bego28-textmeta .bego28-input{font-size:11px!important;height:38px!important;padding:0 8px!important}
