/* ============================================
   ПЕРЕМЕННЫЕ ТЕМЫ СТАТЬИ (адаптация VK-темы)
   ============================================ */

.v-main .contents,
.page-content {
  /* Шрифты */
  --article-font-family: 'PT Serif', serif;
  --article-media-font-family: -apple-system, BlinkMacSystemFont, 'Roboto', 'Helvetica Neue', Geneva, arial, Tahoma, verdana, sans-serif;
  --article-header-font-family: 'Museo', sans-serif;
  --article-header-font-weight: 700;
  --article-figcaption-font-family: sans-serif;

  /* Размеры */
  --article-font-size: 19px;
  --article-small-font-size: 13px;
  --article-figcaption-font-size: 14px;
  --article-figcaption-margin-top: 12px;
  --article-figcaption-line-height: 18px;

  /* Медиа */
  --article-video-icon-play-size: 50px;
  --article-playlist-webview-cover-size: 112px;
  --article-playlist-webview-border-radius: 4px;
  --article-object-border-radius: 2px;
  --article-media-option-btn-color: #ffffff;

  /* Таблицы */
  --article-table-light-accent-color: #447bba;
  --article-table-highlight-background-color: rgba(81, 128, 182, 0.08);
  --article-table-header-font-family: 'Museo Sans Cyrl', sans-serif;

  /* Блоки и элементы */
  --article-format-tt-background-color: #2c2d2e;
  --article-blockquote-vertical-margin-coeff: 0.7;
  --article-format-btn-height: 24px;
  --article-border-thin-width: 1px;

  /* Анимации */
  --article-transition-delay: 0.3s ease-in-out;
  --article-lock-top-offset: 80px;
}

/* ============================================
   ПРИМЕНЕНИЕ ПЕРЕМЕННЫХ К ЭЛЕМЕНТАМ СТАТЬИ
   ============================================ */

/* Основной контейнер текста статьи */
.v-main .contents,
.page-content {
  font-family: var(--article-font-family) !important;
  font-size: var(--article-font-size) !important;
  line-height: 1.7 !important;
}

/* Абзацы, списки, ячейки таблиц, определения */
.v-main .contents p,
.v-main .contents li,
.v-main .contents td,
.v-main .contents dd {
  font-family: var(--article-font-family) !important;
}

/* Заголовки — Museo (если подключён), иначе PT Serif */
.v-main .contents h1,
.v-main .contents h2,
.v-main .contents h3,
.v-main .contents h4,
.v-main .contents h5,
.v-main .contents h6 {
  font-family: var(--article-header-font-family), var(--article-font-family) !important;
  font-weight: var(--article-header-font-weight) !important;
}

/* Подписи к изображениям и медиа */
.v-main .contents figcaption {
  font-family: var(--article-figcaption-font-family) !important;
  font-size: var(--article-figcaption-font-size) !important;
  line-height: var(--article-figcaption-line-height) !important;
  margin-top: var(--article-figcaption-margin-top) !important;
}

/* Цитаты */
.v-main .contents blockquote {
  font-family: var(--article-font-family) !important;
  border-left: var(--article-border-thin-width) solid var(--article-table-light-accent-color) !important;
  padding-left: calc(1em * var(--article-blockquote-vertical-margin-coeff)) !important;
}

/* Таблицы */
.v-main .contents table th {
  font-family: var(--article-table-header-font-family), var(--article-font-family) !important;
  background-color: var(--article-table-highlight-background-color) !important;
}

.v-main .contents table tr:hover {
  background-color: var(--article-table-highlight-background-color) !important;
}

/* Медиа-объекты — скругления */
.v-main .contents img,
.v-main .contents video {
  border-radius: var(--article-object-border-radius) !important;
}

/* Элементы интерфейса внутри статьи — sans-serif вместо serif */
.v-main .contents button,
.v-main .contents .badge {
  font-family: var(--article-media-font-family) !important;
}

/* ============================================
   ТЁМНАЯ ТЕМА — MATERIAL DESIGN
   ============================================ */

.theme--dark.v-application,
.v-application.theme--dark {
  background-color: #121212 !important;
}

.page-content,
.v-main,
.v-main__wrap {
  background-color: #121212 !important;
}

.v-card,
.v-sheet:not(.v-toolbar):not(.v-navigation-drawer) {
  background-color: #1e1e1e !important;
}

.nav-header-inner .v-toolbar__content,
header.v-sheet.v-toolbar,
header.v-toolbar {
  background-color: #1e1e1e !important;
  border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
}

.v-application .black {
  background-color: #1e1e1e !important;
}

.v-navigation-drawer,
.v-navigation-drawer__content {
  background-color: #1a1a1a !important;
}

.v-navigation-drawer .v-list-item--active,
.v-navigation-drawer a.primary {
  background-color: rgba(255, 255, 255, .08) !important;
  color: #e0e0e0 !important;
}

.v-navigation-drawer .v-list-item--active .v-icon {
  color: #e0e0e0 !important;
}

.v-navigation-drawer .v-list-item:hover {
  background-color: rgba(255, 255, 255, .04) !important;
}

