/* FIX182 — Adaptive Large Header for all screen sizes
   Final visual layer for the home storefront header.
   Scanner remains hidden. Mobile/tablet = Logo + Search.
   Desktop = Logo + Search + Cart.
*/

body.sp-ios-home{
  --sp182-ink:#111827;
  --sp182-muted:#94a3b8;
  --sp182-line:#e8ebf0;
  --sp182-search:#f7f8fa;
  --sp182-logo-bg:#fff5eb;
  --sp182-cart:#111827;
}

/* Scanner remains removed at every size. */
body.sp-ios-home .sl-header-scan{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

/* =========================================================
   SHARED HEADER SHELL
   ========================================================= */
body.sp-ios-home .sl-online-header{
  position:sticky!important;
  top:0!important;
  z-index:190!important;
  border:0!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.055)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.12)!important;
  backdrop-filter:blur(18px) saturate(1.12)!important;
}

body.sp-ios-home .sl-online-header-inner{
  box-sizing:border-box!important;
  min-width:0!important;
  align-items:center!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.055)!important;
  box-shadow:0 6px 20px rgba(15,23,42,.055)!important;
  overflow:visible!important;
}

body.sp-ios-home .sl-header-logo-link,
body.sp-ios-home .sl-header-search,
body.sp-ios-home .sl-header-cart{
  box-sizing:border-box!important;
  margin:0!important;
  transform:none!important;
}

