/* Layout tweaks */
.wcvu-extras { display:flex; gap:12px; flex-wrap:wrap; }
.wcvu-extra-item { border:1px solid #eee; padding:10px; display:flex; align-items:center; gap:12px; border-radius:8px; min-width:260px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,0.03); width: 100%;}
.wcvu-thumb img { width:64px; height:64px; object-fit:cover; border-radius:6px; }
.wcvu-info { flex:1; min-width:120px; }
.wcvu-name { font-size:14px; font-weight:600; margin-bottom:2px; }
.wcvu-price { font-size:13px; color:#333; }

.wcvu-actions { display:flex; align-items:center; gap:10px; margin-left:auto; }
.wcvu-qty { display:flex; align-items:center; gap:6px; }
.wcvu-qty input[type="number"] { width:56px; text-align:center; padding:6px; border:1px solid #ddd; border-radius:4px; }
.wcvu-increase, .wcvu-decrease { border:1px solid #ddd; padding:4px 10px; background:#fafafa; cursor:pointer; border-radius:5px; font-size:18px; line-height:1; }

.wcvu-add { padding:7px 12px; border:0; border-radius:25px; cursor:pointer; font-weight:600; }
.wcvu-add { background:#22c55e; color:#fff; }           /* groen */
.wcvu-add:hover { background:#000 }
.wcvu-add.is-hidden { display:none; }

.is-hidden { display:none; }
.wcvu-extra-item.wcvu-active { border-color:#d1fae5; box-shadow:0 0 0 3px #ecfdf5 inset; }

/* ==============================
   WC Visual Upsells – Styling
   ============================== */

/* Container highlight wanneer actief */
.wcvu-extra-item.wcvu-active {
    border-color: #d1fae5;
    box-shadow: 0 0 0 3px #ecfdf5 inset;
}

/* Toevoegen-knop */
.wcvu-add {
    background: #22c55e; /* Groen */
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 25px;
    border: none;
    border-radius: 25px;
    cursor: pointer;
}
.wcvu-add:focus,
.wcvu-add:active {
    outline: none;
    box-shadow: none;
}
.wcvu-add.is-hidden {
    display: none;
}

/* Qty wrapper */
.wcvu-qty {
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Input veld */
.wcvu-qty input[type="number"] {
    width: 48px;
    text-align: center;
    padding: 6px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    appearance: textfield;
}
.wcvu-qty input::-webkit-outer-spin-button,
.wcvu-qty input::-webkit-inner-spin-button {
    display: none;
}

/* Plus en min knoppen */
.wcvu-increase,
.wcvu-decrease {
    background: #f2f2f2;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    color: #333;
}

/* GEEN hover kleurverandering → stabiel uiterlijk */
.wcvu-increase:hover,
.wcvu-decrease:hover,
.wcvu-add:hover {
    filter: none;
}

/* Active & focus styles zonder hover shine */
.wcvu-increase:active,
.wcvu-decrease:active,
.wcvu-add:active {
    transform: none;
    box-shadow: none;
}

.wcvu-qty.is-hidden { display: none !important; }

/* ==== Similar dropdown (clean) ==== */
.wcvu-similar-wrap { margin-bottom: 16px; }
.wcvu-similar-label { font-weight: 700; margin-bottom: 8px; }

/* Header (huidig product) */
.wcvu-similar-head {
  -webkit-appearance: none; appearance: none; /* reset button */
  width: 100%;
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px;
  background: #fff !important;               /* forceer wit */
  color: inherit !important;
  border: solid 2px #ccc;
  border-radius: 10px;
  padding: 10px 14px;
  cursor: pointer;
  box-shadow: none !important;
}
.wcvu-similar-head:hover,
.wcvu-similar-head:focus,
.wcvu-similar-head:active {
  background: #fff !important;               /* geen groene hover */
  color: inherit !important;
  box-shadow: none !important;
  outline: none !important;
  border: solid 2px var(--primary-color);
}

.wcvu-sel-thumb img { width: 56px; height: 56px; object-fit: cover; border-radius: 6px; }
.wcvu-sel-text { flex: 1; text-align: left; font-size: 16px; color: #2c2c2c; }

/* Prijs in header */
.wcvu-sel-price {
  margin-left: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.wcvu-sel-price del { opacity: .5; margin-right: 6px; }
.wcvu-sel-price ins { text-decoration: none; }

.wcvu-sel-caret { font-size: 16px; color: #3a2a1f; transition: transform .15s ease; }
.wcvu-similar-head[aria-expanded="true"] .wcvu-sel-caret { transform: rotate(180deg); }

/* Panel */
.wcvu-similar-panel {
  margin-top: 6px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  overflow: hidden;
}

/* Opties (list-item style, geen thema-button hover) */
.wcvu-similar-option {
  -webkit-appearance: none; appearance: none; /* reset button */
  width: 100%;
  display: flex; align-items: center; gap: 12px;
  padding: 10px 12px;
  background: #fff !important;
  color: inherit !important;
  border: 0;
  border-bottom: 1px solid #f1f1f1;
  text-align: left;
  cursor: pointer;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}
.wcvu-similar-option:last-child { border-bottom: 0; }
.wcvu-similar-option:hover,
.wcvu-similar-option:focus,
.wcvu-similar-option:active {
  background: #fafafa !important;
}

.wcvu-opt-thumb img { width: 64px; height: 64px; object-fit: cover; border-radius: 6px; }
.wcvu-opt-info { display: flex; align-items: center; gap: 16px; width: 100%; }
.wcvu-opt-name { flex: 1; font-size: 15px; color: #2c2c2c; }

/* Prijs in opties */
.wcvu-opt-price { white-space: nowrap; font-weight: 700; }
.wcvu-opt-price del { opacity: .5; margin-right: 8px; }
.wcvu-opt-price ins { text-decoration: none; }
