Make a ppt or pics on ct nose and pns with detail with parts

Reading File
Reading File
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Reading File
Reading File
Reading File
Reading File
Reading File
Running Command

mkdir -p /home/daytona/workspace/ct-nose-pns && ls /home/daytona/workspace/ct-no…

Where is the file I asked u to made

Writing File

~/ct-nose-pns/make_ppt.js

const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");

// ── fetch images as base64 ──────────────────────────────────────────────────
const imageUrls = [
  "https://cdn.orris.care/cdss_images/7fef165dff6e0d50619d8df266ea25c202e9eb50dbf52fa2fd618e4f88de37e5.png", // nasal skeleton
  "https://cdn.orris.care/cdss_images/8ae5d84583f79566ae2df73211989e39185bbe731f47668acde5cfc7b22db321.png", // nasal septum
  "https://cdn.orris.care/cdss_images/03fd6e7916f788188cdaceba354720c53ea8ee572e5f6cc569ff6c8f8e782345.png", // lateral nasal wall turbinates
  "https://cdn.orris.care/cdss_images/a6bd0d9670d16108da493bd4a34b6d98ab77b8a8a65d50f1e89b2ed0e5fdf6c3.png", // sinuses diagram
  "https://cdn.orris.care/cdss_images/f7daab3d879969f1af3007893bfc152637674b7aaf1b2f423a42f77b43e7b75b.png", // normal PNS CT coronal/sagittal/axial
  "https://cdn.orris.care/cdss_images/675683b45c6cd6c3fae9910e79fce7244b75f63663ae3f22ee3e1d2f67a02a5d.png", // sinusitis CT axial/coronal
  "https://cdn.orris.care/cdss_images/5711030c692e59dac256b9748e424046a5b0870619a6ca2cf188a6879ea19b41.png", // paranasal surgical box
];

console.log("Fetching images...");
let images;
try {
  const result = execSync(
    `node /home/daytona/skills/shared/scripts/fetch_images.js ${imageUrls.map(u => `"${u}"`).join(" ")}`,
    { maxBuffer: 50 * 1024 * 1024 }
  ).toString();
  images = JSON.parse(result);
  console.log("Images fetched:", images.map((img, i) => `${i}: ${img.error ? "ERROR: " + img.error : "OK"}`));
} catch (e) {
  console.error("Image fetch error:", e.message);
  images = imageUrls.map(() => ({ base64: null, error: "fetch failed" }));
}

function img(index) {
  return images[index] && !images[index].error ? images[index].base64 : null;
}

// ── Color palette ──────────────────────────────────────────────────────────
const C = {
  darkBg:   "0D1B2A",  // deep navy
  midBg:    "1B2A3B",  // medium navy
  accent:   "00B4D8",  // cyan
  accent2:  "48CAE4",  // light cyan
  white:    "FFFFFF",
  offWhite: "E8F4F8",
  gold:     "F9C74F",
  soft:     "90E0EF",
  gray:     "B0C4D8",
  darkText: "0D1B2A",
};

// ── Presentation ───────────────────────────────────────────────────────────
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title  = "CT of Nose & Paranasal Sinuses";
pres.author = "Orris Medical";

// helper: add slide background
function bgSlide(color) {
  const s = pres.addSlide();
  s.background = { color };
  return s;
}

