@charset "utf-8";
/* =============================================================================
   ARMLIX — перекраска служебных элементов DataLife Engine под пиксельную тему.
   Подключается ПОСЛЕ engine.css и styles.css.
   Правило: классы дизайн-системы (.btn--*) не трогаем — иначе перекрасится сайт.
   ============================================================================= */

/* ---------- Индикатор загрузки -------------------------------------------- */
#loading-layer,
#loading-layer.withtext,
#loading-layer.withouttext {
	background: var(--frame) !important;
	border: 0;
	box-shadow: var(--sh-frame) !important;
	color: #fff; text-shadow: var(--ts);
	font-family: var(--font-mono); font-variation-settings: var(--font-feat);
	font-weight: var(--mono-weight); letter-spacing: var(--mono-tr);
	font-size: var(--fs-lg);
	text-transform: var(--caps); padding: 14px 18px;
}

/* ---------- Цитаты, спойлеры, код ----------------------------------------- */
.scriptcode, .title_quote, .title_spoiler, .text_spoiler, .quote, blockquote {
	background: var(--well); border: 1px solid var(--hair); color: var(--ink-3);
	border-radius: var(--r-md); padding: 15px 17px;
	box-shadow: inset 0 2px 5px rgba(0,0,0,.7);
}
.quote, blockquote, .title_quote { border-left: 2px solid var(--gold); }
.title_quote { font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; color: var(--ink-5); font-weight: 600; border-bottom: 0; border-radius: var(--r-md) var(--r-md) 0 0; }
.title_spoiler {
	font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase;
	color: var(--ink-2); cursor: pointer; font-weight: 400;
	transition: color var(--dur) var(--ease);
}
.title_spoiler:hover { color: var(--gold-lt); }
.text_spoiler { border-top: 0; border-radius: 0 0 var(--r-md) var(--r-md); }
.scriptcode { font-family: var(--font-mono); color: var(--ink-2); text-align: left; overflow-x: auto; }
.hide { background: var(--g-panel); border: 1px dashed var(--hair-3); border-radius: var(--r-md); color: var(--ink-6); padding: 15px 17px; margin: 0 0 1em; }
.hide a { color: var(--gold-lt); text-decoration: none; border-bottom: 1px solid rgba(226,189,108,.4); }
.quote_block { margin-bottom: .7rem; }
.quote_link { color: var(--gold-lt); }

/* ---------- Сортировка ----------------------------------------------------- */
.sort > li a { color: var(--ink-5); font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; }
.sort > li.asc a, .sort > li.desc a { color: var(--gold-lt); }

/* ---------- Кнопки движка -------------------------------------------------- */
.bbcodes, .btn-border, .btn-big, .btn-white,
.btn:not([class*="btn--"]) {
	background: var(--btn);
	border: 0;
	color: var(--ink);
	box-shadow: var(--sh-btn);
	text-shadow: var(--ts-soft);
	font-family: var(--font-mono); font-variation-settings: var(--font-feat);
	font-weight: var(--mono-weight); letter-spacing: var(--mono-tr);
	font-size: var(--fs-sm); min-height: var(--tap);
	text-transform: var(--caps); padding: 0 18px;
	transition: color var(--dur) var(--ease), transform .08s var(--ease), box-shadow .08s var(--ease);
}
.bbcodes:hover, .btn-border:hover, .btn-big:hover, .btn-white:hover,
.btn:not([class*="btn--"]):hover { color: var(--gold-warm); background: var(--g-btn); }
.bbcodes:active, .btn-border:active, .btn-big:active, .btn-white:active,
.btn:not([class*="btn--"]):active { transform: translate(var(--drop), var(--drop)); box-shadow: var(--sh-btn-a); }
.bbcodes > .icon, .btn-white > .icon { fill: none; stroke: currentColor; }
.form_submit .btn, input[type="submit"].btn, button[type="submit"].btn-big {
	background: var(--g-gold); color: var(--on-gold); font-weight: 600; box-shadow: var(--sh-gold);
}
.form_submit .btn:hover, input[type="submit"].btn:hover { background: var(--g-gold-h); color: var(--on-gold); }
.form_submit .btn:active, input[type="submit"].btn:active { transform: translate(var(--drop), var(--drop)); box-shadow: var(--sh-gold-a); }
.bbcodes { padding: 8px 11px; font-size: var(--fs-micro); min-height: 36px; --drop: 3px; }

