/* ════════════════════════════════════════════════════════════════════════════
 * patch-9.6-doc.css — Типографика контентных/юридических страниц (.kp-prose)
 *
 * Шаблон templates/page-kpromo-doc.php выводит the_content() в .kp-prose.
 * Используется для: Политика, Согласие, Пользовательское соглашение,
 * Доставка и оплата, О компании, Как заказать, Услуги нанесения.
 *
 * Скоуп строго body.kp-body .kp-prose — в WC/Woodmart не утекает.
 * Цвет/шрифт — токены ДС с fallback. Ширина строки ограничена для читаемости.
 * Брейкпоинты: 760 / 480.
 * ════════════════════════════════════════════════════════════════════════════ */

body.kp-body .kp-doc-body { padding: 8px 0 64px; }

body.kp-body .kp-prose {
    /* Ширина текста = ширина контейнера (правка Николая 16.06): без узкого
       предела, как и остальные блоки сайта. Если строки юр-текста покажутся
       длинноваты — вернуть комфортный предел (~820px). */
    max-width: none;
    font-size: 16px;
    line-height: 1.65;
    color: var(--ink-2, #3D3D3D);
}

/* Заголовки разделов */
body.kp-body .kp-prose h2 {
    margin: 40px 0 14px;
    font-weight: 600;
    font-size: clamp(22px, 3vw, 28px);
    line-height: 1.2;
    letter-spacing: .2px;
    color: var(--ink, #0A0A0A);
}
body.kp-body .kp-prose h2:first-child { margin-top: 0; }
body.kp-body .kp-prose h3 {
    margin: 28px 0 10px;
    font-weight: 600;
    font-size: 19px;
    line-height: 1.25;
    color: var(--ink, #0A0A0A);
}

/* Абзацы и списки */
body.kp-body .kp-prose p { margin: 0 0 16px; }
body.kp-body .kp-prose ul,
body.kp-body .kp-prose ol { margin: 0 0 18px; padding-left: 22px; }
body.kp-body .kp-prose li { margin-bottom: 8px; }
body.kp-body .kp-prose ul li { list-style: none; position: relative; }
body.kp-body .kp-prose ul li::before {
    content: "";
    position: absolute;
    left: -18px; top: 11px;
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--yellow, #FECE15);
}
body.kp-body .kp-prose ol { padding-left: 24px; }
body.kp-body .kp-prose ol li { padding-left: 4px; }
body.kp-body .kp-prose ol li::marker { color: var(--ink-3, #8A8A8A); font-weight: 600; }

body.kp-body .kp-prose strong { font-weight: 600; color: var(--ink, #0A0A0A); }
body.kp-body .kp-prose a {
    color: var(--ink, #0A0A0A);
    text-decoration: underline;
    text-decoration-color: var(--yellow, #FECE15);
    text-decoration-thickness: 2px;
    text-underline-offset: 2px;
}
body.kp-body .kp-prose a:hover { color: var(--ink, #0A0A0A); background: var(--yellow-soft, #FFF4B8); }

/* Таблицы (доставка, методы нанесения, реквизиты) */
body.kp-body .kp-prose table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 22px;
    font-size: 15px;
}
body.kp-body .kp-prose thead th {
    text-align: left;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .3px;
    text-transform: uppercase;
    color: var(--ink-3, #8A8A8A);
    padding: 10px 14px;
    border-bottom: 2px solid var(--ink, #0A0A0A);
}
body.kp-body .kp-prose tbody td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--line, #E5E5E5);
    vertical-align: top;
    color: var(--ink-2, #3D3D3D);
}
body.kp-body .kp-prose tbody tr:hover { background: var(--fog, #F7F7F7); }

/* Адаптив */
@media (max-width: 760px) {
    body.kp-body .kp-prose { font-size: 15.5px; }
    body.kp-body .kp-prose h2 { margin-top: 32px; }
    body.kp-body .kp-prose table { font-size: 14px; }
    body.kp-body .kp-prose thead th,
    body.kp-body .kp-prose tbody td { padding: 9px 10px; }
}
@media (max-width: 480px) {
    /* узкие таблицы прокручиваем, чтобы не ломать вёрстку */
    body.kp-body .kp-prose table { display: block; overflow-x: auto; white-space: nowrap; }
}
