/* ==========================================================================
   print-unified.css — التصميم الموحّد لكل المطبوعات والتقارير
   - يتحمّل في كل صفحات النظام (includes/theme-assets.php) وفي صفحات الطباعة المستقلة
     عبر aleman_print_assets() في includes/print_doc.php.
   - الألوان من اللوحة الموحّدة فقط: أخضر الهوية + slate.
   ========================================================================== */

/* ---------- مكوّن المستند (.adoc) — شاشة وطباعة ---------- */
.adoc {
    --adoc-brand: #1f7a4d; --adoc-brand-dark: #17603c; --adoc-tint: #dcefe4;
    --adoc-ink: #1e293b; --adoc-muted: #64748b; --adoc-line: #e2e8f0; --adoc-soft: #f8fafc;
    background: #fff; color: var(--adoc-ink);
    font-family: 'Cairo', Tahoma, sans-serif;
    max-width: 980px; margin: 0 auto;
    border: 1px solid var(--adoc-line); border-radius: 14px;
    box-shadow: 0 8px 28px rgba(15, 74, 45, .08);
    overflow: hidden;
}
.adoc-head {
    display: flex; align-items: center; justify-content: space-between; gap: 24px;
    padding: 22px 28px; border-bottom: 3px solid var(--adoc-brand); background: #fff;
}
.adoc-brand { display: flex; align-items: center; gap: 14px; }
.adoc-logo {
    width: 64px; height: 64px; object-fit: contain; border-radius: 12px;
    border: 1px solid var(--adoc-line); padding: 4px; background: #fff;
}
.adoc-org { font-size: 20px; font-weight: 900; color: var(--adoc-brand-dark); line-height: 1.3; }
.adoc-system { font-size: 12px; color: var(--adoc-muted); margin-top: 3px; }
.adoc-meta { display: flex; flex-direction: column; gap: 4px; text-align: end; font-size: 12px; color: var(--adoc-muted); }
.adoc-meta strong { color: #334155; font-weight: 800; }
.adoc-code {
    align-self: flex-end; font-weight: 800; color: var(--adoc-brand-dark);
    background: var(--adoc-soft); border: 1px solid var(--adoc-line); border-radius: 8px;
    padding: 4px 10px; margin-bottom: 2px; font-size: 12px;
}
.adoc-title {
    /* العنوان في منتصف الصفحة: عمودين جانبيين متساويين (اليسار لمربع الإجمالي) */
    display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 14px;
    padding: 22px 28px 14px;
}
.adoc-title-main { display: flex; align-items: center; justify-content: center; gap: 12px; text-align: center; }
.adoc-title-text { min-width: 0; }
.adoc-title-end { display: flex; justify-content: flex-end; }
.adoc-title-icon {
    width: 50px; height: 50px; border-radius: 13px; display: grid; place-items: center;
    background: var(--adoc-tint); color: var(--adoc-brand); font-size: 23px;
}
.adoc-title h1 { margin: 0 0 4px; font-size: 21px; font-weight: 900; color: var(--adoc-brand-dark); }
.adoc-title p { margin: 0; font-size: 13px; color: var(--adoc-muted); }
.adoc-total {
    min-width: 140px; padding: 11px 16px; border-radius: 12px; background: var(--adoc-brand); color: #fff;
    display: flex; align-items: center; justify-content: space-between; gap: 14px;
}
.adoc-total span { font-size: 12px; } .adoc-total strong { font-size: 24px; font-weight: 900; }
.adoc-body { padding: 6px 28px 24px; }

/* أقسام وجداول */
.adoc-section { margin-bottom: 16px; }
.adoc-section-title {
    display: flex; align-items: center; gap: 8px; margin: 0;
    background: var(--adoc-brand); color: #fff; font-size: 14px; font-weight: 800;
    padding: 8px 14px; border-radius: 8px 8px 0 0;
}
.adoc-box { border: 1px solid var(--adoc-line); border-top: 0; border-radius: 0 0 8px 8px; padding: 12px 14px; font-size: 13.5px; line-height: 1.8; }
.adoc-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.adoc-table th, .adoc-table td { padding: 9px 12px; border: 1px solid var(--adoc-line); text-align: start; vertical-align: top; }
.adoc-table thead th { background: #f1f5f9; color: var(--adoc-brand-dark); font-weight: 800; }
.adoc-table tbody tr:nth-child(even) td { background: var(--adoc-soft); }
.adoc-table tfoot td { background: var(--adoc-brand-dark); color: #fff; font-weight: 900; }
.adoc-table th.num, .adoc-table td.num { text-align: center; font-variant-numeric: tabular-nums; }
.adoc-kv { width: 100%; border-collapse: collapse; font-size: 13px; }
.adoc-kv th, .adoc-kv td { padding: 9px 12px; border: 1px solid var(--adoc-line); text-align: start; }
.adoc-kv th { width: 24%; background: var(--adoc-soft); color: #334155; font-weight: 800; }

/* توقيعات وتذييل */
.adoc-signs { display: flex; justify-content: space-between; gap: 18px; padding: 18px 28px 6px; }
.adoc-sign { flex: 1; text-align: center; font-size: 13px; font-weight: 700; color: var(--adoc-muted); }
.adoc-sign-title { color: #334155; }
.adoc-sign-line { border-bottom: 1px dashed #94a3b8; margin: 30px 14px 8px; }
.adoc-sign-hint { font-size: 11.5px; }
.adoc-foot {
    display: flex; justify-content: space-between; gap: 12px;
    padding: 11px 28px; border-top: 1px solid var(--adoc-line);
    font-size: 11px; color: var(--adoc-muted);
}

/* العنوان داخل الترويسة (title_in_head): 3 أعمدة متساوية — اللوجو | العنوان في المنتصف | البيانات */
/* flex: الجانبين يكبروا بالتساوي (العنوان في المنتصف لما المساحة تسمح) ومحدش ينزل عن عرض محتواه؛ العنوان بس هو اللي يلف لو الورقة ضيقة */
.adoc-head-titled .adoc-head { display: flex; gap: 16px; }
.adoc-head-titled .adoc-brand, .adoc-head-titled .adoc-meta { flex: 1 1 0; min-width: max-content; }
.adoc-head-titled .adoc-head-title { flex: 0 1 auto; }
.adoc-head-titled .adoc-meta { align-items: flex-end; }
.adoc-head-titled .adoc-org { font-size: 17px; white-space: nowrap; }
.adoc-head-titled .adoc-system { font-size: 11px; white-space: nowrap; }
.adoc-head-title { display: flex; align-items: center; justify-content: center; gap: 10px; text-align: center; min-width: 0; }
.adoc-head-title h1 { margin: 0; font-size: 18px; font-weight: 900; color: var(--adoc-brand-dark); line-height: 1.35; }
.adoc-head-title-en { font-size: 11.5px; font-weight: 700; color: var(--adoc-muted); letter-spacing: .3px; direction: ltr; margin-top: 1px; }
.adoc-head-sub { font-size: 11.5px; font-weight: 600; color: var(--adoc-muted); margin-top: 2px; line-height: 1.5; }
.adoc-total.adoc-total-sm { min-width: 0; align-self: flex-end; margin-top: 3px; padding: 3px 10px; border-radius: 8px; gap: 8px; }
.adoc-total.adoc-total-sm span { font-size: 11px; } .adoc-total.adoc-total-sm strong { font-size: 17px; }
.adoc-head-titled .adoc-body { padding-top: 16px; }
@media (max-width: 650px) {
    .adoc-head-titled .adoc-head { flex-direction: column; align-items: stretch; }
    .adoc-head-titled .adoc-meta { align-items: flex-start; }
}
@media print { .adoc-head-titled .adoc-body { padding-top: 10px; } }

/* repeat_head: الترويسة تتكرر أعلى كل ورقة. العنصر الثابت (fixed) بيتطبع في كل صفحة في Chrome/Edge،
   والمساحة له محجوزة بـ padding-top للـ body اللي بيتكرر في كل ورقة (box-decoration-break: clone). */
@media print {
    body:has(.adoc-repeat-head) { padding-top: 34mm !important; }
    .adoc-repeat-head .adoc-head {
        position: fixed; top: 7mm; left: 11mm; right: 11mm; z-index: 5;
        background: #fff; padding: 0 0 8px !important;
    }
    .adoc-repeat-head.adoc-head-titled .adoc-body { padding-top: 0; }
}

/* .adoc-print-chrome: صفحة شاشة عادية (لوحة/تقرير) — الترويسة والتذييل يظهروا على الورق فقط */
@media screen {
    .adoc.adoc-print-chrome { border: 0; border-radius: 0; box-shadow: none; background: transparent; max-width: none; overflow: visible; color: inherit; }
    .adoc-print-chrome > .adoc-head, .adoc-print-chrome > .adoc-title,
    .adoc-print-chrome > .adoc-foot, .adoc-print-chrome > .adoc-signs { display: none; }
    .adoc-print-chrome > .adoc-body { padding: 0; }
}

@media (max-width: 650px) {
    .adoc-head, .adoc-title { padding: 16px; }
    .adoc-head { flex-direction: column; align-items: flex-start; }
    .adoc-meta { text-align: start; }
    .adoc-title { grid-template-columns: 1fr; }
    .adoc-title-side:empty { display: none; }
    .adoc-title-end { justify-content: center; }
    .adoc-body { padding: 4px 16px 16px; }
    .adoc-signs { flex-direction: column; padding: 14px 16px; }
}

/* ---------- قواعد الطباعة العامة (كل صفحات النظام) ---------- */
@media print {
    /* هامش الصفحة صفر = المتصفح ما يطبعش التاريخ/العنوان/الرابط/أرقام الصفحات.
       الهامش الفعلي لكل صفحة من padding الـ body مع box-decoration-break: clone. */
    @page { margin: 0; }
    html, body {
        background: #fff !important;
        -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important;
    }
    body {
        margin: 0 !important;
        padding: 10mm 12mm !important;
        -webkit-box-decoration-break: clone; box-decoration-break: clone;
    }
    /* صفحات تحتاج طباعة حتى الحافة (كروت/بطاقات/شهادات بإطار كامل) تضيف class="print-bleed" على body */
    body.print-bleed { padding: 0 !important; }

    /* واجهة النظام لا تُطبع */
    .sidebar, .sidebar-overlay, .sidebar-mobile-toggle, .top-header, .topbar, .app-topbar,
    .no-print, .report-toolbar, .page-header .btn, .toast, #toastContainer, .scroll-top,
    .pull-refresh-indicator { display: none !important; }
    .dashboard-container, .main-content, .content-area, .app-main, main {
        display: block !important; margin: 0 !important; padding: 0 !important;
        width: auto !important; max-width: none !important; border: 0 !important;
        background: #fff !important; box-shadow: none !important;
    }
    /* أغلفة المعاينة الرمادية حول الورقة تختفي */
    .print-wrapper, .print-area-wrap, .preview-wrap, .page-wrap {
        background: #fff !important; padding: 0 !important; min-height: 0 !important; box-shadow: none !important;
    }

    /* المستند الموحّد على الورق */
    .adoc { max-width: none; margin: 0; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
    .adoc-head { padding: 0 0 12px; }
    .adoc-title { padding: 14px 0 10px; }
    .adoc-body { padding: 0; }
    .adoc-signs { padding: 16px 0 0; break-inside: avoid; page-break-inside: avoid; }
    .adoc-foot { padding: 10px 0 0; margin-top: 14px; }
    .adoc-section-title { break-after: avoid; page-break-after: avoid; }

    /* جداول: العنوان يتكرر في كل صفحة، والصف ما يتقسمش */
    thead { display: table-header-group; }
    tr, img, .adoc-sign { break-inside: avoid; page-break-inside: avoid; }
    a[href]::after { content: none !important; }
}

/* أيقونة العنوان اتشالت من كل التقارير (طلب المستخدم) — احتياطي لأي صفحة لسه بتولّدها */
.adoc-title-icon { display: none !important; }
