/* Pulsr — живая лента («↑ N новых постов», «сейчас читают») и скрытые пользователи. JS — js/live.js (плагин «Pulsr: дополнения»). */

/* ---------- Плашка «↑ N новых постов» ---------- */
.ps-lv-bar{position:fixed;top:80px;left:0;width:100%;z-index:39;height:0;display:flex;justify-content:center;pointer-events:none}
.ps-lv-pill{pointer-events:auto;position:relative;display:inline-flex;align-items:center;gap:9px;min-height:42px;max-width:calc(100vw - 32px);padding:0 18px 0 8px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--ac),color-mix(in srgb,var(--ac) 62%,var(--ac2)));color:#fff;font:inherit;font-size:14px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;box-shadow:0 12px 34px color-mix(in srgb,var(--ac) 38%,transparent),0 2px 8px rgba(0,0,0,.25);transition:transform .2s var(--ease),box-shadow .2s}
.ps-lv-pill[hidden]{display:none}
.ps-lv-pill:hover{transform:translateY(-1px);box-shadow:0 16px 40px color-mix(in srgb,var(--ac) 46%,transparent),0 2px 8px rgba(0,0,0,.25)}
.ps-lv-pill:focus-visible{outline:2px solid var(--tx);outline-offset:3px}
.ps-lv-pill.is-in{animation:psLvIn .45s var(--ease) both}
.ps-lv-pill.is-out{animation:psLvOut .22s ease both}
.ps-lv-pill.is-beat{animation:psLvBeat .5s var(--ease)}
.ps-lv-t{overflow:hidden;text-overflow:ellipsis}
.ps-lv-ic{font-size:13px}
.ps-lv-beat{position:relative;display:inline-grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:rgba(255,255,255,.18)}
.ps-lv-beat::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.55);animation:plsRing 1.6s ease-out infinite}
.ps-lv-ecg{width:20px;height:12px;fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:120;animation:plsDraw 1.6s ease-in-out infinite}
.ps-lv-pill.is-busy .ps-lv-beat,.ps-lv-pill.is-busy .ps-lv-ic,.ps-lv-pill.is-busy .ps-lv-t{visibility:hidden}

/* ---------- Новые карточки ---------- */
.pf-card.ps-lv-new{animation:psLvCard .6s var(--ease) both;animation-delay:calc(var(--ps-lv-i,0) * 70ms)}
.pf-card.ps-lv-new::after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--ac) 55%,transparent);animation:psLvRing 1.6s ease-out both;animation-delay:calc(var(--ps-lv-i,0) * 70ms)}

/* ---------- «сейчас читают N» ---------- */
.ps-lv-now{display:inline-flex;align-items:center;gap:7px;min-height:32px;font-size:12.5px;font-weight:600;color:var(--mu);white-space:nowrap;animation:fade .3s ease both}
.ps-lv-now[hidden]{display:none}
.ps-lv-now b{font-weight:700;color:var(--tx2)}
.pf-tools>.ps-lv-now{margin-right:6px}
.ps-lv-dot{position:relative;display:inline-block;width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--ok)}
.ps-lv-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--ok);opacity:0;animation:psLvDot 2s ease-out infinite}
.ps-lv-now--hero{min-height:0;margin-left:10px;font-size:inherit;font-weight:500;color:inherit}
.ps-lv-now--hero b{color:inherit}
.ps-lv-now--tag{display:flex;width:max-content;min-height:0;margin-top:8px}

/* ---------- Скрытые пользователи: комментарий ---------- */
.pp-c.is-ig>:not(.ps-ig-line){display:none!important}
.pp-c.is-ig{padding-top:6px;padding-bottom:6px}
.ps-ig-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;width:100%;min-height:40px;padding:8px 14px;border-radius:14px;background:var(--sf2);border:1px dashed var(--ln2);color:var(--mu);font-size:13px;line-height:1.35}
.ps-ig-line>i{font-size:12px}
.ps-ig-line b{color:var(--tx2);font-weight:600;overflow-wrap:anywhere}
.ps-ig-dot{opacity:.6}
.ps-ig-peek{padding:4px 0;border:0;background:none;color:var(--ac);font:inherit;font-weight:700;cursor:pointer}
.ps-ig-peek:hover{text-decoration:underline}
.pp-ct--ig{font-size:11px}

