/* Стыковка DLE-шаблона The88788: динамические case-card / price-row.
   Подключается после styles.css. */

/* Теги кейсов приходят из перекрёстного доп. поля case_tags ссылками - стилизуем как прежние span */
.tags a{border:1px solid var(--line);border-radius:20px;padding:4px 9px;font-size:9px;color:var(--color-aab2ab);text-decoration:none}
.tags a:hover{color:var(--text);border-color:var(--muted)}

/* В арт-блоке карточки лежат все 4 декорации, показываем только свою (класс из case_art) */
.case-art .network,.case-art .server-stack,.case-art .schema-code,.case-art .bars{display:none}
.case-art.art-vpn .network{display:flex}
.case-art.art-server .server-stack{display:flex}
.case-art.art-schema .schema-code{display:block}
.case-art.art-parser .bars{display:flex}

/* Страницы разделов (не-главные) */
.page-section{padding-top:12px;min-height:50vh}
.page-section .case-list{margin-top:8px}
.price-name a{color:inherit;text-decoration:none}
.price-name a:hover{color:var(--acid)}
.file-card{flex-direction:column;align-items:flex-start;gap:16px}
.file-actions{display:flex;gap:10px;flex-wrap:wrap}

/* Полная новость */
.fullstory{padding-top:40px;max-width:860px}.fullstory-body a{color:var(--acid)}.fullstory-body a:hover{filter:brightness(1.15)} section.comments{margin-top:64px}
.fullstory-art{height:280px;margin-bottom:22px}
.fullstory-meta{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 16px}
.fullstory-meta span{border:1px solid var(--line);border-radius:8px;padding:5px 11px;font-size:10px;color:var(--color-aab2ab)}.fullstory-meta a,.fullstory-meta .cat-link{display:inline-block;color:var(--color-aab2ab);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:5px 11px;font-size:10px;transition:.2s}.fullstory-meta .cat-links{border:0;padding:0;background:none;display:inline-flex;flex-wrap:wrap;gap:8px}.fullstory-meta a:hover,.fullstory-meta .cat-link:hover{color:var(--acid);border-color:var(--acid)}
.fullstory-title{font-size:clamp(26px,4vw,40px);line-height:1.12;margin:0 0 18px}
.fullstory-body{margin-top:22px;color:var(--color-c7cec7);font-size:15px;line-height:1.7}
.fullstory-body p{margin:0 0 14px}
.fullstory-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:12px}
.fullstory-tags a{color:var(--acid);text-decoration:none;font-weight:600}
.fullstory-tags a:hover{filter:brightness(1.15)}
.tags-icon{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;background:var(--acid);flex:0 0 auto}
.fullstory-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.fullstory-edit{margin-top:18px;font-size:12px;color:var(--muted)}

/* UniForm: форма обратной связи в кислотной контакт-секции */
.contact-form-wrap{grid-column:1/-1}
.contact-form-wrap .uf-wrapper{background:var(--color-10120f);color:var(--color-f1f4ed);border-radius:var(--radius);padding:26px;max-width:100%;width:100%;box-sizing:border-box}
.contact-form-wrap .uf-content{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}
.contact-form-wrap .uf-field:has(textarea){grid-column:1/-1}
.contact-form-wrap .uf-field:has(.uf-btn){grid-column:1/-1}
.contact-form-wrap .uf-field:has(.uf-btn) .uf-label{display:none}
.contact-form-wrap .uf-field:has(.uf-btn) .uf-btn{width:100%}
@media (max-width:640px){.contact-form-wrap .uf-content{grid-template-columns:1fr}.contact-form-wrap .uf-wrapper{padding:18px}}
.contact-form-wrap .mfp-close{display:none}
.contact-form-wrap .uf-header{font:600 14px Unbounded;margin-bottom:16px}
.contact-form-wrap .uf-field{margin-bottom:14px}
.contact-form-wrap .uf-label{color:var(--color-9da69e);font-size:12px;margin-bottom:5px}
.contact-form-wrap .uf-input{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.contact-form-wrap .uf-input:focus{outline:none;border-color:var(--acid)}
.contact-form-wrap textarea.uf-input{min-height:110px;resize:vertical}
.contact-form-wrap .uf-btn{background:var(--acid);color:var(--color-10120f);border:0;border-radius:10px;padding:12px 24px;font-weight:800;font-size:13px;cursor:pointer}
.contact-form-wrap .uf-btn:hover{filter:brightness(1.07)}
.contact-form-wrap .uf-alert-error{color:var(--color-ff7a45);font-size:13px;margin-bottom:12px}
.contact-form-wrap .uf-alert-error ul{margin:6px 0 0;padding-left:18px}
.contact-form-wrap .uf-alert-success{color:var(--acid);font-size:14px}

/* Комментарии (переиспользуем uf-стили формы на тёмной панели) */
.addcomment{background:var(--color-10120f);color:var(--color-f1f4ed);border-radius:var(--radius);padding:26px;margin-top:30px}
.addcomment .uf-header{font:600 14px Unbounded;margin-bottom:16px;color:var(--acid)!important}
.addcomment textarea#comments{background:var(--color-10120f);color:var(--color-f1f4ed);border:1px solid var(--line);border-radius:10px;padding:12px 13px}
.addcomment .tox-tinymce{border:1px solid var(--line);border-radius:10px}
/* Заголовок обсуждения в полных публикациях: меньше и во всю ширину (главная не затронута) */
.section-heading--comments{grid-template-columns:1fr;margin-bottom:28px}
.section-heading--comments>div{flex-wrap:wrap;gap:8px 16px}
.section-heading--comments h2{font-size:22px;line-height:1.3}
.addcomment .uf-field{margin-bottom:14px}
.addcomment .uf-label{color:var(--color-9da69e);font-size:12px;margin-bottom:5px}
.addcomment .uf-input{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.addcomment .uf-input:focus{outline:none;border-color:var(--acid)}
.addcomment .uf-btn{background:var(--acid);color:var(--color-10120f);border:0;border-radius:10px;padding:12px 24px;font-weight:800;font-size:13px;cursor:pointer}
.addcomment .uf-subscribe label{color:var(--color-9da69e);font-size:13px;display:flex;gap:8px;align-items:center}
.addcomment .uf-sec{display:flex;gap:10px;align-items:center}
.addcomment .uf-sec img{border-radius:8px}
.comment{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 20px;margin:0 0 12px;background:var(--color-10120f);border:1px solid var(--line);border-radius:16px}
ol.comments-tree-list{list-style:none;margin:0;padding:0}
ol.comments-tree-list ol.comments-tree-list{margin:12px 0 0 20px;padding:0 0 0 16px;border-left:1px solid var(--line)}
li.comments-tree-item{list-style:none;margin:0}
.comment-mass{display:inline-flex}
.comment-mass .form-check-label{display:inline-flex;align-items:center;cursor:pointer;user-select:none}
.comment-mass .form-check-input{appearance:none;width:17px;height:17px;flex-shrink:0;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--color-0d100e);cursor:pointer;transition:.15s}
.comment-mass .form-check-input:checked{background:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 3px var(--color-0d100e)}
.comment-avatar{width:44px;height:44px;border-radius:12px;object-fit:cover;display:grid;place-items:center;background:var(--color-20251f);color:var(--acid);font:700 10px Unbounded;overflow:hidden;text-transform:uppercase}
.comment-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.comment-meta-right{display:flex;align-items:center;gap:14px}
.comment-author{display:flex;gap:10px;align-items:baseline;font-weight:800;font-size:13px}
.comment-author a{color:var(--text);text-decoration:none}
.comment-badge{border:1px solid var(--acid);color:var(--acid);border-radius:20px;padding:2px 8px;font-size:9px;font-weight:600}
.comment-group{color:var(--muted);font-size:10px;font-weight:500}
.comment-date{color:var(--muted);font-size:11px}
.comment-signature{color:var(--muted);font-size:11px;border-left:2px solid var(--line);padding-left:10px;margin-bottom:8px}
.comment-text{font-size:14px;color:var(--color-c7cec7);line-height:1.6}
.comment-text p{margin:0 0 10px}
.comment-tools{display:flex;gap:14px;margin-top:10px;font-size:12px;font-weight:700}
.comment-tools a{color:var(--muted);text-decoration:none}
.comment-tools a:hover{color:var(--text)}
.comment-rate{display:inline-flex;align-items:center;gap:7px;margin-left:auto}
.comment-rate a{display:inline-flex;color:var(--muted);text-decoration:none;transition:color .2s}
.comment-rate a:hover{color:var(--acid)}
.comment-like{display:inline-flex}
.comment-rate svg{width:14px;height:14px;fill:currentColor}
.comment-rate-num{font:800 12px Manrope;color:var(--text)}

/* Раздел Файлы: layout лента + сайдбар */
.cat-toolbar{display:flex;align-items:center;gap:8px;margin:8px 0 18px}
.cat-toolbar-label{font-size:11px;color:var(--muted);margin-right:4px}
.cat-toolbar button{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--muted);padding:8px 14px;font:700 12px Manrope,Arial,sans-serif;cursor:pointer}
.cat-toolbar button:hover{color:var(--text);border-color:var(--muted)}
.cat-toolbar button.active{border-color:var(--acid);color:var(--acid)}
.cat-layout{display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:981px){.cat-layout{grid-template-columns:minmax(0,1fr) 320px}}
.cat-main{min-width:0}
.cat-sidebar{min-width:0}

