/* Pulsr — post.css: полная новость, обсуждение, опрос, вложения, похожие, статические страницы, лайтбокс.
   Владелец — агент B (work/WORKPLAN.md §2). Классы — с приставкой .pp-; общие компоненты — из base.css.
   Вид — прототип PulsrPost.dc.html 1:1 (статья ≤780px + колонка 300px, панель оценки, дерево комментариев). */

/* ---------- Раскладка страницы поста ---------- */
.pp{display:flex;gap:var(--cgap);align-items:flex-start;justify-content:center;width:100%;min-width:0}
.pp-main{flex:1 1 auto;min-width:0;max-width:780px;display:flex;flex-direction:column;gap:22px;animation:rise .5s var(--ease) backwards}
.pp-side{width:var(--rail);flex:0 0 var(--rail);position:sticky;top:calc(var(--head-h) + 28px);display:flex;flex-direction:column;gap:14px;min-width:0}
.pp-side:not(:has(*)){display:none}
@media (max-width:1100px){
	.pp{flex-direction:column;align-items:center;gap:36px}
	.pp-main{width:100%}
	.pp-side{position:static;width:100%;max-width:780px;flex:none}
}
@media (max-width:819px){.pp-side{display:none}}

.pp-back{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;color:var(--mu);font-size:14px;font-weight:600;line-height:normal;text-decoration:none;cursor:pointer;transition:color .2s}
.pp-back:hover{color:var(--tx);text-decoration:none}

/* ---------- Кикер, заголовок ---------- */
.pp-kick{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;line-height:normal}
.pp-kick-comm,.pp-kick-comm a{color:var(--ac);text-decoration:none}
.pp-kick-comm:hover,.pp-kick-comm a:hover{text-decoration:none;opacity:.85}
.pp-kick-comm i{margin-right:8px}
.pp-kick-meta{color:var(--mu);font-family:var(--f-sans);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}
.pp-kick-meta [title]{font-variant-numeric:tabular-nums}
.pp-kick-pin{color:var(--ac2)}
.pp-kick-pin i{margin-right:6px}
.pp-kick-18{padding:2px 8px;border-radius:6px;border:1px solid var(--bad);color:var(--bad);letter-spacing:.05em}
.pp-title{margin:-4px 0 0;font-family:var(--f-serif);font-weight:600;font-size:58px;line-height:.98;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word;color:var(--tx)}
@media (max-width:819px){.pp-title{font-size:38px}}
@media (max-width:600px){.pp-title{font-size:30px;line-height:1.06;letter-spacing:-.015em}}

/* ---------- Автор ---------- */
.pp-author{display:flex;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);flex-wrap:wrap}
.pp-author-av{flex:0 0 auto;display:block;width:48px;height:48px;border-radius:50%;overflow:hidden;background:var(--sf2)}
.pp-author-av img{display:block;width:48px;height:48px;object-fit:cover;border-radius:50%}
.pp-author-av--l{display:block;line-height:48px;text-align:center;font-size:0;color:var(--tx)}
.pp-author-av--l a{color:inherit}
.pp-author-av--l::first-letter{font-size:18px;font-weight:700;text-transform:uppercase}
.pp-author-txt{flex:1;min-width:140px;display:flex;flex-direction:column;gap:3px}
.pp-author-name{font-weight:700;font-size:15px;line-height:1.3}
.pp-author-name .verified{margin-left:6px}
.pp-author-name a{color:var(--tx);text-decoration:none}
.pp-author-name a:hover{color:var(--ac);text-decoration:none}
.pp-author-name .verified,.pp-c-name .verified{color:var(--ac);font-size:12px}
.pp-author-sub{display:flex;align-items:center;flex-wrap:wrap;gap:0 6px;font-size:12.5px;color:var(--mu);line-height:1.5}
.pp-author-sub>span+span::before{content:"·";margin-right:6px}
.pp-author-sub>span.is-wrap::before,.pp-kick .is-wrap .pp-kick-dot{display:none}
.pp-author-sub i{color:var(--ac2)}
.pp-author-rank{display:inline-flex;align-items:center;gap:6px}
.pp-author-rank .kpro-badge{display:inline-flex;align-items:center;gap:6px;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;font-family:inherit!important;font-size:12.5px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--mu)!important}
.pp-author-rank .kpro-badge-i,.pp-author-rank .kpro-badge svg,.pp-author-rank .kpro-badge i{color:var(--ac2)!important;background:none!important}
.pp-author-fol.is-empty{display:none}
.pp-author-act [data-ps-follow],.pp-author-edit{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;min-height:40px;padding:0 18px;border-radius:var(--r-pill);border:1px solid var(--tx);background:var(--tx);color:var(--bg);font-weight:700;font-size:13.5px;white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.pp-author-act [data-ps-follow] i{display:none}
.pp-author-act [data-ps-follow]:hover{background:var(--tx);border-color:var(--tx);color:var(--bg);opacity:.88}
.pp-author-act [data-ps-follow].is-on{border-color:var(--ln2);background:transparent;color:var(--tx2);opacity:1}
.pp-author-act [data-ps-follow].is-on:hover{border-color:var(--tx2);background:transparent;color:var(--tx)}
.pp-author-edit{border-color:var(--ln2);background:transparent;color:var(--tx)}
.pp-author-edit:hover{border-color:var(--tx2)}
a:has(>.pp-author-edit){text-decoration:none}

/* ---------- Текст поста ---------- */
.pp-body{min-width:0;font-size:18px;line-height:1.75;color:var(--tx2);overflow-wrap:break-word}
.pp-body>*{margin:0}
.pp-body>*+*{margin-top:22px}
.pp-body p{text-wrap:pretty}
.pp-body h2,.pp-body h3,.pp-body h4{font-family:var(--f-serif);font-weight:600;color:var(--tx);line-height:1.1;letter-spacing:-.01em}
.pp-body h2{font-size:34px}.pp-body h3{font-size:28px}.pp-body h4{font-size:23px}
.pp-body a{color:var(--ac);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ac) 40%,transparent);text-underline-offset:3px}
.pp-body a:hover{text-decoration-color:var(--ac)}
.pp-body b,.pp-body strong{color:var(--tx)}
.pp-body ul,.pp-body ol{padding-left:1.3em}
.pp-body li+li{margin-top:6px}
.pp-body li::marker{color:var(--ac)}
.pp-body hr{height:1px;border:0;background:var(--ln)}
.pp-body img{display:block;max-width:100%;height:auto;border-radius:26px;background:var(--sf2)}
.pp-body img[style*="float"],.pp-body img[align]{float:none!important;margin:0!important}
.pp-body p>img:only-child,.pp-body p>a:only-child>img{width:100%}
.pp-body img.emoji,.pp-body img[src*="/emoticons/"]{display:inline-block;width:auto;height:1.2em;border-radius:0;background:none;vertical-align:-.2em}
.pp-body a.highslide,.pp-body a[data-highslide]{display:block;text-decoration:none}
.pp-body [data-pp-zoom]{cursor:zoom-in}
.pp-body figure{display:flex;flex-direction:column;gap:8px;margin-left:0;margin-right:0}
.pp-body figure:first-child{margin-top:0}
.pp-body figure img{width:100%;max-height:820px;object-fit:cover}
.pp-body figcaption,.pp-cap{font-size:13px;line-height:1.5;color:var(--mu);text-align:center}
.pp-body iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:26px;background:#000}
.pp-body video{display:block;width:100%;border-radius:26px;background:#000}
.pp-body .dlevideoplayer,.pp-body .media--video{position:relative;border-radius:26px;overflow:hidden;background:#000}
.pp-body .dlevideoplayer video{border-radius:0}
.pp-body .dleaudioplayer{border-radius:18px;overflow:hidden}
.pp-body table{width:100%;border-collapse:collapse;font-size:15px}
.pp-body th,.pp-body td{padding:10px 12px;border-bottom:1px solid var(--ln);text-align:left}
.pp-body th{color:var(--tx);font-weight:700}
.pp-body pre,.pp-body .scriptcode,.pp-c-text pre{overflow-x:auto;padding:14px 16px;border-radius:18px;background:var(--sf2);border:1px solid var(--ln);font-family:var(--f-mono);font-size:13.5px;line-height:1.6}
.pp-body code,.pp-c-text code{font-family:var(--f-mono);font-size:.88em}
.pp-body blockquote,.pp-body .quote_block,.pp-c-text .quote_block,.pp-c-text blockquote{margin:0;padding:14px 18px;border-left:3px solid var(--ac);border-radius:0 18px 18px 0;background:var(--sf2);color:var(--tx2)}
.pp-body .quote_block .quote,.pp-c-text .quote_block .quote{padding:0;border:0;background:none}
.pp-body .title_quote,.pp-c-text .title_quote{display:block;margin-bottom:6px;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mu)}
.pp-body .quote_link,.pp-c-text .quote_link{float:right;color:var(--mu)}
.pp-body .dleshowhidden{padding:14px 18px;border:1px dashed var(--ln2);border-radius:18px;font-size:15px;color:var(--mu)}
.pp-blur-wrap{position:relative;min-width:0}
.pp-blur-wrap.pk-blur-box{border-radius:26px;min-height:320px}
.pp-blur-wrap .pk-nsfw{justify-content:flex-start;padding-top:min(18vh,140px)}
.pp-content{display:flex;flex-direction:column;gap:22px;min-width:0}
.pp-media:empty,.pp-media:not(:has(img,iframe,video,.dlevideoplayer,.dleaudioplayer)){display:none}
.pp-media .media,.pp-media .media-grid{position:relative;display:block;border-radius:26px;overflow:hidden;background:var(--sf2)}
.pp-media .media a,.pp-media .media-grid a{display:block;height:100%}
.pp-media img{display:block;width:100%;height:auto;max-height:820px;object-fit:cover;cursor:zoom-in}
.pp-media .media-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;aspect-ratio:16/10}
.pp-media .media-grid img{height:100%;max-height:none}
.pp-media .media-grid--3 a:first-child{grid-row:span 2}
.pp-media .media-grid--2{aspect-ratio:16/9}
.pp-media .media--video{aspect-ratio:16/9;background:#000}
.pp-media .media--video iframe,.pp-media .media--video .dle-media-block{display:block;width:100%!important;height:100%!important;border:0}
.pp-media .media-players{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.pp-media .media-players .dlevideoplayer{border-radius:26px;overflow:hidden}
@media (max-width:819px){.pp-media .media,.pp-media .media-grid{border-radius:20px}}
@media (max-width:819px){
	.pp-body img,.pp-body iframe,.pp-body video,.pp-body .dlevideoplayer{border-radius:20px}
	.pp-body h2{font-size:28px}.pp-body h3{font-size:24px}
}

/* ---------- Спойлер DLE [spoiler] ---------- */
.pp-body .dle-spoiler,.pp-c-text .dle-spoiler{display:block;padding:16px 18px;border-radius:18px;background:var(--sf2);border:1px solid var(--ln);cursor:pointer;user-select:none}
.pp-body .dle-spoiler .title_spoiler,.pp-c-text .dle-spoiler .title_spoiler{display:flex;align-items:center;flex-wrap:wrap;gap:0 6px;margin:0 0 8px;padding:0;border:0;background:none;font-family:var(--f-mono);font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--ac)}
.pp-body .dle-spoiler .title_spoiler a,.pp-c-text .dle-spoiler .title_spoiler a{color:var(--ac);text-decoration:none;pointer-events:none}
.pp-body .title_spoiler .spoiler-btn-svg,.pp-c-text .title_spoiler .spoiler-btn-svg,.pp-body .title_spoiler img,.pp-c-text .title_spoiler img{display:none}
.pp-sp-ico{margin-right:4px}
.dle-spoiler.is-open .pp-sp-hint{display:none}
.pp-body .dle-spoiler .text_spoiler,.pp-c-text .dle-spoiler .text_spoiler{display:block!important;height:auto!important;margin:0;padding:0;border:0;background:none;font-size:17px;line-height:1.7;color:var(--tx2);filter:blur(8px);transition:filter .4s;overflow:visible!important}
.pp-c-text .dle-spoiler .text_spoiler{font-size:15px}
.dle-spoiler.is-open{cursor:auto;user-select:text}
.dle-spoiler.is-open .text_spoiler{filter:none!important}
.pp-body .dle-spoiler .text_spoiler>.contenteditable>*+*{margin-top:12px}

/* ---------- Страницы поста, правка, теги ---------- */
.pp-split{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pp-split-k{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mu)}
.pp-split-p,.pp-pages--s{display:flex;gap:6px;flex-wrap:wrap}
.pp-split-p a,.pp-split-p span,.pp-pages--s a,.pp-pages--s span{display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 10px;border-radius:var(--r-pill);border:1px solid var(--ln2);color:var(--tx2);font-family:var(--f-mono);font-size:13px;text-decoration:none}
.pp-split-p a:hover,.pp-pages--s a:hover{border-color:var(--ac);color:var(--ac);text-decoration:none}
.pp-split-p span,.pp-pages--s span{background:var(--tx);border-color:var(--tx);color:var(--bg)}
.pp-pages--s:empty{display:none}
.pp-edited{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mu);flex-wrap:wrap}
.pp-tags{display:flex;gap:6px;flex-wrap:wrap;font-size:0;line-height:0}
.pp-tags a{display:inline-flex;align-items:center;padding:6px 11px;border-radius:var(--r-pill);border:1px solid var(--ln);color:var(--tx2);font-size:12.5px;font-weight:600;line-height:1.2;text-decoration:none;transition:border-color .2s,color .2s}
.pp-tags a::before{content:"#"}
.pp-tags a:hover{border-color:var(--ac);color:var(--ac);text-decoration:none}