/* ---------- BB-редактор ---------------------------------------------------- */
.bb-editor { background: transparent; }
.bb-pane {
	background: var(--g-head); border: 1px solid var(--hair-2); border-bottom: 0;
	border-radius: var(--r-md) var(--r-md) 0 0; padding: 9px; display: flex; flex-wrap: wrap; gap: 5px;
	box-shadow: inset 0 1px 0 var(--sheen);
}
.bb-editor textarea, .bb-editor textarea:focus {
	background: var(--well) !important; border: 1px solid var(--hair-2) !important;
	color: var(--ink) !important; border-radius: 0 0 var(--r-md) var(--r-md) !important;
	box-shadow: var(--sh-well) !important;
	font-family: var(--font-sans); font-size: var(--fs-md); padding: 13px 14px;
}
.bb-editor textarea:focus { border-color: rgba(201,150,46,.6) !important; }

/* ---------- Эмодзи --------------------------------------------------------- */
.emoji_box {
	background: var(--g-panel) !important; border: 1px solid var(--hair) !important;
	border-radius: var(--r-2xl) !important; box-shadow: var(--sh-panel-s) !important; color: var(--ink);
}
.emoji_category { color: var(--ink-7); font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; }
.emoji_symbol:hover, .emoji_list li:hover { background: rgba(201,150,46,.1); border-radius: var(--r-xs); }

