/**
 * =====================================================
 * تنسيقات الطباعة - منظومة إدارة المبيعات والمخزون
 * Print Stylesheet - الإصدار 2.0
 * =====================================================
 * 
 * هذا الملف مسؤول عن:
 * - تنسيق الصفحات للطباعة
 * - إخفاء العناصر غير الضرورية (السايدبار، الهيدر، الأزرار)
 * - تنسيق الفواتير المطبوعة بتصميم احترافي
 * - تحسين مظهر الطباعة للغة العربية
 * - تنسيقات خاصة بالطابعات الحرارية (POS)
 * - دعم هوية Glacial البصرية في الطباعة
 * 
 * يعتمد على: app.css (الإصدار 4.0)
 * 
 * @version 2.0.0
 * @date 2026-08-06
 * @state ليبيا
 * =====================================================
 */

/* =====================================================
   1. إعدادات الصفحة العامة للطباعة
   ===================================================== */
@media print {
    /* ── إعادة تعيين الخلفية والألوان ── */
    *,
    *::before,
    *::after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
        border-color: #ccc !important;
    }

    body {
        background: white !important;
        font-family: 'Tajawal', 'Segoe UI', sans-serif !important;
        font-size: 11pt !important;
        line-height: 1.6 !important;
        direction: rtl !important;
        padding: 0 !important;
        margin: 0 !important;
        color: #000 !important;
    }

    /* ── إخفاء العناصر غير الضرورية ── */
    .sidebar,
    .top-header,
    .header-actions,
    .header-search,
    .user-dropdown,
    .mobile-menu-btn,
    .sidebar-toggle,
    .sidebar-overlay,
    .no-print,
    .btn,
    button:not(.print-btn),
    .page-actions,
    .breadcrumb,
    .alert,
    .modal,
    .modal-overlay,
    .loading-overlay,
    .dataTables_length,
    .dataTables_filter,
    .dataTables_paginate,
    .dt-buttons,
    footer,
    .sidebar-footer,
    .pos-top-bar,
    .pos-cart,
    .pos-extra-actions,
    .pos-payment-actions,
    .pos-category-filter,
    .stat-card .stat-glow,
    .stat-card::before {
        display: none !important;
        visibility: hidden !important;
    }

    /* ── إظهار العناصر المخصصة للطباعة ── */
    .print-only {
        display: block !important;
        visibility: visible !important;
    }

    .print-inline {
        display: inline !important;
        visibility: visible !important;
    }

    .print-flex {
        display: flex !important;
        visibility: visible !important;
    }

    /* ── توسيع المحتوى الرئيسي ── */
    .main-content {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        background: #fff !important;
    }

    .page-content {
        padding: 10px 20px !important;
        margin: 0 !important;
    }

    .app-wrapper {
        display: block !important;
    }

    /* ── الروابط ── */
    a {
        text-decoration: none !important;
        color: #000 !important;
    }

    a[href]:after {
        content: none !important;
    }

    /* ── فواصل الصفحات ── */
    .page-break {
        page-break-before: always;
    }

    .page-break-after {
        page-break-after: always;
    }

    .no-page-break {
        page-break-inside: avoid;
    }

    /* ── حجم الصفحة ── */
    @page {
        size: A4;
        margin: 12mm 16mm;
    }

    @page landscape {
        size: A4 landscape;
    }

    @page small {
        size: 80mm auto;
        margin: 2mm;
    }
}

/* =====================================================
   2. تنسيق الفاتورة المطبوعة (A4) - هوية Glacial
   ===================================================== */