/* Карточка файла: вид Список (по умолчанию) */
.files-list{display:flex;flex-direction:column;gap:18px}
.file-item{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;background:var(--panel,var(--color-14170f));border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.file-thumb img{width:100%;height:100%;min-height:120px;object-fit:cover;border-radius:12px;display:block}
.file-thumb-icon{display:flex;align-items:center;justify-content:center;width:100%;min-height:120px;border-radius:12px;background:var(--color-1c211a);color:var(--acid);font:700 20px Unbounded;text-decoration:none}
.file-body{min-width:0;display:flex;flex-direction:column}
.file-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;align-items:center}
.file-meta span{border:1px solid var(--line);border-radius:8px;padding:5px 11px;font-size:10px;color:var(--color-aab2ab)}
.file-meta .file-cats{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center;border:0;padding:0;background:none}
.file-cats .cat-link{color:var(--color-aab2ab);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:5px 11px;font-size:10px;margin:0;background:none;transition:.2s}
.file-cats .cat-link:hover{color:var(--acid);border-color:var(--acid)}
.file-edit-link{color:var(--muted);font-size:11px;font-weight:600;cursor:pointer}
a:hover>.file-edit-link{color:var(--acid)}
.file-body h3{margin:0 0 8px;font-size:18px;line-height:1.25}
.file-body h3 a{color:var(--text);text-decoration:none}
.file-body h3 a:hover{color:var(--acid)}
.file-body p{margin:0 0 14px;font-size:13px;color:var(--color-c7cec7);line-height:1.6}
.file-foot{margin-top:auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.file-foot .file-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.file-foot .file-edit-grid{display:none}
.file-author{font-weight:800;color:var(--text)}
.file-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.file-dl{padding:9px 16px}

/* Карточка файла: вид Плитка (две колонки) */
.files-list.view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.files-list.view-grid .file-item{grid-template-columns:1fr;padding:0;overflow:hidden;display:flex;flex-direction:column}
.files-list.view-grid .file-body{flex:1;display:flex;flex-direction:column}
.files-list.view-grid .file-thumb img,.files-list.view-grid .file-thumb-icon{border-radius:0;min-height:0;aspect-ratio:16/10}
.files-list.view-grid .file-body{padding:16px 18px 18px}

.files-list.view-grid .file-foot{align-items:center;flex-direction:row;gap:10px}
.files-list.view-grid .file-edit-inline{display:none}
.files-list.view-grid .file-edit-grid{display:inline}
.files-list.view-grid .file-actions{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
@media(max-width:640px){.files-list.view-grid{grid-template-columns:1fr}}
@media(max-width:520px){.file-item{grid-template-columns:1fr}.file-thumb img,.file-thumb-icon{min-height:0;aspect-ratio:16/9}}

/* Сайдбар */
.cat-sidebar .side-block{background:var(--panel,var(--color-14170f));border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:18px}
.cat-sidebar .side-block h2{margin:0 0 12px;font:600 12px Unbounded;color:var(--text);text-transform:uppercase;letter-spacing:.06em}
.side-nav{display:flex;flex-direction:column;gap:4px}
.side-nav a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;color:var(--color-c7cec7);text-decoration:none;font-size:13px;font-weight:600}
.side-nav a:hover{background:var(--color-1c211a);color:var(--text)}
.side-nav a.active{background:var(--color-1c211a);color:var(--acid)}
.side-nav i{font-style:normal;font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:12px;padding:1px 8px}
.side-offer p{margin:0 0 14px;font-size:13px;color:var(--color-c7cec7);line-height:1.55}
.files-mini{display:flex;gap:12px;align-items:center;padding:9px 0;border-top:1px solid var(--line);text-decoration:none}
.files-mini:first-of-type{border-top:0}
.files-mini img{width:58px;height:44px;object-fit:cover;border-radius:8px;flex-shrink:0}
.files-mini-icon{flex-shrink:0;width:58px;height:44px;display:grid;place-items:center;border-radius:8px;background:var(--color-1c211a);color:var(--acid);font:700 11px Unbounded}
.files-mini-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.files-mini-body strong{font-size:12.5px;color:var(--text);line-height:1.3}
.files-mini:hover .files-mini-body strong{color:var(--acid)}
.files-mini-body small{font-size:10px;color:var(--muted)}
.files-mini-body small a{color:inherit;text-decoration:none}
.files-mini-body small a:hover{color:var(--acid)}
.side-price .price-row{padding:9px 0}
.side-more{display:inline-block;margin-top:10px;font-size:12px;font-weight:700;color:var(--acid);text-decoration:none}
.footer-nav{margin:6px 0 14px}
.case-list:has(> .register-wrap){display:block}

/* Вход/профиль в шапке */
.header-user{position:relative}
.header-user-link{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:16px;padding:8px 16px;color:var(--text);text-decoration:none;font:700 12px Manrope,Arial,sans-serif}
.header-user-link:hover{border-color:var(--acid);color:var(--acid)}
.header-user-avatar{width:26px;height:26px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--color-1c211a);color:var(--acid);font:700 10px Unbounded}
.header-user-avatar img{width:100%;height:100%;object-fit:cover}
.header-user-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--color-14170f);border:1px solid var(--line);border-radius:12px;padding:8px;display:none;flex-direction:column;z-index:70}
button.header-user-link{background:transparent;cursor:pointer}
.header-user-menu a{padding:8px 10px;border-radius:8px;color:var(--color-c7cec7);text-decoration:none;font-size:12.5px;font-weight:600}
.header-user-menu a:hover{background:var(--color-1c211a);color:var(--text)}

