/* PonantPrint Modern Print UI - intentionally scoped to avoid theme button styles */
.ponantprint-configurator{--pp-accent:#ec1672;--pp-accent-dark:#b70d55;--pp-accent-soft:#fff0f6;--pp-ink:#101828;--pp-muted:#667085;--pp-border:#e7eaf0;--pp-surface:#fff;--pp-surface-alt:#f8fafc;--pp-radius:16px;margin:28px 0 32px;color:var(--pp-ink);font-family:"Segoe UI",Arial,sans-serif!important;container-type:inline-size;container-name:ponantprint}
.ponantprint-configurator *{box-sizing:border-box;font-family:"Segoe UI",Arial,sans-serif!important}
.pp-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:28px 30px;background:linear-gradient(135deg,#111827 0%,#1d2939 70%,#25102a 100%);border-radius:22px;color:#fff;box-shadow:0 16px 45px rgba(16,24,40,.16);position:relative;overflow:hidden}
.pp-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-120px;background:radial-gradient(circle,rgba(236,22,114,.38),rgba(236,22,114,0) 70%)}
.pp-hero-copy{position:relative;z-index:1}.pp-kicker{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffd6e8}.pp-hero h3{margin:10px 0 4px!important;color:#fff!important;font-size:clamp(22px,2.4vw,31px)!important;line-height:1.08!important;letter-spacing:-.03em!important}.pp-hero p{margin:0!important;color:#cfd4dc!important;font-size:15px!important}.pp-progress-wrap{min-width:210px;position:relative;z-index:1;text-align:right;font-size:12px;font-weight:800;color:#fff}.pp-progress{height:6px;background:rgba(255,255,255,.14);border-radius:99px;margin-top:8px;overflow:hidden}.pp-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#ff4f9d,var(--pp-accent));border-radius:99px;transition:width .25s ease}
.pp-layout{display:grid;grid-template-columns:1fr;gap:24px;align-items:start;margin-top:20px}.pp-options{min-width:0;background:var(--pp-surface);border:1px solid var(--pp-border);border-radius:22px;padding:8px 28px;box-shadow:0 8px 26px rgba(16,24,40,.05)}
.pp-option-group{padding:24px 0 26px;border-bottom:1px solid #eef0f4;transition:opacity .2s ease}.pp-option-group:last-child{border-bottom:0}.pp-option-group.is-disabled{opacity:.38;pointer-events:none;filter:grayscale(.2)}
.pp-option-title{display:flex!important;align-items:center!important;gap:11px!important;margin:0 0 16px!important;text-transform:none!important;letter-spacing:normal!important}.pp-option-title>div{min-width:0}.pp-option-title strong{display:block;font-size:17px!important;line-height:1.15!important;font-weight:800!important;color:var(--pp-ink)!important;text-transform:none!important;letter-spacing:normal!important}.pp-option-number{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;border-radius:9px!important;background:var(--pp-accent-soft)!important;color:var(--pp-accent)!important;font-size:12px!important;font-weight:900!important}.pp-current{display:block;margin-top:3px;color:#98a2b3;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw}
.pp-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.pp-layout-wide .pp-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-layout-compact .pp-choice-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.pp-layout-chips .pp-choice-grid{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.pp-layout-delivery .pp-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ponantprint-configurator .pp-choice,.ponantprint-configurator button.pp-choice{appearance:none!important;-webkit-appearance:none!important;width:100%!important;min-width:0!important;min-height:74px!important;margin:0!important;padding:14px 16px!important;border:1px solid var(--pp-border)!important;border-radius:16px!important;background:#fff!important;color:var(--pp-ink)!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;text-align:left!important;cursor:pointer!important;font:inherit!important;text-transform:none!important;letter-spacing:normal!important;line-height:1.25!important;white-space:normal!important;overflow:hidden!important;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease!important}
.ponantprint-configurator .pp-choice:hover{border-color:#c6cbd4!important;box-shadow:0 5px 14px rgba(16,24,40,.07)!important;transform:translateY(-1px)!important}.ponantprint-configurator .pp-choice.is-selected{border-color:var(--pp-accent)!important;background:linear-gradient(180deg,#fff 0%,var(--pp-accent-soft) 100%)!important;box-shadow:0 0 0 2px rgba(236,22,114,.08),0 6px 16px rgba(236,22,114,.09)!important}
.pp-choice-icon{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:10px;background:#f4f6f8;color:#667085;transition:.16s ease}.pp-choice-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pp-choice.is-selected .pp-choice-icon{background:var(--pp-accent);color:#fff}.pp-choice-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.pp-choice-label{display:block;min-width:0;font-size:14.5px!important;line-height:1.25!important;font-weight:750!important;color:inherit!important;text-transform:none!important;letter-spacing:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}.pp-badge{display:inline-flex;align-self:flex-start;padding:3px 6px;border-radius:999px;background:#fff0f6;color:var(--pp-accent-dark);font-size:9.5px;font-weight:850;line-height:1}.pp-check{margin-left:auto;display:flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:var(--pp-accent);color:#fff;font-size:11px;font-weight:900;opacity:0;transform:scale(.78);transition:.16s ease}.pp-choice.is-selected .pp-check{opacity:1;transform:scale(1)}
.pp-layout-chips .pp-choice{min-height:48px!important;padding:8px 10px!important;justify-content:center!important}.pp-layout-chips .pp-choice-icon{display:none}.pp-layout-chips .pp-choice-copy{align-items:center}.pp-layout-chips .pp-choice-label{font-size:14px!important;font-weight:850!important}.pp-layout-chips .pp-check{position:absolute;right:7px}.pp-layout-chips .pp-choice{position:relative!important}.pp-layout-delivery .pp-choice{min-height:82px!important}.pp-layout-delivery .pp-choice-label{font-size:14px!important}
.pp-recap{position:sticky;top:24px;border:1px solid var(--pp-border);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(16,24,40,.07);overflow:hidden}.pp-recap-kicker{display:block;padding:20px 22px 14px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#667085}.pp-recap-list{padding:0 22px 14px;max-height:420px;overflow:auto}.pp-recap-row{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:7px 0;border-bottom:1px dashed #edf0f3;font-size:13px}.pp-recap-row:last-child{border-bottom:0}.pp-recap-row span{color:#98a2b3}.pp-recap-row strong{font-weight:750;color:#344054;text-align:right;overflow-wrap:anywhere}.pp-recap-empty{padding:8px 0 14px;color:#98a2b3;font-size:12px}.pp-recap-price{padding:20px 22px;background:linear-gradient(135deg,#101828,#1d2939);color:#fff}.pp-recap-price span{display:block;font-size:11px;color:#cfd4dc}.pp-recap-price strong{display:block;margin-top:3px;font-size:34px;line-height:1;font-weight:900;letter-spacing:-.04em}.pp-recap-price small{display:block;margin-top:5px;color:#98a2b3;font-size:9.5px}.pp-ready{display:flex;align-items:center;gap:8px;padding:14px 22px;background:#f8fafc;color:#98a2b3;font-size:11px;font-weight:750}.pp-ready-dot{width:8px;height:8px;border-radius:50%;background:#d0d5dd}.pp-ready.is-ready{color:#027a48;background:#ecfdf3}.pp-ready.is-ready .pp-ready-dot{background:#12b76a;box-shadow:0 0 0 4px rgba(18,183,106,.1)}
.single_add_to_cart_button.pp-ready-btn{background:var(--pp-accent)!important;border-color:var(--pp-accent)!important;color:#fff!important;box-shadow:0 10px 24px rgba(236,22,114,.23)!important}.single_add_to_cart_button.pp-ready-btn:hover{background:var(--pp-accent-dark)!important;border-color:var(--pp-accent-dark)!important}.single_add_to_cart_button:disabled{opacity:.45!important;cursor:not-allowed!important}
@media(max-width:1000px){.pp-layout{grid-template-columns:1fr}.pp-recap{position:static}.pp-recap-list{max-height:none}}
@media(max-width:680px){.pp-hero{padding:20px;align-items:flex-start;flex-direction:column}.pp-progress-wrap{width:100%;text-align:left}.pp-options{padding:2px 14px}.pp-choice-grid,.pp-layout-wide .pp-choice-grid,.pp-layout-compact .pp-choice-grid,.pp-layout-delivery .pp-choice-grid{grid-template-columns:1fr}.pp-layout-chips .pp-choice-grid{grid-template-columns:repeat(2,1fr)}.pp-option-group{padding:17px 0}.pp-choice{min-height:58px!important}.pp-current{max-width:70vw}}


/* v0.4.1 - layout responsive to the actual Elementor column width */
.ponantprint-configurator button,.ponantprint-configurator input,.ponantprint-configurator select,.ponantprint-configurator textarea{font-family:"Segoe UI",Arial,sans-serif!important}
@container ponantprint (min-width: 900px){
  .pp-layout{grid-template-columns:minmax(0,1fr) 320px;gap:26px}
  .pp-recap{position:sticky;top:24px}
}
@container ponantprint (max-width: 899px){
  .pp-layout{grid-template-columns:1fr}
  .pp-recap{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);align-items:stretch}
  .pp-recap-kicker,.pp-recap-list{grid-column:1}
  .pp-recap-price,.pp-ready{grid-column:2}
  .pp-recap-price{grid-row:1 / span 2}
  .pp-ready{grid-row:3}
  .pp-layout-wide .pp-choice-grid,.pp-layout-compact .pp-choice-grid,.pp-layout-delivery .pp-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container ponantprint (max-width: 620px){
  .pp-options{padding:4px 18px}
  .pp-recap{display:block}
  .pp-choice-grid,.pp-layout-wide .pp-choice-grid,.pp-layout-compact .pp-choice-grid,.pp-layout-delivery .pp-choice-grid{grid-template-columns:1fr}
  .pp-layout-chips .pp-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v0.5.0 - fichier d'impression */
.pp-upload-card{--pp-accent:#ec1672;--pp-ink:#101828;--pp-muted:#667085;--pp-border:#e4e7ec;font-family:"Segoe UI",Arial,sans-serif!important;margin:22px 0 24px;padding:20px;border:1px solid var(--pp-border);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(16,24,40,.045)}.pp-upload-card *{box-sizing:border-box;font-family:"Segoe UI",Arial,sans-serif!important}.pp-upload-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:14px}.pp-upload-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;background:#fff0f6;color:#ec1672}.pp-upload-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pp-upload-head strong{display:block;font-size:16px;color:var(--pp-ink);font-weight:750}.pp-upload-head div>span{display:block;margin-top:3px;font-size:12.5px;color:var(--pp-muted)}.pp-upload-state{justify-self:end;padding:5px 9px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:10.5px;font-weight:800}.pp-upload-card.has-file .pp-upload-state{background:#ecfdf3;color:#027a48}.pp-dropzone{position:relative;display:flex!important;align-items:center!important;gap:12px!important;min-height:92px!important;margin:0!important;padding:16px 18px!important;border:1.5px dashed #cfd4dc!important;border-radius:14px!important;background:#f9fafb!important;cursor:pointer!important;transition:.16s ease!important}.pp-dropzone:hover,.pp-dropzone.is-dragover{border-color:#ec1672!important;background:#fff7fb!important}.pp-dropzone input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important}.pp-dropzone-plus{display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:#fff;color:#ec1672;border:1px solid #f5c2d9;font-size:24px;font-weight:300}.pp-dropzone-copy{display:flex;flex:1;min-width:0;flex-direction:column}.pp-dropzone-copy strong{font-size:13.5px;color:#344054;font-weight:750}.pp-dropzone-copy small{margin-top:2px;font-size:11.5px;color:#98a2b3}.pp-dropzone-meta{font-size:10.5px;color:#98a2b3;white-space:nowrap}.pp-file-preview{display:flex;align-items:center;gap:11px;margin-top:11px;padding:11px 12px;border:1px solid #d1fadf;border-radius:12px;background:#f6fef9}.pp-file-preview-icon{display:flex;align-items:center;justify-content:center;flex:0 0 38px;height:38px;border-radius:9px;background:#ecfdf3;color:#027a48;font-size:10px;font-weight:900}.pp-file-preview-copy{display:flex;flex:1;min-width:0;flex-direction:column}.pp-file-preview-copy strong{font-size:12.5px;color:#101828;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-file-preview-copy span{font-size:11px;color:#667085}.pp-file-replace{appearance:none!important;border:0!important;background:transparent!important;color:#c81062!important;padding:7px!important;font-size:11.5px!important;font-weight:750!important;cursor:pointer!important}.pp-print-confirm{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:14px 0 0!important;padding:12px 13px!important;border-radius:12px!important;background:#f8fafc!important;cursor:pointer!important}.pp-print-confirm input{flex:0 0 auto!important;width:17px!important;height:17px!important;margin:2px 0 0!important;accent-color:#ec1672}.pp-print-confirm span{display:block;min-width:0}.pp-print-confirm strong{display:block;font-size:12.5px;color:#344054;font-weight:700}.pp-print-confirm small{display:block;margin-top:2px;font-size:10.8px;color:#667085}.pp-upload-error{min-height:0;margin-top:8px;color:#b42318;font-size:11.5px;font-weight:650}.pp-upload-card.has-error{border-color:#fecdca}.pp-upload-card.has-error .pp-dropzone{border-color:#f97066!important;background:#fff8f7!important}@media(max-width:680px){.pp-upload-head{grid-template-columns:42px 1fr}.pp-upload-state{grid-column:2;justify-self:start}.pp-dropzone{align-items:flex-start!important;flex-wrap:wrap}.pp-dropzone-meta{width:100%;padding-left:50px}.pp-file-preview{flex-wrap:wrap}.pp-file-replace{margin-left:49px}}
