/* 201.43 - winkelwagen btw-specificatie + uitlijning favorietknop */
.vh-cart-summary__row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.vh-cart-summary__row strong{white-space:nowrap}
.vh-cart-summary__total{margin-top:2px;border-top:2px solid #0b6f9f!important;padding-top:16px!important;font-size:16px}
.vh-cart-summary__total span,.vh-cart-summary__total strong{font-weight:900;color:#063a64}
.vh-cart-line__price{display:flex;align-items:baseline;gap:7px;margin-top:4px;flex-wrap:wrap}
.vh-cart-line__price strong{color:#062f52}
.vh-cart-line__price small{font-size:10px;color:#6b8090;line-height:1.2}

/* Hart en tekst exact op dezelfde middenlijn. */
.vh-favorite-detail{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;padding:0 14px!important;line-height:1!important}
.vh-favorite-detail svg{display:block!important;flex:0 0 20px!important;width:20px!important;height:20px!important;margin:0!important;vertical-align:middle!important}
.vh-favorite-detail>span{display:inline-flex!important;align-items:center!important;min-height:20px;line-height:1.1!important;margin:0!important}
@media(max-width:560px){.vh-favorite-detail{min-height:40px!important;padding-inline:11px!important}.vh-cart-summary__row{gap:10px}.vh-cart-summary__total{font-size:15px}}

/* 213.3 - compacte productkaart in winkelwagen, naar referentiebeeld. */
.vh-cart-lines{display:grid;gap:14px;border:0!important;border-radius:0!important;overflow:visible!important;background:transparent!important}
.vh-cart-line{display:grid!important;grid-template-columns:116px minmax(0,1fr) minmax(150px,auto)!important;grid-template-rows:auto auto!important;grid-template-areas:"image info price" "image bottom bottom"!important;column-gap:14px!important;row-gap:8px!important;align-items:start!important;padding:16px!important;border:1px solid #cfe0ee!important;border-radius:11px!important;background:#fff!important;box-shadow:0 4px 12px rgba(4,47,85,.045)!important}
.vh-cart-line:last-child{border-bottom:1px solid #cfe0ee!important}
.vh-cart-line__image{grid-area:image;display:grid;place-items:center;width:116px;height:116px;padding:8px;border:1px solid #cfe0ee;border-radius:8px;background:#fff;overflow:hidden}
.vh-cart-line__image img{display:block!important;max-width:100%!important;max-height:100%!important;width:100%!important;height:100%!important;object-fit:contain!important;border:0!important;border-radius:4px!important;background:#fff!important}
.vh-cart-line__info{grid-area:info;min-width:0;padding-top:1px}
.vh-cart-line__info h3{margin:0!important;color:var(--ink);font-size:15px!important;line-height:1.25!important;font-weight:850!important}
.vh-cart-line__info>p{margin:4px 0 0!important;color:#48677f!important;font-size:11px!important;line-height:1.35!important}
.vh-cart-line__cut-summary{font-weight:750!important;color:#275e82!important}
.vh-cart-line__stock{display:flex;align-items:center;gap:7px;margin-top:8px;color:#243e51;font-size:11px;font-weight:700}
.vh-cart-line__stock i{display:block;width:10px;height:10px;border-radius:50%;background:#7e95a5;flex:0 0 10px}
.vh-cart-line__stock.is-in i{background:#2b9a36}.vh-cart-line__stock.is-unknown i{background:#de7a17}
.vh-cart-line__pricebox{grid-area:price;display:grid;justify-items:end;align-content:start;min-width:150px;text-align:right;font-style:normal}
.vh-cart-line__pricebox strong{color:#0b2438;font-size:18px;line-height:1.15;white-space:nowrap}
.vh-cart-line__pricebox small{margin-top:2px;color:#526b7c;font-size:10px;font-weight:700;white-space:nowrap}
.vh-cart-line__pricebox em{margin-top:1px;color:#6c7f8d;font-size:10px;font-style:normal;white-space:nowrap}
.vh-cart-line__bottom{grid-area:bottom;display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding-top:3px}
.vh-cart-qty-control{display:grid;grid-template-columns:40px 42px 40px;align-items:stretch;height:40px;gap:5px;background:transparent}
.vh-cart-qty-control button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border:0!important;border-radius:5px!important;background:#f0f2f4!important;color:#40484f!important;font-size:24px!important;font-weight:500!important;line-height:1!important;cursor:pointer!important}
.vh-cart-qty-control button:hover:not(:disabled){background:#e4edf4!important;color:var(--navy)!important}
.vh-cart-qty-control button:focus-visible{outline:3px solid rgba(22,137,197,.3);outline-offset:2px}
.vh-cart-qty-control button:disabled{opacity:.35!important;cursor:not-allowed!important}
.vh-cart-qty-control input{width:42px!important;height:40px!important;margin:0!important;padding:0 3px!important;border:1px solid #aebfcd!important;border-radius:5px!important;background:#fff!important;color:var(--ink)!important;font:inherit;font-size:14px!important;font-weight:750!important;text-align:center!important;appearance:textfield}
.vh-cart-qty-control input::-webkit-outer-spin-button,.vh-cart-qty-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.vh-cart-qty-control input:focus{outline:3px solid rgba(22,137,197,.25);outline-offset:1px;border-color:#6e9fbe!important}
.vh-cart-line__fixed-qty{display:flex;align-items:center;gap:7px;min-height:40px;color:#536b7b;font-size:11px}
.vh-cart-line__fixed-qty strong{display:grid;place-items:center;min-width:42px;height:40px;border:1px solid #aebfcd;border-radius:5px;background:#fff;color:var(--ink);font-size:14px}
.vh-cart-remove{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;margin:0!important;padding:6px 8px!important;border:0!important;background:transparent!important;color:#5a6268!important;font-size:11px!important;font-weight:750!important;text-decoration:none!important;cursor:pointer!important}
.vh-cart-remove svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vh-cart-remove:hover{color:#a52b2b!important}.vh-cart-remove:focus-visible{outline:3px solid rgba(155,47,47,.2);outline-offset:2px;border-radius:5px}

@media(max-width:760px){
  .vh-cart-line{grid-template-columns:88px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;grid-template-areas:"image info" "price price" "bottom bottom"!important;padding:13px!important;column-gap:12px!important}
  .vh-cart-line__image{width:88px;height:88px;padding:6px}
  .vh-cart-line__pricebox{justify-items:start;min-width:0;padding-top:2px;text-align:left}
  .vh-cart-line__pricebox strong{font-size:17px}
  .vh-cart-line__bottom{padding-top:5px}
}
@media(max-width:430px){
  .vh-cart-line{grid-template-columns:74px minmax(0,1fr)!important}
  .vh-cart-line__image{width:74px;height:74px}
  .vh-cart-line__info h3{font-size:13px!important}
  .vh-cart-line__stock{font-size:10px}
  .vh-cart-line__bottom{align-items:flex-start;flex-direction:column;gap:7px}
  .vh-cart-remove{align-self:flex-end}
}


/* 213.4 - actieherstel: knoppen blijven echte button-targets; JS gebruikt gedelegeerde handlers. */
.vh-cart-remove,.vh-cart-qty-control button{position:relative;z-index:1;touch-action:manipulation}

/* 215.13.23.2 - laatste winkelwagenregel direct visueel verwijderen.
 * Mobiele display:...!important regels mogen het HTML hidden-attribuut nooit overrulen. */
.vh-cart-page[hidden],.vh-cart-empty[hidden]{display:none!important}