/* Попап входа */
.login-modal{position:fixed;inset:0;z-index:100}
.login-modal[hidden]{display:none}
.login-modal-backdrop{position:absolute;inset:0;background:var(--color-rgba-5-7-6--78-);backdrop-filter:blur(4px);animation:loginBackdropIn .25s ease}
.login-modal-box{position:absolute;top:84px;right:max(16px,calc((100vw - 1370px)/2));width:min(400px,calc(100vw - 32px));background:var(--color-10120f);border:1px solid var(--color-232823);border-radius:16px;padding:30px 28px;color:var(--color-f1f4ed);box-shadow:0 30px 80px var(--color-rgba-0-0-0--5-);transform-origin:top right;animation:loginBoxIn .32s cubic-bezier(.2,.9,.3,1.15)}
@keyframes loginBackdropIn{from{opacity:0}}
@keyframes loginBoxIn{from{opacity:0;transform:translateY(-14px) scale(.96)}}
@media(max-width:700px){.login-modal-box{top:78px;right:12px}}
@media(max-width:980px){.login-modal-box{right:12px}}
.login-modal-close{position:absolute;top:10px;right:12px;background:none;border:0;color:var(--muted);font-size:22px;cursor:pointer;line-height:1}
.login-modal-close:hover{color:var(--text)}
.login-modal-head{font:600 18px Unbounded;margin-bottom:20px}
.login-modal-head em{color:var(--acid);font-style:normal}
.login-field{margin-bottom:14px}
.login-field label{display:block;color:var(--color-9da69e);font-size:12px;margin-bottom:5px}
.login-input{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.login-input:focus{outline:none;border-color:var(--acid)}
.login-submit{width:100%;margin-top:6px;padding:12px 24px;border:0;border-radius:10px;background:var(--acid);color:var(--color-10120f);font-weight:800;font-size:13px;cursor:pointer}
.login-submit:hover{filter:brightness(1.07)}
.login-links{display:flex;justify-content:space-between;margin-top:16px;font-size:12.5px;font-weight:700}
.login-links a{color:var(--muted);text-decoration:none}
.login-links a:hover{color:var(--acid)}

/* Уведомления DLE (jGrowl/DLEPush) */
.DLEPush{position:fixed;top:84px;right:max(16px,calc((100vw - 1370px)/2));z-index:9999;width:min(360px,calc(100vw - 32px));display:flex;flex-direction:column;gap:10px;pointer-events:none}
.DLEPush-notification.wrapper{position:relative;display:flex;align-items:flex-start;gap:10px;background:var(--color-14170f);border:1px solid var(--line);border-radius:12px;padding:13px 38px 13px 14px;color:var(--text);font:600 13px Manrope,Arial,sans-serif;line-height:1.45;box-shadow:0 18px 50px var(--color-rgba-0-0-0--5-);pointer-events:auto}
.DLEPush-notification.push-success{border-color:var(--color-rgba-201-255-63--45-)}
.DLEPush-notification.push-success .DLEPush-icon{color:var(--acid)}
.DLEPush-notification.push-error{border-color:var(--color-rgba-255-122-69--55-)}
.DLEPush-notification.push-error .DLEPush-icon{color:var(--warm,var(--color-ff7a45))}
.DLEPush-icon{flex:0 0 24px;width:24px;height:24px}
.DLEPush-icon svg{width:100%;height:100%}
.DLEPush-message{flex:1;min-width:0}
.DLEPush-header:empty{display:none}
.DLEPush-close{position:absolute;top:8px;right:10px;background:none;border:0;color:var(--muted);font-size:18px;line-height:1;cursor:pointer;padding:2px}
.DLEPush-close:hover{color:var(--text)}
@media(max-width:700px){.DLEPush{top:78px;right:12px}}
@media(max-width:980px){.DLEPush{right:12px}}

/* Форма обратной связи: раскрытие по клику */
.contact-form-collapsed{margin-top:22px;position:relative;z-index:2}
@media (max-width:640px){.contact-form-wrap{position:static;left:auto;right:auto;top:auto;width:100%;min-width:0;margin-top:10px}}
.contact-form-toggle{cursor:pointer}
.contact-method-icon img{display:block;width:22px;height:22px}
.contact-form-toggle .contact-method-icon img{width:28px;height:28px}
.contact-form-toggle:disabled{opacity:.75;cursor:wait}
.contact-form-toggle.is-open{background:var(--color-rgba-255-255-255--5-)}
.contact-form-wrap{opacity:0;transform:translateY(10px);overflow:hidden;transition:opacity 1.5s ease,transform 1.5s ease,height 1.5s ease}
.contact-form-wrap.is-shown{opacity:1;transform:none}

/* Регистрация и служебные страницы аккаунта */
.register-wrap{max-width:460px;margin:40px auto;background:var(--color-10120f);border:1px solid var(--color-232823);border-radius:16px;padding:30px 28px}
.register-wrap .login-modal-head{margin-bottom:18px}
.register-wrap p{color:var(--color-c7cec7);font-size:13.5px;line-height:1.6;margin:0 0 14px}
.register-wrap .form-row{margin-bottom:14px}
.register-wrap .captcha{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.register-wrap .captcha img{border-radius:8px}
.register-submit{width:100%;padding:12px 24px;border:0;border-radius:10px;background:var(--acid);color:var(--color-10120f);font-weight:800;font-size:13px;cursor:pointer}
.register-submit:hover{filter:brightness(1.07)}

/* Профиль пользователя */
/* Шапка внутренних страниц: крошки строкой над заголовком */
.section-heading--page{display:block;margin-bottom:40px}
.page-section>.crumbs{margin-bottom:14px}
.page-h1{font-size:clamp(32px,4vw,56px);line-height:1.1;margin:0 0 28px;color:var(--color-f1f4ed)}
/* Хлебные крошки над заголовком */
.crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.crumbs a{color:var(--muted);text-decoration:none;transition:.2s}
.crumbs a:hover{color:var(--text)}
.crumbs .status-dot{margin-right:0}
.crumb-sep{width:4px;height:4px;border-radius:50%;display:inline-block;background:var(--acid);box-shadow:0 0 8px var(--acid);opacity:.75;flex-shrink:0}
.profile-wrap{width:100%;max-width:860px;margin:40px auto;background:var(--color-10120f);border:1px solid var(--color-232823);border-radius:16px;padding:30px 28px}
.profile-head{display:flex;gap:20px;align-items:center;margin-bottom:24px;flex-wrap:wrap}
.profile-avatar{width:96px;height:96px;border-radius:20px;object-fit:cover;border:1px solid var(--color-2b302c)}
.profile-name{margin:0 0 6px;font:600 22px Unbounded;color:var(--color-f1f4ed)}
.profile-status{display:flex;gap:10px;align-items:center;margin:0 0 10px;font-size:12px;color:var(--color-9da69e)}
.profile-online{color:var(--color-c8f542);font-weight:700}
.profile-offline{color:var(--color-9da69e)}
.profile-group{border:1px solid var(--color-2b302c);border-radius:20px;padding:2px 10px;font-size:10px}
.profile-group [style]{color:var(--color-c8f542) !important;font-weight:600}
.profile-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.profile-action,.profile-actions a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-2b302c);border-radius:10px;padding:8px 14px;color:var(--color-c7cec7);text-decoration:none;font:700 12px Manrope,Arial,sans-serif;cursor:pointer;background:transparent}
.profile-action:hover{border-color:var(--color-c8f542);color:var(--color-c8f542)}
.profile-banned{margin:10px 0 0;color:var(--color-ff9d7a);font-size:13px}
.profile-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:20px}
@media(min-width:720px){.profile-grid--three{grid-template-columns:1fr 1fr 1fr}}
.profile-facts{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:13px}
.profile-facts dt{color:var(--color-9da69e)}
.profile-facts dd{margin:0;color:var(--color-f1f4ed);font-weight:600}
.profile-facts dd a{color:var(--color-c8f542);text-decoration:none;font-size:11px;margin-left:8px}
.profile-facts dd a:hover{text-decoration:underline}
.profile-about{margin-bottom:20px}
.profile-about h2{margin:0 0 8px;font:600 13px Unbounded;color:var(--color-f1f4ed);text-transform:uppercase;letter-spacing:.06em}
.profile-text{color:var(--color-c7cec7);font-size:14px;line-height:1.6}
.profile-settings{margin-top:10px}
.profile-settings-toggle{width:100%;justify-content:center;cursor:pointer}
.profile-settings-body{margin-top:18px;padding-top:18px;border-top:1px solid var(--color-232823)}
.profile-sep{margin:22px 0 12px;font:600 12px Unbounded;color:var(--color-9da69e);text-transform:uppercase;letter-spacing:.06em}
.profile-check{font-size:12.5px;color:var(--color-9da69e)}
.profile-check label{display:flex;gap:8px;align-items:center;cursor:pointer}
.profile-check input[type=checkbox]{accent-color:var(--color-c8f542);width:15px;height:15px}
.login-field>.profile-check{margin-top:10px}
.profile-wrap select,.profile-wrap .login-field select{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.profile-soc{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.profile-soc-link{border:1px solid var(--color-2b302c);border-radius:20px;padding:6px 14px;color:var(--color-c7cec7);text-decoration:none;font:700 12px Manrope,Arial,sans-serif}
.profile-soc-link:hover{border-color:var(--color-c8f542);color:var(--color-c8f542)}
.profile-actions-foot{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.profile-actions-foot .register-submit{width:auto;flex:1;min-width:200px}
.profile-delete{display:inline-flex;align-items:center;color:var(--color-ff9d7a);border-color:var(--color-rgba-255-122-69--4-)}
.profile-delete:hover{border-color:var(--color-ff7a45);color:var(--color-ff7a45)}

/* Совместимость: штатные TPL DLE (Air-разметка) в стиле The88788 */
.panel,.auth-form,.form-body{background:var(--color-10120f);border:1px solid var(--color-232823);border-radius:16px;padding:26px;color:var(--color-f1f4ed)}
.auth-form{max-width:460px;margin:40px auto}
.panel h1,.panel h2,.auth-form h1{margin:0 0 14px;font:600 18px Unbounded;color:var(--color-f1f4ed)}
.form-row{margin-bottom:14px}
.form-grid{display:grid;grid-template-columns:1fr;gap:0 14px}
@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr}}
.form-row--inline{display:flex;gap:10px;align-items:center}
.form-label{display:block;color:var(--color-9da69e);font-size:12px;margin-bottom:5px;font-weight:600}
.form-req{color:var(--color-ff7a45)}
.form-input{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.form-input:focus{outline:none;border-color:var(--color-c8f542)}
textarea.form-input{min-height:100px;resize:vertical}
select.form-input{appearance:auto}
.form-check{font-size:12.5px;color:var(--color-9da69e);margin-top:6px}
.form-check label{display:flex;gap:8px;align-items:center;cursor:pointer}
.form-check input[type=checkbox],.form-row--check input[type=checkbox]{accent-color:var(--color-c8f542);width:15px;height:15px}
.form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}
.form-actions__hint{font-size:12.5px;color:var(--color-9da69e)}
.form-actions__hint a,.auth-form a{color:var(--color-c8f542)}
.primary-button,.soft-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:11px 20px;font:800 13px Manrope,Arial,sans-serif;cursor:pointer;text-decoration:none}
.primary-button{background:var(--color-c8f542);color:var(--color-10120f);border:0}
.primary-button:hover{filter:brightness(1.07)}
.soft-button{background:transparent;color:var(--color-c7cec7);border:1px solid var(--color-2b302c)}
.soft-button:hover{border-color:var(--color-c8f542);color:var(--color-c8f542)}
.soft-button--danger{color:var(--color-ff9d7a);border-color:var(--color-rgba-255-122-69--4-)}
.soft-button--danger:hover{border-color:var(--color-ff7a45);color:var(--color-ff7a45)}
.c-captcha{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.c-captcha img{border-radius:8px}
.c-captcha input{width:160px;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.icon{width:16px;height:16px;fill:currentColor;vertical-align:-3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Статистика */
.stats{max-width:860px;margin:40px auto}
.stats .panel{margin-bottom:18px}
.stats-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:14px 0}
.stats-card{background:var(--color-181c19);border:1px solid var(--color-232823);border-radius:12px;padding:16px}
.stats-card__value{font:700 24px Unbounded;color:var(--color-c8f542)}
.stats-card__label{font-size:12px;color:var(--color-9da69e);margin-top:4px}
.stats-card__hint{font-size:11px;color:var(--color-9da69e);margin-top:2px}
.stats-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:14px 0}
.stats-group{background:var(--color-181c19);border:1px solid var(--color-232823);border-radius:12px;padding:14px;font-size:13px;color:var(--color-c7cec7)}
.stats-db{overflow-x:auto}
.stats-db table{width:100%;border-collapse:collapse;font-size:13px}
.stats-db th,.stats-db td{padding:9px 12px;border-bottom:1px solid var(--color-232823);text-align:left;color:var(--color-c7cec7)}
.stats-db th{color:var(--color-9da69e);font-weight:600}
.stats-top-title{font:600 14px Unbounded;color:var(--color-f1f4ed);margin:18px 0 8px}

/* Личные сообщения */
.thread{display:flex;flex-direction:column;gap:14px}
.thread__item{background:var(--color-181c19);border:1px solid var(--color-232823);border-radius:12px;padding:16px}
.thread__item--own{border-color:var(--color-rgba-200-245-66--35-)}
.thread__top{display:flex;gap:12px;align-items:center;margin-bottom:10px;flex-wrap:wrap}
.thread__avatar{width:40px;height:40px;border-radius:12px;object-fit:cover}
.thread__ident{display:flex;flex-direction:column;gap:2px}
.thread__ident a{color:var(--color-f1f4ed);font-weight:700;font-size:13px;text-decoration:none}
.thread__ident a:hover{color:var(--color-c8f542)}
.thread__group{font-size:10px;color:var(--color-9da69e)}
.thread__online{font-size:11px;color:var(--color-c8f542)}
.thread__who,.thread__when{font-size:11px;color:var(--color-9da69e)}
.thread__text{font-size:14px;color:var(--color-c7cec7);line-height:1.6}
.thread__signature{font-size:12px;color:var(--color-9da69e);border-left:2px solid var(--color-232823);padding-left:10px;margin-top:10px}
.thread__actions{display:flex;gap:8px;margin-top:12px}
.thread__btn{border:1px solid var(--color-2b302c);background:transparent;color:var(--color-c7cec7);border-radius:8px;padding:6px 12px;font:700 11.5px Manrope,Arial,sans-serif;cursor:pointer;text-decoration:none}
.thread__btn:hover{border-color:var(--color-c8f542);color:var(--color-c8f542)}
.thread__btn--danger:hover{border-color:var(--color-ff7a45);color:var(--color-ff7a45)}

/* Поиск, статика, прочее */
.search-fieldset{border:1px solid var(--color-232823);border-radius:12px;padding:16px;margin-bottom:14px}
.meta-item{font-size:12px;color:var(--color-9da69e)}
.staticpage{color:var(--color-c7cec7);font-size:15px;line-height:1.7}
.static-tools{margin-top:18px;font-size:12px}
.userstop,.table-scroll{overflow-x:auto}
.story-text{font-size:14px;color:var(--color-c7cec7);line-height:1.6}
.avatar{border-radius:12px;object-fit:cover}
.profile-popup__link{display:inline-flex;margin:0 8px 8px 0;border:1px solid var(--color-2b302c);border-radius:10px;padding:8px 14px;color:var(--color-c7cec7);text-decoration:none;font:700 12.5px Manrope,Arial,sans-serif}
.profile-popup__link:hover{border-color:var(--color-c8f542);color:var(--color-c8f542)}
.notice{display:flex;gap:10px;background:var(--color-181c19);border:1px solid var(--color-232823);border-radius:12px;padding:14px 16px;color:var(--color-c7cec7);font-size:13.5px}
.info-wrap{margin-top:28px}
.info-wrap:empty{display:none}
.notice--warn{border-color:var(--color-rgba-255-122-69--4-);color:var(--color-ff9d7a)}

/* case-card - теперь article, ссылки внутри */
.case-card{text-decoration:none}
a.case-art{display:grid;text-decoration:none;color:inherit}
.case-copy h3 a{color:inherit;text-decoration:none}
.case-copy h3 a:hover{color:var(--acid)}
a.case-arrow{text-decoration:none;color:inherit;display:grid;place-items:center}
a.case-arrow:hover{color:var(--acid)}

.page-section .approach-note{margin-bottom:26px}

/* Подвал прайс-секции: дисклеймер + две кнопки */
.price-note{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding:18px 22px;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;background:var(--panel)}
.price-note>span{color:var(--acid);font-weight:800}
.price-note p{flex:1 1 320px;margin:0;color:var(--muted);font-size:13px}
.price-note a{white-space:nowrap;font-size:13px;font-weight:800;text-decoration:none;transition:.2s}
.price-note a[href="/prices/"]{color:var(--text);padding:11px 18px;border:1px solid var(--line);border-radius:10px}
.price-note a[href="/prices/"]:hover{border-color:var(--acid);color:var(--acid)}
.price-note a[href$="#contact"]{color:var(--color-111);background:var(--acid);padding:11px 20px;border-radius:10px}
.price-note a[href$="#contact"]:hover{background:var(--text)}

/* Ссылки категорий в мете постов и мини-карточках - в палитре сайта, не синие */
.files-mini-body small .cat-link{color:var(--color-aab2ab);text-decoration:none;border:0;padding:0;font-size:inherit;margin:0 3px 0 0;background:none}
.fullstory-meta .cat-link:hover,.files-mini-body small .cat-link:hover{color:var(--acid)}

/* Мини-карточка в сайдбаре: div-обертка, заголовок и иконка - отдельные ссылки */
a.files-mini-icon{text-decoration:none}
.files-mini-body strong a{color:inherit;text-decoration:none}
.files-mini-body strong a:hover{color:var(--acid)}

/* Мини-прайс в сайдбаре: узкая колонка, цена под названием */
.side-price .price-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;grid-template-columns:none;padding:11px 0}
.side-price .price-row .price-name{font-size:13px}
.side-price .price-row strong{color:var(--acid);font-size:13px;font-weight:800}

