/**
 * Печать и экспорт в PDF.
 *
 * Задача: из экранного "тёмного" макета сделать аккуратный печатный документ —
 * медиакит, который читается на бумаге / в PDF так же хорошо, как на сайте.
 *
 * Стратегия:
 *   1. Переключаем все цвета на светлую палитру (тёмный фон в PDF = каша).
 *   2. Убираем то, что не имеет смысла в печати: плавающие кнопки, ховеры,
 *      blur, тяжёлые градиенты, анимации.
 *   3. Управляем разрывами страниц, чтобы блоки метрик, таблицы и секции
 *      не резались пополам.
 *   4. Разворачиваем табличные данные так, чтобы они влезли в A4.
 *
 * Подключается ТОЛЬКО для media=print — экранный вид не страдает.
 */

@page {
    size: A4;
    /* Минимальный @page-отступ. Главные поля дают padding на контейнере —
       это надёжнее, потому что Chrome позволяет пользователю в диалоге
       печати выбрать "Поля: Нет" и тогда @page игнорируется. */
    margin: 6mm;
}

@media print {

    /* ===== Базовые сбросы ===== */

    /* Включаем печать фонов и цветов (иначе хром распечатает только чёрный
       текст на белом и градиенты/бейджи пропадут). */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
        color-adjust: exact !important;
    }

    html, body {
        background: #ffffff !important;
        background-image: none !important;
        color: #0f172a !important;
        font-size: 10.5pt;
        line-height: 1.5;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }

    /* ===== Переопределяем переменные темы на светлую палитру ===== */
    :root {
        --bg-color: #ffffff;
        --text-primary: #0f172a;
        --text-secondary: #475569;
        --card-bg: #ffffff;
        --card-hover: #ffffff;
        --border-color: #cbd5e1;
        --accent-color: #2563eb;
        --accent-hover: #1d4ed8;
    }

    /* ===== То, что в печати не нужно ===== */

    .floating-buttons,
    .drawings-ribbon,
    .back-btn,
    .back-btn-placeholder,
    .status-badge::before,
    .profile-actions {
        display: none !important;
    }

    /* Ссылки: убираем hover-эффекты, подчёркивания, трансформации. */
    a,
    a:hover {
        color: inherit !important;
        text-decoration: none !important;
        transform: none !important;
        box-shadow: none !important;
    }

    /* ===== Контейнер ===== */

    /* Главное: даём собственные поля через padding контейнера — это работает
       независимо от того, что пользователь выбрал в настройках "Поля" в
       диалоге печати Chrome. @page margin выше — минимальный страховочный
       отступ, остальное добавляем тут. */
    .partners-container,
    .container {
        max-width: 100% !important;
        width: 100% !important;
        gap: 14pt !important;
        padding: 12mm 10mm !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* ===== Hero ===== */

    .partners-hero {
        gap: 6pt !important;
        margin-bottom: 6pt;
    }

    .partners-hero-top {
        justify-content: center !important;
    }

    .hero-avatar {
        width: 70px !important;
        height: 70px !important;
    }

    .avatar-container {
        background: #2563eb !important;
        padding: 2px !important;
        box-shadow: none !important;
    }

    .avatar {
        border-color: #ffffff !important;
    }

    .hero-title {
        font-size: 20pt !important;
        margin: 0 !important;
    }

    .status-badge {
        color: #15803d !important;
        background: #dcfce7 !important;
        border: 1px solid #86efac !important;
        padding: 2pt 8pt !important;
    }

    .hero-description {
        font-size: 10pt !important;
        color: #334155 !important;
        max-width: 140mm !important;
        margin: 0 auto !important;
    }

    /* Hero-соцсети — простой ряд с подписями */
    .hero-socials {
        gap: 14pt !important;
    }

    .hero-socials a {
        color: #334155 !important;
    }

    .hero-socials svg {
        width: 18px !important;
        height: 18px !important;
    }

    /* ===== Growth banner ===== */

    .growth-banner {
        background: #eff6ff !important;
        border: 1px solid #bfdbfe !important;
        padding: 10pt 14pt !important;
        border-radius: 8pt !important;
    }

    .growth-badge {
        background: #2563eb !important;
        color: #ffffff !important;
        font-size: 9pt !important;
        padding: 2pt 8pt !important;
    }

    .growth-text {
        font-size: 10pt !important;
        color: #334155 !important;
    }

    /* ===== Секции ===== */

    .section {
        gap: 10pt !important;
        page-break-inside: avoid;
        break-inside: avoid;
    }

    /* Крупные секции (со своими таблицами и гридами) могут ломаться, но
       никогда не в самом заголовке. */
    .section > .section-heading {
        page-break-after: avoid;
        break-after: avoid;
    }

    .section-heading {
        font-size: 13pt !important;
        color: #0f172a !important;
        text-align: left !important;
        border-bottom: 1.5pt solid #2563eb;
        padding-bottom: 3pt;
        margin-bottom: 4pt;
    }

    .section-heading--secondary {
        font-size: 11pt !important;
        color: #475569 !important;
        border-bottom-color: #cbd5e1;
    }

    /* ===== Metric Cards ===== */

    .metrics-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 6pt !important;
    }

    .metric-card {
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 6pt !important;
        padding: 8pt 6pt !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .metric-card.accent {
        background: #eff6ff !important;
        border-color: #93c5fd !important;
    }

    .metric-value {
        font-size: 14pt !important;
        color: #0f172a !important;
    }

    .metric-label {
        font-size: 8.5pt !important;
        color: #475569 !important;
    }

    .metric-note {
        font-size: 7.5pt !important;
        color: #2563eb !important;
    }

    /* ===== Features / Topics ===== */

    .features-grid,
    .topics-grid {
        gap: 6pt !important;
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .topics-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .feature-card,
    .topic-card {
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 6pt !important;
        padding: 8pt 10pt !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .feature-icon,
    .topic-emoji {
        font-size: 13pt !important;
        margin-bottom: 3pt !important;
    }

    .feature-title,
    .topic-title {
        font-size: 10pt !important;
        color: #0f172a !important;
    }

    .feature-text,
    .topic-text {
        font-size: 9pt !important;
        color: #334155 !important;
    }

    .feature-text strong {
        color: #0f172a !important;
    }

    /* ===== Platform blocks ===== */

    .platform-block {
        background: #ffffff !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 6pt !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        page-break-inside: avoid;
        break-inside: avoid;
        overflow: visible !important;
    }

    .platform-block--secondary {
        opacity: 1 !important;
    }

    .platform-header {
        padding: 8pt 12pt !important;
        background: #f1f5f9 !important;
        border-bottom: 1px solid #cbd5e1 !important;
        page-break-after: avoid;
        break-after: avoid;
    }

    .platform-logo {
        color: #0f172a !important;
    }

    .platform-logo svg {
        width: 18px !important;
        height: 18px !important;
    }

    .platform-name {
        font-size: 12pt !important;
        color: #0f172a !important;
    }

    .platform-link {
        color: #2563eb !important;
        border: 1px solid #93c5fd !important;
        font-size: 8.5pt !important;
        padding: 2pt 6pt !important;
    }

    .platform-label {
        background: #f1f5f9 !important;
        color: #475569 !important;
        font-size: 7.5pt !important;
    }

    /* ===== Таблицы статистики ===== */

    .stats-table-wrapper {
        overflow: visible !important;
    }

    .stats-table {
        font-size: 9pt !important;
        width: 100% !important;
    }

    .stats-table thead {
        background: #f8fafc !important;
        display: table-header-group; /* повтор шапки на каждой странице */
    }

    .stats-table th {
        padding: 5pt 8pt !important;
        color: #475569 !important;
        font-size: 7.5pt !important;
        border-bottom: 1px solid #cbd5e1 !important;
    }

    .stats-table td {
        padding: 5pt 8pt !important;
        color: #0f172a !important;
        border-top: 1px solid #e2e8f0 !important;
        white-space: normal !important; /* переносим длинные значения */
    }

    .stats-table tbody tr:hover {
        background: transparent !important;
    }

    .stats-table td.highlight {
        color: #1d4ed8 !important;
    }

    .stats-table tr {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    /* ===== CTA ===== */

    .cta-section {
        background: #eff6ff !important;
        border: 1px solid #bfdbfe !important;
        border-radius: 8pt !important;
        padding: 14pt !important;
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .cta-title {
        font-size: 14pt !important;
        color: #0f172a !important;
    }

    .cta-text {
        font-size: 10pt !important;
        color: #334155 !important;
    }

    .cta-buttons {
        gap: 10pt !important;
    }

    .cta-btn {
        background: #ffffff !important;
        color: #0f172a !important;
        border: 1px solid #2563eb !important;
        padding: 5pt 12pt !important;
        font-size: 9.5pt !important;
        box-shadow: none !important;
    }

    .cta-btn.primary {
        background: #2563eb !important;
        color: #ffffff !important;
    }

    /* ===== About collaboration ===== */

    .about-collab-text {
        font-size: 10pt !important;
        color: #334155 !important;
        text-align: left !important;
    }

    .audience-note {
        font-size: 9pt !important;
        color: #475569 !important;
    }

    /* ===== Разрывы страниц ===== */

    /* Главный CTA с контактами — с новой страницы, чтобы он не разорвался. */
    .cta-section {
        page-break-before: auto;
    }

    /* Footer в печати не нужен, но если оставить — пусть не отрывается. */
    .profile-footer {
        font-size: 8pt !important;
        color: #64748b !important;
        text-align: center !important;
        margin-top: 14pt !important;
        padding-top: 8pt !important;
        border-top: 1px solid #e2e8f0 !important;
    }

    .profile-footer p {
        color: inherit !important;
    }

    /* ===== Разворачиваем блоки с крупной статистикой ===== */

    /* После Hero и Growth Banner — даём секции "Ключевые метрики" не
       начинаться где попало, а прижиматься к предыдущему контенту. */
    .growth-banner + .section {
        page-break-before: avoid;
    }
}
