:root {
  --md-primary-fg-color: #1D2E33;
  --md-primary-bg-color: #FFFFFF;
  
  /* Акцентные цвета */
  --md-accent-fg-color: #00E5D2;
  --md-accent-fg-color--transparent: #00E5D220;
  
  /* Цвета для тёмной темы */
  [data-md-color-scheme="slate"] {
    --md-default-bg-color: #122326;
    --md-default-fg-color: #FFFFFF;
    --md-default-fg-color--light: #F5F7FA;
    --md-default-fg-color--lighter: #F5F7FA80;
    
    --md-typeset-color: #FFFFFF;
    --md-typeset-a-color: #00E5D2;
    
    /* Code blocks */
    --md-code-bg-color: #1D2E33;
    --md-code-fg-color: #FFFFFF;
    
    /* Headers */
    --md-header-fg-color: #FFFFFF;
    --md-header-bg-color: #0D1A1F;
    
    /* Navigation */
    --md-footer-bg-color: #0D1A1F;
    --md-footer-fg-color: #FFFFFF;
  }

  /* Цвета для светлой темы */
  [data-md-color-scheme="default"] {
    --md-default-bg-color: #F5F7FA;
    --md-default-fg-color: #0D1A1F;
    --md-typeset-a-color: #00E5D2;
    --md-accent-fg-color: #00E5D2;
  }
}

/* Кастомные акцентные цвета */
.md-typeset a {
  color: var(--md-accent-fg-color);
}

.md-typeset a:hover {
  color: #4EC9F3;
}

.md-nav__link--active {
  color: #00E5D2 !important;
}

.md-tabs__link--active {
  color: #00E5D2 !important;
}

/* Кнопки */
.md-button {
  border-color: #00E5D2 !important;
  color: #00E5D2 !important;
}

.md-button:hover {
  background-color: #00E5D2 !important;
  color: #122326 !important;
}

/* Code highlighting */
.highlight span.filename {
  background-color: #1D2E33;
  color: #00E5D2;
}

/* Основное переключение сторон */
@media screen and (min-width: 76.25em) {
    .md-main__inner {
        flex-direction: row-reverse;
        display: flex;
        width: 100%;
        gap: 0; /* Убираем зазор между элементами */
    }
    
    .md-sidebar--primary {
        left: auto;
        right: 0;
        width: 18.4rem;
        flex-shrink: 0;
    }
    
    .md-content {
        margin-left: 0;
        margin-right: 0; /* Убираем большой отступ справа */
        flex: 1;
        max-width: none;
        width: auto;
        min-width: 0;
        padding-right: 0.5rem; /* Уменьшаем правый отступ */
    }
}

/* Улучшение внешнего вида */
.md-sidebar--primary {
    border-left: 1px solid var(--md-default-fg-color--lightest);
}

.md-content {
    padding: 0 1rem 0 1rem; /* Унифицируем отступы */
}

/* Стили для терминов глоссария */
.glossary-term {
    border-bottom: 1px dashed #00E5D2;
    cursor: help;
    color: inherit;
    text-decoration: none;
    transition: all 0.2s ease;
    position: relative;
}

.glossary-term:hover {
    background-color: rgba(0, 229, 210, 0.1);
    border-bottom-color: #4EC9F3;
}

/* Стили для подсказок */
.glossary-tooltip {
    position: fixed;
    background: var(--md-default-bg-color);
    border: 1px solid var(--md-default-fg-color--lightest);
    border-radius: 8px;
    padding: 0;
    max-width: 400px;
    min-width: 300px;
    max-height: 180px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    opacity: 0;
    transform: translateY(-8px) scale(0.95);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
    overflow: hidden;
    border-left: 4px solid #00E5D2;
}

