/* ════════ 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}
}

/* ════════ CogMap Taxi — گزارش توصیفیِ غیرهنجاری ════════
   این پوسته جدا از موتور موروثی گزارش است تا صدک، هنجار، fit و تفسیر استخدامی
   در سند قابل چاپ ظاهر نشوند. */
.taxi-desc-report-host{min-height:100vh;background:#eef1f1;padding:24px 18px 54px;color:#17313d;font-family:'Noto Sans Arabic','Vazirmatn','Tahoma',sans-serif}
.taxi-desc-report-bar{max-width:930px;margin:0 auto 14px;display:flex;justify-content:flex-start;gap:10px;direction:rtl}
.taxi-desc-button{appearance:none;border:1px solid #1f686e;border-radius:7px;padding:9px 14px;background:#226d72;color:#fff;font:700 13px inherit;cursor:pointer}
.taxi-desc-button:hover{background:#18595e}.taxi-desc-button--ghost{background:#fff;color:#17313d;border-color:#8ca0a5}.taxi-desc-button--ghost:hover{background:#f6f3eb}
.taxi-desc-report{max-width:930px;margin:0 auto;background:#fffdf8;border:1px solid #d8dedc;box-shadow:0 12px 35px rgba(20,47,60,.12);padding:clamp(24px,5vw,55px);direction:rtl;line-height:1.95}
.taxi-desc-report--message{max-width:620px;margin-top:55px}.taxi-desc-report--message h1{font-family:'Noto Naskh Arabic','Vazirmatn','Tahoma',serif;color:#15334c;font-size:30px;margin:0 0 12px}.taxi-desc-report--message p{color:#52666d;margin:0}
.taxi-desc-masthead{display:flex;justify-content:space-between;align-items:flex-start;gap:26px;padding-bottom:21px;border-bottom:4px solid #f4b942}
.taxi-desc-brand{display:flex;gap:13px;align-items:flex-start}.taxi-desc-mark{width:36px;height:36px;flex:none;border:2px solid #f4b942;border-radius:10px;background:linear-gradient(90deg,transparent 44%,#faf8f2 45% 55%,transparent 56%),#15334c;box-shadow:inset 0 0 0 4px #15334c}
.taxi-desc-brand p{font-size:12px;color:#226d72;font-weight:800;margin:0 0 2px}.taxi-desc-brand h1{font-family:'Noto Naskh Arabic','Vazirmatn','Tahoma',serif;color:#15334c;font-size:clamp(27px,4vw,38px);line-height:1.3;margin:0}
.taxi-desc-case{display:grid;justify-items:end;gap:3px;flex:none;text-align:left}.taxi-desc-case span{font-size:10px;color:#617176}.taxi-desc-case strong{font-family:ui-monospace,Consolas,monospace;font-size:14px;color:#15334c}.taxi-desc-case small{font-size:10px;color:#617176}
.taxi-desc-warning{margin:23px 0;padding:18px 20px;background:#fff5d8;border:1px solid #e3be60;border-inline-start:5px solid #b85552}.taxi-desc-warning strong{display:block;color:#8b403d;font-size:15px}.taxi-desc-warning p{color:#5e4a2d;font-size:13px;line-height:2.02;margin:5px 0 0}
.taxi-desc-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d8dedc;border:1px solid #d8dedc}.taxi-desc-summary-item{min-height:112px;padding:15px;background:#fffdf8}.taxi-desc-summary-item span{display:block;color:#617176;font-size:11px;margin-bottom:7px}.taxi-desc-summary-item strong{display:block;color:#15334c;font-size:13px;line-height:1.85;overflow-wrap:anywhere}
.taxi-desc-section{margin-top:31px}.taxi-desc-section h2,.taxi-desc-quality h2{font-family:'Noto Naskh Arabic','Vazirmatn','Tahoma',serif;color:#15334c;font-size:25px;margin:0 0 8px}.taxi-desc-lead{font-size:13px;color:#52666d;line-height:2;margin:0 0 15px}.taxi-desc-empty{padding:18px;background:#f3f5f3;color:#52666d;font-size:13px}
.taxi-desc-table-wrap{overflow:auto;border:1px solid #d8dedc}.taxi-desc-table{width:100%;border-collapse:collapse;min-width:610px;font-size:13px}.taxi-desc-table th{padding:11px 13px;text-align:right;background:#15334c;color:#faf8f2;font-size:12px;font-weight:800}.taxi-desc-table td{padding:11px 13px;border-top:1px solid #e2e6e3;color:#344d56}.taxi-desc-table tbody tr:nth-child(even){background:#f8f6ef}.taxi-desc-num{font-family:ui-monospace,Consolas,monospace;direction:ltr;unicode-bidi:isolate;font-weight:700;color:#15334c}
.taxi-desc-quality{margin-top:25px;padding:19px 20px;border:1px solid #cfd9d6;border-top:4px solid #226d72;background:#f7f8f5}.taxi-desc-quality p{font-size:13px;color:#445b63;margin:0 0 11px}.taxi-desc-quality ul{padding:0 18px 0 0;margin:0;color:#53676e;font-size:12.5px;line-height:2}.taxi-desc-quality li+li{margin-top:4px}
.taxi-desc-footer{margin-top:31px;padding-top:13px;border-top:1px solid #d8dedc;color:#687a7f;font-size:10.5px;line-height:1.85}.taxi-desc-footer p{margin:0}.taxi-desc-footer p+p{margin-top:3px}
@media(max-width:640px){.taxi-desc-report-host{padding:15px 10px 35px}.taxi-desc-report{padding:22px 17px}.taxi-desc-masthead{display:grid}.taxi-desc-case{justify-items:start;text-align:right}.taxi-desc-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.taxi-desc-table{min-width:530px}}
@media print{.taxi-desc-report-host{padding:0;background:#fff}.taxi-desc-report-bar{display:none!important}.taxi-desc-report{max-width:none;border:0;box-shadow:none;padding:11mm}.taxi-desc-warning{break-inside:avoid}.taxi-desc-summary,.taxi-desc-table-wrap,.taxi-desc-quality{break-inside:avoid}}
@page{size:A4 portrait;margin:0}