@media print {
    .invoice-print {
        max-width: 100% !important;
        padding: 0 !important;
        direction: rtl !important;
    }

    /* ── رأس الفاتورة ── */
    .invoice-print .invoice-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        margin-bottom: 24px !important;
        padding-bottom: 16px !important;
        border-bottom: 3px double #000 !important;
        direction: rtl !important;
    }

    .invoice-print .invoice-header .company-info {
        text-align: right !important;
        direction: rtl !important;
    }

    .invoice-print .invoice-header .company-logo {
        width: 70px !important;
        height: auto !important;
        margin-bottom: 6px !important;
    }

    .invoice-print .invoice-header .company-name {
        font-size: 20pt !important;
        font-weight: 800 !important;
        margin-bottom: 2px !important;
        color: #000 !important;
        letter-spacing: -0.5px !important;
    }

    .invoice-print .invoice-header .company-name .highlight {
        color: #4361ee !important;
    }

    .invoice-print .invoice-header .company-details {
        font-size: 9pt !important;
        color: #555 !important;
        line-height: 1.4 !important;
    }

    .invoice-print .invoice-header .invoice-info {
        text-align: left !important;
        direction: ltr !important;
        font-size: 10pt !important;
    }

    .invoice-print .invoice-header .invoice-title {
        font-size: 24pt !important;
        font-weight: 900 !important;
        margin-bottom: 6px !important;
        letter-spacing: -1px !important;
        color: #4361ee !important;
        background: none !important;
        -webkit-text-fill-color: #4361ee !important;
    }

    .invoice-print .invoice-header .invoice-number {
        font-size: 13pt !important;
        font-weight: 700 !important;
        color: #000 !important;
    }

    .invoice-print .invoice-header .invoice-date {
        font-size: 9pt !important;
        color: #555 !important;
    }

    /* ── معلومات العميل ── */
    .invoice-print .customer-info {
        margin-bottom: 20px !important;
        padding: 12px 16px !important;
        border: 1px solid #000 !important;
        border-radius: 4px !important;
        background: #f9f9f9 !important;
        direction: rtl !important;
    }

    .invoice-print .customer-info .customer-label {
        font-size: 8pt !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        color: #666 !important;
        letter-spacing: 0.5px !important;
    }

    .invoice-print .customer-info .customer-name {
        font-size: 13pt !important;
        font-weight: 700 !important;
        color: #000 !important;
    }

    .invoice-print .customer-info .customer-details {
        font-size: 9pt !important;
        color: #555 !important;
    }

    /* ── جدول الأصناف ── */
    .invoice-print table {
        width: 100% !important;
        border-collapse: collapse !important;
        margin-bottom: 16px !important;
        direction: rtl !important;
        font-size: 10pt !important;
    }

    .invoice-print table thead {
        display: table-header-group !important;
    }

    .invoice-print table thead th {
        background: #f0f4ff !important;
        border: 1px solid #000 !important;
        padding: 8px 12px !important;
        font-size: 9pt !important;
        font-weight: 700 !important;
        text-align: center !important;
        color: #000 !important;
    }

    .invoice-print table tbody td {
        border: 1px solid #000 !important;
        padding: 6px 10px !important;
        font-size: 9pt !important;
        text-align: center !important;
        color: #000 !important;
    }

    .invoice-print table tbody tr:nth-child(even) td {
        background: #fafafa !important;
    }

    .invoice-print table .text-right {
        text-align: right !important;
    }

    .invoice-print table .text-left {
        text-align: left !important;
        direction: ltr !important;
    }

    .invoice-print table .text-center {
        text-align: center !important;
    }

    .invoice-print table tfoot td {
        border: none !important;
        padding: 4px 10px !important;
        font-size: 10pt !important;
        font-weight: 600 !important;
    }

    .invoice-print table tfoot .total-row td {
        border-top: 2px solid #000 !important;
        font-size: 14pt !important;
        font-weight: 800 !important;
        padding-top: 8px !important;
    }

    .invoice-print table tfoot .grand-total td {
        font-size: 16pt !important;
        font-weight: 900 !important;
        color: #4361ee !important;
        border-top: 3px double #000 !important;
        padding-top: 10px !important;
    }

    /* ── تذييل الفاتورة ── */
    .invoice-print .invoice-footer {
        margin-top: 30px !important;
        padding-top: 16px !important;
        border-top: 1px solid #ccc !important;
        font-size: 8pt !important;
        text-align: center !important;
        color: #666 !important;
    }

    .invoice-print .invoice-footer .signatures {
        display: flex !important;
        justify-content: space-between !important;
        margin-top: 40px !important;
        direction: rtl !important;
    }

    .invoice-print .invoice-footer .signature-line {
        width: 30% !important;
        text-align: center !important;
        border-top: 1px solid #000 !important;
        padding-top: 6px !important;
        font-size: 9pt !important;
        color: #555 !important;
    }

    /* ── شكراً للعميل ── */
    .invoice-print .thank-you {
        text-align: center !important;
        font-size: 11pt !important;
        font-weight: 700 !important;
        margin-top: 20px !important;
        padding: 10px !important;
        border-top: 1px dashed #ccc !important;
        color: #4361ee !important;
    }
}

/* =====================================================
   3. تنسيق الطابعة الحرارية (POS Thermal - 80mm)
   ===================================================== */
