/* Cookie consent banner (includes/footer.php). Static, cached; loaded only while the visitor has not chosen. */
.pp-cookie-consent{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(120%);z-index:9998;width:calc(100% - 40px);max-width:680px;padding:0;background:rgba(15,23,42,.98);backdrop-filter:blur(20px);border:1px solid rgba(99,102,241,.35);border-radius:1rem;box-shadow:0 8px 40px rgba(0,0,0,.45),0 0 0 1px rgba(99,102,241,.15);animation:ppCookieSlideUp .4s cubic-bezier(.16,1,.3,1) forwards}
@keyframes ppCookieSlideUp{from{transform:translateX(-50%) translateY(120%);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}
.pp-cookie-consent__inner{display:flex;align-items:flex-start;gap:16px;padding:20px 24px;flex-wrap:wrap}
.pp-cookie-consent__icon{font-size:2rem;color:#f59e0b;flex-shrink:0;line-height:1;padding-top:2px}
.pp-cookie-consent__body{flex:1 1 300px;min-width:0}
.pp-cookie-consent__title{font-size:1rem;font-weight:700;color:#f1f5f9;margin-bottom:4px}
.pp-cookie-consent__text{font-size:.85rem;color:#94a3b8;line-height:1.5}
.pp-cookie-consent__link{color:#818cf8;text-decoration:underline;text-underline-offset:2px;transition:color .2s}
.pp-cookie-consent__link:hover{color:#a5b4fc}
.pp-cookie-consent__actions{display:flex;gap:10px;flex-shrink:0;align-items:center;align-self:center}
.pp-cookie-btn-accept{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;padding:10px 22px;border-radius:.5rem;border:none;font-size:.9rem;transition:all .2s;box-shadow:0 2px 12px rgba(99,102,241,.35)}
.pp-cookie-btn-accept:hover{background:linear-gradient(135deg,#818cf8,#a78bfa);color:#fff;box-shadow:0 4px 20px rgba(99,102,241,.5);transform:translateY(-1px)}
.pp-cookie-btn-necessary{background:transparent;color:#94a3b8;font-weight:500;padding:10px 16px;border-radius:.5rem;border:1px solid rgba(148,163,184,.25);font-size:.82rem;transition:all .2s}
.pp-cookie-btn-necessary:hover{color:#e2e8f0;border-color:rgba(148,163,184,.5);background:rgba(148,163,184,.08)}
/* ЕЭЗ/UK/CH: выбор нужен для аналитики — «Принять» главная кнопка (крупнее, яркая), «Только необходимые» остаётся видимой и доступной, но второстепенная */
.pp-cookie-consent--eu .pp-cookie-btn-accept{padding:13px 34px;font-size:1.02rem;font-weight:700;box-shadow:0 4px 22px rgba(99,102,241,.55)}
.pp-cookie-consent--eu .pp-cookie-btn-necessary{color:#cbd5e1;border-color:rgba(203,213,225,.45)}
@media(max-width:640px){
    /* На телефоне баннер занимал 172 px и физически накрывал главную кнопку посадочных
       («Проверить бесплатно» на /seo-radar). Первый тап уходил в баннер, а не в CTA —
       для человека это выглядит как сломанная кнопка. Поэтому на мобильном: одна строка
       текста, кнопки в тот же ряд, высота ~72 px и прижат к самому низу. */
    /* Своё имя анимации, а не переопределение ppCookieSlideUp: та сдвигает по X на -50%
       под десктопное центрирование, здесь баннер уже во всю ширину. */
    .pp-cookie-consent{bottom:0;left:0;right:0;transform:translateY(120%);width:100%;max-width:none;border-radius:.85rem .85rem 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom,0);animation:ppCookieSlideUpMobile .4s cubic-bezier(.16,1,.3,1) forwards}
    @keyframes ppCookieSlideUpMobile{from{transform:translateY(120%);opacity:0}to{transform:translateY(0);opacity:1}}
    .pp-cookie-consent__inner{flex-direction:row;flex-wrap:nowrap;align-items:center;text-align:left;padding:10px 12px;gap:8px}
    .pp-cookie-consent__icon{display:none}
    .pp-cookie-consent__body{flex:1 1 auto;min-width:0}
    .pp-cookie-consent__title{display:none}
    /* Текст в одну строку с многоточием: смысл («мы используем cookies» + ссылка на политику)
       сохраняется, а высота перестаёт зависеть от длины перевода. */
    .pp-cookie-consent__text{font-size:.75rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
    .pp-cookie-consent__actions{width:auto;flex:0 0 auto;gap:6px;flex-direction:column}
    .pp-cookie-btn-accept{padding:7px 14px;font-size:.8rem;white-space:nowrap}
    .pp-cookie-btn-necessary{padding:5px 12px;font-size:.72rem;white-space:nowrap}
    .pp-cookie-consent--eu .pp-cookie-btn-accept{padding:9px 18px;font-size:.88rem}
    /* Плавающие кнопки садились на кнопки баннера. Не двигаем их (сдвиг на телефоне), а прячем, пока баннер виден. */
    body:has(.pp-cookie-consent[style*="block"]) .pp-chat-widget,
    body:has(.pp-cookie-consent[style*="block"]) .pp-tour-fab{opacity:0;visibility:hidden;pointer-events:none}
}
