/* Модуль styles.css expert-material.ru. Вырезан миграцией 12.10.2026. */
/* ══════════════════════════════════════════════
   АДАПТИВ: ПЛАНШЕТ И ПК
══════════════════════════════════════════════ */
@media(min-width:769px){
  .review-card{
    flex:0 1 calc((100% - 48px)/3)!important;
    width:calc((100% - 48px)/3)!important;
    max-width:none!important;min-width:0!important;
  }
  #diagModal .modal-card{max-width:620px}
  #diagModal .diag-opts.cols2 .survey-opt{flex:1 1 calc(25% - 5px);min-width:0}
  .sticky-mobile-bar{bottom:0;width:780px;max-width:calc(100% - 24px);padding:14px 16px 14px 24px;border-radius:16px 16px 0 0;margin:0 auto}
  .smb-title{font-size:16px;max-width:none}
  .smb-sub{font-size:13px}
  .sticky-mobile-btn{font-size:14px;padding:12px 26px;margin-right:26px}
}
@media(min-width:769px) and (max-height:900px){
  .hero{padding:36px 20px 48px}
  .hero h1{font-size:clamp(24px,1.8vw,34px);margin-bottom:14px}
  .hero-subtitle{font-size:17px;margin-bottom:20px}
  .hero-stats{margin-bottom:24px;gap:18px}
  .hero-stat-value{font-size:28px}
}