@media print and (max-width: 80mm) {
    @page {
        size: 80mm auto;
        margin: 0;
    }

    body {
        width: 80mm !important;
        font-size: 8pt !important;
        padding: 2mm !important;
        margin: 0 !important;
        font-family: 'Tajawal', monospace !important;
    }

    .pos-print {
        width: 76mm !important;
        padding: 0 !important;
        margin: 0 auto !important;
        direction: rtl !important;
    }

    .pos-print * {
        font-size: 8pt !important;
        line-height: 1.3 !important;
    }

    /* ── رأس الفاتورة الحرارية ── */
    .pos-print .pos-header {
        text-align: center !important;
        margin-bottom: 3mm !important;
        direction: rtl !important;
    }

    .pos-print .pos-header .company-name {
        font-size: 11pt !important;
        font-weight: 800 !important;
        color: #000 !important;
    }

    .pos-print .pos-header .company-info {
        font-size: 6pt !important;
        color: #555 !important;
        line-height: 1.2 !important;
    }

    .pos-print .pos-header .receipt-title {
        font-size: 9pt !important;
        font-weight: 700 !important;
        margin: 2mm 0 !important;
        border-bottom: 1px dashed #000 !important;
        padding-bottom: 1mm !important;
    }

    .pos-print .pos-divider {
        border-top: 1px dashed #000 !important;
        margin: 2mm 0 !important;
    }

    .pos-print .pos-divider-solid {
        border-top: 1px solid #000 !important;
        margin: 2mm 0 !important;
    }

    /* ── معلومات العميل الحراري ── */
    .pos-print .pos-customer {
        font-size: 7pt !important;
        margin: 1mm 0 !important;
        padding: 1mm !important;
        border: 1px dashed #000 !important;
    }

    /* ── جدول الأصناف الحراري ── */
    .pos-print table {
        width: 100% !important;
        border-collapse: collapse !important;
        font-size: 7pt !important;
        direction: rtl !important;
    }

    .pos-print table thead th {
        border-bottom: 1px dashed #000 !important;
        padding: 1mm 1mm !important;
        font-size: 6pt !important;
        font-weight: 700 !important;
        text-align: center !important;
        color: #000 !important;
    }

    .pos-print table tbody td {
        padding: 1mm 1mm !important;
        font-size: 7pt !important;
        text-align: center !important;
        border-bottom: 1px dotted #ddd !important;
        color: #000 !important;
    }

    .pos-print table tbody tr:last-child td {
        border-bottom: none !important;
    }

    .pos-print .pos-total {
        font-size: 10pt !important;
        font-weight: 800 !important;
        text-align: center !important;
        margin: 2mm 0 !important;
        padding: 2mm !important;
        border-top: 1px solid #000 !important;
        border-bottom: 1px solid #000 !important;
    }

    .pos-print .pos-grand-total {
        font-size: 12pt !important;
        font-weight: 900 !important;
        text-align: center !important;
        margin: 2mm 0 !important;
        padding: 2mm !important;
        border: 2px double #000 !important;
        background: #f0f4ff !important;
    }

    .pos-print .pos-barcode {
        text-align: center !important;
        margin: 2mm 0 !important;
    }

    .pos-print .pos-barcode img {
        max-width: 60mm !important;
        height: auto !important;
    }

    .pos-print .pos-footer {
        text-align: center !important;
        font-size: 6pt !important;
        margin-top: 2mm !important;
        padding-top: 2mm !important;
        border-top: 1px dashed #000 !important;
        color: #666 !important;
    }

    .pos-print .pos-footer .thank-you {
        font-size: 8pt !important;
        font-weight: 700 !important;
        color: #000 !important;
        margin: 1mm 0 !important;
    }
}

/* =====================================================
   4. تنسيقات الطباعة للجداول والتقارير
   ===================================================== */