.v-application .primary,
.v-application .primary--text,
.v-btn.primary,
a.primary--text,
button.primary {
  color: #b0b0b0 !important;
}

.v-application .primary {
  background-color: #2a2a2a !important;
  border-color: #2a2a2a !important;
}

.page-content a,
.v-main .contents a {
  color: #90a4ae !important;
}

.page-content a:hover,
.v-main .contents a:hover {
  color: #cfd8dc !important;
}

.v-main .contents h1,
.v-main .contents h2,
.v-main .contents h3,
.v-main .contents h4 {
  color: #e0e0e0 !important;
}

.v-main .contents h1:after {
  background: linear-gradient(to right, #e1e3e6 0, rgba(225, 227, 230, 0) 100%) !important;
  background-image: linear-gradient(to right, #e1e3e6 0, rgba(225, 227, 230, 0) 100%) !important;
}

.v-application .green,
.v-application .success,
.v-chip.success,
button.v-btn.success {
  background-color: #2a2a2a !important;
  color: #e0e0e0 !important;
}

.v-application .green--text,
.v-application .success--text {
  color: #b0b0b0 !important;
}

.v-application .blue,
.v-application .blue.darken-2,
.v-application .blue.darken-3,
.v-application .cyan,
.v-application .indigo,
.v-application .indigo.darken-2 {
  background-color: #2a2a2a !important;
  border-color: #2a2a2a !important;
  color: #e0e0e0 !important;
}

.v-application .blue--text,
.v-application .cyan--text,
.v-application .indigo--text {
  color: #b0b0b0 !important;
}

.v-icon {
  color: #9e9e9e !important;
}

.v-icon:hover {
  color: #e0e0e0 !important;
}

.v-input__slot {
  background-color: rgba(255, 255, 255, .04) !important;
}

.v-divider,
hr {
  border-color: rgba(255, 255, 255, .08) !important;
}

.page-content code,
.page-content pre,
.v-main .contents pre {
  background-color: #1e1e1e !important;
  border: 1px solid rgba(255, 255, 255, .06) !important;
}

.page-content blockquote {
  border-left: 3px solid #616161 !important;
  background-color: rgba(255, 255, 255, .02) !important;
}

.page-content table th {
  background-color: #1e1e1e !important;
  color: #e0e0e0 !important;
}

.page-content table td {
  border-color: rgba(255, 255, 255, .08) !important;
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #121212;
}

::-webkit-scrollbar-thumb {
  background: #424242;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #616161;
}

/* ============================================
   ЧИПЫ (v-chip) — нейтрализация синих/зелёных тонов
   ============================================ */

.theme--dark .v-chip,
.theme--dark .v-chip.v-chip--active,
.theme--dark .v-chip.v-chip--clickable,
.theme--dark .v-chip.v-chip--selected {
  background-color: #2a2a2a !important;
  color: #e0e0e0 !important;
  border-color: #3a3a3a !important;
}

.theme--dark .v-chip.blue,
.theme--dark .v-chip.cyan,
.theme--dark .v-chip.green,
.theme--dark .v-chip.indigo,
.theme--dark .v-chip.light-blue,
.theme--dark .v-chip.light-green,
.theme--dark .v-chip.primary,
.theme--dark .v-chip.secondary,
.theme--dark .v-chip.success,
.theme--dark .v-chip.teal {
  background-color: #2a2a2a !important;
  color: #e0e0e0 !important;
  border-color: #3a3a3a !important;
}

.theme--dark .v-chip .v-chip__content,
.theme--dark .v-chip .v-icon {
  color: #e0e0e0 !important;
}

.theme--dark .v-chip.v-chip--outlined {
  background-color: transparent !important;
  border: 1px solid #3a3a3a !important;
  color: #b0b0b0 !important;
}

.theme--dark .v-chip.v-chip--clickable:hover,
.theme--dark .v-chip:hover {
  background-color: #3a3a3a !important;
}

.theme--dark .v-chip.v-chip--active,
.theme--dark .v-chip.v-chip--selected {
  background-color: #424242 !important;
  color: #fff !important;
}

.theme--dark .v-chip.v-chip--clickable {
  box-shadow: none !important;
}

/* ============================================
   ФОН ПЛАВАЮЩИХ КНОПОК (FAB) — ТЁМНЫЙ СТИЛЬ
   ============================================ */

/* Все FAB-кнопки, независимо от цветового класса (primary, teal, green и т.д.) */
.v-btn.v-btn--fab,
.v-btn.v-btn--fab.v-btn--round,
.v-btn.v-btn--fab.v-btn--fixed {
  background-color: #2a2a2a !important;
  border-color: #2a2a2a !important;
  color: #e0e0e0 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5) !important;
}

/* Иконка внутри FAB */
.v-btn.v-btn--fab .v-icon {
  color: #e0e0e0 !important;
}

/* Ховер */
.v-btn.v-btn--fab:hover {
  background-color: #3a3a3a !important;
  border-color: #3a3a3a !important;
}

.v-btn.v-btn--fab:hover .v-icon {
  color: #ffffff !important;
}