/* Автор в карточках файлов - в палитре сайта, не синяя ссылка */
.file-author a{color:var(--color-aab2ab);text-decoration:none}
.file-author a:hover{color:var(--acid)}

/* RSS-подписка в сайдбарах файловых разделов */
.side-rss-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:12px;font-weight:700;text-decoration:none;transition:.2s}
.side-rss-link:hover{color:var(--acid);border-color:var(--acid)}
.side-rss-link span{font-size:11px}

/* Футер: две аккуратные строки (переопределяет grid из styles.css) */
.footer{display:flex;flex-direction:column;gap:0;align-items:stretch}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px 28px;flex-wrap:wrap;margin-top:38px;padding-top:22px;border-top:1px solid var(--line)}
.footer-ext a{font-size:11px}
.footer-copy-text{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.footer-top-link{font-size:11px}
@media(max-width:760px){.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}}

/* Текстовая страница (privacy и др. статика) */
.legal-text{max-width:760px;color:var(--text);font-size:14.5px;line-height:1.75}
.legal-text h2{margin:34px 0 12px;font-family:Unbounded;font-size:17px;font-weight:600;letter-spacing:-.02em}
.legal-text p{margin:0 0 14px;color:var(--color-c9cfc8)}
.legal-text a{color:var(--acid)}
.legal-updated{font-size:11px;color:var(--muted)}
.legal-text .button{margin-top:14px}

/* Попап отправки ЛС (jQuery UI dialog, генерирует engine/ajax/pm.php) */
.ui-dialog{background:var(--color-121513);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px var(--color-rgba-0-0-0--55-);padding:0;overflow:hidden;font-family:Manrope,Arial,sans-serif;color:var(--text)}
.ui-dialog .ui-dialog-titlebar{position:relative;display:flex;align-items:center;padding:16px 20px;background:var(--color-181c19);border:0;border-bottom:1px solid var(--line);border-radius:0}
.ui-dialog .ui-dialog-title{flex:1;margin:0;font-family:Unbounded;font-size:13px;font-weight:600;letter-spacing:-.02em;color:var(--text)}
.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:0!important;line-height:0;cursor:pointer;transition:.2s;display:inline-flex!important;align-items:center;justify-content:center;padding:0}
.ui-dialog .ui-dialog-titlebar-close .ui-button-icon{display:none}
.ui-dialog .ui-dialog-titlebar-close::after{content:"\2715";font-size:14px;line-height:1;color:inherit}
.ui-dialog .ui-dialog-titlebar-close:hover{color:var(--acid);border-color:var(--acid)}
.ui-dialog .ui-dialog-content{padding:18px 20px;background:var(--color-121513);color:var(--text);font-size:13px}
.ui-dialog .ui-dialog-buttonpane{margin:0;padding:14px 20px;border-top:1px solid var(--line);background:var(--color-181c19)}
.ui-dialog .ui-dialog-buttonset{display:flex;gap:10px;justify-content:flex-end}
.ui-dialog .ui-dialog-buttonset .ui-button{padding:10px 18px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--text);font:700 11px Manrope;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:.2s}
.ui-dialog .ui-dialog-buttonset .ui-button:hover{border-color:var(--acid);color:var(--acid)}
.ui-dialog .ui-dialog-buttonset .ui-button.ui-state-focus,.ui-dialog .ui-dialog-buttonset .ui-button:first-of-type{border-color:var(--acid);background:var(--acid);color:var(--color-111)}
.ui-dialog .ui-dialog-buttonset .ui-button:first-of-type:hover{background:var(--text);border-color:var(--text);color:var(--color-111)}
/* Выпадающее меню действий над новостью ({edit}, генерирует dle_js.js: dropdownmenu) */
#dropmenudiv{background:var(--color-181c19);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 48px var(--color-rgba-0-0-0--5-);padding:6px;min-width:170px}
#dropmenudiv a{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;color:var(--text);font:600 12.5px Manrope;cursor:pointer;transition:.15s}
#dropmenudiv a:hover{background:var(--acid);color:var(--color-111);text-decoration:none}
#dropmenudiv a img{display:none}
/* Ссылка-триггер {edit} в карточках и полной новости */
.fullstory-edit{margin-top:22px;padding-top:16px;border-top:1px dashed var(--line)}
.fullstory-edit a,.shortstory-edit a{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font:600 11.5px Manrope;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:.2s}
.fullstory-edit a:hover,.shortstory-edit a:hover{color:var(--acid)}
/* Поля формы ЛС */
#pm_subj{width:100%;box-sizing:border-box;margin-bottom:10px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--color-0d100e);color:var(--text);font:500 13px Manrope;outline:none;transition:.2s}
#pm_subj:focus{border-color:var(--acid)}
.dlepm-editor textarea,.dlepm-editor .ajaxpmeditor,.dlepm-editor iframe{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;background:var(--color-0d100e);color:var(--text);outline:none}
.dlepm-editor textarea:focus{border-color:var(--acid)}

