Hydrocephalus and raised icp and management of its in MD anesthesia.make a ppt

Reading File
Reading File
Reading File
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Reading File
Reading File
Reading File
Reading File
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Searching Images

hydrocephalus intracranial pressure anesthesia management diagram

Running Command

mkdir -p /home/daytona/workspace/hydrocephalus-icp-ppt && ls /home/daytona/workspace/hydrocephalus-icp-ppt/

Writing File

~/hydrocephalus-icp-ppt/build.js

const pptxgen = require("pptxgenjs");

const pres = new pptxgen();
pres.layout = "LAYOUT_WIDE";
pres.title = "Hydrocephalus & Raised ICP – Anesthesia Management";
pres.author = "MD Anesthesia";

// ── COLOR PALETTE ──────────────────────────────────────────────
const DARK_BG   = "0D1B2A";   // deep navy  (dominant)
const MID_BG    = "1B3A5C";   // mid blue   (header bars)
const ACCENT    = "00C9A7";   // teal-green (accent)
const ACCENT2   = "F4A261";   // amber      (highlight/warning)
const WHITE     = "FFFFFF";
const LIGHT_GRY = "D6E4F0";
const SUBTEXT   = "A8C7E8";

// ── HELPER: slide background ─────────────────────────────────
function addBg(slide, color) {
  slide.addShape(pres.ShapeType.rect, {
    x: 0, y: 0, w: "100%", h: "100%",
    fill: { color: color || DARK_BG }, line: { type: "none" }
  });
}

// ── HELPER: accent stripe left edge ─────────────────────────
function addStripe(slide, color) {
  slide.addShape(pres.ShapeType.rect, {
    x: 0, y: 0, w: 0.12, h: "100%",
    fill: { color: color || ACCENT }, line: { type: "none" }
  });
}

// ── HELPER: section header bar ───────────────────────────────
function addHeaderBar(slide, title, subtitle) {
  slide.addShape(pres.ShapeType.rect, {
    x: 0, y: 0, w: "100%", h: 1.1,
    fill: { color: MID_BG }, line: { type: "none" }
  });
  slide.addShape(pres.ShapeType.rect, {
    x: 0, y: 1.05, w: "100%", h: 0.06,
    fill: { color: ACCENT }, line: { type: "none" }
  });
  slide.addText(title, {
    x: 0.25, y: 0.08, w: 12, h: 0.6,
    fontSize: 26, bold: true, color: WHITE, fontFace: "Calibri"
  });
  if (subtitle) {
    slide.addText(subtitle, {
      x: 0.25, y: 0.65, w: 12, h: 0.38,
      fontSize: 13, color: ACCENT, fontFace: "Calibri", italic: true
    });
  }
}

// ── HELPER: bullet list box ──────────────────────────────────
function bulletBox(slide, items, opts) {
  const { x, y, w, h, fontSize, color, bold, indentLevel } = {
    fontSize: 16, color: WHITE, bold: false, indentLevel: 0, ...opts
  };
  const textArr = items.map((item, i) => ({
    text: item,
    options: {
      bullet: { indent: 20 + (indentLevel * 18) },
      breakLine: i < items.length - 1,
      fontSize,
      color: typeof color === "function" ? color(i) : color,
      bold: typeof bold === "function" ? bold(i) : bold,
      fontFace: "Calibri"
    }
  }));
  slide.addText(textArr, { x, y, w, h, valign: "top" });
}

// ── HELPER: info card (rounded rect + text) ──────────────────
function infoCard(slide, x, y, w, h, title, lines, cardColor, titleColor) {
  slide.addShape(pres.ShapeType.roundRect, {
    x, y, w, h, rectRadius: 0.08,
    fill: { color: cardColor || MID_BG },
    line: { color: ACCENT, width: 1.5 }
  });
  slide.addText(title, {
    x: x + 0.12, y: y + 0.06, w: w - 0.24, h: 0.38,
    fontSize: 13, bold: true, color: titleColor || ACCENT, fontFace: "Calibri"
  });
  const textArr = lines.map((l, i) => ({
    text: l,
    options: {
      bullet: { indent: 15 },
      breakLine: i < lines.length - 1,
      fontSize: 12,
      color: WHITE,
      fontFace: "Calibri"
    }
  }));
  slide.addText(textArr, {
    x: x + 0.1, y: y + 0.45, w: w - 0.2, h: h - 0.52, valign: "top"
  });
}

// ═══════════════════════════════════════════════════════════════
//  SLIDE 1 — TITLE
// ═══════════════════════════════════════════════════════════════
let s = pres.addSlide();
addBg(s);

// decorative circles
s.addShape(pres.ShapeType.ellipse, {
  x: 10.5, y: -0.8, w: 3.5, h: 3.5,
  fill: { color: MID_BG }, line: { type: "none" }
});
s.addShape(pres.ShapeType.ellipse, {
  x: -1.2, y: 5.5, w: 3, h: 3,
  fill: { color: MID_BG }, line: { type: "none" }
});
s.addShape(pres.ShapeType.rect, {
  x: 0.5, y: 2.4, w: 5.5, h: 0.06,
  fill: { color: ACCENT }, line: { type: "none" }
});
s.addShape(pres.ShapeType.rect, {
  x: 0.5, y: 2.52, w: 3, h: 0.06,
  fill: { color: ACCENT2 }, line: { type: "none" }
});