.glossary-tooltip.visible {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.tooltip-content {
    padding: 1rem;
}

.glossary-tooltip strong {
    color: #00E5D2;
    display: block;
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.glossary-tooltip p {
    margin: 0 0 0.5rem 0;
    color: var(--md-default-fg-color);
}

.tooltip-link {
    color: #4EC9F3 !important;
    font-size: 0.75rem;
    text-decoration: none;
    border-bottom: none !important;
}

.tooltip-link:hover {
    color: #00E5D2 !important;
    text-decoration: underline !important;
}

/* Адаптивность для мобильных */
@media screen and (max-width: 76.1875em) {
    .glossary-tooltip {
        max-width: 250px;
        left: 50% !important;
        transform: translateX(-50%) translateY(-10px);
    }
    
    .glossary-tooltip.visible {
        transform: translateX(-50%) translateY(0);
    }
}

/* Минималистичные стили для блока участия */
.contribute-minimal {
    background: var(--md-default-bg-color);
    border-top: 1px solid var(--md-default-fg-color--lightest);
    padding: 1rem 0;
    margin-top: 2rem;
    font-size: 0.8rem;
    color: var(--md-default-fg-color--light);
}

.contribute-minimal__content {
    max-width: 60rem;
    margin: 0 auto;
    padding: 0 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.contribute-minimal__text {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.contribute-minimal__text strong {
    color: var(--md-default-fg-color);
    font-weight: 500;
}

.contribute-minimal__github {
    font-size: 0.75rem;
}

.contribute-minimal__github a {
    color: var(--md-primary-fg-color);
    text-decoration: none;
}

.contribute-minimal__github a:hover {
    text-decoration: underline;
}

.contribute-minimal__actions {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.contribute-minimal__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid var(--md-default-fg-color--lightest);
    border-radius: 4px;
    text-decoration: none;
    color: var(--md-default-fg-color--light);
    transition: all 0.2s ease;
    background: var(--md-default-bg-color);
    opacity: 0.7;
}

.contribute-minimal__link:hover {
    opacity: 1;
    border-color: var(--md-primary-fg-color);
    color: var(--md-primary-fg-color);
    background: var(--md-default-bg-color);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.contribute-minimal__link span {
    font-size: 0.9rem;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .contribute-minimal__content {
        flex-direction: column;
        text-align: center;
        gap: 0.75rem;
    }
    
    .contribute-minimal__actions {
        justify-content: center;
    }
}

/* Дополнительные стили для лучшей интеграции с темой Material */
.contribute-minimal + .md-footer {
    border-top: none;
}

/* Дополнительное исправление для контейнера сетки */
.md-grid {
    max-width: 100%;
}

/* ИСПРАВЛЕНИЕ: Чтобы .md-content__inner занимал всю ширину .md-content */
.md-content__inner {
    max-width: none !important;
    width: 100%;
    margin: 0;
    padding: 2rem 0;
}

.md-content__inner:before {
    display: none;
}

.md-typeset {
    max-width: none;
    width: 100%;
}

.md-content__inner h1:first-child {
    margin-top: 0;
}

.md-typeset table:not([class]) {
    display: table;
    width: 100%;
}

.md-typeset pre {
    width: 100%;
}

.md-typeset .highlight {
    width: 100%;
}

@media screen and (max-width: 76.1875em) {
    .md-content__inner {
        padding: 1rem 0;
    }
}

@media screen and (min-width: 100em) {
    .md-content__inner {
        max-width: none;
    }
}

/* ИСПРАВЛЕНИЕ ДЛЯ РАССТОЯНИЯ МЕЖДУ САЙДБАРОМ И КОНТЕНТОМ */
@media screen and (min-width: 76.25em) {
    .md-main__inner {
        gap: 0; /* Убираем зазор между элементами flex */
    }
    
    .md-content {
        margin-right: 0; /* Убираем большой отступ */
        padding-right: 0.5rem; /* Минимальный отступ */
    }
    
    .md-sidebar--primary {
        margin-left: 0; /* Убираем отступы у сайдбара */
        padding-left: 0.5rem; /* Минимальный отступ */
    }
}

/* Дополнительные оптимизации расстояния */
.md-sidebar {
    padding: 0; /* Убираем внутренние отступы сайдбара */
}

.md-sidebar__scrollwrap {
    padding: 0; /* Убираем отступы внутреннего контейнера */
}

/* Уменьшаем общие отступы для более плотного расположения */
@media screen and (min-width: 76.25em) {
    .md-content {
        padding-left: 1rem;
        padding-right: 0.5rem;
    }
    
    .md-sidebar--primary {
        padding-left: 0.5rem;
        padding-right: 1rem;
    }
}