
/* OctaStore shop header v1 — desktop + mobile, isolated from legacy header styles */
.octa-shop-header{position:sticky!important;top:0!important;z-index:9000!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e6e9ef!important;backdrop-filter:saturate(180%) blur(14px);font-family:inherit!important}
.octa-shop-header *{box-sizing:border-box}
.octa-shop-header__bar{max-width:1240px!important;margin:0 auto!important;padding:12px 24px!important;min-height:82px!important;display:grid!important;grid-template-columns:220px 132px minmax(260px,1fr) auto!important;gap:16px!important;align-items:center!important}
.octa-shop-header__logo{display:flex!important;align-items:center!important;min-width:0!important}
.octa-shop-header__logo img{display:block!important;width:200px!important;height:auto!important;max-width:100%!important}
.octa-catalog-trigger{height:46px!important;border:0!important;border-radius:10px!important;background:#111827!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;padding:0 15px!important;font:600 14px/1 inherit!important;cursor:pointer!important;box-shadow:none!important}
.octa-catalog-trigger:hover{background:#1f2937!important}.octa-catalog-trigger svg{width:16px;height:16px;transition:transform .18s ease}.octa-catalog-trigger[aria-expanded="true"] svg{transform:rotate(180deg)}
.octa-catalog-trigger__icon{display:grid;gap:3px;width:14px}.octa-catalog-trigger__icon i{display:block;width:14px;height:1.5px;background:currentColor;border-radius:2px}
.octa-header-search{height:46px!important;position:relative!important;display:flex!important;align-items:center!important;border:1px solid #dfe3ea!important;background:#f7f8fa!important;border-radius:10px!important;padding:0 13px!important;min-width:0!important}
.octa-header-search:focus-within{background:#fff!important;border-color:#9aa4b2!important;box-shadow:0 0 0 3px rgba(17,24,39,.06)!important}
.octa-header-search__icon{width:19px;height:19px;flex:0 0 auto;color:#6b7280;margin-right:9px}
.octa-header-search input{appearance:none!important;width:100%!important;min-width:0!important;border:0!important;outline:0!important;background:transparent!important;color:#101828!important;font:500 14px/1.2 inherit!important;padding:0!important;box-shadow:none!important}
.octa-header-search input::placeholder{color:#8992a3}
.octa-header-search__results{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 8px)!important;background:#fff!important;border:1px solid #e2e6ed!important;border-radius:12px!important;padding:6px!important;box-shadow:0 18px 45px rgba(15,23,42,.13)!important;max-height:390px!important;overflow:auto!important;z-index:5!important}
.octa-search-result{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 11px!important;border-radius:8px!important;color:#101828!important;text-decoration:none!important;font-size:13px!important;line-height:1.3!important}
.octa-search-result:hover,.octa-search-result:focus{background:#f3f5f8!important}.octa-search-result small{color:#7a8495!important;font-size:11px!important;white-space:nowrap!important}
.octa-search-empty{padding:12px!important;color:#7a8495!important;font-size:13px!important}
.octa-shop-header__actions{display:flex!important;align-items:center!important;gap:8px!important}
.octa-account-btn,.octa-header-cart{height:46px!important;min-width:72px!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#111827!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:0 10px!important;font:600 12px/1 inherit!important;cursor:pointer!important;box-shadow:none!important}
.octa-account-btn:hover,.octa-header-cart:hover{background:#f3f5f8!important}.octa-account-btn svg,.octa-header-cart svg{width:22px!important;height:22px!important;flex:0 0 auto!important}
.octa-header-cart{position:relative!important}.octa-header-cart .cart-count{position:absolute!important;top:2px!important;right:0!important;min-width:19px!important;height:19px!important;padding:0 5px!important;border-radius:999px!important;background:#9aa5b5!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;line-height:1!important}
.octa-catalog-menu{position:absolute!important;left:0!important;right:0!important;top:100%!important;background:#fff!important;border-top:1px solid #eef0f4!important;border-bottom:1px solid #dfe3ea!important;box-shadow:0 22px 50px rgba(15,23,42,.10)!important;z-index:8999!important}
.octa-catalog-menu__inner{max-width:1240px!important;margin:0 auto!important;padding:22px 24px 26px!important}
.octa-catalog-menu__brands{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;margin-bottom:24px!important}
.octa-catalog-menu__brands a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 14px!important;border:1px solid #e3e7ed!important;border-radius:10px!important;background:#f8f9fb!important;text-decoration:none!important;color:#111827!important}
.octa-catalog-menu__brands strong{font-size:15px!important}.octa-catalog-menu__brands span{font-size:12px!important;color:#7a8495!important}
.octa-catalog-menu__columns{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:30px!important}
.octa-catalog-menu__columns section{min-width:0!important}.octa-catalog-menu__columns h3{margin:0 0 10px!important;color:#111827!important;font:700 14px/1.3 inherit!important}
.octa-catalog-menu__columns a{display:block!important;padding:5px 0!important;color:#5f6878!important;text-decoration:none!important;font-size:13px!important;line-height:1.35!important}.octa-catalog-menu__columns a:hover{color:#111827!important}
.octa-catalog-menu__all{display:inline-block!important;margin-top:18px!important;color:#2563eb!important;text-decoration:none!important;font-size:13px!important;font-weight:700!important}
.octa-account-modal{position:fixed!important;inset:0!important;z-index:12000!important;display:grid!important;place-items:center!important;padding:20px!important}.octa-account-modal[hidden]{display:none!important}
.octa-account-modal__backdrop{position:absolute!important;inset:0!important;border:0!important;background:rgba(15,23,42,.42)!important;cursor:pointer!important}
.octa-account-modal__card{position:relative!important;width:min(440px,100%)!important;background:#fff!important;border-radius:18px!important;padding:26px!important;box-shadow:0 24px 70px rgba(15,23,42,.24)!important;color:#111827!important}
.octa-account-modal__card h2{font:750 22px/1.2 inherit!important;margin:0 34px 10px 0!important}.octa-account-modal__card p{margin:0 0 20px!important;color:#667085!important;font-size:14px!important;line-height:1.6!important}
.octa-account-modal__close{position:absolute!important;right:14px!important;top:12px!important;border:0!important;background:transparent!important;color:#667085!important;font-size:28px!important;line-height:1!important;cursor:pointer!important}
.octa-account-modal__ok{height:42px!important;border:0!important;border-radius:9px!important;background:#2563eb!important;color:#fff!important;padding:0 18px!important;font:700 13px/1 inherit!important;cursor:pointer!important}
body.octa-menu-open{overflow:hidden!important}
@media(max-width:900px){
 .octa-shop-header__bar{grid-template-columns:minmax(150px,1fr) auto!important;grid-template-areas:"logo actions" "catalog search"!important;gap:10px 12px!important;padding:10px 16px 12px!important;min-height:0!important}
 .octa-shop-header__logo{grid-area:logo!important}.octa-shop-header__logo img{width:180px!important}.octa-shop-header__actions{grid-area:actions!important;justify-self:end!important}.octa-catalog-trigger{grid-area:catalog!important;height:42px!important}.octa-header-search{grid-area:search!important;height:42px!important}
 .octa-account-btn,.octa-header-cart{height:42px!important;min-width:44px!important;padding:0 7px!important}.octa-account-btn span,.octa-header-cart__label{display:none!important}.octa-header-cart .cart-count{top:-1px!important;right:-2px!important}
 .octa-catalog-menu{position:fixed!important;top:var(--octa-header-h,116px)!important;bottom:0!important;overflow:auto!important}.octa-catalog-menu__inner{padding:18px 16px 34px!important}.octa-catalog-menu__brands{grid-template-columns:1fr!important;margin-bottom:18px!important}.octa-catalog-menu__columns{grid-template-columns:1fr 1fr!important;gap:22px 20px!important}
}
@media(max-width:520px){
 .octa-shop-header__bar{grid-template-columns:1fr auto!important;padding:9px 12px 11px!important;gap:9px!important}.octa-shop-header__logo img{width:154px!important}.octa-catalog-trigger{min-width:112px!important;padding:0 12px!important}.octa-header-search{padding:0 10px!important}.octa-header-search input{font-size:13px!important}.octa-account-btn,.octa-header-cart{min-width:40px!important;padding:0 5px!important}.octa-account-btn svg,.octa-header-cart svg{width:21px!important;height:21px!important}.octa-shop-header__actions{gap:2px!important}
 .octa-catalog-menu__columns{grid-template-columns:1fr!important;gap:18px!important}.octa-catalog-menu__brands a{padding:11px 12px!important}.octa-catalog-menu__brands span{font-size:11px!important}.octa-account-modal__card{padding:22px!important;border-radius:15px!important}
}


/* v2 — modifier category chooses brand first, never a single product */
.octa-modifier-brand-choice{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.octa-catalog-menu__columns .octa-modifier-brand-choice a{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  padding:11px 12px!important;
  border:1px solid #e3e7ed!important;
  border-radius:10px!important;
  background:#f8f9fb!important;
  color:#111827!important;
}
.octa-catalog-menu__columns .octa-modifier-brand-choice a:hover{
  background:#f1f3f6!important;
  border-color:#d6dbe3!important;
}
.octa-modifier-brand-choice strong{
  font-size:14px!important;
  line-height:1.2!important;
}
.octa-modifier-brand-choice span{
  color:#7a8495!important;
  font-size:11px!important;
  line-height:1.35!important;
}
@media(max-width:900px){
  .octa-modifier-brand-choice{grid-template-columns:1fr 1fr!important}
}
@media(max-width:520px){
  .octa-modifier-brand-choice{grid-template-columns:1fr!important}
}


/* v3 — reliable mobile catalog drawer */
.octa-catalog-menu[hidden]{display:none!important}
.octa-catalog-menu.is-open{display:block!important}
.octa-catalog-mobile-close{display:none!important}

@media(max-width:900px){
  .octa-shop-header{
    isolation:isolate!important;
    z-index:10050!important;
  }
  .octa-catalog-trigger{
    position:relative!important;
    z-index:10052!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    pointer-events:auto!important;
  }
  .octa-catalog-menu{
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:var(--octa-header-h,110px)!important;
    bottom:0!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:#fff!important;
    z-index:10051!important;
    pointer-events:auto!important;
  }
  .octa-catalog-menu__inner{
    position:relative!important;
    min-height:100%!important;
    padding-top:54px!important;
  }
  .octa-catalog-mobile-close{
    display:block!important;
    position:absolute!important;
    top:12px!important;
    right:16px!important;
    border:0!important;
    background:#f3f5f8!important;
    color:#111827!important;
    border-radius:10px!important;
    padding:9px 12px!important;
    font:700 12px/1 inherit!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
  }
  body.octa-menu-open{
    overflow:hidden!important;
    touch-action:pan-x!important;
  }
  .octa-catalog-menu a{
    touch-action:manipulation!important;
    pointer-events:auto!important;
  }
}


/* v4 — Kupo category separation */
.kupo-category-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 24px;
}
.kupo-category-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 13px;
  border:1px solid #e0e5eb;
  border-radius:999px;
  background:#fff;
  color:#222b38;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}
.kupo-category-chip:hover,
.kupo-category-chip.is-active{
  background:#111827;
  border-color:#111827;
  color:#fff;
}
#kupo-products .prod-card[hidden]{
  display:none!important;
}
@media(max-width:620px){
  .kupo-category-nav{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .kupo-category-chip{
    width:100%;
    min-height:42px;
    padding:8px 9px;
    font-size:12px;
  }
}


/* v6 — final catalog hierarchy: simple category → brand → products */
.octa-catalog-menu__columns section > a strong{
  display:block;
  font-size:13px;
  line-height:1.2;
}
.octa-catalog-menu__columns section > a span{
  display:block;
  margin-top:2px;
  color:#7a8495;
  font-size:11px;
  line-height:1.35;
}
.aputure-category-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 24px;
}
.aputure-category-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 13px;
  border:1px solid #e0e5eb;
  border-radius:999px;
  background:#fff;
  color:#222b38;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}
.aputure-category-chip:hover,
.aputure-category-chip.is-active{
  background:#111827;
  border-color:#111827;
  color:#fff;
}
.prod-card[data-aputure-group][hidden]{display:none!important}
@media(max-width:620px){
  .aputure-category-nav{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .aputure-category-chip{
    width:100%;
    min-height:42px;
    padding:8px 9px;
    font-size:12px;
  }
  .aputure-category-chip:first-child{grid-column:1 / -1}
}


/* v12 — single catalog controller, desktop + mobile */
.octa-catalog-menu[hidden]{display:none!important}
.octa-catalog-menu.is-open{display:block!important}
@media(max-width:900px){
  .octa-catalog-trigger{
    touch-action:manipulation!important;
    pointer-events:auto!important;
  }
  .octa-catalog-menu.is-open{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  .octa-catalog-mobile-close{
    display:block!important;
  }
}


/* v13 — REAL mobile catalog fix
   The sticky header uses backdrop-filter, so a fixed child is constrained by the
   header itself on mobile Safari/Chromium. Keep the drawer absolute under the
   sticky header and give it an explicit viewport-height scroll area. */
@media(max-width:900px){
  .octa-catalog-menu,
  .octa-catalog-menu.is-open{
    position:absolute!important;
    top:100%!important;
    bottom:auto!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:calc(100vh - var(--octa-header-h,114px))!important;
    height:calc(100dvh - var(--octa-header-h,114px))!important;
    max-height:calc(100vh - var(--octa-header-h,114px))!important;
    max-height:calc(100dvh - var(--octa-header-h,114px))!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    z-index:8999!important;
  }
}




/* v16 — clean personal account header state */
.octa-account-btn{
  position:relative;
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0;
  padding:7px 10px!important;
  border-radius:12px;
  text-decoration:none!important;
  color:#111827!important;
}
.octa-account-btn:hover{
  background:#f5f7fa;
}
.octa-account-btn svg{
  flex:0 0 auto;
}
.octa-account-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  line-height:1.05;
}
.octa-account-label{
  display:block;
  font-size:11px;
  font-weight:700;
  color:#7a8495;
  letter-spacing:.02em;
}
.octa-account-name{
  display:block;
  max-width:92px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  margin-top:2px;
  font-size:12px;
  font-weight:800;
  color:#111827;
}
.octa-account-name[hidden]{
  display:none!important;
}
.octa-account-btn.is-logged-in{
  background:#f7f9fc;
}
.octa-account-btn.is-logged-in::after{
  content:"";
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#21a35b;
  top:6px;
  right:6px;
  box-shadow:0 0 0 2px #fff;
}
@media(max-width:620px){
  .octa-account-btn{
    padding:6px 7px!important;
    gap:5px!important;
  }
  .octa-account-label{
    font-size:10px;
  }
  .octa-account-name{
    max-width:58px;
    font-size:11px;
  }
}
@media(max-width:430px){
  .octa-account-name{
    max-width:48px;
  }
}


/* v17 — logged-in account shows only customer name */
.octa-account-label[hidden]{
  display:none!important;
}
.octa-account-btn.is-logged-in .octa-account-text{
  justify-content:center;
}
.octa-account-btn.is-logged-in .octa-account-name{
  margin-top:0;
}


/* v18 — initials + full customer name */
.octa-account-initials{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#111827;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
}
.octa-account-initials[hidden]{
  display:none!important;
}
.octa-account-btn.is-logged-in svg{
  display:none!important;
}
.octa-account-btn.is-logged-in .octa-account-name{
  max-width:150px;
  font-size:12px;
}
@media(max-width:620px){
  .octa-account-initials{
    width:28px;
    height:28px;
    font-size:10px;
  }
  .octa-account-btn.is-logged-in .octa-account-name{
    max-width:92px;
    font-size:11px;
  }
}
@media(max-width:430px){
  .octa-account-btn.is-logged-in .octa-account-name{
    max-width:72px;
  }
}


/* v19 — logged-in account shows initials only */
.octa-account-btn.is-logged-in{
  min-width:auto!important;
  padding:6px!important;
  background:transparent!important;
}
.octa-account-btn.is-logged-in .octa-account-text{
  display:none!important;
}
.octa-account-btn.is-logged-in .octa-account-initials{
  width:32px;
  height:32px;
  font-size:11px;
}
.octa-account-btn.is-logged-in::after{
  top:3px!important;
  right:3px!important;
}
@media(max-width:620px){
  .octa-account-btn.is-logged-in{
    padding:4px!important;
  }
  .octa-account-btn.is-logged-in .octa-account-initials{
    width:30px;
    height:30px;
    font-size:10px;
  }
}


/* v20 — force initials-only logged-in state, including older cached header markup */
.octa-account-btn.is-logged-in .octa-account-label,
.octa-account-btn.is-logged-in .octa-account-name,
.octa-account-btn.is-logged-in .octa-account-text{
  display:none!important;
}
.octa-account-btn.is-logged-in .octa-account-initials{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}


/* v21 — final account header fix */
.octa-account-btn.is-logged-in{
  font-size:0!important;
  min-width:auto!important;
  padding:5px!important;
  background:transparent!important;
}
.octa-account-btn.is-logged-in > *:not(.octa-account-initials){
  display:none!important;
}
.octa-account-btn.is-logged-in .octa-account-initials{
  display:inline-flex!important;
  width:32px!important;
  height:32px!important;
  border-radius:50%!important;
  align-items:center!important;
  justify-content:center!important;
  background:#111827!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
}
.octa-account-btn.is-logged-in::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:#21a35b!important;
  top:2px!important;
  right:2px!important;
  box-shadow:0 0 0 2px #fff!important;
}


/* v22 — light account initials circle */
.octa-account-btn.is-logged-in .octa-account-initials{
  background:#eef3fb!important;
  color:#111827!important;
  border:1px solid #d8e1ee!important;
}


/* v24 — cart icon only + compact counter on every shared-header page */
.octa-header-cart{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#111827!important;
  line-height:1!important;
}
.octa-header-cart:hover{
  background:#f5f7fa!important;
}
.octa-header-cart .octa-header-cart__label{
  display:none!important;
}
.octa-header-cart .cart-header-icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
  flex:0 0 auto!important;
}
.octa-header-cart .cart-count{
  position:absolute!important;
  top:-3px!important;
  right:-4px!important;
  min-width:17px!important;
  height:17px!important;
  padding:0 4px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  background:#eef3fb!important;
  color:#111827!important;
  border:1px solid #d8e1ee!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
}
@media(max-width:620px){
  .octa-header-cart{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }
  .octa-header-cart .cart-header-icon{
    width:19px!important;
    height:19px!important;
  }
  .octa-header-cart .cart-count{
    top:-4px!important;
    right:-5px!important;
  }
}


/* v26 — compact login/cart labels under icons */
.octa-account-btn,
.octa-header-cart{
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  height:46px!important;
  min-height:46px!important;
  padding:4px 6px!important;
  border-radius:10px!important;
  text-decoration:none!important;
}

/* Logged OUT: person icon + small "Войти" underneath */
.octa-account-btn:not(.is-logged-in) .octa-account-text{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.octa-account-btn:not(.is-logged-in) .octa-account-label{
  display:block!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:600!important;
  color:#6f7785!important;
  margin:0!important;
}
.octa-account-btn:not(.is-logged-in) svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
}

/* Logged IN: only initials circle + green session dot */
.octa-account-btn.is-logged-in{
  flex-direction:row!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:5px!important;
}
.octa-account-btn.is-logged-in .octa-account-text,
.octa-account-btn.is-logged-in .octa-account-label,
.octa-account-btn.is-logged-in .octa-account-name{
  display:none!important;
}

/* Cart: icon + counter + small "Корзина" underneath */
.octa-header-cart{
  width:48px!important;
  min-width:48px!important;
  position:relative!important;
  overflow:visible!important;
}
.octa-header-cart .cart-header-icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
}
.octa-header-cart .octa-header-cart__caption{
  display:block!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:600!important;
  color:#6f7785!important;
  white-space:nowrap!important;
  margin-top:1px!important;
}
.octa-header-cart .cart-count{
  position:absolute!important;
  top:1px!important;
  right:3px!important;
  min-width:16px!important;
  height:16px!important;
  padding:0 4px!important;
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:900!important;
}

@media(max-width:620px){
  .octa-account-btn,
  .octa-header-cart{
    height:43px!important;
    min-height:43px!important;
    padding:3px 5px!important;
  }
  .octa-account-btn:not(.is-logged-in) .octa-account-label,
  .octa-header-cart .octa-header-cart__caption{
    font-size:9px!important;
  }
  .octa-header-cart{
    width:45px!important;
    min-width:45px!important;
  }
}


/* v27 — equal size account/login and cart controls */
.octa-account-btn,
.octa-header-cart{
  width:48px!important;
  min-width:48px!important;
  height:46px!important;
  min-height:46px!important;
  padding:4px 6px!important;
}

.octa-account-btn:not(.is-logged-in) svg,
.octa-header-cart .cart-header-icon{
  width:20px!important;
  height:20px!important;
}

.octa-account-btn.is-logged-in{
  width:48px!important;
  min-width:48px!important;
  height:46px!important;
  min-height:46px!important;
  padding:4px 6px!important;
}

.octa-account-btn.is-logged-in .octa-account-initials{
  width:30px!important;
  height:30px!important;
}

@media(max-width:620px){
  .octa-account-btn,
  .octa-header-cart,
  .octa-account-btn.is-logged-in{
    width:45px!important;
    min-width:45px!important;
    height:43px!important;
    min-height:43px!important;
  }
  .octa-account-btn:not(.is-logged-in) svg,
  .octa-header-cart .cart-header-icon{
    width:19px!important;
    height:19px!important;
  }
  .octa-account-btn.is-logged-in .octa-account-initials{
    width:28px!important;
    height:28px!important;
  }
}


/* v29 — exact guest account/cart alignment */
.octa-account-btn:not(.is-logged-in),
.octa-header-cart{
  width:50px!important;
  min-width:50px!important;
  height:48px!important;
  min-height:48px!important;
  padding:4px 5px!important;
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  box-sizing:border-box!important;
}

/* Same visual icon size */
.octa-account-btn:not(.is-logged-in) > svg,
.octa-header-cart .cart-header-icon{
  display:block!important;
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  min-height:21px!important;
  flex:0 0 21px!important;
  margin:0!important;
}

/* Same caption typography and baseline */
.octa-account-btn:not(.is-logged-in) .octa-account-text,
.octa-header-cart .octa-header-cart__caption{
  margin:0!important;
}
.octa-account-btn:not(.is-logged-in) .octa-account-label,
.octa-header-cart .octa-header-cart__caption{
  display:block!important;
  font-size:9px!important;
  line-height:10px!important;
  font-weight:600!important;
  color:#6f7785!important;
  white-space:nowrap!important;
}

/* No legacy account text can appear in guest state */
.octa-account-btn:not(.is-logged-in) > span:not(.octa-account-text):not(.octa-account-initials){
  display:none!important;
}

/* Counter remains over cart icon without changing cart dimensions */
.octa-header-cart{
  position:relative!important;
  overflow:visible!important;
}
.octa-header-cart .cart-count{
  top:0!important;
  right:2px!important;
}

@media(max-width:620px){
  .octa-account-btn:not(.is-logged-in),
  .octa-header-cart{
    width:46px!important;
    min-width:46px!important;
    height:45px!important;
    min-height:45px!important;
  }
  .octa-account-btn:not(.is-logged-in) > svg,
  .octa-header-cart .cart-header-icon{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
    flex-basis:20px!important;
  }
}


/* v30 — bolder, more visible account and cart icons */
.octa-account-btn:not(.is-logged-in) > svg,
.octa-header-cart .cart-header-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  flex:0 0 22px!important;
  stroke-width:2.35!important;
  color:#111827!important;
}

/* Make SVG strokes stronger even when the icon carries its own stroke-width */
.octa-account-btn:not(.is-logged-in) > svg *,
.octa-header-cart .cart-header-icon *{
  stroke-width:2.35!important;
}

/* Slightly stronger labels as well */
.octa-account-btn:not(.is-logged-in) .octa-account-label,
.octa-header-cart .octa-header-cart__caption{
  font-weight:700!important;
  color:#4b5563!important;
}

@media(max-width:620px){
  .octa-account-btn:not(.is-logged-in) > svg,
  .octa-header-cart .cart-header-icon{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    min-height:21px!important;
    flex-basis:21px!important;
  }
}


/* v31 — slightly larger, clearer LK/account and cart icons everywhere */
.octa-account-btn:not(.is-logged-in) > svg,
.octa-header-cart .cart-header-icon{
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  flex:0 0 25px!important;
  stroke-width:2.4!important;
}

.octa-account-btn:not(.is-logged-in) > svg *,
.octa-header-cart .cart-header-icon *{
  stroke-width:2.4!important;
}

/* Keep both controls visually equal */
.octa-account-btn:not(.is-logged-in),
.octa-header-cart{
  width:54px!important;
  min-width:54px!important;
  height:50px!important;
  min-height:50px!important;
}

/* Logged-in initials circle scales with the larger account control */
.octa-account-btn.is-logged-in{
  width:54px!important;
  min-width:54px!important;
  height:50px!important;
  min-height:50px!important;
}
.octa-account-btn.is-logged-in .octa-account-initials{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  font-size:13px!important;
}

/* Cart counter stays compact and anchored to the larger icon */
.octa-header-cart .cart-count{
  top:-1px!important;
  right:1px!important;
}

@media(max-width:620px){
  .octa-account-btn:not(.is-logged-in),
  .octa-header-cart,
  .octa-account-btn.is-logged-in{
    width:50px!important;
    min-width:50px!important;
    height:48px!important;
    min-height:48px!important;
  }

  .octa-account-btn:not(.is-logged-in) > svg,
  .octa-header-cart .cart-header-icon{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
    flex-basis:24px!important;
  }

  .octa-account-btn.is-logged-in .octa-account-initials{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    font-size:12px!important;
  }
}

/* v33 — desktop checkout stays below sticky shop header */
@media (min-width:901px){
  .checkout-panel{
    top:82px!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    height:auto!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    padding:20px 22px!important;
  }
  .checkout-panel.open{
    display:flex!important;
  }
  .checkout-card{
    width:min(1040px,100%)!important;
    max-height:calc(100dvh - 122px)!important;
    margin:0 auto!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  .checkout-head{
    top:0!important;
  }
}