@media print {
    /* ── البطاقات ── */
    .card {
        border: 1px solid #ccc !important;
        box-shadow: none !important;
        break-inside: avoid !important;
        margin-bottom: 12px !important;
        border-radius: 4px !important;
    }

    .card-header {
        background: #f5f5f5 !important;
        border-bottom: 1px solid #ccc !important;
        padding: 10px 16px !important;
    }

    .card-title {
        color: #000 !important;
        font-size: 12pt !important;
    }

    .card-body {
        padding: 12px 16px !important;
    }

    .card-footer {
        background: #f5f5f5 !important;
        border-top: 1px solid #ccc !important;
        padding: 8px 16px !important;
    }

    /* ── بطاقات الإحصائيات ── */
    .stat-card {
        break-inside: avoid !important;
        border: 1px solid #ccc !important;
        padding: 12px 16px !important;
        border-radius: 4px !important;
        margin-bottom: 8px !important;
        box-shadow: none !important;
        background: #fff !important;
    }

    .stat-card::before,
    .stat-card .stat-glow {
        display: none !important;
    }

    .stat-value {
        font-size: 18pt !important;
        color: #000 !important;
    }

    .stat-label {
        color: #666 !important;
        font-size: 8pt !important;
    }

    .stat-icon-wrapper {
        background: #f0f4ff !important;
        color: #4361ee !important;
    }

    .stat-change.up {
        color: #059669 !important;
        background: #d1fae5 !important;
    }

    .stat-change.down {
        color: #dc2626 !important;
        background: #fee2e2 !important;
    }

    /* ── الجداول ── */
    .data-table {
        border: 1px solid #000 !important;
        border-radius: 0 !important;
    }

    .data-table thead th {
        background: #e8eeff !important;
        border: 1px solid #000 !important;
        color: #000 !important;
        font-size: 8pt !important;
    }

    .data-table tbody td {
        border: 1px solid #ccc !important;
        color: #000 !important;
        font-size: 8pt !important;
    }

    .data-table tbody tr:hover td {
        background: none !important;
    }

    .data-table tbody tr:nth-child(even) td {
        background: #fafafa !important;
    }

    /* ── التقارير ── */
    .report-header {
        text-align: center !important;
        margin-bottom: 20px !important;
        direction: rtl !important;
    }

    .report-header h1 {
        font-size: 18pt !important;
        margin-bottom: 2px !important;
        color: #000 !important;
    }

    .report-header .report-meta {
        font-size: 9pt !important;
        color: #666 !important;
    }

    .report-summary {
        display: flex !important;
        justify-content: space-between !important;
        margin-bottom: 16px !important;
        padding: 12px 16px !important;
        border: 1px solid #000 !important;
        border-radius: 4px !important;
        direction: rtl !important;
    }

    .report-summary .summary-item {
        text-align: center !important;
    }

    .report-summary .summary-label {
        font-size: 8pt !important;
        font-weight: 700 !important;
        color: #666 !important;
        text-transform: uppercase !important;
    }

    .report-summary .summary-value {
        font-size: 14pt !important;
        font-weight: 800 !important;
        color: #000 !important;
    }
}

/* =====================================================
   5. تحسينات إضافية للطباعة
   ===================================================== */
@media print {
    /* ── إظهار النص الكامل للمختصرات ── */
    .truncate {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    /* ── إظهار جميع الصفوف في الجداول ── */
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate {
        display: none !important;
    }

    /* ── منع الأيتام (الأسطر المنفردة) ── */
    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid !important;
    }

    p, li, blockquote {
        orphans: 3 !important;
        widows: 3 !important;
    }

    /* ── تحسين مظهر الصور ── */
    img {
        max-width: 100% !important;
        page-break-inside: avoid !important;
    }

    /* ── إخفاء محتوى الفيديو والصوت ── */
    video, audio, iframe, embed, object {
        display: none !important;
    }

    /* ── تنسيق الكود المالي ── */
    .currency {
        white-space: nowrap !important;
        direction: ltr !important;
    }

    .amount {
        font-feature-settings: "tnum" !important;
        font-variant-numeric: tabular-nums !important;
        direction: ltr !important;
    }

    /* ── عرض اللوجو في الطباعة ── */
    .print-logo {
        display: block !important;
        max-height: 60px !important;
        margin-bottom: 8px !important;
    }

    /* ── تنسيق الشكر ── */
    .print-thanks {
        text-align: center !important;
        font-size: 11pt !important;
        font-weight: 700 !important;
        color: #4361ee !important;
        margin-top: 16px !important;
        padding: 8px !important;
        border-top: 2px solid #4361ee !important;
    }
}

/* =====================================================
   6. وضع الطباعة (Preview Mode)
   ===================================================== */
.print-preview-mode .sidebar,
.print-preview-mode .top-header,
.print-preview-mode .no-print,
.print-preview-mode .btn:not(.print-btn) {
    opacity: 0.3 !important;
    pointer-events: none !important;
}

.print-preview-mode .main-content {
    background: white !important;
    margin: 0 !important;
    padding: 20px !important;
}

.print-preview-mode .page-content {
    padding: 0 !important;
}

.print-preview-mode .card {
    box-shadow: none !important;
    border: 1px solid #ddd !important;
}

/* ── زر الطباعة في وضع المعاينة ── */
.print-btn {
    position: fixed;
    bottom: 30px;
    left: 30px;
    z-index: 9999;
    padding: 14px 28px;
    border-radius: var(--radius-full);
    background: var(--gradient-primary);
    color: #fff;
    border: none;
    font-size: 14px;
    font-weight: 700;
    font-family: var(--font-family);
    cursor: pointer;
    box-shadow: 0 4px 20px var(--primary-glow);
    transition: var(--transition-elastic);
    display: flex;
    align-items: center;
    gap: 10px;
}