/* ---------- Плавающая панель оценки ---------- */
.pp-bar{position:sticky;bottom:20px;z-index:5;align-self:flex-start;display:flex;align-items:center;gap:4px;max-width:100%;padding:5px;border-radius:var(--r-pill);background:var(--glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--ln2);box-shadow:var(--sh)}
@media (max-width:819px){.pp-bar{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
.pp-vote{display:flex;align-items:center;gap:4px}
.pp-vote>a,.pp-cv>a,.pp-bar>a,.pp-c-acts>a,.pp-c-tools>a{display:inline-flex;text-decoration:none;color:inherit;border-radius:var(--r-pill)}
.pp-vote>a:hover,.pp-cv>a:hover,.pp-bar>a:hover,.pp-c-acts>a:hover,.pp-c-tools>a:hover{text-decoration:none}
.pp-vb{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border-radius:50%;border:1px solid var(--ln);background:transparent;color:var(--tx2);font-size:15px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.pp-vb:hover{border-color:var(--ln2);color:var(--tx)}
.pp-vb--down{color:var(--mu)}
.pp-vote.is-up .pp-vb--up{background:var(--ac);border-color:var(--ac);color:#fff}
.pp-vote.is-down .pp-vb--down{background:var(--sf3);color:var(--tx)}
.pp-vb--wide{width:auto;min-width:42px;gap:8px;display:inline-flex;align-items:center;padding:0 14px;border-radius:var(--r-pill);font-family:var(--f-mono);font-size:14px;font-weight:600}
.pp-vs{min-width:54px;text-align:center;font-family:var(--f-mono);font-weight:600;font-size:15px;color:var(--tx);white-space:nowrap}
.pp-vote.is-up .pp-vs{color:var(--ac)}
.pp-vote.is-down .pp-vs,.pp-vs .ratingminus{color:var(--mu)}
.pp-vote--stars{padding:0 10px}
.pp-bar-sep{width:1px;height:24px;margin:0 4px;background:var(--ln2);flex:0 0 auto}
.pp-ib{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--tx);font-size:15px;cursor:pointer;transition:background .2s,color .2s}
.pp-ib:hover{background:var(--sf2)}
.pp-ib.is-on{color:var(--ac)}
.pp-ib--flag{color:var(--mu)}
.pp-ib--flag:hover{color:var(--bad)}
.pp-pop{animation:ppPop .45s var(--pop)}
@keyframes ppPop{0%{transform:scale(.8)}55%{transform:scale(1.18)}100%{transform:scale(1)}}

/* ---------- Звёзды DLE (рейтинг «1–5») ---------- */
.pp-vote--stars .rating,.pp-cv--stars .rating{display:inline-block;vertical-align:middle}
.pp-vote--stars .unit-rating,.pp-cv--stars .unit-rating{position:relative;display:flex;width:100px;height:18px;margin:0;padding:0;list-style:none;background:var(--sf3);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath d='M10 .8l2.6 5.5 6 .7-4.4 4.1 1.2 5.9L10 14.1 4.6 17l1.2-5.9L1.4 7l6-.7z'/%3E%3C/svg%3E") 0 0/20px 18px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath d='M10 .8l2.6 5.5 6 .7-4.4 4.1 1.2 5.9L10 14.1 4.6 17l1.2-5.9L1.4 7l6-.7z'/%3E%3C/svg%3E") 0 0/20px 18px repeat-x}
.pp-vote--stars .unit-rating li,.pp-cv--stars .unit-rating li{flex:1;font-size:0}
.pp-vote--stars .unit-rating li a,.pp-cv--stars .unit-rating li a{display:block;height:100%;position:relative;z-index:2}
.pp-vote--stars .unit-rating .current-rating,.pp-cv--stars .unit-rating .current-rating{position:absolute;left:0;top:0;bottom:0;z-index:1;background:var(--ac2);font-size:0}
.pp-vote--stars .unit-rating li a:hover,.pp-cv--stars .unit-rating li a:hover{background:var(--ac)}

/* ---------- Обсуждение ---------- */
.pp-disc{margin-top:14px;display:flex;flex-direction:column;gap:18px;min-width:0;scroll-margin-top:calc(var(--head-h) + 16px)}
.pp-disc-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--ln)}
.pp-disc-title{margin:0;font-family:var(--f-serif);font-weight:600;font-size:34px;line-height:normal;color:var(--tx)}
.pp-disc-n{font-family:var(--f-mono);font-size:13px;color:var(--ac)}
.pp-csort{margin-left:auto;align-self:center;gap:4px}
.pp-csort button{height:30px;padding:0 12px;font-size:12.5px;font-weight:700;transition:background .2s,color .2s}
.pp-cempty{padding:40px 20px;text-align:center;color:var(--mu);font-size:14.5px}
.pp-cempty i{display:block;margin:0 auto 10px;font-size:26px;color:var(--ac)}

