/* MobiLux 1.0.2 — unified premium variation controls */
.mobilux-native-purchase table.variations{width:100%;border:0!important;border-collapse:separate;border-spacing:0 14px;margin:0 0 14px!important}
.mobilux-native-purchase table.variations tbody{display:grid;gap:14px}
.mobilux-native-purchase table.variations tr{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin:0}
.mobilux-native-purchase table.variations th.label,.mobilux-native-purchase table.variations td.value{display:block;padding:0!important;border:0!important;background:none!important;text-align:right}
.mobilux-native-purchase table.variations th.label label{font-size:12px;font-weight:900;color:#272c3a}
.mobilux-native-purchase table.variations tr.mobilux-variation-row>th.label{display:none!important}
.mobilux-native-purchase td.value.mobilux-variation-ready>select.mobilux-variation-source{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}

.mobilux-variation-ui{display:grid;gap:9px;min-width:0}
.mobilux-variation-swatch-head{display:flex;align-items:center;justify-content:flex-start;gap:6px;min-width:0;font-size:11px;line-height:1.5}
.mobilux-variation-swatch-head>span{flex:0 0 auto;font-weight:900;color:#2c3242}
.mobilux-variation-swatch-head>span::after{content:":";margin-inline-start:2px}
.mobilux-variation-swatch-head>strong{min-width:0;max-width:72%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;border:0;background:transparent;color:#586071;font-size:11px;font-weight:800}
.mobilux-variation-swatch-options{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0}

.mobilux-variation-swatch{--mobilux-swatch-color:#dfe3ea;position:relative;min-width:46px;height:38px;padding:0 13px;border:1px solid #dfe3eb;border-radius:9px;background:#fff;color:#42495a;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:11px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgba(26,35,56,.035);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,transform .18s ease,opacity .18s ease}
.mobilux-variation-swatch:hover{border-color:#aeb9d6;box-shadow:0 7px 18px rgba(31,47,89,.09);transform:translateY(-1px)}
.mobilux-variation-swatch:focus-visible{outline:none;border-color:var(--ml-primary,#6f53ff);box-shadow:0 0 0 3px rgba(111,83,255,.13)}
.mobilux-variation-swatch.is-selected{border-color:var(--ml-primary,#6f53ff);background:#f8f6ff;color:var(--ml-primary,#6f53ff);box-shadow:0 0 0 1px rgba(111,83,255,.06),0 6px 18px rgba(74,56,170,.10)}
.mobilux-variation-swatch.is-disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.55);transform:none!important;box-shadow:none!important}
.mobilux-variation-swatch.is-disabled::after{content:"";position:absolute;left:7px;right:7px;top:50%;height:1px;background:#8e95a5;transform:rotate(-18deg);z-index:4}
.mobilux-variation-swatch.is-hidden-unavailable{display:none!important}
.mobilux-variation-swatch__text{position:relative;z-index:2;display:inline-block;white-space:nowrap}

/* Color: compact outlined pills like premium electronics stores. */
.mobilux-variation-swatch.is-kind-color{height:36px;min-width:max-content;padding:0 10px;border-radius:8px;gap:7px}
.mobilux-variation-swatch.is-kind-color .mobilux-variation-swatch__color{width:17px;height:17px;flex:0 0 17px;border-radius:5px;background:var(--mobilux-swatch-color);box-shadow:inset 0 0 0 1px rgba(16,24,40,.10),0 0 0 2px #fff,0 0 0 3px #e0e4eb}
.mobilux-variation-swatch.is-kind-color.is-selected .mobilux-variation-swatch__color{box-shadow:inset 0 0 0 1px rgba(16,24,40,.08),0 0 0 2px #fff,0 0 0 3px var(--ml-primary,#6f53ff)}
.mobilux-variation-swatch.is-kind-color.is-selected::before{content:"✓";position:absolute;inset-inline-start:4px;top:3px;width:13px;height:13px;display:grid;place-items:center;border-radius:50%;background:var(--ml-primary,#6f53ff);color:#fff;font-size:8px;font-weight:900;border:2px solid #fff;z-index:5}
.mobilux-variation-swatch.is-kind-color.is-unmapped .mobilux-variation-swatch__color{background:conic-gradient(#d8dce5 0 25%,#f7f8fb 0 50%,#d8dce5 0 75%,#f7f8fb 0);background-size:8px 8px}

/* Memory/capacity: compact strong chips. */
.mobilux-variation-swatch.is-kind-memory{min-width:68px;height:38px;padding:0 14px;border-radius:9px;font-weight:900}
.mobilux-variation-swatch.is-kind-memory.is-selected{background:linear-gradient(180deg,#765aff 0%,#684af3 100%);border-color:#684af3;color:#fff;box-shadow:0 7px 18px rgba(104,74,243,.22)}

/* Warranty: wider service buttons with a visual status marker. */
.mobilux-variation-swatch.is-kind-warranty{min-height:40px;height:auto;min-width:150px;max-width:100%;padding:9px 13px;border-radius:10px;line-height:1.55;text-align:right;justify-content:flex-start}
.mobilux-variation-swatch.is-kind-warranty::before{content:"";width:16px;height:16px;flex:0 0 16px;border:1.5px solid #b9c0ce;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 4px #fff;transition:.18s}
.mobilux-variation-swatch.is-kind-warranty.is-selected::before{border-color:var(--ml-primary,#6f53ff);background:var(--ml-primary,#6f53ff);box-shadow:inset 0 0 0 4px #fff}
.mobilux-variation-swatch.is-kind-warranty.is-selected{background:#f8f6ff}

/* Generic variations are still buttons, never dropdowns when enhanced. */
.mobilux-variation-swatch.is-kind-option{min-width:74px}

.mobilux-native-purchase .reset_variations{display:inline-flex!important;align-items:center;gap:5px;margin-top:9px!important;padding:0!important;color:#7a8192!important;font-size:9px!important;text-decoration:none!important}
.mobilux-native-purchase .reset_variations:hover{color:var(--ml-primary,#6f53ff)!important}
.mobilux-native-purchase .woocommerce-variation-price{padding:10px 12px;border:1px solid #eceaf9;border-radius:12px;background:#faf9ff}
.mobilux-native-purchase .woocommerce-variation-price:empty{display:none}
.mobilux-native-purchase .woocommerce-variation-price .amount{font-size:15px}
.mobilux-native-purchase .woocommerce-variation-availability .stock{padding:8px 10px;border-radius:10px;background:#f1faf6;color:#187d58}
.mobilux-native-purchase .woocommerce-variation-availability .out-of-stock{background:#fff3f3;color:#c94848}

@media(max-width:991.98px){
  .mobilux-variation-swatch-options{
    flex-wrap:wrap;
    overflow:visible;
    overscroll-behavior:auto;
    padding:0;
    scroll-snap-type:none;
  }
  .mobilux-variation-swatch{
    max-width:100%;
    flex:0 1 auto;
    scroll-snap-align:none;
  }
  .mobilux-variation-swatch.is-kind-warranty{
    max-width:100%;
    white-space:normal;
  }
}

@media(max-width:767.98px){
  .mobilux-native-purchase table.variations tbody{gap:12px}
  .mobilux-native-purchase table.variations tr{width:100%;min-width:0;max-width:100%}
  .mobilux-native-purchase table.variations td.value{width:100%;min-width:0;max-width:100%;overflow:visible}
  .mobilux-variation-ui,.mobilux-variation-swatches{width:100%;min-width:0;max-width:100%;overflow:visible}
  .mobilux-variation-swatch-head{gap:5px;min-width:0;max-width:100%;flex-wrap:wrap}
  .mobilux-variation-swatch-head>strong{max-width:100%;font-size:10px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}

  .mobilux-variation-swatch-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    width:100%;
    min-width:0;
    max-width:100%;
    overflow:visible;
    padding:0;
  }
  .mobilux-variation-swatches[data-kind="warranty"] .mobilux-variation-swatch-options{
    grid-template-columns:minmax(0,1fr);
  }

  .mobilux-variation-swatch,
  .mobilux-variation-swatch.is-kind-color,
  .mobilux-variation-swatch.is-kind-memory,
  .mobilux-variation-swatch.is-kind-option,
  .mobilux-variation-swatch.is-kind-warranty{
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:40px;
    height:auto;
    margin:0;
    box-sizing:border-box;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .mobilux-variation-swatch.is-kind-color{
    padding:8px 10px;
    justify-content:flex-start;
    line-height:1.45;
  }
  .mobilux-variation-swatch.is-kind-color .mobilux-variation-swatch__color{
    flex:0 0 16px;
    width:16px;
    height:16px;
  }
  .mobilux-variation-swatch.is-kind-color .mobilux-variation-swatch__text{
    min-width:0;
    max-width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
    text-align:start;
    line-height:1.45;
  }
  .mobilux-variation-swatch.is-kind-memory,
  .mobilux-variation-swatch.is-kind-option{
    padding:9px 10px;
    justify-content:center;
    text-align:center;
    line-height:1.45;
  }
  .mobilux-variation-swatch.is-kind-warranty{
    padding:10px 12px;
    justify-content:flex-start;
    line-height:1.65;
  }
}

@media(max-width:359.98px){
  .mobilux-variation-swatch-options{gap:6px}
  .mobilux-variation-swatch,
  .mobilux-variation-swatch.is-kind-color,
  .mobilux-variation-swatch.is-kind-memory,
  .mobilux-variation-swatch.is-kind-option{padding-inline:8px;font-size:10px}
  .mobilux-variation-swatch.is-kind-color{gap:5px}
  .mobilux-variation-swatch.is-kind-color .mobilux-variation-swatch__color{width:14px;height:14px;flex-basis:14px}
}
