/* Destorus template — стили модулей WebEngine CMS.
 * Правила модулей взяты из templates/default/css/style.css (работают через
 * CSS-переменные), переменные перекрашены в палитру Destorus.
 * Ниже — тёмная тема для компонентов Bootstrap 3 и элементы шаблона.
 */
:root {
	--d-bg: #131010;
	--d-panel: rgba(22, 17, 14, 0.88);
	--d-panel-2: rgba(35, 26, 20, 0.9);
	--d-border: rgba(255, 173, 0, 0.18);
	--d-border-2: #3b2f25;
	--d-accent: #ff9000;
	--d-accent-2: #ffad00;
	--d-gold: #ffcd79;
	--d-text: #e5d7ca;
	--d-muted: #ab9f92;
	--d-green: #89bf29;
	--d-red: #d9534f;

	--webenginebg1: var(--d-bg);
	--webenginebg2: transparent;
	--webenginebg3: transparent;
	--webenginecolor1: var(--d-gold);
	--webenginecolor2: var(--d-text);
	--webenginecolor3: var(--d-accent-2);
	--webenginecolor4: #fff;
	--webenginecolor5: #1d1612;
	--webenginecolor6: var(--d-gold);
	--webenginecolor7: var(--d-accent);
	--webenginecolor8: #2a1d14;
	--webenginecolor9: #ffeda5;
	--webenginecolor10: #6b4a24;
	--webenginecolor11: #b3301e;
	--webenginecolor12: #fff;
	--webenginecolor13: var(--d-accent);
	--webenginecolor14: var(--d-muted);
	--webenginecolor63: var(--d-border-2);
	--webenginecolor15: #231414;
	--webenginecolor16: var(--d-border-2);
	--webenginecolor17: #e0e0e0;
	--webenginecolor18: var(--d-accent);
	--webenginecolor19: var(--d-text);
	--webenginecolor20: var(--d-accent);
	--webenginecolor21: var(--d-border-2);
	--webenginecolor22: rgba(0, 0, 0, 0.25);
	--webenginecolor23: var(--d-muted);
	--webenginecolor24: rgba(0, 0, 0, 0.35);
	--webenginecolor25: var(--d-muted);
	--webenginecolor26: var(--d-accent);
	--webenginecolor27: var(--d-panel);
	--webenginecolor28: rgba(255, 255, 255, 0.03);
	--webenginecolor29: rgba(40, 28, 16, 0.9);
	--webenginecolor30: var(--d-accent);
	--webenginecolor31: rgba(255, 255, 255, 0.92);
	--webenginecolor32: var(--d-accent);
	--webenginecolor33: var(--d-text);
	--webenginecolor54: #1d1612;
	--webenginecolor55: rgba(0, 0, 0, 0.6);
	--webenginecolor56: #000;
	--webenginecolor57: var(--d-muted);
	--webenginecolor58: rgba(0, 0, 0, 0.7);
	--webenginecolor59: #fff;
	--webenginecolor60: var(--d-gold);
	--webenginecolor61: var(--d-text);
	--webenginecolor62: rgba(0, 0, 0, 0.6);
}

/* ========== МОДУЛИ (из default/css/style.css) ========== */
.page-title {
	color: var(--webenginecolor1);
	font-family: 'PT Sans', sans-serif;
	font-size: 32px;
	margin-bottom: 10px;
	font-weight: bold;
	text-align: center;
}

/* NEWS MODULE */
.panel-news {
	margin-bottom: 30px;
	color: var(--webenginecolor2);
	border: 0px;
	border-radius: 0px;
	box-shadow: 0 0 0px var(--webenginecolor16);
}
.panel-news .panel-heading {
	padding-top: 10px;
	padding-bottom: 10px;
}
.panel-news .panel-title {
	color: var(--webenginecolor2);
	font-size: 24px;
	font-weight: bold;
}
.panel-news .panel-body {
	padding: 10px;
}
.panel-news .panel-footer {
	border-top: 1px solid var(--webenginecolor21);
	background: var(--webenginecolor22);
	font-style: italic;
	font-size: 11px;
	height: 40px;
	color: var(--webenginecolor23);
}

