html {scroll-behavior: smooth;}
body {
  background: linear-gradient(rgba(0,0,0,0.9), rgba(0,0,0,0.8));  
  padding-top: 60px; font-size: 18px; font-family: 'Commissioner','Oswald','Roboto', Arial, sans-serif;
  background-attachment: fixed;
}

@font-face {
  font-family: 'Commissioner';
  font-display: swap;   
  src: url('../fonts/Commissioner-Regular.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: 'Commissioner';
  font-display: swap;   
  src: url('../fonts/Commissioner-Light.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 300;
}

@font-face {
  font-family: 'Oswald';   
  font-display: swap; 
  src: url('../fonts/Oswald-Regular.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: 'Oswald';   
  font-display: swap; 
  src: url('../fonts/Oswald-Light.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: 'Roboto';    
  font-display: swap; 
  src: url('../fonts/Roboto-Regular.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: 'Roboto';    
  font-display: swap; 
  src: url('../fonts/Roboto-Light.woff2') format('woff2'); 
  font-style: normal;
  font-weight: 300;
}

h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6 {
  font-family: 'Oswald',Arial,sans-serif;
  /* font-weight: 400; */
  letter-spacing: 3px;
  /*  BS5 margin-top: 0; margin-bottom: 0.5rem; font-weight: 500; line-height: 1.2; */
}

.f-comm {
  font-family: "Commissioner", serif;
  font-optical-sizing: auto;
  letter-spacing: 1px;
  font-style: normal;
}

 .f-os {
   font-family: "Oswald", serif;
   font-optical-sizing: auto;
   letter-spacing: 2px;
   font-style: normal;
 }

 .f-rb {
  font-family: 'Roboto',sans-serif;
  font-optical-sizing: auto;
  letter-spacing:  auto;
  font-style: normal;
}

a {text-decoration: none;}
/* a { color: #6600CC; text-decoration: none;} */
/* a:hover {color: #CC00CC !important; text-decoration: none;} */

.m-bg {background-color: #121416 !important;}
.bg-2  {background-color: #222426 !important;}
.bg-3  {background-color: #40484e !important;}

.m-color {color: #6600CC !important;}
.m-color-2 {color: #CC00CC !important;}
.m-color-3 {color: #e7b870 !important;}
.m-color-4 {color: #12c401 !important;}

footer a {color: #FFF;}
footer a:hover {color: #CC00CC;}

.text-shadow {text-shadow: 2px 2px 4px rgba(0,0,0,0.4);}

/* Цвет иконок в шапке */ 
.top-link a:hover {color: #e7b870 !important; text-decoration: none;}

.soc-whatsapp {text-decoration: none;}
.soc-whatsapp svg path {fill: #25D366;transition: fill 0.3s ease;}
.soc-whatsapp:hover svg path {fill: #000;}

.soc-telegram {text-decoration: none;}
.soc-telegram svg path {fill: #2AABEE;transition: fill 0.3s ease;}
.soc-telegram:hover svg path {fill: #000;}

.soc-vk {text-decoration: none;}
.soc-vk svg path {fill: #07f;transition: fill 0.3s ease;}
.soc-vk:hover svg path {fill: #000;}

 /* .section {padding: 2rem 0; scroll-margin-top: 60px; отступ при скролле по якорю } */
.section h2 {color: #FFF;}

/* Оформление H2 */
.section h2:after {
    content: "";
    display: block;
    width: 50px;
    height: 3px;
    background: #C59D5F;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    margin-top: 10px;
}

.hero {
  position: relative;
  min-height: 30vh;
  display: grid;
  align-items: center;
  overflow: hidden;
  /* background: linear-gradient(rgba(13, 15, 64, 0.6), rgba(0,0,0,0.99), rgba(13,15,64,0.6)); */
  /* на 90 градус. background: linear-gradient(90deg, rgba(13, 15, 64, 0.7), rgba(0,0,0,0.99), rgba(13,15,64,0.7)); */
}

/* увеличение картинки анимация
.hero::before {
  content: '';
  position: absolute;
  top: -50px; 
  left: -50px; 
  width: calc(100% + 100px); 
  height: calc(100% + 100px); 
  background: url('../../img/bg-header.webp') center/cover no-repeat;
  animation: floatss 20s ease-in-out infinite;
  z-index: -1;
}
*/


/* Добавьте этот новый блок с анимацией
@keyframes floatss {
  0%, 100% { 
    transform: scale(1) translate(0, 0); 
  }
  25% { 
    transform: scale(1.03) translate(-15px, 10px); 
  }
  50% { 
    transform: scale(1.05) translate(5px, -15px); 
  }
  75% { 
    transform: scale(1.02) translate(10px, 8px); 
  }
}
 */

/* Адаптивность */
@media (max-width: 991px) {
  body {padding-top: 56px;}
/* .hero {min-height: 50vh;} */
/* .section {padding: 1.5rem 0;} */

}


/* Подсветка пункта верхнего меню */
.dropdown-item { background-color: transparent !important;}

.navbar-nav .navbar-brand {color:#FFF;}
.navbar-nav .nav-item .nav-link {color: #FFF;}
.navbar-nav .nav-item .nav-link.active {color: #cadfff; text-decoration:none;}
.navbar-nav .nav-link {font-size:20px; padding-left: 15px; margin:4px 8px 3px 0;}
.navbar-nav .none-active .nav-link {text-decoration:none; color:#FFF;} /* без подменю вставить nav-item */

.navbar-nav .nav-item .nav-link {color: #FFF;}
.navbar-nav .nav-item.active .nav-link, .navbar-nav .nav-item:hover .nav-link {color: #ccdffa;}

/* Подменю */
.dropdown-menu {background: #212529;}
.nav-link .dropdown-toggle {color:#FFF;}
.dropdown-item.active, .dropdown-item:active {background-color: #045296;font-size:16px; color: #FFF;  font-weight:400;}
.dropdown-item {font-size:18px; color:#FFF;}

/* Navmenu font-family: 'Roboto',sans-serif; */
  .navmenu a,
  .navmenu a:focus {
    color: #dfdfdf !important;
    font-size: 20px;
    letter-spacing: 1px;
    font-family: "Oswald", serif;
    font-weight: 400;
  }

  .navmenu li:hover>a,
  .navmenu .active,
  .navmenu .active:focus {
    color: #FFF !important;
  }

  /* Эффект при наведении на логотип */
.navbar-brand img {
  transition: transform 0.5s ease; /* Плавно */
}

.navbar-brand:hover img {
  transform: translateX(6px); /* Сдвиг + поворот rotate(15deg) */
}

 /* Корректировка кнопок BS */
 .btn-primary, .btn-primary:active, .btn-primary:visited {
  background-color: #e7b870 !important; color: #121416 !important;
}

 .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary:visited {
  background-color: #121416!important; color: #e7b870 !important; border-color: #e7b870 !important;
}

.btn-outline-primary:hover {
  background-color: #e7b870 !important; color: #121416 !important ;
}

.btn-primary:hover {
  background-color: #121416 !important; color: #e7b870 !important ;
}

/* Отключение всех фокусов */
*:focus {
    box-shadow: none !important;
    outline: none !important;
}

/* Карточки  includes/card-middle.tpl */
.adv-card {
  border: 2px solid #C59D5F;
  border-radius: 10px;
  transition: 
    border-color 0.3s ease-in-out,
    transform 0.3s ease-in-out;
  transform: translateZ(0);
}

.adv-card:hover {
  border-color: #ce9238;
  transform: translateY(-2px) translateZ(0);
}

.adv-card:hover h2 a {
  color: #CC00CC;
}

/* Фон карточки при наведении - includes/card-middle.tpl */
  .custom-hover-card:hover .position-absolute[style*="opacity: 0"] {
    opacity: 1 !important;
  }

  /* При наведении ярлык вылезает */
  .custom-hover-card:hover .category-badge {
    opacity: 1 !important;
}  

  .img-crop-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 45%; 
    overflow: hidden;
  }
  
  .img-crop-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top; 
  }
  
  .card-img-top {
    transition: transform 0.3s ease;
  }

  /* ярлык */
  .category-badge {
    position: absolute;
    top: 0;
    left: 0;
    color: #FFF;
    padding: 0.5rem 1rem;
    opacity: 0; /* Изначально невидим */
    background-color: #ce9238;
    border-bottom-right-radius: 0.375rem !important;
    transition: opacity 0.3s ease;
    z-index: 2;
}

/* Фон карточки при наведении includes/low-rise.tpl */
  .card-hover-bg {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
  }
  
  .card-hover-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 
      linear-gradient(rgba(0,0,0,0.7), rgba(0, 0, 0, 0.95)), /* Чёрный слой с opacity 0.9 */
      url('https://viruson.ru/templates/vipadmin/img/web/card-hover-bg.png') no-repeat center center;
    background-size: cover;
    opacity: 0;
    z-index: 0;
    transition: opacity 0.3s ease;
  }
  
  .card-hover-bg:hover::before {
    opacity: 0.7;
  }
  
  .card-hover-bg .card-body {
    position: relative;
    z-index: 1;
  }
  
  .card-hover-bg:hover .card-body,
  .card-hover-bg:hover .card-body a {
    color: white !important;
  }


/* DLE */
/* === Общие стили для input, select, textarea === */

input[type="text"]:not(#story), /* :not(#story) - не применяется к окну в navbar */
input[type="search"],
input[type="password"],
input[type="email"],
textarea,
select {
	/* border-radius: 0.375rem; */
	padding: 0.25rem 0.5rem;
	border: 1px solid #ced4da;
	box-shadow: none;
	width: 100%;
}

/* === Кастомный select со стрелкой от Bootstrap === */
select.form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: url('data:image/svg+xml,%3Csvg xmlns=%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox=%220%200%2024%2024%22 fill=%22none%22%3E%3Cpath fill-rule=%22evenodd%22 clip-rule=%22evenodd%22 d=%22M7.707 9.293a1 1 0 0 1 0 1.414L12 15.414l4.293-4.293a1 1 0 1 1 1.414 1.414l-5 5a1 1 0 0 1-1.414 0l-5-5a1 1 0 0 1 0-1.414z%22 fill=%22%23404040%22%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right 1rem center;
	background-size: 1.75rem;
	padding-right: 3rem;
}

/* Убираем подсветку при наведении на select */
select.form-control:hover {
	background-color: #fff;
	border-color: #ced4da;
}

/* === Чекбоксы === */
input[type="checkbox"],
.form-check-input,
.searchtable .admin_checkboxs input[type="checkbox"] {
	margin-right: 0.5rem;
}

/* === Стили для форм поиска === */
.searchtable .form-label {
	font-weight: bold;
}

.searchtable fieldset {
	border-radius: 0.375rem;
	box-shadow: 0 0 0 0.1rem rgba(6, 72, 170, 0.2);
}

/* Стили для BB-кодов */
.searchtable .bbcodes {
	padding: 0.5rem 1rem;
	border-radius: 0.375rem;
	border: 1px solid #ced4da;
	box-shadow: none;
}

/* Список категорий в поиске */
.select-category select {
	height: 200px;
	overflow-y: auto;
}

/* Дополнительные стили поиска */
.searchtable .search_result_num {
	color: #6c757d;
	font-size: 0.875rem;
}

.searchtable .form-group {
	margin-bottom: 1rem;
}

/* Кнопки диалогового окна */
.ui-dialog-buttonset .btn {
  border-radius: 0.375rem; /* Скругление углов */
  padding: 0.375rem 0.75rem; /* Паддинг для кнопок */
}

.ui-dialog-buttonset .btn:hover {
  box-shadow: 0 0 0 0.2rem rgba(13,110,253,.25); /* Легкая подсветка при наведении */
}

/* !!! ОТК. ПУШ уведомлений !!!
#DLEPush {
  display: none !important;
}
 */

/* Для прогрессбара */
.custom-progress-line {
    width: 50% !important;
    background-color: transparent !important;
    box-shadow: none !important;
    height: 8px; /* толщина */
    margin: 0 1rem;
}

.custom-progress-line .progress-bar {
    width: 100% !important;
    background-color:#2F3132  !important; /* #1d171b - темнее */
}