/* Форма комментария */
.pp-addc{display:flex;gap:12px;min-width:0}
.pp-addc-av{flex:0 0 auto;width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--sf2)}
.pp-addc-box{flex:1;min-width:0;position:relative;display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:22px;background:var(--sf);border:1px solid var(--ln);transition:border-color .2s}
.pp-addc-box:focus-within{border-color:var(--ln2)}
.pp-addc-reply{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mu)}
.pp-addc-reply b{color:var(--ac)}
.pp-addc-x{display:inline-grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mu);cursor:pointer}
.pp-addc-x:hover{background:var(--sf2);color:var(--tx)}
.pp-addc-guest{font-size:13px;color:var(--mu)}
.pp-link{padding:0;border:0;background:none;color:var(--ac);font:inherit;font-weight:700;cursor:pointer}
.pp-link:hover{text-decoration:underline}
.pp-addc-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pp-addc-f{display:block;min-width:0}
.pp-addc .field{min-height:42px;padding:9px 14px;border-radius:14px}
.pp-addc-editor{min-width:0}
.pp-addc-editor .wseditor,.pp-addc-editor .dleaddcomments-editor{margin:0;padding:0;border:0;background:none}
.pp-addc-editor textarea{display:block;width:100%!important;height:51px;min-height:51px;padding:2px 0!important;max-height:50vh;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--tx);font-family:var(--f-sans);font-size:15px;line-height:1.55;resize:vertical;box-shadow:none}
.pp-addc-editor .bb-editor,.pp-addc-editor .bb-pane{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:8px;padding:0;border:0;background:none}
.pp-addc-editor .tox-tinymce{height:150px!important;border:0!important;border-radius:14px!important;transition:height .25s var(--ease)}
.pp-addc-box:focus-within .pp-addc-editor .tox-tinymce,.pp-addc-editor .tox-tinymce.tox-tinymce--toolbar-sticky-on{height:240px!important}
.pp-addc-row{display:flex;flex-direction:column;gap:6px}
.pp-addc-ql{font-size:13px;font-weight:600;color:var(--tx2)}
.pp-addc-cap{flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}
.pp-addc-capimg{flex:0 0 auto;display:inline-flex}
.pp-addc-capimg img{display:block;height:44px;width:auto;border-radius:12px;background:#fff}
.pp-addc-cap .field{flex:1;min-width:150px;max-width:240px}
.pp-addc-tools{display:flex;align-items:center;gap:4px;color:var(--mu);flex-wrap:wrap}
.pp-tool{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mu);font-size:14px;cursor:pointer;transition:background .2s,color .2s}
.pp-tool:hover{background:radial-gradient(circle,var(--sf2) 16.5px,transparent 17px);color:var(--tx)}
.pp-addc-sub{margin-left:6px;font-size:12.5px;color:var(--mu)}
.pp-addc-sub label{display:inline-flex;align-items:center;gap:8px;min-height:40px;cursor:pointer;line-height:1.3}
.pp-addc-sub input{width:20px;height:20px;margin:0;accent-color:var(--ac)}
.pp-send{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 18px;border:0;border-radius:var(--r-pill);background:var(--ac);color:#fff;font-weight:700;font-size:13.5px;cursor:pointer;opacity:.45;transition:opacity .2s,background .2s,transform .2s var(--ease)}
.pp-addc-box.has-text .pp-send,.pp-send:focus-visible{opacity:1}
.pp-send:hover{background:var(--ac-h)}
.pp-send:active{transform:scale(.97)}
.pp-addc-up .comments-image-uploader{margin-top:6px}
@media (max-width:819px){
	.pp-addc-fields{grid-template-columns:1fr}
	.pp-addc-editor textarea{font-size:16px}
	.pp-addc-sub{order:5;width:100%;margin:4px 0 0}
}

/* Список и дерево */
.pp-comments{min-width:0}
.pp-comments #dle-comments-list,.pp-comments #dle-ajax-comments{display:block}
.pp-comments .comments-tree-list{margin:0;padding:0;list-style:none}
.pp-comments .comments-tree-item{min-width:0;list-style:none}
.pp-comments .comments-tree-list .comments-tree-list{margin-left:26px;padding-left:0;border-left:0}
.pp-comments .comments-tree-list .comments-tree-list .comments-tree-list .comments-tree-list .comments-tree-list .comments-tree-list{margin-left:0}
@media (max-width:819px){
	.pp-comments .comments-tree-list .comments-tree-list{margin-left:14px}
	.pp-c--child{padding-left:12px!important}
	.pp-comments .comments-tree-list .comments-tree-list .comments-tree-list .comments-tree-list{margin-left:0}
}
.pp-c{display:flex;gap:12px;padding:14px 0 6px;border-left:1px solid transparent;min-width:0;scroll-margin-top:calc(var(--head-h) + 16px)}
[id^="comment-id-"]{scroll-margin-top:calc(var(--head-h) + 16px)}
.pp-c--child{padding-left:18px;border-left-color:var(--ln2)}
.pp-c.is-flash{animation:ppFlash 1.6s ease}
@keyframes ppFlash{0%,30%{background:var(--glow)}100%{background:transparent}}
.pp-c-av{position:relative;flex:0 0 auto;width:34px;height:34px}
.pp-c-av a{display:block;border-radius:50%}
.pp-c-av img{display:block;width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--sf2)}
.pp-c-letter{display:block;width:34px;height:34px;border-radius:50%;overflow:hidden;background:var(--sf3);color:var(--tx);font-size:0;line-height:34px;text-align:center}
.pp-c-letter::first-letter{font-size:14px;font-weight:700;text-transform:uppercase}
.pp-c-online{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px var(--bg)}
.pp-c-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.pp-c-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;line-height:1.4}
.pp-c-name{font-weight:700;color:var(--tx)}
.pp-c-name a{color:var(--tx);text-decoration:none}
.pp-c-name a:hover{color:var(--ac);text-decoration:none}
.pp-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:var(--r-pill);font-family:var(--f-mono);font-size:10px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;line-height:normal;white-space:nowrap}
.pp-badge--op{border:1px solid var(--ac);color:var(--ac)}
.pp-badge--best{background:var(--ac2);color:color-mix(in srgb,var(--ac) 22%,#0c0b0a)}
.pp-c-time{font-size:12.5px;color:var(--mu)}
.pp-c-mass{margin-left:auto;display:inline-flex}
.pp-c-mass input{width:16px;height:16px;margin:0;accent-color:var(--ac)}
.pp-c-news{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mu)}
.pp-c-news a{color:var(--tx2);font-weight:600}
.pp-c-text{font-size:15px;line-height:1.6;color:var(--tx2);text-wrap:pretty;overflow-wrap:anywhere;min-width:0}
.pp-c-text>*+*{margin-top:10px}
.pp-c-text img{max-width:100%;height:auto;border-radius:14px}
.pp-c-text a{color:var(--ac)}
.pp-mention,.pp-c-text .comments-user-profile{color:var(--ac);font-weight:700;text-decoration:none;cursor:pointer}
.pp-mention:hover{text-decoration:underline}
.pp-c-images ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.pp-c-images li img{display:block;width:96px;height:96px;object-fit:cover;border-radius:14px}
.pp-c-rank{display:inline-flex;min-width:0}
.pp-c-rank:empty{display:none}
.pp-c-sign{padding-top:6px;border-top:1px dashed var(--ln);font-size:12.5px;color:var(--mu)}
.pp-c-acts{display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin:-5px 0 -5px -8px;font-size:13px}
.pp-cv{display:inline-flex;align-items:center;gap:2px}
.pp-cb{display:inline-grid;place-items:center;width:34px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mu);font-size:13px;cursor:pointer;transition:background .2s,color .2s}
.pp-cb:hover{background:radial-gradient(circle,var(--sf2) 14.5px,transparent 15px);color:var(--tx)}
.pp-cv.is-up .pp-cb--up{color:var(--ac)}
.pp-cv.is-down .pp-cb--down{color:var(--tx)}
.pp-cb--wide{width:auto;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border-radius:var(--r-pill);font-family:var(--f-mono);font-weight:600}
.pp-cs{min-width:28px;text-align:center;font-family:var(--f-mono);font-weight:600;color:var(--tx);white-space:nowrap}
.pp-cv.is-up .pp-cs{color:var(--ac)}
.pp-cs .ratingminus{color:var(--mu)}
.pp-cv--stars .unit-rating{width:80px;height:14px;-webkit-mask-size:16px 14px;mask-size:16px 14px}
.pp-ca{display:inline-flex;align-items:center;gap:6px;height:40px;margin-left:6px;padding:0 12px;border-radius:var(--r-pill);color:var(--mu);font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.pp-ca{position:relative;z-index:0}
.pp-ca::before{content:"";position:absolute;inset:5px 0;z-index:-1;border-radius:var(--r-pill);background:transparent;transition:background .2s}
.pp-ca:hover{background:transparent;color:var(--tx)}
.pp-ca:hover::before{background:var(--sf2)}
.pp-ca--q,.pp-ca--n{margin-left:0;padding:0 10px}
.pp-ca--q{width:34px;padding:0;justify-content:center}
.pp-ca--q .pp-ca-l{display:none}
.pp-ca--q i,.pp-ca--n i{font-size:11px}
.pp-c-tools{display:inline-flex;align-items:center;flex:0 0 auto}
.pp-c-tools:empty{display:none}
.pp-ct{display:inline-grid;place-items:center;width:34px;height:40px;border-radius:50%;color:var(--mu);font-size:11.5px;cursor:pointer;transition:background .2s,color .2s}
.pp-ct:hover{background:radial-gradient(circle,var(--sf2) 14.5px,transparent 15px);color:var(--tx)}
.pp-ct--flag:hover,.pp-ct--del:hover{color:var(--bad)}
.pp-ct--flag i{font-size:11px}
@media (max-width:819px){
	.pp-ca-l,.pp-ca--n,.pp-ca--q{display:none}
	.pp-ca{margin-left:2px;padding:0 10px}
	.pp-c-acts{row-gap:0}
	.pp-c-acts>.pp-c-tools{flex-wrap:nowrap}
	.pp-cb,.pp-ct{flex:0 0 auto;width:30px}
	.pp-cs{min-width:24px}
	.pp-cb--wide{padding:0 8px}
	.pp-author{gap:12px}
	.pp-author-txt{min-width:0}
}
@media (max-width:360px){
	.pp-ca{padding:0 8px}
	.pp-comments .comments-tree-list .comments-tree-list{margin-left:8px}
	.pp-c--child{padding-left:10px!important}
	.pp-cb,.pp-ct{width:28px}
	.pp-ca{padding:0 6px}
	.pp-c--child{gap:10px}
	.pp-c--child .pp-c-av,.pp-c--child .pp-c-av img,.pp-c--child .pp-c-letter{width:28px;height:28px;line-height:28px}
	.pp-c-acts:not(:has(.pp-c-tools>:nth-child(2))){flex-wrap:nowrap}
}

/* Ответ в дереве, правка комментария, массовые действия DLE */
.pp-comments #dlefastreplycomments,.pp-comments .comments-edit-area{margin:6px 0 10px 46px;padding:14px 16px;border-radius:22px;background:var(--sf);border:1px solid var(--ln2)}
.pp-comments .comments-edit-area{margin-left:0}
.pp-comments .comments-edit-area .tox-tinymce{border-radius:14px!important}
.pp-comments #dlefastreplycomments textarea,.pp-comments .comments-edit-area textarea{display:block;width:100%!important;min-height:70px;padding:10px 12px;border:1px solid var(--ln);border-radius:14px;background:var(--sf2);color:var(--tx);font-family:var(--f-sans);font-size:16px;line-height:1.55;outline:0;resize:vertical}
.pp-comments #dlefastreplycomments textarea:focus,.pp-comments .comments-edit-area textarea:focus{border-color:var(--ac)}
.pp-comments #dlefastreplycomments input[type=text],.pp-comments #dlefastreplycomments input[type=email]{width:100%;min-height:42px;margin-bottom:8px;padding:9px 14px;border:1px solid var(--ln);border-radius:14px;background:var(--sf2);color:var(--tx);font-size:16px}
.pp-comments .save-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:10px;flex-wrap:wrap}
.pp-comments .save-buttons button,.pp-comments .save-buttons input[type=button],.pp-comments #dlefastreplycomments>button,.pp-comments #dlefastreplycomments .save-buttons button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--ln2);background:transparent;color:var(--tx);font-weight:700;font-size:13px;cursor:pointer}
.pp-comments .save-buttons input.applychanges,.pp-comments .save-buttons button:last-child,.pp-comments #dlefastreplycomments button[type=submit]{border-color:var(--ac);background:var(--ac);color:#fff}
@media (max-width:819px){.pp-comments #dlefastreplycomments{margin-left:0}}
.pp-comments .mass_comments_action{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px;padding:10px 14px;border-radius:18px;background:var(--sf2);font-size:13px;color:var(--mu)}
.pp-comments .mass_comments_action select{min-height:36px;padding:0 12px;border-radius:12px;border:1px solid var(--ln2);background:var(--sf);color:var(--tx);font-size:13px}
.pp-comments .mass_comments_action .bbcodes{min-height:36px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--ln2);background:transparent;color:var(--tx);font-weight:700;font-size:13px;cursor:pointer}