/* RANKINGS MODULE */
.rankings-table {
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

.rankings-class-image {
	width: 30px;
	height: auto;
	box-shadow: 0 0 5px var(--webenginecolor14);
	border-radius: 50%;
}
.rankings-table tr td {
	border-bottom: 1px solid var(--webenginecolor16);
	padding: 10px;
	font-size: 18px;
	vertical-align: middle !important;
	text-align: center;
}
.rankings-table-place {
	color: var(--webenginecolor14);
	font-weight: bold;
	font-size: 24px;
	text-align: center;
}
.rankings-table tr:first-child td {
	color: var(--webenginecolor1);
	border-bottom: 3px solid var(--webenginecolor1);
}
.rankings-update-time {
	text-align: right;
	font-size: 11px;
	color: var(--webenginecolor14);
	padding: 10px 0px;
}
.rankings_menu {
	width: 100%;
	overflow: auto;
	text-align: center;
	margin-bottom: 10px;
}
.rankings_menu span {
	width: 100%;
	display: inline-block;
	padding: 10px 0px;
	font-size: 24px;
}
.rankings_menu a {
	display: inline-block;
	width: 150px;
	border: 1px solid var(--webenginecolor16);
	text-align: center;
	padding: 2px 0px;
	margin: 2px;
	background: var(--webenginecolor24);
	border-radius: 2px;
	color: var(--webenginecolor25);
}
.rankings_menu a.active {
	color: var(--webenginecolor26);
	border-color: var(--webenginecolor26);
}
.rankings_guild_logo tr td {
	border: 0px !important;
	padding: 0px !important;
	margin: 0px !important;
}
.rankings-gens-img {
	width: auto !important;
	height: 30px !important;
	border: 0 !important;
	box-shadow: 0 0 0px #000 !important;
	border-radius: 0px !important;
}

/* MY ACCOUNT MODULE */
.myaccount-table {
	width: 100%;
	background: var(--webenginecolor27);
	border: 1px solid var(--webenginecolor16);
}
.myaccount-table tr td:first-child {
	color: var(--webenginecolor14);
	font-weight: bold;
}
.myaccount-table tr td {
	border-bottom: 1px solid var(--webenginecolor16);
	padding: 15px !important;
}
.myaccount-table tr:last-child td {
	border: 0px;
}

/* GENERAL TABLE UI */
.general-table-ui {
	width: 100%;
	table-layout: fixed;
	background: var(--webenginecolor27);
	border: 1px solid var(--webenginecolor16);
	padding: 10px;
	margin: 10px 0px;
}
.general-table-ui tr td {
	padding: 5px;
	vertical-align: middle !important;
}
.general-table-ui tr:first-child td {
	color: var(--webenginecolor1);
}
.general-table-ui tr:nth-child(2n+2) td {
	background: var(--webenginecolor28);
}
.general-table-ui tr td {
	text-align: center;
}
.general-table-ui img {
	width: 50px;
	height: auto;
	box-shadow: 0 0 5px var(--webenginecolor14);
	border-radius: 0px;
}

/* PAYPAL */
.paypal-gateway-container {
	width: 100%;
}

.paypal-gateway-content {
	background: var(--webenginecolor29);
	border: 3px solid var(--webenginecolor30);
	padding: 15px;
	overflow: auto;
	border-radius: 5px;
	font-weight: bold;
}

.paypal-gateway-logo {
	width: 100%;
	height: 100px;
	background: var(--webenginecolor31) url('../img/paypal-logo-200-68.png') no-repeat center;
	background-size: contain;
	margin-bottom: 15px;
	border-radius: 5px;
}

.paypal-gateway-conversion-rate {
	margin: 0px auto;
	text-align: center;
	color: var(--webenginecolor2);
	font-size: 18px;
	padding: 10px 0px;
}

.paypal-gateway-form {
	width: 100%;
	margin: 20px auto;
	text-align: center;
}

.paypal-gateway-form div {
	display: inline-block;
	padding: 0px 10px;
	color: var(--webenginecolor2);
	font-size: 24px;
}

.paypal-gateway-form input[type=text] {
	width: 60px;
	font-size: 24px;
	border: 3px solid var(--webenginecolor32);
	border-radius: 5px;
	color: var(--webenginecolor32);
}

.paypal-gateway-continue {
	margin: 0px auto;
	text-align: center;
}

.paypal-gateway-continue input[type=submit] {
	background: url('../img/paypal-submit.jpg') no-repeat;
	width: 200px;
	height: 40px;
	border: 0px;
}

.module-requirements {
	font-size: 12px;
	margin-top: 20px;
}

/* SIDEBAR */
.panel-sidebar {
	background: var(--webenginecolor27);
	border: 0px;
	border-radius: 0px;
	box-shadow: 0 0 10px var(--webenginecolor16);
}

.panel-sidebar > .panel-heading {
	background: var(--webenginecolor5) !important;
	color: var(--webenginecolor6) !important;
	font-family: 'PT Sans', sans-serif;
	border: 0px;
	border-radius: 0px;
	border-bottom: 3px solid var(--webenginecolor7) !important;
}

.panel-usercp {
	background: url('../img/usercp_bg.jpg') no-repeat top center;
	background-size: cover;
}

.panel-usercp ul {
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}

.panel-usercp ul li {
	display: table;
	width: 100%;
	vertical-align: middle;
	line-height: 30px;
}

.panel-usercp ul li a {
	color: var(--webenginecolor33) !important;
	font-weight: bold;
}
.panel-usercp ul li a:active, .panel-usercp ul li a:hover {
	color: var(--webenginecolor1) !important;
}

.panel-usercp ul li img {
	position: relative;
	top: -2px;
	width: 25px;
	height: 25px;
	margin-right: 5px;
}

.sidebar-banner {
	margin: 20px 0px;
	border: 0px;
}

.sidebar-banner img {
	box-shadow: 0 0 10px var(--webenginecolor16);
	border: 0px;
    border-radius: 5px;
}

/* GENERAL PANEL STYLING */
.panel-general {
	margin-bottom: 30px;
	background: var(--webenginecolor27);
	border: 1px solid var(--webenginecolor16);
	border-radius: 0px;
	color: var(--webenginecolor2);
}

.panel-body .panel-title {
	color: var(--webenginecolor14);
	font-family: 'PT Sans', sans-serif;
	font-size: 14px;
	border-bottom: 1px solid var(--webenginecolor16);
	margin-bottom: 20px !important;
	font-weight: bold;
}

/* ADD STATS MODULE */
.panel-addstats {
	margin-bottom: 30px;
	background: var(--webenginecolor27);
	border: 1px solid var(--webenginecolor16);
	border-radius: 0px;
	color: var(--webenginecolor2);
}
.panel-addstats .character-avatar img {
	width: 100px;
	height: auto;
	box-shadow: 0 0 5px var(--webenginecolor14);
	border-radius: 0px;
}
.panel-addstats .character-name {
	color: var(--webenginecolor14);
	font-family: 'PT Sans', sans-serif;
	font-size: 18px;
	border-bottom: 1px solid var(--webenginecolor16);
	padding: 20px 0px;
	margin-bottom: 20px !important;
	font-weight: bold;
}

/* DOWNLOADS */
.panel-downloads {
	margin-bottom: 30px;
	background: var(--webenginecolor27);
	border: 1px solid var(--webenginecolor16);
	border-radius: 0px;
	color: var(--webenginecolor2);
}
	.download-description {
		font-size: 11px;
		position: relative;
		top: -7px;
		color: var(--webenginecolor14);
	}

.online-status-indicator {
	margin-left: 5px;
}

/* WEBENGINE CMS */
.webengine-powered { color: var(--webenginecolor14) !important; }
.webengine-powered:active, .webengine-powered:hover { color: #ff3214 !important; }

/* MY ACCOUNT CHARACTER LIST */
.myaccount-character-block {
	background: var(--webenginecolor54);
	border: 1px solid var(--webenginecolor14);
	padding: 5px;
	border-radius: 3px;
	display: inline-block;
	margin: 0px auto;
	box-shadow: 0 0 10px var(--webenginecolor55);
}
	.myaccount-character-block img {
		width: 100px;
		height: auto;
		border-radius: 3px;
		box-shadow: 0 0 5px var(--webenginecolor56);
		transition: all 0.3s ease;
	}
		.myaccount-character-block img:hover {
			filter: brightness(120%);
		}
.myaccount-character-block-location {
	font-size: 12px;
	color: var(--webenginecolor57);
	margin-bottom: 20px;
	margin-top: 2px;
	line-height: 1.2;
}
.myaccount-character-block-level {
	position: relative;
	top: -77px;
	display: inline-block;
	background: var(--webenginecolor58);
	padding: 0px 5px;
	border-radius: 3px;
	color: var(--webenginecolor59);
	font-size: 10px;
}
.myaccount-character-name a {
	font-weight: bold;
	color: var(--webenginecolor60);
	font-size: 16px;
}

/* RANKINGS FILTER BY CLASS */
.rankings-class-filter {
	display: inline-block;
	list-style-type: none;
	margin: 20px auto;
	padding: 10px 20px;
	border-radius: 10px;
}

	.rankings-class-filter li {
		display: inline-block;
		transition: all 0.3s ease;
		margin-bottom: 10px;
	}
	
	.rankings-class-filter li:hover {
		filter: grayscale(0%);
	}

.rankings-class-filter-selection {
	display: inline-block;
	width: 75px;
	text-align: center;
	color: var(--webenginecolor61);
	font-size: 11px;
	cursor: pointer;
}

	.rankings-class-filter-selection:hover {
		color: var(--webenginecolor61) !important;
	}

	.rankings-class-filter-selection:hover img {
		filter: brightness(120%);
	}

.rankings-class-filter-selection img {
	width: 40px;
	height: auto;
	border-radius: 50%;
	margin-bottom: 5px;
    transition: all 0.3s ease;
	box-shadow: 0px 0px 10px 0px var(--webenginecolor62);
}

.rankings-class-filter-grayscale {
	filter: grayscale(100%);
}

/* Home - News List */
.home-news-block .home-news-block-header h2 {
	padding: 0px !important;
	margin: 0px 0px 20px 0px !important;
	font-style: italic;
}

.home-news-block .home-news-block-header a {
	display: inline-block;
	padding-top: 5px;
	font-style: italic;
	font-size: 16px;
}

.home-news-block-article {
	margin-top: 10px;
}

.home-news-block-article .home-news-block-article-type {
	display: block;
	border: 1px solid var(--webenginecolor1);
	padding: 5px;
	text-align: center;
	color: var(--webenginecolor1);
}

.home-news-block-article .home-news-block-article-title-container {
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-news-block-article .home-news-block-article-title, .home-news-block-article .home-news-block-article-date {
	line-height: 30px;
}

/* Event Timer Block */
.event-schedule-open {
	color: green;
}

.event-schedule-inprogress {
	color: orange;
}

.panel-sidebar-events .smalltext {
	font-size: 11px;
	position: relative;
	top: -5px;
}

/* ========== БАЗА ПОВЕРХ BOOTSTRAP ========== */
body {
	background-color: var(--d-bg);
	color: var(--d-text);
	font-family: 'PT Sans Narrow', 'PT Sans', Tahoma, Arial, sans-serif;
	font-size: 15px;
	line-height: 1.45;
}
a { color: var(--d-accent-2); }
a:hover, a:focus { color: var(--d-accent); text-decoration: none; outline: none; }
.ta_c { text-align: center; }

/* сброс отступов у блоков вёрстки (раньше это делал reset.css) */
.main__bar p, .menu_container p, .scl p, .remind__header p, .main__title, .remind__title,
.statistics__title, .md-content_title, .md__title, .md__txt, .d-news__title, .d-news__text,
.logo__txt, .stats__container_title { margin: 0; }
.main__title { margin: 10px 0 0; line-height: 1.2; }
.remind__title { line-height: 1.2; }
.main__footer ul, .menu_container ul { list-style: none; margin: 0; padding: 0; }

/* ========== ВЕРХНЯЯ ПАНЕЛЬ / МЕНЮ ========== */
.main__bar { border-bottom: 1px solid rgba(255, 173, 0, 0.08); }
.bar { min-height: 80px; }
.menu_container a:hover, .menu_container a:focus { color: #fff; }
.menu__img { background-size: contain; }

/* выбор языка: текущий язык + выпадающий ряд остальных */
.language__list {
	position: absolute;
	top: 0;
	right: 100%;
	display: flex;
	gap: 2px;
	visibility: hidden;
	opacity: 0;
	transform: translateX(10px);
	transition: .25s all;
}
.language--open .language__list { visibility: visible; opacity: 1; transform: none; }
.language .language__list a {
	position: static;
	visibility: visible;
	background-color: rgba(0, 0, 0, 0.85);
}
.language span, .language a { font-family: inherit; text-transform: lowercase; }

/* ========== ЛОГОТИП (режимы image / text) ========== */
.logo__link--image, .logo__link--text { display: flex; align-items: center; justify-content: center; }
.logo__image { max-height: 178px; width: auto; }
.logo__name {
	font-family: 'Conv_IcekingdomFrozenCyrillic', 'PT Sans Narrow', sans-serif;
	font-size: 90px;
	color: var(--d-gold);
	text-shadow: 0 0 20px rgba(255, 144, 0, .6), 0 4px 6px #000;
	text-transform: uppercase;
	letter-spacing: 4px;
}

/* ========== ГЛАВНАЯ ========== */
.server__type a { color: inherit; }
.server__type a:hover { color: #fff; }
.slider__title { font-size: 26px; line-height: 1.1; }

/* блок рейтинга с вкладками (аналог tab_content_l2b из вёрстки) */
.d-tabs__body { position: relative; margin: 10px auto; min-height: 60px; transition: height .5s ease; }
.d-tabs__pane {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transform: rotateY(90deg) scale(1.25, 1);
	opacity: 0;
	visibility: hidden;
	transition: all .5s ease;
}
.d-tabs__pane.active { opacity: 1; visibility: visible; transform: rotateY(0) scale(1, 1); }
.top-item { overflow: hidden; }
.top-item .rcol span.top-val { width: auto; min-width: 60px; padding: 0 5px; text-align: right; }
.top-item .lcol { max-width: 70%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.char_name a { color: #ffd78b; }
.char_name a:hover { color: #fff; }
.d-tabs__more {
	display: block;
	text-align: right;
	font-size: 13px;
	color: var(--d-muted);
	padding: 2px 10px 0 0;
}
.d-tabs__more:hover { color: var(--d-accent); }
.statistics__time .time__info { color: #ffe5c7; }

/* новости движка вместо VK-виджета */
.d-news { display: flex; flex-direction: column; gap: 14px; }
.d-news__item {
	display: flex;
	background: rgba(10, 8, 7, 0.72);
	border: 1px solid var(--d-border);
	border-radius: 10px;
	overflow: hidden;
	transition: .3s all;
}
.d-news__item:hover { border-color: rgba(255, 144, 0, 0.55); box-shadow: 0 0 20px rgba(255, 144, 0, 0.12); }
.d-news__date {
	flex-shrink: 0;
	width: 90px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: linear-gradient(180deg, rgba(179, 48, 30, .85), rgba(77, 35, 28, .85));
	color: #ffcd89;
	font-size: 13px;
}
.d-news__date span { font-family: 'Conv_IcekingdomFrozenCyrillic', sans-serif; font-size: 36px; line-height: 1; color: #fff; }
.d-news__body { padding: 14px 18px; min-width: 0; }
.d-news__title { font-size: 20px; font-weight: bold; text-transform: uppercase; line-height: 1.2; margin-bottom: 6px; }
.d-news__title a { color: var(--d-gold); }
.d-news__title a:hover { color: var(--d-accent); }
.d-news__text { color: var(--d-muted); font-size: 14px; margin-bottom: 6px; }
.d-news__more { font-size: 13px; text-transform: uppercase; }
.d-news__empty { padding: 40px; text-align: center; color: var(--d-muted); background: rgba(0,0,0,.4); border-radius: 10px; }
.d-news__all { text-align: center; margin-top: 20px; }
.d-news__all .remind__btn { display: inline-block; padding: 12px 30px; }
.widget__group .panel { margin-bottom: 20px; }
.contact__link { color: inherit; }

/* ========== ПОДВАЛ: вход / кабинет ========== */
.d-login .remind__input-wrp { max-width: 900px; }
.d-login .remind__input { flex: 1 1 50%; min-width: 0; border-right: 1px solid #4b5249; outline: none; }
.d-login .remind__input:focus { background-color: #2d1a1a; }
button.remind__btn { font-family: inherit; line-height: 1.2; }
.d-login__links { text-align: center; font-size: 14px; }
.d-login__links a { color: var(--d-muted); }
.d-login__links a:hover { color: var(--d-accent); }
.d-login__links span { margin: 0 8px; color: #555; }
.d-usercp-quick { background: none !important; margin-top: 15px; }
.d-usercp-quick ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.d-usercp-quick ul li {
	display: flex !important;
	width: auto !important;
	align-items: center;
	padding: 6px 14px;
	border: 1px solid #4b5249;
	border-radius: 15px;
	background: rgba(35, 20, 20, 0.8);
}
.footer__copy { font-size: 15px; }
.footer__copy_rul a { margin: 0 3px; }
.footer__copy_rul a:hover { color: var(--d-accent); }
.footer__meta {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 15px;
	padding-top: 12px;
	border-top: 1px solid rgba(204, 204, 204, 0.12);
	font-size: 13px;
	color: #8d8479;
}
.footer__sep { margin: 0 6px; color: #555; }
#tServerTime, #tLocalTime { color: #fff; }
.webengine-powered { color: #8d8479 !important; }

/* ========== ВНУТРЕННИЕ СТРАНИЦЫ ========== */
.header-wrp--inner {
	min-height: 0;
	padding-bottom: 30px;
	background-position: center 30%;
	position: relative;
}
.header-wrp--inner:after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 120px;
	background: linear-gradient(to bottom, rgba(19, 16, 16, 0), var(--d-bg));
	pointer-events: none;
}
.header-wrp--inner .main__logo { min-height: 0; padding-top: 30px; position: relative; z-index: 1; }
.d-quick {
	position: relative;
	z-index: 1;
	text-align: center;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 10px;
	text-shadow: 0 2px 3px #000;
}
.d-quick a { color: #fff; margin: 0 6px; }
.d-quick a:hover { color: var(--d-accent); }
.d-quick > span { color: #777; }
.d-quick .d-quick__logout { color: #ff6a4d; }
.d-quick .d-quick__online { margin-left: 25px; color: var(--d-muted); }
.d-quick__online b { color: #86ff05; }

.d-page {
	background: var(--d-bg) url(../images/bg__tops.jpg) no-repeat center top;
	background-size: cover;
	padding: 10px 6px 50px;
	min-height: 500px;
}
.d-page__box {
	background: var(--d-panel);
	border: 1px solid var(--d-border);
	border-radius: 12px;
	box-shadow: 0 0 40px rgba(0, 0, 0, 0.7), inset 0 0 60px rgba(0, 0, 0, 0.5);
	padding: 25px 30px 30px;
}
.d-page__content { min-width: 0; }
.d-sidebar-btn { text-align: center; margin: 5px 0 20px; }
.d-sidebar-btn .d-btn { margin: 0; font-size: 26px; max-width: 100%; }

.page-title {
	color: var(--d-gold);
	font-size: 34px;
	text-transform: uppercase;
	text-shadow: 0 2px 3px rgba(0, 0, 0, .77);
	margin: 0 0 25px;
	padding-bottom: 15px;
	position: relative;
}
.page-title:after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 1px;
	background: linear-gradient(to right, transparent 0%, rgba(255, 173, 0, .45) 20%, rgba(255, 173, 0, .45) 80%, transparent 100%);
}

/* ========== BOOTSTRAP 3 — ТЁМНАЯ ТЕМА ========== */
.d-page h1, .d-page h2, .d-page h3, .d-page h4, .d-page h5 { color: var(--d-gold); }
hr { border-top-color: var(--d-border-2); }
.text-muted, .help-block { color: var(--d-muted); }

.panel {
	background: var(--d-panel-2);
	border: 1px solid var(--d-border-2);
	border-radius: 8px;
	box-shadow: none;
	color: var(--d-text);
}
.panel > .panel-heading,
.panel-default > .panel-heading {
	background: rgba(0, 0, 0, 0.45);
	border-bottom: 1px solid var(--d-border);
	color: var(--d-gold);
	border-radius: 8px 8px 0 0;
}
.panel-title, .panel-title > a { color: var(--d-gold); font-weight: bold; text-transform: uppercase; }
.panel-footer { background: rgba(0, 0, 0, 0.3); border-top: 1px solid var(--d-border-2); color: var(--d-muted); }
.panel-sidebar { box-shadow: 0 0 15px rgba(0, 0, 0, .5); border-radius: 8px; }
.panel-sidebar > .panel-heading { border-radius: 8px 8px 0 0; border-bottom: 2px solid var(--d-accent) !important; }
.panel-usercp { background: var(--d-panel-2); }
.panel-usercp ul li { padding: 2px 0; }
.panel-usercp ul li.active a { color: var(--d-accent) !important; }
.panel-news .panel-heading { background: transparent; border-bottom: 1px solid var(--d-border); }
.panel-news .panel-title a { color: var(--d-gold); }
.panel-news .panel-title a:hover { color: var(--d-accent); }
.panel-news .panel-body { line-height: 1.6; }
.panel-news .panel-body img { max-width: 100%; height: auto; }

.table { color: var(--d-text); background: transparent; }
.table > thead > tr > th {
	border-bottom: 2px solid var(--d-accent);
	color: var(--d-gold);
	text-transform: uppercase;
	font-size: 13px;
}
.table > tbody > tr > td, .table > tbody > tr > th,
.table > tfoot > tr > td, .table > thead > tr > td { border-top: 1px solid var(--d-border-2) !important; }
.table-striped > tbody > tr:nth-of-type(odd) { background-color: rgba(255, 255, 255, 0.03); }
.table-hover > tbody > tr:hover { background-color: rgba(255, 144, 0, 0.07); }
.table-bordered, .table-bordered > tbody > tr > td, .table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th, .table-bordered > thead > tr > td { border-color: var(--d-border-2) !important; }
.rankings-table tr:hover td { background: rgba(255, 144, 0, 0.06); }
.rankings-table tr td a { color: #ffd78b; }
.rankings_menu a { border-radius: 15px; }
.rankings_menu a:hover { color: #fff; border-color: var(--d-accent); }

.form-control {
	background: #231414;
	border: 1px solid #4b5249;
	color: #eee;
	border-radius: 8px;
	box-shadow: none;
	height: 40px;
}
.form-control:focus { border-color: var(--d-accent); box-shadow: 0 0 8px rgba(255, 144, 0, .35); background: #2d1a1a; }
.form-control[disabled], .form-control[readonly] { background: #1a1212; color: var(--d-muted); }
select.form-control option { background: #231414; }
.form-horizontal .control-label, label { color: var(--d-muted); font-weight: normal; text-align: left !important; }
.input-group-addon { background: #3a2a1f; border-color: #4b5249; color: var(--d-gold); }
input[type=text], input[type=password], input[type=number], input[type=email] { color: #eee; }

.btn { border-radius: 8px; text-transform: uppercase; font-weight: bold; transition: .25s all; }
.btn-primary {
	color: #ffeda5;
	background-color: rgba(34, 61, 8, 0.9);
	border: 1px solid var(--d-green);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active,
.open > .dropdown-toggle.btn-primary {
	color: #fff !important;
	background-color: rgba(92, 151, 34, 0.95) !important;
	border-color: #a1d93e !important;
}
.btn-default { background: #2a1d14; border-color: #6b4a24; color: var(--d-text); }
.btn-default:hover, .btn-default:focus { background: #3b2a1c; border-color: var(--d-accent); color: #fff; }
.btn-danger { background: #8a2317; border-color: #b3301e; }
.btn-success { background: rgba(34, 61, 8, 0.9); border-color: var(--d-green); }
.btn-warning { background: #9a5a00; border-color: var(--d-accent); }

.alert { border-radius: 8px; border-width: 1px; }
.alert-danger { background: rgba(179, 48, 30, .2); border-color: #b3301e; color: #ffb4a8; }
.alert-success { background: rgba(89, 150, 33, .18); border-color: var(--d-green); color: #c6ff57; }
.alert-warning { background: rgba(255, 144, 0, .15); border-color: var(--d-accent); color: #ffd28a; }
.alert-info { background: rgba(56, 110, 151, .2); border-color: #386e97; color: #aeeaff; }

.well { background: rgba(0, 0, 0, 0.35); border-color: var(--d-border-2); box-shadow: none; }
.thumbnail { background: rgba(0, 0, 0, 0.35); border-color: var(--d-border-2); }
a.thumbnail:hover, a.thumbnail:focus { border-color: var(--d-accent); }
.pagination > li > a, .pagination > li > span { background: #1d1612; border-color: var(--d-border-2); color: var(--d-accent-2); }
.pagination > li > a:hover { background: #2a1d14; color: #fff; }
.pagination > .active > a, .pagination > .active > span { background: var(--d-accent) !important; border-color: var(--d-accent) !important; color: #000 !important; }
.nav-tabs { border-bottom-color: var(--d-border-2); }
.nav-tabs > li > a:hover { background: rgba(255, 255, 255, .05); border-color: transparent; }
.nav-tabs > li.active > a, .nav-tabs > li.active > a:focus, .nav-tabs > li.active > a:hover {
	background: var(--d-panel-2); color: var(--d-gold); border-color: var(--d-border-2) var(--d-border-2) transparent;
}
.list-group-item { background: rgba(0, 0, 0, .3); border-color: var(--d-border-2); }
.modal-content { background: rgb(26, 30, 30); border: 1px solid rgb(53, 53, 53); color: var(--d-text); }
.modal-header, .modal-footer { border-color: rgb(53, 53, 53); }
.close { color: #fff; text-shadow: none; }
.tooltip-inner { background: #000; border: 1px solid var(--d-border); }
.progress { background: #231414; }
.label-default { background: #4b5249; }

/* сохраняем шкалы и таблицы модулей внутри контейнера */
.d-page__content .table-responsive, .d-page__content table { max-width: 100%; }
.myaccount-table tr td { color: var(--d-text); }
.paypal-gateway-content { color: var(--d-text); }
.castle-siege-block .castle-owner-panel { border-color: var(--d-border); }

/* кнопка AdminCP, которую движок выводит после шаблона */
.admincp-button {
	position: fixed !important;
	left: 10px;
	bottom: 10px;
	top: auto !important;
	right: auto !important;
	z-index: 200;
	background: #000 !important;
	color: var(--d-accent) !important;
	border: 1px solid var(--d-accent) !important;
}

/* модальное окно загрузок */
.md-content { color: var(--d-text); padding-bottom: 20px; }
.md__txt { color: var(--d-muted); }
.md__txt--empty { padding: 20px; }
.files__link { width: auto; min-width: 165px; justify-content: center; }
.files__link span { flex-grow: 0; }
.md__footer { text-align: center; padding-top: 10px; border-top: 1px solid rgb(53, 53, 53); margin: 10px 20px 0; }
.files__link--all { border-color: var(--d-green); }
.files__link--all:hover { background: rgba(92, 151, 34, 0.88); color: #fff; }

/* ========== АДАПТИВ ========== */
@media (max-width: 1200px) {
	.bar { min-height: 60px; padding-right: 60px; }
	.menu_container a:hover, .menu_container a:focus { color: var(--d-accent); }
}
@media (max-width: 991px) {
	.d-page__sidebar { margin-top: 30px; }
}
@media (max-width: 767px) {
	.d-page__box { padding: 15px; border-radius: 8px; }
	.page-title { font-size: 26px; }
	.d-quick .d-quick__online { display: block; margin: 8px 0 0; }
	.d-news__date { width: 70px; }
	.d-news__date span { font-size: 28px; }
	.d-login .remind__input-wrp { flex-direction: column; }
	.d-login .remind__input { border-right: 0; border-bottom: 1px solid #4b5249; flex-basis: auto; }
	.footer__meta { justify-content: center; text-align: center; }
	.logo__name { font-size: 48px; }
	/* таблицы модулей скроллятся, а не ломают вёрстку */
	.d-page__content { overflow-x: auto; }
	.d-page__content [class*="col-xs-8"][class*="col-xs-offset-2"] { width: 100%; margin-left: 0; }
}

/* компактное меню: 6 пунктов + язык помещаются в 1200px в одну строку */
@media (min-width: 1201px) {
	.bar { flex-wrap: nowrap; }
	.menu_container a { padding: 5px 6px; font-size: 15px; }
	.menu__img { width: 34px; height: 34px; margin-right: 8px; }
	.menu_desc { font-size: 11px; }
	.lang { margin-left: 10px; flex-shrink: 0; }
}
@media (min-width: 1201px) and (max-width: 1320px) {
	.menu_desc { display: none; }
}

/* подвал внутренних страниц без пустой высоты лендинга */
.page-inner .main__footer { min-height: 0; padding-top: 25px; background-position: center bottom; }

/* новости на всю ширину, когда справа нет виджета */
.widget--full .widget__news { max-width: 900px; margin: 0 auto; }