/* ══════════════════════════════════════════════
   АДАПТИВ: МОБИЛЬНЫЕ (≤768px)
══════════════════════════════════════════════ */
@media(max-width:768px){
  /* Hero */
  .hero{padding:20px 16px 32px}
  .hero-content{display:flex;flex-direction:column}
  .hero-content>br{display:none}
  .retake-menu{order:5}
  .hero-badge{order:1;margin-bottom:18px;padding:8px 16px;font-size:12px;line-height:1.4}
  .hero-badge .hb-line1{font-size:10px;letter-spacing:.4px;margin-bottom:3px}
  .hero-badge .hb-line2{font-size:12px}
  .hero h1{order:2;font-size:20px;margin-bottom:16px;line-height:1.35}
  .hero h1 .highlight{display:inline-block;margin-top:14px}
  .hero-subtitle{order:3;font-size:14.5px;margin-bottom:24px;line-height:1.65}
  .hero-actions{order:4;margin-bottom:14px;flex-direction:column;align-items:center}
  .hero-cta{width:100%;justify-content:center}
  .diag-btn{order:5;width:100%;margin-top:0!important}
  #retakeBtn{order:5}
  .hero-stats{order:6;margin-top:24px;display:flex;flex-wrap:wrap;justify-content:center;gap:16px 10px;width:100%;padding:0 10px;box-sizing:border-box}
  .hero-stat{flex:1 1 calc(50% - 10px);min-width:130px;max-width:160px;display:flex;flex-direction:column;align-items:center;text-align:center}
  .hero-stat-value{font-size:22px;margin-bottom:4px}
  .hero-stat-label{font-size:11px;line-height:1.35;padding:0 4px}
  /* Чипсы: одна строка со скроллом */
  .sticky-chips-bar{-webkit-mask-image:linear-gradient(to right, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);padding:2px 16px!important;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;gap:6px;padding:4px 16px 8px 16px;scroll-snap-type:x proximity;scroll-padding:0 16px;width:100%;box-sizing:border-box}
  .sticky-chips-bar::after{content:'';flex:0 0 16px}
  .chip-nav{scroll-snap-align:center}
  .sticky-chips-bar::-webkit-scrollbar{display:none}
  .sticky-chips-bar.visible{padding:4px 16px}
  /* P2-9: fallback для :has() — дублирующее правило на класс .has-chips */
.top-bar.has-chips{background:var(--grad);padding:8px 12px;box-shadow:0 4px 16px rgba(0,0,0,.15);width:calc(100% - 16px);max-width:1400px;margin:0 auto;border-radius:16px}
.top-bar:has(.sticky-chips-bar.visible){background:linear-gradient(180deg,#2E2E33 0%,#232327 55%,#2B2B30 100%)!important;border-bottom:1px solid rgba(212,175,55,.35)!important;padding-top:4px!important;padding-bottom:4px!important;padding-left:0!important;padding-right:0!important;padding:6px 8px;background:var(--grad);box-shadow:0 4px 16px rgba(0,0,0,.2);width:calc(100% - 16px);margin:0 auto}
  .top-bar:has(.sticky-chips-bar.visible) .top-bar-inner{gap:0}
  .top-bar:has(.sticky-chips-bar.visible) .top-cta{margin-top:0;margin-bottom:8px}
  .top-bar:has(.sticky-chips-bar.visible) .sticky-chips-bar.visible{padding-top:0;padding-bottom:0}
  .chip-nav{scroll-snap-align:center;flex:0 0 auto;padding:6px 12px;font-size:11.5px;min-height:36px;border-radius:12px;scroll-snap-align:center}
  /* Секции */
  .pain-section,.products-section,.bundles-section,.premium-section,
  .testimonials-section,.faq-section,.guarantee-section,.authority-section{padding:30px 16px}
  .special-offer{padding:36px 16px}
  .behind-section{padding:24px 16px}
  .section-header{margin-bottom:20px}
  .section-title{font-size:clamp(20px,4vw,28px)}
  .section-subtitle{font-size:13px}
  .tip-box,.lead-banner{margin-left:16px;margin-right:16px;max-width:calc(100% - 32px)}
  .tip-box{padding:11px 14px;margin:14px auto;font-size:12.5px}
  .btn-load-more{padding:14px 30px;font-size:14.5px}
  /* Карточки */
  .product-card,.pain-card{flex:1 1 100%;max-width:100%}
  .pain-body{padding-right:78px}
  .pain-emoji{font-size:26px}
  .pain-title{font-size:15px;margin-bottom:2px}
  .pain-desc{font-size:12.5px;line-height:1.45}
  .pain-count,.pain-count-bundles{font-size:10px;padding:2px 8px;border-radius:10px}
  .pain-count{top:10px;right:10px}
  .pain-count-bundles{top:34px;right:10px}
  .product-image{font-size:48px}
  .product-content{padding:14px}
  .product-title{font-size:16px}
  .product-description{font-size:12.5px;line-height:1.5}
  .review-card{flex:1 1 100%;max-width:100%;padding:16px}
  .review-text{font-size:12.5px}
  .authority-card{flex:1 1 100%;max-width:100%;padding:20px 16px}
  .authority-stats{padding:16px;gap:12px}
  .behind-note{padding:20px 16px}
  .bundles-grid{gap:16px}
  .bundle-card{padding:18px 14px}
  .bundle-pain{font-size:12.5px}
  .bundles-section .section-header{margin-bottom:14px}
  .bundles-section .section-tag{margin-bottom:8px;padding:5px 14px;font-size:12px}
  .bundles-section .section-title{font-size:21px;margin-bottom:6px}
  .bundles-section .section-subtitle{font-size:13px}
  .offer-card{padding:22px 16px}
  .btn-offer{width:100%;padding:16px 20px;font-size:16px}
  .offer-description{font-size:13px;margin-bottom:18px}
  .offer-price-comparison{flex-direction:column;align-items:stretch;gap:10px}
  .offer-comparison-item{min-width:0}
  .offer-comparison-vs{text-align:center;margin:-2px 0;opacity:.7}
  .premium-card{padding:22px 16px}
  .premium-subtitle{font-size:13px}
  .premium-price-row{flex-direction:column;align-items:stretch;text-align:center}
  .btn-premium{width:100%}
  .anti-card{margin:18px auto;padding:16px}
  .guarantee-card{padding:22px 16px;flex-direction:column;text-align:center}
  .guarantee-text{font-size:13.5px}
  .faq-question{padding:13px 14px;font-size:13.5px}
  .faq-answer-inner{padding:0 14px 13px;font-size:12.5px}
  /* Фильтры: горизонтальный скролл */
  .filter-row.filter-all{
    display:flex!important;justify-content:center!important;align-items:center!important;
    overflow-x:visible!important;padding:0!important;margin-bottom:10px!important;
  }
  .filter-row.filter-all .filter-btn{min-width:220px!important;max-width:320px!important;padding:12px 20px!important;font-size:13px!important}
  .filter-row:not(.filter-all){
    flex-wrap:nowrap!important;overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;
    -ms-overflow-style:none!important;justify-content:flex-start!important;
    padding:4px 26px!important;scroll-padding-left:12px!important;
    scroll-padding-right:16px!important;margin-bottom:6px!important;gap:8px!important;
  }
  .filter-row:not(.filter-all)::-webkit-scrollbar{display:none!important}
  .filter-row:not(.filter-all) .filter-btn{
    flex:0 0 auto!important;white-space:nowrap!important;
    padding:8px 12px!important;font-size:11.5px!important;
    border-radius:12px!important;min-height:36px!important;
  }
  #badgeFilterRow{margin-bottom:24px!important}
  .filter-row-wrapper .filter-row{
    /* Маски убраны для четкого отображения */
  }
  .scroll-arrow{width:26px;height:26px;font-size:14px;border-width:1px;background:rgba(255,255,255,.92);box-shadow:0 1px 6px rgba(0,0,0,.12);animation:none}
  .scroll-arrow-left{left:2px}
  .scroll-arrow-right{right:2px}
  .scroll-arrow.hidden{opacity:0;pointer-events:none}
  /* Верхняя панель */
  .top-bar{font-size:11px;padding:0;background:linear-gradient(180deg,#2E2E33 0%,#232327 55%,#2B2B30 100%);border-bottom:1px solid rgba(212,175,55,.35);box-shadow:none;top:8px;width:calc(100% - 16px);border-radius:16px;margin:0 auto;box-sizing:border-box}
  .top-bar-inner{flex-direction:column;gap:4px}
  .top-cta{font-size:11px;padding:5px 12px;white-space:normal;line-height:1.25;min-height:30px}
  .doubt-card{padding:24px 18px;gap:20px}
  .doubt-left h3{font-size:19px}
  /* Корзина */
  .cart-content{flex-direction:column;text-align:center;justify-content:center;width:100%;box-sizing:border-box}
  .cart-info{text-align:center;min-width:0;width:100%;box-sizing:border-box}
  .cart-count{display:none!important}
  .cart-items{max-width:100%;font-size:12px;line-height:1.6;width:100%;box-sizing:border-box}
  .cart-actions{width:100%;align-items:center;min-width:0;padding-top:10px;border-top:1px solid var(--border);margin-top:10px;}
  .btn-cart{width:100%!important;background:var(--grad)!important;color:#fff!important;border:none!important;border-radius:12px!important;font-size:15px!important;font-weight:800!important;padding:14px!important;box-shadow:0 4px 14px rgba(198,93,60,.5)!important;margin-bottom:10px!important;} 
  .btn-cart-all.gray{width:auto!important;flex:1 1 0%!important;padding:6px 8px!important;font-size:11px!important;background:transparent!important;border:1px solid var(--border)!important;color:var(--text-light)!important;margin:0!important;min-height:32px!important;font-weight:500!important;text-align:center!important;border-radius:8px!important;}
  .sticky-cart.expanded .bump-label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;text-align:left!important;padding:10px 12px!important;margin-top:12px!important;background:var(--bg)!important;border:1.5px dashed var(--accent)!important;border-radius:12px!important;gap:10px!important;box-sizing:border-box!important;width:100%!important;}
  .sticky-cart.expanded .bump-label[style*="display: none"]{display:none!important;}
  .sticky-cart.expanded .bump-label::before{margin-top:0!important;width:20px!important;height:20px!important;border-color:var(--accent)!important;background:var(--card-bg)!important;flex-shrink:0!important;}
  .sticky-cart.expanded .bump-label:has(input:checked)::before{background:var(--accent)!important;color:#fff!important;}
  .sticky-cart.expanded .bump-emoji{font-size:20px!important;margin-top:0!important;line-height:1!important;flex-shrink:0!important;}
  .sticky-cart.expanded .bump-body{flex:1!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;text-align:left!important;}
  .sticky-cart.expanded .bump-title{font-size:12.5px!important;line-height:1.3!important;color:var(--text)!important;text-align:left!important;font-weight:700!important;}
  .sticky-cart.expanded .bump-desc{font-size:10.5px!important;line-height:1.3!important;color:var(--text-light)!important;text-align:left!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  .sticky-cart.expanded .bump-price{flex-shrink:0!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;margin-left:auto!important;gap:2px!important;text-align:right!important;}
  .sticky-cart.expanded .bump-price s{font-size:10px!important;color:var(--text-muted)!important;}
  .sticky-cart.expanded .bump-price b{font-size:14px!important;color:var(--accent)!important;margin-left:0!important;} 
  .cart-guarantee{font-size:11px;color:var(--text-muted)!important;text-align:center;line-height:1.55;margin-top:8px;background:var(--bg)!important;border:1px solid var(--border)!important;border-radius:10px;padding:10px 12px} 
  .cart-guarantee strong{color:var(--secondary)!important}
  .sticky-cart{padding:10px;box-sizing:border-box;width:100%}
  .sticky-cart:not(.expanded){height:auto;padding:8px 10px}
  .sticky-cart .cart-full{display:none}
  .sticky-cart .cart-mini{display:flex;flex-direction:column;gap:6px;max-width:1400px;margin:0 auto;width:100%;box-sizing:border-box}
  .sticky-cart.expanded{padding:0!important;padding-bottom:env(safe-area-inset-bottom,0px)!important;max-height:85vh;max-height:85dvh;height:85vh!important;height:85dvh!important;overflow:hidden!important;box-sizing:border-box;width:100%;background:#FAF5EF!important;border-top:2px solid var(--border)!important;color:var(--text)!important;border-radius:24px 24px 0 0!important;box-shadow:0 -10px 40px rgba(42,24,16,.15)!important;display:flex!important;flex-direction:column!important;}
  .sticky-cart.expanded .cart-full{display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow:hidden!important;margin:0!important;}
  .sticky-cart.expanded .cart-content{overflow-y:auto!important;overflow-x:hidden!important;padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px))!important;flex:1 1 0%!important;min-height:0!important;justify-content:flex-start!important;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:12px!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;margin:0!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;background:#FAF5EF!important;color:var(--text)!important;}
  .sticky-cart.expanded .cart-info{height:auto!important;min-height:50px!important;}
  .sticky-cart.expanded .cart-info{width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;padding-right:0!important;border-right:none!important;margin:0!important;}
  .sticky-cart.expanded .cart-actions{width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;margin:0!important;background:transparent!important;padding:0!important;border-top:none!important;box-shadow:none!important;}
  .sticky-cart.expanded::before{content:'';position:fixed;inset:0;background:rgba(250, 245, 239, 0.85);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:-1;pointer-events:none;}
  body:has(.sticky-cart.expanded){overflow:hidden!important;}
  body:has(.sticky-cart.expanded) .welcome-pop{display:none!important;}
  .sticky-cart.expanded .cart-full{display:flex;flex-direction:column;gap:12px;width:100%;box-sizing:border-box}
  .sticky-cart.expanded .cart-mini{display:none}
  /* Шапка корзины */
  .sticky-cart.expanded .cart-mobile-header {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: var(--bg) !important;
    border-bottom: 1px solid var(--border);
    border-radius: 24px 24px 0 0;
    flex-shrink: 0;
  }
  .cart-header-btn {
    flex: 0 0 58px !important;
    width: 58px !important;
    height: 58px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 6px 4px !important;
    border-radius: 10px !important;
    font-size: 9px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    border: 1px solid var(--border) !important;
    background: var(--card-bg) !important;
    color: var(--text-light) !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    text-align: center !important;
  }
  .cart-header-btn .ico {
    font-size: 16px !important;
    line-height: 1 !important;
  }
  .cart-header-btn .txt {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }
  #clearCart { color: var(--danger) !important; border-color: rgba(196,30,58,.3) !important; }
  #cartAskBot { color: var(--secondary) !important; border-color: rgba(46,125,91,.3) !important; }
  .cart-btn-collapse { color: var(--primary); border-color: rgba(198,93,60,.3); }
  .cart-header-btn:hover { background: var(--bg); }
  .sticky-cart.expanded #buyAllCart {
    background: linear-gradient(135deg, var(--secondary), var(--secondary-dark)) !important;
    border: none !important;
    color: #FFF !important;
    box-shadow: 0 4px 12px rgba(46,125,91,0.2) !important;
    margin-top: 8px !important;
    margin-bottom: 16px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 14px !important;
    border-radius: 12px !important;
    opacity: 1 !important;
    position: relative !important;
    overflow: hidden !important;
  }
  .sticky-cart.expanded #buyAllCart .txt {
    position: relative !important;
    z-index: 3 !important;
  }
  @keyframes shine-btn {
    0% { left: -100%; }
    50%, 100% { left: 100%; }
  }
  .sticky-cart.expanded #buyAllCart::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 50% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent) !important;
    transform: skewX(-25deg) !important;
    animation: shine-btn 3s infinite !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }
  .sticky-cart.expanded #checkoutBtn {
    box-shadow: 0 6px 20px rgba(198,93,60,.4) !important;
    margin-bottom: 16px !important;
    padding: 15px !important;
    font-size: 16px !important;
  }
  .cart-btn-clear:hover { background: rgba(252, 165, 165, 0.15); }
  .cart-btn-ask:hover { background: rgba(134, 239, 172, 0.15); }
  .cart-btn-collapse:hover { background: rgba(212, 175, 55, 0.15); }
  .cart-line{width:100%;box-sizing:border-box;flex-wrap:nowrap;border:1px solid var(--border)!important;background:var(--bg)!important;padding:12px!important;border-radius:12px!important;margin-bottom:8px!important}
  .cart-line-title{text-align:left;flex:1 1 0%;min-width:0;white-space:normal;color:var(--text)!important;font-size:13px!important;line-height:1.4!important}
  .cart-line-price{color:var(--primary)!important;font-size:13px!important}
  .cart-line-price s{color:var(--text-muted)!important}
  .cart-remove{min-width:28px;min-height:28px;padding:0;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent!important;border:1px solid var(--border)!important;color:var(--text-muted)!important;border-radius:50%!important;margin-left:8px!important;transition:all .2s!important;}
  .cart-remove:hover{color:#fff!important;background:var(--danger)!important;}
  .cart-total{font-size:18px;padding:14px;flex-wrap:wrap;gap:6px;box-sizing:border-box;justify-content:center;text-align:center;margin-bottom:16px;border-radius:12px;background:rgba(198,93,60,.08)!important;border:1px solid rgba(198,93,60,.2)!important;color:var(--primary)!important;width:100%!important;box-shadow:0 4px 15px rgba(42,24,16,.1)!important}
  .cart-total::before{width:100%;text-align:center;font-size:11px;margin-bottom:2px;color:var(--text-muted)!important}
  .cart-save{font-size:12px;padding:4px 10px;margin:0;background:rgba(46,125,91,.15)!important;color:var(--secondary)!important}
  .cart-crosssell{width:100%;box-sizing:border-box;background:var(--bg)!important;border:1px dashed var(--border)!important;color:var(--text)!important;padding:12px!important;border-radius:12px!important;margin-bottom:12px!important;}
  .cart-discount-hint{text-align:center!important;line-height:1.5!important;color:var(--text-light)!important;margin-bottom:8px!important;}
  .cart-progress-text{color:var(--text-muted)!important;font-size:11px!important;margin-top:4px!important;display:block!important;text-align:center!important;}
  .cs-title{font-size:11.5px!important;font-weight:800!important;color:var(--secondary)!important;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;display:block!important}
  .cs-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:8px;padding:10px 0;box-sizing:border-box;border-bottom:1px solid var(--border)!important}
  .cs-row:last-child{border-bottom:none!important}
  .cs-emoji{flex-shrink:0;font-size:18px;margin:0}
  .cs-name{white-space:normal;text-align:left;flex:1 1 auto;min-width:0;font-size:12.5px;line-height:1.3;word-break:break-word;margin:0;color:var(--text)!important}
  .cs-price{flex-shrink:0;font-size:13px;margin:0;white-space:nowrap;font-weight:800;color:var(--primary)!important}
  .cs-add{flex-shrink:0;width:auto;margin:0;padding:6px 12px;font-size:11px;min-height:32px;border-radius:8px}
  .cart-mini-row1{align-items:stretch!important}
  .cart-mini-left{align-self:stretch!important;justify-content:center!important;gap:7px!important}
  .cart-mini-btns{min-height:66px}
  .cart-mini-btn{padding:0 16px;height:100%;min-height:44px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;border:none;background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s}.cart-mini-btn:hover{background:rgba(255,255,255,.25)}
  .cart-mini-expand{padding:6px 4px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;border:2px solid #8A7060;color:#5A4030;background:#fff;min-height:26px;white-space:nowrap}
  /* Нижняя панель */
  .sticky-mobile-bar{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:auto;max-width:none;transform:none;margin:0;border-radius:16px;border:1px solid rgba(212,175,55,.35);padding:10px 8px 10px 8px;min-height:auto;height:auto;box-shadow:0 12px 40px rgba(58,50,56,.28)}
  .smb-close{top:-8px!important;right:-8px!important;width:22px!important;height:22px!important;font-size:12px!important;background:#2A1810!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 2px 8px rgba(0,0,0,.3)!important;z-index:10!important}
  .sticky-mobile-content{flex-direction:row!important;align-items:stretch!important;gap:6px!important;padding-right:0!important;position:relative!important;overflow:hidden!important;border-radius:12px!important;}
  .smb-price{font-size:13px!important;font-weight:900!important;letter-spacing:.2px;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;text-decoration-color:rgba(255,255,255,.6);display:inline-block;line-height:1.1;white-space:nowrap;margin-top:2px;}
  .sticky-mobile-content::after{content:'';position:absolute;top:-20%;bottom:-20%;left:-80%;width:50%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.65) 50%,transparent 100%);transform:skewX(-20deg);animation:cta-shine 5s ease-in-out infinite;pointer-events:none;z-index:10;}
  .sticky-mobile-bar .top-cta::after{display:none!important;}
  .smb-title{max-width:100%;font-size:13px;text-align:center;padding:0 30px}
  .smb-sub{max-width:100%;font-size:10.5px;text-align:center}
  .sticky-mobile-btn{width:100%!important;border-radius:10px!important;font-size:11px!important}
  /* Плавающие элементы */
  .bot-fab{right:18px;bottom:calc(var(--smb-height, 0px) + 24px);width:60px;height:60px;padding:0;gap:0;border-radius:50%;font-size:0;justify-content:center;transition:bottom .3s ease}
  .bot-fab::before{content:'💬';font-size:27px}
  .bot-fab.fab-low{bottom:calc(var(--smb-height, 0px) + 16px)}
  body.cart-open-mobile .bot-fab{bottom:120px!important}
  .bot-win{left:8px;right:8px;width:auto;max-width:none;top:10px;bottom:192px;height:auto!important;max-height:none!important}
  body.cart-open-mobile .bot-win{bottom:190px}
  #trustToastContainer{top:var(--toasts-top,45px);right:8px;width:calc(100vw - 16px);max-width:280px}
  .trust-toast{padding:8px 26px 8px 10px;font-size:12.5px;line-height:1.25;border-radius:10px}
  .trust-toast-close{top:4px;right:4px;font-size:14px;padding:2px 4px}
  /* Cookie */
  .cookie-banner{flex-direction:column;align-items:stretch;width:calc(100vw - 16px);max-width:calc(100vw - 16px);gap:5px;padding:7px 9px}
  .cookie-actions{width:100%}
  .cookie-btn{flex:1;padding:8px 8px;min-height:38px}
  /* Exit-popup */
  .exit-popup{padding:12px}
  .exit-card{padding:18px 14px;border-radius:16px;max-height:88vh}
  .exit-close{top:10px;right:10px;font-size:20px}
  .exit-emoji{font-size:38px;margin-bottom:6px}
  .exit-title{font-size:18px;margin-bottom:6px}
  .exit-text{font-size:13px;margin-bottom:12px;line-height:1.5}
  .survey-opt{font-size:13px;padding:10px 8px;margin:2px 0}
  .exit-other{min-height:48px;font-size:13px}
  .btn-exit{padding:12px;font-size:14px;margin-bottom:8px}
  .btn-exit-secondary{font-size:12px}
  .exit-smart{gap:8px;margin-bottom:12px}
  .exit-smart-card{padding:10px 12px}
  .esc-t{font-size:13px;min-width:120px}
  .esc-p{font-size:13px}
  .esc-p b{font-size:14px}
  /* Модалки и футер */
  .modal-card{padding:20px 14px}
  .footer{padding:22px 16px 14px}
  /* Диагностика - адаптив */
  #diagModal .modal-card{padding:16px 14px 20px!important; max-height:92vh!important;}
  #diagModal h3{font-size:18px!important; margin-bottom:8px!important; line-height:1.25!important;}
  #diagModal .modal-card .diag-sub{font-size:11.5px!important; padding:8px 10px!important; margin-bottom:12px!important;}
  #diagModal .diag-q{font-size:13px!important; margin:12px 0 8px!important;}
  
  /* 3 кнопки возраста и 3 кнопки "что пробовали" в ряд */
  #diagModal .diag-opts{display:flex!important; flex-wrap:wrap!important; gap:6px!important;}
  #diagModal .diag-opts .survey-opt{padding:8px 12px!important; font-size:12.5px!important; justify-content:center!important; text-align:center!important; flex:0 1 auto!important;}

  /* 8 кнопок "что беспокоит" в 2 колонки, текст слева */
  #diagModal .diag-opts.cols2{display:grid!important; grid-template-columns:1fr 1fr!important; gap:6px!important;}
  #diagModal .diag-opts.cols2 .survey-opt{padding:8px 10px!important; font-size:12px!important; justify-content:flex-start!important; text-align:left!important; flex:none!important;}

  #diagModal .modal-btn[data-dg="go"]{margin-top:16px!important; padding:14px!important; font-size:15px!important; flex-shrink:0;}
  #diagMissing{font-size:11.5px!important; padding:6px 10px!important;}

  /* Если экран совсем маленький, кнопки возраста тоже в 2 колонки */
  @media(max-width:360px){
    #diagModal .diag-opts .survey-opt{flex:1 1 calc(50% - 6px)!important;}
  }
  /* Поделиться */
  .share-badge-arrow{display:none}
  .share-badge b{font-size:14px}
  .share-badge.gold b{font-size:15px}
  /* Заголовки модалок */
  .modal-card h3,#diagModal h3,.exit-title{font-size:16px}
  #paymentWidgetTitle{font-size:15px!important}
  /* Форма отзыва */
  .rf-card{padding:14px 12px;margin:20px 12px 0;max-width:calc(100% - 24px)}
  .rf-row3{flex-direction:column;gap:6px}
  .rf-main{flex-direction:row; align-items:flex-start; gap:12px;}
  .rf-photo{width:80px; height:80px; min-width:80px; border-radius:12px; flex-shrink:0;}
  .rf-top{flex-wrap:wrap}
  .rf-row2{flex-direction:column;gap:6px}
}

/* ══════════════════════════════════════════════
   АДАПТИВ: УЗКИЕ ЭКРАНЫ
══════════════════════════════════════════════ */
@media(max-width:640px){
  .lead-banner{flex-direction:column;align-items:stretch;text-align:center;gap:8px;padding:10px 12px}
  .lead-btn{width:100%}
}
@media(max-width:400px){
  .share-badge-arrow{display:none}
  .share-badge b{font-size:14px}
  .share-badge.gold b{font-size:15px}
}
@media(max-width:360px){
  .cart-mini-progress-label{font-size:10.5px}
  .cart-mini-all25{font-size:10.5px}
  .cart-mini-btn{font-size:12px;min-height:36px}
  .cart-mini-expand{font-size:10px;min-height:24px}
  .cart-mini-row2{font-size:11.5px}
  .cart-mini-row3{font-size:10px}
  .top-bar{padding:8px 10px}
  .top-cta{font-size:12px;padding:8px 14px}
  .modal-card{padding:20px 14px}
  .footer-content{grid-template-columns:1fr;gap:20px}
  .esc-t{min-width:100%}
  .offer-features{flex-direction:column;gap:8px}
  .premium-card{padding:20px 14px}
  .pain-body{padding-right:60px}
  .bot-fab{right:14px;width:56px;height:56px}
  .bot-fab::before{font-size:25px}
  .bot-win{bottom:188px}
  .sticky-mobile-bar{padding:8px}
  .sticky-mobile-btn{font-size:11px;padding:10px 14px}
  .trust-toast{width:262px;font-size:11px;padding:8px 24px 8px 10px}
  body.cart-open-mobile{padding-bottom:100px}
  .smb-title,.smb-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:330px){
  .sticky-mobile-btn{width:100%;flex:1 1 100%;font-size:11px;padding:10px 8px}
}
@media(max-width:320px){
  .smb-title{font-size:12px}
  .sticky-mobile-btn{font-size:11px;padding:9px 12px}
  .smb-sub{font-size:10px}
  .cart-mini-btns{flex:0 0 32%}
  .cart-mini-progress-label{font-size:10px}
  .cart-mini-all25{font-size:9.5px;padding:2px 4px}
  .cart-mini-btn{font-size:11px}
  .cart-mini-expand{font-size:9px}
  .share-grid a,.share-grid button{flex:1 1 100%}
}
@media(max-height:500px) and (orientation:landscape){
  .bot-win{top:auto;bottom:10px;right:10px;left:10px;width:auto;height:calc(100vh - 60px);max-height:none;border-radius:12px}
  body.cart-open-mobile .bot-win{bottom:10px;height:calc(100vh - 60px)}
  .exit-card{max-height:92vh}
}

/* ══════════════════════════════════════════════
   ФИКСЫ (переопределения, порядок важен)
══════════════════════════════════════════════ */
/* Светлая премиальная свёрнутая корзина на мобильных */
@media(max-width:768px){
  .sticky-cart:not(.expanded){
    background:#FFF !important;
    border-top:1px solid var(--border)!important;
    box-shadow:0 -8px 30px rgba(0,0,0,.1)!important;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    border-radius: 20px 20px 0 0 !important;
  }
  .sticky-cart:not(.expanded) .cart-mini{
    gap: 10px !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-count{color:var(--text-light)!important; font-size:12px !important; font-weight:600 !important;}
  .sticky-cart:not(.expanded) .cart-mini-sep{display:none !important;}
  .sticky-cart:not(.expanded) .cart-mini-total{color:var(--primary)!important; font-size:16px !important; font-weight:800 !important; margin-left:6px !important;}
  .sticky-cart:not(.expanded) .cart-mini-gift{display:none !important;}
  
  .sticky-cart:not(.expanded) .cart-mini-progress-wrap{
    background:#F0F0F0 !important;
    border-radius:8px !important;
    height:20px !important;
    margin-top:0 !important;
    border:1px solid var(--border) !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-progress-fill{
    background:linear-gradient(90deg, var(--danger), var(--danger-dark)) !important;
    border-radius:7px 0 0 7px !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-progress-label{
    color: #000 !important;
    text-shadow: none !important;
    font-weight: 800 !important;
    font-size: 10.5px !important;
  }
  .cart-mini-discount-status {
    font-size: 11px !important;
    font-weight: 800 !important;
    color: var(--secondary-dark) !important;
    text-align: center !important;
    margin-bottom: 4px !important;
    width: 100% !important;
  }
  .cart-mini-savings-text {
    font-size: 12px !important;
    font-weight: 800 !important;
    color: var(--secondary-dark) !important;
    background: #F4F9F0 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    text-align: center !important;
    margin: 6px auto 2px auto !important;
    width: fit-content !important;
    flex-shrink: 0 !important;
    display: block !important;
  }
  .cart-mini-savings-text.hidden {
    display: none !important;
  }
  
  .sticky-cart:not(.expanded) .cart-mini-expand{
    background:linear-gradient(135deg, var(--secondary), var(--secondary-dark)) !important;
    border:none !important;
    color:#FFF !important;
    border-radius:10px !important;
    height: 44px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px !important;
    box-shadow: 0 4px 12px rgba(46,125,91,.2) !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-btns {
    justify-content: center !important;
    gap: 8px !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-btn {
    background:var(--grad) !important;
    color:#FFF !important;
    box-shadow:0 4px 12px rgba(198,93,60,.3) !important;
    border-radius:10px !important;
    height: 46px !important;
    min-height: 46px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    animation: btn-glow 2.6s ease-in-out infinite !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-expand {
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
    padding: 0 10px !important;
  }
  .sticky-cart:not(.expanded) .cart-mini-row3{display:none !important;}
  .sticky-cart:not(.expanded) .cart-mini-all25{
    display: block !important;
  }
}
/* Рамки кнопок меню диагностики */
#retakeMenu .retake-menu-btn,
#retakeMenu .retake-menu-btn.reset{border:1px solid var(--text-muted)!important}
/* Чередование фонов при скрытом блоке болей */
body.no-pain .products-section{background:var(--card-bg)}
body.no-pain .bundles-section{background:var(--bg)}
body.no-pain .products-section .section-tag{background:var(--bg)}
body.no-pain .bundles-section .section-tag{background:var(--card-bg)}
body.no-pain .product-card{box-shadow:0 6px 24px rgba(42,24,16,.12),0 2px 8px rgba(42,24,16,.08)}
/* Принудительное скрытие мобильной панели при видимой корзине */
body.cart-open-mobile .sticky-mobile-bar { display: none !important; }

/* Позиция окна чата относительно кнопки */
/* Позиция .bot-win управляется через JS (syncBotWinBottom).
   CSS задаёт только верхнюю границу и базовые размеры. */
/* top для .bot-win управляется только через max-height,
   чтобы не конфликтовать с bottom из JS (syncBotWinBottom) */
@media(max-width:768px) and (min-height:501px){
    .bot-win{top:auto;max-height:calc(100vh - var(--toasts-top,96px) - 80px)}
}

/* Skip-link для клавиатурной навигации */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:99999;background:var(--primary);color:#fff;padding:12px 24px;border-radius:8px;font-weight:700;text-decoration:none;font-size:14px}
.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;overflow:visible}

/* ═══ ПРОИЗВОДИТЕЛЬНОСТЬ: отложенный рендер секций ниже fold ═══ */
/* content-visibility:auto удалён.
   Он несовместим с scrollIntoView и якорными ссылками:
   браузер не знает реальную высоту секций до их рендера,
   поэтому скролл к секции останавливается в неверной позиции.
   Для производительности использовать lazy-загрузку изображений
   и defer-скрипты (уже применены). */
/* (правило contain-intrinsic-size удалено: без content-visibility:auto не работает) */


/* ════════════════════════════════════════════════════════════════
   ПРЕМИАЛЬНЫЙ ДИЗАЙН КОРЗИНЫ (Мобильная версия) v3 - OVERRIDE
   ════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  body.cart-open-mobile .sticky-mobile-bar { display: none !important; }
  
  .sticky-cart.expanded {
    background: #F8F9FA !important;
    border-top: none !important;
    top: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    max-height: 100dvh !important;
    height: 100dvh !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  }
  .sticky-cart.expanded::before { content: none !important; }
  
  .cart-mobile-header { 
    display: flex !important; 
    justify-content: space-between !important;
    align-items: center !important;
    padding: calc(12px + env(safe-area-inset-top, 0px)) 12px 12px 16px !important;
    background: #FFF !important; 
    border-bottom: 1px solid var(--border) !important;
    border-radius: 0 !important;
    flex-shrink: 0 !important;
    grid-template-columns: none !important;
  }
  .cart-header-title {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding-right: 6px !important;
  }
  /* Текстовые подписи кнопок теперь видны */
  
  .sticky-cart.expanded .cart-full { background: #F8F9FA !important; }
  
  .sticky-cart.expanded .cart-content {
    padding: 12px 16px 32px !important;
    gap: 12px !important;
    background: #F8F9FA !important;
    display: flex !important;
    flex-direction: column !important;
  }
  
  .sticky-cart.expanded .cart-info,
  .sticky-cart.expanded .cart-actions {
    width: 100% !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
  }
  
  .sticky-cart.expanded .cart-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    padding-bottom: 8px !important;
    margin-bottom: 8px !important;
    border-bottom: 1px solid var(--border) !important;
  }
  .sticky-cart.expanded .cart-line {
    background: #FFF !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 6px 8px !important;
    margin: 0 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.03) !important;
    gap: 8px !important;
    align-items: center !important;
  }
  .sticky-cart.expanded .cart-line-thumb { width: 32px !important; height: 32px !important; border-radius: 6px !important; }
  .sticky-cart.expanded .cart-line-title { font-size: 12px !important; font-weight: 600 !important; color: var(--text) !important; margin: 0 !important; line-height: 1.2 !important; }
  .sticky-cart.expanded .cart-line-price { font-size: 13px !important; font-weight: 700 !important; gap: 1px !important; }
  .sticky-cart.expanded .cart-line-price s { font-size: 10px !important; }
  .sticky-cart.expanded .cart-remove {
    background: #FFF5F5 !important;
    color: #E53E3E !important;
    border: none !important;
    border-radius: 50% !important;
    width: 44px !important; height: 44px !important;
    font-size: 14px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    padding: 0 !important;
    margin-left: 4px !important;
  }
  
  .cart-total {
    background: #FFF !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 16px 20px !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.05) !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--text) !important;
    margin-top: 0px !important;
    margin-bottom: 8px !important;
  }
  .cart-total::before { content: none !important; }
  
  .sticky-cart.expanded .bump-label {
    background: #FFFBF0 !important;
    border: 1px solid var(--accent) !important;
    border-radius: 8px !important;
    padding: 8px 10px !important;
    margin: 6px 0 0 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 2px 8px rgba(212,175,55,.1) !important;
    opacity: 1 !important;
  }
  .sticky-cart.expanded .bump-label::before {
    display: none !important; /* Скрываем квадратик, так как теперь есть крестик */
  }
  .sticky-cart.expanded .bump-label .cart-remove {
    display: flex !important;
    margin-left: 8px !important;
  }
  .sticky-cart.expanded .bump-label:has(input:checked)::before {
    background: var(--secondary) !important;
    border-color: var(--secondary) !important;
  }
  .sticky-cart.expanded .bump-emoji { font-size: 16px !important; margin: 0 !important; }
  .sticky-cart.expanded .bump-body { text-align: left !important; gap: 1px !important; }
  .sticky-cart.expanded .bump-title { font-size: 11px !important; font-weight: 800 !important; line-height: 1.2 !important; }
  .sticky-cart.expanded .bump-desc { font-size: 9.5px !important; color: var(--text-light) !important; -webkit-line-clamp: 1 !important; line-height: 1.2 !important; }
  .sticky-cart.expanded .bump-price { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 4px !important; margin-left: auto !important; }
  .sticky-cart.expanded .bump-price s { font-size: 9.5px !important; }
  .sticky-cart.expanded .bump-price b { font-size: 13px !important; color: var(--primary) !important; margin: 0 !important; }
  
  .cart-crosssell { 
    background: #FFF !important; 
    border: 1px solid var(--border) !important; 
    border-radius: 14px !important; 
    padding: 16px !important; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.03) !important; 
    margin-bottom: 12px !important;
  }
  .cs-row { border-bottom: 1px solid #F0F0F0 !important; padding: 12px 0 !important; }
  .cs-row:last-child { border-bottom: none !important; padding-bottom: 4px !important; }
  .cs-add { background: linear-gradient(135deg, var(--secondary), var(--secondary-dark)) !important; color: #fff !important; border-radius: 8px !important; border: none !important; box-shadow: 0 2px 6px rgba(46,125,91,0.2) !important; }
  
  .cs-progress-wrap {
    background: #F8F9FA !important;
    border-radius: 12px !important;
    padding: 16px !important;
    margin-bottom: 12px !important;
    border: 1px solid var(--border) !important;
  }
  .cs-need {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: var(--text) !important;
    text-align: center !important;
    margin-bottom: 8px !important;
    display: block !important;
  }
  .gift-banner {
    background: #FFFBF0 !important;
    border: 1px dashed var(--accent) !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    margin-top: 12px !important;
    font-size: 12.5px !important;
    color: var(--text-light) !important;
    line-height: 1.4 !important;
    text-align: center !important;
  }
  .gift-banner b {
    color: var(--primary) !important;
    font-weight: 800 !important;
  }
  .cs-progress-bar-container {
    position: relative !important;
    margin: 0 6px !important;
  }
  .cs-progress-bar {
    height: 16px !important;
    background: #E8DED0 !important;
    border-radius: 8px !important;
    position: relative !important;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.1) !important;
    overflow: hidden !important;
  }
  .cs-progress-fill {
    height: 100% !important;
    background: linear-gradient(90deg, var(--danger), var(--danger-dark)) !important;
    border-radius: 8px !important;
    transition: width 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    box-shadow: inset 0 -2px 4px rgba(0,0,0,0.1), inset 0 2px 4px rgba(255,255,255,0.3) !important;
    will-change: width !important;
  }
  .cs-progress-mark {
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 2px !important;
    background: #FFF !important;
    box-shadow: 0 0 4px rgba(0,0,0,0.3) !important;
    z-index: 2 !important;
  }
  .cs-progress-labels {
    position: relative !important;
    height: 16px !important;
    margin-top: 4px !important;
  }
  .cs-progress-labels span {
    position: absolute !important;
    transform: translateX(-50%) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    color: var(--text-muted) !important;
  }
  
  #checkoutBtn {
    background: linear-gradient(135deg, #C65D3C, #D4AF37) !important;
    color: #FFF !important;
    border-radius: 14px !important;
    padding: 16px !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 24px rgba(198,93,60,.3) !important;
    margin-bottom: 12px !important;
    width: 100% !important;
  }
  #buyAllCart {
    background: linear-gradient(135deg, var(--secondary), var(--secondary-dark)) !important;
    border: none !important;
    color: #FFF !important;
    border-radius: 14px !important;
    padding: 14px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 12px rgba(46,125,91,0.2) !important;
    margin-bottom: 16px !important;
    width: 100% !important;
  }
  .cart-guarantee {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    font-size: 11px !important;
    color: var(--text-muted) !important;
    text-align: center !important;
    line-height: 1.5 !important;
  }
}