/* ===========================================================
   Axialix Material — кастомный стиль (минимализм + удобство)
   Шрифты: Golos Text (контент), Space Grotesk (заголовки),
           JetBrains Mono (код)
   =========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500&family=Space+Grotesk:wght@500;700&family=JetBrains+Mono:wght@400;600&display=swap');

/* ---------------------------
   Палитра, шрифты, радиусы
   --------------------------- */
:root{
  --md-text-font: "Golos Text", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --md-code-font: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  /* Фирменные цвета (спокойные, читабельные) */
  --md-primary-fg-color: #1f2a44;   /* графитово-синий */
  --md-accent-fg-color:  #3b82f6;   /* синий акцент */

  /* Радиусы (последовательно по размерам) */
  --ax-r-lg: 14px;  /* крупные блоки: таблицы, карточки, admonition */
  --ax-r-md: 10px;  /* кнопки, поля формы, поисковая строка */
  --ax-r-sm: 8px;   /* мелкие элементы, инлайн-код */
}
[data-md-color-scheme="slate"]{
  --md-primary-fg-color: #1a2742;
  --md-accent-fg-color:  #60a5fa;
}

/* ---------------------------
   Типографика и базовая сетка
   --------------------------- */
.md-typeset{ font-size:16px; line-height:1.55; }
.md-typeset p{ margin:.75rem 0; }
.md-typeset li{ margin:.2rem 0; }
.md-grid{ max-width:1080px; }

/* Заголовки — акцентный гротеск, без крика */
.md-typeset h1,.md-typeset h2,.md-typeset h3{
  font-family:"Space Grotesk", var(--md-text-font);
  font-weight:600;
  letter-spacing:.2px;
  margin-top:1.1em;
}

/* ---------------------------
   Хедер, вкладки, бургер-меню
   --------------------------- */
