/* Dölj den servercachelagrade rutan tills beloppen har normaliserats lokalt. */
html.bve-fp-js .bve-fraktprogress{visibility:hidden;}
html.bve-fp-js.bve-fp-ready .bve-fraktprogress{visibility:visible;}

/* Fraktprogress 4.4.0 – robust, cache-säker och Shoptimizer-anpassad */
.bve-fraktprogress,
.bve-fraktprogress *{box-sizing:border-box!important}
.bve-fraktprogress{position:relative!important;display:block!important;clear:both!important;width:100%!important;max-width:100%!important;margin:16px 0 24px!important;padding:16px!important;border:1px solid #e7e9ee!important;border-radius:18px!important;background:var(--bve-fp-bg,#fff)!important;box-shadow:0 16px 42px rgba(15,23,42,.10)!important;color:var(--bve-fp-text,#202124)!important;font-family:inherit!important;font-size:14px!important;line-height:1.4!important;overflow:visible!important;z-index:1!important}
.bve-fraktprogress__row{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 14px!important}
.bve-fraktprogress__icon{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 36px!important;width:36px!important;height:36px!important;border:1px solid rgba(200,16,46,.18)!important;border-radius:12px!important;background:#fff3f5!important;color:var(--bve-fp-primary,#c8102e)!important;box-shadow:0 7px 16px rgba(15,23,42,.07)!important}
.bve-fraktprogress__icon svg,.bve-fraktprogress__vehicle svg{display:block!important;width:19px!important;height:19px!important;fill:currentColor!important}
.bve-fraktprogress__message{display:block!important;margin:0!important;color:var(--bve-fp-text,#202124)!important;font-size:14px!important;font-weight:750!important;letter-spacing:-.01em!important}
.bve-fraktprogress__amount{color:var(--bve-fp-primary,#c8102e)!important;font-weight:850!important}
.bve-fraktprogress__track{position:relative!important;display:block!important;width:100%!important;height:10px!important;margin:0!important;border-radius:999px!important;background:#e9edf2!important;box-shadow:inset 0 1px 2px rgba(15,23,42,.10)!important;overflow:visible!important}
.bve-fraktprogress__fill{position:absolute!important;top:0!important;bottom:0!important;left:0!important;display:block!important;min-width:8px!important;border-radius:999px!important;background:linear-gradient(90deg,#a90024,var(--bve-fp-primary,#c8102e),#ef4764)!important;box-shadow:0 5px 15px rgba(200,16,46,.22)!important;transition:width .45s ease!important}
.bve-fraktprogress__shine{display:none!important}
.bve-fraktprogress__vehicle{position:absolute!important;top:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;width:30px!important;height:30px!important;border:3px solid #fff!important;border-radius:10px!important;background:var(--bve-fp-primary,#c8102e)!important;color:#fff!important;box-shadow:0 7px 18px rgba(15,23,42,.18)!important;transform:translateY(-50%)!important;transition:left .45s ease!important;z-index:3!important}
.bve-fraktprogress__goal{position:absolute!important;right:-2px!important;top:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;width:29px!important;height:29px!important;border:1px solid #e7e9ee!important;border-radius:10px!important;background:#fff!important;box-shadow:0 7px 18px rgba(15,23,42,.11)!important;font-size:15px!important;line-height:1!important;transform:translateY(-50%)!important;z-index:2!important}
.bve-fraktprogress__numbers{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin:12px 0 0!important;color:#202124!important;font-size:12px!important;font-weight:750!important}
.bve-fraktprogress__numbers span{display:flex!important;align-items:center!important;gap:5px!important}.bve-fraktprogress__numbers small{color:#858b95!important;font-size:9px!important;font-weight:750!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.bve-fraktprogress.is-complete .bve-fraktprogress__fill,.bve-fraktprogress.is-complete .bve-fraktprogress__vehicle{background:var(--bve-fp-complete,#16803a)!important}.bve-fraktprogress.is-complete .bve-fraktprogress__icon{border-color:rgba(22,128,58,.2)!important;background:#edf9f1!important;color:var(--bve-fp-complete,#16803a)!important}
.bve-fraktprogress--checkout{padding:14px!important}
.bve-fraktprogress__recommend{display:block!important;margin:18px -16px -16px!important;padding:18px 16px 16px!important;border-top:1px solid #e7e9ee!important;border-radius:0 0 18px 18px!important;background:#f7f8fa!important;overflow:visible!important}
.bve-fraktprogress__recommend-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;margin:0 0 14px!important}.bve-fraktprogress__eyebrow{margin:0 0 2px!important;color:var(--bve-fp-primary,#c8102e)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.11em!important}.bve-fraktprogress__recommend-title{color:#1f2328!important;font-size:16px!important;font-weight:850!important}.bve-fraktprogress__recommend-sub{margin:3px 0 0!important;color:#747b86!important;font-size:12px!important}.bve-fraktprogress__remaining{flex:0 0 auto!important;padding:6px 10px!important;border-radius:999px!important;background:#fff!important;color:var(--bve-fp-primary,#c8102e)!important;box-shadow:0 5px 14px rgba(15,23,42,.07)!important;font-size:11px!important;font-weight:850!important}
.bve-fraktprogress__recommend-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;width:100%!important}
.bve-fraktprogress__product{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;grid-template-areas:'image info' 'image button'!important;gap:4px 10px!important;min-width:0!important;padding:10px!important;border:1px solid #e7e9ee!important;border-radius:15px!important;background:#fff!important;box-shadow:0 7px 20px rgba(15,23,42,.05)!important;overflow:hidden!important}.bve-fraktprogress__product-image{grid-area:image!important;display:flex!important;align-items:center!important;justify-content:center!important;width:58px!important;height:68px!important;border-radius:11px!important;background:#f4f6f8!important;overflow:hidden!important}.bve-fraktprogress__product-image img{display:block!important;width:54px!important;height:64px!important;max-width:54px!important;max-height:64px!important;margin:0!important;object-fit:contain!important}.bve-fraktprogress__product-info{grid-area:info!important;min-width:0!important}.bve-fraktprogress__product-name{display:-webkit-box!important;overflow:hidden!important;color:#1f2328!important;font-size:12px!important;font-weight:780!important;line-height:1.28!important;text-decoration:none!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}.bve-fraktprogress__product-price{display:block!important;margin:4px 0 0!important;color:#1f2328!important;font-size:12px!important;font-weight:850!important}.bve-fraktprogress__add.button{grid-area:button!important;align-self:end!important;justify-self:start!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:80px!important;height:31px!important;min-height:31px!important;margin:0!important;padding:0 12px!important;border:0!important;border-radius:9px!important;background:#151922!important;color:#fff!important;font-size:11px!important;font-weight:800!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important}.bve-fraktprogress__add.button:hover{background:var(--bve-fp-primary,#c8102e)!important;color:#fff!important}
@media(max-width:900px){.bve-fraktprogress__recommend-grid{grid-template-columns:1fr!important}.bve-fraktprogress__product{grid-template-columns:58px minmax(0,1fr) auto!important;grid-template-areas:'image info button'!important;align-items:center!important}.bve-fraktprogress__add.button{align-self:center!important;justify-self:end!important}}
@media(max-width:600px){.bve-fraktprogress{margin:14px 0 22px!important;padding:14px!important;border-radius:17px!important}.single-product .bve-fraktprogress{display:block!important;clear:both!important;width:100%!important;float:none!important}.bve-fraktprogress__row{gap:10px!important;margin-bottom:13px!important}.bve-fraktprogress__icon{flex-basis:34px!important;width:34px!important;height:34px!important}.bve-fraktprogress__message{font-size:13px!important}.bve-fraktprogress__numbers small{display:none!important}.bve-fraktprogress__recommend{margin:17px -14px -14px!important;padding:16px 14px 14px!important;border-radius:0 0 17px 17px!important}.bve-fraktprogress__recommend-head{display:block!important}.bve-fraktprogress__remaining{display:inline-flex!important;margin-top:8px!important}.bve-fraktprogress__product{grid-template-columns:54px minmax(0,1fr)!important;grid-template-areas:'image info' 'image button'!important;align-items:start!important}.bve-fraktprogress__product-image{width:54px!important;height:60px!important}.bve-fraktprogress__product-image img{width:50px!important;height:56px!important}.bve-fraktprogress__add.button{justify-self:start!important;min-width:78px!important}.bve-fraktprogress__goal{right:-1px!important}}
.bve-fraktprogress__recommend--empty{display:block!important;color:#5f6670!important}.bve-fraktprogress__recommend--empty .bve-fraktprogress__recommend-title{margin-bottom:3px!important}

/* 4.4.2 – kompaktare produktförslag på produktsida och mobil */
@media (min-width:901px){
  .bve-fraktprogress--product .bve-fraktprogress__recommend-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__product{
    grid-template-columns:48px minmax(0,1fr) auto!important;
    grid-template-areas:'image info button'!important;
    align-items:center!important;
    gap:8px!important;
    padding:8px!important;
    border-radius:13px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__product-image{
    width:48px!important;
    height:52px!important;
    border-radius:9px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__product-image img{
    width:44px!important;
    height:48px!important;
    max-width:44px!important;
    max-height:48px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__product-name{
    font-size:11px!important;
    -webkit-line-clamp:2!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__product-price{
    margin-top:2px!important;
    font-size:11px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__add.button{
    min-width:66px!important;
    height:29px!important;
    min-height:29px!important;
    padding:0 10px!important;
    font-size:10px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__recommend-head{
    margin-bottom:10px!important;
  }
  .bve-fraktprogress--product .bve-fraktprogress__recommend-sub{
    display:none!important;
  }
}

@media (max-width:600px){
  .bve-fraktprogress__recommend{
    padding-bottom:12px!important;
  }
  .bve-fraktprogress__recommend-head{
    margin-bottom:10px!important;
  }
  .bve-fraktprogress__recommend-sub{
    display:none!important;
  }
  .bve-fraktprogress__remaining{
    margin-top:6px!important;
    padding:5px 9px!important;
  }
  .bve-fraktprogress__recommend-grid{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:1px 1px 8px!important;
    margin:0!important;
    scroll-snap-type:x proximity!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  .bve-fraktprogress__recommend-grid::-webkit-scrollbar{display:none!important}
  .bve-fraktprogress__product{
    flex:0 0 min(82%,300px)!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    grid-template-areas:'image info' 'image button'!important;
    min-height:118px!important;
    padding:10px!important;
    scroll-snap-align:start!important;
  }
  .bve-fraktprogress__product-name{
    font-size:12px!important;
    -webkit-line-clamp:2!important;
  }
  .bve-fraktprogress__product-price{
    font-size:12px!important;
  }
  .bve-fraktprogress__add.button{
    min-width:82px!important;
    height:32px!important;
    min-height:32px!important;
  }
}

/* 4.4.4 – säkra synlighet på desktop och kompakt produktkolumn */
@media (min-width:901px){
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    width:auto!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    clip:auto!important;
    clip-path:none!important;
    transform:none!important;
    contain:none!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend-grid{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-height:66px!important;
  }
}

/* 4.5.0 – cacheoberoende desktop-rendering */
.bve-fraktprogress__icon svg,
.bve-fraktprogress__vehicle svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  overflow:visible!important;
}
@media (min-width:901px){
  body.single-product .summary .bve-fraktprogress--product{
    overflow:hidden!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__recommend{
    display:block!important;
    margin:16px -16px -16px!important;
    padding:15px 12px 13px!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__recommend-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__product{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-template-areas:'image info button'!important;
    width:100%!important;
    min-width:0!important;
    min-height:60px!important;
    padding:7px!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__product-image{
    width:46px!important;
    height:48px!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__product-image img{
    width:42px!important;
    height:44px!important;
  }
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__recommend-title{font-size:14px!important}
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__eyebrow{font-size:9px!important}
  body.single-product .summary .bve-fraktprogress--product .bve-fraktprogress__remaining{font-size:10px!important;padding:5px 8px!important}
}

/* 4.5.3 – lås kompakta rekommendationskort på mobil */
@media (max-width:600px){
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend{
    overflow:hidden!important;
    padding:14px 12px 12px!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend-head{
    margin:0 0 10px!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__eyebrow{
    font-size:9px!important;
    line-height:1.2!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend-title{
    font-size:15px!important;
    line-height:1.25!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend-grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:0 0 6px!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__recommend-grid > .bve-fraktprogress__product{
    display:grid!important;
    flex:0 0 84%!important;
    width:84%!important;
    max-width:285px!important;
    min-width:245px!important;
    min-height:104px!important;
    height:auto!important;
    grid-template-columns:64px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    grid-template-areas:'image info' 'image button'!important;
    gap:4px 10px!important;
    align-items:start!important;
    padding:10px!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-image{
    grid-area:image!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:76px!important;
    min-height:76px!important;
    max-height:76px!important;
    margin:0!important;
    padding:4px!important;
    overflow:hidden!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-image img,
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-image picture,
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-image picture img{
    display:block!important;
    position:static!important;
    float:none!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-info{
    grid-area:info!important;
    min-width:0!important;
    width:auto!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-name{
    display:-webkit-box!important;
    width:auto!important;
    max-width:100%!important;
    font-size:12px!important;
    line-height:1.25!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__product-price{
    display:block!important;
    margin:3px 0 0!important;
    font-size:12px!important;
    line-height:1.2!important;
  }
  body.single-product .bve-fraktprogress--product .bve-fraktprogress__add.button{
    grid-area:button!important;
    justify-self:start!important;
    align-self:end!important;
    width:auto!important;
    min-width:88px!important;
    max-width:125px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 13px!important;
    font-size:11px!important;
    line-height:34px!important;
  }
}
