/* ---------------------------
   custom.css для шпаргалок
---------------------------- */
/* --- Стили чтобы был стики футер --- */
html, body {
    height: 100%;
}
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
main {
    flex: 1 0 auto;
}

/* --- Общие стили для контейнера Markdown --- */
.markdown-container {
    font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.6;
    color: #212529;
}

/* --- Заголовки --- */
h1, h2, h3, h4, h5, h6 {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    font-weight: 600;
}

/* --- Блоки цитат --- */
blockquote, .markdown-container blockquote {
    border-left: 4px solid #0d6efd;
    padding: 0.5rem 1rem;
    margin: 1rem 0;
    background-color: #f8f9fa;
    border-radius: 0.25rem;
}

/* --- Details / Summary --- */
details {
    margin: 0.5rem 0 1rem 0;
    padding: 0.5rem 1rem;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    background-color: #f8f9fa;
}

details summary {
    font-weight: 600;
    cursor: pointer;
    outline: none;
}

/* Добавляем стрелку */
details summary::marker {
    content: "▶ ";
    font-weight: 600;
}

details[open] summary::marker {
    content: "▼ ";
}

/* --- Вложенные details --- */
details details {
    margin-left: 1rem; /* отступ для вложенности */
    border-color: #ced4da;
    background-color: #e9ecef;
}

/* --- Списки --- */
ul, ol {
    margin-left: 0.5rem;
    margin-bottom: 1rem;
}

/* --- Стили для элементов списка в details --- */
details ul, details ol {
    margin-left: 0.5rem;
}

/* --- Код --- */


/* --- Вложенные блоки кода внутри details --- */
details pre {
    margin: 0.5rem 0;
}

/* --- Ссылки --- */
a {
    color: #0d6efd;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* --- Горизонтальные линии --- */
hr {
    border: none;
    border-top: 1px solid #dee2e6;
    margin: 2rem 0;
}

/* --- Таблицы (если будут) --- */
table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
}

table th,
table td {
    border: 1px solid #dee2e6;
    padding: 0.5rem;
}

table th {
    background-color: #f8f9fa;
    font-weight: 600;
}

/* --- Пробелы между разделами --- */
h2, h3 {
    margin-top: 2rem;
}

/* --- Поддержка вложенных блоков цитат --- */
blockquote blockquote {
    border-left-color: #6c757d;
    background-color: #e9ecef;
    margin: 0.5rem 0;
    padding: 0.5rem 1rem;
}

/* --- Пробелы внутри details для списков, цитат и кода --- */
details > * {
    margin: 0.5rem 0;
}

/* --- Inline code внутри ссылок --- */
/* Базовый inline code */
code.highlighter-rouge {
    color: #d63384;
    background-color: #f8f9fa;
    padding: 0.2rem 0.4rem;
    border-radius: 4px;
}

/* Если code внутри ссылки — не наследуем синий */
a code.highlighter-rouge {
    color: #d63384;
}

/* Футер */
footer {
    flex-shrink: 0; /* Запрещаем футеру сжиматься */
    padding: 1.5rem 0;
    background-color: #fff;
    border-top: 1px solid #e9ecef;
    color: #6c757d;
    font-size: 0.9rem;
    margin-top: auto; /* Дополнительная страховка для прижатия */
}
.footer-link {
    color: #0d6efd;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s;
}
.footer-link:hover {
    color: #0a58ca;
    text-decoration: underline;
}