s.addText("HYDROCEPHALUS &", {
  x: 0.5, y: 0.6, w: 11, h: 0.8,
  fontSize: 44, bold: true, color: WHITE, fontFace: "Calibri",
  charSpacing: 2
});
s.addText("RAISED INTRACRANIAL PRESSURE", {
  x: 0.5, y: 1.35, w: 11, h: 0.75,
  fontSize: 38, bold: true, color: ACCENT, fontFace: "Calibri",
  charSpacing: 1
});
s.addText("Anesthesia Management", {
  x: 0.5, y: 2.7, w: 8, h: 0.55,
  fontSize: 26, color: LIGHT_GRY, fontFace: "Calibri", italic: true
});
s.addText("MD Anesthesia  |  Neuroanesthesia Series", {
  x: 0.5, y: 3.6, w: 8, h: 0.4,
  fontSize: 15, color: SUBTEXT, fontFace: "Calibri"
});
s.addText("Sources: Miller's Anesthesia (10e)  •  Morgan & Mikhail (7e)", {
  x: 0.5, y: 6.7, w: 11, h: 0.35,
  fontSize: 11, color: SUBTEXT, fontFace: "Calibri", italic: true
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 2 — OVERVIEW / CONTENTS
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Overview", "Topics covered in this presentation");

const topics = [
  ["01", "Anatomy of ICP — Monroe-Kellie Doctrine"],
  ["02", "Hydrocephalus — Types, Pathophysiology & Causes"],
  ["03", "Signs, Symptoms & Diagnosis of Raised ICP"],
  ["04", "Cerebral Blood Flow, CPP & Autoregulation"],
  ["05", "Anesthetic Agents & their Effects on ICP"],
  ["06", "Preanesthetic Assessment & Premedication"],
  ["07", "Induction & Airway Management"],
  ["08", "Intraoperative Management — ICP Control"],
  ["09", "Ventilation, Osmotherapy & Positioning"],
  ["10", "Emergence, Extubation & Postoperative Care"],
  ["11", "Special Scenarios — Shunt Surgery & ETV"],
  ["12", "Key Takeaways"],
];

topics.forEach(([num, text], i) => {
  const col = i < 6 ? 0 : 1;
  const row = i % 6;
  const x = 0.3 + col * 6.4;
  const y = 1.3 + row * 0.85;
  s.addShape(pres.ShapeType.roundRect, {
    x, y, w: 6.0, h: 0.72, rectRadius: 0.06,
    fill: { color: i % 2 === 0 ? "12263A" : MID_BG },
    line: { color: ACCENT, width: 0.6 }
  });
  s.addText(num, {
    x: x + 0.08, y: y + 0.14, w: 0.55, h: 0.44,
    fontSize: 16, bold: true, color: ACCENT, fontFace: "Calibri"
  });
  s.addText(text, {
    x: x + 0.68, y: y + 0.14, w: 5.1, h: 0.44,
    fontSize: 13.5, color: WHITE, fontFace: "Calibri", valign: "middle"
  });
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 3 — MONROE-KELLIE DOCTRINE
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Monroe-Kellie Doctrine", "The Rigid Cranial Vault");

s.addText("The cranial vault is a rigid structure with a FIXED total volume", {
  x: 0.3, y: 1.25, w: 12.5, h: 0.45,
  fontSize: 17, bold: true, color: ACCENT2, fontFace: "Calibri"
});

// 3 component boxes
const comp = [
  { label: "BRAIN", val: "80%", color: "1E4D8C", detail: "Parenchyma + Interstitial fluid" },
  { label: "BLOOD", val: "12%", color: "8B1A1A", detail: "Arterial + Venous compartments" },
  { label: "CSF",   val: "8%",  color: "1A5C4A", detail: "Produced 0.35 mL/min (~500 mL/day)" },
];
comp.forEach((c, i) => {
  const x = 0.3 + i * 4.3;
  s.addShape(pres.ShapeType.roundRect, {
    x, y: 1.85, w: 4.0, h: 1.6, rectRadius: 0.1,
    fill: { color: c.color }, line: { color: ACCENT, width: 1.2 }
  });
  s.addText(c.label, {
    x: x + 0.1, y: 1.95, w: 3.8, h: 0.45,
    fontSize: 20, bold: true, color: WHITE, fontFace: "Calibri", align: "center"
  });
  s.addText(c.val, {
    x: x + 0.1, y: 2.42, w: 3.8, h: 0.55,
    fontSize: 36, bold: true, color: ACCENT, fontFace: "Calibri", align: "center"
  });
  s.addText(c.detail, {
    x: x + 0.1, y: 2.98, w: 3.8, h: 0.38,
    fontSize: 11.5, color: LIGHT_GRY, fontFace: "Calibri", align: "center"
  });
});

s.addText("Increased volume in ONE component → must be offset by decrease in ANOTHER → else ↑ ICP", {
  x: 0.3, y: 3.58, w: 12.5, h: 0.45,
  fontSize: 15.5, bold: true, color: WHITE, fontFace: "Calibri"
});

// Compensation points
bulletBox(s, [
  "1°  Displacement of CSF from cranial → spinal compartment",
  "2°  Increased CSF absorption at arachnoid granulations",
  "3°  Decreased CSF production",
  "4°  Reduction of cerebral blood volume (primarily venous)",
  "Once compensatory mechanisms exhausted → PRECIPITOUS rise in ICP (pressure-volume curve)"
], { x: 0.3, y: 4.1, w: 12.5, h: 2.2, fontSize: 14.5, color: LIGHT_GRY });

s.addText("Normal ICP: ≤10 mmHg  |  Raised ICP: >20 mmHg  |  Critical: >40 mmHg", {
  x: 0.3, y: 6.55, w: 12.5, h: 0.38,
  fontSize: 13.5, bold: true, color: ACCENT2, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 4 — HYDROCEPHALUS — TYPES
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT2);
addHeaderBar(s, "Hydrocephalus — Classification & Causes", "Increase in CSF volume → ↑ ICP");

infoCard(s, 0.25, 1.25, 6.0, 2.5, "OBSTRUCTIVE (NON-COMMUNICATING)",
  [
    "CSF outflow obstructed within ventricular system",
    "Aqueductal stenosis (congenital malformations)",
    "Posterior fossa tumors (70% in children)",
    "Intraventricular hemorrhage or blood clot",
    "Obstructed ventricular shunts",
    "Chiari malformation"
  ], "12263A", ACCENT2);

infoCard(s, 6.6, 1.25, 6.0, 2.5, "COMMUNICATING",
  [
    "CSF reabsorption impaired at arachnoid granulations",
    "Post-meningitis / post-SAH",
    "Leptomeningeal carcinomatosis",
    "Venous sinus thrombosis",
    "Normal Pressure Hydrocephalus (elderly triad)",
    "Overproduction — choroid plexus papilloma"
  ], "12263A", ACCENT);

infoCard(s, 0.25, 3.9, 5.8, 2.5, "NORMAL PRESSURE HYDROCEPHALUS (NPH)",
  [
    "Classic triad: Wet-Wobbly-Wacky",
    "→ Urinary incontinence",
    "→ Gait disturbance (magnetic gait)",
    "→ Dementia",
    "ICP normal (10–15 mmHg) intermittently elevated",
    "Tx: VP shunt — often reversible"
  ], "1A3A1A", ACCENT);

infoCard(s, 6.4, 3.9, 6.2, 2.5, "KEY PATHOPHYSIOLOGY",
  [
    "CSF: 500 mL/day produced; total volume ~150 mL",
    "Production: choroid plexus (mainly lateral ventricles)",
    "Circulation: lateral → 3rd → aqueduct → 4th → subarachnoid",
    "Absorption: arachnoid granulations → venous sinuses",
    "ICP waveforms: P1 (percussion) P2 (tidal) P3 (dicrotic)",
    "P2 > P1 → decreased compliance (critical sign)"
  ], "1A1A3A", ACCENT2);

// ═══════════════════════════════════════════════════════════════
//  SLIDE 5 — SIGNS & SYMPTOMS OF RAISED ICP
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Clinical Features of Raised ICP", "Recognition is key to timely intervention");

// Left column — symptoms
s.addShape(pres.ShapeType.roundRect, {
  x: 0.25, y: 1.25, w: 4.0, h: 5.4, rectRadius: 0.1,
  fill: { color: MID_BG }, line: { color: ACCENT, width: 1.2 }
});
s.addText("SYMPTOMS", {
  x: 0.35, y: 1.35, w: 3.8, h: 0.42,
  fontSize: 14, bold: true, color: ACCENT, fontFace: "Calibri", align: "center"
});
bulletBox(s, [
  "Headache (worse in morning, on coughing/Valsalva)",
  "Nausea & Vomiting (projectile)",
  "Blurred / double vision",
  "Visual field defects",
  "Altered consciousness / drowsiness",
  "Seizures",
  "Personality changes"
], { x: 0.35, y: 1.82, w: 3.7, h: 4.6, fontSize: 12.5, color: LIGHT_GRY });

// Middle column — signs
s.addShape(pres.ShapeType.roundRect, {
  x: 4.55, y: 1.25, w: 4.0, h: 5.4, rectRadius: 0.1,
  fill: { color: MID_BG }, line: { color: ACCENT2, width: 1.2 }
});
s.addText("SIGNS", {
  x: 4.65, y: 1.35, w: 3.8, h: 0.42,
  fontSize: 14, bold: true, color: ACCENT2, fontFace: "Calibri", align: "center"
});
bulletBox(s, [
  "Papilloedema (fundoscopy — blurred disc margins)",
  "6th nerve palsy (false localizing sign)",
  "Cushing's triad: ↑BP + Bradycardia + Irregular respiration",
  "'Sunset sign' in infants (downward gaze palsy)",
  "Bulging fontanelle (infants)",
  "Dilated, poorly-reactive pupils",
  "Decorticate/decerebrate posturing",
  "Cheyne-Stokes breathing"
], { x: 4.65, y: 1.82, w: 3.7, h: 4.6, fontSize: 12.5, color: LIGHT_GRY });

// Right column — herniation
s.addShape(pres.ShapeType.roundRect, {
  x: 8.85, y: 1.25, w: 4.0, h: 5.4, rectRadius: 0.1,
  fill: { color: "3D1010" }, line: { color: "FF4444", width: 1.5 }
});
s.addText("HERNIATION SYNDROMES", {
  x: 8.95, y: 1.35, w: 3.8, h: 0.42,
  fontSize: 13, bold: true, color: "FF6666", fontFace: "Calibri", align: "center"
});
bulletBox(s, [
  "Transtentorial (uncal): CN III palsy, ipsilateral hemiplegia",
  "Central: rostrocaudal brainstem deterioration",
  "Subfalcine (cingulate): ACA compression",
  "Tonsillar (foramen magnum): cardiorespiratory arrest",
  "Transcalvarial: through skull defect",
  "",
  "ANESTHETIC EMERGENCY:",
  "Sudden ICP spike → herniation = Death unless immediate decompression"
], { x: 8.95, y: 1.82, w: 3.7, h: 4.6, fontSize: 12, color: "FFCCCC" });

// ═══════════════════════════════════════════════════════════════
//  SLIDE 6 — CBF, CPP, AUTOREGULATION
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "CBF, CPP & Cerebral Autoregulation", "Physiological basis of neuroanesthesia");

// Equations box
s.addShape(pres.ShapeType.roundRect, {
  x: 0.25, y: 1.25, w: 12.7, h: 0.85, rectRadius: 0.08,
  fill: { color: "0A2540" }, line: { color: ACCENT, width: 2 }
});
s.addText([
  { text: "CPP = MAP − ICP    ", options: { bold: true, color: ACCENT2, fontSize: 20, fontFace: "Calibri" } },
  { text: "|   ", options: { color: ACCENT, fontSize: 20, fontFace: "Calibri" } },
  { text: "Normal CPP: 60–80 mmHg    ", options: { bold: true, color: WHITE, fontSize: 17, fontFace: "Calibri" } },
  { text: "|   ", options: { color: ACCENT, fontSize: 20, fontFace: "Calibri" } },
  { text: "Target CPP > 60 mmHg", options: { bold: true, color: ACCENT, fontSize: 17, fontFace: "Calibri" } },
], { x: 0.35, y: 1.32, w: 12.5, h: 0.65, valign: "middle" });

// Cards row
const cbfCards = [
  {
    title: "Autoregulation Range",
    lines: [
      "MAP 50–150 mmHg: CBF constant (~50 mL/100g/min)",
      "Below 50: ischemia risk ↑",
      "Above 150: breakthrough perfusion, oedema",
      "Impaired by: TBI, volatile agents, hypercapnia",
      "Preserved by: propofol, barbiturates, etomidate"
    ]
  },
  {
    title: "CO₂ Reactivity (Most Powerful Regulator)",
    lines: [
      "PaCO₂ ↑ → CBF ↑ (vasodilation) → ↑ ICP",
      "PaCO₂ ↓ → CBF ↓ (vasoconstriction) → ↓ ICP",
      "4% change in CBF per mmHg CO₂",
      "Hyperventilation target: PaCO₂ 30–35 mmHg (temporizing)",
      "Avoid PaCO₂ < 30: cerebral ischemia risk"
    ]
  },
  {
    title: "Other Determinants of CBF",
    lines: [
      "O₂: Hypoxia (PaO₂ < 50): potent vasodilation",
      "Temperature: CBF ↓ 5–7% per °C reduction",
      "Viscosity: haematocrit — optimal 30–35%",
      "Venous outflow obstruction ↑ ICP",
      "PEEP > 10 cm H₂O may ↑ ICP via CVP"
    ]
  }
];

cbfCards.forEach((card, i) => {
  infoCard(s, 0.25 + i * 4.3, 2.28, 4.1, 4.0, card.title, card.lines, MID_BG, ACCENT);
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 7 — ANESTHETIC AGENTS EFFECTS ON ICP
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT2);
addHeaderBar(s, "Anesthetic Agents & Effects on ICP / CBF / CMR", "Critical knowledge for neuroanesthesia");

// Table header
const tHdr = [
  "AGENT", "CBF", "CMR", "ICP", "NOTES"
];
const tRows = [
  ["Propofol",   "↓↓",  "↓↓",  "↓↓",  "Agent of choice for TIVA; maintains autoregulation; dose-related BP drop → watch CPP"],
  ["Thiopentone","↓↓",  "↓↓",  "↓↓",  "Excellent for induction in raised ICP; max CMR reduction at isoelectric EEG"],
  ["Etomidate",  "↓↓",  "↓↓",  "↓↓",  "Ideal induction agent; adrenal suppression with infusion; myoclonic activity"],
  ["Ketamine",   "↑↑",  "~0",  "↑↑",  "AVOID in isolated raised ICP; safe under controlled ventilation + benzodiazepine"],
  ["Isoflurane", "↑/~", "↓↓",  "↑",   "Dose-dependent CBF increase; >1 MAC impairs autoregulation; hypocapnia blunts ↑ICP"],
  ["Sevoflurane","~",   "↓↓",  "~",   "Most cerebral-friendly volatile; autoregulation better preserved than Iso/Des"],
  ["Desflurane", "↑↑",  "↓",   "↑↑",  "Marked sympathetic activation & ICP rise during rapid increases; avoid in raised ICP"],
  ["N₂O",        "↑",   "↑",   "↑",   "Use cautiously; augments volatile ICP rise; AVOID with pneumocephalus"],
  ["Opioids",    "~",   "~",   "~",   "Minimal direct effect; indirect ↑ICP via CO₂ retention if ventilation inadequate"],
  ["Midazolam",  "↓",   "↓",   "↓",   "Less than barbiturates; BP reduction may reduce CPP; useful premedication"],
  ["Lidocaine IV","↓",  "↓",   "↓",   "Attenuates ICP rise on laryngoscopy; 1.5 mg/kg IV 3 min before intubation"],
  ["Mannitol",   "↑*",  "—",   "↓↓",  "↑CBF transiently via ↓viscosity; powerful ICP reduction; 0.25–1.5 g/kg IV bolus"],
];

const colW = [2.0, 0.8, 0.8, 0.8, 7.6];
const startX = 0.2;
const startY = 1.25;
const rowH = 0.44;

// header row
let rowY = startY;
colW.forEach((w, ci) => {
  const x = startX + colW.slice(0, ci).reduce((a, b) => a + b, 0);
  s.addShape(pres.ShapeType.rect, {
    x, y: rowY, w, h: 0.42,
    fill: { color: ACCENT }, line: { color: DARK_BG, width: 0.5 }
  });
  s.addText(tHdr[ci], {
    x: x + 0.04, y: rowY + 0.04, w: w - 0.08, h: 0.34,
    fontSize: 12, bold: true, color: DARK_BG, fontFace: "Calibri", align: "center", valign: "middle"
  });
});
rowY += 0.44;

tRows.forEach((row, ri) => {
  colW.forEach((w, ci) => {
    const x = startX + colW.slice(0, ci).reduce((a, b) => a + b, 0);
    const bgCol = ri % 2 === 0 ? "10283F" : MID_BG;
    const txtCol = ci === 1 || ci === 2 || ci === 3
      ? (row[ci].includes("↑") ? "FF7070" : row[ci].includes("↓") ? "70DDAA" : WHITE)
      : WHITE;
    s.addShape(pres.ShapeType.rect, {
      x, y: rowY, w, h: rowH,
      fill: { color: bgCol }, line: { color: "1E4060", width: 0.5 }
    });
    s.addText(row[ci], {
      x: x + 0.05, y: rowY + 0.02, w: w - 0.1, h: rowH - 0.04,
      fontSize: ci === 4 ? 10.5 : 12,
      bold: ci === 0 ? true : false,
      color: ci === 0 ? ACCENT2 : txtCol,
      fontFace: "Calibri", valign: "middle"
    });
  });
  rowY += rowH;
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 8 — PREANESTHETIC ASSESSMENT
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Preanesthetic Assessment", "Preparing the patient with raised ICP");

infoCard(s, 0.25, 1.25, 4.1, 5.5, "HISTORY",
  [
    "Duration & progression of symptoms",
    "Severity of headache, vomiting pattern",
    "Visual symptoms / field defects",
    "Seizure history",
    "Prior neurosurgical interventions",
    "Medications (steroids, anticonvulsants, diuretics)",
    "Airway history (previous difficult intubation)"
  ], MID_BG, ACCENT);

infoCard(s, 4.55, 1.25, 4.1, 5.5, "EXAMINATION",
  [
    "GCS score (document carefully)",
    "Pupillary responses (size, reactivity)",
    "Papilloedema on fundoscopy",
    "Cushing's triad assessment",
    "Focal neurological deficits",
    "Airway assessment (Mallampati, neck mobility)",
    "Cardiovascular — HR, BP, rhythm"
  ], MID_BG, ACCENT);

infoCard(s, 8.85, 1.25, 4.0, 5.5, "INVESTIGATIONS",
  [
    "CT head (contrast): mass, oedema, midline shift, herniation",
    "MRI brain: detailed tumour characterisation",
    "ICP monitoring (EVD / bolt) readings",
    "CBC, CMP, coagulation profile",
    "Serum osmolality (osmotherapy monitoring)",
    "ABG (PaCO₂, PaO₂ optimisation)",
    "Chest X-ray, ECG",
    "Blood glucose (hyperglycemia worsens outcome)"
  ], MID_BG, ACCENT2);

s.addText("PREMEDICATION:", {
  x: 0.25, y: 6.88, w: 2, h: 0.34,
  fontSize: 13, bold: true, color: ACCENT2, fontFace: "Calibri"
});
s.addText("Avoid sedatives/opioids (respiratory depression → CO₂ retention → ↑ICP)  |  Dexamethasone 8–16 mg IV for vasogenic oedema (tumour)  |  Anticonvulsants if seizure history  |  Continue antihypertensives  |  Famotidine for aspiration prophylaxis", {
  x: 2.3, y: 6.88, w: 10.5, h: 0.34,
  fontSize: 11.5, color: LIGHT_GRY, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 9 — INDUCTION & AIRWAY MANAGEMENT
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT2);
addHeaderBar(s, "Induction & Airway Management", "Goals: smooth induction, prevent ICP spikes");

s.addShape(pres.ShapeType.roundRect, {
  x: 0.25, y: 1.25, w: 12.7, h: 0.62, rectRadius: 0.06,
  fill: { color: "2A1200" }, line: { color: ACCENT2, width: 1.5 }
});
s.addText("GOALS: Hemodynamic stability | Blunt ICP response to laryngoscopy | Prevent hypoxia & hypercarbia | Rapid, predictable induction", {
  x: 0.35, y: 1.33, w: 12.5, h: 0.44,
  fontSize: 13.5, bold: true, color: ACCENT2, fontFace: "Calibri"
});

// 3-step boxes
const indSteps = [
  {
    num: "STEP 1", label: "Preoxygenation & Preparation", color: "1A3A5C",
    items: [
      "100% O₂ for 3–5 minutes",
      "Head elevated 30° (↓venous pressure → ↓ICP)",
      "Large bore IV access × 2",
      "Arterial line (continuous BP monitoring)",
      "Vasopressors drawn up (phenylephrine/noradrenaline)",
      "Video laryngoscope ready",
      "ICP monitor checked"
    ]
  },
  {
    num: "STEP 2", label: "Induction Sequence", color: "1A3A1A",
    items: [
      "Lidocaine 1.5 mg/kg IV 3 min before (blunts ICP ↑)",
      "Fentanyl 2–3 mcg/kg (blunts laryngoscopy response)",
      "Propofol 1.5–2 mg/kg (↓CMR, ↓CBF, ↓ICP)",
      "  OR Thiopentone 3–5 mg/kg (haemodynamically stable px)",
      "  OR Etomidate 0.3 mg/kg (if cardiovascular compromise)",
      "Succinylcholine 1.5 mg/kg OR Rocuronium 1.2 mg/kg",
      "Maintain BP — avoid MAP drop > 20%"
    ]
  },
  {
    num: "STEP 3", label: "Intubation & Confirmation", color: "3A1A1A",
    items: [
      "Rapid sequence or modified RSI preferred",
      "Aim: intubation in < 30s after induction",
      "Apply cricoid pressure if aspiration risk",
      "Confirm ETT position (capnography)",
      "Target ETCO₂ 30–35 mmHg immediately",
      "Secure ETT firmly (neck ties may ↑ venous pressure)",
      "Avoid succinylcholine in denervation injury (fasciculations)"
    ]
  }
];

indSteps.forEach((step, i) => {
  const x = 0.25 + i * 4.3;
  s.addShape(pres.ShapeType.roundRect, {
    x, y: 2.0, w: 4.1, h: 4.7, rectRadius: 0.08,
    fill: { color: step.color }, line: { color: ACCENT2, width: 1.2 }
  });
  s.addText(step.num, {
    x: x + 0.1, y: 2.1, w: 3.9, h: 0.35,
    fontSize: 13, bold: true, color: ACCENT2, fontFace: "Calibri"
  });
  s.addText(step.label, {
    x: x + 0.1, y: 2.46, w: 3.9, h: 0.4,
    fontSize: 12.5, bold: true, color: WHITE, fontFace: "Calibri"
  });
  const tArr = step.items.map((item, j) => ({
    text: item,
    options: {
      bullet: { indent: 14 },
      breakLine: j < step.items.length - 1,
      fontSize: 11.5,
      color: LIGHT_GRY,
      fontFace: "Calibri"
    }
  }));
  s.addText(tArr, { x: x + 0.1, y: 2.9, w: 3.9, h: 3.7, valign: "top" });
});

s.addText("⚠  Ketamine: AVOID in raised ICP unless controlled ventilation + benzodiazepine co-administration", {
  x: 0.25, y: 6.78, w: 12.7, h: 0.34,
  fontSize: 12.5, bold: true, color: "FF9090", fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 10 — INTRAOPERATIVE MANAGEMENT
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Intraoperative Management of Raised ICP", "The 'Brain-Relaxed' surgical field");

infoCard(s, 0.25, 1.25, 3.95, 5.5, "MAINTENANCE ANESTHESIA",
  [
    "TIVA preferred (Propofol + Remifentanil/Fentanyl)",
    "Propofol 4–12 mg/kg/h + Remifentanil 0.1–0.3 mcg/kg/min",
    "Sevoflurane ≤ 0.5 MAC if volatile needed",
    "Avoid N₂O (↑CBF, pneumocephalus risk)",
    "Maintain BIS 40–60",
    "NMB: adequate muscle relaxation throughout",
    "Avoid desflurane (ICP spikes)"
  ], MID_BG, ACCENT);

infoCard(s, 4.45, 1.25, 3.95, 5.5, "MONITORING (ESSENTIAL)",
  [
    "Invasive arterial BP (continuous)",
    "ICP monitor (if EVD/bolt in situ)",
    "CPP = MAP − ICP (maintain > 60 mmHg)",
    "End-tidal CO₂ (ETCO₂ 30–35 mmHg)",
    "Urine output hourly (target > 0.5 mL/kg/h)",
    "Temperature (normothermia 36–37°C)",
    "BIS / EEG (for burst suppression therapy)",
    "Jugular venous O₂ saturation (SjvO₂ > 55%)"
  ], MID_BG, ACCENT2);

infoCard(s, 8.65, 1.25, 4.2, 5.5, "POSITIONING",
  [
    "Head up 15–30° (venous drainage)",
    "Head neutral — avoid neck rotation/flexion",
    "Neck ties must not compress jugular veins",
    "Pin fixation (Mayfield): blunt response with",
    "  extra opioid or lidocaine before pinning",
    "Horseshoe position: ensure eyes not compressed",
    "Sitting position: risk of VAE (Doppler monitor)"
  ], MID_BG, ACCENT);

s.addText("ICP MANAGEMENT LADDER (Step-Up Approach):", {
  x: 0.25, y: 6.85, w: 3.5, h: 0.35,
  fontSize: 12, bold: true, color: ACCENT2, fontFace: "Calibri"
});
s.addText("Head up 30° → Normocapnia → Adequate sedation → Osmotherapy → Hyperventilation (PaCO₂ 30–35) → CSF drainage → Barbiturate coma → Decompressive craniectomy", {
  x: 3.8, y: 6.85, w: 9.1, h: 0.35,
  fontSize: 11.5, color: LIGHT_GRY, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 11 — OSMOTHERAPY & VENTILATION
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Osmotherapy & Ventilation Strategy", "Cornerstone pharmacological ICP management");

infoCard(s, 0.25, 1.25, 4.0, 5.5, "MANNITOL",
  [
    "Dose: 0.25–1.5 g/kg IV bolus (20% solution)",
    "Onset: 10–20 min; Duration: 2–6 hours",
    "Mechanism:",
    "  → Osmotic dehydration of brain (main)",
    "  → ↓ blood viscosity → ↑ CBF → reflex vasoconstriction",
    "  → ↑ CSF absorption",
    "Serum osmolality target: 300–320 mOsm/L",
    "AVOID if osmolality > 320 or renal failure",
    "Watch: rebound ICP rise if used continuously"
  ], MID_BG, ACCENT);

infoCard(s, 4.5, 1.25, 4.0, 5.5, "HYPERTONIC SALINE",
  [
    "Dose: 3% NaCl 1–2 mL/kg; 23.4% NaCl 0.5 mL/kg",
    "Mechanism: osmotic gradient → draws water out of brain",
    "Advantages over mannitol:",
    "  → No diuresis (hypovolaemia-free)",
    "  → May be superior in traumatic brain injury",
    "  → Useful in renal impairment",
    "Target serum Na: 145–155 mEq/L",
    "Rapid bolus (not slow infusion)",
    "Watch: central pontine myelinolysis (chronic hypoNa)"
  ], MID_BG, ACCENT2);

infoCard(s, 8.75, 1.25, 4.1, 5.5, "VENTILATION STRATEGY",
  [
    "Normocapnia: PaCO₂ 35–40 mmHg (routine)",
    "Mild hyperventilation: PaCO₂ 30–35 mmHg",
    "  → Temporizing only (effects diminish in 6–12h)",
    "  → Use only for acute ICP surge / herniation",
    "  → Avoid PaCO₂ < 30 → cerebral ischemia",
    "Normoxia: PaO₂ > 60 mmHg (SaO₂ > 95%)",
    "PEEP ≤ 5–8 cmH₂O (higher PEEP ↑ CVP → ↑ICP)",
    "PCV or VCV acceptable — aim for lung protection",
    "Avoid Valsalva, coughing, airway suctioning"
  ], MID_BG, ACCENT);

// Dexamethasone note
s.addShape(pres.ShapeType.roundRect, {
  x: 0.25, y: 6.88, w: 12.7, h: 0.38, rectRadius: 0.06,
  fill: { color: "1A3A1A" }, line: { color: ACCENT, width: 1 }
});
s.addText("Dexamethasone: 8–16 mg IV → effective for VASOGENIC oedema (tumour/abscess).  NOT effective in cytotoxic oedema (TBI, stroke).  Steroids are CONTRAINDICATED in TBI (↑ mortality – CRASH Trial).", {
  x: 0.35, y: 6.9, w: 12.5, h: 0.34,
  fontSize: 11.5, color: WHITE, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 12 — EMERGENCE & EXTUBATION
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT2);
addHeaderBar(s, "Emergence, Extubation & Postoperative Care", "Critical phase — prevent secondary brain injury");

infoCard(s, 0.25, 1.25, 4.0, 5.4, "CRITERIA FOR EXTUBATION",
  [
    "Awake, following commands",
    "GCS ≥ 13 (pre-op baseline)",
    "Protective airway reflexes present",
    "Adequate reversal of NMB",
    "Haemodynamically stable",
    "PaCO₂ and PaO₂ within normal range",
    "No significant surgical complications",
    "Seizure-free emergence"
  ], MID_BG, ACCENT);

infoCard(s, 4.5, 1.25, 4.0, 5.4, "SMOOTH EMERGENCE STRATEGIES",
  [
    "Remifentanil infusion during emergence",
    "Lidocaine 1 mg/kg before extubation",
    "Labetalol / esmolol for hypertension",
    "Adequate analgesia (prevent pain-induced ↑ICP)",
    "Anti-emetics (ondansetron) — vomiting ↑ICP",
    "KEEP head 30° elevated throughout",
    "Dexmedetomidine infusion: smooth emergence",
    "Suction gently; avoid stimulation during recovery"
  ], MID_BG, ACCENT2);

infoCard(s, 8.75, 1.25, 4.1, 5.4, "POSTOPERATIVE CONSIDERATIONS",
  [
    "ICU admission after major neurosurgery",
    "Continue ICP monitoring if EVD in situ",
    "Serial neurological assessment (GCS)",
    "Post-op CT head: rule out haematoma",
    "Seizure prophylaxis (levetiracetam/phenytoin)",
    "SIADH: within 24–48h; free water retention → ↓Na",
    "Diabetes Insipidus: after suprasellar surgery",
    "Pain: multimodal analgesia, avoid NSAIDs",
    "DVT prophylaxis: sequential compression devices"
  ], MID_BG, ACCENT);

s.addShape(pres.ShapeType.roundRect, {
  x: 0.25, y: 6.72, w: 12.7, h: 0.45, rectRadius: 0.06,
  fill: { color: "3D2000" }, line: { color: ACCENT2, width: 1.2 }
});
s.addText("⚠  DELAYED EXTUBATION INDICATIONS: Prolonged surgery, massive blood loss, cerebral oedema on closure, haemodynamic instability, GCS < pre-op baseline, bilateral posterior fossa surgery, brainstem involvement", {
  x: 0.35, y: 6.75, w: 12.5, h: 0.38,
  fontSize: 12, bold: true, color: ACCENT2, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 13 — SHUNT SURGERY (Hydrocephalus)
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Anesthesia for Hydrocephalus — Shunt Surgery & ETV", "Practical management");

infoCard(s, 0.25, 1.25, 3.9, 5.5, "VP SHUNT / REVISION",
  [
    "Most common hydrocephalus surgery",
    "Often infants / children (special considerations)",
    "Airway: LMA acceptable for non-obstructive hydro",
    "RSI if raised ICP / full stomach",
    "Monitor: temp (heat loss in infants), glucose",
    "Avoid volatile agents > 0.5 MAC",
    "Propofol + Remifentanil TIVA preferred",
    "Avoid succinylcholine (fasciculations → ↑ICP)",
    "Position: head turned away from shunt side",
    "Peritoneal end: watch for ↑intra-abdominal pressure"
  ], MID_BG, ACCENT);

infoCard(s, 4.4, 1.25, 3.9, 5.5, "ENDOSCOPIC 3RD VENTRICULOSTOMY (ETV)",
  [
    "Alternative to shunt; endoscope into ventricles",
    "Sudden CSF loss during fenestration → ↓BP (bradycardia)",
    "Autonomic instability — have atropine ready",
    "Irrigation fluid: warm Ringer's lactate",
    "Fluid absorption risk — monitor for hyponatraemia",
    "TIVA preferred (PROPOFOL based)",
    "Air embolism rare but possible — Doppler monitor",
    "Post-op: monitor for procedure failure",
    "Extubate awake with intact protective reflexes"
  ], MID_BG, ACCENT2);

infoCard(s, 8.55, 1.25, 4.3, 5.5, "NEONATAL & PAEDIATRIC PEARLS",
  [
    "Open fontanelle: ICP estimation by palpation",
    "'Sunset sign', irritability, poor feeding as signs",
    "Large head circumference measurement",
    "Gas induction acceptable if airway manageable",
    "Sevoflurane: agent of choice for paediatric induction",
    "Glucose monitoring essential (neonates)",
    "Normothermia: forced air warming vital",
    "Fluid: 0.9% NaCl preferred over hypotonic solutions",
    "Lower MAC values in neonates vs older children"
  ], MID_BG, ACCENT);

s.addText("KEY POINT: In obstructive hydrocephalus with high ICP — treat as FULL STOMACH + RAISED ICP = Modified RSI with ICP precautions", {
  x: 0.25, y: 6.85, w: 12.7, h: 0.38,
  fontSize: 13, bold: true, color: ACCENT2, fontFace: "Calibri"
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 14 — KEY TAKEAWAYS
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);
addStripe(s, ACCENT);
addHeaderBar(s, "Key Takeaways", "MD Anesthesia — High-Yield Points");

const takeaways = [
  ["Monroe-Kellie", "Brain 80% + Blood 12% + CSF 8% = fixed volume. Any ↑ must be compensated or ICP rises."],
  ["Normal ICP", "≤10 mmHg; target CPP > 60 mmHg; autoregulation MAP 50–150 mmHg."],
  ["CO₂ is King", "PaCO₂ is the most powerful CBF regulator. Hyperventilate only as temporizing measure (PaCO₂ 30–35)."],
  ["Agent Choice", "Propofol/Thiopentone/Etomidate ↓ICP. Ketamine ↑ICP (avoid). Sevoflurane < 0.5 MAC is safest volatile."],
  ["Induction", "Lidocaine + Fentanyl + Propofol/Thiopentone + NMB. Avoid hemodynamic swings. Head up 30°."],
  ["Osmotherapy", "Mannitol 0.25–1.5 g/kg bolus OR Hypertonic saline. Serum Osm target 300–320. Never prophylactic."],
  ["Steroids", "Dexamethasone for VASOGENIC oedema (tumour) ONLY. CONTRAINDICATED in TBI."],
  ["Extubation", "Only when awake, GCS at baseline, haemodynamically stable. Smooth emergence paramount."],
  ["Hydrocephalus", "RSI with ICP precautions if obstructive. ETV: watch bradycardia, fluid absorption, air embolism."],
  ["Monitoring", "Arterial line, ICP monitor, ETCO₂, BIS, temperature, hourly UO mandatory in all major neuro cases."],
];

takeaways.forEach(([kw, text], i) => {
  const col = i < 5 ? 0 : 1;
  const row = i % 5;
  const x = 0.25 + col * 6.45;
  const y = 1.25 + row * 1.05;
  s.addShape(pres.ShapeType.roundRect, {
    x, y, w: 6.2, h: 0.95, rectRadius: 0.08,
    fill: { color: i % 2 === 0 ? MID_BG : "12263A" },
    line: { color: ACCENT, width: 0.8 }
  });
  s.addText(kw + ":", {
    x: x + 0.12, y: y + 0.07, w: 1.6, h: 0.75,
    fontSize: 12, bold: true, color: ACCENT2, fontFace: "Calibri", valign: "middle"
  });
  s.addText(text, {
    x: x + 1.75, y: y + 0.07, w: 4.3, h: 0.75,
    fontSize: 12, color: LIGHT_GRY, fontFace: "Calibri", valign: "middle"
  });
});

// ═══════════════════════════════════════════════════════════════
//  SLIDE 15 — THANK YOU
// ═══════════════════════════════════════════════════════════════
s = pres.addSlide();
addBg(s);

s.addShape(pres.ShapeType.ellipse, {
  x: 4.5, y: 1.5, w: 4.3, h: 4.3,
  fill: { color: MID_BG }, line: { color: ACCENT, width: 2 }
});
s.addShape(pres.ShapeType.rect, {
  x: 0, y: 6.5, w: "100%", h: 0.08,
  fill: { color: ACCENT }, line: { type: "none" }
});

s.addText("THANK YOU", {
  x: 1, y: 2.45, w: 11.3, h: 1.1,
  fontSize: 54, bold: true, color: WHITE, fontFace: "Calibri",
  align: "center", charSpacing: 6
});
s.addText("Hydrocephalus & Raised ICP — Anesthesia Management", {
  x: 1, y: 3.6, w: 11.3, h: 0.6,
  fontSize: 20, color: ACCENT, fontFace: "Calibri",
  align: "center", italic: true
});
s.addText("Miller's Anesthesia 10e  •  Morgan & Mikhail 7e  •  Brain Trauma Foundation Guidelines", {
  x: 1, y: 6.6, w: 11.3, h: 0.4,
  fontSize: 12, color: SUBTEXT, fontFace: "Calibri", align: "center"
});

// ───────── WRITE FILE ──────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/hydrocephalus-icp-ppt/Hydrocephalus_RaisedICP_Anesthesia.pptx" })
  .then(() => console.log("PPT created successfully!"))
  .catch(e => { console.error(e); process.exit(1); });
Running Command

cd /home/daytona/workspace/hydrocephalus-icp-ppt && node build.js 2>&1

Running Command

ls -lh /home/daytona/workspace/hydrocephalus-icp-ppt/

You've run out of free credits. Sign up for a free account to continue using Orris.
This is a shared conversation. Sign in to Orris to start your own chat.