/* Сетка контактов: три кнопки в один ряд, фиксированные колонки.
   Кнопка формы - flex, одна строка, стрелка строго справа от текста */
.contact-methods{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 320px;width:760px;max-width:100%}
.contact-form-toggle{display:flex;align-items:center;gap:14px;width:100%;box-sizing:border-box;white-space:nowrap;overflow:hidden}
.contact-form-toggle b,.contact-form-toggle small{white-space:nowrap}
.contact-form-toggle i{flex:0 0 auto;margin-left:auto}
@media (max-width:640px){.contact-methods{grid-template-columns:1fr}.contact-form-toggle b,.contact-form-toggle small{white-space:normal}}
/* Вотермарк 88788 на мобильных: меньше и прибит к верху блока, чтобы не уезжал вниз при раскрытии формы */
@media (max-width:640px){.contact-watermark{font-size:88px;right:0;bottom:auto;top:6px;letter-spacing:-.06em}}

/* Меню профиля: мостик над щелью (hover не теряется), открытие по клику */
.header-user-menu::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px}
.header-user.menu-open .header-user-menu{display:flex}
@media(hover:none){.header-user-menu{display:none}}

/* Системные элементы настроек профиля в стиле сайта */
.profile-wrap select.timezoneselect,.profile-wrap select.twofactorselect{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--color-0d100e);color:var(--text);font:500 13px Manrope,Arial,sans-serif;outline:none;cursor:pointer}
.profile-wrap select:focus{border-color:var(--acid)}
.profile-wrap .form-check-label{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:12.5px;color:var(--muted)}
.profile-wrap .form-check-input{appearance:none;width:17px;height:17px;flex-shrink:0;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--color-0d100e);cursor:pointer;transition:.15s}
.profile-wrap .form-check-input:checked{background:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 3px var(--color-0d100e)}
.profile-wrap input[type=file]{width:100%;padding:10px;border:1px dashed var(--line);border-radius:10px;background:var(--color-0d100e);color:var(--muted);font-size:12px}
/* Кнопка загрузки аватара: кислотная, как акценты сайта */
.profile-wrap .avatar-upload-btn{color:var(--acid);border-color:var(--acid);padding-left:16px}
.profile-wrap .avatar-upload-btn::before{margin-right:6px}
.profile-wrap .avatar-upload-btn:hover{background:var(--color-rgba-201-255-63--08-)}

/* === Полная новость: ФАЙЛ === */
.file-hero{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:stretch;margin-top:26px}
.file-hero-thumb{min-height:220px;border-radius:var(--radius);overflow:hidden;background:var(--color-1c211a)}
.file-hero-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.file-hero-icon{display:grid;place-items:center;width:100%;height:100%;min-height:220px;color:var(--acid);font:700 26px Unbounded}
.file-hero-info{display:flex;flex-direction:column;gap:14px;min-width:0}
.file-hero-info .fullstory-title{margin:0}
.file-hero-foot{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px}
.file-hero-foot .file-author a{color:var(--text);text-decoration:none}
.file-hero-foot .file-author a:hover{color:var(--acid)}
.file-hero-info .fullstory-actions{margin-top:auto}
.file-hero-dl{padding:15px 26px;font-size:13px}
.file-hero-dl-pending{background:transparent;border:1px dashed var(--line);color:var(--muted);cursor:default}