/* ---------- Диалоги jQuery UI --------------------------------------------- */
.ui-widget-overlay { background: rgba(6,4,1,.8) !important; opacity: 1 !important; }
.ui-dialog {
	background: var(--g-panel) !important; border: 1px solid var(--hair) !important;
	border-radius: var(--r-2xl) !important;
	box-shadow: inset 0 1px 0 var(--sheen), 0 30px 60px -20px rgba(0,0,0,.85) !important;
	color: var(--ink) !important; padding: 0 !important; font-family: var(--font-sans);
	overflow: hidden;
}
.ui-dialog-titlebar {
	background: var(--g-head) !important; border: 0 !important;
	border-bottom: 1px solid rgba(0,0,0,.7) !important; border-radius: 0 !important;
	color: var(--ink-hi) !important; padding: 14px 16px !important;
	font-family: var(--font-mono) !important; font-size: var(--fs-xs) !important;
	text-transform: uppercase; box-shadow: var(--sh-head);
}
.ui-dialog-title { text-shadow: none !important; font-weight: 600 !important; }
.ui-dialog-titlebar-close { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.ui-dialog-titlebar-close .ui-icon { opacity: .6; }
.ui-dialog-titlebar-close:hover .ui-icon { opacity: 1; }
.ui-dialog-content { background: transparent !important; border: 0 !important; color: var(--ink-3) !important; padding: 18px !important; }
.ui-dialog label { color: var(--ink-5) !important; }
.ui-dialog .ui-dialog-buttonpane { border-top: 1px solid rgba(0,0,0,.6) !important; background: var(--g-head) !important; padding: 13px 16px !important; margin: 0 !important; }
.ui-dialog-buttonset button,
.ui-dialog-buttonset button:first-child,
.ui-dialog-buttonset button:last-child {
	background: var(--g-btn) !important; border: 0 !important; color: var(--ink-2) !important;
	border-radius: var(--r-md) !important; box-shadow: var(--sh-btn) !important; text-shadow: none !important;
	font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase;
	padding: 11px 16px !important; margin-left: 8px;
}
.ui-dialog-buttonset button:first-child { background: var(--g-gold) !important; color: var(--on-gold) !important; font-weight: 600; box-shadow: var(--sh-gold) !important; }
.ui-dialog-buttonset button:first-child:hover { background: var(--g-gold-h) !important; }
.ui-dialog-buttonset button:last-child:hover { color: var(--gold-warm) !important; }
.ui-dialog-buttonset button.ui-button-delete,
.dle-popup-userprofileadmin .ui-dialog-buttonset button:nth-child(2) { color: var(--rust-lt) !important; background: var(--g-btn) !important; box-shadow: var(--sh-btn) !important; }
.ui-dialog input[type="text"], .ui-dialog input[type="password"], .ui-dialog textarea, .ui-dialog select {
	background: var(--well) !important; border: 1px solid var(--hair-2) !important;
	color: var(--ink) !important; border-radius: var(--r-md) !important; box-shadow: var(--sh-well) !important;
}

.ui-autocomplete {
	background: var(--g-panel) !important; border: 1px solid var(--hair) !important;
	border-radius: var(--r-md) !important; box-shadow: var(--sh-panel-s) !important;
	padding: 4px !important; z-index: 3000; overflow: hidden;
}
.ui-autocomplete .ui-menu-item-wrapper, .ui-autocomplete li a {
	color: var(--ink-2) !important; padding: 10px 13px !important; border: 0 !important;
	background: transparent !important; font-size: var(--fs-body); border-radius: var(--r-sm);
}
.ui-autocomplete .ui-menu-item-wrapper.ui-state-active, .ui-autocomplete li a:hover {
	background: rgba(201,150,46,.14) !important; color: var(--gold-warm) !important;
}

/* ---------- Уведомления DLEPush ------------------------------------------- */
.DLEPush-notification, .DLEPush {
	background: linear-gradient(180deg,#241d10,#150f08) !important;
	border: 1px solid rgba(201,150,46,.4) !important;
	border-radius: var(--r-xl) !important;
	box-shadow: inset 0 1px 0 rgba(255,238,204,.15), 0 24px 44px -20px rgba(8,5,2,.95) !important;
	color: var(--ink) !important; font-family: var(--font-sans);
}
.DLEPush-header { color: var(--ink-hi) !important; font-family: var(--font-mono); font-size: var(--fs-xs); text-transform: uppercase; font-weight: 600; }
.DLEPush-message { color: var(--ink-6) !important; font-size: var(--fs-body); }
.DLEPush-notification.push-success { border-color: rgba(111,180,143,.5) !important; }
.DLEPush-notification.push-error { border-color: rgba(201,86,74,.5) !important; }
.DLEPush-notification.push-warning { border-color: rgba(201,150,46,.5) !important; }
.DLEPush-close { color: var(--ink-7) !important; opacity: 1; }
.DLEPush-close:hover { color: var(--ink) !important; }

/* ---------- Рейтинги и голосования ----------------------------------------- */
.ratingplus  { color: var(--patina) !important; }
.ratingminus { color: var(--rust-lt) !important; }
.ratingzero  { color: var(--ink-5) !important; }
.rating a:hover { color: var(--gold-lt); }

.voteprogress, .pollprogress {
	background: #0d0c09 !important; height: 14px !important;
	box-shadow: var(--sh-trough) !important; overflow: hidden; padding: 2px;
}
.voteprogress span, .pollprogress span {
	background-color: var(--gold) !important; background-image: var(--bar-tex) !important;
	height: 10px !important; display: block;
}
.pollprogress .poll2, .voteprogress .vote2 { background-color: var(--rust) !important; }
.pollprogress .poll3, .voteprogress .vote3 { background-color: var(--patina) !important; }
.pollprogress .poll4, .voteprogress .vote4 { background-color: #6a92b4 !important; }
.pollprogress .poll5, .voteprogress .vote5 { background-color: var(--gold-hi) !important; }
.progress { background: #0d0c09 !important; height: 14px; box-shadow: var(--sh-trough); padding: 2px; }
.progress-bar, .progress-blue { background-color: var(--gold) !important; background-image: var(--bar-tex) !important; height: 10px; }

/* ---------- Загрузчик файлов ---------------------------------------------- */
.qq-uploader { background: transparent; }
.qq-upload-button {
	background: var(--g-btn) !important; border: 0 !important; color: var(--ink-2) !important;
	border-radius: var(--r-md) !important; box-shadow: var(--sh-btn) !important;
	font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; padding: 11px 17px;
}
.qq-upload-button:hover { color: var(--gold-warm) !important; }
.qq-upload-drop-area {
	background: var(--well) !important; border: 1px dashed var(--hair-3) !important;
	color: var(--ink-6) !important; border-radius: var(--r-md) !important;
}
.qq-upload-drop-area-active { border-color: rgba(201,150,46,.6) !important; background: rgba(201,150,46,.06) !important; }
.qq-upload-file, .qq-upload-size { color: var(--ink-6) !important; font-size: var(--fs-body-s); }
.file-box { border: 1px solid var(--hair); background: var(--g-panel); border-radius: var(--r-md); padding: 13px 15px; }

/* ---------- TinyMCE -------------------------------------------------------- */
.tox .tox-tinymce, .tox.tox-tinymce-inline .tox-editor-header {
	border: 1px solid var(--hair-2) !important; border-radius: var(--r-md) !important; box-shadow: var(--sh-well) !important;
}
.tox .tox-toolbar__primary, .tox .tox-toolbar-overlord, .tox .tox-editor-header { background: var(--head-1) !important; border-color: rgba(0,0,0,.6) !important; }
.tox .tox-dialog__header, .tox .tox-dialog__footer { background: var(--head-1) !important; border-color: rgba(0,0,0,.6) !important; }
.tox .tox-button { background: var(--g-gold) !important; border: 0 !important; color: var(--on-gold) !important; border-radius: var(--r-md) !important; }
.tox .tox-button--secondary { background: var(--g-btn) !important; border: 0 !important; color: var(--ink-2) !important; }

/* ---------- Капча и календарь ---------------------------------------------- */
.c-captcha, .dle-captcha, .smart-captcha { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.c-captcha img, .dle-captcha img { border: 1px solid var(--hair-2); border-radius: var(--r-sm); }

.calendar { width: 100%; border-collapse: collapse; font-family: var(--font-mono); font-variation-settings: var(--font-feat); font-weight: var(--mono-weight); font-size: var(--fs-sm); }
.calendar tr th { background: transparent !important; color: var(--ink-7) !important; font-weight: 400; text-transform: uppercase; border-bottom: 1px solid rgba(0,0,0,.5); padding: 9px 3px; }
.calendar tr th.weekday { background: transparent !important; color: var(--rust-lt) !important; }
.calendar tr th.monthselect { color: var(--ink-2) !important; padding-bottom: 12px; }
.calendar tr th.monthselect a { color: var(--ink-2) !important; }
.calendar tr td { padding: 7px 3px; color: var(--ink-6); }
.calendar tr td.weekday { color: var(--rust-lt); }
.calendar tr td a { color: var(--gold-lt) !important; font-weight: 500; }
.monthselect-inner { background: var(--g-panel) !important; border: 1px solid var(--hair) !important; border-radius: var(--r-md) !important; }
.monthselect-title { color: var(--ink) !important; }

/* ---------- Прочее --------------------------------------------------------- */
.searchheading { font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; color: var(--ink-7); }
.notfound { color: var(--ink-6); }
.comments-user-profile { color: var(--ink); }
.masha-marker { background: rgba(201,150,46,.18) !important; border-bottom: 1px solid var(--gold); }
.masha-social { background: var(--g-panel) !important; border: 1px solid var(--hair) !important; border-radius: var(--r-md) !important; }
.txtsel_close { color: var(--ink-7) !important; }
.social-list-item, .ignore-list-item { border-bottom: 1px solid rgba(0,0,0,.5); padding: 11px 0; box-shadow: inset 0 1px 0 var(--sheen-2); }
.seperator { border-top: 1px solid var(--hair); margin: 18px 0; }
.dleshowhidden { color: var(--gold-lt); }
.quick-edit-text, .quick-edit-textarea {
	background: var(--well) !important; border: 1px solid var(--hair-2) !important;
	color: var(--ink) !important; border-radius: var(--r-md) !important; box-shadow: var(--sh-well) !important;
}
.form-check-input { accent-color: var(--gold); }
.image-bordered { border: 1px solid var(--hair); border-radius: var(--r-md); }
.image-shadows { box-shadow: 0 14px 34px -14px rgba(0,0,0,.8); border-radius: var(--r-md); }
.katex, .mathml-container, .mathml-block, .mathml-inline { color: var(--ink); }

.comments-image-gallery { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.comments-image-gallery img { border: 1px solid var(--hair); border-radius: var(--r-sm); }

/* Навигация движка, если где-то выводится своим классом */
.navigation { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.navigation a, .navigation span {
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--font-mono); font-size: var(--fs-xs); border-radius: var(--r-sm);
	color: var(--ink-2); padding: 10px 14px; min-width: 42px; background: var(--g-chip);
	box-shadow: inset 0 1px 0 rgba(255,238,204,.1), 0 2px 0 rgba(0,0,0,.55);
}
.navigation a:hover { color: var(--gold-warm); }
.navigation span:not(.nav_ext) { color: var(--on-gold); font-weight: 600; background: var(--g-gold); box-shadow: inset 0 1px 0 rgba(255,250,235,.6), 0 2px 0 var(--gold-edge); }
.navigation span.nav_ext { background: none; box-shadow: none; color: var(--ink-7); }

/* Личные сообщения — на случай, если раздел оставлен включённым */
.pm_head { font-family: var(--font-mono); font-size: var(--fs-micro); text-transform: uppercase; color: var(--ink-7); border-bottom: 1px solid rgba(0,0,0,.6); padding: 11px 16px; background: var(--g-head); }
.pm_last_date { font-family: var(--font-mono); font-size: var(--fs-micro); color: var(--ink-5); }
.pm_last_message { color: var(--ink-6); font-size: var(--fs-body); }
.pmlist .pm_list { display: block; padding: 14px; border-bottom: 1px solid rgba(0,0,0,.5); box-shadow: inset 0 1px 0 var(--sheen-2); }
.pmlist .pm_list:last-child { border-bottom: 0; }
.pm-unread-image, .pm-read-image, .pm-reply-image { filter: sepia(.5) brightness(1.1); opacity: .8; }