body.sp-ios-home .sl-header-logo-link{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border:1px solid rgba(243,107,45,.09)!important;
  background:linear-gradient(180deg,#fffaf5 0%,#fff0e2 100%)!important;
  box-shadow:0 4px 14px rgba(243,107,45,.08)!important;
}

body.sp-ios-home .sl-header-logo{
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  filter:none!important;
}

body.sp-ios-home .sl-header-search{
  min-width:0!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  border:1px solid var(--sp182-line)!important;
  background:var(--sp182-search)!important;
  box-shadow:none!important;
}

body.sp-ios-home .sl-header-search:focus-within{
  border-color:rgba(243,107,45,.32)!important;
  box-shadow:0 0 0 3px rgba(243,107,45,.075)!important;
}

body.sp-ios-home .sl-header-search-input{
  box-sizing:border-box!important;
  min-width:0!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#263244!important;
  font-weight:750!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.sp-ios-home .sl-header-search-input::placeholder{
  color:var(--sp182-muted)!important;
  font-weight:650!important;
}

/* Real SVG magnifier */
body.sp-ios-home .sl-header-search::before{
  content:""!important;
  flex:0 0 auto!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.8-3.8'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  box-shadow:none!important;
}

body.sp-ios-home .sl-header-cart{
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  background:var(--sp182-cart)!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(15,23,42,.13)!important;
}

/* =========================================================
   320–359 — VERY SMALL PHONE
   ========================================================= */
@media (max-width:359px){
  body.sp-ios-home .sl-online-header{padding:5px 0 6px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:calc(100% - 8px)!important;
    max-width:none!important;
    min-height:52px!important;
    margin-inline:4px!important;
    padding:5px!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:5px!important;
    border-radius:17px!important;
  }

  body.sp-ios-home .sl-header-cart{display:none!important}

  body.sp-ios-home .sl-header-logo-link{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:2px!important;
    border-radius:13px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:40px!important;
    height:40px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding-inline:7px!important;
    border-radius:13px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:14px!important;height:14px!important;
    background-size:14px 14px!important;
    margin-inline:2px!important;
  }

  body.sp-ios-home .sl-header-search-input,
  body.sp-ios-home .sl-header-search-input::placeholder{
    font-size:10.5px!important;
  }
}

/* =========================================================
   360–430 — STANDARD PHONE
   ========================================================= */
@media (min-width:360px) and (max-width:430px){
  body.sp-ios-home .sl-online-header{padding:6px 0 7px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:calc(100% - 12px)!important;
    max-width:none!important;
    min-height:64px!important;
    margin-inline:6px!important;
    padding:6px!important;
    display:grid!important;
    grid-template-columns:60px minmax(0,1fr)!important;
    gap:7px!important;
    border-radius:20px!important;
  }

  body.sp-ios-home .sl-header-cart{display:none!important}

  body.sp-ios-home .sl-header-logo-link{
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    padding:2px!important;
    border-radius:17px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:49px!important;
    height:49px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    padding-inline:10px!important;
    border-radius:17px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:17px!important;height:17px!important;
    background-size:17px 17px!important;
    margin-inline:3px!important;
  }

  body.sp-ios-home .sl-header-search-input{
    font-size:13px!important;
    padding-inline:6px!important;
  }

  body.sp-ios-home .sl-header-search-input::placeholder{
    font-size:12px!important;
  }
}

/* =========================================================
   431–599 — LARGE PHONE
   ========================================================= */
@media (min-width:431px) and (max-width:599px){
  body.sp-ios-home .sl-online-header{padding:7px 0 8px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    min-height:70px!important;
    margin-inline:8px!important;
    padding:7px!important;
    display:grid!important;
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:8px!important;
    border-radius:22px!important;
  }

  body.sp-ios-home .sl-header-cart{display:none!important}

  body.sp-ios-home .sl-header-logo-link{
    width:68px!important;
    min-width:68px!important;
    max-width:68px!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    padding:2px!important;
    border-radius:18px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:53px!important;
    height:53px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    padding-inline:11px!important;
    border-radius:18px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:18px!important;height:18px!important;
    background-size:18px 18px!important;
    margin-inline:3px!important;
  }

  body.sp-ios-home .sl-header-search-input{font-size:14px!important}
  body.sp-ios-home .sl-header-search-input::placeholder{font-size:13px!important}
}

/* =========================================================
   600–899 — TABLET
   ========================================================= */
@media (min-width:600px) and (max-width:899px){
  body.sp-ios-home .sl-online-header{padding:8px 0 9px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:min(calc(100% - 24px),980px)!important;
    min-height:80px!important;
    margin-inline:auto!important;
    padding:8px!important;
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:11px!important;
    border-radius:24px!important;
  }

  body.sp-ios-home .sl-header-cart{display:none!important}

  body.sp-ios-home .sl-header-logo-link{
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
    height:64px!important;
    min-height:64px!important;
    max-height:64px!important;
    padding:3px!important;
    border-radius:20px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:60px!important;
    height:60px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:64px!important;
    min-height:64px!important;
    max-height:64px!important;
    padding-inline:14px!important;
    border-radius:20px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:20px!important;height:20px!important;
    background-size:20px 20px!important;
    margin-inline:4px!important;
  }

  body.sp-ios-home .sl-header-search-input{font-size:15px!important}
  body.sp-ios-home .sl-header-search-input::placeholder{font-size:14px!important}
}

/* =========================================================
   900–1199 — COMPACT DESKTOP / LANDSCAPE TABLET
   ========================================================= */
@media (min-width:900px) and (max-width:1199px){
  body.sp-ios-home .sl-online-header{padding:8px 0 10px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:min(calc(100% - 32px),1120px)!important;
    min-height:88px!important;
    margin-inline:auto!important;
    padding:9px!important;
    display:grid!important;
    grid-template-columns:86px minmax(0,1fr) 56px!important;
    gap:12px!important;
    border-radius:25px!important;
  }

  body.sp-ios-home .sl-header-logo-link{
    width:86px!important;
    min-width:86px!important;
    max-width:86px!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    padding:3px!important;
    border-radius:21px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:64px!important;
    height:64px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:62px!important;
    min-height:62px!important;
    max-height:62px!important;
    padding-inline:15px!important;
    border-radius:20px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:20px!important;height:20px!important;
    background-size:20px 20px!important;
    margin-inline:4px!important;
  }

  body.sp-ios-home .sl-header-search-input{font-size:15px!important}
  body.sp-ios-home .sl-header-search-input::placeholder{font-size:14px!important}

  body.sp-ios-home .sl-header-cart{
    display:inline-flex!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    border-radius:18px!important;
  }

  body.sp-ios-home .sl-header-cart svg{width:23px!important;height:23px!important}
}

/* =========================================================
   1200–1599 — DESKTOP
   ========================================================= */
@media (min-width:1200px) and (max-width:1599px){
  body.sp-ios-home .sl-online-header{padding:9px 0 11px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:min(calc(100% - 48px),1380px)!important;
    min-height:96px!important;
    margin-inline:auto!important;
    padding:10px!important;
    display:grid!important;
    grid-template-columns:96px minmax(0,1fr) 62px!important;
    gap:14px!important;
    border-radius:28px!important;
  }

  body.sp-ios-home .sl-header-logo-link{
    width:96px!important;
    min-width:96px!important;
    max-width:96px!important;
    height:74px!important;
    min-height:74px!important;
    max-height:74px!important;
    padding:4px!important;
    border-radius:23px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:70px!important;
    height:70px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:66px!important;
    min-height:66px!important;
    max-height:66px!important;
    padding-inline:18px!important;
    border-radius:22px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:22px!important;height:22px!important;
    background-size:22px 22px!important;
    margin-inline:5px!important;
  }

  body.sp-ios-home .sl-header-search-input{font-size:17px!important}
  body.sp-ios-home .sl-header-search-input::placeholder{font-size:16px!important}

  body.sp-ios-home .sl-header-cart{
    display:inline-flex!important;
    width:62px!important;
    min-width:62px!important;
    max-width:62px!important;
    height:62px!important;
    min-height:62px!important;
    max-height:62px!important;
    border-radius:20px!important;
  }

  body.sp-ios-home .sl-header-cart svg{width:25px!important;height:25px!important}
}

/* =========================================================
   >=1600 — WIDE DESKTOP
   ========================================================= */
@media (min-width:1600px){
  body.sp-ios-home .sl-online-header{padding:10px 0 12px!important}

  body.sp-ios-home .sl-online-header-inner{
    width:min(calc(100% - 72px),1520px)!important;
    min-height:104px!important;
    margin-inline:auto!important;
    padding:11px!important;
    display:grid!important;
    grid-template-columns:108px minmax(0,1fr) 68px!important;
    gap:16px!important;
    border-radius:30px!important;
  }

  body.sp-ios-home .sl-header-logo-link{
    width:108px!important;
    min-width:108px!important;
    max-width:108px!important;
    height:80px!important;
    min-height:80px!important;
    max-height:80px!important;
    padding:4px!important;
    border-radius:25px!important;
  }

  body.sp-ios-home .sl-header-logo{
    width:76px!important;
    height:76px!important;
  }

  body.sp-ios-home .sl-header-search{
    height:70px!important;
    min-height:70px!important;
    max-height:70px!important;
    padding-inline:20px!important;
    border-radius:23px!important;
  }

  body.sp-ios-home .sl-header-search::before{
    width:23px!important;height:23px!important;
    background-size:23px 23px!important;
    margin-inline:5px!important;
  }

  body.sp-ios-home .sl-header-search-input{font-size:18px!important}
  body.sp-ios-home .sl-header-search-input::placeholder{font-size:17px!important}

  body.sp-ios-home .sl-header-cart{
    display:inline-flex!important;
    width:68px!important;
    min-width:68px!important;
    max-width:68px!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    border-radius:22px!important;
  }

  body.sp-ios-home .sl-header-cart svg{width:27px!important;height:27px!important}
}

/* Badge adapts on desktop where cart is present. */
@media (min-width:900px){
  body.sp-ios-home .sl-header-cart .cart-badge,
  body.sp-ios-home .sl-header-cart .badge,
  body.sp-ios-home .sl-header-cart .count,
  body.sp-ios-home .sl-header-cart .cart-count,
  body.sp-ios-home .sl-header-cart .sl-cart-badge,
  body.sp-ios-home .sl-header-cart .sl-header-badge,
  body.sp-ios-home .sl-header-cart > span:not(:only-child){
    top:-6px!important;
    left:-6px!important;
    min-width:22px!important;
    height:22px!important;
    padding-inline:5px!important;
    border:2px solid #fff!important;
    border-radius:999px!important;
    font-size:10px!important;
    line-height:1!important;
  }
}
