
/* ===== Универсальный скоуп под сырой HTML ===== */

/*
примечание по интеграции:
контент создается через устаревшую версию визуального редатора froala
эта froala не умеет создавать контен верстая его классами тайлвинда
поэтому чтобы этот контент хоть как то адекватно отображался,
то он помещается внутрь контейнера <div class="froala-content"> ... </div>
а велосипедные стили для содержимого этой обертки
содержатся в файле public/css/froala-content.css
*/

.froala-content {
    color: #0b0b0f;
    font-size: 1rem;
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.froala-content > *:first-child {
    margin-top: 0;
}

.froala-content > *:last-child {
    margin-bottom: 0;
}

.froala-content p {
    margin: 0.75rem 0;
}

.froala-content strong {
    font-weight: 600;
}

.froala-content em {
    font-style: italic;
}

.froala-content a {
    color: #2563eb;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.froala-content a:hover {
    color: #1d4ed8;
}

/* Заголовки */
.froala-content h1,
.froala-content h2,
.froala-content h3,
.froala-content h4,
.froala-content h5,
.froala-content h6 {
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
    line-height: 1.25;
}

.froala-content h1 {
    font-size: 1.625rem;
}

.froala-content h2 {
    font-size: 1.175rem;
}

.froala-content h3 {
    font-size: 1.125rem;
}

/* Списки */
.froala-content ul,
.froala-content ol {
    margin: 0.75rem 0 0.75rem 1.25rem;
    padding-left: 1.25rem;
}

.froala-content ul {
    list-style: disc;
}

.froala-content ol {
    list-style: decimal;
}

.froala-content li {
    margin: 0.25rem 0;
}

/* Медиа */
.froala-content img,
.froala-content video,
.froala-content svg,
.froala-content canvas,
.froala-content iframe {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0.75rem auto;
    border-radius: 0.75rem;
}

/* Цитаты/разделители */
.froala-content blockquote {
    margin: 1rem 0;
    padding-left: 1rem;
    border-left: 3px solid #e5e7eb;
    color: #6b7280;
    font-style: italic;
}

.froala-content hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 1.5rem 0;
}

/* Код */
.froala-content code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
    font-size: 0.925em;
    background: #f4f4f5;
    padding: 0.125rem 0.375rem;
    border-radius: 0.375rem;
}

.froala-content pre {
    background: #f4f4f5;
    padding: 0.75rem;
    border-radius: 0.75rem;
    overflow-x: auto;
}

/* Таблицы (универсально) */
.froala-content table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    overflow: hidden;
    margin: 1rem 0;
}

.froala-content thead tr {
    background: #f6f7f9;
}

.froala-content th,
.froala-content td {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid #e5e7eb;
    vertical-align: top;
}

.froala-content tbody tr:nth-child(odd) td {
    background: color-mix(in oklab, #f6f7f9 65%, transparent);
}

/* Если нет thead — мягкая подсветка первой строки */
.froala-content tbody tr:first-child td {
    font-weight: 600;
    background: color-mix(in oklab, #f6f7f9 85%, transparent);
}

/* Ровные поля у типовых блоков */
.froala-content :where(h1, h2, h3, h4, h5, h6, p, ul, ol, pre, table, blockquote) {
    margin-left: 0;
    margin-right: 0;
}
