/* ════════ CognoCheck — گزارشِ A4 (پورتِ docs/report-template.reference.html) ════════
   همه‌چیز زیرِ .cm-report اسکوپ شده تا با app.css (تمِ تیرهٔ SPA) تداخل نکند.
   فونت: Vazirmatn (همان که index.html لود کرده) برای متن و .num (به‌جای Plex base64).
   .num فقط tnum + ltr می‌گیرد تا اعداد فارسی/لاتین یکدست و چپ‌چین رندر شوند. */

/* بوم/پس‌زمینهٔ خاکستریِ دورِ کاغذ — فقط وقتی گزارش روی صفحه است */
.cm-report-host{background:#e7ebf1;min-height:100vh;padding:0 0 28px}

.cm-report{
  --ink:#0B1530; --ink2:#27324B; --muted:#5C6678; --faint:#8A93A6;
  --paper:#fff; --panel:#F5F8FC; --panel2:#EDF2F9; --line:#DCE3ED; --line2:#C7D0DE;
  --teal:#0F857F; --teal-d:#0A6E70; --indigo:#2D4A8A;
  font-family:'Vazirmatn',Tahoma,'Segoe UI',sans-serif;
  color:var(--ink); line-height:1.45; direction:rtl;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  font-size:10px;            /* معادلِ html{font-size:10px} مرجع — همهٔ px‌های زیر نسبت به این متراژ کالیبره‌اند */
}
.cm-report *{margin:0;padding:0;box-sizing:border-box}
.cm-report .num{font-family:'Vazirmatn',monospace;direction:ltr;unicode-bidi:isolate;font-feature-settings:"tnum" 1}
.cm-report .muted{color:var(--muted)} .cm-report .strong{font-weight:700}

/* نوارِ کنترلِ بالا (چاپ/بازگشت) — در چاپ پنهان */
.cm-report-bar{display:flex;justify-content:center;gap:10px;padding:16px 12px 4px}
.cm-report-bar button{font-family:'Vazirmatn',sans-serif;font-size:13px;font-weight:700;
  border-radius:10px;padding:9px 18px;cursor:pointer;border:1px solid #c7d0de;transition:.15s}
.cm-report-bar .rp-print{background:#0F857F;color:#fff;border-color:#0F857F}
.cm-report-bar .rp-print:hover{background:#0A6E70}
.cm-report-bar .rp-back{background:#fff;color:#27324B}
.cm-report-bar .rp-back:hover{background:#eef2f9}

/* صفحهٔ A4 */
.cm-report .page{position:relative;width:210mm;min-height:297mm;background:var(--paper);
  margin:14px auto;padding:8mm 8.5mm 6mm;display:flex;flex-direction:column;
  box-shadow:0 10px 40px rgba(11,21,48,.18);overflow:hidden}

.cm-report .sample{position:absolute;top:8mm;left:50%;transform:translateX(-50%);
  font:600 7.4px/1 'Vazirmatn';letter-spacing:.22em;color:#B5562E;background:#fbeee6;
  border:1px solid #e7cbbb;border-radius:3px;padding:2px 8px;z-index:5}

/* ---------- MASTHEAD ---------- */
.cm-report .mast{border-bottom:2px solid var(--ink);padding-bottom:4mm}
.cm-report .eyebrow{display:flex;justify-content:space-between;align-items:center;
  padding-bottom:3px;border-bottom:1px solid var(--line)}
.cm-report .brand{display:flex;align-items:baseline;gap:5px}
.cm-report .logo{font-weight:800;font-size:15px;letter-spacing:-.02em;color:var(--ink)}
.cm-report .logo::first-letter{color:var(--teal)}
.cm-report .sep{color:var(--teal);font-size:12px}
.cm-report .mod{font-weight:700;font-size:12px;color:var(--teal-d)}
.cm-report .tag{margin-right:8px;font-size:8.4px;color:var(--muted)}
.cm-report .meta-code{font-size:8px;color:var(--faint);letter-spacing:.03em}

.cm-report .mast-main{display:flex;gap:5mm;margin-top:3mm;align-items:stretch}
.cm-report .who{flex:1.25;min-width:0}
.cm-report .who h1{font-size:13.5px;font-weight:800;color:var(--ink);line-height:1.3;margin-bottom:3mm}
.cm-report .who-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 6mm;font-size:9px;color:var(--ink2)}
.cm-report .who-grid b{color:var(--ink);font-weight:700}
.cm-report .who-grid .muted{font-size:8.2px}

.cm-report .cci{flex:1;background:linear-gradient(180deg,#f3f9f9,#eef5f6);border:1px solid #cfe4e3;
  border-radius:6px;padding:2.5mm 3mm}
.cm-report .cci-head{display:flex;align-items:center;gap:6px;margin-bottom:1mm}
.cm-report .cci-name{font-size:9px;font-weight:700;color:var(--teal-d)}
.cm-report .cci-flex{display:flex;gap:3mm;align-items:center}
.cm-report .cci-big{display:flex;flex-direction:column;line-height:1;min-width:62px}
.cm-report .cci-val{font-size:30px;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.cm-report .cci-sub{font-size:8.6px;color:var(--ink2);margin-top:2px}
.cm-report .cci-ci{font-size:7.8px;color:var(--muted);margin-top:2px}
.cm-report .cci-ruler{flex:1;min-width:0}

/* source tags */
.cm-report .src{font:600 7px/1 'Vazirmatn';letter-spacing:.04em;padding:2px 5px;border-radius:3px;white-space:nowrap}
.cm-report .src.comp{background:#eaf4f4;color:#0A6E70;border:1px solid #cde6e5}
.cm-report .src.ai{background:#eef0fb;color:#2D4A8A;border:1px solid #d4daf3}

/* ---------- GRID3 ---------- */
.cm-report .grid3{display:flex;gap:4mm;flex:0 0 auto;margin-top:4mm;min-height:0}
.cm-report .col{flex:1;min-width:0;display:flex;flex-direction:column}
.cm-report .col-h{display:flex;justify-content:space-between;align-items:center;
  font-size:10px;font-weight:800;color:var(--ink);
  border-bottom:1.4px solid var(--teal);padding-bottom:2px;margin-bottom:2mm}
.cm-report .col-h.mt{margin-top:3.6mm}
.cm-report .sub{font-size:7.8px;color:var(--muted);margin:-1mm 0 1.6mm;line-height:1.4}

.cm-report .radar{width:100%;margin:0 auto .5mm}
.cm-report .legend{font-size:7.6px;color:var(--muted);text-align:center;margin-bottom:1.6mm}
.cm-report .legend i{display:inline-block;vertical-align:middle;margin:0 2px}
.cm-report .lg-band{width:9px;height:7px;background:#c2cbdc;opacity:.5;border-radius:2px}
.cm-report .lg-dot{width:7px;height:7px;background:#0A6E70;border-radius:50%}

/* جایگزینِ «داده موجود نیست» داخلِ ستون‌ها */
.cm-report .nodata{font-size:8.4px;color:var(--faint);background:var(--panel);
  border:1px dashed var(--line2);border-radius:4px;padding:3mm;text-align:center;line-height:1.7}

/* cognitive table */
.cm-report .ctab{width:100%;border-collapse:collapse;font-size:8.4px}
.cm-report .ctab th{font-size:7.4px;font-weight:700;color:var(--muted);text-align:center;
  padding:2px 2px;border-bottom:1px solid var(--line2)}
.cm-report .ctab th.dom,.cm-report .ctab td.dom{text-align:right}
.cm-report .ctab td{padding:3px 2px;border-bottom:1px solid #EAEFF6}
.cm-report .ctab td.dom{color:var(--ink2);font-weight:500;line-height:1.25}
.cm-report .ctab .code{font:600 6.6px 'Vazirmatn';color:var(--faint);margin-right:1px}
.cm-report .ctab td.num{text-align:center}
.cm-report .ctab td.num.strong{font-weight:700;color:var(--ink)}
.cm-report .ctab td.ci{color:var(--muted);font-size:7.8px}
.cm-report .chip{display:inline-block;font-size:7px;font-weight:600;padding:1.5px 5px;border-radius:9px;
  color:#fff;white-space:nowrap}
.cm-report .chip.sup{background:#0F857F}.cm-report .chip.high{background:#2F7FA6}
.cm-report .chip.avg{background:#7C8AA8}.cm-report .chip.low{background:#C98A3C}
.cm-report .chip.vlow{background:#B5562E}

/* bars */
.cm-report .barblk{display:flex;flex-direction:column;gap:2px}
.cm-report .brow{display:grid;grid-template-columns:1fr 64px 20px;align-items:center;gap:5px;padding:2.2px 0}
.cm-report .blab{font-size:8.4px;color:var(--ink2);text-align:right;line-height:1.2}
.cm-report .track{position:relative;height:7px;background:var(--panel2);border-radius:4px;overflow:hidden}
.cm-report .fill{height:100%;border-radius:4px}
.cm-report .track .mid{position:absolute;top:-1px;bottom:-1px;right:50%;width:1px;background:#aab4c6;z-index:2}
.cm-report .bval{font-size:8px;font-weight:600;text-align:left;color:var(--ink2)}
.cm-report .b5note{font-size:7.4px;color:var(--muted);margin-top:1.4mm}
.cm-report .b5note .mid-k{display:inline-block;width:1px;height:8px;background:#aab4c6;vertical-align:-1px;margin-left:3px}

/* fit + hex + track */
.cm-report .fit{display:flex;justify-content:space-around;align-items:center;padding:2mm 0 2.5mm}
.cm-report .hexwrap{display:flex;gap:2mm;align-items:center}
.cm-report .hex{width:52%;flex-shrink:0}
.cm-report .hexkey{flex:1;display:grid;grid-template-columns:1fr;gap:1px;font-size:8px;color:var(--ink2)}
.cm-report .hexkey b{display:inline-block;width:13px;color:var(--indigo);font-weight:800}
.cm-report .hexkey .num{float:left;color:var(--muted)}
.cm-report .code2{font:600 7.6px 'Vazirmatn';color:var(--indigo);background:#eef0fb;border:1px solid #d4daf3;
  padding:1px 6px;border-radius:9px}
.cm-report .track-box{margin-top:3.5mm;background:var(--panel);border:1px solid var(--line);
  border-right:3px solid var(--teal);border-radius:4px;padding:2.6mm 3mm}
.cm-report .tb-h{font-size:7.6px;color:var(--muted);font-weight:700;margin-bottom:1px}
.cm-report .tb-main{font-size:10px;font-weight:800;color:var(--teal-d);margin-bottom:1.5mm}
.cm-report .tb-row{font-size:8.2px;color:var(--ink2);line-height:1.5}
.cm-report .tb-row b{color:var(--ink)}

/* ---------- INTERPRETATION ---------- */
.cm-report .interp{margin-top:4mm;background:linear-gradient(180deg,#fafbfe,#f4f6fc);
  border:1px solid #dde2f0;border-radius:6px;padding:4mm 3.5mm}
.cm-report .interp-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:2mm;
  border-bottom:1px solid #e2e6f2;padding-bottom:1.5mm}
.cm-report .ih-title{font-size:10.5px;font-weight:800;color:var(--ink)}
.cm-report .interp-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:3mm}
.cm-report .ib-h{font-size:8.6px;font-weight:800;color:var(--indigo);margin-bottom:1mm;
  padding-bottom:1px;border-bottom:1px dashed #cfd6ea}
.cm-report .ib p{font-size:8.3px;color:var(--ink2);line-height:1.92;text-align:justify}
.cm-report .ib ul{list-style:none;font-size:8.3px;color:var(--ink2);line-height:1.82}
.cm-report .ib li{position:relative;padding-right:8px;margin-bottom:2.4px}
.cm-report .ib li::before{content:"";position:absolute;right:0;top:6px;width:3px;height:3px;
  background:var(--teal);border-radius:50%}

/* ---------- FOOTER ---------- */
.cm-report .foot{margin-top:auto;padding-top:2.5mm}
.cm-report .valid{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin-bottom:1.8mm}
.cm-report .v-h{font-size:8px;font-weight:800;color:var(--ink);margin-left:3px}
.cm-report .vchip{font-size:7.6px;color:var(--ink2);background:var(--panel);border:1px solid var(--line);
  border-radius:9px;padding:1.5px 7px}
.cm-report .vchip b{color:var(--muted);font-weight:600}
.cm-report .method{font-size:7.4px;color:var(--muted);line-height:1.55;text-align:justify;
  border-top:1px solid var(--line);padding-top:1.8mm}
.cm-report .method b{color:var(--ink2)}
.cm-report .method .num{font-size:7.2px}
.cm-report .ethic{display:block;margin-top:1mm;color:var(--faint)}
.cm-report .ethic b{color:var(--muted)}

/* svg text classes (scoped) */
.cm-report .rl{font:600 8px 'Vazirmatn';fill:#3A465E}
.cm-report .rn{font:600 6.6px 'Vazirmatn';fill:#9AA4B6}
.cm-report .hx{font:700 8px 'Vazirmatn';fill:#2D4A8A}
.cm-report .dn{font:700 13px 'Vazirmatn';fill:#0B1530}
.cm-report .du{font:600 7px 'Vazirmatn';fill:#5C6678}
.cm-report .dl{font:600 7.6px 'Vazirmatn';fill:#27324B}

/* ---------- PRINT ---------- */
@media print{
  .no-print{display:none !important}
  .cm-report-host{background:#fff;padding:0}
  .cm-report .page{margin:0;box-shadow:none;width:auto;min-height:auto}
}
@page{size:A4 portrait;margin:0}