// helper: add a section header bar
function sectionBar(slide, text) {
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.55, fill: { color: C.accent }, line: { color: C.accent } });
  slide.addText(text, { x: 0.15, y: 0.05, w: 9.7, h: 0.45, fontSize: 14, bold: true, color: C.darkText, fontFace: "Calibri", margin: 0 });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 1 — TITLE
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  // gradient band
  s.addShape(pres.ShapeType.rect, { x: 0, y: 2.0, w: 10, h: 1.7, fill: { color: C.midBg }, line: { color: C.midBg } });
  s.addShape(pres.ShapeType.rect, { x: 0, y: 3.7, w: 10, h: 0.08, fill: { color: C.accent }, line: { color: C.accent } });

  s.addText("CT OF NOSE &", { x: 0.5, y: 0.5, w: 9, h: 0.8, fontSize: 38, bold: true, color: C.accent, fontFace: "Calibri", charSpacing: 4 });
  s.addText("PARANASAL SINUSES (PNS)", { x: 0.5, y: 1.25, w: 9, h: 0.8, fontSize: 30, bold: true, color: C.white, fontFace: "Calibri" });
  s.addText("Anatomy • CT Technique • Normal Findings • Variants • Pathology", {
    x: 0.5, y: 2.1, w: 9, h: 0.5, fontSize: 14, color: C.soft, fontFace: "Calibri", italic: true
  });
  s.addText("Orris Medical Education  |  Based on Scott-Brown's, Cummings ORL, Grainger & Allison's Radiology", {
    x: 0.5, y: 5.1, w: 9, h: 0.35, fontSize: 9, color: C.gray, fontFace: "Calibri"
  });
  if (img(0)) s.addImage({ data: img(0), x: 7.0, y: 0.3, w: 2.7, h: 2.0 });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 2 — TABLE OF CONTENTS
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "CONTENTS AT A GLANCE");
  s.addText("Topics Covered", { x: 0.4, y: 0.65, w: 9, h: 0.5, fontSize: 20, bold: true, color: C.accent, fontFace: "Calibri" });

  const topics = [
    ["1", "External Nose — Anatomy & Skeleton"],
    ["2", "Nasal Septum — Cartilaginous & Bony Parts"],
    ["3", "Lateral Nasal Wall — Turbinates & Meatuses"],
    ["4", "Paranasal Sinuses — Overview & Parts"],
    ["5", "Osteomeatal Complex (OMC)"],
    ["6", "CT Technique — Protocol, Windows, Planes"],
    ["7", "Normal CT Anatomy — Coronal, Axial, Sagittal"],
    ["8", "Anatomic Variants on CT"],
    ["9", "CT Pathology — Sinusitis, Polyps, Tumours"],
    ["10", "Surgical Box Concept & Clinical Relevance"],
  ];

  topics.forEach(([num, text], i) => {
    const col = i < 5 ? 0 : 1;
    const row = i < 5 ? i : i - 5;
    const x = col === 0 ? 0.4 : 5.2;
    const y = 1.3 + row * 0.72;
    s.addShape(pres.ShapeType.roundRect, { x, y, w: 0.38, h: 0.38, fill: { color: C.accent }, line: { color: C.accent }, rectRadius: 0.05 });
    s.addText(num, { x, y: y + 0.02, w: 0.38, h: 0.34, fontSize: 13, bold: true, color: C.darkText, align: "center", fontFace: "Calibri", margin: 0 });
    s.addText(text, { x: x + 0.45, y: y + 0.04, w: 4.3, h: 0.35, fontSize: 12, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 3 — EXTERNAL NOSE ANATOMY
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.midBg);
  sectionBar(s, "SECTION 1 — EXTERNAL NOSE: ANATOMY & SKELETON");
  s.addText("External Nose — Structural Parts", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  const points = [
    { h: "Bony Framework (Upper 1/3)", b: "Paired nasal bones + frontal processes of maxilla form the bony vault. Supported by the nasal process of the frontal bone superiorly." },
    { h: "Cartilaginous Framework (Lower 2/3)", b: "Upper lateral cartilages (ULC) fuse with the dorsal septum. Lower lateral cartilages (LLC/alar cartilages) form the nasal tip and alae. Sesamoid cartilages fill gaps laterally." },
    { h: "Key Surface Landmarks", b: "Root (nasion) → Dorsum → Tip (apex) → Alae → Columella → Soft tissue triangle. Glabella is the bony prominence between the orbits superior to the nose." },
    { h: "Clinical Relevance on CT", b: "CT clearly shows nasal bone fractures, septal deviation, ossification of cartilages, and relationship to the orbit and anterior cranial fossa." },
  ];

  points.forEach((p, i) => {
    const y = 1.25 + i * 1.0;
    s.addShape(pres.ShapeType.rect, { x: 0.3, y: y, w: 0.06, h: 0.32, fill: { color: C.gold }, line: { color: C.gold } });
    s.addText(p.h, { x: 0.45, y: y, w: 6.0, h: 0.32, fontSize: 12, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    s.addText(p.b, { x: 0.45, y: y + 0.33, w: 6.5, h: 0.55, fontSize: 10.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });

  if (img(0)) s.addImage({ data: img(0), x: 7.1, y: 0.65, w: 2.65, h: 4.5 });
  s.addText("Fig: Nasal skeleton (Bailey & Love's)", { x: 7.1, y: 5.15, w: 2.65, h: 0.25, fontSize: 8, color: C.gray, fontFace: "Calibri", italic: true });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 4 — NASAL SEPTUM
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "SECTION 2 — NASAL SEPTUM");
  s.addText("Nasal Septum — Components", { x: 0.4, y: 0.65, w: 6.5, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  // table of components
  const rows = [
    [{ text: "Component", options: { bold: true, color: C.darkText } }, { text: "Location / Description", options: { bold: true, color: C.darkText } }],
    [{ text: "Quadrilateral cartilage", options: {} }, { text: "Anterior portion — forms the mobile cartilaginous septum. Articulates with the ULCs superiorly.", options: {} }],
    [{ text: "Perpendicular plate of ethmoid", options: {} }, { text: "Posterosuperior bony portion descending from the cribriform plate.", options: {} }],
    [{ text: "Vomer", options: {} }, { text: "Posteroinferior bony portion. Articulates with the palatine bone, maxilla and sphenoid.", options: {} }],
    [{ text: "Nasal crest of maxilla & palatine", options: {} }, { text: "Forms the floor of the nasal cavity.", options: {} }],
  ];

  s.addTable(rows, {
    x: 0.35, y: 1.25, w: 6.2, h: 3.5,
    fontSize: 11, fontFace: "Calibri",
    border: { pt: 0.5, color: C.accent },
    color: C.offWhite,
    fill: C.midBg,
    rowH: 0.62,
    colW: [2.2, 4.0],
    align: "left", valign: "middle",
  });

  s.addText([
    { text: "CT Tip: ", options: { bold: true, color: C.gold } },
    { text: "On coronal CT, the septum appears as a midline bony/cartilaginous partition. Septal deviation is graded by degree of deviation toward one nasal fossa. Spurs at the cartilage-bone junction are common and often cause obstruction.", options: { color: C.offWhite } }
  ], { x: 0.35, y: 4.85, w: 6.2, h: 0.6, fontSize: 10.5, fontFace: "Calibri" });

  if (img(1)) s.addImage({ data: img(1), x: 6.8, y: 0.65, w: 3.0, h: 4.0 });
  s.addText("Fig: Left nasal septum (Bailey & Love's)", { x: 6.8, y: 4.65, w: 3.0, h: 0.25, fontSize: 8, color: C.gray, fontFace: "Calibri", italic: true });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 5 — LATERAL NASAL WALL & TURBINATES
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.midBg);
  sectionBar(s, "SECTION 3 — LATERAL NASAL WALL: TURBINATES & MEATUSES");
  s.addText("Turbinates (Conchae) & Meatuses", { x: 0.4, y: 0.65, w: 6.3, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  const bullets = [
    { h: "Inferior Turbinate (Concha)", b: "Largest; an independent bone. Overlies the inferior meatus which receives the nasolacrimal duct." },
    { h: "Middle Turbinate", b: "Part of ethmoid bone. Most important surgical landmark. Overlies the middle meatus — the key drainage pathway for frontal, maxillary and anterior ethmoid sinuses via the osteomeatal complex." },
    { h: "Superior Turbinate", b: "Smallest; also part of ethmoid. Overlies the superior meatus — receives posterior ethmoid sinus drainage." },
    { h: "Supreme (4th) Turbinate", b: "Present in ~60% as a remnant; overlies the sphenoethmoidal recess." },
    { h: "Sphenoethmoidal Recess", b: "Between superior turbinate and nasal septum posterosuperiorly — drains the sphenoid sinus." },
    { h: "CT Significance", b: "Paradoxical middle turbinate curvature, concha bullosa (pneumatized middle turbinate) are common variants visible on CT that can obstruct the OMC." },
  ];

  bullets.forEach((b, i) => {
    const y = 1.22 + i * 0.68;
    s.addShape(pres.ShapeType.rect, { x: 0.3, y: y + 0.05, w: 0.06, h: 0.25, fill: { color: C.accent2 }, line: { color: C.accent2 } });
    s.addText(b.h + ": ", { x: 0.45, y: y + 0.03, w: 5.9, h: 0.28, fontSize: 11.5, bold: true, color: C.accent2, fontFace: "Calibri", margin: 0 });
    s.addText(b.b, { x: 0.45, y: y + 0.31, w: 5.9, h: 0.33, fontSize: 10, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });

  if (img(2)) s.addImage({ data: img(2), x: 6.8, y: 0.65, w: 3.0, h: 4.5 });
  s.addText("Fig: Right lateral nasal wall with turbinates (Bailey & Love's)", { x: 6.8, y: 5.15, w: 3.0, h: 0.3, fontSize: 8, color: C.gray, fontFace: "Calibri", italic: true });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 6 — PARANASAL SINUSES OVERVIEW
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "SECTION 4 — PARANASAL SINUSES: OVERVIEW");
  s.addText("Four Paired Paranasal Sinuses", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  const sinuses = [
    { name: "Maxillary Sinus\n(Antrum of Highmore)", details: ["Largest PNS; pyramidal shape", "Floor = alveolar process (root of 2nd premolar / 1st molar nearby)", "Roof = orbital floor; medial wall = lateral nasal wall", "Ostium opens into middle meatus via infundibulum", "On CT: best seen on coronal + axial cuts"] },
    { name: "Frontal Sinus", details: ["Paired but often asymmetric; absent in ~5%", "Drains via nasofrontal duct into frontal recess → middle meatus", "CT in coronal + sagittal planes shows frontal drainage pathway clearly", "Intersinus septum often deviated"] },
    { name: "Ethmoid Sinuses", details: ["Labyrinth of 3–18 air cells per side (avg ~9)", "Anterior ethmoid → middle meatus; posterior → superior meatus", "Lamina papyracea (medial orbital wall) is its lateral boundary", "Key cells: agger nasi, ethmoid bulla, Haller cells (infraorbital)"] },
    { name: "Sphenoid Sinus", details: ["Posterior-most and deepest sinus", "Drains via ostium into sphenoethmoidal recess", "Adjacent to optic nerve, ICA, cavernous sinus, pituitary fossa", "On CT: vital to assess pre-FESS (optic canal, ICA dehiscence)"] },
  ];

  sinuses.forEach((sn, i) => {
    const col = i % 2;
    const row = Math.floor(i / 2);
    const x = col === 0 ? 0.3 : 5.15;
    const y = 1.25 + row * 2.05;
    s.addShape(pres.ShapeType.roundRect, { x, y, w: 4.6, h: 1.9, fill: { color: C.midBg }, line: { color: C.accent, pt: 1 }, rectRadius: 0.08 });
    s.addText(sn.name, { x: x + 0.15, y: y + 0.1, w: 4.3, h: 0.45, fontSize: 12, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    sn.details.forEach((d, di) => {
      s.addText("• " + d, { x: x + 0.15, y: y + 0.55 + di * 0.26, w: 4.3, h: 0.26, fontSize: 9.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
    });
  });

  if (img(3)) s.addImage({ data: img(3), x: 3.5, y: 5.1, w: 3.0, h: 0.45 });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 7 — OSTEOMEATAL COMPLEX (OMC)
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.midBg);
  sectionBar(s, "SECTION 5 — OSTEOMEATAL COMPLEX (OMC)");
  s.addText("The Osteomeatal Complex", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  s.addText("The OMC is the key functional unit of anterior sinus drainage. It is a region, not a single structure. Disease here produces the 'anterior sinus triad' (maxillary + frontal + anterior ethmoid sinusitis).", {
    x: 0.4, y: 1.2, w: 9.2, h: 0.6, fontSize: 11.5, color: C.offWhite, fontFace: "Calibri", italic: true
  });

  const omcParts = [
    ["Uncinate Process", "Thin curved bony plate of ethmoid. Swings medially/laterally — determines whether frontal sinus drains medial or lateral to it. Key structure in FESS (uncinectomy is step 1)."],
    ["Ethmoid Bulla", "Largest, most constant anterior ethmoid cell. Lies directly superior to the infundibulum. Can obstruct drainage if hypertrophied."],
    ["Infundibulum", "Funnel-shaped space between uncinate process and lamina papyracea. Receives maxillary sinus ostium and anterior ethmoid drainage."],
    ["Hiatus Semilunaris", "Crescent-shaped gap between uncinate process and ethmoid bulla. Opens into the middle meatus."],
    ["Middle Meatus", "The main drainage corridor (frontal, maxillary, anterior ethmoid sinuses all drain here)."],
    ["Frontal Recess", "Narrow channel connecting frontal sinus to middle meatus. Most vulnerable area for obstruction by agger nasi cells or a high ethmoid bulla."],
  ];

  omcParts.forEach((part, i) => {
    const y = 1.85 + i * 0.62;
    s.addShape(pres.ShapeType.rect, { x: 0.3, y: y + 0.06, w: 0.06, h: 0.22, fill: { color: C.gold }, line: { color: C.gold } });
    s.addText(part[0], { x: 0.44, y: y + 0.04, w: 2.3, h: 0.26, fontSize: 11, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    s.addText(part[1], { x: 2.75, y: y + 0.04, w: 6.9, h: 0.5, fontSize: 10, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 8 — CT TECHNIQUE
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "SECTION 6 — CT TECHNIQUE: PROTOCOL & WINDOWS");
  s.addText("CT Nose & PNS — Standard Protocol", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  const cols = [
    {
      title: "Acquisition",
      items: [
        "Patient: Supine, gantry parallel to hard palate",
        "Slice thickness: 0.6–1 mm (axial acquisition)",
        "Field of view: Nose tip → posterior clinoid",
        "Low-dose multidetector CT (MDCT) preferred",
        "No IV contrast for routine sinusitis",
        "IV contrast if orbital/intracranial complication suspected",
        "Screening protocol: 5 mm cuts at 10 mm intervals",
      ]
    },
    {
      title: "Reconstruction Planes",
      items: [
        "AXIAL: Base plane — overview of sinuses & orbits",
        "CORONAL: Correlates best with endoscopic view; best for OMC",
        "SAGITTAL: Best for frontal sinus drainage pathway",
        "All three planes reconstructed from single axial acquisition",
        "Reconstruction ≤ 3 mm thickness in each plane",
      ]
    },
    {
      title: "Window Settings",
      items: [
        "BONE window: W 1500–2000 / L 300 HU",
        "SOFT TISSUE window: W 450 / L 50 HU",
        "Bone windows: essential for OMC & bony anatomy detail",
        "Soft tissue windows: mucosal thickening, polyps, complications",
        "Fungal disease: soft tissue windows show calcification / double density",
      ]
    }
  ];

  cols.forEach((col, ci) => {
    const x = 0.3 + ci * 3.23;
    s.addShape(pres.ShapeType.roundRect, { x, y: 1.25, w: 3.1, h: 4.15, fill: { color: C.midBg }, line: { color: C.accent, pt: 1 }, rectRadius: 0.08 });
    s.addText(col.title, { x: x + 0.1, y: 1.32, w: 2.9, h: 0.38, fontSize: 12, bold: true, color: C.gold, fontFace: "Calibri", align: "center", margin: 0 });
    col.items.forEach((item, ii) => {
      s.addText("• " + item, { x: x + 0.1, y: 1.75 + ii * 0.52, w: 2.9, h: 0.48, fontSize: 9.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
    });
  });

  s.addText("Source: Scott-Brown's ORL, Cummings ORL (8th ed), Grainger & Allison's Diagnostic Radiology", {
    x: 0.4, y: 5.3, w: 9.2, h: 0.25, fontSize: 8.5, color: C.gray, fontFace: "Calibri", italic: true
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 9 — NORMAL CT PNS (with textbook image)
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.midBg);
  sectionBar(s, "SECTION 7 — NORMAL CT ANATOMY OF THE PARANASAL SINUSES");
  s.addText("Normal PNS CT — Coronal, Sagittal & Axial Views", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 17, bold: true, color: C.accent, fontFace: "Calibri" });

  if (img(4)) {
    s.addImage({ data: img(4), x: 0.3, y: 1.2, w: 5.5, h: 3.8 });
    s.addText("Fig 61.33: Normal PNS CT — (A) Coronal: red arrows = mucociliary flow in left antrum pointing to infundibulum (green stars); blue = middle meatus; EB = ethmoid bulla. (B) Sagittal: F = frontal sinus; AE/PE = anterior/posterior ethmoid; S = sphenoid; MT = middle turbinate; IT = inferior turbinate; white line = basal lamella. (C) Axial: S = sphenoid; PE = posterior ethmoid; white arrow = sphenoid ostium; dashed line = sphenoethmoidal recess. [Grainger & Allison's]", {
      x: 0.3, y: 5.02, w: 5.5, h: 0.5, fontSize: 7.5, color: C.gray, fontFace: "Calibri", italic: true
    });
  }

  const labels = [
    { h: "Coronal View", b: "Best shows the OMC, uncinate process, ethmoid bulla, maxillary infundibulum, and middle turbinate. Mucociliary flow visible as soft tissue lining pointing toward the ostium." },
    { h: "Sagittal View", b: "Best for frontal sinus drainage pathway, basal lamella (divides anterior from posterior ethmoid), and relationship of frontal recess to agger nasi cells." },
    { h: "Axial View", b: "Best for sphenoid sinus, sphenoethmoidal recess, optic canals, posterior ethmoid air cells, pterygopalatine fossa, and posterior wall of maxillary sinus." },
    { h: "Basal Lamella", b: "Key CT landmark on sagittal view — the lateral insertion of the middle turbinate. Divides ethmoid sinuses into anterior (drain to middle meatus) and posterior (drain to superior meatus) groups." },
  ];

  labels.forEach((l, i) => {
    const y = 1.2 + i * 0.97;
    s.addShape(pres.ShapeType.rect, { x: 6.0, y: y + 0.03, w: 0.06, h: 0.28, fill: { color: C.accent2 }, line: { color: C.accent2 } });
    s.addText(l.h, { x: 6.15, y: y, w: 3.55, h: 0.32, fontSize: 12, bold: true, color: C.accent2, fontFace: "Calibri", margin: 0 });
    s.addText(l.b, { x: 6.15, y: y + 0.33, w: 3.55, h: 0.58, fontSize: 9.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 10 — ANATOMIC VARIANTS ON CT
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "SECTION 8 — ANATOMIC VARIANTS ON CT");
  s.addText("Common CT Anatomic Variants", { x: 0.4, y: 0.65, w: 9.2, h: 0.45, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });
  s.addText("Must be identified pre-operatively — they can obstruct drainage and cause surgical complications", {
    x: 0.4, y: 1.1, w: 9.2, h: 0.35, fontSize: 11, color: C.soft, fontFace: "Calibri", italic: true
  });

  const variants = [
    ["Concha Bullosa", "Pneumatization of the middle turbinate. Most common variant. Can narrow the middle meatus and obstruct OMC. Seen as an air-containing turbinate on coronal CT."],
    ["Agger Nasi Cells", "Most anterior ethmoid air cells, anterior to the frontal recess. When large, they can obstruct frontal sinus drainage. Seen on sagittal CT just anterior to the middle turbinate insertion."],
    ["Haller Cells (Infraorbital Cells)", "Ethmoid air cells that extend along the floor of the orbit / roof of maxillary sinus. Can narrow or obstruct the maxillary infundibulum. Identified on coronal CT."],
    ["Onodi Cells (Sphenoethmoidal Cells)", "Posterior ethmoid cells that extend lateral and superior to the sphenoid sinus. The optic nerve may run through or adjacent to them — critical surgical hazard."],
    ["Deviated Nasal Septum (DNS)", "Graded by degree. Spurs at the bony-cartilaginous junction are common. May contact the turbinate causing obstruction. Assess on coronal & axial CT."],
    ["Paradoxical Middle Turbinate", "Middle turbinate curves laterally (instead of medially). Narrows the middle meatus. Seen on coronal CT."],
    ["Dehiscent Lamina Papyracea", "Thinning or absence of the medial orbital wall. Orbital fat may herniate into the ethmoid. Risk of orbital injury during FESS."],
    ["Asymmetric Cribriform Plate (Keros Type III)", "Deep lateral lamella of the cribriform plate (>5 mm, Keros III). Significantly increases risk of CSF leak during FESS."],
  ];

  variants.forEach((v, i) => {
    const col = i % 2;
    const row = Math.floor(i / 2);
    const x = col === 0 ? 0.3 : 5.1;
    const y = 1.5 + row * 0.97;
    s.addShape(pres.ShapeType.roundRect, { x, y, w: 4.6, h: 0.9, fill: { color: C.midBg }, line: { color: C.accent, pt: 0.5 }, rectRadius: 0.06 });
    s.addText(v[0], { x: x + 0.12, y: y + 0.06, w: 4.36, h: 0.28, fontSize: 11, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    s.addText(v[1], { x: x + 0.12, y: y + 0.34, w: 4.36, h: 0.5, fontSize: 9.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 11 — CT PATHOLOGY: SINUSITIS
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.midBg);
  sectionBar(s, "SECTION 9 — CT PATHOLOGY: RHINOSINUSITIS");
  s.addText("CT Findings in Rhinosinusitis", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 18, bold: true, color: C.accent, fontFace: "Calibri" });

  if (img(5)) {
    s.addImage({ data: img(5), x: 0.3, y: 1.2, w: 5.2, h: 3.6 });
    s.addText("Fig 8.13: CT in sinusitis — (A) Axial screening NCCT: right maxillary sinus opacification vs. normal left. (B) Coronal NCCT pre-FESS: mucosal thickening, right maxillary + ethmoid opacification, left infundibular disease. (C) Axial CECT soft tissue windows: rim-enhancing mucosa, bony sclerosis in chronic sinusitis. [Cummings ORL]", {
      x: 0.3, y: 4.82, w: 5.2, h: 0.55, fontSize: 7.5, color: C.gray, fontFace: "Calibri", italic: true
    });
  }

  const findings = [
    { h: "Acute Sinusitis", b: "Air-fluid level, mucosal thickening >3–4 mm, sinus opacification. Soft tissue windows distinguish fluid from mucosal thickening." },
    { h: "Chronic Sinusitis", b: "Mucosal thickening + bony sclerosis / thickening of sinus walls. Posterior wall thickening of maxillary sinus on axial CT is classic." },
    { h: "Nasal Polyposis", b: "Bilateral expansile soft tissue masses in nasal cavity. 'Cascading' appearance on contrast CT. Widens infundibulum. May remodel bone." },
    { h: "Fungal Sinusitis", b: "Hyperdense material (fungal concretions) on bone windows. Double density sign on soft tissue windows. Often unilateral maxillary sinus. May have bony erosion (invasive form)." },
    { h: "Complications", b: "Orbital cellulitis, subperiosteal abscess, intracranial extension (empyema, meningitis). Contrast CT + MRI essential." },
  ];

  findings.forEach((f, i) => {
    const y = 1.2 + i * 0.82;
    s.addShape(pres.ShapeType.rect, { x: 5.7, y: y + 0.03, w: 0.06, h: 0.26, fill: { color: C.gold }, line: { color: C.gold } });
    s.addText(f.h, { x: 5.85, y: y, w: 3.85, h: 0.3, fontSize: 11.5, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    s.addText(f.b, { x: 5.85, y: y + 0.31, w: 3.85, h: 0.45, fontSize: 10, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 12 — SURGICAL BOX & CLINICAL RELEVANCE
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  sectionBar(s, "SECTION 10 — PARANASAL SURGICAL BOX & CLINICAL RELEVANCE");
  s.addText("The Paranasal Surgical Box (FESS Planning)", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 17, bold: true, color: C.accent, fontFace: "Calibri" });

  s.addText("CT is mandatory before FESS. The paranasal surgical box concept provides a framework of fixed landmarks to guide safe endoscopic dissection.", {
    x: 0.4, y: 1.18, w: 6.0, h: 0.5, fontSize: 11, color: C.offWhite, fontFace: "Calibri", italic: true
  });

  const boxes = [
    { title: "HORIZONTAL BOX", color: C.accent, items: ["Medial: Middle turbinate", "Lateral: Lamina papyracea (medial orbital wall)", "Inferior: Floor of nose", "Superior: Skull base (cribriform plate)"] },
    { title: "VERTICAL BOX", color: C.gold, items: ["Medial: Middle turbinate + intersinus septum", "Lateral: Lamina papyracea", "Anterior: Nasofrontal beak", "Posterior: Skull base"] },
  ];

  boxes.forEach((b, i) => {
    const x = 0.35 + i * 3.0;
    s.addShape(pres.ShapeType.roundRect, { x, y: 1.75, w: 2.75, h: 2.6, fill: { color: C.midBg }, line: { color: b.color, pt: 1.5 }, rectRadius: 0.08 });
    s.addText(b.title, { x: x + 0.1, y: 1.82, w: 2.55, h: 0.38, fontSize: 12, bold: true, color: b.color, fontFace: "Calibri", align: "center", margin: 0 });
    b.items.forEach((item, ii) => {
      s.addText("• " + item, { x: x + 0.12, y: 2.25 + ii * 0.49, w: 2.51, h: 0.46, fontSize: 10, color: C.offWhite, fontFace: "Calibri", margin: 0 });
    });
  });

  const keyPoints = [
    "1. Identify orbital floor (maxillary sinus roof) FIRST — establishes safe working distance from skull base",
    "2. Skull base is identified posteriorly by the sphenoid sinus ostium / face of sphenoid",
    "3. Lamina papyracea separates ethmoid from orbit — dehiscence = risk of orbital injury",
    "4. Pre-op CT must be reviewed for: Keros type, Onodi cells, optic nerve course, carotid canal dehiscence",
    "5. PACS window manipulation is essential — switch between bone and soft-tissue windows",
  ];

  keyPoints.forEach((kp, i) => {
    s.addText(kp, { x: 6.4, y: 1.75 + i * 0.72, w: 3.3, h: 0.65, fontSize: 10, color: C.offWhite, fontFace: "Calibri", margin: 8 });
    s.addShape(pres.ShapeType.roundRect, { x: 6.4, y: 1.75 + i * 0.72, w: 3.3, h: 0.65, fill: { color: "00000000" }, line: { color: C.accent, pt: 0.5 }, rectRadius: 0.05 });
  });

  if (img(6)) s.addImage({ data: img(6), x: 0.35, y: 4.42, w: 5.5, h: 1.0 });
  s.addText("Fig: Paranasal surgical box schematic — horizontal & vertical components [Scott-Brown's ORL]", {
    x: 0.35, y: 5.42, w: 5.5, h: 0.22, fontSize: 7.5, color: C.gray, fontFace: "Calibri", italic: true
  });
}

// ════════════════════════════════════════════════════════════════════════════
// SLIDE 13 — SUMMARY / KEY TAKE-AWAYS
// ════════════════════════════════════════════════════════════════════════════
{
  const s = bgSlide(C.darkBg);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.darkBg }, line: { color: C.darkBg } });
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.55, fill: { color: C.accent }, line: { color: C.accent } });
  s.addText("KEY TAKE-AWAYS — CT NOSE & PNS", { x: 0.15, y: 0.07, w: 9.7, h: 0.42, fontSize: 14, bold: true, color: C.darkText, fontFace: "Calibri", margin: 0 });

  s.addText("Summary", { x: 0.4, y: 0.65, w: 9.2, h: 0.5, fontSize: 20, bold: true, color: C.accent, fontFace: "Calibri" });

  const takeaways = [
    ["CT is first-line imaging for PNS disease", "NCCT with bone algorithm; coronal + axial + sagittal reconstructions. Low-dose MDCT is standard."],
    ["OMC is the master key", "All anterior sinus pathology stems from OMC obstruction. Coronal CT is the ideal plane to assess it."],
    ["Know your variants", "Concha bullosa, agger nasi, Haller cells, Onodi cells, Keros III — all affect FESS planning and complication risk."],
    ["4 sinuses — 4 drainage pathways", "Maxillary + frontal + anterior ethmoid → middle meatus (via OMC); posterior ethmoid → superior meatus; sphenoid → sphenoethmoidal recess."],
    ["Surgical box concept", "Three fixed landmarks: maxillary sinus roof (orbital floor), lamina papyracea (medial orbital wall), skull base (posterior = sphenoid). Never dissect beyond these."],
    ["Pathology pattern recognition", "Air-fluid level = acute; mucosal thickening + bony sclerosis = chronic; hyperdense material = fungal; expansile bilateral masses = polyposis."],
  ];

  takeaways.forEach((t, i) => {
    const y = 1.22 + i * 0.72;
    s.addShape(pres.ShapeType.roundRect, { x: 0.3, y, w: 9.4, h: 0.65, fill: { color: C.midBg }, line: { color: C.accent, pt: 0.5 }, rectRadius: 0.05 });
    s.addText(t[0] + " — ", { x: 0.45, y: y + 0.18, w: 3.2, h: 0.3, fontSize: 11, bold: true, color: C.gold, fontFace: "Calibri", margin: 0 });
    s.addText(t[1], { x: 3.65, y: y + 0.18, w: 5.85, h: 0.3, fontSize: 10.5, color: C.offWhite, fontFace: "Calibri", margin: 0 });
  });

  s.addText("Sources: Scott-Brown's ORL Vol 1 (9th ed) • Cummings ORL Head & Neck Surgery (8th ed) • Grainger & Allison's Diagnostic Radiology • Bailey & Love's Surgery (28th ed)", {
    x: 0.4, y: 5.38, w: 9.2, h: 0.22, fontSize: 8, color: C.gray, fontFace: "Calibri", italic: true
  });
}

// ── Write file ─────────────────────────────────────────────────────────────
const outPath = "/home/daytona/workspace/ct-nose-pns/CT_Nose_PNS.pptx";
pres.writeFile({ fileName: outPath })
  .then(() => console.log("SUCCESS:", outPath))
  .catch(e => console.error("WRITE ERROR:", e));
Running Command

cd /home/daytona/workspace/ct-nose-pns && node make_ppt.js 2>&1

Running Command

cd /home/daytona/workspace/ct-nose-pns && timeout 60 node /home/daytona/skills/s…

Running Command

node -e "const d=require('/home/daytona/workspace/ct-nose-pns/images.json'); d.f…

When will the ppt be ready it’s already 30 mins

Writing File

~/ct-nose-pns/build_ppt.js

const pptxgen = require("pptxgenjs");
const fs = require("fs");

// Load pre-fetched images
const images = JSON.parse(fs.readFileSync("/home/daytona/workspace/ct-nose-pns/images.json"));
function img(i) { return images[i] && !images[i].error ? images[i].base64 : null; }

const C = {
  darkBg: "0D1B2A", midBg: "1B2A3B", accent: "00B4D8", accent2: "48CAE4",
  white: "FFFFFF", offWhite: "E8F4F8", gold: "F9C74F", soft: "90E0EF",
  gray: "B0C4D8", darkText: "0D1B2A",
};

const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "CT of Nose & Paranasal Sinuses";

function bgSlide(color) { const s = pres.addSlide(); s.background = { color }; return s; }
function topBar(slide, text) {
  slide.addShape(pres.ShapeType.rect, { x:0, y:0, w:10, h:0.55, fill:{color:C.accent}, line:{color:C.accent} });
  slide.addText(text, { x:0.15, y:0.06, w:9.7, h:0.43, fontSize:13, bold:true, color:C.darkText, fontFace:"Calibri", margin:0 });
}

// ── SLIDE 1: TITLE ────────────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  s.addShape(pres.ShapeType.rect, { x:0, y:1.9, w:10, h:1.8, fill:{color:C.midBg}, line:{color:C.midBg} });
  s.addShape(pres.ShapeType.rect, { x:0, y:3.68, w:10, h:0.07, fill:{color:C.accent}, line:{color:C.accent} });
  s.addText("CT OF NOSE &", { x:0.5, y:0.4, w:8.5, h:0.85, fontSize:40, bold:true, color:C.accent, fontFace:"Calibri", charSpacing:3 });
  s.addText("PARANASAL SINUSES (PNS)", { x:0.5, y:1.2, w:8.5, h:0.75, fontSize:28, bold:true, color:C.white, fontFace:"Calibri" });
  s.addText("Anatomy  •  CT Technique  •  Normal Findings  •  Variants  •  Pathology", {
    x:0.5, y:2.05, w:8.5, h:0.45, fontSize:13, color:C.soft, fontFace:"Calibri", italic:true });
  s.addText("Orris Medical Education  |  Sources: Scott-Brown's ORL • Cummings ORL • Grainger & Allison's Radiology • Bailey & Love's Surgery", {
    x:0.5, y:5.2, w:9, h:0.28, fontSize:8.5, color:C.gray, fontFace:"Calibri" });
  if (img(0)) s.addImage({ data:img(0), x:7.1, y:0.3, w:2.6, h:2.0 });
}

// ── SLIDE 2: CONTENTS ────────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "CONTENTS");
  s.addText("Topics Covered", { x:0.4, y:0.65, w:9, h:0.45, fontSize:20, bold:true, color:C.accent, fontFace:"Calibri" });
  const topics = [
    "1.  External Nose — Anatomy & Skeleton",
    "2.  Nasal Septum — Parts & CT Appearance",
    "3.  Lateral Nasal Wall — Turbinates & Meatuses",
    "4.  Paranasal Sinuses — All Four Pairs",
    "5.  Osteomeatal Complex (OMC)",
    "6.  CT Protocol — Technique & Windows",
    "7.  Normal CT Anatomy — Coronal, Axial, Sagittal",
    "8.  Anatomic Variants on CT",
    "9.  CT Pathology — Sinusitis, Polyps, Tumours",
    "10. Paranasal Surgical Box & FESS Planning",
  ];
  topics.forEach((t, i) => {
    const col = i < 5 ? 0 : 1;
    const row = i < 5 ? i : i - 5;
    s.addText(t, { x: col===0 ? 0.5 : 5.2, y: 1.25 + row*0.78, w:4.5, h:0.65,
      fontSize:12.5, color:C.offWhite, fontFace:"Calibri",
      fill:{color:C.midBg}, line:{color:C.accent, pt:0.5}, margin:8, rectRadius:0.06 });
  });
}

// ── SLIDE 3: EXTERNAL NOSE ───────────────────────────────────────────────
{
  const s = bgSlide(C.midBg);
  topBar(s, "SECTION 1 — EXTERNAL NOSE: ANATOMY & SKELETON");
  s.addText("External Nose — Structural Parts", { x:0.4, y:0.65, w:6.3, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const pts = [
    ["Bony Framework (Upper 1/3)", "Paired nasal bones + frontal processes of maxilla form the bony vault. The nasal bones articulate superiorly with the nasal spine of the frontal bone (nasion = root of nose). Glabella is the smooth prominence between the orbits."],
    ["Cartilaginous Framework (Lower 2/3)", "Upper lateral cartilages (ULC) are fused to the caudal dorsal septum forming the middle vault. Lower lateral cartilages (LLC / alar cartilages) define the nasal tip, dome, and alar rims. Sesamoid cartilages fill the lateral gaps."],
    ["Key Surface Landmarks", "Root (nasion) → Dorsum → Tip / Apex → Alar lobules → Columella → Soft-tissue triangles. The limen nasi is the internal threshold between the vestibule and the nasal cavity proper."],
    ["CT Relevance", "CT shows nasal bone fractures, cartilage calcification, dorsal deformities and their relationship to the orbit and anterior cranial fossa. Axial cuts best show fracture displacement; coronal cuts show comminution."],
  ];
  pts.forEach(([h, b], i) => {
    const y = 1.2 + i * 1.02;
    s.addShape(pres.ShapeType.rect, { x:0.3, y:y+0.05, w:0.06, h:0.27, fill:{color:C.gold}, line:{color:C.gold} });
    s.addText(h, { x:0.45, y:y+0.02, w:6.0, h:0.3, fontSize:12, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:0.45, y:y+0.33, w:6.2, h:0.62, fontSize:10, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
  if (img(0)) s.addImage({ data:img(0), x:6.9, y:0.65, w:2.85, h:4.55 });
  s.addText("Fig: Nasal skeleton\n(Bailey & Love's)", { x:6.9, y:5.2, w:2.85, h:0.3, fontSize:8, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── SLIDE 4: NASAL SEPTUM ────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "SECTION 2 — NASAL SEPTUM");
  s.addText("Nasal Septum — Components & CT", { x:0.4, y:0.65, w:6.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const rows = [
    [{ text:"Component", options:{bold:true,color:C.darkBg} }, { text:"Description", options:{bold:true,color:C.darkBg} }],
    [{ text:"Quadrilateral cartilage", options:{color:C.offWhite} }, { text:"Anterior mobile septum. Fuses with ULCs superiorly. Key in rhinoplasty.", options:{color:C.offWhite} }],
    [{ text:"Perpendicular plate of ethmoid", options:{color:C.offWhite} }, { text:"Posterosuperior bony plate descending from the cribriform plate.", options:{color:C.offWhite} }],
    [{ text:"Vomer", options:{color:C.offWhite} }, { text:"Posteroinferior bone; articulates with maxilla, palatine bone & sphenoid.", options:{color:C.offWhite} }],
    [{ text:"Nasal crest (maxilla + palatine)", options:{color:C.offWhite} }, { text:"Forms the bony floor of the nasal cavity.", options:{color:C.offWhite} }],
  ];
  s.addTable(rows, { x:0.35, y:1.22, w:6.1, h:3.0, fontSize:11, fontFace:"Calibri",
    border:{pt:0.5,color:C.accent}, fill:C.midBg, rowH:0.55, colW:[2.4,3.7], align:"left", valign:"middle" });
  s.addText([
    { text:"CT Tip: ", options:{bold:true,color:C.gold} },
    { text:"Coronal CT shows the septum as a midline partition. Septal deviation is common — note contact with turbinate. Spurs at the cartilage-bone junction often cause unilateral obstruction. Perforation appears as a gap on axial CT.", options:{color:C.offWhite} }
  ], { x:0.35, y:4.3, w:6.1, h:0.75, fontSize:10.5, fontFace:"Calibri" });
  if (img(1)) s.addImage({ data:img(1), x:6.75, y:0.65, w:3.0, h:4.1 });
  s.addText("Fig: Left nasal septum\n(Bailey & Love's)", { x:6.75, y:4.75, w:3.0, h:0.3, fontSize:8, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── SLIDE 5: TURBINATES ──────────────────────────────────────────────────
{
  const s = bgSlide(C.midBg);
  topBar(s, "SECTION 3 — LATERAL NASAL WALL: TURBINATES & MEATUSES");
  s.addText("Turbinates (Conchae) & Their Meatuses", { x:0.4, y:0.65, w:6.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const pts = [
    ["Inferior Turbinate", "Separate bone (not ethmoid). Largest turbinate. Overlies inferior meatus → receives nasolacrimal duct. Main site of nasal airflow warming & humidification."],
    ["Middle Turbinate", "Part of ethmoid bone. Most important surgical landmark in FESS. Overlies middle meatus which receives frontal, maxillary, and anterior ethmoid drainage via the OMC."],
    ["Superior Turbinate", "Smallest; part of ethmoid. Overlies superior meatus → drains posterior ethmoid sinuses."],
    ["Supreme Turbinate", "Present in ~60%; rudimentary. Overlies the sphenoethmoidal recess."],
    ["Sphenoethmoidal Recess", "Between superior turbinate and septum, posterosuperiorly. Drains the sphenoid sinus."],
    ["CT Variants", "Concha bullosa = pneumatized middle turbinate (most common variant). Paradoxical turbinate = curves laterally, narrows middle meatus. Both seen on coronal CT."],
  ];
  pts.forEach(([h, b], i) => {
    const y = 1.2 + i * 0.7;
    s.addShape(pres.ShapeType.rect, { x:0.3, y:y+0.06, w:0.06, h:0.22, fill:{color:C.accent2}, line:{color:C.accent2} });
    s.addText(h, { x:0.45, y:y+0.04, w:6.1, h:0.27, fontSize:11.5, bold:true, color:C.accent2, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:0.45, y:y+0.31, w:6.1, h:0.35, fontSize:10, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
  if (img(2)) s.addImage({ data:img(2), x:6.85, y:0.65, w:2.9, h:4.5 });
  s.addText("Fig: Right lateral nasal wall\nwith turbinates (Bailey & Love's)", { x:6.85, y:5.15, w:2.9, h:0.35, fontSize:8, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── SLIDE 6: 4 SINUSES ───────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "SECTION 4 — PARANASAL SINUSES: ALL FOUR PAIRS");
  s.addText("Four Paired Paranasal Sinuses", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const sinuses = [
    { name:"Maxillary Sinus\n(Antrum of Highmore)", pts:["Largest PNS; pyramidal shape with apex at zygomatic process","Floor = alveolar process (adjacent to upper premolars/1st molar)","Roof = orbital floor; medial wall = lateral nasal wall","Ostium opens HIGH on medial wall → gravity-dependent drainage poor","CT: coronal & axial — best for floor, roof, infundibulum","Mucociliary drainage toward ostium via infundibulum → middle meatus"] },
    { name:"Frontal Sinus", pts:["Paired but often asymmetric; absent in ~5% of adults","Drains via frontal recess (not a true duct) → middle meatus","CT sagittal plane best for drainage pathway & agger nasi relationship","Intersinus septum usually deviated; beware asymmetric pneumatization"] },
    { name:"Ethmoid Sinuses\n(Labyrinth)", pts:["3–18 air cells per side (avg ~9); divided into anterior & posterior","Anterior (> ethmoid bulla, agger nasi) → middle meatus","Posterior → superior meatus; bounded laterally by lamina papyracea","Key cells: agger nasi, ethmoid bulla, Haller cells, Onodi cells"] },
    { name:"Sphenoid Sinus", pts:["Deepest, most posterior PNS; develops last (complete by ~12 yrs)","Ostium on anterior wall → sphenoethmoidal recess","Neighbours: optic nerve, ICA, cavernous sinus, pituitary fossa, CN III-VI","CT: check ICA canal dehiscence & optic nerve course pre-FESS"] },
  ];
  sinuses.forEach((sn, i) => {
    const col = i % 2, row = Math.floor(i / 2);
    const x = col===0 ? 0.3 : 5.15;
    const y = 1.22 + row * 2.12;
    s.addShape(pres.ShapeType.roundRect, { x, y, w:4.65, h:2.0, fill:{color:C.midBg}, line:{color:C.accent,pt:1}, rectRadius:0.08 });
    s.addText(sn.name, { x:x+0.14, y:y+0.08, w:4.37, h:0.45, fontSize:11.5, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    sn.pts.forEach((p, pi) => {
      s.addText("• "+p, { x:x+0.14, y:y+0.53+pi*0.24, w:4.37, h:0.24, fontSize:9, color:C.offWhite, fontFace:"Calibri", margin:0 });
    });
  });
}

// ── SLIDE 7: OMC ─────────────────────────────────────────────────────────
{
  const s = bgSlide(C.midBg);
  topBar(s, "SECTION 5 — OSTEOMEATAL COMPLEX (OMC)");
  s.addText("The Osteomeatal Complex — Key Drainage Unit", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  s.addText("The OMC is a functional region (not a single structure) through which the anterior group of sinuses drain. Obstruction here → 'anterior sinus triad' (maxillary + frontal + anterior ethmoid sinusitis).", {
    x:0.4, y:1.15, w:9.2, h:0.52, fontSize:11, color:C.offWhite, fontFace:"Calibri", italic:true });
  const parts = [
    ["Uncinate Process", "Thin curved ethmoid plate. Determines frontal drainage direction (medial/lateral). Step 1 in FESS = uncinectomy. Best seen on coronal CT."],
    ["Ethmoid Bulla", "Largest, most constant anterior ethmoid cell. Superior to infundibulum. When large, obstructs drainage. Identified on coronal CT."],
    ["Infundibulum", "Funnel-shaped space between uncinate process and lamina papyracea. Receives maxillary ostium and anterior ethmoid drainage."],
    ["Hiatus Semilunaris", "Crescent-shaped gap between uncinate process and ethmoid bulla. Gateway from infundibulum into the middle meatus."],
    ["Frontal Recess", "Narrow channel connecting frontal sinus → middle meatus. Vulnerable to obstruction by agger nasi cells. Best seen on sagittal CT."],
    ["Middle Meatus", "Main drainage corridor receiving frontal, maxillary, and anterior ethmoid sinuses. Between middle turbinate (medial) and lateral nasal wall."],
  ];
  parts.forEach(([h, b], i) => {
    const y = 1.75 + i * 0.63;
    s.addShape(pres.ShapeType.rect, { x:0.3, y:y+0.06, w:0.06, h:0.22, fill:{color:C.gold}, line:{color:C.gold} });
    s.addText(h, { x:0.45, y:y+0.04, w:2.5, h:0.28, fontSize:11, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:3.05, y:y+0.04, w:6.65, h:0.5, fontSize:10, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
}

// ── SLIDE 8: CT TECHNIQUE ────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "SECTION 6 — CT PROTOCOL: TECHNIQUE & WINDOWS");
  s.addText("CT Nose & PNS — Standard Protocol", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const cols = [
    { title:"Acquisition", color:C.accent, items:[
      "Patient: Supine, hard palate parallel to gantry",
      "MDCT: 0.6–1 mm slice thickness (axial)",
      "FOV: Nose tip → posterior clinoid",
      "Low-dose NCCT — no IV contrast for routine sinusitis",
      "IV contrast if orbital/intracranial complication",
      "Screening: 5 mm cuts at 10 mm intervals",
      "Raw data usable for surgical navigation (IGS)",
    ]},
    { title:"Reconstruction Planes", color:C.gold, items:[
      "AXIAL — Base overview: sinuses, orbits, choanae",
      "CORONAL — Best for OMC; correlates with endoscopy",
      "SAGITTAL — Best for frontal recess & basal lamella",
      "All planes reconstructed from single axial acquisition",
      "Reconstruction thickness ≤ 3 mm per plane",
      "Dental artefact avoided with axial acquisition",
    ]},
    { title:"Window Settings", color:C.accent2, items:[
      "BONE: W 1500–2000 / L 300 HU",
      "SOFT TISSUE: W 450 / L 50 HU",
      "Bone window essential for OMC bony detail",
      "Soft tissue: mucosal thickening, polyps",
      "Fungal: soft tissue shows calcification / double density",
      "PACS allows user to adjust window settings freely",
    ]},
  ];
  cols.forEach((col, ci) => {
    const x = 0.28 + ci * 3.24;
    s.addShape(pres.ShapeType.roundRect, { x, y:1.22, w:3.12, h:4.1, fill:{color:C.midBg}, line:{color:col.color,pt:1}, rectRadius:0.08 });
    s.addText(col.title, { x:x+0.1, y:1.29, w:2.92, h:0.38, fontSize:12, bold:true, color:col.color, fontFace:"Calibri", align:"center", margin:0 });
    col.items.forEach((item, ii) => {
      s.addText("• "+item, { x:x+0.1, y:1.72+ii*0.53, w:2.92, h:0.5, fontSize:9.5, color:C.offWhite, fontFace:"Calibri", margin:0 });
    });
  });
  s.addText("Source: Scott-Brown's ORL (9th ed) • Cummings ORL (8th ed) • Grainger & Allison's Diagnostic Radiology", {
    x:0.4, y:5.35, w:9.2, h:0.24, fontSize:8.5, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── SLIDE 9: NORMAL CT (with image) ─────────────────────────────────────
{
  const s = bgSlide(C.midBg);
  topBar(s, "SECTION 7 — NORMAL CT ANATOMY OF THE PARANASAL SINUSES");
  s.addText("Normal PNS CT — Coronal, Sagittal & Axial Views", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  if (img(3)) {
    s.addImage({ data:img(3), x:0.3, y:1.18, w:5.6, h:3.9 });
    s.addText("Fig 61.33 — Normal PNS CT [Grainger & Allison's]\n(A) Coronal: mucociliary flow in left antrum → infundibulum; middle meatus (blue); EB = ethmoid bulla.\n(B) Sagittal: F=frontal; AE/PE=anterior/posterior ethmoid; S=sphenoid; MT/IT=turbinates; basal lamella (white line).\n(C) Axial: S=sphenoid; PE=posterior ethmoid; white arrow=sphenoid ostium; dashed=sphenoethmoidal recess.", {
      x:0.3, y:5.08, w:5.6, h:0.5, fontSize:7.5, color:C.gray, fontFace:"Calibri", italic:true });
  }
  const labels = [
    ["Coronal View", "Best shows OMC, uncinate process, ethmoid bulla, maxillary infundibulum, middle turbinate, and nasal septum in one cut. Correlates directly with endoscopic view."],
    ["Sagittal View", "Best for frontal sinus drainage pathway, agger nasi cells, basal lamella (divides anterior from posterior ethmoid), and depth of olfactory fossa (Keros classification)."],
    ["Axial View", "Best for sphenoid sinus, sphenoethmoidal recess, posterior ethmoid air cells, pterygopalatine fossa, optic canal, and orbital apex."],
    ["Basal Lamella", "CT landmark on sagittal view. Lateral insertion of middle turbinate. Divides anterior (→ middle meatus) from posterior (→ superior meatus) ethmoid cells."],
  ];
  labels.forEach(([h, b], i) => {
    const y = 1.18 + i * 1.0;
    s.addShape(pres.ShapeType.rect, { x:6.1, y:y+0.04, w:0.06, h:0.27, fill:{color:C.gold}, line:{color:C.gold} });
    s.addText(h, { x:6.25, y:y+0.01, w:3.45, h:0.31, fontSize:12, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:6.25, y:y+0.33, w:3.45, h:0.6, fontSize:9.5, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
}

// ── SLIDE 10: VARIANTS ───────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "SECTION 8 — ANATOMIC VARIANTS ON CT (Must Know Pre-FESS)");
  s.addText("Common CT Anatomic Variants", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  const vars = [
    ["Concha Bullosa", "Pneumatized middle turbinate — most common variant. Narrows middle meatus. Seen as air-filled turbinate on coronal CT."],
    ["Agger Nasi Cells", "Most anterior ethmoid cells, anterior to frontal recess. When large, obstruct frontal sinus drainage. Seen on sagittal CT."],
    ["Haller Cells (Infraorbital)", "Ethmoid cells along maxillary sinus roof / orbital floor. Narrow maxillary infundibulum. Identified on coronal CT."],
    ["Onodi Cells (Sphenoethmoidal)", "Posterior ethmoid cells extending lateral/superior to sphenoid. Optic nerve may run through them — surgical hazard."],
    ["Septal Deviation / Spur", "Graded by degree of deviation. Spurs at cartilage-bone junction cause unilateral nasal obstruction. Coronal + axial CT."],
    ["Paradoxical Middle Turbinate", "Turbinate curves laterally instead of medially. Narrows middle meatus. Coronal CT."],
    ["Dehiscent Lamina Papyracea", "Absent / deficient medial orbital wall. Orbital fat herniates into ethmoid. Orbital injury risk during FESS."],
    ["Keros Type III (Deep Olfactory Fossa)", "Lateral lamella of cribriform plate >5 mm deep. High risk of CSF leak / intracranial entry during FESS. Sagittal CT."],
  ];
  vars.forEach((v, i) => {
    const col = i%2, row = Math.floor(i/2);
    const x = col===0 ? 0.3 : 5.1;
    const y = 1.2 + row * 1.05;
    s.addShape(pres.ShapeType.roundRect, { x, y, w:4.6, h:0.95, fill:{color:C.midBg}, line:{color:C.accent,pt:0.5}, rectRadius:0.06 });
    s.addText(v[0], { x:x+0.13, y:y+0.07, w:4.35, h:0.28, fontSize:11, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(v[1], { x:x+0.13, y:y+0.37, w:4.35, h:0.5, fontSize:9.5, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
}

// ── SLIDE 11: PATHOLOGY ──────────────────────────────────────────────────
{
  const s = bgSlide(C.midBg);
  topBar(s, "SECTION 9 — CT PATHOLOGY: SINUSITIS, POLYPS & TUMOURS");
  s.addText("CT Findings in Sinonasal Disease", { x:0.4, y:0.65, w:6.0, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  if (img(4)) {
    s.addImage({ data:img(4), x:0.3, y:1.18, w:5.0, h:3.7 });
    s.addText("Fig 8.13 — CT in sinusitis [Cummings ORL]\n(A) Axial NCCT: right maxillary opacification vs normal left. Bony sclerosis & posterior wall thickening.\n(B) Coronal NCCT: mucosal thickening right maxillary + ethmoid; left infundibular obstruction (arrow).\n(C) Axial CECT soft tissue: rim-enhancing mucosa; bony sclerosis = chronic sinusitis.", {
      x:0.3, y:4.88, w:5.0, h:0.58, fontSize:7.5, color:C.gray, fontFace:"Calibri", italic:true });
  }
  const findings = [
    ["Acute Sinusitis", "Air-fluid level, mucosal thickening >3–4 mm, sinus opacification. Soft tissue windows distinguish fluid from thickened mucosa."],
    ["Chronic Sinusitis", "Mucosal thickening + bony sclerosis / wall thickening. Posterior wall thickening of maxillary sinus on axial CT is classic."],
    ["Nasal Polyposis", "Bilateral expansile soft tissue masses. 'Cascading' on CECT. Widens infundibulum. May remodel (thin/expand) bone."],
    ["Fungal Sinusitis", "Hyperdense material (fungal concretions) on bone windows. Double density on soft tissue windows. Usually unilateral maxillary. Bony erosion in invasive form."],
    ["Complications", "Orbital cellulitis → subperiosteal abscess → orbital abscess. Intracranial: epidural / subdural empyema, meningitis. CECT + MRI essential."],
  ];
  findings.forEach(([h, b], i) => {
    const y = 1.18 + i * 0.86;
    s.addShape(pres.ShapeType.rect, { x:5.55, y:y+0.05, w:0.06, h:0.25, fill:{color:C.gold}, line:{color:C.gold} });
    s.addText(h, { x:5.7, y:y+0.02, w:4.0, h:0.3, fontSize:11.5, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:5.7, y:y+0.33, w:4.0, h:0.47, fontSize:10, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
}

// ── SLIDE 12: SURGICAL BOX ───────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "SECTION 10 — PARANASAL SURGICAL BOX & FESS PLANNING");
  s.addText("Surgical Box Concept", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:17, bold:true, color:C.accent, fontFace:"Calibri" });
  s.addText("CT is mandatory before FESS. Three fixed landmarks define the safe dissection zone. CT must be reviewed in all three planes before any endoscopic sinus surgery.", {
    x:0.4, y:1.15, w:6.1, h:0.45, fontSize:10.5, color:C.offWhite, fontFace:"Calibri", italic:true });
  const boxes = [
    { title:"HORIZONTAL BOX", color:C.accent, items:["Medial: Middle turbinate","Lateral: Lamina papyracea","Inferior: Floor of nose","Superior: Skull base"] },
    { title:"VERTICAL BOX", color:C.gold, items:["Medial: Middle turbinate + intersinus septum","Lateral: Lamina papyracea","Anterior: Nasofrontal beak","Posterior: Skull base"] },
  ];
  boxes.forEach((b, i) => {
    const x = 0.3 + i * 3.1;
    s.addShape(pres.ShapeType.roundRect, { x, y:1.68, w:2.85, h:2.4, fill:{color:C.midBg}, line:{color:b.color,pt:1.5}, rectRadius:0.08 });
    s.addText(b.title, { x:x+0.1, y:1.75, w:2.65, h:0.38, fontSize:12, bold:true, color:b.color, fontFace:"Calibri", align:"center", margin:0 });
    b.items.forEach((item, ii) => {
      s.addText("• "+item, { x:x+0.12, y:2.18+ii*0.46, w:2.61, h:0.43, fontSize:10, color:C.offWhite, fontFace:"Calibri", margin:0 });
    });
  });
  const keys = [
    "1. Identify orbital floor (maxillary sinus roof) FIRST — establishes distance from skull base",
    "2. Skull base identified posteriorly via sphenoid sinus face / ostium",
    "3. Lamina papyracea = medial orbital wall — dehiscence → orbital injury risk",
    "4. Check pre-op CT: Keros type, Onodi cells, ICA dehiscence, optic nerve course",
    "5. Use PACS to freely switch bone ↔ soft tissue windows during review",
  ];
  keys.forEach((k, i) => {
    s.addShape(pres.ShapeType.roundRect, { x:6.4, y:1.68+i*0.73, w:3.35, h:0.66, fill:{color:C.midBg}, line:{color:C.accent2,pt:0.5}, rectRadius:0.05 });
    s.addText(k, { x:6.52, y:1.72+i*0.73, w:3.11, h:0.58, fontSize:9.5, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
  if (img(5)) s.addImage({ data:img(5), x:0.3, y:4.18, w:5.6, h:1.15 });
  s.addText("Fig: Paranasal surgical box — horizontal & vertical components [Scott-Brown's ORL]", {
    x:0.3, y:5.33, w:5.6, h:0.22, fontSize:7.5, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── SLIDE 13: SUMMARY ────────────────────────────────────────────────────
{
  const s = bgSlide(C.darkBg);
  topBar(s, "KEY TAKE-AWAYS — CT NOSE & PNS");
  s.addText("Summary", { x:0.4, y:0.65, w:9.2, h:0.45, fontSize:20, bold:true, color:C.accent, fontFace:"Calibri" });
  const ta = [
    ["CT is first-line imaging", "NCCT, bone algorithm, low-dose MDCT. Reconstruct coronal + axial + sagittal from one axial acquisition."],
    ["OMC is the master key", "All anterior sinus pathology starts at the OMC. Coronal CT is the best plane. Uncinectomy is step 1 in FESS."],
    ["Know your variants", "Concha bullosa, agger nasi, Haller cells, Onodi cells, Keros III — all affect FESS planning & complication risk."],
    ["4 sinuses — 4 drainage pathways", "Frontal + maxillary + anterior ethmoid → middle meatus. Posterior ethmoid → superior meatus. Sphenoid → sphenoethmoidal recess."],
    ["Surgical box concept", "Three fixed landmarks: orbital floor, lamina papyracea, skull base. Never dissect beyond these."],
    ["Pathology patterns", "Air-fluid = acute; sclerosis + thickening = chronic; hyperdense = fungal; bilateral expansile masses = polyposis."],
  ];
  ta.forEach(([h, b], i) => {
    const y = 1.18 + i * 0.72;
    s.addShape(pres.ShapeType.roundRect, { x:0.3, y, w:9.4, h:0.65, fill:{color:C.midBg}, line:{color:C.accent,pt:0.5}, rectRadius:0.05 });
    s.addText(h+" — ", { x:0.46, y:y+0.18, w:3.0, h:0.3, fontSize:11, bold:true, color:C.gold, fontFace:"Calibri", margin:0 });
    s.addText(b, { x:3.44, y:y+0.18, w:6.1, h:0.3, fontSize:10.5, color:C.offWhite, fontFace:"Calibri", margin:0 });
  });
  s.addText("Sources: Scott-Brown's ORL Vol 1 (9th ed)  •  Cummings ORL Head & Neck Surgery (8th ed)  •  Grainger & Allison's Diagnostic Radiology  •  Bailey & Love's Surgery (28th ed)", {
    x:0.4, y:5.37, w:9.2, h:0.22, fontSize:8, color:C.gray, fontFace:"Calibri", italic:true });
}

// ── WRITE ─────────────────────────────────────────────────────────────────
const out = "/home/daytona/workspace/ct-nose-pns/CT_Nose_PNS.pptx";
pres.writeFile({ fileName: out })
  .then(() => console.log("SUCCESS: " + out))
  .catch(e => { console.error("ERROR:", e); process.exit(1); });
Running Command

node /home/daytona/workspace/ct-nose-pns/build_ppt.js 2>&1

Your PPT is ready! Here it is:

CT Nose PNS

Presentation · PPTX


13 slides with a dark navy/cyan theme, covering:
SlideContent
1Title slide
2Table of contents
3External nose — skeleton, cartilages, landmarks
4Nasal septum — all 4 components + CT tips
5Turbinates & meatuses — all 4 conchae + drainage
6All four paranasal sinuses in detail
7Osteomeatal complex (OMC) — all 6 key structures
8CT protocol — acquisition, planes, window settings
9Normal CT anatomy with real textbook image (coronal/sagittal/axial)
10Anatomic variants — concha bullosa, Haller cells, Onodi, Keros III, etc.
11CT pathology — sinusitis, polyps, fungal, complications (with CT image)
12Paranasal surgical box + FESS planning (with diagram)
13Key take-aways summary
Sources: Scott-Brown's ORL, Cummings ORL, Grainger & Allison's Radiology, Bailey & Love's Surgery. Sorry again for the delay!

Find clinical images showing common CT pathology patterns in sinusitis

Finding Sources
Finding Sources
Finding Sources
Reading File
Reading File
Reading File
Reading File
Finding Sources
Reading File
Reading File
Reading File
Reading File
Loading Image
Loading Image
Loading Image
Loading Image
Loading Image
Loading Image
Loading Image
Here are all the clinical CT images from the medical textbooks, organized by pathology pattern:

CT Pathology Patterns in Sinusitis


1. Chronic Rhinosinusitis (CRS) — Axial/Coronal NCCT

Fig. 8.13 — Cummings Otolaryngology (8th ed.)
Chronic sinusitis CT — axial/coronal/contrast
(A) Axial NCCT (bone windows): Right maxillary sinus is opacified (asterisk) vs. normal air-filled left side. Bony wall sclerosis and posterior wall thickening = chronic changes. (B) Coronal NCCT: Mucosal thickening + opacification of right maxillary and ethmoid sinuses. Arrow = left maxillary infundibular obstruction. Best plane for pre-FESS planning. (C) Axial CECT (soft tissue windows): Rim-enhancing mucosa with arrowhead = thin luminal enhancement. Classic chronic sinusitis pattern.

2. Chronic Rhinosinusitis — Bilateral Maxillary + Ethmoid Opacification with Calcification

Fig. 38.15 — Cummings Otolaryngology
Bilateral CRS with calcification
(A) Coronal CT: Bilateral maxillary + ethmoid sinus opacification with bony wall sclerosis. (B) Axial CT: Bilateral opacification with scattered intrasinus calcifications — classic for allergic/eosinophilic or chronic fungal sinusitis. Calcifications appear as bright white foci within the opacified sinus. (C) Axial CT: Intrinsically hyperdense secretions (30-60 HU) within the maxillary sinus — desiccated, concentrated mucus in long-standing CRS.
Key teaching point: The combination of bony wall thickening + sclerosis + intrasinus calcifications + hyperdense secretions is the hallmark pattern of chronic / fungal rhinosinusitis.

3. OMU Pattern of Sinusitis — Coronal NCCT

Fig. 38.17 — Cummings Otolaryngology
OMU pattern sinusitis coronal CT
Classic osteomeatal unit (OMU) obstruction pattern: Left middle meatus is obstructed (asterisk), causing downstream opacification of the left:
  • Frontal sinus (F)
  • Anterior ethmoid cells (arrow)
  • Maxillary sinus (M)
Teaching point: This is the most common CT pattern (25% of CRS). One blocked middle meatus → ipsilateral anterior "triad" of sinusitis (frontal + maxillary + anterior ethmoid). The right side remains clear, making this an excellent side-by-side comparison.

4. Antrochoanal Polyp — Axial CT

Fig. 61.41 — Grainger & Allison's Diagnostic Radiology
Antrochoanal polyp axial CT
(A) Axial CT: Polyp (star) arising from the left antrum extending through the accessory ostium into the middle meatus (white arrow). (B) Axial CT at a lower level: Same polyp now fills the entire left nasal cavity and extends posteriorly through the choana into the postnasal space (star) — the defining feature of an antrochoanal polyp.
Teaching point: The key CT finding is a soft tissue mass tracking continuously from the maxillary antrum → through the ostium → nasal cavity → through the choana into the nasopharynx. Usually unilateral. Bone is thinned/remodelled, not eroded.

5. Mucocele — Coronal/Sagittal CT + MRI

Fig. 61.42 — Grainger & Allison's Diagnostic Radiology
Mucocele frontal and sphenoid CT and MRI
(A) Coronal CT: Grossly expanded and opacified right frontal sinus with bony wall dehiscence inferolaterally → secondary proptosis of right globe. Classic frontal mucocele. (B) Coronal CT (sphenoid): Opacified, expanded right sphenoid sinus (star) with dehiscent lateral wall. Arrows 1 & 2 indicate proximity to V2 (maxillary nerve) and optic nerves — critical surgical hazard. (C) Coronal T2 MRI: Sphenoid mucocele filled with bright T2 signal, showing the sinus expansion and neurovascular relationships more clearly.
Teaching point: Mucocele = chronically obstructed sinus that fills with mucus and slowly expands, eroding/remodelling bone. Frontal > ethmoid > maxillary > sphenoid (frequency). CT shows expansion + opacification; MRI characterizes content.

6. Orbital Complication of Sinusitis — Coronal CECT

Fig. 60.15 — Grainger & Allison's Diagnostic Radiology
Orbital cellulitis + empyema from sinusitis CT
(A) Coronal CECT orbits: Right orbital cellulitis with fat stranding and asymmetric superior rectus/levator swelling. Note the extensive maxillary antral + right ethmoid opacification as the source. (B) Axial CECT brain: Epidural empyema (extra-axial collection) beneath the opacified frontal sinuses + right forehead cellulitis (Chandler stage V equivalent). (C & D) Coronal + sagittal CT: Severe chronic fungal sinusitis with frontal sinus pyocele causing proptosis and displacement of the left globe + frontal cerebral abscess. Gross pan-sinus opacification.
Teaching point: Orbital complications follow the Chandler classification (I–V). Sinusitis (ethmoid most common source) → preseptal cellulitis → orbital cellulitis → subperiosteal abscess → orbital abscess → cavernous sinus thrombosis. CECT is mandatory to stage the complication.

7. Orbital Cellulitis + Subperiosteal Abscess from Sinusitis — Axial CECT

Fig. 122-6 — Tintinalli's Emergency Medicine
Orbital cellulitis subperiosteal abscess CT axial
Axial postcontrast CT: Left orbital cellulitis with a subperiosteal abscess (Chandler Stage III) medially, arising from extensive left ethmoid + maxillary sinusitis. The abscess appears as a lenticular rim-enhancing collection medial to the left globe, pushing it laterally.
Teaching point: 75–90% of orbital cellulitis cases have concomitant paranasal sinusitis. The most common source is ethmoid sinusitis spreading through the thin lamina papyracea. CECT (not plain CT) is required to identify the rim-enhancing abscess cavity.

Summary Table

PatternKey CT FindingsBest Plane
Acute sinusitisAir-fluid level, mucosal thickeningCoronal
Chronic sinusitisMucosal thickening + bony sclerosisAxial + Coronal
CRS with calcificationHyperdense secretions, intrasinus calcificationsAxial (bone window)
OMU obstructionIpsilateral frontal + maxillary + ant. ethmoid opacificationCoronal
Antrochoanal polypMaxillary → nasal cavity → choana soft tissue trackAxial
MucoceleExpanded opacified sinus, bony wall dehiscenceCoronal
Orbital complicationOrbital fat stranding, rim-enhancing abscess, proptosisCoronal CECT
This is a shared conversation. Sign in to Orris to start your own chat.