.print-btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 40px var(--primary-glow);
}

.print-btn i {
    font-size: 18px;
}

/* =====================================================
   نهاية الملف
   ===================================================== */






































   /* =============================================
   تنسيقات صفحة الفاتورة للعميل
   ============================================= */
.invoice-print-page {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    min-height: 100vh;
}

.invoice-print-card {
    border: 2px solid #1e293b;
    border-radius: 12px;
    padding: 30px;
    background: #fff;
}

.invoice-print-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    padding-bottom: 15px;
    border-bottom: 3px double #2563eb;
    margin-bottom: 20px;
}

.company-info-print h2 {
    font-size: 22px;
    color: #2563eb;
    margin-bottom: 8px;
}

.company-info-print p {
    font-size: 12px;
    color: #666;
    margin-bottom: 4px;
}

.company-info-print i {
    color: #2563eb;
    margin-left: 4px;
}

.invoice-meta-print {
    text-align: left;
    direction: ltr;
}

.invoice-meta-print h3 {
    font-size: 18px;
    color: #2563eb;
    margin-bottom: 8px;
}

.invoice-meta-print p {
    font-size: 12px;
    color: #475569;
    margin-bottom: 4px;
}

.invoice-print-divider {
    border: none;
    border-top: 2px solid #e2e8f0;
    margin: 20px 0;
}

.invoice-print-customer {
    margin-bottom: 20px;
}

.invoice-print-customer h4 {
    font-size: 14px;
    color: #1e293b;
    margin-bottom: 8px;
}

.customer-info-print {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 12px;
    color: #475569;
    background: #f8fafc;
    padding: 10px 14px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.invoice-print-items {
    margin: 20px 0;
}

.invoice-print-table {
    width: 100%;
    border-collapse: collapse;
}

.invoice-print-table thead th {
    background: #1e293b;
    color: #fff;
    padding: 10px 12px;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
}

.invoice-print-table thead th:first-child {
    border-radius: 0 6px 0 0;
}

.invoice-print-table thead th:last-child {
    border-radius: 6px 0 0 0;
}

.invoice-print-table tbody td {
    padding: 9px 12px;
    text-align: center;
    font-size: 11px;
    color: #334155;
    border-bottom: 1px solid #e2e8f0;
}

.invoice-print-table tbody tr:nth-child(even) td {
    background: #fafbfc;
}

.invoice-print-totals {
    width: 320px;
    margin-right: auto;
    margin-top: 10px;
}

.totals-row-print {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 12px;
    color: #475569;
    border-bottom: 1px solid #f1f5f9;
}

.grand-total-print {
    font-size: 16px;
    font-weight: 800;
    color: #1e293b;
    border-top: 2px solid #1e293b;
    border-bottom: none;
    margin-top: 5px;
    padding-top: 10px;
}

.invoice-print-payments {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #e2e8f0;
}

.invoice-print-payments h4 {
    font-size: 13px;
    margin-bottom: 8px;
}

.payments-print-table {
    width: 100%;
    max-width: 380px;
    border-collapse: collapse;
}

.payments-print-table th {
    background: #f1f5f9;
    padding: 6px 10px;
    text-align: right;
    font-size: 10px;
    color: #64748b;
}

.payments-print-table td {
    padding: 6px 10px;
    font-size: 11px;
    border-bottom: 1px solid #f1f5f9;
}

.invoice-print-notes {
    margin-top: 20px;
    padding: 12px 16px;
    background: #fffbeb;
    border-radius: 8px;
}

.invoice-print-notes h4 {
    font-size: 12px;
    margin-bottom: 6px;
}

.invoice-print-footer {
    margin-top: 30px;
    padding-top: 12px;
    border-top: 1px dashed #ccc;
    text-align: center;
    font-size: 10px;
    color: #888;
}

.print-actions {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-bottom: 20px;
}

.text-bold { font-weight: 700; }
.text-success { color: #10b981; }
.text-danger { color: #ef4444; }
.text-muted { color: #94a3b8; font-size: 10px; }
.text-center { text-align: center; }

/* الطباعة */
@media print {
    .invoice-print-page {
        padding: 0;
        max-width: 100%;
    }
    
    .invoice-print-card {
        border: none;
        border-radius: 0;
        padding: 10px;
    }
    
    .print-actions {
        display: none !important;
    }
    
    @page {
        size: A4;
        margin: 10mm;
    }
}