/* Подсказка @упоминаний (создаёт js/pulsr.js) */
.mention-pop{position:fixed;z-index:8600;max-height:300px;overflow-y:auto;padding:6px;border-radius:18px;background:var(--sf);border:1px solid var(--ln2);box-shadow:var(--sh);animation:rise .18s ease both}
.mention-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:12px;background:transparent;color:var(--tx);text-align:left;cursor:pointer}
.mention-item:hover,.mention-item.on{background:var(--sf2)}
.mention-item img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.mention-item .grow{display:flex;flex-direction:column;min-width:0}
.mention-item b{font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mention-item b .verified{color:var(--ac);font-size:11px}
.mention-item .grow>span{font-family:var(--f-mono);font-size:11px;color:var(--mu)}
.mention-empty{padding:10px 12px;font-size:13px;color:var(--mu)}

/* ---------- Похожие, соседние посты ---------- */
.pp-related{margin-top:14px;display:flex;flex-direction:column;gap:6px}
.pp-h2{margin:0 0 6px;font-family:var(--f-serif);font-weight:600;font-size:28px;line-height:1.1;color:var(--tx)}
.pp-related-list{display:flex;flex-direction:column}
.pp-rel{display:flex;flex-direction:column;gap:6px;padding:12px 0 14px;border-bottom:1px solid var(--ln)}
.pp-rel-t{font-family:var(--f-serif);font-weight:600;font-size:20px;line-height:1.12;color:var(--tx);text-decoration:none;transition:color .2s}
.pp-rel-t:hover{color:var(--ac);text-decoration:none}
.pp-rel-m{font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.pp-rel-m a{color:var(--mu)}
.pp-rel-m a+a::before,.pp-kick-comm a+a::before{content:" / "}
.pp-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pp-nav:not(:has(a)){display:none}
.pp-nav-a{display:flex;flex-direction:column;gap:6px;min-width:0;padding:14px 18px;border-radius:22px;background:var(--sf);border:1px solid var(--ln);color:var(--tx);text-decoration:none;transition:border-color .2s}
.pp-nav-a:hover{border-color:var(--ln2);color:var(--tx);text-decoration:none}
.pp-nav-a--next{grid-column:2;text-align:right}
.pp-nav-k{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mu)}
.pp-nav-a--next .pp-nav-k{justify-content:flex-end}
.pp-nav-t{font-family:var(--f-serif);font-weight:600;font-size:19px;line-height:1.12;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media (max-width:560px){.pp-nav{grid-template-columns:1fr}.pp-nav-a--next{grid-column:auto}}

/* ---------- Опрос (poll.tpl) и опрос сайта (vote.tpl) ---------- */
.pp-pl{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border-radius:22px;background:var(--sf);border:1px solid var(--ln)}
.pp-pl-k{display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ac)}
.pp-pl-all{margin-left:auto;letter-spacing:.06em;color:var(--mu);text-decoration:none}
.pp-pl-all:hover{color:var(--tx);text-decoration:none}
.pp-pl-q{font-family:var(--f-serif);font-weight:600;font-size:24px;line-height:1.12;color:var(--tx)}
.pp-pl-list>div{display:flex;flex-direction:column;gap:8px}
.pp-pl-list .pollanswer,.pp-pl-list .vote{margin:0;padding:0;border:0;background:none;box-shadow:none}
.pp-pl-list .pollanswer label,.pp-pl-list .vote label{display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 16px;border-radius:14px;border:1px solid var(--ln2);background:transparent;color:var(--tx);font-size:14.5px;font-weight:600;line-height:1.35;cursor:pointer;transition:border-color .2s,background .2s}
.pp-pl-list .pollanswer label:hover,.pp-pl-list .vote label:hover{border-color:var(--ac);background:var(--glow)}
.pp-pl-list input{width:18px;height:18px;margin:0;flex:0 0 auto;accent-color:var(--ac)}
.pp-pl-list .pollanswer:has(input:checked) label,.pp-pl-list .vote:has(input:checked) label{border-color:var(--ac);background:var(--glow)}
.pp-pl-list .pollprogress,.pp-pl-list .voteprogress{height:6px;margin:4px 0 10px;border-radius:3px;background:var(--sf3);overflow:hidden}
.pp-pl-list .pollprogress span,.pp-pl-list .voteprogress span{display:block;height:100%;border-radius:3px;background:var(--grad);font-size:0}
.pp-pl-list .pollallvotes{margin-top:4px;font-size:12.5px;color:var(--mu)}
.pp-pl-row{position:relative;display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 16px;border-radius:14px;border:1px solid var(--ln);overflow:hidden;font-size:14.5px;font-weight:600;line-height:1.35;color:var(--tx2)}
.pp-pl-bar{position:absolute;left:0;top:0;bottom:0;width:0;background:color-mix(in srgb,var(--ac) 14%,transparent);transition:width .8s var(--ease)}
.pp-pl-row.is-top{border-color:color-mix(in srgb,var(--ac) 45%,transparent);color:var(--tx)}
.pp-pl-row.is-top .pp-pl-bar{background:color-mix(in srgb,var(--ac) 24%,transparent)}
.pp-pl-t,.pp-pl-p{position:relative}
.pp-pl-t{flex:1;min-width:0}
.pp-pl-p{font-family:var(--f-mono);font-size:13px;color:var(--tx)}
.pp-pl-row.is-mine .pp-pl-t::after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-radius:50%;background:var(--ac);vertical-align:middle}
.pp-pl-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pp-pl-meta{font-size:12.5px;color:var(--mu)}
.pp-pl-meta:empty{display:none}
.pp-pl-btns{display:flex;gap:8px;flex-wrap:wrap}
.pp-pl.is-instant [data-pp-poll-go]{display:none}
.pp-pl--side .pp-pl-q{font-size:21px}

/* ---------- Вложения (attachment.tpl) ---------- */
.pp-att{display:flex;align-items:center;gap:12px;max-width:560px;margin:6px 0;padding:12px 14px;border-radius:18px;background:var(--sf2);border:1px solid var(--ln);font-size:14px;line-height:1.35}
.pp-att-i{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:var(--sf3);color:var(--ac);font-size:16px}
.pp-att-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pp-att-n{font-weight:700;color:var(--tx);text-decoration:none!important;overflow-wrap:anywhere}
a.pp-att-n:hover{color:var(--ac)}
.pp-att-m{font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.pp-att-o{font-size:12.5px;font-weight:600;color:var(--ac);text-decoration:none!important}
.pp-att-d{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:var(--ac);color:#fff!important;text-decoration:none!important}
.pp-att-d:hover{background:var(--ac-h)}
.pp-att--lock .pp-att-i{color:var(--mu)}

/* ---------- Статические страницы (static.tpl) ---------- */
.pp-static{display:flex;gap:48px;align-items:flex-start;justify-content:center;width:100%;min-width:0;animation:rise .4s var(--ease) backwards}
.pp-static-main{flex:1;min-width:0;max-width:720px;display:flex;flex-direction:column;gap:22px}
.pp-body--static{font-size:17px;line-height:1.7}
.pp-toc{width:240px;flex:0 0 240px;position:sticky;top:calc(var(--head-h) + 28px);display:flex;flex-direction:column;gap:2px}
.pp-toc-k{margin-bottom:8px;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mu)}
.pp-toc a{display:flex;gap:10px;padding:8px 0;font-size:14px;line-height:1.35;color:var(--tx2);text-decoration:none;transition:color .2s}
.pp-toc a:hover,.pp-toc a.is-on{color:var(--tx);text-decoration:none}
.pp-toc a span{font-family:var(--f-mono);color:var(--ac)}
@media (max-width:1100px){.pp-toc{display:none!important}}
.pp-rule{display:flex;gap:18px;padding-top:24px;border-top:1px solid var(--ln);scroll-margin-top:calc(var(--head-h) + 20px)}
.pp-body--static>.pp-rule+.pp-rule{margin-top:28px}
.pp-rule-n{flex:0 0 48px;font-family:var(--f-serif);font-style:italic;font-weight:700;font-size:40px;line-height:1;color:var(--ac)}
.pp-rule-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.pp-rule-b h2{margin:0;font-size:28px}
.pp-rule-b p{margin:0;font-size:16px;line-height:1.7}
.pp-rule-b p+p{margin-top:0}
.pp-rule-b .pp-rule-pen{display:block;font-size:12.5px;line-height:1.5;color:var(--mu)}
.pp-rule-b .pp-rule-pen i{margin-right:4px}
.pp-body--static>.kicker,.pp-static-kick{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ac)}
.pp-static.is-rules .pp-body--static>.kicker,.pp-static-kick{order:-1}
.pp-body--static>.lead{font-size:17px;line-height:1.7;color:var(--tx2)}
@media (max-width:560px){.pp-rule{gap:12px}.pp-rule-n{flex-basis:36px;font-size:32px}}
.pp-static-foot{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--ln);font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.pp-static-foot a{color:var(--mu);text-decoration:none}
.pp-static-foot a:hover{color:var(--tx);text-decoration:none}
.pp-static-a{display:inline-flex;align-items:center;gap:6px}

