/* ===== Product page ===== */
.crumbs{font-size:12.5px;color:var(--muted-2);padding:12px 0 10px}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"›";margin-right:6px;opacity:.5}
.crumbs a:hover{color:var(--ink)}
.crumbs [aria-current]{color:var(--ink)}
.product{display:flex;flex-direction:column;gap:18px}
.product__aside,.product__rest{display:flex;flex-direction:column;gap:16px}
@media (min-width:1024px){
  .product{display:grid;grid-template-columns:minmax(0,1fr) 480px;grid-template-areas:"gal aside" "rest aside";column-gap:48px;row-gap:28px;align-items:start}
  .product__gallery{grid-area:gal}
  .product__aside{grid-area:aside}
  .product__rest{grid-area:rest;gap:24px}
}
.gallery{display:flex;flex-direction:column;gap:10px}
.gallery__stage{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:1/1;background:#FFEFE2;touch-action:pan-y}
.gallery__slide{position:absolute;inset:0;opacity:0;transition:opacity .25s}
.gallery__slide.is-active{opacity:1}
.gallery__slide img,.gallery__slide svg{width:100%;height:100%;object-fit:cover}
.gallery__zoom{position:absolute;inset:0;cursor:zoom-in}
.gallery__badge{position:absolute;top:14px;left:14px}
.gallery__wish{position:absolute;top:8px;right:8px;border-radius:50%;background:rgba(255,255,255,.9)}
.gallery__wish[aria-pressed="true"] svg{fill:var(--orange);stroke:var(--orange)}
.gallery__foot{position:absolute;left:14px;right:14px;bottom:14px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}
.gallery__cap{background:rgba(255,255,255,.92)}
.gallery__count{background:rgba(28,20,16,.78);color:#fff}
.gallery__arrow{display:none}
.thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.thumb{border-radius:14px;overflow:hidden;border:2px solid var(--line);aspect-ratio:1/1;background:#fff}
.thumb[aria-current="true"]{border-color:var(--ink)}
.thumb img,.thumb svg{width:100%;height:100%;object-fit:cover}
@media (min-width:1024px){
  .gallery{flex-direction:row-reverse;align-items:flex-start;gap:14px}
  .gallery__stage{flex:1;border-radius:28px}
  .thumbs{grid-template-columns:1fr;width:84px;flex-shrink:0}
  .gallery__arrow{display:flex;position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);align-items:center;justify-content:center;box-shadow:0 4px 14px -6px rgba(28,20,16,.3)}
  .gallery__arrow--prev{left:16px}.gallery__arrow--next{right:16px}
}
.ptitle{display:flex;flex-direction:column;gap:10px}
.ptitle__pills{display:flex;gap:8px;flex-wrap:wrap}
.ptitle__lead{font-size:15px;line-height:1.5;color:var(--ink-2)}
.ptitle__rating{display:flex;align-items:center;gap:8px;font-size:14px;min-height:32px}
@media (min-width:1024px){.ptitle__lead{font-size:16px}.ptitle .h1{font-size:30px}}
.buy{padding:18px;display:flex;flex-direction:column;gap:20px;scroll-margin-top:calc(var(--header-h) + 12px)}
@media (min-width:1024px){.buy{padding:24px;box-shadow:0 20px 50px -30px rgba(28,20,16,.25)}}
.buy__price{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.buy__old{display:flex;gap:8px;align-items:center;font-size:14px}
.buy__old s{color:var(--muted-2)}
.buy__now{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.1}
.buy__now small{font-size:18px;font-weight:500}
.buy__per{text-align:right;background:var(--orange-soft);border-radius:14px;padding:9px 13px}
.buy__per b{display:block;font-size:17px}.buy__per span{font-size:12px;color:var(--muted-2)}
.buy__ship{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.4;background:var(--ok-bg);border-radius:12px;padding:10px 12px;color:var(--ok-text)}
.buy__group{display:flex;flex-direction:column;gap:10px;border:0;margin:0;padding:0;min-width:0}
.buy__label{font-size:14px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0}
.buy__label b{color:var(--ink)}
.types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.type{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 9px;border:1.5px solid var(--line-2);border-radius:14px;background:#fff;text-align:center;font-size:12.5px;line-height:1.25}
.type:hover{border-color:var(--ink)}
.type[aria-current="page"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#FFFBF7}
.type img{width:30px;height:34px}
.type b{font-size:13px}.type span{color:var(--muted-2);font-size:12px}
.sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media (min-width:1024px){.sizes{grid-template-columns:repeat(4,minmax(0,1fr))}}
.size{height:46px;border-radius:12px;border:1.5px solid var(--line-2);background:#fff;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap;transition:all .15s}
.size:hover{border-color:var(--ink)}
.size[aria-checked="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.size.is-out{color:var(--muted-2);text-decoration:line-through;background:#FAF5EF;border-style:dashed}
.size.is-out[aria-checked="true"]{color:var(--ink);background:#FAF5EF;border-style:solid;border-color:var(--ink)}
.fit{display:flex;gap:10px;align-items:flex-start;background:var(--pink);border-radius:12px;padding:10px 12px;font-size:13.5px;line-height:1.45}
.stock-low{display:flex;gap:8px;align-items:center;font-size:13.5px;color:var(--warn);font-weight:700}
.stock-low::before{content:"";width:8px;height:8px;border-radius:50%;background:#E85D0F}
.packs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pack{border:1.5px solid var(--line-2);border-radius:16px;background:#fff;padding:14px 14px 12px;text-align:left;display:flex;flex-direction:column;gap:1px;position:relative;min-height:84px;transition:all .15s}
.pack:hover{border-color:var(--ink)}
.pack[aria-checked="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#FFFBF7}
.pack b{font-size:16px}.pack span{font-size:14px;font-weight:600}.pack small{font-size:12px;color:var(--muted-2)}
.pack .pill{position:absolute;top:-11px;right:10px;padding:3px 9px;font-size:11.5px}
.tiers{display:flex;gap:6px}
.tier{flex:1;border-radius:11px;background:var(--tint-2);padding:7px 4px;text-align:center;font-size:11.5px;line-height:1.3;color:var(--muted);min-height:48px}
.tier:hover{background:#EFE2D4}
.tier b{display:block;font-size:13.5px;color:var(--ink)}
.tier[aria-pressed="true"]{background:var(--lime);color:var(--ink)}
.qty-row{display:flex;gap:12px;align-items:center}
.stepper{display:flex;align-items:center;border:1.5px solid var(--line-2);border-radius:14px;background:#fff;height:52px;flex-shrink:0}
.stepper button{width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:12px}
.stepper button:hover{background:var(--orange-soft)}
.stepper output,.stepper input{width:44px;text-align:center;font-weight:800;font-size:18px;border:0;background:none;font-variant-numeric:tabular-nums}
.total{flex:1;text-align:right}
.total small{display:block;font-size:12.5px;color:var(--muted-2)}
.total b{font-family:var(--font-display);font-size:23px;line-height:1.2}
.total .save{display:block;font-size:12.5px;font-weight:800;color:var(--ok-text)}
.hint-line{font-size:13px;display:flex;gap:6px;align-items:center;color:var(--warn);font-weight:700}
.freeship{display:flex;flex-direction:column;gap:8px}
.freeship__text{display:flex;gap:8px;align-items:center;font-size:13.5px;font-weight:600}
.trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);padding-top:16px}
.trust div{display:flex;flex-direction:column;gap:4px;font-size:12px;line-height:1.35;color:var(--muted)}
.trust b{color:var(--ink);font-size:12.5px}
.trust .icon{color:var(--orange-text)}
.addons{padding:18px;display:flex;flex-direction:column;gap:10px}
.addon{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;border:1.5px solid var(--line);background:#fff;width:100%;text-align:left;min-height:56px}
.addon:hover{border-color:#CDBBA8}
.addon[aria-checked="true"]{border-color:var(--ink);background:#FFFBF7}
.addon__box{width:24px;height:24px;border-radius:7px;border:1.5px solid #CDBBA8;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:transparent;background:#fff}
.addon[aria-checked="true"] .addon__box{background:var(--ink);border-color:var(--ink);color:#fff}
.addon__name{flex:1;font-size:14px;font-weight:600;line-height:1.3}
.addon__price{font-weight:800;white-space:nowrap}
.howto{padding:18px;display:flex;flex-direction:column;gap:16px}
@media (min-width:1024px){.howto{padding:26px}}
/* SEO text */
.desc{padding:20px 18px 12px;display:flex;flex-direction:column;gap:6px}
.desc__clip{position:relative;overflow:hidden;max-height:340px}
.desc.is-open .desc__clip{max-height:none}
.desc__fade{position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 85%);pointer-events:none}
.desc.is-open .desc__fade{display:none}
.desc__toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;font-weight:800;font-size:15px}
.desc__toggle .icon{transition:transform .2s}
.desc.is-open .desc__toggle .icon{transform:rotate(180deg)}
@media (min-width:1024px){.desc{padding:32px}.desc__clip{max-height:none}.desc__fade,.desc__toggle{display:none}}
.prose{font-size:15.5px;line-height:1.7;color:var(--ink-2);display:flex;flex-direction:column;gap:12px;max-width:72ch}
.prose h2{font-family:var(--font-display);font-size:19px;letter-spacing:-.02em;line-height:1.3;color:var(--ink);margin-top:10px}
.prose h2:first-child{margin-top:0}
.prose ul{display:flex;flex-direction:column;gap:6px}
.prose li{display:flex;gap:10px}
.prose ul>li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange);margin-top:11px;flex-shrink:0}
.prose b,.prose strong{color:var(--ink)}
.two-col{display:flex;flex-direction:column;gap:18px}
@media (min-width:1024px){.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}}
.specs{padding:18px}
@media (min-width:1024px){.specs{padding:26px}}
.specs dl{display:flex;flex-direction:column;margin-top:6px}
.specs div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed #EADBCB;font-size:14px}
.specs div:last-child{border-bottom:0}
.specs dt{color:var(--muted-2);display:flex;align-items:center;gap:8px}.specs dd{font-weight:700;text-align:right}
.size-table{padding:2px 4px;overflow-x:auto}
@media (min-width:1024px){.size-table{padding:6px 12px}}
.stab{font-size:14px}
.stab th{font-size:12.5px;font-weight:800;color:var(--muted-2);text-align:left;padding:10px 12px;border-bottom:1.5px solid var(--line-2);vertical-align:bottom}
.stab td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
.stab tbody tr:last-child td{border-bottom:0}
.stab tbody tr{cursor:pointer;transition:background .12s}
.stab tbody tr:hover{background:var(--bg)}
.stab tr.is-selected{background:var(--ok-bg)}
.stab tr.is-out td{color:var(--muted-2)}
.stab .r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}
.stab .r small{display:block;font-size:12px;color:var(--muted-2);font-weight:600}
.stab .sz{font-weight:800;white-space:nowrap}
.stab .for{font-size:13px;line-height:1.4;color:var(--muted)}
.stab .d-only{display:none}
@media (min-width:1024px){.stab .d-only{display:table-cell}.stab .m-only{display:none}.stab .for{font-size:14px}}
.reviews{display:flex;flex-direction:column;gap:14px}
.reviews__grid{display:flex;flex-direction:column;gap:12px}
@media (min-width:1024px){
  .reviews__layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start}
  .reviews__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
.reviews__layout{display:flex;flex-direction:column;gap:14px}
.reviews__side{display:flex;flex-direction:column;gap:16px}
/* sticky bar */
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);box-shadow:0 -12px 30px -14px rgba(28,20,16,.3);padding:10px 12px calc(14px + env(safe-area-inset-bottom)) 16px;display:flex;gap:12px;align-items:center;transform:translateY(110%);transition:transform .25s}
.buybar.is-visible{transform:none}
.buybar__info{flex:1;min-width:0}
.buybar__meta{font-size:12px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.buybar__total{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1.2}
.buybar__img,.buybar__name,.buybar .stepper{display:none}
@media (min-width:1024px){
  .buybar{z-index:46;top:0;bottom:auto;transform:translateY(-110%);border-top:0;border-bottom:1px solid var(--line);box-shadow:0 10px 30px -16px rgba(28,20,16,.3);padding:10px max(var(--pad),calc((100vw - var(--container))/2 + var(--pad)))}
  .buybar__img{display:block;width:52px;height:52px;border-radius:12px;overflow:hidden}
  .buybar__name{display:block;font-weight:800;font-size:15px}
  .buybar .stepper{display:flex;height:48px}
  .buybar .stepper button{height:46px}
  .buybar__total{min-width:130px;text-align:right}
}
/* cart drawer */
.cart-item{display:flex;gap:12px;align-items:center;padding:12px;border-radius:18px;background:var(--bg)}
.cart-item img{width:64px;height:64px;border-radius:12px;flex-shrink:0}
.cart-item__text{flex:1;min-width:0}.cart-item__text b{display:block;font-size:14px;line-height:1.3}.cart-item__text span{font-size:12.5px;color:var(--muted-2)}
.ok-badge{width:34px;height:34px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;flex-shrink:0}
/* lightbox */
.lightbox{position:fixed;inset:0;margin:0;width:100%;height:100%;background:#120D0A;color:#fff;display:flex;flex-direction:column}
.lightbox:not([open]){display:none}
.lightbox__stage{flex:1;display:flex;align-items:center;justify-content:center;position:relative;touch-action:pan-y}
.lightbox__stage img,.lightbox__stage svg{width:min(640px,100%);height:auto;aspect-ratio:1/1}
.lightbox .gallery__arrow{display:flex;position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);align-items:center;justify-content:center}
/* size guide */
.guide-row{width:100%;display:grid;grid-template-columns:84px 1fr 18px;gap:10px;align-items:center;padding:12px 6px;border-bottom:1px solid var(--line);text-align:left;font-size:13.5px;border-radius:8px}
.guide-row:hover{background:var(--bg)}
.guide-row[aria-current="true"]{background:var(--orange-soft)}
.guide-row b{font-size:14.5px;font-variant-numeric:tabular-nums}
.finder{display:flex;flex-direction:column;gap:10px;border:1.5px solid var(--line);border-radius:16px;padding:14px}
.finder__row{display:flex;gap:10px}
.finder__row .field{flex:1}
.finder__row .input{height:48px}

/* ===== Home ===== */
.hero{display:flex;flex-direction:column;gap:28px;padding-top:18px;padding-bottom:8px}
.hero__text{display:flex;flex-direction:column;gap:16px}
.hero h1{font-family:var(--font-display);font-size:34px;line-height:1.05;letter-spacing:-.02em}
.hero p{font-size:15.5px;line-height:1.55;color:var(--ink-2)}
.hero__actions{display:flex;gap:10px;flex-wrap:wrap}
.hero__actions .btn{flex:1 1 auto}
.collage{--t:128px;--g:14px;position:relative;width:327px;height:270px;margin:0 auto}
.collage__tile{position:absolute;width:128px;height:128px;border-radius:22px;overflow:hidden;border:4px solid #fff;box-shadow:0 18px 36px -22px rgba(28,20,16,.45)}
.collage__tile img{width:100%;height:100%}
.collage__sticker{position:absolute;right:-6px;top:80px;width:88px;height:88px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--font-display);font-weight:700;font-size:11.5px;line-height:1.15;transform:rotate(10deg);box-shadow:0 10px 24px -12px rgba(28,20,16,.5)}
@media (min-width:1024px){
  .hero{flex-direction:row;align-items:center;justify-content:space-between;gap:40px;padding-top:56px;padding-bottom:24px}
  .hero__text{max-width:580px;gap:22px}
  .hero h1{font-size:60px}.hero p{font-size:18px}
  .hero__actions .btn{flex:0 0 auto}
  .collage{--t:200px;--g:20px;width:456px;height:420px;margin:0 40px 0 0}
  .collage__tile{width:200px;height:200px}
  .collage__sticker{width:110px;height:110px;font-size:14px;top:124px;right:-10px}
}
.home-main{display:flex;flex-direction:column;gap:40px}
@media (min-width:1024px){.home-main{gap:72px}}
.groups{display:grid;grid-template-columns:1fr;gap:12px}
.group{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;display:flex}
.group__img{width:112px;height:112px;flex-shrink:0;border-radius:16px;overflow:hidden;margin:14px 0 14px 14px}
.group__img img{width:100%;height:100%;object-fit:cover}
.group__body{padding:14px 14px 14px 12px;display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.group__top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.group__top h3{font-family:var(--font-display);font-size:16px;letter-spacing:-.02em}
.group__top span{font-size:12.5px;font-weight:800;white-space:nowrap;color:var(--muted)}
.group p{font-size:13px;line-height:1.45;color:var(--muted)}
.group__types{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.group__types a{display:inline-flex;align-items:center;height:36px;padding:0 12px;border-radius:10px;background:var(--bg);border:1px solid var(--line);font-size:13px;font-weight:700}
.group__types a:hover{border-color:var(--ink)}
@media (min-width:1024px){.groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.group{flex-direction:column}.group__img{width:auto;height:auto;aspect-ratio:4/3;margin:0;border-radius:0}.group__body{padding:18px 20px 20px}.group__top h3{font-size:19px}}
.usecase{padding:20px 16px;display:flex;flex-direction:column;gap:16px}
.usecase__chips{display:flex;gap:8px}
@media (min-width:1024px){.usecase{padding:36px 40px}.usecase__chips{flex-wrap:wrap}}
.rec{display:flex;flex-direction:column;gap:14px}
.rec__head{display:flex;gap:14px;align-items:center}
.rec__img{width:76px;height:76px;border-radius:16px;overflow:hidden;flex-shrink:0}
.rec__kicker{font-size:13px;font-weight:800;color:var(--muted-2)}
.rec h3{font-family:var(--font-display);font-size:19px;letter-spacing:-.02em;line-height:1.2}
.rec__pills{display:flex;gap:8px;flex-wrap:wrap}
@media (min-width:1024px){.rec{flex-direction:row;align-items:center;gap:24px}.rec__img{width:220px;height:220px}.rec__body{display:flex;flex-direction:column;gap:10px}.rec h3{font-size:26px}}
.home-duo{display:flex;flex-direction:column;gap:24px}
@media (min-width:1024px){.home-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:stretch}}

/* ===== Checkout ===== */
.co-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.co-header__bar{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 4px;max-width:1120px;margin:0 auto}
.co-header__logo svg{height:20px;width:auto}
.co-header__safe{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--ok-text);margin-left:auto}
.co-header__back span{display:none}
@media (min-width:1024px){.co-header__bar{padding:14px 40px}.co-header__back{width:auto;padding:0 12px;gap:6px;font-weight:700;font-size:14px}.co-header__back span{display:inline}.co-header__logo{margin:0 auto}.co-header__logo svg{height:24px}.co-header__safe{margin-left:0}}
.co{max-width:1120px;margin:0 auto;padding:0 0 110px}
@media (min-width:1024px){.co{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:32px;align-items:start;padding:32px 40px 60px}}
.co__form{display:flex;flex-direction:column;gap:14px;padding:18px 16px 0}
@media (min-width:1024px){.co__form{padding:0;gap:18px}}
.co-summary-m{background:#fff;border-bottom:1px solid var(--line)}
.co-summary-m>button{width:100%;display:flex;align-items:center;gap:10px;padding:14px 16px;min-height:56px}
.co-summary-m>button .icon:nth-of-type(2){transition:transform .2s}
.co-summary-m>button[aria-expanded="true"] .icon:nth-of-type(2){transform:rotate(180deg)}
.co-summary-m__panel{padding:0 16px 14px}
@media (min-width:1024px){.co-summary-m{display:none}}
.co-aside{display:none}
@media (min-width:1024px){.co-aside{display:flex;flex-direction:column;gap:16px;position:sticky;top:96px}}
.sec{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;display:flex;flex-direction:column;gap:14px;transition:opacity .2s}
.sec__head{display:flex;align-items:center;gap:10px}
.sec__head h2{font-family:var(--font-display);font-size:17px;letter-spacing:-.02em;flex:1}
.sec-num{width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font-size:12.5px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sec.is-done .sec-num{background:var(--ok)}
.is-locked{opacity:.45;pointer-events:none;filter:saturate(.6)}
.line-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.line-item:last-child{border-bottom:0}
.line-item img{width:52px;height:52px;border-radius:12px;flex-shrink:0}
.line-item__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.line-item__body b{font-size:14px;line-height:1.3}
.line-item__body>div:first-child b{display:block}
.line-item__body span{font-size:12.5px;color:var(--muted-2)}
.line-item__row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mstep{display:flex;align-items:center;border:1.5px solid var(--line-2);border-radius:11px;height:38px}
.mstep button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px}
.mstep span{min-width:26px;text-align:center;font-weight:800;font-size:14px}
.totals{display:flex;flex-direction:column;gap:8px;font-size:14.5px}
.totals__row{display:flex;justify-content:space-between;gap:12px}
.totals__row span:first-child{color:var(--muted)}
.totals__sum{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:10px;margin-top:2px}
.totals__sum b{font-size:16px}.totals__sum span{font-family:var(--font-display);font-size:22px;font-weight:700}
.freebox{display:flex;flex-direction:column;gap:6px;background:var(--orange-soft);border-radius:12px;padding:10px 12px;font-size:13px;font-weight:700}
.freebox .track{background:#fff}
.otp{font-family:var(--font-display);font-size:26px;letter-spacing:.5em;text-align:center;height:60px}
.verified-box{display:flex;align-items:center;gap:10px;background:var(--ok-bg);border-radius:14px;padding:12px 14px}
.verified-box__ico{width:28px;height:28px;border-radius:50%;background:var(--ok);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.verified-box div{flex:1}.verified-box small{display:block;font-size:12.5px;color:var(--ok-text);font-weight:700}
.with-switch{position:relative}
.with-switch .input{padding-right:118px}
.with-switch .switch{position:absolute;right:8px;top:50%;transform:translateY(-50%)}
.quick-cities{display:flex;gap:6px;flex-wrap:wrap}
.quick-cities .chip{height:38px}
.grid-2f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.co-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);box-shadow:0 -12px 30px -16px rgba(28,20,16,.3);padding:10px 12px calc(14px + env(safe-area-inset-bottom)) 16px;display:flex;gap:12px;align-items:center}
.co-bar div{flex:1}.co-bar small{display:block;font-size:12px;color:var(--muted-2)}.co-bar b{font-family:var(--font-display);font-size:20px}
@media (min-width:1024px){.co-bar{display:none}}
.consent{font-size:12.5px;color:var(--muted-2);line-height:1.5}

/* ===== Thanks ===== */
.thanks{max-width:980px;margin:0 auto;padding:22px 16px 28px;display:flex;flex-direction:column;gap:16px}
.thanks__hero{display:flex;flex-direction:column;gap:10px}
.thanks__check{width:60px;height:60px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center}
.thanks__grid,.thanks__col{display:flex;flex-direction:column;gap:16px}
@media (max-width:1023px){.thanks__col{display:contents}}
@media (min-width:1024px){.thanks{padding:44px 40px 20px;gap:28px}.thanks__hero{align-items:center;text-align:center}.thanks__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:start}}
.pay__amount{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.pay__amount div small{display:block;font-size:13px;font-weight:700;color:var(--muted-2)}
.pay__amount div b{font-family:var(--font-display);font-size:32px;line-height:1.15}
.qr{display:flex;justify-content:center;padding:6px 0 4px}
.qr svg{width:200px;height:200px}
.qr-toggle{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;min-height:44px;width:100%;text-align:left}
.qr-toggle span{flex:1}
.qr-toggle .icon:last-child{transition:transform .2s}
.qr-toggle[aria-expanded="true"] .icon:last-child{transform:rotate(180deg)}
.qr-desk{display:none}
@media (min-width:1024px){.qr-toggle,.qr-mob{display:none!important}.qr-desk{display:flex;align-items:center;text-align:center}.qr-desk svg{width:220px;height:220px}}
.tl{display:flex;flex-direction:column}
.tl li{display:flex;gap:12px;position:relative;padding-bottom:18px}
.tl li:last-child{padding-bottom:0}
.tl li::before{content:"";position:absolute;left:13px;top:30px;bottom:2px;width:2px;background:var(--line-2)}
.tl li:last-child::before{display:none}
.tl__dot{width:28px;height:28px;border-radius:50%;border:2px solid var(--line-2);background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;font-weight:800;color:var(--muted-2)}
.tl__dot--now{border-color:var(--orange);background:var(--orange-soft);color:var(--orange-text)}
.tl__dot--done{border-color:var(--ok);background:var(--ok);color:#fff}
.tl b{display:block;font-size:14.5px}.tl div span{font-size:13px;color:var(--muted-2)}
.tl div .deadline{color:var(--warn);font-weight:700}
.tgcard{border-color:#BFDDF3;background:linear-gradient(180deg,#F2F8FD,#fff)}
.tgcard__head{display:flex;gap:12px;align-items:flex-start}
.tgcard__ico{width:48px;height:48px;border-radius:50%;background:var(--tg);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tgcard__done{display:flex;gap:10px;align-items:center;justify-content:center;height:52px;border-radius:16px;background:#E9F8D2;color:var(--ok-text);font-weight:800;font-size:15px}

/* ===== Info pages ===== */
.info-nav{position:sticky;top:var(--header-h);z-index:30;background:rgba(255,248,241,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.info-nav .hscroll{margin:0;padding:10px 16px;gap:8px;scroll-padding-inline:16px}
.info{display:flex;flex-direction:column;gap:22px;padding-top:18px}
.info__side{display:none}
@media (min-width:1024px){
  .info-nav{display:none}
  .info{display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px;align-items:start;max-width:var(--container);margin:0 auto;padding:28px var(--pad) 0}
  .info__side{display:flex;flex-direction:column;gap:18px;position:sticky;top:calc(var(--header-h) + 14px)}
}
.info__body{display:flex;flex-direction:column;gap:16px;max-width:760px}
.info__lead{font-size:15.5px;line-height:1.55;color:var(--ink-2)}
@media (min-width:1024px){.info__lead{font-size:17px}.info h1{font-size:40px}}
.side-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;font-weight:700;font-size:15px;color:var(--muted)}
.side-link:hover{background:#fff;color:var(--ink)}
.side-link[aria-current="page"]{background:#fff;color:var(--ink);box-shadow:inset 3px 0 0 var(--ink)}
.facts{background:#fff;border:1px solid var(--line);border-radius:18px;padding:4px 16px}
.facts div{display:flex;align-items:baseline;gap:12px;padding:11px 0}
.facts div+div{border-top:1px solid var(--line)}
.facts b{font-family:var(--font-display);font-size:16px;min-width:118px;letter-spacing:-.02em}
.facts span{font-size:14px;color:var(--muted)}
@media (min-width:1024px){.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;border:0;background:none}.facts div{flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line)!important;border-radius:18px;padding:14px}.facts b{font-size:17px;min-width:0}}
.icard{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px}
.icard__ico{width:44px;height:44px;border-radius:12px;background:var(--orange-soft);color:var(--orange-text);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.icard b{font-size:15.5px;color:var(--ink)}
.icard p{font-size:14px;color:var(--muted);line-height:1.5;margin-top:2px}
.toc{background:#fff;border:1px solid var(--line);border-radius:18px;padding:2px 16px}
.toc summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:52px;font-weight:800;font-size:15px;cursor:pointer}
.toc summary::-webkit-details-marker{display:none}
.toc summary span{flex:1}
.toc ol{padding-bottom:10px;counter-reset:toc}
.toc li a{display:flex;gap:10px;padding:9px 4px;font-size:14.5px;font-weight:600;border-bottom:1px dashed var(--line-2)}
.toc li a::before{counter-increment:toc;content:counter(toc);color:var(--faint);min-width:18px;font-variant-numeric:tabular-nums}
.help{background:var(--ink);color:var(--bg);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:12px}
.help b{font-family:var(--font-display);font-size:17px}
.help p{font-size:14px;color:#E3D5C8;line-height:1.5}
.help .btn{height:46px;font-size:14px;padding:0 12px}
.help__tg{background:var(--lime);color:var(--ink)}
.help__vb{border:1.5px solid #54463C;color:var(--bg)}
.dual{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:1024px){.dual{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tl-info li{display:flex;gap:12px;position:relative;padding-bottom:18px}

/* ===== 404 ===== */
.nf{display:flex;flex-direction:column;gap:22px;padding:28px 0 8px;max-width:560px}
.nf__num{font-family:var(--font-display);font-weight:700;letter-spacing:-.05em;line-height:1;font-size:124px;display:flex;align-items:baseline}
.nf__num span:last-child{color:var(--orange);display:inline-block;transform:translateY(-.12em) rotate(-8deg);margin-left:.02em}
.nf__search{display:flex;gap:8px}
.nf__search .field{flex:1;position:relative}
.nf__search .icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted-2)}
.nf__search .input{padding-left:44px;height:52px}
.nf__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.nf__card{display:flex;align-items:center;gap:10px;padding:8px;border-radius:16px;background:#fff;border:1px solid var(--line);min-height:68px;font-weight:800;font-size:14px;line-height:1.25}
.nf__card:hover{border-color:var(--ink)}
.nf__card img{width:52px;height:52px;border-radius:12px;flex-shrink:0}
@media (min-width:1024px){.nf{margin:0 auto;padding-top:64px}.nf__num{font-size:180px}}

/* ===== Articles ===== */
.blog-head{display:flex;flex-direction:column;gap:12px;padding-top:6px}
.blog-head p{font-size:15.5px;line-height:1.55;color:var(--ink-2);max-width:62ch}
.blog-chips{margin-top:4px}
.acard{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s}
.acard:hover{box-shadow:var(--shadow)}
.acard__img{aspect-ratio:16/9;display:block;overflow:hidden}
.acard__img img{width:100%;height:100%;object-fit:cover}
.acard__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.acard__cat{font-size:12.5px;font-weight:800;color:var(--orange-text)}
.acard h2,.acard h3{font-family:var(--font-display);font-size:17px;letter-spacing:-.02em;line-height:1.3}
.acard h2 a:hover,.acard h3 a:hover{color:var(--orange-text)}
.acard p{font-size:14px;line-height:1.5;color:var(--muted)}
.acard__meta{font-size:12.5px;color:var(--muted-2);margin-top:auto;padding-top:4px}
.acard--feat .acard__body{gap:10px}
.acard--feat h2{font-size:21px}
.agrid{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:768px){.agrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media (min-width:1024px){
  .agrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .acard--feat{flex-direction:row;grid-column:1/-1}
  .acard--feat .acard__img{width:56%;aspect-ratio:auto;min-height:340px;flex-shrink:0}
  .acard--feat .acard__body{padding:36px 40px;justify-content:center}
  .acard--feat h2{font-size:30px}
  .acard--feat p{font-size:16px}
}
.pager{display:flex;gap:6px;justify-content:center;align-items:center;margin-top:8px}
.pager a,.pager span{min-width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;border:1.5px solid var(--line-2);background:#fff;padding:0 12px}
.pager a:hover{border-color:var(--ink)}
.pager [aria-current="page"]{background:var(--ink);border-color:var(--ink);color:#fff}
.article-wrap{display:flex;flex-direction:column;gap:28px}
@media (min-width:1024px){.article-wrap{display:grid;grid-template-columns:minmax(0,720px) 320px;justify-content:space-between;gap:56px;align-items:start}}
.article{display:flex;flex-direction:column;gap:18px;min-width:0}
.article__cat{align-self:flex-start}
.article h1{font-family:var(--font-display);font-size:26px;line-height:1.18;letter-spacing:-.02em}
@media (min-width:1024px){.article h1{font-size:40px}}
.article__meta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px;color:var(--muted-2)}
.article__meta span{display:inline-flex;align-items:center;gap:6px}
.byline{display:flex;gap:12px;align-items:center}
.byline__ava{width:44px;height:44px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.byline__ava svg{width:26px;height:auto}
.byline b{display:block;font-size:14.5px;color:var(--ink)}.byline span{font-size:13px;color:var(--muted-2)}
.cover{border-radius:22px;overflow:hidden;background:var(--tint)}
.cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.cover figcaption,.fig figcaption{font-size:13px;color:var(--muted-2);padding:8px 2px 0}
.tldr{background:var(--ok-bg);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.tldr b{font-size:15px;color:var(--ok-text);display:flex;gap:8px;align-items:center}
.tldr ul{display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.55;color:var(--ink-2)}
.tldr li{display:flex;gap:10px}
.tldr li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok);margin-top:10px;flex-shrink:0}
.article .prose{max-width:none}
.prose h3{font-size:17px;font-weight:800;color:var(--ink);margin-top:4px}
.prose h2{scroll-margin-top:calc(var(--header-h) + 16px)}
.prose table{font-size:14.5px}
.ctab-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff}
.ctab th,.ctab td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.45}
.ctab thead th{font-size:13px;font-weight:800;color:var(--muted-2);background:var(--tint-2);border-bottom:1.5px solid var(--line-2)}
.ctab tbody th{font-weight:800;color:var(--ink)}
@media (max-width:560px){.ctab th,.ctab td{padding:10px;font-size:13.5px}}
.ctab tbody tr:last-child th,.ctab tbody tr:last-child td{border-bottom:0}
.tip{display:flex;gap:12px;align-items:flex-start;background:var(--orange-soft);border-radius:16px;padding:14px 16px;font-size:15px;line-height:1.55;color:var(--ink-2)}
.tip .icon{color:var(--orange-text);margin-top:2px}
.fig{margin:4px 0}
.fig img{border-radius:18px;width:100%;height:auto}
.pembed{display:flex;gap:14px;align-items:center;background:#fff;border:1.5px solid var(--line-2);border-radius:18px;padding:12px}
.pembed img{width:84px;height:84px;border-radius:14px;flex-shrink:0}
.pembed__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.pembed__body a{font-weight:800;font-size:15px;line-height:1.3}
.pembed__body span{font-size:13px;color:var(--muted-2)}
.pembed .btn{flex-shrink:0}
@media (max-width:560px){.pembed{flex-wrap:wrap}.pembed .btn{width:100%}}
.share{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px}
.share__label{font-size:13.5px;font-weight:700;color:var(--muted);margin-right:4px}
.aside-sticky{display:none}
@media (min-width:1024px){.aside-sticky{display:flex;flex-direction:column;gap:16px;position:sticky;top:calc(var(--header-h) + 16px)}}
.aside-toc{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 16px 10px}
.aside-toc b{font-size:14px;display:block;margin-bottom:6px}
.aside-toc a{display:block;padding:7px 0 7px 12px;font-size:14px;font-weight:600;color:var(--muted);border-left:2px solid var(--line)}
.aside-toc a:hover{color:var(--ink)}
.aside-toc a.is-current{color:var(--ink);border-left-color:var(--orange)}
.toc-m{display:block}
@media (min-width:1024px){.toc-m{display:none}}
.facts-row{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;padding:2px 14px}
.facts-row div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;font-size:14px}
.facts-row div+div{border-top:1px dashed #EADBCB}
.facts-row dt{color:var(--muted-2);white-space:nowrap}.facts-row dd{font-weight:700;text-align:right}

/* ===== Category hub ===== */
.hub-head{display:flex;flex-direction:column;gap:12px}
.hub-head p{font-size:15.5px;line-height:1.55;color:var(--ink-2);max-width:66ch}
@media (min-width:1024px){.hub-head .h1{font-size:44px}.hub-head p{font-size:17px}}
.tcards{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:768px){.tcards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
.tcard{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s}
.tcard:hover{box-shadow:var(--shadow)}
.tcard__img{display:block;aspect-ratio:16/10;overflow:hidden}
.tcard__img img{width:100%;height:100%;object-fit:cover}
.tcard__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.tcard__top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.tcard h2{font-family:var(--font-display);font-size:19px;letter-spacing:-.02em;line-height:1.25}
.tcard h2 a:hover{color:var(--orange-text)}
.tcard__price{font-weight:800;white-space:nowrap;font-size:14px}
.tcard p{font-size:14px;line-height:1.5;color:var(--muted)}
.tcard__sizes{display:flex;gap:6px;flex-wrap:wrap}
.tcard__sizes a{display:inline-flex;align-items:center;height:34px;padding:0 10px;border-radius:10px;background:var(--bg);border:1px solid var(--line);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.tcard__sizes a:hover{border-color:var(--ink)}
.tcard .btn{margin-top:auto}
.hub-cols{display:flex;flex-direction:column;gap:28px}
@media (min-width:1024px){.hub-cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}.hub-cols .desc{padding:32px}}
.popular{display:flex;flex-direction:column;gap:10px}
.menu-group__title a{display:flex;justify-content:space-between;align-items:center;gap:8px}
.menu-group__title a span{color:var(--orange-text);font-size:12.5px}
.mega__all{align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:130px;height:100%;min-height:150px;border-radius:16px;background:var(--bg);font-weight:800;font-size:14px;text-align:center;padding:10px}
.mega__all:hover{background:var(--orange-soft)}
/* Відкрита мобільна клавіатура (app.js → body.kb-open): нижні липкі панелі ховаємо,
   інакше на iOS вони висять посеред екрана над полем вводу */
@media (max-width:1023px){body.kb-open .co-bar,body.kb-open .buybar{display:none}}
/* Блок «Що ви пакуєте?»: відступи в колонці тексту були лише від 1024 px — на мобільному
   кнопка «Перейти до товару» прилипала до пігулки «від … ₴» */
.rec__body{display:flex;flex-direction:column;gap:10px}
/* Картинка рекомендації: з атрибутами 400×400 вона ставала 76×400 і в квадраті 76 px
   було видно лише порожній верх SVG — заповнює свій квадрат */
.rec__img img{display:block;width:100%;height:100%;object-fit:cover}

/* Товар v2 (замінює патчі 4–6 у вигляді): блок покупки як у шаблоні дизайнера + функції поверх */
/* підбір розміру за товаром: згорнутий — рядок-посилання, розгорнутий — світла картка */
.size-helper__toggle{display:inline-flex;align-items:center;gap:6px;padding:0;min-height:36px;background:none;border:0;color:var(--orange-text);font-size:14px;font-weight:800;text-align:left;cursor:pointer}
.size-helper.is-open .size-helper__toggle{display:none}
.size-helper__card{display:flex;flex-direction:column;gap:12px;background:#FFF8F1;border:1px solid var(--line-2);border-radius:16px;padding:12px 12px 14px}
.size-helper__head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.size-helper__title{font-size:15px;font-weight:800}
.size-helper__close{width:36px;height:36px;margin:-6px -6px -6px 0}
.size-helper__chips{display:flex;flex-wrap:wrap;gap:6px}
.size-helper .chip{height:36px;padding:0 12px;border-radius:999px;border:1.5px solid var(--line-2);background:#fff;font-size:13.5px;font-weight:700;color:var(--ink)}
.size-helper .chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.size-helper__result{font-size:13.5px;line-height:1.45}
.size-helper__result .link{font-weight:800}
.size-helper__found{display:flex;align-items:center;justify-content:space-between;gap:10px}
.size-helper__none{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--orange-soft);color:var(--warn);border-radius:12px;padding:10px 12px;font-size:13.5px;font-weight:700}
/* популярні + «Усі розміри» */
.sizes-more{align-self:flex-start;min-height:40px;padding:0;background:none;border:0;color:var(--ink);font-size:14px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.sizes-all{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;border-top:1px solid var(--line);padding-top:12px}
@media (min-width:1024px){.sizes-all{grid-template-columns:repeat(5,minmax(0,1fr))}}
.sizes-all .size{height:38px;padding:0 2px;font-size:13px;border-radius:10px}
/* таблиця розмірів: 15 рядків, решта — за кнопкою */
.stab.is-collapsed tbody tr:nth-child(n+16){display:none}
.stab.is-collapsed tbody tr.is-selected{display:table-row!important}
.stab--nofit thead th:nth-child(2),.stab--nofit td.for{display:none}
.stab-foot{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:14px;text-align:center}
.stab-more{min-height:40px;padding:0;background:none;border:0;color:var(--orange-text);font-size:14.5px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.stab-custom{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:14.5px;color:var(--ink-2)}
/* кнопка: запит, «✓ Додано», «У кошику вже N уп.» */
.badge-count.pulse{animation:pp-pulse .35s ease}
@keyframes pp-pulse{50%{transform:scale(1.35)}}
.btn.is-loading{pointer-events:none;opacity:.85;position:relative;color:transparent!important}
.btn.is-loading svg{visibility:hidden}
.btn.is-loading::after{content:"";position:absolute;inset:0;margin:auto;width:20px;height:20px;border-radius:50%;border:2.5px solid #fff;border-right-color:transparent;animation:pp-spin .7s linear infinite}
@keyframes pp-spin{to{transform:rotate(360deg)}}
.btn.is-added{pointer-events:none;background:#2F5A00!important;color:#fff!important}
.btn.is-added svg{display:none}
.in-cart-note{font-size:13.5px;color:var(--ok-text);font-weight:600;text-align:center;margin-top:-4px}
.in-cart-note b{color:var(--ink)}
.in-cart-note .link{font-weight:800}
/* вікно кошика: «Додати до замовлення» */
.upsell{display:flex;flex-direction:column;gap:8px}
.upsell__title{font-size:14px;font-weight:800}
.upsell__row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:14px;background:#fff}
.upsell__name{font-size:13.5px;font-weight:700;line-height:1.3}
.upsell__add{flex-shrink:0;height:40px;padding:0 12px;border-radius:12px;background:var(--ink);color:#fff;font-weight:800;font-size:13.5px;white-space:nowrap}
.upsell__add.is-added{background:#2F5A00}
/* мобільний: галерея без мініатюр; «Питання?» — кругла кнопка з іконкою Telegram */
@media (max-width:1023px){
  .thumbs{display:none}
  .fab{width:52px;height:52px;padding:0;justify-content:center;font-size:0;border-radius:50%}
  .fab .icon{width:22px;height:22px}
  .fab .fab__dot{position:absolute;top:4px;right:4px}
}
body.has-bar{padding-bottom:88px}
@media (min-width:1024px){body.has-bar{padding-bottom:0}}
.reviews__grid > .btn{grid-column:1/-1}

/* Патч 7: дой-паки — вибір вікна (сегменти з іконкою) і розміри, недоступні для вибраного вікна */
.wins{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px}
.win{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1.5px solid var(--line-2);border-radius:12px;background:#fff;font-size:12.5px;font-weight:700;line-height:1.2;text-align:center;color:var(--ink)}
.win:hover{border-color:var(--ink)}
.win[aria-checked="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#FFFBF7}
.tcard__marks{display:flex;flex-wrap:wrap;gap:6px}
.tcard__marks .pill{padding:3px 9px;font-size:12px}
.hub-links{display:flex;flex-direction:column;gap:10px;margin-top:-12px}
.hub-links__title{font-size:14px;font-weight:800;color:var(--ink-2)}
.hub-links__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.hub-link{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 14px;border:1.5px solid var(--line-2);border-radius:14px;background:#fff;font-size:14.5px;font-weight:800;color:var(--ink)}
.hub-link:hover{border-color:var(--ink)}
.hub-link img{width:24px;height:24px;flex-shrink:0}
/* патч 11: уся картка виду — посилання; дія — текстова, не пʼять однакових зелених кнопок */
.tcard{position:relative}
.tcard__link::after{content:"";position:absolute;inset:0;border-radius:inherit}
.tcard__sizes{position:relative;z-index:1}
.tcard__go{font-size:14px;font-weight:800;color:var(--orange-text)}
.tcard:hover .tcard__go{text-decoration:underline;text-underline-offset:3px}

/* Патч 9: дой-пак — такого варіанта немає: без ціни, кількості, артикула й кнопок кошика (і в липкій панелі) */
.doy-none{display:flex;flex-direction:column;gap:12px;margin-top:4px;background:#FFF1E6;border-radius:16px;padding:14px}
.doy-none__text{font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.doy-none__text b{color:var(--ink)}
.doy-none__alts{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
.doy-alt{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;height:48px;padding:0 10px;border:1.5px solid var(--ink);border-radius:12px;background:#fff;font-size:14px;font-weight:800;color:var(--ink)}
.doy-alt img{width:20px;height:20px;flex-shrink:0}
.doy-none__own{align-self:flex-start;padding:0;background:none;border:0;text-align:left;color:var(--orange-text);font-size:14px;font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere}
.size-none{color:#9A3412;font-weight:700}
/* недоступний розмір: не вибраний — блідий пунктир; вибраний — теплий фон і помаранчевий пунктир */
.size.is-out{color:var(--faint)}
.size.is-out[aria-checked="true"]{background:#FFF1E6;border:2px dashed #C2410C;color:#9A3412}
.win__ico{width:28px;height:28px}
body.doy-none #buy .buy__ship,body.doy-none #buy .buy__price,body.doy-none #buy .buy__group:has(.qty-row),body.doy-none #buy .hint-line,body.doy-none #buy .tiers,
body.doy-none #buy .freeship,body.doy-none #buy .fit,body.doy-none #buy [data-in-stock],body.doy-none #buy [data-out-stock],
body.doy-none [data-in-cart-note],body.doy-none .ptitle__pills .pill,body.doy-none .buybar [data-in-stock],
body.doy-none .buybar [data-out-stock],body.doy-none .buybar__total{display:none!important}

/* Патч 10: пакети банан — групи розмірів за конструкцією й рядок конструкції під «Підійде для» */
.size-group{display:flex;flex-direction:column;gap:8px}
.size-group+.size-group{margin-top:6px}
.size-group__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:14px}
.size-group__head span{font-size:12.5px;color:var(--muted-2)}
.variant-spec{font-size:13px;font-weight:700;color:var(--ink-2)}
