.mqpo-front{display:block;width:100%;max-width:100%;clear:both;margin:22px 0;box-sizing:border-box}
.mqpo-block-title{margin:18px 0 12px}.mqpo-content{margin:14px 0}.mqpo-content-title{font-weight:600;margin-bottom:5px}.mqpo-separator{margin:20px 0;border:0}.mqpo-option{margin:22px 0}.mqpo-option-title{font-weight:700;font-size:17px;margin-bottom:8px}.mqpo-option-title span{color:#d63638}.mqpo-option-description{margin-bottom:10px;color:#666}
.mqpo-checkbox-choices{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.mqpo-checkbox-choice{display:flex;flex-direction:column;align-items:flex-start;gap:5px;position:relative;max-width:100%}
.mqpo-choice-main{display:flex;align-items:center;gap:8px;cursor:pointer;margin:0}
.mqpo-choice-main input[type=checkbox]{position:static!important;opacity:1!important;pointer-events:auto!important;margin:0;appearance:auto;-webkit-appearance:checkbox;width:auto;height:auto}
.mqpo-choice-image{display:block;margin:0 0 3px 0;line-height:0}.mqpo-choice-image img{display:block;width:auto;max-width:190px;height:auto;margin:0;border:0;border-radius:0;box-shadow:none}
.mqpo-choice-label{display:inline;text-align:left}.mqpo-choice-description{display:block;font-size:12px;color:#777;text-align:left;margin-left:0}.mqpo-choice-label small{font-size:12px;color:#555}
.mqpo-totals{border-top:1px solid #ddd;margin-top:22px;padding-top:12px;max-width:420px}.mqpo-totals>div{display:flex;justify-content:space-between;margin:7px 0}.mqpo-totals>div:last-child{font-size:17px}.mqpo-option[style*="display: none"]{margin:0}

/* v0.2.6: MQ options are deliberately OUTSIDE Elementor/WooCommerce's inline action row.
   Do not alter Elementor's quantity/button flex sizing. */
form.cart.mqpo-has-options{width:100%!important}
form.cart.mqpo-has-options > .mqpo-front,
form.cart.mqpo-has-options > .single_variation_wrap > .mqpo-front,
form.cart.mqpo-has-options > .woocommerce-variation-add-to-cart + .mqpo-front,
form.cart.mqpo-has-options > .variations_button + .mqpo-front{
  display:block!important;width:100%!important;max-width:100%!important;clear:both!important;float:none!important;box-sizing:border-box!important;
}
/* If a theme still gives the form an inline flex layout, allow a full-width MQ row without changing button dimensions. */
.elementor-add-to-cart--layout-inline form.cart.mqpo-has-options{flex-wrap:wrap!important}
.elementor-add-to-cart--layout-inline form.cart.mqpo-has-options > .mqpo-front{flex:0 0 100%!important;max-width:100%!important}
@media(max-width:600px){.mqpo-choice-image img{max-width:150px}}
.mqpo-radio-choices{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.mqpo-radio-choice{display:flex;flex-direction:column;align-items:flex-start;gap:5px;position:relative;max-width:100%}
.mqpo-choice-main input[type=radio]{position:static!important;opacity:1!important;pointer-events:auto!important;margin:0;appearance:auto;-webkit-appearance:radio;width:auto;height:auto}

.mqpo-input-fields{display:flex;flex-direction:column;gap:14px}.mqpo-input-field{display:flex;flex-direction:column;gap:6px}.mqpo-input-field>input[type=text]{width:100%;max-width:520px;min-height:42px;padding:8px 10px}.mqpo-input-field .mqpo-choice-image{display:block;margin-bottom:4px}.mqpo-input-field .mqpo-choice-description{font-size:.9em;opacity:.8}

.mqpo-select-field{width:100%;max-width:520px;min-height:42px;padding:8px 10px}.mqpo-select-description{font-size:.9em;opacity:.8;margin-top:5px}

.mqpo-select-extra{margin-top:8px}.mqpo-select-image{display:block;max-width:180px;height:auto;margin-bottom:6px}

.mqpo-textarea-field{display:flex;flex-direction:column;gap:6px;margin:0 0 14px}.mqpo-textarea-field textarea{width:100%;min-height:110px;resize:vertical}.mqpo-textarea-field .mqpo-choice-image img{max-width:220px;height:auto;display:block}.mqpo-textarea-fields.is-single,.mqpo-textarea-fields.is-multiple{display:block}

/* v0.3.7 Color swatches */
.mqpo-swatch-choices{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start}
.mqpo-swatch-choice{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;position:relative;min-width:54px}
.mqpo-swatch-choice>input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.mqpo-swatch-visual{display:flex;width:56px;height:56px;border:2px solid #d8d8d8;border-radius:4px;box-sizing:border-box;align-items:center;justify-content:center;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.mqpo-swatch-visual.is-image{width:84px;height:84px;background:#fff}.mqpo-swatch-visual img{width:100%;height:100%;object-fit:cover;display:block}
.mqpo-swatch-choice>input:checked+.mqpo-swatch-visual{border-color:#36b7b4;box-shadow:0 0 0 1px #36b7b4}
.mqpo-swatch-choice>input:focus-visible+.mqpo-swatch-visual{outline:2px solid currentColor;outline-offset:2px}
.mqpo-swatch-label{text-align:center;line-height:1.25}.mqpo-swatch-label small{font-size:11px;color:#555}
.mqpo-color-swatch .mqpo-choice-description{text-align:center;max-width:110px}

.mqpo-number-fields{display:flex;flex-direction:column;gap:14px}.mqpo-number-field{display:flex;flex-direction:column;gap:6px;margin:0 0 14px}.mqpo-number-field>input[type=number]{width:100%;max-width:240px;min-height:42px;padding:8px 10px}.mqpo-number-field .mqpo-choice-image img{max-width:220px;height:auto;display:block}.mqpo-number-fields.is-single,.mqpo-number-fields.is-multiple{display:block}


/* v0.4.1 Label or image */
.mqpo-label-image-choices{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.mqpo-label-image-choice{display:flex;flex-direction:column;position:relative;cursor:pointer;margin:0;min-width:116px;max-width:220px}
.mqpo-label-image-choice>input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.mqpo-label-image-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;border:1px solid #cfcfcf;border-radius:4px;padding:10px;background:#fff;min-height:54px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}
.mqpo-label-image-media{display:block;width:100%;line-height:0}.mqpo-label-image-media img{display:block;width:100%;height:auto;max-height:190px;object-fit:cover;margin:0}
.mqpo-label-image-label{display:block;text-align:center;line-height:1.3}.mqpo-label-image-label small{font-size:11px;color:#555}
.mqpo-label-image-choice>input:checked+.mqpo-label-image-card{border-color:#34bdb8;box-shadow:0 0 0 1px #34bdb8}
.mqpo-label-image-choice>input:checked+.mqpo-label-image-card:after{content:'✓';position:absolute;right:-7px;top:-7px;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#34bdb8;color:#fff;font-size:12px;font-weight:700}
.mqpo-label-image-choice>input:focus-visible+.mqpo-label-image-card{outline:2px solid currentColor;outline-offset:2px}
.mqpo-label-image-choice .mqpo-choice-description{margin-top:5px;text-align:center}
@media(max-width:600px){.mqpo-label-image-choice{min-width:100px;max-width:48%}.mqpo-label-image-card{padding:8px}}

/* Product add-on */
.mqpo-product-choices{display:flex;flex-direction:column;gap:10px}
.mqpo-product-choice{display:block;position:relative;margin:0;cursor:pointer;max-width:520px}
.mqpo-product-choice>input{position:absolute;opacity:0;pointer-events:none}
.mqpo-product-card{display:flex;align-items:center;gap:12px;border:1px solid #cfcfcf;border-radius:5px;padding:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.mqpo-product-choice>input:checked+.mqpo-product-card{border-color:#34bdb8;box-shadow:0 0 0 1px #34bdb8}
.mqpo-product-choice>input:checked+.mqpo-product-card:after{content:'✓';margin-left:auto;width:20px;height:20px;border-radius:50%;background:#34bdb8;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.mqpo-product-image{width:76px;min-width:76px;height:76px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f7f7f7}.mqpo-product-image img{width:100%;height:100%;object-fit:contain;margin:0}
.mqpo-product-info{display:flex;flex-direction:column;gap:3px;min-width:0}.mqpo-product-info b{font-weight:600}.mqpo-linked-price{font-weight:700;font-size:1em}.mqpo-product-info .mqpo-choice-price{font-size:12px;color:#555}
.mqpo-product-choice .mqpo-choice-description{display:block;margin:4px 0 0 90px}

/* Date add-on */
.mqpo-date-fields{display:flex;flex-direction:column;gap:14px}.mqpo-date-field{display:flex;flex-direction:column;gap:6px}.mqpo-date-field>label{font-weight:600}.mqpo-date-field input[type=date],.mqpo-date-field input[type=datetime-local],.mqpo-date-field .mqpo-time-slot{width:100%;max-width:520px;min-height:42px;padding:8px 10px;border:1px solid #cfcfcf;border-radius:4px;background:#fff;box-sizing:border-box}.mqpo-date-field input:focus{outline:2px solid rgba(52,189,184,.2);border-color:#34bdb8}.mqpo-date-field .mqpo-time-slot{margin-top:2px}.mqpo-date-field .mqpo-choice-description{display:block}

/* v0.4.3 File upload */
.mqpo-file-fields{display:flex;flex-direction:column;gap:16px}
.mqpo-file-field{display:flex;flex-direction:column;gap:7px;max-width:560px}
.mqpo-upload-box{display:flex;align-items:center;justify-content:center;min-height:92px;border:1px dashed #c9cfd6;border-radius:4px;background:#fafafa;cursor:pointer;padding:16px;box-sizing:border-box;text-align:center;position:relative}
.mqpo-upload-box input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.mqpo-upload-box b{display:inline-block;margin-left:8px;padding:9px 15px;border-radius:4px;background:#34bdb8;color:#fff}
.mqpo-upload-files{font-size:12px;color:#666;word-break:break-word}

/* v0.4.3 Color picker */
.mqpo-color-picker-fields{display:flex;flex-direction:column;gap:16px}
.mqpo-color-picker-field{display:flex;flex-direction:column;gap:7px;max-width:560px}
.mqpo-color-control{display:flex;align-items:center;gap:8px;max-width:360px;border:1px solid #d4d8dd;border-radius:5px;padding:7px;background:#fff;box-sizing:border-box}
.mqpo-color-control input[type=color]{width:44px;height:38px;padding:0;border:0;background:transparent;cursor:pointer}
.mqpo-color-control input[type=text]{flex:1;min-width:0;border:0!important;box-shadow:none!important;outline:none!important;padding:4px 2px!important}


/* v0.6.0 Checkbox Display & Style */
.mqpo-checkbox .mqpo-option-title-with-image,
.mqpo-checkbox .mqpo-toggle-control{
  display:flex;align-items:center;gap:10px;
}
.mqpo-checkbox .mqpo-set-title-image{
  width:48px;height:48px;object-fit:contain;flex:0 0 auto;margin:0;
}
.mqpo-checkbox .mqpo-toggle-control{
  width:100%;
  border:1px solid #d8e7dc !important;
  background:#f7fbf8 !important;
  padding:12px 14px !important;
  border-radius:10px !important;
  text-align:left;
  cursor:pointer;
  font:inherit;
  font-weight:700;
  color:#34A853 !important;
  box-shadow:none !important;
  text-decoration:none !important;
  appearance:none;
  -webkit-appearance:none;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease;
}
.mqpo-checkbox .mqpo-toggle-control:hover,
.mqpo-checkbox .mqpo-toggle-control:focus,
.mqpo-checkbox .mqpo-toggle-control:active{
  background:#edf7f0 !important;
  color:#34A853 !important;
  border-color:#b9d9c1 !important;
  box-shadow:0 0 0 2px rgba(52,168,83,.08) !important;
  text-decoration:none !important;
  outline:none !important;
}
.mqpo-checkbox .mqpo-toggle-control:focus-visible{
  outline:2px solid rgba(52,168,83,.35) !important;
  outline-offset:2px !important;
}
.mqpo-checkbox .mqpo-toggle-title-text{flex:1;color:inherit !important}
.mqpo-checkbox .mqpo-toggle-icon{margin-left:auto;font-size:20px;line-height:1;color:#34A853 !important;font-weight:700}
.mqpo-checkbox .mqpo-toggle-body{padding-top:12px}
.mqpo-checkbox .mqpo-toggle-body[hidden]{display:none!important}

.mqpo-checkbox .mqpo-checkbox-choices{
  display:grid;
  grid-template-columns:repeat(var(--mqpo-cols,1),minmax(0,1fr));
  gap:10px;
  align-items:start;
}
.mqpo-checkbox .mqpo-checkbox-choice{
  width:var(--mqpo-option-width,100%);
  max-width:100%;
  box-sizing:border-box;
}
.mqpo-checkbox.mqpo-use-grid .mqpo-checkbox-choice{width:100%}

/* image positions */
.mqpo-checkbox.mqpo-image-pos-above .mqpo-checkbox-choice{
  display:flex;flex-direction:column;align-items:flex-start;
}
.mqpo-checkbox.mqpo-image-pos-above .mqpo-choice-image{order:1}
.mqpo-checkbox.mqpo-image-pos-above .mqpo-choice-main{order:2}
.mqpo-checkbox.mqpo-image-pos-above .mqpo-choice-description{order:3}

.mqpo-checkbox.mqpo-image-pos-under .mqpo-checkbox-choice{
  display:flex;flex-direction:column;align-items:flex-start;
}
.mqpo-checkbox.mqpo-image-pos-under .mqpo-choice-main{order:1}
.mqpo-checkbox.mqpo-image-pos-under .mqpo-choice-image{order:2;margin-top:4px}
.mqpo-checkbox.mqpo-image-pos-under .mqpo-choice-description{order:3}

.mqpo-checkbox.mqpo-image-pos-left .mqpo-checkbox-choice,
.mqpo-checkbox.mqpo-image-pos-right .mqpo-checkbox-choice{
  display:grid;column-gap:10px;row-gap:5px;align-items:center;
}
.mqpo-checkbox.mqpo-image-pos-left .mqpo-checkbox-choice{
  grid-template-columns:auto minmax(0,1fr);
}
.mqpo-checkbox.mqpo-image-pos-left .mqpo-choice-image{grid-column:1;grid-row:1 / span 2;margin:0}
.mqpo-checkbox.mqpo-image-pos-left .mqpo-choice-main{grid-column:2;grid-row:1}
.mqpo-checkbox.mqpo-image-pos-left .mqpo-choice-description{grid-column:2;grid-row:2}

.mqpo-checkbox.mqpo-image-pos-right .mqpo-checkbox-choice{
  grid-template-columns:minmax(0,1fr) auto;
}
.mqpo-checkbox.mqpo-image-pos-right .mqpo-choice-main{grid-column:1;grid-row:1}
.mqpo-checkbox.mqpo-image-pos-right .mqpo-choice-description{grid-column:1;grid-row:2}
.mqpo-checkbox.mqpo-image-pos-right .mqpo-choice-image{grid-column:2;grid-row:1 / span 2;margin:0}

/* block-wide visibility switches */
.mqpo-checkbox.mqpo-hide-option-images .mqpo-choice-image{display:none!important}
.mqpo-checkbox.mqpo-hide-option-labels .mqpo-choice-label{display:none!important}
.mqpo-checkbox.mqpo-hide-option-prices .mqpo-choice-price{display:none!important}

@media(max-width:767px){
  .mqpo-checkbox .mqpo-checkbox-choices{grid-template-columns:1fr}
}

/* v0.6.2 — polished, resilient defaults for all MQ option types.
   These rules are intentionally scoped to .mqpo-front so themes/Elementor do not
   flatten the add-on UI, while Elementor widget controls can still override them. */
.mqpo-front,
.mqpo-front *{box-sizing:border-box}
.mqpo-front{--mqpo-accent:#34A853;--mqpo-border:#d9dee7;--mqpo-muted:#667085;--mqpo-surface:#fff;--mqpo-soft:#f8fafc;color:inherit;font:inherit}
.mqpo-front .mqpo-option{padding:18px;border:1px solid #e7eaf0;border-radius:12px;background:var(--mqpo-surface);box-shadow:0 1px 2px rgba(16,24,40,.04);margin:16px 0}
.mqpo-front .mqpo-option-title{font-size:16px;line-height:1.35;font-weight:700;color:#34A853;margin:0 0 7px}
.mqpo-front .mqpo-option-description{font-size:13px;line-height:1.55;color:var(--mqpo-muted);margin:0 0 14px}
.mqpo-front .mqpo-choice-label,
.mqpo-front .mqpo-input-field>label,
.mqpo-front .mqpo-textarea-field>label,
.mqpo-front .mqpo-number-field>label,
.mqpo-front .mqpo-date-field>label,
.mqpo-front .mqpo-file-field>label,
.mqpo-front .mqpo-color-picker-field>label{font-size:14px;line-height:1.4;font-weight:500;color:#202939}
.mqpo-front .mqpo-choice-description{font-size:12px;line-height:1.45;color:var(--mqpo-muted);margin-top:3px}
.mqpo-front .mqpo-choice-price,.mqpo-front .mqpo-linked-price{font-size:12px;font-weight:600;color:#475467}

/* Native checkbox/radio: consistent and theme-proof. */
.mqpo-front .mqpo-choice-main input[type=checkbox],
.mqpo-front .mqpo-choice-main input[type=radio]{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0 8px 0 0!important;accent-color:var(--mqpo-accent)!important;box-shadow:none!important;vertical-align:middle!important}
.mqpo-front .mqpo-choice-main{display:flex!important;align-items:center!important;gap:0!important;line-height:1.4}

/* Inputs */
.mqpo-front .mqpo-input-field>input[type=text],
.mqpo-front .mqpo-number-field>input[type=number],
.mqpo-front .mqpo-date-field input[type=date],
.mqpo-front .mqpo-date-field input[type=datetime-local],
.mqpo-front .mqpo-textarea-field textarea,
.mqpo-front select.mqpo-select-field,
.mqpo-front .mqpo-time-slot,
.mqpo-front .mqpo-color-control{width:100%!important;max-width:560px!important;min-height:44px!important;border:1px solid var(--mqpo-border)!important;border-radius:8px!important;background:#fff!important;color:#111827!important;padding:10px 12px!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important;outline:none}
.mqpo-front .mqpo-input-field>input[type=text]:focus,
.mqpo-front .mqpo-number-field>input[type=number]:focus,
.mqpo-front .mqpo-date-field input:focus,
.mqpo-front .mqpo-textarea-field textarea:focus,
.mqpo-front select.mqpo-select-field:focus,
.mqpo-front .mqpo-time-slot:focus{border-color:var(--mqpo-accent)!important;box-shadow:0 0 0 3px rgba(52,168,83,.14)!important}
.mqpo-front .mqpo-textarea-field textarea{min-height:110px!important;resize:vertical}

/* Color swatches: never fall back to browser radios in Elementor/theme CSS. */
.mqpo-front .mqpo-swatch-choices{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:flex-start!important}
.mqpo-front .mqpo-swatch-choice{display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;position:relative!important;min-width:50px!important;cursor:pointer!important;margin:0!important}
.mqpo-front .mqpo-swatch-choice>input[type=radio],
.mqpo-front .mqpo-swatch-choice>input[type=checkbox]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important;margin:0!important}
.mqpo-front .mqpo-swatch-visual{display:flex!important;width:42px;height:42px;border:2px solid #d1d5db;border-radius:50%;background-clip:padding-box;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.06);transition:.16s ease}
.mqpo-front .mqpo-swatch-visual.is-image{width:56px;height:56px;border-radius:10px;background:#fff}
.mqpo-front .mqpo-swatch-visual img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.mqpo-front .mqpo-swatch-choice>input:checked+.mqpo-swatch-visual{border-color:var(--mqpo-accent)!important;box-shadow:0 0 0 3px rgba(52,168,83,.16)!important}
.mqpo-front .mqpo-swatch-label{font-size:12px!important;line-height:1.25!important;color:#344054!important;text-align:center!important}

/* Label/image cards */
.mqpo-front .mqpo-label-image-choices{display:flex!important;flex-wrap:wrap!important;gap:12px!important}
.mqpo-front .mqpo-label-image-choice{min-width:130px;max-width:220px;margin:0!important}
.mqpo-front .mqpo-label-image-card{border:1px solid var(--mqpo-border)!important;border-radius:10px!important;background:#fff!important;padding:10px!important;min-height:58px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.mqpo-front .mqpo-label-image-choice>input:checked+.mqpo-label-image-card{border-color:var(--mqpo-accent)!important;box-shadow:0 0 0 2px rgba(52,168,83,.14)!important}
.mqpo-front .mqpo-label-image-choice>input:checked+.mqpo-label-image-card:after{background:var(--mqpo-accent)!important}
.mqpo-front .mqpo-label-image-label{font-size:13px!important;color:#202939!important}

/* Product cards */
.mqpo-front .mqpo-product-choices{gap:12px!important}
.mqpo-front .mqpo-product-card{border:1px solid var(--mqpo-border)!important;border-radius:10px!important;background:#fff!important;padding:10px 12px!important;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.mqpo-front .mqpo-product-choice>input:checked+.mqpo-product-card{border-color:var(--mqpo-accent)!important;box-shadow:0 0 0 2px rgba(52,168,83,.14)!important}
.mqpo-front .mqpo-product-choice>input:checked+.mqpo-product-card:after{background:var(--mqpo-accent)!important}
.mqpo-front .mqpo-product-image{border-radius:8px!important;background:var(--mqpo-soft)!important}

/* Option images */
.mqpo-front .mqpo-choice-image img{max-width:180px!important;border-radius:8px!important;box-shadow:none!important}

/* File upload */
.mqpo-front .mqpo-upload-box{min-height:105px!important;border:1.5px dashed #b7ddc2!important;border-radius:12px!important;background:#f7fbf8!important;color:#475467!important;padding:18px!important}
.mqpo-front .mqpo-upload-box:hover{border-color:var(--mqpo-accent)!important;background:#f5fbf6!important}
.mqpo-front .mqpo-upload-box b{background:var(--mqpo-accent)!important;color:#fff!important;border-radius:7px!important;padding:8px 13px!important;font-size:12px!important}

/* Color picker */
.mqpo-front .mqpo-color-control{display:flex!important;align-items:center!important;gap:10px!important;padding:6px 9px!important}
.mqpo-front .mqpo-color-control input[type=color]{width:42px!important;height:36px!important;border:0!important;padding:0!important;background:transparent!important}
.mqpo-front .mqpo-color-control input[type=text]{min-height:32px!important;border:0!important;box-shadow:none!important;padding:2px!important;background:transparent!important}

/* Keep checkbox display/style grids clean and responsive. */
.mqpo-front .mqpo-checkbox .mqpo-checkbox-choices{gap:12px!important}
@media(max-width:767px){
  .mqpo-front .mqpo-option{padding:14px;border-radius:10px}
  .mqpo-front .mqpo-label-image-choice{max-width:100%;flex:1 1 140px}
}

/* v0.6.3 — unified Google-green visual system and Elementor-safe overrides. */
.mqpo-front .mqpo-content-title,.mqpo-front .mqpo-heading h1,.mqpo-front .mqpo-heading h2,.mqpo-front .mqpo-heading h3,.mqpo-front .mqpo-heading h4,.mqpo-front .mqpo-heading h5,.mqpo-front .mqpo-heading h6{color:#34A853;font-weight:700}
.mqpo-front .mqpo-separator{border-left:0;border-right:0;border-bottom:0;border-top-color:#e5e7eb}
.mqpo-front .mqpo-upload-box b{background:#34A853!important}
.mqpo-front .mqpo-choice-main input[type=checkbox],.mqpo-front .mqpo-choice-main input[type=radio]{accent-color:#34A853!important}
.mqpo-front .mqpo-swatch-choice>input:checked+.mqpo-swatch-visual,.mqpo-front .mqpo-label-image-choice>input:checked+.mqpo-label-image-card,.mqpo-front .mqpo-product-choice>input:checked+.mqpo-product-card{border-color:#34A853!important}

/* v0.7.0 — WooCommerce attribute types + polished variation swatches/tooltips. */
.mqpo-enhanced-variation{position:relative;display:block;width:100%}
.mqpo-enhanced-variation .mqpo-native-variation-select{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important}
.mqpo-variation-choices{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0}
.mqpo-variation-choice{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;margin:0!important;padding:0;border:1px solid #d8dee6;border-radius:10px;background:#fff;color:#1f2937;cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.mqpo-variation-choice:hover:not(:disabled){border-color:#34A853;transform:translateY(-1px)}
.mqpo-variation-choice.is-selected{border-color:#34A853!important;box-shadow:0 0 0 3px rgba(52,168,83,.15)!important;background:#f7fbf8}
.mqpo-variation-choice.is-disabled,.mqpo-variation-choice:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.35)}
.mqpo-variation-choice.is-color{width:42px;height:42px;border-radius:50%;padding:4px}
.mqpo-variation-visual{display:block;width:30px;height:30px;border-radius:50%;background:#34A853;background-position:center;background-repeat:no-repeat;background-size:cover;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.mqpo-variation-visual.is-image{border-radius:50%}
.mqpo-variation-choice.is-image{padding:6px;min-width:62px;min-height:62px}.mqpo-variation-image{display:block;width:50px;height:50px;border-radius:7px;overflow:hidden}.mqpo-variation-image img{display:block;width:100%;height:100%;object-fit:cover}.mqpo-variation-fallback{padding:0 8px;font-size:13px;font-weight:600}
.mqpo-variation-choice.is-label{padding:8px 13px;min-width:44px;min-height:38px;border-radius:9px}.mqpo-variation-label{font-size:13px;font-weight:650;line-height:1}
/* Fancy MQ speech-bubble tooltips for variation attributes and Product Option swatches. */
.mqpo-variation-choice,.mqpo-swatch-choice{position:relative}
.mqpo-term-tooltip{position:absolute;left:50%;bottom:calc(100% + 9px);z-index:99999;width:max-content;min-width:0;max-width:260px;padding:8px 11px;border:0;border-radius:4px;background:#34A853;color:#fff;font-size:13px;font-weight:500;line-height:1.25;text-align:center;white-space:normal;box-shadow:0 7px 18px rgba(15,23,42,.16);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,5px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}
.mqpo-term-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:7px solid transparent;border-top-color:#34A853}
.mqpo-term-tooltip img{display:block;width:auto;max-width:130px;max-height:110px;object-fit:cover;border-radius:6px;margin:0 auto 7px}
.mqpo-term-tooltip span{display:block}
.mqpo-variation-choice:hover .mqpo-term-tooltip,.mqpo-swatch-choice:hover .mqpo-term-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(max-width:767px){.mqpo-variation-choices{gap:8px}.mqpo-term-tooltip{max-width:190px}}

/* v0.7.3 — isolate WooCommerce attribute swatches from MQ Product Option swatches. */
.mqpo-variation-choice.is-color{
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
  border-radius:0!important;transform:none!important;
}
.mqpo-variation-choice.is-color:hover:not(:disabled){border:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}
.mqpo-variation-choice.is-color.is-selected{border:0!important;background:transparent!important;box-shadow:none!important}
.mqpo-variation-choice.is-color .mqpo-variation-visual{
  width:42px;height:42px;min-width:42px;min-height:42px;border:2px solid #d1d5db;border-radius:50%;
  box-sizing:border-box;box-shadow:0 1px 2px rgba(16,24,40,.05), inset 0 0 0 1px rgba(0,0,0,.04);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.mqpo-variation-choice.is-color:hover:not(:disabled) .mqpo-variation-visual{border-color:#34A853;transform:translateY(-1px)}
.mqpo-variation-choice.is-color.is-selected .mqpo-variation-visual{border-color:#34A853;box-shadow:0 0 0 3px rgba(52,168,83,.16), inset 0 0 0 1px rgba(0,0,0,.04)}

/* v0.7.4 — clean WooCommerce variation rows + fully isolated attribute controls. */
table.variations.mqpo-has-enhanced-attributes,
table.variations.mqpo-has-enhanced-attributes tbody,
table.variations.mqpo-has-enhanced-attributes tr,
table.variations.mqpo-has-enhanced-attributes th,
table.variations.mqpo-has-enhanced-attributes td{
  background:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
table.variations.mqpo-has-enhanced-attributes tr:hover,
table.variations.mqpo-has-enhanced-attributes tr:hover th,
table.variations.mqpo-has-enhanced-attributes tr:hover td{background:transparent!important}
table.variations.mqpo-has-enhanced-attributes th.label,
table.variations.mqpo-has-enhanced-attributes th.label label{color:#1f2937!important;background:transparent!important}
table.variations.mqpo-has-enhanced-attributes td.value{background:transparent!important}
table.variations.mqpo-has-enhanced-attributes select:not(.mqpo-native-variation-select){
  min-height:42px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#1f2937;padding:9px 12px;box-shadow:none;
}
.mqpo-variation-choice.is-color,
.mqpo-variation-choice.is-color:hover,
.mqpo-variation-choice.is-color:focus,
.mqpo-variation-choice.is-color:focus-visible,
.mqpo-variation-choice.is-color:active,
.mqpo-variation-choice.is-color.is-selected{
  appearance:none!important;-webkit-appearance:none!important;
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  padding:0!important;margin:0!important;border:0!important;outline:0!important;
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  box-shadow:none!important;border-radius:0!important;transform:none!important;line-height:0!important;
}
.mqpo-variation-choice.is-color:before,.mqpo-variation-choice.is-color:after{content:none!important;display:none!important}
.mqpo-variation-choice.is-color .mqpo-variation-visual{margin:0!important}
.mqpo-variation-choice.is-label{background:#fff;border:1px solid #d9dee7;color:#1f2937}
.mqpo-variation-choice.is-image{background:#fff;border:1px solid #d9dee7;color:#1f2937}


/* v0.7.6 — hover-only tooltips + transparent WooCommerce variation rows. */
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes tbody,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes tr,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes th,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes td,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes tbody,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes tr,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes th,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes td{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes tr:hover,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes tr:hover th,
.woocommerce div.product form.cart table.variations.mqpo-has-enhanced-attributes tr:hover td,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes tr:hover,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes tr:hover th,
.elementor-widget-woocommerce-product-add-to-cart table.variations.mqpo-has-enhanced-attributes tr:hover td{
  background:transparent!important;
  background-color:transparent!important;
}
/* Tooltips are intentionally hover-only. Clicking/selecting an option must not pin them open. */
.mqpo-variation-choice:focus .mqpo-term-tooltip,
.mqpo-variation-choice:focus-visible .mqpo-term-tooltip,
.mqpo-swatch-choice:focus-within .mqpo-term-tooltip{
  opacity:0!important;
  visibility:hidden!important;
  transform:translate(-50%,5px)!important;
}
.mqpo-variation-choice:hover .mqpo-term-tooltip,
.mqpo-swatch-choice:hover .mqpo-term-tooltip{
  opacity:1!important;
  visibility:visible!important;
  transform:translate(-50%,0)!important;
}