/* Шапка и вкладки — единый branded-цвет, без серых заливок */
.md-header{ background: var(--md-primary-fg-color) !important; box-shadow:none !important; }
.md-header__title, .md-header__button, .md-header *{ color:#e7efff !important; }

.md-tabs{ background: var(--md-primary-fg-color) !important; }
.md-tabs__link{ color:#e7efff !important; opacity:.9; border-radius:0 !important; }
.md-tabs__link:hover, .md-tabs__link--active{ opacity:1; }

/* Активная вкладка: без синего прямоугольника, аккуратное подчёркивание */
.md-tabs__link--active{
  background: transparent !important;
  box-shadow: inset 0 -3px 0 0 var(--md-accent-fg-color) !important;
}

/* Заголовок в выдвижном меню (бургер на мобиле) — тоже branded */
.md-nav--primary .md-nav__title{
  background: var(--md-primary-fg-color) !important;
  color:#e7efff !important;
}
.md-nav--primary .md-nav__source{
  background: color-mix(in srgb, var(--md-primary-fg-color) 92%, transparent) !important;
}

/* ---------------------------
   Навигация слева
   --------------------------- */
.md-nav__link{ border-radius:var(--ax-r-sm); }
.md-nav__link--active, .md-nav__link:hover{
  background: color-mix(in srgb, var(--md-accent-fg-color) 16%, transparent);
}

/* Активная ветка — цвет текста + тонкая полоса слева, без «синей плашки» */
.md-nav__item--active > .md-nav__link{
  position:relative;
  background:transparent !important;
  color:var(--md-accent-fg-color) !important;
  font-weight:600;
}
.md-nav__item--active > .md-nav__link::before{
  content:"";
  position:absolute; left:0; top:0; bottom:0;
  width:3px; background:var(--md-accent-fg-color);
  border-top-right-radius:3px; border-bottom-right-radius:3px;
}

/* ---------------------------
   Поиск
   --------------------------- */
.md-search__form, .md-search__input{ border-radius:var(--ax-r-md); }

/* ---------------------------
   Кнопки (включая .md-button в Markdown)
   --------------------------- */
.md-button, .md-typeset .md-button{
  border-radius:var(--ax-r-md);
  padding:.55rem .95rem;
  font-weight:600;
  box-shadow:none;
  transition: background .15s ease, transform .1s ease;
}
.md-button:hover{ transform: translateY(-1px); }
.md-button--primary{ background:var(--md-accent-fg-color); color:#fff; }

/* ---------------------------
   Код
   --------------------------- */
.md-typeset code{
  background: color-mix(in srgb, var(--md-accent-fg-color) 10%, transparent);
  padding:.08rem .32rem;
  border-radius:var(--ax-r-sm);
}
.md-typeset pre>code{
  font-size:14px; line-height:1.5;
  border-radius:var(--ax-r-md);
  padding:1rem;
}

/* ---------------------------
   Admonitions / details / карточки
   --------------------------- */
.md-typeset .admonition,
.md-typeset details,
.card{
  border-radius:var(--ax-r-lg);
  overflow:hidden;
  border:1px solid rgba(148,163,184,.18);
}

/* Доп. акценты для важных блоков (без кислотности) */
.md-typeset .admonition.important{
  border-left:4px solid #ef4444;
  background: rgba(239,68,68,.06);
}
.md-typeset .admonition.example{
  border-left:4px solid #22c55e;
  background: rgba(34,197,94,.06);
}

/* ---------------------------
   Таблицы — РЕАЛЬНЫЕ скругления
   (Material оборачивает таблицу в .md-typeset__table, скругляем wrapper)
   --------------------------- */
/* Wrapper: скругление, клип и рамка */
.md-typeset .md-typeset__table{
  border-radius:var(--ax-r-lg);
  overflow:hidden;
  border:1px solid rgba(148,163,184,.18);
}
/* Сама таблица — без дополнительной рамки, чтобы не было двойных линий */
.md-typeset .md-typeset__table table{
  border:0;
  border-radius:0;
  border-collapse:separate;
  border-spacing:0;
}
.md-typeset th, .md-typeset td{ padding:.55rem .8rem; }

/* Строка под ховером — лёгкий подсвет */
.md-typeset table tbody tr:hover{
  background: rgba(148,163,184,.08);
}

/* На всякий случай: если где-то таблица без wrapper (сырой HTML) — скруглим и её */
.md-typeset table{
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:var(--ax-r-lg);
  border:1px solid rgba(148,163,184,.18);
}

/* ---------------------------
   Картинки
   --------------------------- */
.md-typeset img{ border-radius:var(--ax-r-lg); }

/* ---------------------------
   Цитаты (blockquote)
   --------------------------- */
.md-typeset blockquote{
  border-left:4px solid var(--md-accent-fg-color);
  padding:.45rem .9rem;
  margin:.9rem 0;
  background: color-mix(in srgb, var(--md-accent-fg-color) 6%, transparent);
  border-radius:var(--ax-r-md);
  color:#475569;
}

/* ---------------------------
   Ссылки в тексте (без подчёркиваний)
   --------------------------- */
.md-typeset a {
  color: var(--md-accent-fg-color);
  text-decoration: none !important;
  border: none !important;
}
.md-typeset a:hover {
  text-decoration: none !important;
  border: none !important;
  color: color-mix(in srgb, var(--md-accent-fg-color) 80%, #000);
}

/* ---------------------------
   Футер и соцсети
   --------------------------- */
.md-footer{
  text-align:center;
  font-size:.9rem;
  color:#94a3b8;
  box-shadow:none;
}
.md-footer .md-social{ margin-top:.4rem; }

/* ---------------------------
   Правый сайдбар (оглавление) — опционально мягче
   --------------------------- */
.md-sidebar--secondary { border-radius: 10px; overflow:hidden; }

/* ---------------------------
   Доп. утилиты для гридов в Markdown (по желанию)
   --------------------------- */
.grid{ display:grid; gap:1.1rem; }
.grid.cols-2{ grid-template-columns: repeat(2, minmax(0,1fr)); }
.grid.cols-3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 980px){ .grid.cols-2, .grid.cols-3{ grid-template-columns:1fr; } }

/* ---------------------------
   Mermaid (чуть аккуратнее фон/радиусы)
   --------------------------- */
.mermaid{
  border:1px solid rgba(148,163,184,.18);
  border-radius: var(--ax-r-lg);
  padding:.6rem;
}

/* ---------------------------
   GLightbox (минимальные штрихи)
   --------------------------- */
.glightbox-clean .gslide-description{
  font-family: var(--md-text-font);
  font-size: .95rem;
  line-height: 1.45;
}

/* Таблицы: убираем бордер у wrapper, оставляем только у таблицы */
.md-typeset .md-typeset__table {
  border: 0 !important;          /* wrapper без ободка */
  border-radius: var(--ax-r-lg);
  overflow: hidden;
}

/* Рамка только у таблицы */
.md-typeset .md-typeset__table table {
  border: 1px solid rgba(148,163,184,.28);
  border-radius: var(--ax-r-lg);
  border-collapse: collapse;
  overflow: hidden;
}

/* Внутренние линии между ячейками */
.md-typeset th, .md-typeset td {
  border: 1px solid rgba(148,163,184,.18);
  padding: .55rem .8rem;
}

/* Футер: одна строка и на мобилках */
@media (max-width: 959px) {
  .md-footer-meta__inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .5rem !important;
  }

  /* не даём детям растягиваться на всю ширину и ломать строку */
  .md-footer-meta__inner > .md-copyright,
  .md-footer-meta__inner > .md-footer-social {
    flex: 0 0 auto !important;
    margin: 0 !important;
    text-align: left !important;
    width: auto !important;
  }

  /* иконки вправо, в одну линию */
  .md-footer .md-footer-social {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
  }
  .md-footer .md-social {
    display: flex !important;
    gap: .5rem !important;
    justify-content: flex-end !important;
  }
}

/* Футер: размер и отступы подогнаны под соцсети */
.md-footer .md-copyright a#ax-madeby {
  font-size: 0.85rem !important;  /* чуть больше, чем было */
  color: #94a3b8 !important;      /* тот же серый */
  text-decoration: none !important;
  margin-left: .5rem !important;  /* симметрия с соцсетями */
  margin-right: .5rem !important;
  display: inline-block;
}