/*
 * СПСИ Framework - Стили для печати
 * =================================
 */

@media print {

    /* Общие правила для печати */
    * {
        background: transparent !important;
        color: black !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    html {
        font-size: 12pt;
    }

    body {
        background: white !important;
        font-family: "Times New Roman", serif !important;
        line-height: 1.4;
        margin: 0;
        padding: 0;
    }

    /* Скрыть ненужные элементы */
    .c-button,
    .c-nav,
    .c-admin-sidebar,
    .c-admin-header,
    .c-modal,
    .c-alert,
    .admin-layout,
    .no-print {
        display: none !important;
    }

    /* Контейнеры */
    .o-container {
        box-shadow: none !important;
        border: 1px solid #333;
        padding: 20px;
        margin: 0;
        background: white !important;
    }

    /* Заголовки */
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        color: black !important;
        page-break-after: avoid;
        font-weight: bold;
    }

    h1 {
        font-size: 24pt;
        border-bottom: 2pt solid black;
        padding-bottom: 10pt;
        margin-bottom: 15pt;
    }

    h2 {
        font-size: 18pt;
        margin-top: 15pt;
        margin-bottom: 10pt;
    }

    h3 {
        font-size: 14pt;
        margin-top: 12pt;
        margin-bottom: 8pt;
    }

    /* Параграфы */
    p {
        margin-bottom: 10pt;
        orphans: 3;
        widows: 3;
    }

    /* Ссылки */
    a {
        color: black !important;
        text-decoration: underline;
    }

    a[href^="http"]:after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #666;
    }

    /* Изображения */
    img {
        max-width: 100% !important;
        height: auto !important;
        page-break-inside: avoid;
    }

    /* Таблицы */
    .c-table {
        border-collapse: collapse;
        border: 1pt solid black;
        width: 100%;
        margin: 10pt 0;
    }

    .c-table__cell {
        border: 1pt solid black;
        padding: 5pt;
        font-size: 10pt;
    }

    .c-table__cell--header {
        background: #f0f0f0 !important;
        font-weight: bold;
    }

    /* Посты и статьи */
    .c-post {
        border: 1pt solid #ccc;
        padding: 15pt;
        margin: 10pt 0;
        background: white !important;
        page-break-inside: avoid;
    }

    .c-post__title {
        font-size: 14pt;
        font-weight: bold;
        margin-bottom: 8pt;
    }

    .c-post__meta {
        font-size: 9pt;
        color: #666 !important;
        margin-bottom: 10pt;
        border-bottom: 1pt dotted #ccc;
        padding-bottom: 5pt;
    }

    /* Карточки */
    .c-card {
        border: 1pt solid black;
        margin: 10pt 0;
        page-break-inside: avoid;
    }

    .c-card__header {
        background: #f0f0f0 !important;
        padding: 10pt;
        border-bottom: 1pt solid black;
        font-weight: bold;
    }

    .c-card__body {
        padding: 10pt;
    }

    /* Формы */
    .c-form {
        border: 1pt solid black;
        padding: 15pt;
        margin: 10pt 0;
    }

    .c-form__label {
        font-weight: bold;
        display: block;
        margin-bottom: 5pt;
    }

    .c-form__input {
        border: 1pt solid black;
        padding: 3pt;
        width: 100%;
        background: white !important;
    }

    /* Информационные блоки */
    .c-info-box {
        border: 2pt solid black;
        padding: 10pt;
        margin: 10pt 0;
        background: white !important;
    }

    .c-info-box:before {
        content: "ℹ ";
        font-weight: bold;
        font-size: 14pt;
    }

    .c-info-box--success:before {
        content: "✓ ";
    }

    .c-info-box--warning:before {
        content: "⚠ ";
    }

    .c-info-box--error:before {
        content: "✗ ";
    }

    /* Пагинация и навигация */
    .c-pagination,
    .c-breadcrumb {
        display: none !important;
    }

    /* Подвал */
    .c-footer {
        margin-top: 20pt;
        border-top: 1pt solid black;
        padding-top: 10pt;
        text-align: center;
        font-size: 9pt;
    }

    /* Админка */
    .c-admin-content {
        margin: 0 !important;
    }

    .c-admin-widget {
        border: 1pt solid black;
        padding: 10pt;
        margin: 5pt;
        text-align: center;
        display: inline-block;
        width: 150pt;
    }

    .c-admin-widget__title {
        font-size: 10pt;
        font-weight: bold;
        margin-bottom: 5pt;
    }

    .c-admin-widget__value {
        font-size: 18pt;
        font-weight: bold;
    }

    /* Управление страницами */
    .page-break-before {
        page-break-before: always;
    }

    .page-break-after {
        page-break-after: always;
    }

    .page-break-avoid {
        page-break-inside: avoid;
    }

    /* Дополнительная информация для печати */
    .print-url:after {
        content: " [URL: " attr(data-url) "]";
        font-size: 8pt;
        color: #666;
    }

    .print-date:after {
        content: " [Дата печати: " attr(data-date) "]";
        font-size: 8pt;
        color: #666;
    }

    /* Оптимизация использования чернил */
    .ink-save * {
        background: white !important;
        color: black !important;
        text-shadow: none !important;
        box-shadow: none !important;
    }

    .ink-save .c-button,
    .ink-save .c-nav {
        border: 1pt solid black;
        background: white !important;
        color: black !important;
    }
}