/* ---------- Лайтбокс ---------- */
.pp-lb{position:fixed;inset:0;z-index:8500;display:flex;flex-direction:column;background:rgba(6,5,8,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff;animation:fade .25s ease both;overscroll-behavior:contain}
.pp-lb-top{display:flex;align-items:center;gap:12px;padding:18px 28px}
.pp-lb-av{flex:0 0 auto;width:38px;height:38px;border-radius:50%;object-fit:cover;background:#222}
.pp-lb-who{flex:1;min-width:0}
.pp-lb-name{font-weight:700;font-size:14px;line-height:1.3}
.pp-lb-title{font-size:12.5px;color:rgba(255,255,255,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp-lb-cnt{flex:0 0 auto;padding:5px 10px;border-radius:var(--r-pill);background:rgba(255,255,255,.08);font-family:var(--f-mono);font-size:12px;color:rgba(255,255,255,.7)}
.pp-lb-btn{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-size:14px;cursor:pointer;text-decoration:none;transition:background .2s}
.pp-lb-btn:hover{background:rgba(255,255,255,.14);color:#fff;text-decoration:none}
.pp-lb-x{border:0;background:#fff;color:#111;font-size:15px}
.pp-lb-x:hover{background:#fff;color:#111;opacity:.9}
.pp-lb-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 96px;overflow:hidden;touch-action:pan-y}
.pp-lb-img{display:block;max-width:100%;max-height:100%;min-height:0;object-fit:contain;border-radius:18px;box-shadow:0 40px 120px -30px rgba(0,0,0,.8);cursor:zoom-in;transform-origin:50% 50%;transition:transform .45s var(--ease),border-radius .3s;animation:ppLbIn .4s cubic-bezier(.2,.9,.3,1.05) both;user-select:none;-webkit-user-drag:none}
.pp-lb.is-zoom .pp-lb-img{transform:scale(2.2);border-radius:0;cursor:zoom-out}
@keyframes ppLbIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
.pp-lb-arr{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:52px;height:52px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(20,20,24,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:16px;cursor:pointer;transition:background .2s}
.pp-lb-arr:hover{background:rgba(255,255,255,.16)}
.pp-lb-prev{left:28px}.pp-lb-next{right:28px}
.pp-lb-bot{display:flex;flex-direction:column;align-items:center;gap:12px;padding:14px 28px 26px}
.pp-lb-cap{max-width:640px;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.75);text-align:center}
.pp-lb-thumbs{display:flex;gap:8px;max-width:100%;overflow-x:auto;scrollbar-width:none;padding:2px}
.pp-lb-thumbs::-webkit-scrollbar{display:none}
.pp-lb-th{flex:0 0 auto;width:64px;height:44px;padding:0;border:0;border-radius:10px;background:#222 center/cover no-repeat;cursor:pointer;opacity:.45;transition:opacity .2s,box-shadow .2s}
.pp-lb-th.is-on{opacity:1;box-shadow:0 0 0 2px #fff}
.pp-lb-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.pp-lb-acts:empty{display:none}
.pp-lb-open{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border:0;border-radius:var(--r-pill);background:#fff;color:#111;font-weight:700;font-size:13.5px;cursor:pointer;text-decoration:none}
.pp-lb-open:hover{color:#111;text-decoration:none;opacity:.92}
.pp-lb-open i{font-size:11px}
.pp-lb-save{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;font-weight:700;font-size:13.5px;cursor:pointer}
.pp-lb-save.is-on{color:var(--ac)}
@media (max-width:819px){
	.pp-lb-top{padding:12px 14px}
	.pp-lb-stage{padding:0 8px}
	.pp-lb-arr{width:44px;height:44px}
	.pp-lb-prev{left:10px}.pp-lb-next{right:10px}
	.pp-lb-bot{padding:12px 14px calc(24px + env(safe-area-inset-bottom,0px))}
	.pp-lb-dl{display:none}
}
html.pp-noscroll,html.pp-noscroll body{overflow:hidden}
[data-theme=light] .pp-kick-pin{color:color-mix(in srgb,var(--ac) 78%,#000)}
.pp-vs .ratingtypeplusminus,.pp-vs .ratingtypeplus,.pp-cs .ratingtypeplusminus,.pp-cs .ratingtypeplus{color:inherit!important}.pp-vs .ratingminus,.pp-cs .ratingminus{color:var(--mu)!important}
.pp-comments #dlefastreplycomments .save-buttons button:last-child,.pp-comments #dlefastreplycomments .save-buttons input:last-child{border-color:var(--ac)!important;background:var(--ac)!important;color:#fff!important}

/* «Ещё в «…»» — шаблоны pulsr/feed/more.tpl и more-item.tpl (вид — прототип PulsrPost: без карточки) */
.pp-more{display:flex;flex-direction:column;gap:14px}
.pp-more-head{display:flex;align-items:baseline;gap:10px}
.pp-more-title{flex:1;min-width:0;margin:0;font-family:var(--f-serif);font-weight:600;font-size:24px;line-height:normal;color:var(--tx)}
.pp-more-all{font-size:13px;font-weight:600;color:var(--ac);text-decoration:none}
.pp-more-all:hover{text-decoration:none;opacity:.85}
.pp-more-list{display:flex;flex-direction:column;gap:14px}
.pp-mi{display:flex;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--ln);color:var(--tx);text-decoration:none}
.pp-mi:hover{text-decoration:none;color:var(--tx)}
.pp-mi-img{flex:0 0 auto;width:76px;height:76px;border-radius:14px;object-fit:cover;background:var(--sf2)}
.pp-mi-b{display:flex;flex-direction:column;gap:6px;min-width:0}
.pp-mi-t{font-family:var(--f-serif);font-weight:600;font-size:19px;line-height:1.1;transition:color .2s}
.pp-mi:hover .pp-mi-t{color:var(--ac)}
.pp-mi-m{font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.pp-mi-m i{margin-right:4px}
/* Ответ в дереве — форма DLE (#dlefastreplycomments) в виде формы Pulsr */
.pp-comments #dlefastreplycomments{display:flex;flex-direction:column;gap:10px;margin:6px 0 10px 46px;padding:14px 16px;border-radius:22px;background:var(--sf);border:1px solid var(--ln);font-size:13px;color:var(--mu)}
.pp-comments #dlefastreplycomments:focus-within{border-color:var(--ln2)}
.pp-comments #dlefastreplycomments form{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.pp-comments #dlefastreplycomments .commentsreplyname,.pp-comments #dlefastreplycomments .commentsreplymail{float:none!important;width:calc(50% - 4px)!important;margin:0!important;padding:0!important}
.pp-comments #dlefastreplycomments form>div[style*="clear"]{display:none}
.pp-comments #dlefastreplycomments.pp-reply input.field{width:100%!important;min-height:42px;margin:0;padding:9px 14px;border-radius:14px;border:1px solid var(--ln);background:var(--sf2);color:var(--tx);font-size:16px}
.pp-comments #dlefastreplycomments.pp-reply input.field:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--glow);outline:0}
.pp-comments #dlefastreplycomments .bb-editor{width:100%;margin:0;padding:0;border:0;background:none}
.pp-comments #dlefastreplycomments.pp-reply textarea{display:block;width:100%!important;height:51px;min-height:51px;padding:2px 0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;outline:0;color:var(--tx);font-size:15px;line-height:1.55;resize:vertical}
.pp-comments #dlefastreplycomments .dle-captcha{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;padding:0!important}
.pp-comments #dlefastreplycomments .dle-captcha a{display:inline-flex;flex:0 0 auto}
.pp-comments #dlefastreplycomments .dle-captcha input.field{flex:1;min-width:150px;max-width:240px;width:auto!important}
.pp-comments #dlefastreplycomments .dle-captcha img,.pp-addc-capimg img{display:block;width:auto;height:44px;border-radius:12px;background:#fff}
:root:not([data-theme=light]) .pp-comments #dlefastreplycomments .dle-captcha img,:root:not([data-theme=light]) .pp-addc-capimg img{filter:invert(.9) hue-rotate(180deg)}
.pp-comments #dlefastreplycomments .save-buttons{margin-top:0!important;padding:0!important}
@media (max-width:819px){
	.pp-comments #dlefastreplycomments{margin-left:0}
	.pp-comments #dlefastreplycomments .commentsreplyname,.pp-comments #dlefastreplycomments .commentsreplymail{width:100%!important}
	.pp-comments #dlefastreplycomments.pp-reply textarea{font-size:16px}
}
.pp-comments #dlefastreplycomments .dle-captcha input.field{height:44px;min-height:44px}
/* «Правила» — как PulsrService: оглавление слева, статья следом (не по центру), без «Назад» */
.pp-static.is-rules{justify-content:flex-start}
.pp-static.is-rules .pp-back{display:none}
.pp-title--static{font-size:60px;letter-spacing:normal}
.pp-rule-b h2{letter-spacing:normal}
@media (max-width:819px){.pp-title--static{font-size:38px}}
.pp-static-kick{line-height:normal;margin-bottom:-10px}
.pp-static.is-rules .pp-title--static{margin-bottom:-6px}
@media (max-width:400px){.pp-author-act,.pp-author .pp-author-edit{flex:0 0 100%}.pp-author-act{display:flex}}
.pp-comments #dlefastreplycomments label{display:inline-flex;align-items:center;gap:8px;min-height:40px;cursor:pointer}.pp-comments #dlefastreplycomments input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--ac)}
/* Пост в карточке, как карточки ленты (решение владельца 10.10.2026, отступ от прототипа) */
.pp-main{padding:36px 40px 40px;border:1px solid var(--ln);border-radius:30px;background:var(--sf)}
[data-theme=light] .pp-main{box-shadow:0 1px 2px rgba(20,18,28,.04),0 12px 40px -24px rgba(20,18,28,.18)}
.pp-side .pp-more{padding:22px;border:1px solid var(--ln);border-radius:26px;background:var(--sf)}
@media (max-width:819px){.pp-main{padding:20px 16px 24px;border-radius:24px}}
/* Ответ и правка комментария: панель фото/@/эмодзи (js/post.js tools()), эмодзи, окно загрузки фото — LESSONS_VELORA ловушки 4–5 */
.pp-comments .pp-rtools{gap:2px;margin:-4px 0 -2px -8px}
.pp-comments .comments-edit-area .pp-rtools{margin:6px 0 0 -8px}
.pp-tool.on,.pp-tool[aria-expanded=true]{color:var(--ac)}
.pp-rhint{margin-left:auto;font-size:12px;color:var(--mu)}
@media (max-width:819px),(pointer:coarse){.pp-rhint{display:none}}
.pp-comments .pp-up-area{margin:0}
.pp-comments .pp-up-area>a[hidden]{display:none!important}
.pp-emoji-pop{position:absolute;z-index:8600;display:grid;grid-template-columns:repeat(8,36px);gap:2px;max-width:calc(100vw - 16px);padding:8px;border-radius:18px;background:var(--sf);border:1px solid var(--ln2);box-shadow:var(--sh);animation:rise .18s ease both}
.pp-emoji-pop button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:10px;background:transparent;font-size:20px;line-height:1;cursor:pointer}
.pp-emoji-pop button:hover,.pp-emoji-pop button:focus-visible{background:var(--sf2);outline:0}
@media (max-width:400px){.pp-emoji-pop{grid-template-columns:repeat(7,36px)}}
.comments-image-uploader-area,.comments-image-uploader{width:100%}
.comments-image-uploader .plupload_wrapper{border:0!important;background:none!important}
.comments-image-uploader .plupload_container{width:auto!important;height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:none!important}
.comments-image-uploader .plupload_header,.comments-image-uploader .plupload_filelist_header,.comments-image-uploader .ui-resizable-handle{display:none!important}
.comments-image-uploader .plupload_content{position:relative!important;inset:auto!important;height:auto!important;min-height:96px;padding:10px!important;border:1px dashed var(--ln2)!important;border-radius:16px!important;background:var(--sf2)!important;overflow:visible!important}
.comments-image-uploader .plupload_droptext{position:absolute!important;inset:0!important;display:flex!important;align-items:center;justify-content:center;width:auto!important;height:auto!important;margin:0!important;padding:0 16px!important;line-height:1.4!important;font-size:13.5px!important;color:var(--mu)!important;background:none!important;text-align:center;pointer-events:none;transform:none!important}
.comments-image-uploader .plupload_droptext::before{content:none!important}
.comments-image-uploader .plupload_filelist_content{position:relative;z-index:1}
.comments-image-uploader .plupload_filelist_footer{position:static!important;display:block!important;width:100%!important;height:auto!important;margin:10px 0 0!important;padding:0!important;border:0!important;background:none!important}
.comments-image-uploader .plupload_filelist_footer tbody,.comments-image-uploader .plupload_filelist_footer tr{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px 12px;width:100%}
.comments-image-uploader .plupload_filelist_footer td{display:flex!important;align-items:center;gap:8px;width:auto!important;height:auto!important;padding:0!important;border:0!important;font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_name{flex:1 1 100%;min-width:0;flex-direction:column;align-items:stretch}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_action{display:none!important}
.comments-image-uploader .plupload_buttons{display:flex!important;flex-wrap:wrap;gap:8px;font-size:0}
.comments-image-uploader .plupload_button{display:inline-flex!important;align-items:center;gap:6px;height:36px!important;margin:0!important;padding:0 16px!important;border:1px solid var(--ln2)!important;border-radius:var(--r-pill)!important;background:transparent!important;color:var(--tx)!important;font-family:var(--f-sans)!important;font-size:13px!important;font-weight:700!important;line-height:34px!important;text-decoration:none!important;box-shadow:none!important}
.comments-image-uploader .plupload_button .ui-icon{display:none!important}
.comments-image-uploader .plupload_button.plupload_start{border-color:var(--ac)!important;background:var(--ac)!important;color:#fff!important}
.comments-image-uploader .plupload_button.ui-state-disabled,.comments-image-uploader .plupload_button.plupload_disabled{opacity:.45}
.comments-image-uploader .plupload_button.plupload_hidden,.comments-image-uploader .plupload_hidden{display:none!important}
.comments-image-uploader .plupload_started{width:100%}
.comments-image-uploader .plupload_progress_container{height:6px;border:0!important;border-radius:3px;background:var(--sf3)!important}
.comments-image-uploader .plupload_progress_container .ui-progressbar-value{height:6px;border:0!important;border-radius:3px;background:var(--ac)!important}
.comments-image-uploader .plupload_view_thumbs .plupload_file{border-color:var(--ln)!important;background:var(--sf)!important;border-radius:12px!important;box-shadow:none!important}
.comments-image-uploader .plupload_content:has(.plupload_file) .plupload_droptext{display:none!important}
/* Панель оценки на узком экране: кнопки компактнее, лишнее — в меню «⋯» (post.js barFit) */
@media (max-width:420px){
	.pp-bar{gap:3px;padding:4px}
	.pp-vb,.pp-ib{width:38px;height:38px;font-size:14px}
	.pp-vs{min-width:42px;font-size:14px}
	.pp-bar-sep{margin:0 2px}
}
.pp-bar-more{position:relative;display:inline-flex}
.pp-bar-menu{position:absolute;right:-5px;bottom:calc(100% + 12px);z-index:20;display:flex;flex-direction:column;gap:2px;min-width:200px;padding:6px;border-radius:18px;background:var(--sf);border:1px solid var(--ln2);box-shadow:var(--sh);animation:rise .18s ease both}
.pp-bar-menu[hidden]{display:none}
.pp-bar-menu>a{display:flex;text-decoration:none;color:inherit}
.pp-bar-menu .pp-ib{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;height:42px;padding:0 12px;border-radius:12px;font-size:14px}
.pp-bar-menu .pp-ib::after{content:attr(aria-label);font-family:var(--f-sans);font-size:14px;font-weight:600;color:var(--tx)}
.pp-bar-menu .pp-ib i{width:18px;text-align:center}
.pp-bar .pp-ib,.pp-bar .pp-vb,.pp-bar>a,.pp-bar .pp-vote{flex:0 0 auto}

/* ---------- Статистика поста (агент X2): блок {ps-post-stats} под постом и страница «Моя статистика» (/mystats/) ---------- */
.pst{position:relative;display:flex;flex-direction:column;gap:18px;margin-top:6px;padding:24px 24px 22px;border-radius:24px;border:1px solid var(--ln);background:radial-gradient(120% 80% at 100% 0%,var(--glow),transparent 60%),var(--sf2);scroll-margin-top:calc(var(--head-h) + 16px);overflow:hidden}
.pst-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pst-head-t{min-width:0}
.pst-kick,.st-kick{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mu)}
.pst-kick i,.st-kick i{font-size:10px;color:var(--ac)}
.pst-t{margin-top:4px;font-family:var(--f-serif);font-weight:600;font-size:30px;line-height:1.05}
.pst-per button{font-family:var(--f-sans)}
.pst-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pst-kpi{display:flex;flex-direction:column;gap:6px;min-width:0;padding:14px 14px 12px;border-radius:18px;background:var(--sf);border:1px solid var(--ln)}
.pst-kpi-l{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mu)}
.pst-kpi-l i{font-size:11px;opacity:.6;cursor:help}
.pst-kpi b{font-size:26px;font-weight:600;line-height:1.05;letter-spacing:-.02em;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.pst-kpi--ac{border-color:color-mix(in srgb,var(--ac) 35%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--ac) 14%,var(--sf)),var(--sf) 70%)}
.pst-kpi--ac b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.pst-bits{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--tx2)}
.pst-bits span{display:inline-flex;align-items:center;gap:6px}
.pst-bits i{color:var(--mu);font-size:11px}
.pst-chart{display:flex;flex-direction:column;gap:10px;padding:16px 16px 10px;border-radius:18px;background:var(--sf);border:1px solid var(--ln)}
.pst-chart-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px 14px;flex-wrap:wrap;font-size:13px}
.pst-chart-h b{font-weight:600}
.pst-leg{display:inline-flex;gap:14px;font-size:12px;color:var(--mu)}
.pst-leg span{display:inline-flex;align-items:center;gap:6px}
.pst-leg i{display:inline-block;width:14px;height:3px;border-radius:2px;background:var(--ac)}
.pst-leg i.is-i{background:var(--mu);opacity:.6}
.pst-plot{position:relative;height:180px;touch-action:pan-y;cursor:crosshair}
.pst-plot svg{display:block;width:100%;height:100%;overflow:visible}
.pst-gl{stroke:var(--ln);stroke-width:1;vector-effect:non-scaling-stroke}
.pst-imp{fill:none;stroke:var(--mu);stroke-opacity:.5;stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.pst-line{fill:none;stroke:var(--ac);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.pst-line.is-draw{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:pstDraw 1.1s var(--ease) forwards}
@keyframes pstDraw{to{stroke-dashoffset:0}}
.pst-area{opacity:0;animation:pstFade .6s .5s var(--ease) forwards}
@keyframes pstFade{to{opacity:1}}
.pst-x{position:relative;height:16px;font-family:var(--f-mono);font-size:10.5px;color:var(--mu)}
.pst-x span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.pst-x span:first-child{transform:none}
.pst-x span:last-child{transform:translateX(-100%)}
.pst-ymax{position:absolute;left:0;top:-2px;font-family:var(--f-mono);font-size:10px;color:var(--mu);pointer-events:none}
.pst-beat{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ac);opacity:0;animation:pstOn .3s 1s forwards,pstBeat 1.6s 1.1s ease-out infinite;pointer-events:none}
@keyframes pstOn{to{opacity:1}}
@keyframes pstBeat{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ac) 55%,transparent)}70%{box-shadow:0 0 0 12px color-mix(in srgb,var(--ac) 0%,transparent)}100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ac) 0%,transparent)}}
.pst-dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--sf);border:3px solid var(--ac);pointer-events:none}
.pst-vl{position:absolute;top:0;bottom:0;width:1px;background:var(--ln2);pointer-events:none}
.pst-tip{position:absolute;top:0;z-index:2;transform:translate(-50%,calc(-100% - 12px));padding:6px 10px;border-radius:10px;background:var(--tx);color:var(--bg);font-size:12px;white-space:nowrap;pointer-events:none}
.pst-tip span{opacity:.7;margin-left:6px;font-size:11px}
.pst-tip.is-below{transform:translate(-50%,14px)}
.pst-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pst-box{display:flex;flex-direction:column;gap:12px;min-width:0;padding:16px;border-radius:18px;background:var(--sf);border:1px solid var(--ln)}
.pst-h3{font-family:var(--f-sans);font-size:13px;font-weight:700;color:var(--tx)}
.pst-src{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none}
.pst-src-r{display:grid;grid-template-columns:minmax(0,1fr) 80px 38px;align-items:center;gap:10px;font-size:12.5px}
.pst-src-n{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--tx2)}
.pst-src-n i{width:14px;text-align:center;color:var(--mu);font-size:11px}
.pst-src-bar{height:6px;border-radius:3px;background:var(--sf3);overflow:hidden}
.pst-src-bar i{display:block;height:100%;width:var(--p);border-radius:3px;background:var(--grad);transform-origin:left;animation:pstBar .8s var(--ease) both}
@keyframes pstBar{from{transform:scaleX(0)}}
.pst-src-r b{text-align:right;font-size:12px;font-weight:500;color:var(--tx)}
.pst-best{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pst-best b{font-size:22px;font-weight:600;color:var(--tx)}
.pst-best span{font-size:12.5px;color:var(--mu)}
.pst-hours{display:flex;align-items:flex-end;gap:5px;height:54px}
.pst-hours i{flex:1;height:var(--h);min-height:3px;border-radius:5px 5px 2px 2px;background:color-mix(in srgb,var(--ac) 30%,var(--sf3));transform-origin:bottom;animation:pstGrow .7s var(--ease) both}
.pst-hours i.is-top{background:var(--grad)}
@keyframes pstGrow{from{transform:scaleY(0)}}
.pst-hours-l{display:flex;justify-content:space-between;margin-top:-6px;font-size:10px;color:var(--mu)}
.pst-none{font-size:13px;color:var(--mu)}
.pst-cmp{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--ac) 9%,var(--sf));font-size:13.5px;line-height:1.45;color:var(--tx2)}
.pst-cmp i{margin-top:3px;color:var(--ac)}
.pst-cmp.is-calm{background:var(--sf2);color:var(--mu)}
.pst-cmp.is-calm i{color:var(--mu)}
.pst-cmp b{font-weight:700;color:var(--tx)}
.pst-cmp b.is-up{color:var(--ok)}
.pst-cmp b.is-down{color:var(--ac)}
.pst-all{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-weight:700;font-size:13.5px}
.pst-all i{font-size:12px;transition:transform .2s}
.pst-all:hover{text-decoration:none}
.pst-all:hover i{transform:translateX(3px)}
/* «Квиз поста» в статистике (quiz.php → ps_qz_pst, данные модуля DLE Quiz PRO) */
.pst-qz-q{display:flex;flex-direction:column;gap:10px;min-width:0}
.pst-qz-q+.pst-qz-q{padding-top:12px;border-top:1px solid var(--ln)}
.pst-qz-h{display:flex;align-items:center;gap:10px;min-width:0}
.pst-qz-t{flex:1;min-width:0;font-family:var(--f-serif);font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pst-qz-type{flex:none;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--ac) 12%,transparent);color:var(--ac);font-size:11.5px;font-weight:700;white-space:nowrap}
.pst-qz-type i{font-size:11px}
.pst-qz-k{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pst-qz-kpi{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border-radius:14px;background:var(--sf2);border:1px solid var(--ln);overflow:hidden}
.pst-qz-kpi b{font-size:22px;font-weight:600;line-height:1.05;letter-spacing:-.02em;color:var(--tx);white-space:nowrap;font-variant-numeric:tabular-nums}
.pst-qz-kpi span{font-size:12px;line-height:1.3;color:var(--mu)}
.pst-qz-ring i{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--sf3)}
.pst-qz-ring i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--p);border-radius:0 3px 3px 0;background:var(--grad);transform-origin:left;animation:pstBar .8s var(--ease) both}
.pst-qz-more{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-weight:700;font-size:13.5px}
.pst-qz-more i{font-size:12px;transition:transform .2s}
.pst-qz-more:hover{text-decoration:none}
.pst-qz-more:hover i{transform:translateX(3px)}
.pf-views--own{color:var(--tx2)}
.pf-views--own i{color:var(--ac)}
.pf-views--own:hover{color:var(--tx);text-decoration:none}
@media (max-width:700px){
	.pst{padding:18px 16px 16px;border-radius:20px}
	.pst-t{font-size:26px}
	.pst-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
	.pst-kpi b{font-size:22px}
	.pst-grid{grid-template-columns:minmax(0,1fr)}
	.pst-qz-k{grid-template-columns:repeat(2,minmax(0,1fr))}
	.pst-qz-h{flex-wrap:wrap;gap:6px 10px}
	.pst-qz-t{flex-basis:100%;white-space:normal;font-size:17px}
	.pst-plot{height:150px}
	.pst-per{width:100%;display:flex}
	.pst-per button{flex:1}
}