/* ---------- Исчезновение карточки/строки ---------- */
.ps-ig-gone{overflow:hidden;opacity:0;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;border-width:0!important;transition:height .38s var(--ease),opacity .25s ease,margin .38s var(--ease),padding .38s var(--ease)}

/* ---------- Окно «Скрыть @…?» ---------- */
.ps-ig-body{padding:4px 22px 6px;font-size:14.5px;line-height:1.5;color:var(--tx2)}
.ps-ig-body p{margin:0 0 10px;overflow-wrap:anywhere}
.ps-ig-body .ps-ig-note{margin:0;font-size:13px;color:var(--mu)}
.ps-ig-foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}

/* ---------- Профиль скрытого человека ---------- */
.ps-ig-banner{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin:14px 0 0;padding:14px 18px;border-radius:20px;background:var(--sf2);border:1px solid var(--ln2);color:var(--tx2);font-size:14px;line-height:1.45}
.ps-ig-banner>i{color:var(--mu)}
.ps-ig-banner>span{flex:1 1 240px;min-width:0}
.ps-ig-banner b{color:var(--tx)}

/* ---------- Карточка профиля при наведении: «⋯» ---------- */
.ps-ig-ucw{position:relative;display:inline-flex}
.ps-ig-ucm{right:0;left:auto;min-width:210px}
.ps-ig-ucm[hidden]{display:none}

/* ---------- Настройки: «Скрытые пользователи» ---------- */
.pg-ig-list{display:flex;flex-direction:column}
.pg-ig-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 0;border-top:1px solid var(--ln)}
.pg-ig-row:first-child{border-top:0}
.pg-ig-av{width:40px;height:40px;flex:0 0 auto;border-radius:50%;object-fit:cover;background:var(--sf3)}
.pg-ig-name{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0;color:var(--tx);text-decoration:none}
.pg-ig-name:hover b{color:var(--ac)}
.pg-ig-name b{font-size:14.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-ig-name span{font-size:12.5px;color:var(--mu);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-ig-off{flex:0 0 auto}
.pg-ig-none{font-size:13.5px;line-height:1.5;color:var(--mu)}
.pg-ig-cnt{margin:8px 0 0;font-size:12px;color:var(--mu)}

@media (max-width:760px){
	.ps-lv-pill{min-height:40px;font-size:13.5px}
	.pf-tools>.ps-lv-now{margin-right:auto}
	.ps-ig-banner{padding:12px 14px;border-radius:16px;font-size:13.5px}
	.pg-ig-row{gap:10px}
}

@keyframes psLvIn{from{opacity:0;transform:translateY(-14px) scale(.92)}to{opacity:1;transform:none}}
@keyframes psLvOut{to{opacity:0;transform:translateY(-10px) scale(.95)}}
@keyframes psLvBeat{0%{transform:none}30%{transform:scale(1.07)}60%{transform:scale(.98)}100%{transform:none}}
@keyframes psLvCard{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes psLvRing{0%{opacity:1}100%{opacity:0}}
@keyframes psLvDot{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.6);opacity:0}}

@media (prefers-reduced-motion:reduce){
	.ps-lv-pill.is-in,.ps-lv-pill.is-out,.ps-lv-pill.is-beat,.pf-card.ps-lv-new,.pf-card.ps-lv-new::after,.ps-lv-beat::before,.ps-lv-ecg,.ps-lv-dot::after,.ps-lv-now{animation:none}
	.ps-lv-ecg{stroke-dasharray:none}
	.ps-ig-gone{transition:none}
}