/* === Полная новость: ПРАЙС === */
.fullstory-pricing .price-hero{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0 8px}
.price-hero-item{flex:1 1 220px;padding:20px 24px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.price-hero-item span{display:block;margin-bottom:6px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.price-hero-item strong{font-family:Unbounded;font-size:22px;font-weight:700;color:var(--acid);letter-spacing:-.02em}
.fullstory-pricing .fullstory-actions{margin-top:26px}

/* === Форма комментариев: тёмное поле вместо белого === */
.dlecomments-editor textarea#comments,.dlecomments-editor textarea{width:100%;box-sizing:border-box;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--color-0d100e);color:var(--text);font:400 14px/1.65 Manrope,Arial,sans-serif;outline:none;resize:vertical;transition:border-color .2s}
.dlecomments-editor textarea#comments:focus,.dlecomments-editor textarea:focus{border-color:var(--acid)}
.addcomment .uf-sec{display:flex;align-items:center;gap:12px}
.addcomment .uf-sec img{border-radius:8px;border:1px solid var(--line)}
/* Текстовая область редактора комментариев (тёмная, вместо белой по умолчанию) */
.dleaddcomments-editor textarea,.dlecomments-editor textarea{width:100%!important;box-sizing:border-box;background:var(--color-181c19);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:12px 14px;font:500 13px Manrope,Arial,sans-serif;line-height:1.6;outline:none;resize:vertical;transition:border-color .2s}
.dleaddcomments-editor textarea:focus,.dlecomments-editor textarea:focus{border-color:var(--acid)}
/* BB-панель редактора */
.editor-panel{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:fit-content;margin-bottom:8px;padding:6px;background:var(--color-181c19);border:1px solid var(--line);border-radius:10px}
.editor-panel .bbcodes,.editor-group .bbcodes{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;padding:0 8px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:600 12px Manrope;cursor:pointer;transition:.15s}
.editor-panel .bbcodes:hover,.editor-group .bbcodes:hover{background:var(--color-22271f);color:var(--acid)}
/* Загрузчик изображений в комментариях */
.comments-image-uploader-area{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.comments-image-uploader-toggle{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--acid);font:700 12px Manrope;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:.2s}
.comments-image-uploader-toggle::before{content:"+";color:var(--acid);font-size:15px;line-height:1}
.comments-image-uploader-toggle:hover{border-color:var(--acid)}
.comments-image-uploader-toggle.is-open{border-color:var(--acid)}
#hidden-image-uploader{margin-top:4px;width:100%}
/* Загрузчик изображений (plupload) - тёмная тема.
   fileuploader.css подгружается ПОСЛЕ dle.css с той же специфичностью
   (.comments-image-uploader .plupload_wrapper - белый фон), поэтому тут
   двойной класс для перекрытия. */
.comments-image-uploader .plupload_container,.comments-image-uploader .plupload_wrapper.plupload_wrapper{background:var(--color-181c19);color:var(--text);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.comments-image-uploader .ui-widget-content{background:var(--color-181c19);color:var(--text);border-color:var(--line)}
.comments-image-uploader .ui-widget-header{color:var(--muted)}
.comments-image-uploader .plupload_header_title{color:var(--text);font:700 13px Manrope}
.comments-image-uploader .plupload_header_text{color:var(--muted);font-size:12px}
/* Зона перетаскивания: серый фон, белый бордер, при наведении/перетаскивании - кислотный */
.comments-image-uploader .plupload_dropbox{margin:10px;width:auto;background:var(--color-181c19);border:1px solid var(--color-rgba-255-255-255--28-);border-radius:10px;transition:border-color .2s}
.comments-image-uploader .plupload_droptext{color:var(--text);font:600 13px Manrope;padding:26px 10px;text-align:center}
.comments-image-uploader .plupload_dropbox:hover,.comments-image-uploader .plupload_dropbox.dle-dragover{border-color:var(--acid)}
.comments-image-uploader .plupload_dropbox:hover .plupload_droptext,.comments-image-uploader .plupload_dropbox.dle-dragover .plupload_droptext{color:var(--acid)}
.comments-image-uploader .plupload_dropbox:hover .plupload_droptext:before,.comments-image-uploader .plupload_dropbox.dle-dragover .plupload_droptext:before{color:var(--acid)}
/* Кнопки "Выбрать файлы" / "Загрузить" - как кнопки сайта */
.comments-image-uploader a.plupload_button.plupload_button{display:inline-flex;align-items:center;background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--acid);font:700 12px Manrope;padding:9px 16px;cursor:pointer;text-decoration:none;transition:border-color .2s,color .2s}
.comments-image-uploader a.plupload_button.plupload_button:hover,.comments-image-uploader a.plupload_button.plupload_button:focus,.comments-image-uploader a.plupload_button.plupload_button.ui-state-hover{background:transparent;border-color:var(--acid);color:var(--acid)}
.comments-image-uploader a.plupload_button .ui-button-icon,.comments-image-uploader a.plupload_button .ui-button-icon-space{display:none}
/* Статус загрузки и прогресс-бар - кислотные */
.comments-image-uploader .plupload_upload_status{color:var(--acid);font:600 12px Manrope}
.comments-image-uploader .ui-progressbar-value,.comments-image-uploader .plupload_progress_container .ui-progressbar-value{background:var(--acid);background-image:none;border-color:var(--acid);color:var(--color-10120f)}
.comments-image-uploader .plupload_progress_container{background:var(--color-3d443c);box-shadow:none}
.comments-image-uploader .plupload_progress{padding-top:0;display:flex;align-items:center}
.comments-image-uploader .plupload_view_thumbs .plupload_file_progress,.comments-image-uploader .plupload_view_list .plupload_file_progress{background:var(--acid)!important;background-image:none;border-color:var(--acid)}
.comments-image-uploader .plupload_filelist_footer td{vertical-align:middle}
/* Список файлов */
.comments-image-uploader .plupload_filelist_header td,.comments-image-uploader .plupload_filelist_footer td{border-color:var(--line);color:var(--muted);font:600 12px Manrope}
.comments-image-uploader .plupload_file{border-bottom:1px solid var(--line)}
.comments-image-uploader .plupload_file .plupload_file_name{color:var(--text)}

/* === Форма редактирования комментария (ajax, внутри article.comment) === */
.comments .comment .tox-tinymce{border:1px solid var(--line);border-radius:10px}
.comments .comment .save-buttons{display:flex!important;justify-content:flex-end;gap:8px;padding-top:12px!important}
.comments .comment .save-buttons input.bbcodes{background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--acid);font:700 12px Manrope;padding:9px 14px;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.comments .comment .save-buttons input.bbcodes:hover{border-color:var(--acid);box-shadow:0 0 0 1px var(--acid)}
.comments .comment .save-buttons .applychanges{order:1}
.comments .comment .save-buttons .cancelchanges{order:2}
/* Подписка на ответы: чекбокс в стиле профиля */
.addcomment .form-check-label{display:inline-flex;align-items:center;gap:9px;color:var(--color-9da69e);font-size:13px;cursor:pointer;user-select:none}
.addcomment .form-check-input{appearance:none;width:17px;height:17px;flex-shrink:0;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--color-0d100e);cursor:pointer;transition:.15s}
.addcomment .form-check-input:checked{background:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 3px var(--color-0d100e)}
/* Ширина формы комментария - как у колонки статьи */
.comments .addcomment{max-width:820px}

/* === Форма ответа на комментарий (ajax) ===
   Кнопки .save-buttons движок выводит ПОСЛЕ </form>, переносим их внутрь
   через script.js (ajaxComplete), чтобы вся строка опций была flex-рядом. */
#dlefastreplycomments{margin:14px 0}
#dlefastreplycomments>form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}
#dlefastreplycomments .comments-edit-area,#dlefastreplycomments .bb-editor,#dlefastreplycomments .wseditor,#dlefastreplycomments .dle-captcha,#dlefastreplycomments [id^="dle-question"]{flex:0 0 100%}
#dlefastreplycomments .tox-tinymce{border:1px solid var(--line);border-radius:10px}
#dlefastreplycomments .commentsreplyname,#dlefastreplycomments .commentsreplymail{flex:1 1 40%}
#dlefastreplycomments .commentsreplyname input,#dlefastreplycomments .commentsreplymail input{width:100%;background:var(--color-181c19);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:11px 13px;font:500 13px Manrope}
#dlefastreplycomments .commentsreplyname input:focus,#dlefastreplycomments .commentsreplymail input:focus{outline:none;border-color:var(--acid)}
/* Прикрепить изображения - как в основной форме */
#dlefastreplycomments .comments-image-uploader-area{display:contents}
#dlefastreplycomments .comments-image-uploader-area>a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:10px;color:var(--acid);font:700 12px Manrope;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;transition:border-color .2s}
#dlefastreplycomments .comments-image-uploader-area>a::before{content:"+";font-size:15px;line-height:1}
#dlefastreplycomments .comments-image-uploader-area>a:hover{border-color:var(--acid)}
#dlefastreplycomments #hidden-comments-image-uploader-reply{flex:0 0 100%;width:100%}
/* Подписаться на комментарии - как в основной форме */
#dlefastreplycomments .form-check-label{display:flex;align-items:center;gap:9px;color:var(--color-9da69e);font-size:13px;cursor:pointer;user-select:none;min-width:0}
#dlefastreplycomments form>div:has(>.form-check-label){flex:1 1 0;min-width:0;display:flex;align-items:center}
#dlefastreplycomments .form-check-input{appearance:none;width:17px;height:17px;flex-shrink:0;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--color-0d100e);cursor:pointer;transition:.15s}
#dlefastreplycomments .form-check-input:checked{background:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 3px var(--color-0d100e)}
/* Кнопки: кислотный текст, серый тонкий бордер, при наведении толще кислотный бордер */
#dlefastreplycomments .save-buttons{margin-left:auto;display:flex;gap:8px;flex:0 0 auto}
#dlefastreplycomments .save-buttons input.bbcodes{background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--acid);font:700 12px Manrope;padding:9px 14px;cursor:pointer;transition:border-color .2s,box-shadow .2s}
#dlefastreplycomments .save-buttons input.bbcodes:hover{border-color:var(--acid);box-shadow:0 0 0 1px var(--acid)}
#dlefastreplycomments .save-buttons .applychanges{order:1}
#dlefastreplycomments .save-buttons .cancelchanges{order:2;font-size:16px;line-height:1;padding:9px 13px}

/* === Модерация комментариев === */
.mass_comments_action{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 10px;padding:14px 18px;background:var(--color-10120f);border:1px solid var(--line);border-radius:16px}
.mass_comments_action label{color:var(--muted);font-size:12.5px}
.mass_comments_action select{background:var(--color-181c19);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:10px 13px;font-family:Manrope,Arial,sans-serif;font-size:13px;font-weight:500;cursor:pointer}
.mass_comments_action select option{background:var(--color-181c19);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:13px}
.mass_comments_action select:focus{outline:none;border-color:var(--acid)}
.mass_comments_action button.bbcodes{margin-left:auto;background:var(--acid);border:0;border-radius:10px;color:var(--color-10120f);font:800 13px Manrope;padding:11px 22px;cursor:pointer}
.mass_comments_action button.bbcodes:hover{filter:brightness(1.07)}

/* === Попап ЛС: заголовок не должен обрезаться кнопкой Close === */
.ui-dialog .ui-dialog-titlebar{padding-right:56px}
.ui-dialog .ui-dialog-title{white-space:normal;overflow:visible;font-size:12.5px;line-height:1.4}
@media(max-width:520px){.ui-dialog{width:calc(100% - 24px)!important;left:12px!important}.ui-dialog .ui-dialog-title{font-size:11.5px}}

/* Профиль: карточка шире, адаптив */
@media(min-width:1100px){.profile-wrap{max-width:1020px}}
@media(max-width:760px){
  .profile-wrap{margin:20px auto;padding:20px 16px}
  .profile-head{flex-direction:column;align-items:flex-start}
  .profile-grid{grid-template-columns:1fr}
  .file-hero{grid-template-columns:1fr}
  .file-hero-thumb{min-height:180px}
  .price-hero-item{flex:1 1 100%}
}

/* Попап профиля по клику на автора поста */
.profile-popup{min-width:300px;max-width:360px}
.profile-popup__summary{display:flex;gap:16px;align-items:flex-start}
.profile-popup__avatar{position:relative;flex-shrink:0}
.profile-popup__avatar img{border-radius:14px;border:1px solid var(--line);object-fit:cover;display:block;background:var(--color-1c211a)}
.thread__online{position:absolute;right:-2px;bottom:-2px;width:15px;height:15px;border-radius:50%;background:var(--acid);border:3px solid var(--color-121513)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.profile-popup__identity{min-width:0;flex:1}
.profile-popup__name{display:block;font:700 16px/1.25 Unbounded;color:var(--text);margin:2px 0 10px;word-break:break-word}
.profile-popup__details{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}
.profile-popup__details div{min-width:0}
.profile-popup__details dt{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.profile-popup__details dd{margin:0;font-size:12.5px;color:var(--text)}
.profile-popup__links{display:flex;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.profile-popup__all{color:var(--acid);font:600 13px Manrope;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.profile-popup__all:hover{color:var(--text)}
@media(max-width:420px){.profile-popup{min-width:0}.profile-popup__details{grid-template-columns:1fr}}

/* UserContent: страницы публикаций пользователя и тегов */
.uc-block{margin-top:48px}
.uc-block-more{margin-top:16px}
.uc-block-more a{display:inline-flex;align-items:center;gap:6px;color:var(--acid);font:600 13px Manrope}
.uc-block-more a:hover{color:var(--text)}
.uc-block:first-of-type{margin-top:34px}
.uc-block-title{font-family:Unbounded;font-size:clamp(19px,2.4vw,27px);letter-spacing:-.03em;margin:0 0 20px;color:var(--text)}
.uc-block-title em{font-style:normal;color:var(--acid)}
.uc-block .file-item{margin-bottom:18px}
.uc-block .file-item:last-child{margin-bottom:0}
.uc-block .case-card{margin-bottom:12px}
.uc-block .case-card:last-child{margin-bottom:0}
.uc-empty{padding:26px 28px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:14px}
@media(max-width:760px){.uc-block{margin-top:36px}}
/* UserContent: страница списка тегов /tags/ */
.uc-tags-lead{max-width:640px;margin:14px 0 0;color:var(--muted);font-size:14px;line-height:1.65}
.uc-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.uc-tag-chip{display:inline-flex;align-items:center;padding:9px 16px;border:1px solid var(--line);border-radius:999px;color:var(--text);font:600 13px Manrope;transition:border-color .18s ease,color .18s ease}
.uc-tag-chip:hover{border-color:var(--acid);color:var(--acid)}
/* Форма заявки на услугу (карточка прайса) - те же стили, что у формы на главной */
.service-form .uf-wrapper{background:var(--color-10120f);color:var(--color-f1f4ed);border-radius:var(--radius);padding:26px;max-width:100%;width:100%;box-sizing:border-box}
.service-form .uf-content{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}
.service-form .uf-field:has(textarea){grid-column:1/-1}
.service-form .uf-field:has(.uf-btn){grid-column:1/-1}
.service-form .uf-field:has(.uf-btn) .uf-label{display:none}
.service-form .uf-field:has(.uf-btn) .uf-btn{width:100%}
.service-form .uf-content{grid-template-columns:1fr}
.service-form .uf-wrapper{padding:18px}
.service-form .mfp-close{display:none}
.service-form .uf-header{font:600 14px Unbounded;margin-bottom:16px}
.service-form .uf-field{margin-bottom:14px}
.service-form .uf-label{color:var(--color-9da69e);font-size:12px;margin-bottom:5px}
.service-form .uf-input{width:100%;background:var(--color-181c19);border:1px solid var(--color-2b302c);border-radius:10px;color:var(--color-f1f4ed);padding:11px 13px;font:500 13px Manrope,Arial,sans-serif}
.service-form .uf-input:focus{outline:none;border-color:var(--acid)}
.service-form .uf-btn{background:var(--acid);color:var(--color-10120f);border:0;border-radius:10px;padding:12px 24px;font-weight:800;font-size:13px;cursor:pointer}
.service-form .uf-btn:hover{filter:brightness(1.07)}
.service-form .uf-alert-error{color:var(--color-ff7a45);font-size:13px;margin-bottom:12px}
.service-form .uf-alert-error ul{margin:6px 0 0;padding-left:18px}
.service-form .uf-alert-success{color:var(--acid);font-size:14px}
.service-form .uf-content{grid-template-columns:1fr 1fr}
.service-form .uf-field-wide{grid-column:1/-1}
@media(max-width:640px){.service-form .uf-content{grid-template-columns:1fr}}
.service-form .uf-input-file{padding:9px 13px}
.service-form-wrap{margin-top:0;max-height:0;opacity:0;visibility:hidden;overflow:hidden;transform:translateY(24px);transition:max-height 1.5s ease,opacity 1.5s ease,transform 1.5s ease,margin-top 1.5s ease}
.service-form-wrap.is-open{max-height:4000px;opacity:1;visibility:visible;transform:none;margin-top:56px}
.service-form-wrap .section-heading{margin-bottom:20px}
.price-cta{display:flex;justify-content:flex-start}
.price-note{row-gap:8px}
.price-note .price-note-text{flex:1 1 100%;margin:0}
.price-note .price-note-text>span{color:var(--acid);font-weight:800;margin-right:12px}
.price-note .price-nav-center{flex:1 1 auto;display:flex;justify-content:center;min-width:0}
.price-note .price-cta{margin-left:auto}
.price-note .price-cta a{color:var(--color-111)}
.price-wrap .price-note{border:0;border-radius:0}
.price-note .pagination{margin:14px 0 6px}
@media(max-width:640px){.price-note .price-nav-center{flex:1 1 100%;justify-content:center}.price-note .price-cta{margin:0 auto}}
#service-form-toggle.is-used{opacity:.45;pointer-events:none}
#service-form-toggle.is-used span{transform:none}
/* Кнопка выбора файла - как "Прикрепить изображения" в комментариях */
.service-file-field{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.service-file-native{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.service-file-toggle{margin:0}
.service-file-names{color:var(--color-9da69e);font-size:12.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
/* Навигация по разделу: третий уровень вложенности */
.side-nav a.snav-l3{padding-left:30px;font-size:12px;font-weight:500;color:var(--muted)}
.side-nav a.snav-l3:hover{color:var(--text)}
/* Контакты в сайдбаре: темные кнопки с обводкой, анимация при наведении */
.side-contacts{display:flex;flex-direction:column;gap:10px}
.side-contacts .contact-method{min-height:0;padding:11px 16px;border-radius:12px;background:var(--color-181c19);border:1px solid var(--line);color:var(--text);transition:border-color .25s ease,transform .25s ease,background .25s ease}
.side-contacts .contact-method:hover{background:var(--color-1c211a);border-color:var(--acid);transform:translateX(4px)}
.side-contacts .contact-method small{color:var(--muted)}
/* Кнопка скачивания вложения DLE */
.attachment{display:block;margin:6px 0}
.attachment-btn{display:flex;align-items:center;gap:14px;width:fit-content;min-width:300px;max-width:560px;padding:14px 18px;border-radius:12px;background:var(--acid);color:var(--color-10120f);text-decoration:none;transition:filter .2s ease}
.attachment-btn:hover{filter:brightness(1.07)}
.attachment-icon{flex:0 0 auto}
.attachment-body{display:flex;flex-direction:column;min-width:0}
.attachment-body b{font-size:13px;font-weight:800;color:var(--color-10120f);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-body small{color:var(--color-rgba-16-18-15--75-)}
.attachment-body small{font-size:11px;font-weight:500;opacity:.75}
.attachment-online{display:inline-block;margin-top:10px;font-size:12px;font-weight:600;color:var(--acid)}
.attachment--denied{padding:14px 18px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px}

/* BB-коды: цитата и код (как на форумах) */
.quote_block{margin:0 0 16px;overflow:hidden;border-left:3px solid var(--acid);border-radius:0 12px 12px 0;background:var(--color-181c19)}
.title_quote{display:block;padding:10px 15px;border-bottom:1px solid var(--line);color:var(--muted);font:700 11px Manrope,Arial,sans-serif}
.title_quote .quote_link{float:right;color:var(--acid);font-weight:600}
.quote,blockquote{display:block;margin:14px 0;padding:13px 15px;border-left:3px solid var(--acid);border-radius:0 12px 12px 0;background:var(--color-181c19);color:var(--color-c7cec7);font-size:14px;line-height:1.65}
.quote_block>.quote{border-left:0;border-radius:0;margin:0}
.quote_body{display:block}
.quote_body p{margin:0 0 10px}
.quote_body p:last-child{margin-bottom:0}
.scriptcode,pre{display:block;margin:14px 0;padding:13px 15px;overflow-x:auto;border-left:3px solid var(--acid);border-radius:0 12px 12px 0;background:var(--color-181c19);color:var(--color-f1f4ed);font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:4}
pre code{font:inherit;background:none;border:0;padding:0}
:not(pre)>code{padding:2px 7px;border-radius:6px;background:var(--color-181c19);border:1px solid var(--line);font:12px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--acid)}
.clipboard-copy-link{display:inline-flex;align-items:center;gap:6px;margin:10px 15px 2px;color:var(--color-f1f4ed)!important;text-shadow:none!important;font:600 11px Manrope,Arial,sans-serif;cursor:pointer;text-decoration:none}
.clipboard-copy-link:hover{color:var(--acid)!important}
.clipboard-copy-link svg{color:var(--color-f1f4ed)}
.quote_block>.clipboard-copy-link{margin:0 15px 12px}
/* Подсветка токенов (Prism) */
code[class*="language-"],pre[class*="language-"]{color:var(--color-f1f4ed);text-shadow:none}
pre[class*="language-"]{background:var(--color-181c19)}
code[class*="language-"] ::selection,code[class*="language-"]::selection,pre[class*="language-"] ::selection,pre[class*="language-"]::selection{background:var(--color-2b302c)}
.token.comment,.token.prolog,.token.cdata,.token.doctype{color:var(--color-7d857d)}
.token.punctuation{color:var(--color-aab2ab)}
.token.tag,.token.number,.token.boolean,.token.constant,.token.symbol,.token.deleted,.token.property{color:var(--acid)}
.token.string,.token.attr-name,.token.selector,.token.char,.token.inserted{color:var(--color-7ee0a3)}
.token.keyword,.token.atrule,.token.attr-value,.token.builtin{color:var(--color-9ecbff)}
.token.operator,.token.url,.token.entity,.language-css .token.string,.style .token.string{color:var(--color-e0b56b)}
.token.function,.token.class-name{color:var(--color-f1f4ed)}
.token.regex,.token.important,.token.variable{color:var(--color-e58f8f)}
/* Страницы тегов без сайдбара — контент на всю ширину оболочки */
.uc-tag-wrap{max-width:none}
/* Пагинация: кнопки ← предыдущая / номера страниц / следующая → */
.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:30px 0 0;flex-wrap:wrap}
.pagination__pages{display:flex;align-items:center;gap:8px}
.pagination a,.pagination__pages>span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 13px;border-radius:11px;border:1px solid var(--line);background:var(--panel);color:var(--muted);font:700 13px Manrope,sans-serif;text-decoration:none;transition:border-color .2s,color .2s,background .2s;box-sizing:border-box}
.pagination a:hover{color:var(--text);border-color:var(--acid)}
.pagination__pages>span{border-color:var(--acid);background:var(--acid);color:var(--color-111);font-weight:800;cursor:default}
.pagination .icon{width:17px;height:17px;display:block}
.pagination__edge>a{padding:0;width:42px}
.pagination__edge>span:not(a){display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;border:1px solid var(--line);background:var(--panel2);opacity:.4}
@media(max-width:760px){.pagination a,.pagination__pages>span{min-width:38px;height:38px;padding:0 10px}}
/* Облако тегов: ограниченная центральная колонка, как текстовые блоки сайта */
.uc-tags-page{max-width:1100px;margin-inline:auto}
/* Табы прайса переносятся на несколько строк вместо горизонтального скролла */
.price-tabs{flex-wrap:wrap;overflow:visible}
/* Кейсы: обложка вместо доп. поля case_art, плашки категорий, лимит описания */
.case-art img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.case-art .case-art-icon{position:static;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:120px;color:var(--acid);font:700 18px Unbounded}
.case-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.case-edit-link{color:var(--muted);font-size:11px;font-weight:600;cursor:pointer}
.case-edit-link:hover{color:var(--acid)}
.case-meta .cat-links{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}
.case-meta .cat-link{color:var(--color-aab2ab);text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:5px 11px;font-size:10px;font-weight:400;letter-spacing:0;transition:.2s}
.case-meta .cat-link:hover{color:var(--acid);border-color:var(--acid)}
/* Плашка ошибки загрузчика (например "слишком большой файл") */
.comments-image-uploader .plupload_message{border-radius:10px}
/* Статус-бар загрузки: в одной строке с процентами и размером файлов */
.comments-image-uploader td.plupload_started_td{width:1%;padding:0 12px 0 0;vertical-align:middle;white-space:nowrap}
.comments-image-uploader .plupload_started{display:flex;align-items:center;gap:10px;width:auto}
.comments-image-uploader .plupload_started.plupload_hidden{display:none}
.comments-image-uploader .plupload_started .plupload_progress{float:none;padding-top:0;display:flex;align-items:center}
.comments-image-uploader .plupload_started .plupload_upload_status{color:var(--acid);font:600 12px Manrope;padding:0}
/* Общий лоадер DLE (ShowLoading): спиннер кислотный */
#loading-layer svg path{fill:var(--acid)}
/* Галочка завершения загрузки - кислотная */
.comments-image-uploader .ui-icon-circle-check{color:var(--acid)}
/* Процент загрузки на фото: видимый, кислотный */
.comments-image-uploader .plupload_file_percent{position:relative;z-index:3;color:var(--acid);font:700 11px Manrope}
/* Зона перетаскивания кликабельна */
.comments-image-uploader .plupload_dropbox{cursor:pointer}
/* Линии дерева комментариев: горизонтальные отводы от вертикали к карточке */
ol.comments-tree-list ol.comments-tree-list > li.comments-tree-item > article.comment{position:relative}
ol.comments-tree-list ol.comments-tree-list > li.comments-tree-item > article.comment::before{content:'';position:absolute;left:-17px;top:36px;width:16px;height:1px;background:var(--line)}
/* Вложения в комментариях: превью-галерея */
.comment-images{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.comment-images a{display:block;border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:border-color .2s}
.comment-images a:hover{border-color:var(--acid)}
.comment-images img{display:block;max-width:140px;max-height:105px;width:auto;height:auto}
/* Вложения комментария: движок выводит списком - в строку, без маркеров */
.comment-images ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.comment-images li{list-style:none;margin:0;padding:0;display:block}

.side-nav a.snav-l4{padding-left:48px;font-size:12px;font-weight:500;color:var(--muted)}
.side-nav a.snav-l4:hover{color:var(--text)}

.publication-links{margin:24px 0}.publication-links .fullstory-actions{flex-wrap:wrap;gap:10px}

.related-services{margin-top:32px}.related-services h2{font-size:20px;margin-bottom:16px}.related-services ul{list-style:none;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.related-service-card{min-width:0}.related-service-link{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;height:100%;padding:18px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--text);font-size:14px;line-height:1.6;overflow-wrap:anywhere}.related-service-link:hover{border-color:var(--acid)}.related-service-link>span{flex:1;min-width:0}.related-service-link strong{flex:none;text-align:right;white-space:nowrap;color:var(--acid);font-size:13px}@media(max-width:640px){.related-services ul{grid-template-columns:1fr}}

/* File covers: a shared centered square in list, grid and full post. */
.file-item .file-thumb{align-self:start;min-width:0;background:var(--panel);border-radius:12px;overflow:hidden}
.file-item .file-thumb>a{display:flex;align-items:center;justify-content:center;aspect-ratio:1;width:100%}
.file-item .file-thumb img{width:100%;height:100%;min-height:0;aspect-ratio:auto;object-fit:cover;object-position:center;padding:0;box-sizing:border-box;border-radius:0}
.files-list.view-grid .file-thumb{width:100%;border-radius:0;border-bottom:1px solid var(--line)}
.files-list.view-grid .file-thumb>a{aspect-ratio:1}
.files-list.view-grid .file-thumb img{aspect-ratio:auto;padding:0}
.file-hero{align-items:start}
.file-hero-thumb{width:100%;aspect-ratio:1;min-height:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel)}
.file-hero-thumb img{width:100%;height:100%;object-fit:cover;object-position:center;padding:0;box-sizing:border-box}
.file-hero-foot{flex-wrap:wrap;row-gap:8px}
.file-screens{margin:32px 0}
.file-screens h2{font-size:22px;margin:0 0 12px}
.file-screens-note{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 16px}
.file-screens .xfieldimagegallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;padding:0;margin:0}
.file-screens .xfieldimagegallery li{float:none;width:auto;margin:0;padding:0;min-width:0}
.file-screens .xfieldimagegallery a{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--color-f4f5f7)}
.file-screens .xfieldimagegallery img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
.file-screens a:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
@media(max-width:640px){.file-screens .xfieldimagegallery{grid-template-columns:1fr}.file-hero-thumb{max-width:420px;margin-inline:auto}.file-hero{gap:20px}}

.fullstory-file .fullstory-body :not(pre)>code{overflow-wrap:anywhere;word-break:break-word}

@media(max-width:480px){.related-service-link{padding:14px;gap:12px;font-size:13px;align-items:flex-start}.related-service-link strong{font-size:12px}}

section.service-questions{margin-top:36px;max-width:860px}
.service-questions>h2{font-size:22px;margin:0 0 14px}
.service-questions-intro,.service-questions-empty,.service-question-moderation{font-size:14px;line-height:1.7;color:var(--muted)}
.service-questions-intro a{color:var(--acid)}
.service-questions .addcomment{margin-top:22px}
.service-question-moderation{margin:8px 0 20px}
.service-questions .comment-badge{white-space:normal}
.service-questions .comment-text{overflow-wrap:anywhere}
@media(max-width:480px){.service-questions .addcomment{padding:18px}.service-questions>h2{font-size:20px}}

.case-detail-hero{display:grid;grid-template-columns:240px minmax(0,1fr);gap:26px;align-items:center;margin-bottom:28px}
.case-detail-cover{width:100%;aspect-ratio:1;overflow:hidden;border-radius:var(--radius);background:var(--panel)}
.case-detail-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.case-detail-hero .fullstory-title{font-size:clamp(22px,2.5vw,36px);margin:14px 0;overflow-wrap:anywhere}
.fullstory .file-screens img{max-width:100%}
@media(max-width:640px){.case-detail-hero{grid-template-columns:1fr;gap:16px}.case-detail-cover{max-width:340px;margin-inline:auto}}

/* Accessibility follow-up, 2026-10-15. */
.attachment-btn .attachment-body small{color:inherit;opacity:1}
.files-mini-body small .cat-link{display:inline-flex;align-items:center;min-height:24px;margin-right:6px}
.service-questions-intro a{text-decoration:underline;text-underline-offset:3px}
.service-questions:has(.comment) .service-questions-empty{display:none}
.hosting-partner p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.hosting-partner .hosting-partner-label{font-size:11px;letter-spacing:.04em;margin-bottom:10px}
.hosting-partner .hosting-partner-price{font-size:21px;font-weight:800;color:var(--text)}
.hosting-partner .button{display:flex;justify-content:space-between;width:100%;gap:8px}
.hosting-partner .hosting-partner-note{font-size:12px;margin:12px 0 0}
.fullstory-body h2.content-heading{font-family:inherit;font-size:1.17em;font-weight:700;line-height:inherit;letter-spacing:normal;margin:1em 0}

/* File download metadata stays readable independently of the filename. */
.attachment-btn .attachment-body small{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;line-height:1.5}
.attachment-downloads strong{font-weight:800}

/* Override prose link colors inside the download button in both palettes. */
.fullstory-body a.attachment-btn{background:var(--accent-fill);color:var(--button-text)}
.attachment-btn .attachment-body b,.attachment-btn .attachment-body small,.attachment-btn .attachment-downloads,.attachment-btn .attachment-downloads strong{color:inherit}
.attachment-btn .attachment-icon{filter:brightness(0)}
html[data-theme="light"] .attachment-btn .attachment-icon{filter:brightness(0) invert(1)}
@media(prefers-color-scheme:light){html:not([data-theme]) .attachment-btn .attachment-icon{filter:brightness(0) invert(1)}}