/* «Моя статистика» (stats.php → ps_stats_page) */
.st-page{display:flex;flex-direction:column;gap:18px;max-width:1200px;margin:0 auto;min-width:0}
.st-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.st-who{display:flex;align-items:center;gap:16px;min-width:0}
.st-who .av{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.st-who .grow{display:flex;flex-direction:column;gap:4px;min-width:0}
.st-h1{font-family:var(--f-serif);font-weight:600;font-size:52px;line-height:1;letter-spacing:normal}
.st-who .muted{font-size:13.5px}
.st-period a{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;font-size:13px}
.st-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.st-kpi{--c:var(--ac);display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 14px 12px;border-radius:20px;background:var(--sf);border:1px solid var(--ln);color:var(--tx);text-align:left;cursor:pointer;font:inherit;transition:border-color .2s,transform .2s,box-shadow .2s}
.st-kpi:hover{transform:translateY(-1px);border-color:var(--ln2)}
.st-kpi.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 18%,transparent)}
.st-kpi-ico{display:grid;place-items:center;width:30px;height:30px;margin-bottom:4px;border-radius:10px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);font-size:13px}
.st-kpi-l{font-size:12.5px;line-height:1.3;color:var(--mu)}
.st-kpi b{font-family:var(--f-mono);font-size:24px;font-weight:600;letter-spacing:-.02em}
.st-delta{min-height:16px;font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.st-delta.up{color:var(--ok)}
.st-delta.down{color:var(--bad)}
.st-delta.new{color:var(--ac)}
.st-page .card{border-radius:24px}
.st-chart{padding:18px 20px 12px}
.st-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.st-chart-head b{font-family:var(--f-serif);font-size:24px;font-weight:600}
.st-chart-head .muted{font-size:13px}
.st-plot{display:grid;grid-template-columns:auto 1fr;grid-template-rows:220px auto;column-gap:10px}
.st-y{position:relative;grid-row:1;min-width:26px;font-family:var(--f-mono);font-size:10.5px;color:var(--mu);text-align:right}
.st-y span{position:absolute;right:0;transform:translateY(-50%)}
.st-svg{position:relative;grid-row:1;grid-column:2;touch-action:pan-y;cursor:crosshair}
.st-svg svg{display:block;width:100%;height:100%;overflow:visible}
.st-svg path[stroke]{vector-effect:non-scaling-stroke}
.st-grid-l{stroke:var(--ln);stroke-width:1;vector-effect:non-scaling-stroke}
.st-x{position:relative;grid-column:2;height:22px;font-family:var(--f-mono);font-size:10.5px;color:var(--mu)}
.st-x span{position:absolute;top:6px;transform:translateX(-50%);white-space:nowrap}
.st-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--sf);border:3px solid var(--c);transform:translate(-50%,-50%);pointer-events:none}
.st-vline{position:absolute;top:0;bottom:0;width:1px;background:var(--ln2);pointer-events:none}
.st-tipbox{position:absolute;top:0;z-index:2;transform:translate(-50%,calc(-100% - 14px));padding:6px 10px;border-radius:10px;background:var(--tx);color:var(--bg);font-size:12.5px;white-space:nowrap;pointer-events:none}
.st-tipbox span{margin-left:6px;opacity:.7;font-size:11.5px}
.st-tipbox.below{transform:translate(-50%,14px)}
.st-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:start}
.st-box{display:flex;flex-direction:column;gap:12px;padding:18px 20px}
.st-box .card-title{font-size:22px}
.st-box .card-title .muted{margin-left:6px;font-family:var(--f-sans);font-size:12.5px;font-weight:400}
.st-sub{margin-top:6px}
.st-posts{display:flex;flex-direction:column;gap:4px}
.st-post{display:flex;align-items:center;gap:12px;margin:0 -8px;padding:8px;border-radius:14px;color:var(--tx)}
.st-post:hover{background:var(--sf2);text-decoration:none}
.st-rank{width:18px;flex:0 0 auto;font-family:var(--f-mono);font-size:12px;color:var(--mu);text-align:center}
.st-thumb{display:grid;place-items:center;width:48px;height:48px;flex:0 0 auto;border-radius:12px;overflow:hidden;background:var(--sf2);color:var(--mu)}
.st-thumb img{width:100%;height:100%;object-fit:cover}
.st-post .grow{display:flex;flex-direction:column;gap:5px;min-width:0}
.st-post b{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-bar{height:5px;border-radius:99px;background:var(--sf3);overflow:hidden}
.st-bar i{display:block;height:100%;border-radius:99px;background:var(--grad)}
.st-post-m{display:flex;gap:12px;font-family:var(--f-mono);font-size:11.5px;color:var(--mu)}
.st-post-m i{margin-right:4px}
.st-aud{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.st-aud div{display:flex;flex-direction:column;padding:10px 12px;border-radius:14px;background:var(--sf2)}
.st-aud b{font-family:var(--f-mono);font-size:20px;font-weight:600}
.st-aud span{font-size:12px;color:var(--mu)}
.st-spark{height:56px}
.st-spark svg{display:block;width:100%;height:100%}
.st-hours{display:flex;align-items:flex-end;gap:3px;height:70px}
.st-hours i{flex:1;min-height:3px;border-radius:4px 4px 2px 2px;background:color-mix(in srgb,var(--ac) 45%,var(--sf3))}
.st-hours-l{display:flex;justify-content:space-between;margin-top:-6px;font-family:var(--f-mono);font-size:10.5px;color:var(--mu)}
.st-tip{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--ac) 9%,var(--sf));font-size:13px;line-height:1.45;color:var(--tx2)}
.st-tip i{margin-top:2px;color:var(--ac)}
.st-cats{display:flex;flex-direction:column;gap:12px}
.st-cat{display:grid;grid-template-columns:minmax(0,130px) 1fr 40px;align-items:center;gap:10px;font-size:13.5px}
.st-cat-n{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-cat-bar{height:8px;border-radius:99px;background:var(--sf3);overflow:hidden}
.st-cat-bar i{display:block;height:100%;border-radius:99px}
.st-cat b{text-align:right;font-family:var(--f-mono);font-weight:500;font-size:12.5px}
.st-table-wrap{overflow-x:auto;margin:0 -4px}
.st-table{width:100%;border-collapse:collapse;font-size:13.5px}
.st-table th{padding:8px 6px;border-bottom:1px solid var(--ln2);font-family:var(--f-mono);font-size:11px;font-weight:400;color:var(--mu);text-align:right;white-space:nowrap}
.st-table th:first-child{text-align:left}
.st-table td{padding:10px 6px;border-bottom:1px solid var(--ln);text-align:right;white-space:nowrap;font-family:var(--f-mono);font-size:12.5px;font-variant-numeric:tabular-nums}
.st-table td:first-child{min-width:180px;text-align:left;white-space:normal;font-family:var(--f-sans);font-size:13.5px}
.st-table td:first-child a{display:block;color:var(--tx);font-weight:600}
.st-table td:first-child .muted{font-size:12px}
.st-er{display:inline-block;padding:2px 8px;border-radius:99px;background:var(--sf2);font-weight:600}
.st-er.hi{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.st-none{margin:0;font-size:13.5px}
.st-foot{margin:0;font-size:12.5px}
@media (max-width:700px){
	.st-h1{font-size:38px}
	.st-period{width:100%;display:flex}
	.st-period a{flex:1;justify-content:center}
	.st-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
	.st-plot{grid-template-rows:180px auto}
	.st-grid{grid-template-columns:minmax(0,1fr)}
	.st-box{padding:16px}
	.st-aud{grid-template-columns:repeat(3,minmax(0,1fr))}
	.st-table-wrap{margin:0}
}
@media (prefers-reduced-motion:reduce){
	.pst-line.is-draw,.pst-area,.pst-src-bar i,.pst-hours i{animation:none;stroke-dashoffset:0;opacity:1}
	.pst-beat{animation:none;opacity:1}
}
.pf-views.pf-views--own,.pf-acts>a.pf-views--own{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--tx2);text-decoration:none}
.pf-views--own .pf-n{letter-spacing:-.02em}
.pf-views.pf-views--own:hover{background:var(--sf2);color:var(--tx)}
@media (max-width:819px){.pf-acts .pf-views.pf-views--own{display:inline-flex}}
/* V6 (LESSONS_VELORA 27): загрузчик фото в комментарии — строка внизу с отступом, проценты и размер справа моноширинно, на телефоне кнопки во всю ширину */
.comments-image-uploader .plupload_filelist_footer{padding:12px!important;border-radius:0 0 16px 16px!important}
.comments-image-uploader .plupload_filelist_footer tr{gap:8px 12px!important}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_name{flex:1 1 260px!important}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_status{margin-left:auto}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_status,.comments-image-uploader .plupload_filelist_footer td.plupload_file_size{font-family:var(--f-mono);font-size:12px!important;white-space:nowrap;font-variant-numeric:tabular-nums}
.comments-image-uploader .plupload_filelist_footer td.plupload_file_size::before{content:"·";margin-right:8px;color:var(--mu)}
.comments-image-uploader .plupload_filelist_footer:not(:has(.plupload_started:not(.plupload_hidden))) td.plupload_file_status,.comments-image-uploader .plupload_filelist_footer:not(:has(.plupload_started:not(.plupload_hidden))) td.plupload_file_size{display:none!important}
.comments-image-uploader .plupload_buttons .plupload_button{justify-content:center;white-space:nowrap;flex:0 1 auto}
.comments-image-uploader .plupload_started{display:flex;align-items:center;gap:10px;font-size:12px}
.comments-image-uploader .plupload_progress{flex:1}
.comments-image-uploader .plupload_clearer{display:none}
@media (max-width:600px){
	.comments-image-uploader .plupload_buttons{width:100%}
	.comments-image-uploader .plupload_buttons .plupload_button{flex:1 1 0;padding:0 10px!important}
	.comments-image-uploader .plupload_filelist_footer td.plupload_file_name{flex-basis:100%!important}
}

/* ---------- 19.10.2026 (отзыв покупателя «очень убого» на телефоне): форма комментария и ответа ----------
   Поле растёт само (js/post.js grow) — без уголка resize и полосы прокрутки; «Отправить» пустой формы — серая, а не бледно-рыжая.
   Телефон: аватар не отъедает ширину, поле во всю ширину карточки, иконки и «Отправить» одной строкой, подписка — тонкой строкой под ними. */
.pp-addc-editor textarea,.pp-comments #dlefastreplycomments.pp-reply textarea{resize:none;overflow-y:hidden;scrollbar-width:none}
.pp-addc-editor textarea::-webkit-scrollbar,.pp-comments #dlefastreplycomments.pp-reply textarea::-webkit-scrollbar{display:none}
.pp-addc-editor textarea.is-max,.pp-comments #dlefastreplycomments.pp-reply textarea.is-max{overflow-y:auto}
.pp-addc-box:not(.has-text) .pp-send{opacity:1;background:var(--sf3);color:var(--mu)}
.pp-addc-box:not(.has-text) .pp-send:hover{background:var(--sf3)}
@media (max-width:600px){
	.pp-addc{gap:0}
	.pp-addc-av{display:none}
	.pp-addc-box{gap:8px;padding:12px 12px 8px 14px;border-radius:20px}
	.pp-addc-editor textarea{height:46px;min-height:46px}
	.pp-addc-tools{flex-wrap:wrap;gap:0;margin:0 -4px 0 -8px}
	.pp-tool{width:38px;height:38px;font-size:15px}
	.pp-send{height:38px;padding:0 16px;font-size:14px}
	.pp-addc-sub{order:5;width:calc(100% + 12px);margin:6px -4px 0 -8px;padding:4px 8px 0;border-top:1px solid var(--ln);font-size:12.5px}
	.pp-addc-sub label{min-height:36px;gap:8px;white-space:nowrap}
	.pp-addc-sub input{width:18px;height:18px}
	.pp-addc-fields{gap:6px}
	.pp-addc-guest{font-size:12.5px;line-height:1.45}
	.pp-comments #dlefastreplycomments{padding:12px 12px 10px 14px;border-radius:20px}
	.pp-comments #dlefastreplycomments.pp-reply textarea{height:46px;min-height:46px}
	.pp-comments #dlefastreplycomments label{white-space:nowrap;font-size:12.5px}
	.pp-comments #dlefastreplycomments input[type=checkbox]{width:18px;height:18px}
}
/* Ответ в дереве на телефоне: иконки слева и «Отменить / Ответить» справа одной строкой, подписка — тонкой строкой ниже */
@media (max-width:600px){
	.pp-comments #dlefastreplycomments.pp-reply{flex-flow:row wrap;align-items:center;gap:8px}
	.pp-comments #dlefastreplycomments.pp-reply>*{flex:1 1 100%;order:2}
	.pp-comments #dlefastreplycomments.pp-reply>.pp-addc-reply{order:1}
	.pp-comments #dlefastreplycomments.pp-reply>form{display:contents}
	.pp-comments #dlefastreplycomments.pp-reply>form>*{flex:1 1 100%;order:2}
	.pp-comments #dlefastreplycomments.pp-reply>form>.pp-rtools{flex:0 0 auto;order:4;margin:0 0 0 -8px}
	.pp-comments #dlefastreplycomments.pp-reply>.save-buttons{flex:0 0 auto;order:5;margin-left:auto!important;gap:6px}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons input,.pp-comments #dlefastreplycomments.pp-reply .save-buttons button{min-height:36px;padding:0 14px!important;font-size:13.5px}
	.pp-comments #dlefastreplycomments.pp-reply>form>div:has(>label>input[type=checkbox]){order:6;margin:2px -4px 0 -6px;padding:2px 6px 0;border-top:1px solid var(--ln)}
	.pp-comments #dlefastreplycomments.pp-reply>form>div:has(>label>input[type=checkbox]) label{min-height:34px}
}
/* п. 11: прячется вниз за нижнее меню (js/post.js), возвращается при прокрутке вверх */
@media (max-width:819px){
	.pp-bar{transition:transform .28s var(--ease),opacity .2s}
	.pp-bar.is-away{transform:translateY(calc(100% + 110px));opacity:0;pointer-events:none}
}
@media (prefers-reduced-motion:reduce){.pp-bar{transition:none}}
/* п. 13: метка «автор поста» не путается с рангом «Автор» — обычные буквы, мягкая заливка, перо-ручка; дата на телефоне — всегда строкой под именем */
.pp-badge--op{gap:5px;padding:2px 8px;border:0;background:color-mix(in srgb,var(--ac) 12%,transparent);color:var(--ac);font-family:var(--f-sans);font-size:11.5px;font-weight:600;letter-spacing:0;text-transform:none}
.pp-badge--op i{font-size:9.5px}
@media (max-width:600px){
	.pp-c-meta{row-gap:2px}
	.pp-c-meta>.pp-c-time{flex:0 0 100%;order:9}
}
/* 19.10.2026 (владелец: «компактнее форма ответа»): на телефоне иконки слева, справа «✕ Отменить» (текст — если влезает,
   иначе только ✕) и компактное «Ответить» — всегда одной строкой, 320–600. Кнопка .pp-rx — js/post.js replyForm(), жмёт
   скрытую .cancelchanges DLE; на ПК — кнопки DLE как были. */
.pp-rx,.pp-comments #dlefastreplycomments .save-buttons .pp-rx{display:none}
@media (max-width:600px){
	.pp-comments #dlefastreplycomments.pp-reply{container:ppr/inline-size;column-gap:4px}
	.pp-comments #dlefastreplycomments.pp-reply>form>.pp-rtools{flex-wrap:nowrap;gap:0;margin:0 0 0 -8px}
	.pp-comments #dlefastreplycomments.pp-reply>form>.pp-rtools .pp-tool{width:34px;height:34px;font-size:14.5px}
	.pp-comments #dlefastreplycomments.pp-reply>.save-buttons{flex-wrap:nowrap;align-items:center;gap:2px;margin-right:-4px}
	.pp-comments #dlefastreplycomments.pp-reply>.save-buttons .cancelchanges{display:none}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:34px;min-height:34px;padding:0 9px!important;border:0;border-radius:var(--r-pill);background:transparent;color:var(--mu);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx:hover{background:var(--sf2);color:var(--tx)}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx:focus-visible{outline:2px solid var(--ac);outline-offset:1px}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx i{font-size:13px}
	.pp-comments #dlefastreplycomments.pp-reply>.save-buttons .applychanges{min-height:34px;height:34px;padding:0 14px!important;border:0;background:var(--ac);color:#fff;font-size:13px}
	.pp-comments #dlefastreplycomments.pp-reply>.save-buttons .applychanges:hover{background:var(--ac);color:#fff;opacity:.9}
}
@container ppr (max-width:319px){
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx{padding:0!important;width:34px}
	.pp-comments #dlefastreplycomments.pp-reply .save-buttons .pp-rx span{display:none}
}
