/* Стили для компонентов внутри блока с классом Gen */
.gen h1,
.gen h2,
.gen h3,
.gen h4,
.gen h5,
.gen h6 {
    color: #333;
    margin: 0 0 10px;
}

.gen h1 {
    font-size: 2.5em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.gen h2 {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.gen h3 {
    font-size: 1.75em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.gen h4 {
    font-size: 1.5em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.gen h5 {
    font-size: 1.25em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.gen h6 {
    font-size: 1em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

/* Стили для параграфов */
.gen p {

    line-height: 1.6;
    color: #555;
	padding: 20px;
}

/* Стили для списков */
.gen ul {
    margin: 0 0 1em 1.5em;
    padding: 10px;
    list-style-type: none; /* Убираем стандартные маркеры списка */
    color: #555;
    line-height: 1.6;
}

.gen ul li {
    position: relative; /* Для абсолютного позиционирования маркера */
    padding-left: 1.5em; /* Отступ слева для галочки */
}

.gen ul li::before {
    content: "\2713"; /* Юникод символ для галочки */
    color: green; /* Цвет галочки */
    font-weight: bold; /* Жирный шрифт для галочки */
    position: absolute; /* Абсолютное позиционирование */
    left: 0; /* Выравнивание по левому краю */
    top: 0; /* Выравнивание по верхнему краю */
}

.gen ol {
    margin: 0 0 1em 1.5em;
    padding: 0;
    list-style-type: decimal;
    color: #555;
    line-height: 1.6;
}

.gen ol li {
    margin: 0.5em 0;
}





/* Стили для таблиц */
.gen table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
    color: #555;
}

.gen table th,
.gen table td {
    border: 1px solid #ddd;
    padding: 0.75em;
    text-align: left;
}

.gen table th {
    background-color: #f2f2f2;
    color: #333;
    font-weight: bold;
}

.gen table tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Стили для выделения важного */
.gen .highlight {
    border: 2px solid #007bff;
    padding: 10px;
    background-color: #e9f7fd;
    margin: 1em 0;
}

/* Утилитарные классы */
.gen .flex {
    display: flex;
    align-items: center;
}

.gen .flex-1 {
    flex: 1;
}

.gen .border-b {
    border-bottom: 1px solid #e5e7eb;
}

.gen .text-xl {
    font-size: 1.25rem;
}

.gen .font-bold {
    font-weight: 700;
}

.gen .text-gray-800 {
    color: #1f2937;
}

.gen .text-gray-600 {
    color: #4b5563;
}

.gen .text-gray-700 {
    color: #374151;
}

.gen .bg-green-500 {
    background-color: #10b981;
}

.gen .text-white {
    color: #fff;
}

.gen .p-6 {
    padding: 1.5rem;
}

.gen .px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.gen .py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.gen .rounded-md {
    border-radius: 0.375rem;
}

.gen .shadow-sm {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.gen .hover\:bg-green-600:hover {
    background-color: #059669;
}

.gen .focus\:outline-none:focus {
    outline: 0;
}

.gen .focus\:ring-2:focus {
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.5);
}

.gen .focus\:ring-green-500:focus {
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.5);
}

.gen .focus\:ring-offset-2:focus {
    outline-offset: 2px;
}

.gen .transition-colors {
    transition: background-color 0.2s;
}

.gen .text-sm {
    font-size: 0.875rem;
}

.gen .font-semibold {
    font-weight: 600;
}

.gen .mb-4 {
    margin-bottom: 1rem;
}

.gen .mb-2 {
    margin-bottom: 0.5rem;
}

.gen .space-y-6 > * + * {
    margin-top: 1.5rem;
}

.gen .space-x-2 > * + * {
    margin-left: 0.5rem;
}

.gen .space-x-1 > * + * {
    margin-left: 0.25rem;
}

.gen .w-8 {
    width: 2rem;
}

.gen .h-8 {
    height: 2rem;
}

.gen .rounded-full {
    border-radius: 9999px;
}

.gen .bg-blue-500 {
    background-color: #3b82f6;
}

.gen .text-white {
    color: #fff;
}

.gen .bg-gray-200 {
    background-color: #e5e7eb;
}

.gen .text-gray-700 {
    color: #374151;
}

.gen .hover\:bg-gray-300:hover {
    background-color: #d1d5db;
}

.gen .overflow-y-auto {
    overflow-y: auto;
}

.gen .bg-white {
    background-color: #fff;
}

.gen .p-4 {
    padding: 1rem;
}

.gen .rounded-lg {
    border-radius: 0.5rem;
}

.gen .shadow-md {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.gen .hover\:shadow-lg:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.gen .transition-shadow {
    transition: box-shadow 0.2s;
}

.gen .duration-300 {
    transition-duration: 0.3s;
}

.gen .jumbotron {
    background-color: #fcfdff;; /* Полупрозрачный белый фон для лучшей читаемости */
    border-radius: 15px; /* Округлые углы */
    padding: 20px; /* Отступы внутри блока */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); /* Легкая тень для объема */
	margin-bottom: 20px;
}

.gen.jumbotron p {
    color: #333; /* Цвет текста для хорошей читаемости */
    font-size: 16px; /* Размер шрифта */
    line-height: 1.5; /* Межстрочный интервал для удобства чтения */
}

	
.gen {
	line-height: 1.6; 
    flex-direction: column;
    gap: 20px;
    padding: 20px;
    border-bottom: 1px solid #ddd; /* только нижняя рамка */
 
    background-color: #fff;

    margin-bottom: 20px; /* отступ между блоками */
}

/* Дополнительные стили для .selection */
.gen .selection {
    padding: 10px;
    background-color: #f9f9f9;
    border-left: 4px solid #ccc;
    margin-bottom: 20px;
    line-height: 1.6; /* Увеличение межстрочного интервала */
}

.gen {
    overflow-x: auto;
}
.gen {
    overflow-x: auto;
}

@media (max-width: 600px) {
    .gen table, .gen thead, .gen tbody, .gen th, .gen td, .gen tr {
        display: block;
    }

    .gen th {
        display: none;
    }

    .gen td {
        position: relative;
        padding-left: 50%;
    }

    .gen td:before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        width: 50%;
        padding-left: 10px;
        font-weight: bold;
    }
}

.gen .left-block_text {
    margin-left: 270px; /* Ширина изображения + отступ */
    line-height: 1.6;
	min-height: 250px;
}


@media (max-width: 600px) {
    .gen {
        display: flex;
        flex-direction: column;
        align-items: center; /* Центрирование изображений */
    }

   

    .gen p {
        text-align: left; /* Оставляем текст выровненным по левому краю */
    }
}


.image-block .left-image {
    float: none; /* Убираем float */
    margin-right: 20px;
    max-width: 250px;
    height: auto;
    border-radius: 15px;
    flex-shrink: 0; /* Изображение не уменьшается */
	position: absolute;
}


.gen .left-image {
    float: none; /* Убираем float */
    margin-right: 20px;
    max-width: 250px;
    height: auto;
    border-radius: 15px;
    flex-shrink: 0; /* Изображение не уменьшается */
	position: absolute;
}


@media (max-width: 600px) {
    .gen .left-image {
        float: none;
        display: block;
        margin: 0 auto 20px;
        max-width: 100%;
    }
}
/* экспериментальные стили */




@media (max-width: 600px) {
    .gen {
        flex-direction: column;
        align-items: center; /* Центрирование изображений */
    }

    .gen .left-image {
        float: none;
        display: block;
        margin: 0;
        padding: 0;
        max-width: 100%;
		position: relative;
    }
	
	.gen .left-block_text { 
    margin-left: 0; /* Ширина изображения + отступ */
    padding: 5px;
    line-height: 1.6;
}


    .gen ul {
        text-align: left; /* Оставляем текст выровненным по левому краю */
        width: 100%;
    }
}



