Makes notes for my surgery revision for neet pg it should contain all important information to complete my full surgery revision in 2 days plus I will be able to do all surgery question with easygoing like surgery on my finger tip make a pdf it should also have pyq frequently asked question important topic marked etc

Reading File
Finding Sources
Searching the Web

NEET PG surgery most frequently asked topics PYQ high yield 2024 2025

Finding Sources
Finding Sources
Finding Sources
Reading Web Page

https://www.diginerve.com/blogs/surgery-rapid-revision-neet-…

Finding Sources
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Now I have enough data to compile a comprehensive surgery PDF. Let me build it using the PDF skill.
Reading File
Running Command

mkdir -p /home/daytona/workspace/surgery-neet-pg && ls /home/daytona/workspace/

Show the pdf

The PDF wasn't actually generated in our previous session - the script was interrupted before it ran. Let me build it now.

Show the pdf

The PDF hasn't been created yet - let me generate it right now.
Running Command

mkdir -p /home/daytona/workspace/surgery-neet-pg && python3 -c "import reportlab; print('reportlab ok')"

Writing File

~/surgery-neet-pg/generate_surgery_pdf.py

#!/usr/bin/env python3
"""NEET PG Surgery Rapid Revision PDF Generator"""

from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import mm, cm
from reportlab.platypus import (
    SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
    HRFlowable, PageBreak, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import ListFlowable, ListItem

OUTPUT = "/home/daytona/workspace/surgery-neet-pg/NEET_PG_Surgery_Revision.pdf"

# ── Colour palette ──────────────────────────────────────────────────────────
C_NAVY   = colors.HexColor("#1a2e5a")
C_TEAL   = colors.HexColor("#0d7377")
C_ORANGE = colors.HexColor("#e07b3a")
C_RED    = colors.HexColor("#c0392b")
C_GREEN  = colors.HexColor("#1e8449")
C_YELLOW = colors.HexColor("#f4d03f")
C_LIGHT  = colors.HexColor("#eaf4fb")
C_LGREEN = colors.HexColor("#eafaf1")
C_LRED   = colors.HexColor("#fdf2f2")
C_LYELLOW= colors.HexColor("#fefde7")
C_LGREY  = colors.HexColor("#f8f9fa")
C_WHITE  = colors.white

# ── Styles ───────────────────────────────────────────────────────────────────
base = getSampleStyleSheet()

def S(name, parent="Normal", **kw):
    s = ParagraphStyle(name, parent=base[parent], **kw)
    return s

COVER_TITLE = S("CoverTitle", fontSize=32, textColor=C_WHITE,
                alignment=TA_CENTER, spaceAfter=6, fontName="Helvetica-Bold")
COVER_SUB   = S("CoverSub",   fontSize=16, textColor=C_YELLOW,
                alignment=TA_CENTER, spaceAfter=4, fontName="Helvetica-Bold")
COVER_INFO  = S("CoverInfo",  fontSize=11, textColor=C_WHITE,
                alignment=TA_CENTER, spaceAfter=3)

CH_TITLE = S("ChTitle", fontSize=20, textColor=C_WHITE,
             fontName="Helvetica-Bold", alignment=TA_LEFT,
             spaceAfter=4, spaceBefore=2)
CH_SUB   = S("ChSub",   fontSize=13, textColor=C_TEAL,
             fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=3)
CH_SUB2  = S("ChSub2",  fontSize=11, textColor=C_NAVY,
             fontName="Helvetica-Bold", spaceBefore=6, spaceAfter=2)

BODY     = S("Body",    fontSize=9.5, leading=14, spaceAfter=3, alignment=TA_JUSTIFY)
BULLET   = S("Bullet",  fontSize=9.5, leading=14, leftIndent=14, spaceAfter=2,
             bulletIndent=4)
PYQ_S    = S("PYQ",     fontSize=9,   textColor=C_NAVY, leading=13,
             leftIndent=8, fontName="Helvetica-Oblique")
IMP_S    = S("ImpBox",  fontSize=9,   textColor=C_RED,  leading=13,
             fontName="Helvetica-Bold", leftIndent=8)
TIP_S    = S("Tip",     fontSize=9,   textColor=C_GREEN, leading=13,
             leftIndent=8, fontName="Helvetica-Bold")
BOLD_S   = S("BoldS",   fontSize=9.5, fontName="Helvetica-Bold", leading=14)
TOC_S    = S("TOC",     fontSize=11,  leading=18, leftIndent=10)

def header_table(text, bg=C_NAVY, fg=C_WHITE, fontsize=16):
    """Full-width coloured header band."""
    st = ParagraphStyle("ht", fontSize=fontsize, textColor=fg,
                        fontName="Helvetica-Bold", alignment=TA_LEFT, leading=fontsize+4)
    t = Table([[Paragraph(text, st)]], colWidths=[170*mm])
    t.setStyle(TableStyle([
        ("BACKGROUND", (0,0), (-1,-1), bg),
        ("TOPPADDING",    (0,0), (-1,-1), 6),
        ("BOTTOMPADDING", (0,0), (-1,-1), 6),
        ("LEFTPADDING",   (0,0), (-1,-1), 10),
        ("RIGHTPADDING",  (0,0), (-1,-1), 6),
    ]))
    return t

def box_table(rows_data, bg=C_LIGHT, border_color=C_TEAL, col_widths=None):
    """Simple info box."""
    if col_widths is None:
        col_widths = [170*mm]
    t = Table(rows_data, colWidths=col_widths)
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), bg),
        ("BOX",           (0,0), (-1,-1), 1.5, border_color),
        ("TOPPADDING",    (0,0), (-1,-1), 5),
        ("BOTTOMPADDING", (0,0), (-1,-1), 5),
        ("LEFTPADDING",   (0,0), (-1,-1), 8),
        ("RIGHTPADDING",  (0,0), (-1,-1), 8),
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
    ]))
    return t

def pyq_box(questions):
    """Orange-bordered PYQ box."""
    rows = []
    rows.append([Paragraph("★ PYQ / FREQUENTLY ASKED", S("ph", fontSize=9,
                  fontName="Helvetica-Bold", textColor=C_ORANGE))])
    for q in questions:
        rows.append([Paragraph("• " + q, PYQ_S)])
    t = Table(rows, colWidths=[170*mm])
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), C_LYELLOW),
        ("BOX",           (0,0), (-1,-1), 2,   C_ORANGE),
        ("LINEBELOW",     (0,0), (0,0),   0.5, C_ORANGE),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 8),
        ("RIGHTPADDING",  (0,0), (-1,-1), 8),
    ]))
    return t

def imp_box(points):
    """Red high-importance box."""
    rows = [[Paragraph("🔴 HIGH YIELD / REMEMBER", S("rh", fontSize=9,
              fontName="Helvetica-Bold", textColor=C_RED))]]
    for p in points:
        rows.append([Paragraph("► " + p, IMP_S)])
    t = Table(rows, colWidths=[170*mm])
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), C_LRED),
        ("BOX",           (0,0), (-1,-1), 2,   C_RED),
        ("LINEBELOW",     (0,0), (0,0),   0.5, C_RED),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 8),
        ("RIGHTPADDING",  (0,0), (-1,-1), 8),
    ]))
    return t

def tip_box(points):
    """Green mnemonic/tip box."""
    rows = [[Paragraph("💡 MNEMONIC / TIP", S("gh", fontSize=9,
              fontName="Helvetica-Bold", textColor=C_GREEN))]]
    for p in points:
        rows.append([Paragraph("✓ " + p, TIP_S)])
    t = Table(rows, colWidths=[170*mm])
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), C_LGREEN),
        ("BOX",           (0,0), (-1,-1), 2,   C_GREEN),
        ("LINEBELOW",     (0,0), (0,0),   0.5, C_GREEN),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 8),
        ("RIGHTPADDING",  (0,0), (-1,-1), 8),
    ]))
    return t

def two_col_table(left_data, right_data, header_left="", header_right=""):
    """Two-column comparison table."""
    col_w = [83*mm, 83*mm]
    rows = []
    if header_left or header_right:
        hs = S("th", fontSize=9, fontName="Helvetica-Bold",
               textColor=C_WHITE, alignment=TA_CENTER)
        rows.append([Paragraph(header_left, hs), Paragraph(header_right, hs)])
    max_len = max(len(left_data), len(right_data))
    for i in range(max_len):
        l = Paragraph("• " + left_data[i],  BULLET) if i < len(left_data)  else Paragraph("", BODY)
        r = Paragraph("• " + right_data[i], BULLET) if i < len(right_data) else Paragraph("", BODY)
        rows.append([l, r])
    style = [
        ("BACKGROUND",    (0,0), (-1,-1), C_LGREY),
        ("BOX",           (0,0), (-1,-1), 1, C_TEAL),
        ("INNERGRID",     (0,0), (-1,-1), 0.5, colors.HexColor("#b0bec5")),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 6),
        ("RIGHTPADDING",  (0,0), (-1,-1), 6),
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
    ]
    if header_left or header_right:
        style += [("BACKGROUND", (0,0), (1,0), C_NAVY),
                  ("FONTNAME",   (0,0), (1,0), "Helvetica-Bold")]
    t = Table(rows, colWidths=col_w)
    t.setStyle(TableStyle(style))
    return t

def data_table(header_row, data_rows, col_widths=None):
    """Generic data table with header."""
    if col_widths is None:
        n = len(header_row)
        col_widths = [170*mm/n]*n
    hs = S("dth", fontSize=9, fontName="Helvetica-Bold", textColor=C_WHITE, alignment=TA_CENTER)
    rows = [[Paragraph(h, hs) for h in header_row]]
    bs = S("dtr", fontSize=9, leading=13)
    for row in data_rows:
        rows.append([Paragraph(str(c), bs) for c in row])
    style = [
        ("BACKGROUND",    (0,0), (-1,0),  C_NAVY),
        ("BACKGROUND",    (0,1), (-1,-1), C_LGREY),
        ("ROWBACKGROUNDS",(0,1), (-1,-1), [C_WHITE, C_LGREY]),
        ("BOX",           (0,0), (-1,-1), 1,   C_NAVY),
        ("INNERGRID",     (0,0), (-1,-1), 0.5, colors.HexColor("#b0bec5")),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 6),
        ("RIGHTPADDING",  (0,0), (-1,-1), 6),
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
    ]
    t = Table(rows, colWidths=col_widths)
    t.setStyle(TableStyle(style))
    return t

sp  = lambda h=6: Spacer(1, h)
hr  = lambda: HRFlowable(width="100%", thickness=0.5, color=C_TEAL, spaceAfter=4, spaceBefore=4)

# ════════════════════════════════════════════════════════════════════════════
# CONTENT BUILDER
# ════════════════════════════════════════════════════════════════════════════
def build_story():
    story = []

    # ── COVER PAGE ────────────────────────────────────────────────────────
    cover_bg = Table(
        [[Paragraph("NEET PG", COVER_TITLE)],
         [Paragraph("SURGERY", S("cs2", fontSize=44, textColor=C_YELLOW,
                                  fontName="Helvetica-Bold", alignment=TA_CENTER))],
         [Paragraph("RAPID REVISION NOTES", COVER_SUB)],
         [sp(8)],
         [Paragraph("2-Day Complete Surgery Revision", COVER_INFO)],
         [Paragraph("High-Yield • PYQs • Mnemonics • Clinical Algorithms", COVER_INFO)],
         [sp(4)],
         [Paragraph("Topics: General Surgery • Trauma • GI • Hepatobiliary • Breast • Thyroid •", COVER_INFO)],
         [Paragraph("Hernia • Urology • Burns • Vascular • Paediatric Surgery • Oncology", COVER_INFO)],
         [sp(20)],
         [Paragraph("Prepared for NEET PG / INI-CET / FMGE  |  July 2026", COVER_INFO)],
        ],
        colWidths=[190*mm]
    )
    cover_bg.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), C_NAVY),
        ("TOPPADDING",    (0,0), (-1,-1), 12),
        ("BOTTOMPADDING", (0,0), (-1,-1), 12),
        ("LEFTPADDING",   (0,0), (-1,-1), 20),
        ("RIGHTPADDING",  (0,0), (-1,-1), 20),
    ]))
    story.append(cover_bg)
    story.append(PageBreak())

    # ── TABLE OF CONTENTS ─────────────────────────────────────────────────
    story.append(header_table("  TABLE OF CONTENTS", C_TEAL))
    story.append(sp(6))
    toc_items = [
        ("1", "General Surgery Principles", "Wound Healing • Shock • Fluids • Sterilisation • Sutures"),
        ("2", "Trauma & Emergency Surgery", "ATLS • Burns • Head Injury • Abdominal Trauma"),
        ("3", "Gastrointestinal Surgery", "Appendicitis • Peptic Ulcer • Intestinal Obstruction • GI Cancers"),
        ("4", "Hepatobiliary & Pancreas", "Gallstones • Pancreatitis • Liver Abscess • Jaundice"),
        ("5", "Breast Surgery",            "Breast Lumps • Carcinoma • Staging • Operations"),
        ("6", "Thyroid & Parathyroid",      "Goitre • Carcinoma • Hyperthyroidism • Parathyroid"),
        ("7", "Hernia",                     "Inguinal • Femoral • Special Hernias • Complications"),
        ("8", "Urology",                    "Renal Stones • BPH • Bladder CA • Testicular Torsion"),
        ("9", "Vascular Surgery",           "AAA • DVT • Varicose Veins • Peripheral Vascular Disease"),
        ("10","Paediatric Surgery",         "Pyloric Stenosis • Intussusception • Hirschsprung • CDH"),
        ("11","Surgical Oncology",          "Staging • TNM • Tumour Markers • Biopsy Types"),
        ("12","Surgical Instruments & Procedures", "Key Instruments • Drains • Anastomosis • Laparoscopy"),
    ]
    for num, title, subtopics in toc_items:
        row = [[Paragraph(f"<b>{num}.</b>  <b>{title}</b>", TOC_S),
                Paragraph(f"<i>{subtopics}</i>", S("ts", fontSize=9, textColor=colors.grey, leading=14))]]
        t = Table(row, colWidths=[65*mm, 105*mm])
        t.setStyle(TableStyle([
            ("TOPPADDING",    (0,0), (-1,-1), 3),
            ("BOTTOMPADDING", (0,0), (-1,-1), 3),
            ("LEFTPADDING",   (0,0), (-1,-1), 4),
            ("LINEBELOW",     (0,0), (-1,-1), 0.3, colors.HexColor("#cfd8dc")),
        ]))
        story.append(t)
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 1 - GENERAL SURGERY PRINCIPLES
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 1 - GENERAL SURGERY PRINCIPLES"))
    story.append(sp(8))

    story.append(Paragraph("1.1  WOUND HEALING", CH_SUB))
    story.append(data_table(
        ["Type", "Definition", "Examples", "Healing Time"],
        [
            ["Primary (1st) Intention", "Clean wound closed within 6-8 hrs; edges approximated", "Surgical incisions, sutured lacerations", "7-10 days"],
            ["Secondary (2nd) Intention", "Wound left open; heals by granulation, contraction, epithelialisation", "Infected wounds, ulcers, abscesses", "Weeks-months"],
            ["Tertiary (3rd) Intention\n(Delayed 1st)", "Wound initially left open; closed later after infection controlled", "Contaminated wounds", "Variable"],
        ],
        col_widths=[38*mm, 48*mm, 52*mm, 30*mm]
    ))
    story.append(sp(6))
    story.append(Paragraph("Phases of Wound Healing", CH_SUB2))
    story.append(data_table(
        ["Phase", "Timing", "Key Events", "Cells Involved"],
        [
            ["Haemostasis", "Immediate (0-hrs)", "Vasoconstriction, platelet plug, clot formation, fibrin mesh", "Platelets"],
            ["Inflammation", "Day 1-4", "Vasodilation, WBC migration, phagocytosis, debridement", "Neutrophils (1st 48h), then Macrophages"],
            ["Proliferation", "Day 4 - 3 weeks", "Fibroblast migration, collagen synthesis (Type III first), angiogenesis, granulation tissue", "Fibroblasts, Endothelial cells"],
            ["Remodelling/Maturation", "3 wks - 2 yrs", "Type III collagen replaced by Type I, wound contracts, scar matures. Max tensile strength 80% at 3 months", "Myofibroblasts"],
        ],
        col_widths=[36*mm, 28*mm, 72*mm, 34*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Collagen TYPE III produced first in granulation tissue -> replaced by Type I in remodelling",
        "Max wound tensile strength = 80% of normal (never 100%) - reached at ~3 months",
        "MACROPHAGES are the most important cells for wound healing overall",
        "Neutrophils dominate in first 48 hours; Macrophages take over after 48-72 hours",
        "Vitamin C deficiency -> poor collagen synthesis -> wound dehiscence (scurvy)",
        "Zinc deficiency -> impaired wound healing; Zinc is cofactor for DNA polymerase",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Which type of collagen is first synthesised during wound healing? Ans: Type III (later replaced by Type I)",
        "Q: Maximum tensile strength of a healed wound is? Ans: 80% of original tissue strength",
        "Q: Most important cell in wound healing? Ans: Macrophage",
        "Q: Which vitamin is essential for collagen cross-linking in wound healing? Ans: Vitamin C (ascorbic acid)",
        "Q: Wound contraction is mediated by? Ans: Myofibroblasts",
    ]))
    story.append(sp(6))

    story.append(Paragraph("1.2  SHOCK", CH_SUB))
    story.append(data_table(
        ["Class", "Blood Loss", "% Blood Vol", "HR", "BP", "RR", "Urine Output", "Mental Status"],
        [
            ["Class I",   "<750 mL",    "<15%",  "<100", "Normal",   "14-20", ">30 mL/hr",  "Normal/anxious"],
            ["Class II",  "750-1500",   "15-30%", "100-120","Normal","20-30", "20-30 mL/hr","Anxious"],
            ["Class III", "1500-2000",  "30-40%", "120-140","Decreased","30-40","5-15 mL/hr","Confused"],
            ["Class IV",  ">2000 mL",   ">40%",   ">140",  "Very low","  >35", "<5 mL/hr",  "Lethargic/comatose"],
        ],
        col_widths=[18*mm,22*mm,18*mm,18*mm,22*mm,16*mm,22*mm,32*mm]
    ))
    story.append(sp(4))
    story.append(tip_box([
        "MNEMONIC for Shock Types: H-D-N-S = Hypovolaemic, Distributive (Septic/Anaphylactic/Neurogenic), Neurogenic, Spinal",
        "Obstructive shock: Tension pneumothorax, cardiac tamponade, massive PE",
        "Neurogenic shock: Bradycardia + Hypotension (unlike other shock types with tachycardia)",
        "First line for hypovolaemic shock: IV crystalloid (Ringer's Lactate) - 2 large bore cannulae",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Neurogenic shock is characterised by? Ans: Bradycardia + hypotension (warm peripheries)",
        "Q: Best initial fluid for haemorrhagic shock? Ans: Ringer's Lactate (Hartmann's solution)",
        "Q: Urine output of <0.5 mL/kg/hr indicates? Ans: Inadequate tissue perfusion / shock",
        "Q: Beck's triad in cardiac tamponade? Ans: Hypotension, JVD (raised JVP), muffled heart sounds",
    ]))
    story.append(PageBreak())

    story.append(Paragraph("1.3  SURGICAL SITE INFECTION (SSI) & WOUND CLASSIFICATION", CH_SUB))
    story.append(data_table(
        ["Wound Class", "Definition", "Infection Risk"],
        [
            ["Class I - Clean",           "Elective, no GI/GU/Respiratory tract entered, no inflammation", "1-5%"],
            ["Class II - Clean-Contaminated", "GI/GU/Respiratory entered under controlled conditions", "5-15%"],
            ["Class III - Contaminated",  "Open fresh traumatic wound, gross spillage from GI tract", "15-30%"],
            ["Class IV - Dirty/Infected", "Old traumatic wound, perforated viscus, clinical infection present", ">30%"],
        ],
        col_widths=[52*mm, 88*mm, 28*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Appendicectomy for non-perforated appendicitis = which wound class? Ans: Class II (Clean-Contaminated)",
        "Q: Elective cholecystectomy wound class? Ans: Class II",
        "Q: Prophylactic antibiotic for clean surgery? Ans: Not required routinely (Class I)",
        "Q: Most common organism in SSI? Ans: Staphylococcus aureus",
    ]))

    story.append(Paragraph("1.4  SUTURES & SURGICAL MATERIALS", CH_SUB))
    story.append(data_table(
        ["Suture", "Type", "Uses", "Absorption"],
        [
            ["Catgut (Plain)",    "Absorbable, natural",    "Mucosa, ligation",              "10-14 days"],
            ["Chromic Catgut",    "Absorbable, natural",    "GI, GU tracts",                 "21-28 days"],
            ["Vicryl (Polyglactin)", "Absorbable, synthetic","Fascial closure, subcutaneous","56-70 days"],
            ["PDS (Polydioxanone)","Absorbable, synthetic", "Abdominal wall, tendon repair", "180+ days"],
            ["Prolene (Polypropylene)","Non-absorbable, synthetic","Vascular anastomosis, hernia","Permanent"],
            ["Nylon (Ethilon)",   "Non-absorbable, synthetic","Skin closure, tendons",       "Permanent"],
            ["Silk",              "Non-absorbable, natural","Ligation, skin",                "Permanent (but degrades)"],
        ],
        col_widths=[42*mm, 40*mm, 55*mm, 31*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Strongest suture per diameter: Prolene > Nylon > Silk",
        "Best suture for vascular anastomosis: Prolene (monofilament, non-thrombogenic)",
        "Absorbable suture NOT to use in infected field: Catgut (rapid degradation)",
        "DELAYED ABSORBABLE sutures (PDS, Maxon) preferred for abdominal wall closure",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 2 - TRAUMA & BURNS
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 2 - TRAUMA & EMERGENCY SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("2.1  BURNS", CH_SUB))
    story.append(Paragraph("Rule of Nines (Wallace's Rule) - Adult", CH_SUB2))
    story.append(data_table(
        ["Body Region", "% TBSA", "Notes"],
        [
            ["Head + Neck",    "9%",   "Head 7% + Neck 2%"],
            ["Each Upper Limb","9% each (18% total)", "Arm 4% + Forearm 3% + Hand 2%"],
            ["Anterior Trunk", "18%",  "Chest 9% + Abdomen 9%"],
            ["Posterior Trunk","18%",  "Upper back 9% + Lower back 9%"],
            ["Each Lower Limb","18% each (36% total)","Thigh 9% + Leg 6% + Foot 3%"],
            ["Perineum/Genitalia","1%",""],
            ["TOTAL",          "100%", ""],
        ],
        col_widths=[55*mm, 60*mm, 55*mm]
    ))
    story.append(sp(4))
    story.append(tip_box([
        "Lund & Browder Chart: MORE ACCURATE than Rule of Nines, especially in CHILDREN",
        "Palmar method: Patient's palm (fingers included) = 1% TBSA - useful for patchy burns",
        "CHILDREN: Head proportionally larger (18% at birth) -> Berkow formula / Lund-Browder",
    ]))
    story.append(sp(4))
    story.append(Paragraph("Burns Depth Classification", CH_SUB2))
    story.append(data_table(
        ["Degree", "Depth", "Appearance", "Sensation", "Healing", "Treatment"],
        [
            ["1st Degree\n(Superficial)", "Epidermis only", "Red, dry, no blisters", "Painful", "3-5 days", "Conservative"],
            ["2nd Degree Superficial\n(Partial thickness)", "Epidermis + Superficial dermis", "Blisters, moist, pink", "Very painful", "14-21 days", "Dressings"],
            ["2nd Degree Deep\n(Deep partial thickness)", "Epidermis + Deep dermis", "Pale/mottled, less moist", "Reduced pain", "21-35 days, may need graft", "Grafting"],
            ["3rd Degree\n(Full thickness)", "All skin layers", "White/charred/leathery", "Painless", "No self-healing", "Excision + Grafting"],
            ["4th Degree", "Skin + subcutaneous tissue, muscle, bone", "Charred, eschar", "Painless", "Amputation/major reconstruction", "Surgical"],
        ],
        col_widths=[30*mm, 32*mm, 32*mm, 24*mm, 28*mm, 24*mm]
    ))
    story.append(sp(4))
    story.append(Paragraph("Fluid Resuscitation in Burns", CH_SUB2))
    story.append(box_table([
        [Paragraph("<b>Parkland Formula (Most used in India/NEET PG):</b>", BOLD_S)],
        [Paragraph("Total fluid in 24 hrs = 4 mL x Weight (kg) x % TBSA burn (2nd + 3rd degree only)", BODY)],
        [Paragraph("• Give HALF in first 8 hours (from time of burn, not from hospital arrival)", BODY)],
        [Paragraph("• Give REMAINING HALF over next 16 hours", BODY)],
        [Paragraph("• Fluid: Ringer's Lactate (Hartmann's solution)", BODY)],
        [Paragraph("<b>Muir & Barclay Formula:</b> (UK/older)", BOLD_S)],
        [Paragraph("= Weight (kg) x % TBSA / 2 = per period (6 periods: 4h, 4h, 4h, 6h, 6h, 12h)", BODY)],
        [Paragraph("• Fluid: Colloid (Human Albumin Solution / FFP)", BODY)],
    ]))
    story.append(sp(4))
    story.append(imp_box([
        "Parkland formula - fluid: Ringer's Lactate; Muir-Barclay formula - fluid: Colloid",
        "Children: Add maintenance fluid (dextrose saline) to Parkland formula",
        "Target urine output: Adult = 0.5-1 mL/kg/hr; Children = 1 mL/kg/hr",
        "Burns >15% TBSA in adults / >10% in children = MAJOR BURN requiring IV resuscitation",
        "Smoke inhalation injury = strong indication for early intubation",
        "Circumferential full-thickness burns -> ESCHAROTOMY to prevent compartment syndrome",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Parkland formula for burn resuscitation? Ans: 4 mL x kg x % TBSA; half in first 8 hrs, RL solution",
        "Q: Rule of nines - TBSA of lower limb in adult? Ans: 18% each (9% thigh + 9% leg/foot)",
        "Q: Most accurate method for calculating burns in children? Ans: Lund and Browder Chart",
        "Q: Which type of burn is PAINLESS? Ans: Full thickness (3rd degree) - nerve endings destroyed",
        "Q: Earliest sign of adequate fluid resuscitation in burns? Ans: Adequate urine output (0.5 mL/kg/hr)",
        "Q: Escharotomy is done for? Ans: Circumferential full-thickness burns - to prevent compartment syndrome",
    ]))
    story.append(PageBreak())

    story.append(Paragraph("2.2  ATLS PRIMARY SURVEY (ABCDE)", CH_SUB))
    story.append(data_table(
        ["Step", "Stands For", "Action", "Key Points"],
        [
            ["A", "Airway + C-spine", "Clear airway, chin lift/jaw thrust, C-spine immobilisation", "Assume C-spine injury in all blunt trauma until proven otherwise"],
            ["B", "Breathing + Ventilation", "Look-listen-feel, O2, treat pneumothorax", "Life threats: Tension PTX, Open PTX, Haemothorax, Flail chest"],
            ["C", "Circulation + Haemorrhage", "2 large bore IVs, fluid resuscitation, control external bleeding", "FAST exam, pelvic binder if pelvic fracture"],
            ["D", "Disability (Neuro)", "GCS, pupils, glucose, AVPU scale", "GCS <8 -> intubate; unilateral dilated pupil = herniation"],
            ["E", "Exposure + Environment", "Undress patient, prevent hypothermia", "Log roll, check back and perineum"],
        ],
        col_widths=[12*mm, 38*mm, 62*mm, 58*mm]
    ))
    story.append(sp(4))
    story.append(Paragraph("2.3  TENSION PNEUMOTHORAX vs CARDIAC TAMPONADE", CH_SUB))
    story.append(two_col_table(
        ["Tracheal deviation AWAY from affected side",
         "Absent breath sounds on affected side",
         "Hypotension + tachycardia",
         "JVP raised",
         "Treatment: Immediate needle decompression (2nd ICS MCL), then chest drain"],
        ["Tracheal deviation - midline (no deviation)",
         "Heart sounds muffled",
         "Hypotension + tachycardia",
         "JVP raised (Beck's triad)",
         "Treatment: Pericardiocentesis (emergent), pericardial window"],
        "Tension Pneumothorax", "Cardiac Tamponade"
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Triad of cardiac tamponade (Beck's triad)? Ans: Hypotension, raised JVP, muffled heart sounds",
        "Q: Kussmaul's sign is seen in? Ans: Cardiac tamponade (JVP rises on inspiration)",
        "Q: Treatment of tension pneumothorax? Ans: Immediate needle decompression - 2nd ICS midclavicular line",
        "Q: Most common cause of haemothorax in trauma? Ans: Intercostal vessel injury",
        "Q: Flail chest definition? Ans: 3+ consecutive ribs fractured at 2+ sites each - paradoxical movement",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 3 - GI SURGERY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 3 - GASTROINTESTINAL SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("3.1  ACUTE APPENDICITIS", CH_SUB))
    story.append(box_table([
        [Paragraph("<b>Classic Presentation:</b> Central colicky pain -> shifting to RIF (McBurney's point) + fever + nausea/vomiting", BODY)],
        [Paragraph("<b>McBurney's Point:</b> Junction of lateral 1/3 and medial 2/3 of line joining ASIS to umbilicus", BODY)],
        [Paragraph("<b>Rovsing's Sign:</b> Pressure on LIF causes pain in RIF (peritoneal irritation)", BODY)],
        [Paragraph("<b>Psoas Sign:</b> Pain on extending right hip (retrocaecal appendix)", BODY)],
        [Paragraph("<b>Obturator Sign:</b> Pain on internal rotation of flexed right hip (pelvic appendix)", BODY)],
    ], bg=C_LIGHT))
    story.append(sp(4))
    story.append(Paragraph("Alvarado Score (MANTRELS)", CH_SUB2))
    story.append(data_table(
        ["Criterion", "Score"],
        [
            ["Migration of pain to RIF", "1"],
            ["Anorexia", "1"],
            ["Nausea/Vomiting", "1"],
            ["Tenderness in RIF", "2"],
            ["Rebound tenderness", "1"],
            ["Elevated temperature (>37.3°C)", "1"],
            ["Leukocytosis (WBC >10,000)", "2"],
            ["Shift to left (neutrophilia)", "1"],
            ["TOTAL", "10"],
        ],
        col_widths=[130*mm, 38*mm]
    ))
    story.append(sp(4))
    story.append(tip_box([
        "MANTRELS mnemonic: Migration, Anorexia, Nausea, Tenderness RIF, Rebound, Elevated Temp, Leukocytosis, Shift left",
        "Score 7-10 = High probability -> Surgery; Score 5-6 = Observe; Score <5 = Low probability",
        "Score of 2 each for: RIF Tenderness + Leukocytosis (highest weighted criteria)",
    ]))
    story.append(sp(4))
    story.append(imp_box([
        "Best investigation for appendicitis: CT scan (most accurate 94-98% sensitivity)",
        "Preferred in children/pregnancy: Ultrasound first (no radiation), then MRI",
        "Position of appendix most common: Retrocaecal (65%)",
        "Pelvic appendix -> Dysuria, frequency (mimics UTI)",
        "Perforation risk increases dramatically after 24-36 hours",
        "Laparoscopic appendicectomy = gold standard (less infection, faster recovery)",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common position of appendix? Ans: Retrocaecal (65%)",
        "Q: Best investigation for appendicitis? Ans: CT scan (most accurate); USG first in children/pregnant",
        "Q: Alvarado score of 7-10 indicates? Ans: High probability appendicitis - proceed to surgery",
        "Q: Rovsing's sign is? Ans: Pressure on LIF causes pain in RIF",
        "Q: Appendicectomy incision? Ans: Grid-iron incision (Lanz incision for cosmesis)",
    ]))
    story.append(sp(6))

    story.append(Paragraph("3.2  INTESTINAL OBSTRUCTION", CH_SUB))
    story.append(two_col_table(
        ["Most common cause adult small bowel: Adhesions (post-op)",
         "Most common cause large bowel: Carcinoma",
         "Features: Colicky pain, vomiting, distension, constipation",
         "High obstruction: Vomiting early, distension mild",
         "Low obstruction: Vomiting late/feculent, distension marked",
         "X-ray: Dilated loops, air-fluid levels, step-ladder pattern",
         "Small bowel: Valvulae conniventes (cross whole width)",
         "Large bowel: Haustra (partial width)",
         "Treatment: NBM, NGT, IV fluids, then surgery if needed"],
        ["Strangulation signs: Continuous pain (not colicky), fever, peritonism",
         "Closed loop obstruction: Most dangerous - rapid vascular compromise",
         "Volvulus: Sigmoid (most common) or Caecal",
         "Sigmoid volvulus X-ray: Coffee bean/bent inner tube sign",
         "Caecal volvulus X-ray: Kidney bean sign",
         "Intussusception: Children 6mo-2yr, currant jelly stools",
         "Richter's hernia: Knuckle of bowel - no complete obstruction",
         "Gallstone ileus: Air in biliary tree (pneumobilia)",
         "Ogilvie's syndrome: Pseudo-obstruction of colon (no mechanical cause)"],
        "Mechanical Obstruction Features", "Important Subtypes"
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common cause of small bowel obstruction in adults? Ans: Adhesions (post-operative)",
        "Q: Most common cause of large bowel obstruction? Ans: Carcinoma of colon",
        "Q: Currant jelly stools in a child suggests? Ans: Intussusception",
        "Q: Coffee bean sign on X-ray? Ans: Sigmoid volvulus",
        "Q: Gallstone ileus - pathognomonic finding on X-ray? Ans: Air in biliary tree (pneumobilia / Rigler's triad)",
        "Q: Intussusception treatment in children? Ans: Air/hydrostatic enema reduction (first line); Surgery if failed/peritonitis",
    ]))
    story.append(PageBreak())

    story.append(Paragraph("3.3  PEPTIC ULCER DISEASE", CH_SUB))
    story.append(two_col_table(
        ["DU: Pain relieved by food (Hunger pain)",
         "DU: Hypersecretory state",
         "DU: More common (4x than GU)",
         "DU: Posterior DU -> bleeds from Gastroduodenal artery",
         "DU: Anterior DU -> perforates (peritonitis)",
         "DU: H. pylori in 95-100%",
         "DU: Rarely malignant"],
        ["GU: Pain WORSENED by food (Fear of food)",
         "GU: Normal/hypo secretory state",
         "GU: Less common, but ALWAYS exclude malignancy",
         "GU: Posterior GU -> bleeds from Left Gastric artery",
         "GU: Lesser curve most common site",
         "GU: H. pylori in 70-80%",
         "GU: 5% risk of malignancy - always biopsy"],
        "Duodenal Ulcer (DU)", "Gastric Ulcer (GU)"
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Artery eroded in bleeding posterior DU? Ans: Gastroduodenal artery",
        "Q: Artery eroded in bleeding lesser curve GU? Ans: Left gastric artery",
        "Q: Most common complication of peptic ulcer? Ans: Bleeding (haemorrhage)",
        "Q: Most common site of perforation in PUD? Ans: Anterior wall of first part of duodenum",
        "Q: H. pylori eradication regimen (Triple therapy)? Ans: PPI + Amoxicillin + Clarithromycin x 7-14 days",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 4 - HEPATOBILIARY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 4 - HEPATOBILIARY & PANCREATIC SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("4.1  GALLSTONES (CHOLELITHIASIS)", CH_SUB))
    story.append(data_table(
        ["Type", "Composition", "Association", "X-ray Visible?"],
        [
            ["Cholesterol stones", "Cholesterol >50%", "Obesity, OCP, Pregnancy, Female, 40yr (5 F's)", "No (80% radiolucent)"],
            ["Pigment - Black stones", "Calcium bilirubinate", "Haemolytic anaemia, Cirrhosis", "Yes (radio-opaque)"],
            ["Pigment - Brown stones", "Calcium bilirubinate + fatty acids", "Bacterial/parasitic infection, bile stasis", "Partially"],
            ["Mixed stones", "Cholesterol + Pigment", "Most common type (80%)", "Variable"],
        ],
        col_widths=[40*mm, 42*mm, 56*mm, 32*mm]
    ))
    story.append(sp(4))
    story.append(tip_box([
        "5 F's of cholesterol gallstones: Fat, Female, Fertile, Forty, Fair (Caucasian)",
        "Charcot's triad of cholangitis: Fever + Jaundice + RUQ Pain",
        "Reynold's pentad: Charcot's triad + Hypotension + Confusion (severe cholangitis/sepsis)",
        "Courvoisier's Law: Palpable GB + painless jaundice = NOT gallstones (= periampullary malignancy)",
        "Murphy's sign: Cessation of inspiration on deep palpation of RUQ (acute cholecystitis)",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Charcot's triad of cholangitis? Ans: Fever, Jaundice, RUQ Pain",
        "Q: Courvoisier's law? Ans: Palpable GB + painless jaundice usually NOT due to stones (implies malignancy)",
        "Q: Best investigation for gallstones? Ans: Ultrasound (USG) - gold standard",
        "Q: Treatment of choice for symptomatic gallstones? Ans: Laparoscopic cholecystectomy",
        "Q: ERCP is done for? Ans: Common bile duct stones (CBD stones), before/after cholecystectomy",
        "Q: Mirizzi syndrome? Ans: External compression of CHD by stone in cystic duct/Hartmann's pouch -> jaundice",
    ]))
    story.append(sp(6))

    story.append(Paragraph("4.2  ACUTE PANCREATITIS", CH_SUB))
    story.append(box_table([
        [Paragraph("<b>Common causes (GET SMASHED):</b> Gallstones (40%), Ethanol (35%), Trauma, Steroids, Mumps/Autoimmune, Scorpion/Spider venom, Hyperlipidaemia/Hypercalcaemia, ERCP/Emboli, Drugs (azathioprine, thiazides)", BODY)],
    ], bg=C_LYELLOW, border_color=C_ORANGE))
    story.append(sp(4))
    story.append(Paragraph("Ranson's Criteria (prognostic scoring)", CH_SUB2))
    story.append(data_table(
        ["At Admission", "At 48 Hours"],
        [
            ["Age >55 years", "Haematocrit fall >10%"],
            ["WBC >16,000/mm3", "BUN rise >5 mg/dL"],
            ["Blood glucose >200 mg/dL", "Serum Ca <8 mg/dL"],
            ["LDH >350 IU/L", "PaO2 <60 mmHg"],
            ["AST >250 IU/L", "Base deficit >4 mEq/L"],
            ["", "Fluid sequestration >6 L"],
        ],
        col_widths=[85*mm, 85*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Ranson score: <3 = mild; 3-5 = moderate; >5 = severe (>6 = near 100% mortality)",
        "Best imaging for pancreatitis complications: CT scan (CECT abdomen)",
        "CT Severity Index (Balthazar score): Grade A-E based on CT findings",
        "Cullen's sign: Periumbilical bruising (haemorrhagic pancreatitis - retroperitoneal bleed)",
        "Grey-Turner's sign: Flank bruising (same significance)",
        "Amylase vs Lipase: Lipase is MORE SPECIFIC for acute pancreatitis",
        "Pancreatic necrosis + infection -> Infected necrotising pancreatitis -> Surgery / Drainage",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common cause of acute pancreatitis in India? Ans: Gallstones",
        "Q: Most specific enzyme for pancreatitis? Ans: Lipase (more specific than amylase)",
        "Q: Cullen's sign is seen in? Ans: Haemorrhagic pancreatitis (periumbilical bruising)",
        "Q: Ranson score >5 suggests? Ans: Severe pancreatitis with high mortality",
        "Q: Most common complication of acute pancreatitis? Ans: Pancreatic pseudocyst",
        "Q: Pseudocyst management if >6cm and persistent >6wks? Ans: Internal drainage (cystogastrostomy)",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 5 - BREAST SURGERY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 5 - BREAST SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("5.1  BREAST LUMPS - DIFFERENTIAL DIAGNOSIS", CH_SUB))
    story.append(data_table(
        ["Condition", "Age", "Features", "Consistency"],
        [
            ["Fibroadenoma", "15-30 yrs", "'Breast mouse' - mobile, smooth, well-defined, non-tender, no skin changes", "Firm, rubbery"],
            ["Fibrocystic disease\n(ANDI)", "30-50 yrs", "Cyclical pain/tenderness, multiple lumps, worse pre-menstrual, bilateral", "Nodular"],
            ["Breast Cyst",   "35-55 yrs", "Smooth, well-defined, tense, transilluminates, aspirated", "Cystic/firm"],
            ["Carcinoma",     ">40 yrs",   "Hard, irregular, poorly defined, skin tethering, nipple retraction, LN involved", "Hard, stony"],
            ["Abscess/Mastitis", "Lactating women", "Red, hot, tender, fluctuant, fever, WBC raised", "Fluctuant"],
            ["Fat Necrosis",  "Any age (trauma)", "History of trauma, hard lump, skin retraction - mimics CA", "Hard"],
        ],
        col_widths=[38*mm, 26*mm, 72*mm, 32*mm]
    ))
    story.append(sp(4))
    story.append(Paragraph("5.2  BREAST CARCINOMA", CH_SUB))
    story.append(imp_box([
        "Most common breast cancer histological type: Invasive Ductal Carcinoma (IDC) - 75-80%",
        "Most common site: Upper outer quadrant (50%)",
        "Inflammatory breast cancer: Peau d'orange skin (dermal lymphatic invasion), worst prognosis",
        "BRCA1 mutation: Breast + Ovarian cancer risk; BRCA2: Breast + Pancreatic/Prostate cancer",
        "Triple assessment for breast lump: Clinical examination + Imaging (USG/Mammography) + FNAC/Biopsy",
        "Sentinel lymph node biopsy: First node to drain tumour - if negative, avoids axillary dissection",
    ]))
    story.append(sp(4))
    story.append(Paragraph("Breast Cancer Staging (TNM Summary)", CH_SUB2))
    story.append(data_table(
        ["Stage", "TNM", "Features", "5-yr Survival"],
        [
            ["Stage I",   "T1, N0, M0", "Tumour <2cm, no node involvement, no mets", "~95%"],
            ["Stage IIA", "T0-2, N1, M0 or T2N0", "Mobile ipsilateral axillary nodes or T2 no nodes", "~85%"],
            ["Stage IIB", "T2N1 or T3N0", "T2 + mobile nodes, or T3 no nodes", "~70%"],
            ["Stage IIIA", "T0-3, N2, M0 or T3N1", "Fixed axillary nodes", "~55%"],
            ["Stage IIIB", "T4, any N, M0", "Chest wall/skin involvement (incl inflammatory)", "~40%"],
            ["Stage IV",  "Any T, Any N, M1", "Distant metastases", "~25%"],
        ],
        col_widths=[20*mm, 38*mm, 72*mm, 28*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common type of breast cancer? Ans: Invasive Ductal Carcinoma (IDC)",
        "Q: Most common site of breast cancer? Ans: Upper outer quadrant",
        "Q: Paget's disease of nipple is associated with? Ans: Underlying intraductal carcinoma",
        "Q: Triple assessment of breast lump? Ans: Clinical exam + Imaging + Pathology (FNAC/Biopsy)",
        "Q: Sentinel lymph node drainage site for breast? Ans: Axillary nodes (level I first)",
        "Q: Tamoxifen is used in? Ans: ER/PR positive breast cancer (pre and post-menopausal); SERM",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 6 - THYROID & PARATHYROID
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 6 - THYROID & PARATHYROID SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("6.1  THYROID CANCER - TYPES & FEATURES", CH_SUB))
    story.append(data_table(
        ["Type", "Incidence", "Age/Sex", "Spread", "Prognosis", "Special Features"],
        [
            ["Papillary", "70-80% (most common)", "Young females", "Lymphatic (LN)", "Excellent (>95% 10yr)", "Psammoma bodies, Orphan Annie eye nuclei, Intranuclear inclusions"],
            ["Follicular", "15-20%", "Middle age", "Haematogenous (lung, bone)", "Good", "Vascular invasion diagnostic; not diagnose by FNAC (capsule needed)"],
            ["Medullary", "5%", "Familial (MEN 2A/2B)", "Both LN + haematogenous", "Moderate", "Calcitonin as tumour marker; amyloid deposits; RET proto-oncogene"],
            ["Anaplastic", "<5% (rarest)", "Elderly", "Local invasion + widespread", "Very poor (<6 months)", "Most aggressive; radio-resistant; airway compromise"],
        ],
        col_widths=[26*mm, 28*mm, 26*mm, 30*mm, 26*mm, 32*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Most common thyroid cancer: Papillary (70-80%)",
        "Best prognosis: Papillary > Follicular > Medullary > Anaplastic (worst)",
        "Psammoma bodies seen in: Papillary thyroid CA, Meningioma, Serous papillary ovarian CA",
        "MEN 2A: Medullary thyroid CA + Phaeochromocytoma + Primary hyperparathyroidism",
        "MEN 2B: Medullary thyroid CA + Phaeochromocytoma + Mucosal neuromas + Marfanoid habitus",
        "Calcitonin = tumour marker for Medullary thyroid carcinoma",
        "Recurrent laryngeal nerve (RLN) injury during thyroid surgery -> hoarseness",
        "Bilateral RLN injury -> stridor, respiratory distress - EMERGENCY tracheotomy needed",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common thyroid cancer? Ans: Papillary carcinoma",
        "Q: Psammoma bodies are seen in which thyroid cancer? Ans: Papillary carcinoma",
        "Q: Tumour marker for medullary thyroid cancer? Ans: Calcitonin",
        "Q: Follicular carcinoma is diagnosed by? Ans: Histopathology (capsular/vascular invasion) - NOT by FNAC",
        "Q: Most aggressive thyroid cancer? Ans: Anaplastic (undifferentiated) carcinoma",
        "Q: MEN 2A components? Ans: Medullary thyroid CA + Phaeochromocytoma + Hyperparathyroidism",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 7 - HERNIA
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 7 - HERNIA"))
    story.append(sp(8))

    story.append(Paragraph("7.1  INGUINAL HERNIA - INDIRECT vs DIRECT", CH_SUB))
    story.append(two_col_table(
        ["Through deep inguinal ring -> inguinal canal -> superficial ring",
         "Younger age group (congenital persistent processus vaginalis)",
         "More common overall (3:1 ratio over direct)",
         "Lateral to inferior epigastric vessels",
         "Covered by all three layers of spermatic cord",
         "Can descend into scrotum",
         "Higher risk of strangulation",
         "Hesselbach's triangle: Lateral border"],
        ["Through Hesselbach's triangle (posterior wall weakness)",
         "Older age (acquired - weakness of transversalis fascia)",
         "Less common than indirect",
         "Medial to inferior epigastric vessels",
         "Not covered by internal spermatic fascia",
         "Rarely descends into scrotum",
         "Lower risk of strangulation",
         "Hesselbach's triangle: Medial border"],
        "INDIRECT Inguinal Hernia", "DIRECT Inguinal Hernia"
    ))
    story.append(sp(4))
    story.append(box_table([
        [Paragraph("<b>Hesselbach's Triangle boundaries:</b> Medial = Lateral border of rectus abdominis | Lateral = Inferior epigastric vessels | Inferior = Inguinal ligament", BODY)],
        [Paragraph("<b>Inguinal canal boundaries:</b> Anterior wall = External oblique aponeurosis | Posterior wall = Transversalis fascia (+ conjoined tendon medially) | Roof = Transversus + internal oblique | Floor = Inguinal ligament", BODY)],
    ]))
    story.append(sp(4))

    story.append(Paragraph("7.2  FEMORAL HERNIA", CH_SUB))
    story.append(box_table([
        [Paragraph("<b>Site:</b> Through femoral ring, femoral canal - BELOW and LATERAL to pubic tubercle", BODY)],
        [Paragraph("<b>Demographics:</b> More common in women (due to wider pelvis) but inguinal hernia is STILL more common in women overall", BODY)],
        [Paragraph("<b>Neck of femoral ring boundaries:</b> Medially = Lacunar ligament | Laterally = Femoral vein | Anteriorly = Inguinal ligament | Posteriorly = Pectineal ligament (Cooper's ligament)", BODY)],
        [Paragraph("<b>High strangulation risk</b> due to narrow, unyielding neck (lacunar ligament medially)", BODY)],
    ]))
    story.append(sp(4))

    story.append(Paragraph("7.3  SPECIAL HERNIAS (HIGH YIELD!)", CH_SUB))
    story.append(data_table(
        ["Type", "Definition", "Clinical Significance"],
        [
            ["Richter's Hernia", "Only antimesenteric wall of bowel in sac (knuckle) - NO complete obstruction", "Can strangulate WITHOUT obstruction - DANGEROUS, easily missed"],
            ["Littre's Hernia", "Meckel's diverticulum in hernial sac", "Diverticulum strangulates"],
            ["Maydl's Hernia\n(W hernia)", "Two loops of bowel in sac forming W shape - middle loop inside abdomen strangulates", "Dangerous - intraabdominal loop strangulates unnoticed"],
            ["Spigelian Hernia", "Through spigelian fascia (lateral border of rectus, at linea semilunaris)", "Interparietal hernia - difficult to detect clinically"],
            ["Obturator Hernia", "Through obturator foramen - elderly thin women", "Howship-Romberg sign: medial thigh pain radiating on hip movement"],
            ["Sliding Hernia\n(en Glissade)", "Wall of viscus forms part of the sac", "Sigmoid colon (left) or caecum (right) most common"],
            ["Pantaloon Hernia", "Combined direct + indirect hernia straddling inferior epigastric vessels", "Both medial and lateral components"],
        ],
        col_widths=[38*mm, 72*mm, 58*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Which hernia can strangulate without obstruction? Ans: Richter's hernia",
        "Q: Littre's hernia contains? Ans: Meckel's diverticulum",
        "Q: Howship-Romberg sign is seen in? Ans: Obturator hernia",
        "Q: Femoral hernia passes below which landmark? Ans: Below and lateral to pubic tubercle",
        "Q: Inguinal hernia passes above which landmark? Ans: Above and medial to pubic tubercle",
        "Q: Most common type of hernia in females? Ans: Inguinal hernia (indirect) - inguinal > femoral in females too",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 8 - UROLOGY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 8 - UROLOGY"))
    story.append(sp(8))

    story.append(Paragraph("8.1  URINARY STONES (UROLITHIASIS)", CH_SUB))
    story.append(data_table(
        ["Stone Type", "% of Stones", "Radio-opacity", "Associations", "Urine pH"],
        [
            ["Calcium Oxalate\n(most common)", "70-80%", "Radio-opaque", "Hypercalciuria, hyperoxaluria, Crohn's disease", "Acidic"],
            ["Uric Acid", "5-10%", "Radiolucent (pure)", "Gout, dehydration, high purine diet, myeloproliferative", "Acidic (<5.5)"],
            ["Struvite (triple phosphate)", "10-15%", "Radio-opaque (staghorn)", "Urease-producing organisms (Proteus, Klebsiella)", "Alkaline (>7)"],
            ["Cystine", "1-3%", "Faintly opaque", "Cystinuria (AR) - defective tubular reabsorption", "Acidic"],
            ["Calcium Phosphate", "5-10%", "Radio-opaque", "Hyperparathyroidism, RTA type I", "Alkaline"],
        ],
        col_widths=[32*mm, 20*mm, 28*mm, 58*mm, 26*mm]
    ))
    story.append(sp(4))
    story.append(tip_box([
        "Most radio-opaque: Calcium oxalate > Calcium phosphate > Struvite > Cystine > Uric acid (radiolucent)",
        "Staghorn calculi = Struvite stones (fill renal pelvis + calyces)",
        "Treatment of uric acid stones: Urinary alkalinisation (potassium citrate) + hydration",
        "First-line investigation: KUB X-ray + USG; CT-KUB (non-contrast) = gold standard",
        "ESWL (Extracorporeal Shock Wave Lithotripsy): Best for stones <2cm in renal pelvis",
        "PCNL (Percutaneous Nephrolithotomy): Stones >2cm or staghorn calculi",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common renal stone? Ans: Calcium oxalate (70-80%)",
        "Q: Only radiolucent stone on plain X-ray? Ans: Uric acid stone",
        "Q: Staghorn calculus is composed of? Ans: Struvite (magnesium ammonium phosphate - triple phosphate)",
        "Q: Organism causing struvite stones? Ans: Proteus mirabilis (urease-producing)",
        "Q: ESWL is suitable for stones of what size? Ans: <2 cm in renal pelvis",
        "Q: Investigation of choice for ureteric colic? Ans: Non-contrast CT-KUB (NCCT abdomen)",
    ]))
    story.append(sp(6))

    story.append(Paragraph("8.2  BPH (BENIGN PROSTATIC HYPERPLASIA)", CH_SUB))
    story.append(box_table([
        [Paragraph("<b>Zone affected:</b> Transitional zone (central) | Prostate CA affects Peripheral zone", BODY)],
        [Paragraph("<b>Features - LUTS:</b> Frequency, urgency, nocturia, poor stream, hesitancy, terminal dribbling, incomplete emptying", BODY)],
        [Paragraph("<b>PSA:</b> Raised (but not diagnostic of CA alone - also raised in BPH, prostatitis, UTI)", BODY)],
        [Paragraph("<b>Rectal exam:</b> Enlarged, smooth, firm, non-tender, median groove preserved (vs CA: hard, irregular, nodular)", BODY)],
        [Paragraph("<b>Treatment:</b> Alpha-blockers (tamsulosin, alfuzosin) first line for symptoms | 5-alpha reductase inhibitors (finasteride) for large glands | TURP (gold standard surgical treatment)", BODY)],
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Zone of prostate affected in BPH? Ans: Transitional (central) zone",
        "Q: Zone affected in prostate carcinoma? Ans: Peripheral zone",
        "Q: Gold standard surgical treatment of BPH? Ans: TURP (TransUrethral Resection of Prostate)",
        "Q: TUR syndrome is caused by? Ans: Absorption of hypotonic irrigation fluid -> dilutional hyponatraemia",
        "Q: First line medical treatment of BPH? Ans: Alpha-1 blockers (tamsulosin, alfuzosin)",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 9 - VASCULAR SURGERY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 9 - VASCULAR SURGERY"))
    story.append(sp(8))

    story.append(Paragraph("9.1  ABDOMINAL AORTIC ANEURYSM (AAA)", CH_SUB))
    story.append(box_table([
        [Paragraph("<b>Definition:</b> Dilatation of aorta >3 cm (normal <2.5cm) | TRUE aneurysm involves all 3 layers", BODY)],
        [Paragraph("<b>Risk factors:</b> Atherosclerosis, Smoking (strongest RF), Male, Age >65, Hypertension, Family history", BODY)],
        [Paragraph("<b>Most common site:</b> Infrarenal aorta (90%)", BODY)],
        [Paragraph("<b>Indications for surgery:</b> >5.5 cm | Rapidly expanding (>1 cm/year) | Symptomatic | Ruptured", BODY)],
        [Paragraph("<b>Ruptured AAA triad:</b> Sudden severe back/flank pain + Hypotension + Pulsatile abdominal mass", BODY)],
        [Paragraph("<b>Treatment:</b> EVAR (Endovascular Aneurysm Repair) preferred if anatomy suitable; Open repair alternatively", BODY)],
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Most common site of AAA? Ans: Infrarenal aorta",
        "Q: When is elective AAA repair indicated? Ans: Diameter >5.5 cm or expanding >1 cm/year",
        "Q: Classical triad of ruptured AAA? Ans: Sudden back pain + Hypotension + Pulsatile abdominal mass",
        "Q: Most common cause of AAA? Ans: Atherosclerosis",
    ]))
    story.append(sp(6))

    story.append(Paragraph("9.2  DEEP VEIN THROMBOSIS (DVT) & PULMONARY EMBOLISM", CH_SUB))
    story.append(data_table(
        ["Feature", "DVT", "Pulmonary Embolism"],
        [
            ["Presentation", "Unilateral leg swelling, pain, warmth, Homan's sign (unreliable)", "Dyspnoea, pleuritic chest pain, haemoptysis, tachycardia"],
            ["Investigation", "Doppler USG (first line); D-dimer screening", "CTPA (gold standard); V/Q scan; ECG: S1Q3T3"],
            ["Treatment", "LMWH/Heparin -> Warfarin/DOAC for 3-6 months; compression stockings", "Anticoagulation; Thrombolysis if haemodynamically unstable; IVC filter"],
            ["Prophylaxis", "LMWH, early mobilisation, compression stockings, hydration", "Same as DVT prophylaxis"],
        ],
        col_widths=[28*mm, 70*mm, 70*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: ECG finding in massive PE? Ans: S1Q3T3 pattern (S wave in lead I, Q wave and T inversion in lead III)",
        "Q: Gold standard investigation for PE? Ans: CT Pulmonary Angiography (CTPA)",
        "Q: Virchow's triad for DVT? Ans: Stasis + Endothelial injury + Hypercoagulability",
        "Q: Most common source of pulmonary embolism? Ans: DVT of lower limb (femoral/iliac veins)",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 10 - PAEDIATRIC SURGERY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 10 - PAEDIATRIC SURGERY"))
    story.append(sp(8))

    story.append(data_table(
        ["Condition", "Age", "Presentation", "Investigation", "Treatment"],
        [
            ["Pyloric Stenosis", "2-6 weeks (M>F 4:1)", "Projectile non-bilious vomiting, 'olive' mass, hungry baby", "USG (pyloric muscle thickness >4mm, length >16mm); Metabolic alkalosis", "Ramstedt's pyloromyotomy (after correction of electrolytes)"],
            ["Intussusception", "6 months-2 years", "Colicky pain, vomiting, currant jelly stools, sausage mass in RUQ", "USG: Target sign / Doughnut sign", "Air/hydrostatic enema (first line); Surgery if failed or peritonitis"],
            ["Hirschsprung's Disease", "Neonates/infants", "Delayed meconium passage (>48hrs), abdominal distension, ribbon stools", "Rectal biopsy (gold standard): absence of ganglion cells; Anorectal manometry", "Surgical pull-through procedure (Swenson/Duhamel/Soave)"],
            ["Congenital Diaphragmatic Hernia (CDH)", "Neonate", "Respiratory distress, scaphoid abdomen, bowel sounds in chest", "CXR: bowel in chest", "Stabilise first, then surgical repair; Left side more common (Bochdalek)"],
            ["Tracheo-Oesophageal Fistula (TOF)", "Neonate", "Coughing/choking on feeding, respiratory distress, copious secretions", "NGT coiling on CXR; H-type detected by contrast study", "Surgical repair; most common type C (blind upper pouch + fistula lower)"],
            ["Meckel's Diverticulum", "Any age (usually 2 yrs)", "Rule of 2s: 2% pop, 2 inches long, 2 feet from ileocaecal valve, 2x more in males", "Tc-99m pertechnetate scan (ectopic gastric mucosa)", "Surgical excision if symptomatic"],
        ],
        col_widths=[36*mm, 24*mm, 44*mm, 36*mm, 38*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Pyloric stenosis: Metabolic alkalosis with hypochloraemia and hypokalaemia - correct BEFORE surgery",
        "Hirschsprung's disease: Absent ganglion cells in Meissner's and Auerbach's plexuses (gold standard = rectal biopsy)",
        "Meckel's Rule of 2s: 2% population, 2 inches, 2 feet from ileocaecal valve, presents before age 2",
        "Most common site for ectopic tissue in Meckel's: Gastric mucosa (causes bleeding)",
        "Most common type of TOF: Type C (85%) - proximal oesophageal atresia + distal tracheo-oesophageal fistula",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Meckel's diverticulum - rule of 2s? Ans: 2% population, 2 inches, 2 feet from IC valve, M:F = 2:1",
        "Q: Diagnosis of Hirschsprung's disease? Ans: Rectal biopsy showing absent ganglion cells",
        "Q: Currant jelly stools are characteristic of? Ans: Intussusception",
        "Q: Investigation for pyloric stenosis? Ans: USG (muscle thickness >4mm); Metabolic alkalosis on bloods",
        "Q: Technetium scan is used for? Ans: Meckel's diverticulum (ectopic gastric mucosa)",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 11 - ONCOLOGY
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 11 - SURGICAL ONCOLOGY"))
    story.append(sp(8))

    story.append(Paragraph("11.1  TUMOUR MARKERS", CH_SUB))
    story.append(data_table(
        ["Tumour Marker", "Associated Tumour", "Notes"],
        [
            ["CEA (Carcinoembryonic Antigen)", "Colorectal CA (primary monitoring)", "Also: gastric, pancreatic, breast, lung CA; smokers"],
            ["AFP (Alpha-fetoprotein)", "Hepatocellular CA, Germ cell tumours (non-seminoma)", "Also elevated in pregnancy, liver disease"],
            ["PSA (Prostate Specific Antigen)", "Prostate carcinoma", "Also raised in BPH, prostatitis; organ-specific not cancer-specific"],
            ["CA 19-9", "Pancreatic CA (primary), biliary CA", "Best tumour marker for pancreatic CA monitoring"],
            ["CA 125", "Ovarian CA (epithelial)", "Also in endometriosis, fibroids, pelvic inflammation"],
            ["CA 15-3", "Breast carcinoma", "Used for monitoring, not screening"],
            ["Calcitonin", "Medullary thyroid carcinoma", "Also used to screen family members (MEN 2)"],
            ["Beta-hCG", "Choriocarcinoma, Gestational trophoblastic disease, Testicular CA (non-seminoma)", ""],
            ["LDH", "Seminoma, Lymphoma, Ewing's sarcoma", "Non-specific marker"],
            ["S-100", "Melanoma, Schwannoma, Astrocytoma", "Neural crest cell tumours"],
        ],
        col_widths=[48*mm, 72*mm, 48*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: Tumour marker for pancreatic carcinoma? Ans: CA 19-9",
        "Q: Tumour marker for hepatocellular carcinoma? Ans: AFP (alpha-fetoprotein)",
        "Q: Best marker for monitoring colorectal cancer? Ans: CEA",
        "Q: Tumour marker for medullary thyroid cancer? Ans: Calcitonin",
        "Q: Which tumour marker is raised in seminoma? Ans: LDH (AFP and beta-hCG typically negative in pure seminoma)",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # CHAPTER 12 - INSTRUMENTS & PROCEDURES
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  CHAPTER 12 - SURGICAL INSTRUMENTS & PROCEDURES"))
    story.append(sp(8))

    story.append(Paragraph("12.1  KEY SURGICAL DRAINS", CH_SUB))
    story.append(data_table(
        ["Drain", "Type", "Uses"],
        [
            ["Corrugated rubber drain", "Passive, open", "Superficial wounds, subcutaneous drains"],
            ["Robinson drain (straight tube)", "Active closed (suction)", "Post-op abdominal, orthopaedic surgery"],
            ["Jackson-Pratt (JP)", "Active closed (bulb suction)", "After mastectomy, neck dissection, TRAM flap"],
            ["Blake drain", "Active closed", "Thoracic, cardiac surgery"],
            ["Chest drain (intercostal)", "Water-seal or Heimlich valve", "Haemothorax, pneumothorax, pleural effusion"],
            ["Sump drain (double lumen)", "Active irrigation + drainage", "Subphrenic abscess, bile leaks"],
            ["T-tube drain", "Passive", "CBD after choledochotomy for stones"],
        ],
        col_widths=[48*mm, 45*mm, 75*mm]
    ))
    story.append(sp(4))
    story.append(pyq_box([
        "Q: T-tube drain is used after? Ans: Choledochotomy (CBD exploration for stones) - maintains bile drainage",
        "Q: Drain used after mastectomy? Ans: Jackson-Pratt drain (closed suction)",
        "Q: Chest drain goes through which space? Ans: 5th ICS, midaxillary line (safe triangle)",
    ]))
    story.append(sp(6))

    story.append(Paragraph("12.2  STERILISATION METHODS", CH_SUB))
    story.append(data_table(
        ["Method", "Temperature", "Best For", "Cannot Use For"],
        [
            ["Autoclave (Steam sterilisation)", "121°C/15 psi x 15 min or 134°C x 3 min", "Metal instruments, drapes, gowns, glass, rubber", "Heat-sensitive equipment"],
            ["Dry Heat (hot air oven)", "160°C x 1hr or 180°C x 30min", "Glassware, oils, powders, sharp instruments (no steam blunting)", "Rubber, plastics, paper"],
            ["Ethylene Oxide (EO)", "50-60°C", "Endoscopes, plastics, rubber, electronics - heat sensitive", "Prolonged aeration needed (toxic residue)"],
            ["Glutaraldehyde (2%)", "Room temp", "Endoscopes (high-level disinfection)", "Not true sterilisation"],
            ["Gamma Radiation", "Room temp", "Disposables, sutures, packaged sterile items", "Industrial use; not bedside"],
            ["Plasma/Hydrogen peroxide", "50°C", "Delicate instruments, fibre optics", "Cellulose, linens"],
        ],
        col_widths=[42*mm, 36*mm, 52*mm, 38*mm]
    ))
    story.append(sp(4))
    story.append(imp_box([
        "Autoclave = moist heat = most reliable, most common method for surgical instruments",
        "Prions (CJD) are resistant to standard autoclaving - require 134°C x 18 min extended cycle or incineration",
        "Ethylene oxide: Toxic, carcinogenic, long aeration time (8-12 hrs) needed",
        "Best method for sharp instruments (to prevent blunting): Dry heat or Ethylene oxide",
    ]))
    story.append(sp(4))
    story.append(pyq_box([
            "Q: Most reliable method of sterilisation? Ans: Autoclave (moist heat under pressure)",
            "Q: Sterilisation of laparoscopes/endoscopes? Ans: Glutaraldehyde (2%) for high-level disinfection; EO for sterilisation",
            "Q: Which organisms are most resistant to sterilisation? Ans: Prions > Bacterial spores > Mycobacteria > Fungi > Viruses > Vegetative bacteria",
    ]))
    story.append(PageBreak())

    # ════════════════════════════════════════════════════════════════════════
    # QUICK REFERENCE - LAST MINUTE REVISION
    # ════════════════════════════════════════════════════════════════════════
    story.append(header_table("  QUICK REFERENCE - LAST MINUTE HIGH-YIELD FACTS", C_RED))
    story.append(sp(8))

    story.append(Paragraph("MUST-KNOW MNEMONICS", CH_SUB))
    story.append(data_table(
        ["Mnemonic", "Stands For", "Topic"],
        [
            ["MANTRELS", "Migration, Anorexia, Nausea, Tenderness RIF, Rebound, Elevated Temp, Leukocytosis, Shift left", "Alvarado Score for Appendicitis"],
            ["GET SMASHED", "Gallstones, Ethanol, Trauma, Steroids, Mumps, Autoimmune, Scorpion, Hyperlipidaemia, ERCP, Drugs", "Causes of Acute Pancreatitis"],
            ["5 F's", "Fat, Female, Fertile, Forty, Fair", "Risk factors for Cholesterol Gallstones"],
            ["AMPLE", "Allergies, Medications, Past history, Last meal, Events leading to injury", "ATLS History Taking"],
            ["Rule of 2s", "2% pop, 2 inches, 2 feet from IC valve, 2 yr age, 2:1 M:F", "Meckel's Diverticulum"],
            ["ABCDE", "Airway, Breathing, Circulation, Disability, Exposure", "Primary Survey in Trauma (ATLS)"],
            ["Virchow's Triad", "Stasis + Endothelial injury + Hypercoagulability", "DVT Formation"],
            ["Beck's Triad", "Hypotension + Muffled heart sounds + Raised JVP", "Cardiac Tamponade"],
            ["Charcot's Triad", "Fever + Jaundice + RUQ Pain", "Acute Cholangitis"],
            ["Reynolds Pentad", "Charcot's Triad + Hypotension + Confusion", "Severe/Suppurative Cholangitis"],
        ],
        col_widths=[32*mm, 90*mm, 46*mm]
    ))
    story.append(sp(6))

    story.append(Paragraph("TOP 30 MOST REPEATED SURGERY PYQs IN NEET PG", CH_SUB))
    pyq_final = [
        "1.  Most common position of appendix: RETROCAECAL (65%)",
        "2.  Most common cause of intestinal obstruction in adults: ADHESIONS (post-op) for SB; CARCINOMA for LB",
        "3.  Rule of nines: Lower limb = 18%, Upper limb = 9%, Head = 9%, Trunk (ant+post) = 36%",
        "4.  Parkland formula: 4 x kg x %TBSA in RL; half in first 8 hours",
        "5.  Most common thyroid cancer: Papillary (psammoma bodies, lymphatic spread, best prognosis)",
        "6.  Charcot's triad: Fever + Jaundice + RUQ pain = Cholangitis",
        "7.  Courvoisier's law: Palpable GB + painless jaundice = malignancy (NOT stones)",
        "8.  Beck's triad (cardiac tamponade): Hypotension + muffled sounds + raised JVP",
        "9.  Most common type of hernia (overall): INDIRECT inguinal hernia",
        "10. Richter's hernia: Strangulates WITHOUT complete obstruction (knuckle of bowel wall)",
        "11. Best prognosis thyroid cancer: Papillary; Worst: Anaplastic",
        "12. Tumour marker: Pancreatic CA = CA 19-9; Hepatoma = AFP; Medullary thyroid = Calcitonin",
        "13. Meckel's diverticulum rule of 2s - Tc-99m pertechnetate scan for diagnosis",
        "14. Hirschsprung's disease: Absent ganglion cells on rectal biopsy (gold standard)",
        "15. Intussusception: Currant jelly stools + sausage mass + USG target sign",
        "16. Most common type of wound healing: PRIMARY intention (clean surgical wound)",
        "17. Collagen type first in wound healing: Type III -> replaced by Type I",
        "18. Maximum tensile strength of healed wound: 80% (at 3 months)",
        "19. Most important cell in wound healing: MACROPHAGE",
        "20. Most common cause of SSI: Staphylococcus aureus",
        "21. TURP syndrome: Dilutional hyponatraemia from hypotonic irrigation fluid absorption",
        "22. Most common renal stone: Calcium oxalate (70-80%); Only radiolucent: Uric acid",
        "23. Struvite (staghorn) stone organism: Proteus mirabilis (urease-producing)",
        "24. Ranson score >5 = severe pancreatitis; Cullen's sign = periumbilical bruising",
        "25. Lithotripsy (ESWL) best for: Stones <2 cm in renal pelvis",
        "26. Sentinel lymph node biopsy: First line axillary staging for early breast cancer",
        "27. MEN 2A: Medullary thyroid CA + Pheochromocytoma + Hyperparathyroidism",
        "28. Best investigation for gallstones: Ultrasound (USG) - gold standard",
        "29. S1Q3T3 on ECG = Pulmonary Embolism; CTPA = gold standard investigation",
        "30. Tension pneumothorax: Immediate needle decompression at 2nd ICS midclavicular line",
    ]
    for q in pyq_final:
        story.append(Paragraph(q, BULLET))
    story.append(sp(4))

    # ── FINAL PAGE ──────────────────────────────────────────────────────────
    story.append(PageBreak())
    footer_table = Table(
        [[Paragraph("ALL THE BEST FOR NEET PG!", S("ft", fontSize=22,
           textColor=C_WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER))],
         [Paragraph("You've got this! Revise smart, not hard.", S("fs", fontSize=13,
           textColor=C_YELLOW, alignment=TA_CENTER))],
         [sp(10)],
         [Paragraph("Sources: Bailey & Love 28e | Schwartz's Surgery 11e | Current Surgical Therapy 14e | Sabiston Surgery | Tintinalli Emergency Medicine | Maingot's Abdominal Operations", S("fsrc", fontSize=8, textColor=C_WHITE, alignment=TA_CENTER))],
        ],
        colWidths=[190*mm]
    )
    footer_table.setStyle(TableStyle([
        ("BACKGROUND", (0,0), (-1,-1), C_NAVY),
        ("TOPPADDING",    (0,0), (-1,-1), 14),
        ("BOTTOMPADDING", (0,0), (-1,-1), 14),
        ("LEFTPADDING",   (0,0), (-1,-1), 20),
    ]))
    story.append(footer_table)

    return story


# ── Page Template (header + footer) ─────────────────────────────────────────
from reportlab.platypus import Frame, PageTemplate
from reportlab.platypus.doctemplate import BaseDocTemplate

class SurgeryDoc(BaseDocTemplate):
    def __init__(self, filename, **kwargs):
        super().__init__(filename, **kwargs)
        frame = Frame(self.leftMargin, self.bottomMargin,
                      self.width, self.height, id='main')
        template = PageTemplate(id='main', frames=[frame],
                                onPage=self._add_page_decor)
        self.addPageTemplates([template])

    def _add_page_decor(self, canvas, doc):
        canvas.saveState()
        # Top thin stripe
        canvas.setFillColor(C_TEAL)
        canvas.rect(0, A4[1]-8, A4[0], 8, fill=1, stroke=0)
        # Bottom thin stripe
        canvas.setFillColor(C_NAVY)
        canvas.rect(0, 0, A4[0], 20, fill=1, stroke=0)
        # Footer text
        canvas.setFillColor(C_WHITE)
        canvas.setFont("Helvetica", 7)
        canvas.drawString(15*mm, 7, "NEET PG Surgery Rapid Revision Notes  |  2-Day Complete Revision")
        canvas.drawRightString(A4[0]-15*mm, 7, f"Page {doc.page}")
        canvas.restoreState()


def main():
    doc = SurgeryDoc(
        OUTPUT,
        pagesize=A4,
        leftMargin=18*mm, rightMargin=18*mm,
        topMargin=16*mm, bottomMargin=22*mm,
        title="NEET PG Surgery Rapid Revision Notes",
        author="Orris AI",
    )
    story = build_story()
    doc.build(story)
    print(f"PDF generated: {OUTPUT}")

if __name__ == "__main__":
    main()
Running Command

cd /home/daytona/workspace/surgery-neet-pg && python3 generate_surgery_pdf.py 2>&1

Running Command

ls -lh /home/daytona/workspace/surgery-neet-pg/NEET_PG_Surgery_Revision.pdf

Your NEET PG Surgery Rapid Revision PDF is ready!

NEET PG Surgery Revision

PDF Document · PDF


Here's what's packed inside (12 chapters, fully colour-coded):
#ChapterKey Content
1General Surgery PrinciplesWound healing phases, collagen types, shock classification (Class I-IV), SSI wound classes, sutures
2Trauma & Emergency SurgeryBurns (Rule of Nines table, depth classification, Parkland formula), ATLS ABCDE, Tension PTX vs Tamponade
3GI SurgeryAppendicitis + Alvarado (MANTRELS) score, Intestinal obstruction, PUD - DU vs GU comparison
4Hepatobiliary & PancreasGallstone types, Charcot's/Reynold's triad, Ranson's criteria, Pancreatitis (GET SMASHED)
5Breast SurgeryBreast lump DDx table, Carcinoma staging (TNM), Triple assessment, Sentinel node biopsy
6Thyroid & ParathyroidAll 4 cancer types compared, psammoma bodies, MEN 2A/2B, calcitonin, RLN injury
7HerniaDirect vs Indirect inguinal, Hesselbach's triangle, Femoral hernia, 7 special hernias (Richter's, Littre's, Maydl's etc.)
8UrologyStone types (radio-opacity, pH, organisms), BPH vs CA zones, TURP, ESWL/PCNL criteria
9Vascular SurgeryAAA, DVT/PE, Virchow's triad, S1Q3T3, CTPA
10Paediatric SurgeryPyloric stenosis, Intussusception, Hirschsprung's, TOF types, Meckel's Rule of 2s
11Surgical OncologyComplete tumour markers table (AFP, CA19-9, CEA, Calcitonin, PSA etc.)
12Instruments & ProceduresSurgical drains, Sterilisation methods, laparoscopy
Plus: A dedicated "Top 30 PYQs" page at the end and all mnemonics in one quick-reference table. Every section has orange PYQ boxes and red high-yield boxes so you know exactly what to focus on!
attachment
attachment

How about this kind of atlas which cover every topic

analyse_media
Now I'll build this as HTML pages (pixel-perfect recreation of that style) and convert to PDF using weasyprint/chromium.
Running Command

which chromium-browser || which chromium || which google-chrome || which wkhtmltopdf || python3 -c "import weasyprint; print('weasyprint ok')" 2>&1

Writing File

~/surgery-neet-pg/atlas_page1.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Surgery 700+ Bootcamp Atlas - Page 1</title>
<style>
  @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');

  * { margin: 0; padding: 0; box-sizing: border-box; }

  body {
    font-family: 'Montserrat', Arial, sans-serif;
    background: white;
    width: 794px;
    min-height: 1123px;
    font-size: 7.5px;
    color: #1a1a2e;
  }

  /* ── HEADER ── */
  .header {
    background: #0B1B3D;
    padding: 7px 12px 5px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .page-num {
    background: #0B1B3D;
    border: 2px solid #fff;
    color: white;
    font-weight: 900;
    font-size: 11px;
    padding: 4px 8px;
    text-align: center;
    line-height: 1.1;
    min-width: 40px;
  }
  .page-num span { font-size: 7px; font-weight: 600; display: block; }
  .header-center { text-align: center; flex: 1; }
  .main-title {
    color: white;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.1;
  }
  .main-title span { color: #FFD700; }
  .sub-title {
    color: #b0c4de;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin: 2px 0;
  }
  .badges {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 3px;
  }
  .badge {
    color: #FFD700;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.5px;
  }
  .badge::before { content: "★ "; }
  .vision-box {
    background: #1a3a6b;
    border: 1.5px solid #FFD700;
    border-radius: 6px;
    padding: 5px 8px;
    text-align: center;
    min-width: 80px;
  }
  .vision-box .vtitle {
    color: #FFD700;
    font-weight: 900;
    font-size: 9px;
    letter-spacing: 1px;
  }
  .vision-box .vtext {
    color: white;
    font-size: 6.5px;
    line-height: 1.5;
    font-weight: 600;
  }

  /* ── MAIN BODY ── */
  .body { padding: 6px 8px; background: white; }

  /* ── TOP SECTION: TWO COLUMNS + MIND MAP ── */
  .top-section {
    display: grid;
    grid-template-columns: 178px 1fr 178px;
    gap: 6px;
    margin-bottom: 6px;
  }

  .domain-box {
    border-radius: 8px;
    overflow: hidden;
    border: 1.5px solid;
  }
  .domain-box.left { border-color: #9b1d6e; }
  .domain-box.right { border-color: #007878; }

  .domain-header {
    padding: 4px 6px;
    color: white;
    font-weight: 800;
    font-size: 7.5px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 0.5px;
  }
  .domain-box.left .domain-header { background: #9b1d6e; }
  .domain-box.right .domain-header { background: #007878; }

  .domain-list { padding: 5px 6px; }
  .domain-item {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    margin-bottom: 5px;
  }
  .domain-icon {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 9px;
  }
  .domain-box.left .domain-icon { background: #f4d0e8; }
  .domain-box.right .domain-icon { background: #d0f0ef; }
  .domain-item-text { flex: 1; }
  .domain-item-title {
    font-weight: 800;
    font-size: 7px;
    color: #1a1a2e;
    line-height: 1.2;
  }
  .domain-item-sub {
    font-size: 6px;
    color: #555;
    line-height: 1.3;
    margin-top: 1px;
  }

  /* ── MIND MAP ── */
  .mindmap-container {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }
  .mindmap-svg { width: 100%; height: 290px; }

  /* ── MIDDLE THREE COLUMNS ── */
  .middle-section {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6px;
    margin-bottom: 6px;
  }

  .card {
    border-radius: 8px;
    overflow: hidden;
    border: 1.5px solid;
  }
  .card-header {
    padding: 4px 8px;
    color: white;
    font-weight: 800;
    font-size: 7.5px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 0.5px;
  }
  .card-body { padding: 5px 6px; }

  /* Gold Standards */
  .card.gold { border-color: #007878; }
  .card.gold .card-header { background: #007878; }
  .gold-row {
    display: flex;
    align-items: flex-start;
    gap: 4px;
    margin-bottom: 3.5px;
    font-size: 6.5px;
    line-height: 1.3;
  }
  .gold-check {
    width: 14px; height: 14px;
    background: #007878;
    border-radius: 50%;
    color: white;
    font-size: 8px;
    font-weight: 900;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
  }
  .gold-condition { font-weight: 700; color: #0B1B3D; flex: 1; }
  .gold-answer { color: #007878; font-weight: 700; flex: 1; text-align: right; }

  /* Key Principles */
  .card.principles { border-color: #e07b3a; }
  .card.principles .card-header { background: #e07b3a; }
  .principle-row {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 2.5px;
    font-size: 6.5px;
  }
  .principle-letter {
    width: 14px; height: 14px;
    border-radius: 3px;
    color: white;
    font-weight: 900;
    font-size: 8px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
  }

  /* High Yield */
  .card.highyield { border-color: #6a0dad; }
  .card.highyield .card-header { background: #6a0dad; }
  .hy-row {
    display: flex;
    align-items: flex-start;
    gap: 4px;
    margin-bottom: 3px;
    font-size: 6.5px;
    line-height: 1.35;
  }
  .hy-star { color: #6a0dad; font-size: 9px; flex-shrink: 0; margin-top: 0px; }
  .hy-text { color: #1a1a2e; }
  .hy-text b { color: #6a0dad; }
  .hy-warn { color: #c0392b; font-size: 9px; margin-left: 3px; }

  /* ── LOWER SECTION ── */
  .lower-section {
    display: grid;
    grid-template-columns: 175px 1fr 155px;
    gap: 6px;
    margin-bottom: 6px;
  }

  .def-box {
    background: #eaf4fb;
    border: 1.5px solid #2980b9;
    border-radius: 8px;
    padding: 5px 7px;
  }
  .def-title {
    background: #2980b9;
    color: white;
    font-weight: 800;
    font-size: 7px;
    text-transform: uppercase;
    padding: 3px 6px;
    border-radius: 4px;
    margin: -5px -7px 5px -7px;
    text-align: center;
    letter-spacing: 0.5px;
  }
  .def-item {
    font-size: 6.5px;
    margin-bottom: 2.5px;
    line-height: 1.35;
    color: #1a1a2e;
  }
  .def-item b { color: #2980b9; }

  .abbr-box {
    background: #f8f9fa;
    border: 1.5px solid #6c757d;
    border-radius: 8px;
    padding: 5px 7px;
  }
  .abbr-title {
    background: #495057;
    color: white;
    font-weight: 800;
    font-size: 7px;
    text-transform: uppercase;
    padding: 3px 6px;
    border-radius: 4px;
    margin: -5px -7px 5px -7px;
    text-align: center;
    letter-spacing: 0.5px;
  }
  .abbr-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2px;
  }
  .abbr-item {
    font-size: 6px;
    line-height: 1.4;
    color: #1a1a2e;
  }
  .abbr-item b { color: #c0392b; }

  .exam-box {
    background: #fdf2f8;
    border: 1.5px solid #9b1d6e;
    border-radius: 8px;
    padding: 5px 7px;
  }
  .exam-title {
    background: #9b1d6e;
    color: white;
    font-weight: 800;
    font-size: 7px;
    text-transform: uppercase;
    padding: 3px 6px;
    border-radius: 4px;
    margin: -5px -7px 5px -7px;
    text-align: center;
    letter-spacing: 0.5px;
  }
  .exam-step {
    display: flex;
    align-items: flex-start;
    gap: 4px;
    margin-bottom: 3px;
    font-size: 6.5px;
    line-height: 1.3;
  }
  .step-num {
    background: #9b1d6e;
    color: white;
    border-radius: 50%;
    width: 13px; height: 13px;
    font-size: 7px;
    font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
  }

  /* ── FOOTER CALLOUTS ── */
  .footer-cards {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 5px;
    margin-bottom: 5px;
  }
  .footer-card {
    border-radius: 7px;
    padding: 5px 7px;
    border: 1.5px solid;
  }
  .footer-card-title {
    font-weight: 800;
    font-size: 7.5px;
    margin-bottom: 3px;
    display: flex;
    align-items: center;
    gap: 4px;
    text-transform: uppercase;
  }
  .footer-card-icon { font-size: 10px; }
  .footer-card-text { font-size: 6px; line-height: 1.45; }

  .fc-pyq { background: #fffce6; border-color: #f1c40f; }
  .fc-pyq .footer-card-title { color: #9b7c00; }
  .fc-ini { background: #eaf4fb; border-color: #2980b9; }
  .fc-ini .footer-card-title { color: #1a5276; }
  .fc-trap { background: #fdf2f2; border-color: #c0392b; }
  .fc-trap .footer-card-title { color: #c0392b; }
  .fc-mantra { background: #f4eafd; border-color: #8e44ad; }
  .fc-mantra .footer-card-title { color: #6c3483; }

  .mantra-flow {
    font-size: 7.5px;
    font-weight: 800;
    color: #6c3483;
    text-align: center;
    margin-top: 3px;
  }

  /* ── BOTTOM BAR ── */
  .bottom-bar {
    background: #0B1B3D;
    color: #FFD700;
    text-align: center;
    padding: 5px;
    font-size: 7.5px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    border-radius: 0 0 4px 4px;
  }

  /* ── PYQ BOX within sections ── */
  .pyq-inline {
    background: #fffce6;
    border-left: 3px solid #f39c12;
    border-radius: 4px;
    padding: 3px 5px;
    margin-top: 3px;
    font-size: 6px;
    line-height: 1.4;
  }
  .pyq-inline-title {
    color: #c27c00;
    font-weight: 800;
    font-size: 6.5px;
    margin-bottom: 2px;
  }
</style>
</head>
<body>

<!-- HEADER -->
<div class="header">
  <div class="page-num"><span>PAGE</span>1</div>
  <div class="header-center">
    <div class="main-title">SURGERY <span>700+</span> BOOTCAMP ATLAS</div>
    <div class="sub-title">Master Map of General Surgery &amp; Surgical Specialties</div>
    <div class="badges">
      <span class="badge">High Yield</span>
      <span class="badge">Exam Focused</span>
      <span class="badge">Concept Based</span>
      <span class="badge">PYQ Driven</span>
    </div>
  </div>
  <div class="vision-box">
    <div class="vtitle">🎯 VISION</div>
    <div class="vtext">Understand<br>Organize<br>Remember<br>Score 700+</div>
  </div>
</div>

<!-- MAIN BODY -->
<div class="body">

  <!-- TOP SECTION -->
  <div class="top-section">

    <!-- LEFT: General Surgery Domains -->
    <div class="domain-box left">
      <div class="domain-header">General Surgery – Core Domains</div>
      <div class="domain-list">
        <div class="domain-item">
          <div class="domain-icon">🔪</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Wound Healing &amp; Infection</div>
            <div class="domain-item-sub">Phases, Collagen types, SSI, Dehiscence</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">💉</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Shock &amp; Resuscitation</div>
            <div class="domain-item-sub">Hypovolaemic, Septic, Neurogenic, Obstructive</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🔥</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Burns &amp; Trauma</div>
            <div class="domain-item-sub">Rule of Nines, Parkland, ATLS, ABCDE</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🏥</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Acute Abdomen</div>
            <div class="domain-item-sub">Appendicitis, Peritonitis, Obstruction, Perforation</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">♻️</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Sterilisation &amp; Asepsis</div>
            <div class="domain-item-sub">Autoclave, EO, Glutaraldehyde, Drains, Sutures</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🩸</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Preoperative Assessment</div>
            <div class="domain-item-sub">ASA Grade, Risk factors, Blood transfusion, DVT prophylaxis</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">⚕️</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Postoperative Complications</div>
            <div class="domain-item-sub">Fever, DVT/PE, Ileus, Anastomotic leak, Pulmonary</div>
          </div>
        </div>
      </div>
    </div>

    <!-- CENTER: Mind Map SVG -->
    <div class="mindmap-container">
      <svg class="mindmap-svg" viewBox="0 0 438 290" xmlns="http://www.w3.org/2000/svg">
        <!-- Background -->
        <rect width="438" height="290" fill="white"/>

        <!-- Petal paths (8 petals around center) -->
        <!-- Top: Emergency Surgery -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#c0392b" opacity="0.85" transform="rotate(0,219,145)"/>
        <!-- Top-right: GI Surgery -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#e67e22" opacity="0.85" transform="rotate(45,219,145)"/>
        <!-- Right: Hepatobiliary -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#f39c12" opacity="0.85" transform="rotate(90,219,145)"/>
        <!-- Bottom-right: Urology -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#27ae60" opacity="0.85" transform="rotate(135,219,145)"/>
        <!-- Bottom: Vascular -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#16a085" opacity="0.85" transform="rotate(180,219,145)"/>
        <!-- Bottom-left: Hernia -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#2980b9" opacity="0.85" transform="rotate(225,219,145)"/>
        <!-- Left: Breast+Thyroid -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#8e44ad" opacity="0.85" transform="rotate(270,219,145)"/>
        <!-- Top-left: Paeds+Onco -->
        <ellipse cx="219" cy="60" rx="54" ry="28" fill="#9b1d6e" opacity="0.85" transform="rotate(315,219,145)"/>

        <!-- Center circle (white mask) -->
        <circle cx="219" cy="145" r="60" fill="white"/>
        <!-- Center circle dark -->
        <circle cx="219" cy="145" r="58" fill="#0B1B3D" stroke="#FFD700" stroke-width="2.5"/>
        <!-- Center inner ring -->
        <circle cx="219" cy="145" r="53" fill="none" stroke="#FFD700" stroke-width="1" opacity="0.4"/>

        <!-- Center text -->
        <text x="219" y="130" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="9" font-weight="900">SURGERY</text>
        <text x="219" y="143" text-anchor="middle" fill="#FFD700" font-family="Montserrat,Arial" font-size="11" font-weight="900">MASTER MAP</text>
        <text x="219" y="155" text-anchor="middle" fill="#b0c4de" font-family="Montserrat,Arial" font-size="6" font-weight="600">Think Systematically</text>
        <text x="219" y="164" text-anchor="middle" fill="#b0c4de" font-family="Montserrat,Arial" font-size="6" font-weight="600">Score Consistently</text>
        <text x="219" y="176" text-anchor="middle" font-size="14">🧠</text>

        <!-- Petal labels -->
        <!-- TOP: Emergency Surgery -->
        <text x="219" y="19" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">EMERGENCY</text>
        <text x="219" y="28" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6.5">Shock, Trauma</text>
        <text x="219" y="37" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6.5">Burns, ATLS</text>

        <!-- TOP-RIGHT: GI Surgery -->
        <text x="314" y="57" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">GI SURGERY</text>
        <text x="320" y="66" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Appendix, Bowel</text>
        <text x="320" y="74" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">PUD, Obstruction</text>

        <!-- RIGHT: Hepatobiliary -->
        <text x="366" y="138" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">HEPATO-</text>
        <text x="366" y="147" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">BILIARY</text>
        <text x="366" y="157" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Gallstones</text>
        <text x="366" y="165" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Pancreatitis</text>

        <!-- BOTTOM-RIGHT: Urology -->
        <text x="314" y="222" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">UROLOGY</text>
        <text x="314" y="232" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Stones, BPH</text>
        <text x="314" y="240" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Bladder CA</text>

        <!-- BOTTOM: Vascular -->
        <text x="219" y="256" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">VASCULAR</text>
        <text x="219" y="265" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">AAA, DVT, PE</text>
        <text x="219" y="273" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Varicose Veins</text>

        <!-- BOTTOM-LEFT: Hernia -->
        <text x="124" y="222" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">HERNIA</text>
        <text x="124" y="232" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Inguinal, Femoral</text>
        <text x="124" y="240" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Special Hernias</text>

        <!-- LEFT: Breast+Thyroid -->
        <text x="72" y="138" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">BREAST &amp;</text>
        <text x="72" y="147" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">THYROID</text>
        <text x="72" y="157" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Carcinoma</text>
        <text x="72" y="165" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Goitre, MEN</text>

        <!-- TOP-LEFT: Paeds+Onco -->
        <text x="124" y="57" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">PAEDS &amp;</text>
        <text x="124" y="66" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="7" font-weight="800">ONCOLOGY</text>
        <text x="118" y="76" text-anchor="middle" fill="white" font-family="Montserrat,Arial" font-size="6">Tumour Markers</text>
      </svg>
    </div>

    <!-- RIGHT: Surgical Specialty Domains -->
    <div class="domain-box right">
      <div class="domain-header">Surgical Specialties – Core Domains</div>
      <div class="domain-list">
        <div class="domain-item">
          <div class="domain-icon">🔬</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Breast Surgery</div>
            <div class="domain-item-sub">Carcinoma, Staging, Mastectomy, SLNB</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🦋</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Thyroid &amp; Parathyroid</div>
            <div class="domain-item-sub">Cancer types, MEN syndromes, Calcitonin</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🫘</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Hepatobiliary Surgery</div>
            <div class="domain-item-sub">Gallstones, CBD, Pancreatitis, Liver abscess</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🫁</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Urology</div>
            <div class="domain-item-sub">Renal stones, BPH, Bladder/Prostate CA</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🩻</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Vascular Surgery</div>
            <div class="domain-item-sub">AAA, DVT/PE, Varicose veins, PVD</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">👶</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Paediatric Surgery</div>
            <div class="domain-item-sub">Pyloric stenosis, Intussusception, Hirschsprung</div>
          </div>
        </div>
        <div class="domain-item">
          <div class="domain-icon">🎗️</div>
          <div class="domain-item-text">
            <div class="domain-item-title">Surgical Oncology</div>
            <div class="domain-item-sub">TNM staging, Tumour markers, Biopsy types</div>
          </div>
        </div>
      </div>
    </div>
  </div>

  <!-- MIDDLE 3 COLUMNS -->
  <div class="middle-section">

    <!-- Gold Standards -->
    <div class="card gold">
      <div class="card-header">🏆 Gold Standards in Surgery</div>
      <div class="card-body">
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Acute Appendicitis</span><span class="gold-answer">CT Scan (94–98% sensitivity)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Gallstones (Cholelithiasis)</span><span class="gold-answer">Ultrasound (USG)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Ureteric Colic / Stone</span><span class="gold-answer">Non-contrast CT-KUB</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Breast Lump</span><span class="gold-answer">Triple Assessment (Clinic+Imaging+Biopsy)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Pancreatitis Complications</span><span class="gold-answer">CECT Abdomen (Balthazar)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">DVT</span><span class="gold-answer">Doppler Ultrasound</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Pulmonary Embolism</span><span class="gold-answer">CT Pulmonary Angiography (CTPA)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Hirschsprung's Disease</span><span class="gold-answer">Rectal Biopsy (absent ganglion cells)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Pyloric Stenosis</span><span class="gold-answer">Ultrasound (muscle thickness >4mm)</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Meckel's Diverticulum</span><span class="gold-answer">Tc-99m Pertechnetate Scan</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">AAA (Screening)</span><span class="gold-answer">Ultrasound; CT Angiography for repair planning</span></div>
        <div class="gold-row"><div class="gold-check">✓</div><span class="gold-condition">Follicular Thyroid CA</span><span class="gold-answer">Histopathology (capsular invasion)</span></div>
      </div>
    </div>

    <!-- Key Principles -->
    <div class="card principles">
      <div class="card-header">⚡ Key Principles – S·U·R·G·E·O·N</div>
      <div class="card-body">
        <div style="font-size:6px; color:#888; margin-bottom:4px; font-style:italic;">Remember the SURGEON framework for every case</div>

        <div class="principle-row"><div class="principle-letter" style="background:#c0392b">S</div><span><b>Stabilise first</b> – ABC before definitive surgery</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#e67e22">U</div><span><b>Understand anatomy</b> – landmarks, boundaries, relations</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#f39c12">R</div><span><b>Resuscitate appropriately</b> – RL for hypovolaemia, correct electrolytes</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#27ae60">G</div><span><b>Gold standard investigations</b> – order the right test first</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#16a085">E</div><span><b>Exclude malignancy</b> – always biopsy suspicious lesions</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#2980b9">O</div><span><b>Operate with a plan</b> – consent, anaesthesia, prophylaxis</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#8e44ad">N</div><span><b>Next best step</b> – NEET PG always asks "what next?"</span></div>

        <div style="height:5px"></div>
        <div style="font-size:7px; font-weight:800; color:#e07b3a; margin-bottom:3px; border-top:1px solid #f5cba7; padding-top:4px;">CLINICAL APPROACH TO ACUTE ABDOMEN</div>
        <div class="principle-row"><div class="principle-letter" style="background:#c0392b">1</div><span>Rule out <b>perforation</b> – erect CXR (gas under diaphragm)</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#e67e22">2</div><span>Rule out <b>obstruction</b> – AXR (dilated loops, air-fluid levels)</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#27ae60">3</div><span>Suspect <b>appendicitis</b> – RIF pain + Alvarado score</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#2980b9">4</div><span>Check <b>hernia orifices</b> – always examine groin in obstruction</span></div>
        <div class="principle-row"><div class="principle-letter" style="background:#8e44ad">5</div><span><b>Digital PR exam</b> – mandatory in acute abdomen</span></div>
      </div>
    </div>

    <!-- High Yield Fact File -->
    <div class="card highyield">
      <div class="card-header">★ High Yield Fact File</div>
      <div class="card-body">
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common cause SB obstruction: <b>Adhesions</b> (post-op)</span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common LB obstruction: <b>Carcinoma colon</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common position of appendix: <b>Retrocaecal (65%)</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common thyroid cancer: <b>Papillary carcinoma</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common breast cancer: <b>Invasive Ductal Carcinoma</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common renal stone: <b>Calcium oxalate (70-80%)</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Only radiolucent stone: <b>Uric acid</b><span class="hy-warn">!</span></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common cause of pancreatitis in India: <b>Gallstones</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Staghorn calculus: <b>Struvite (Proteus mirabilis)</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most common hernia overall: <b>Indirect Inguinal</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Hernia that strangulates WITHOUT obstruction: <b>Richter's</b><span class="hy-warn">!</span></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Best prognosis thyroid CA: <b>Papillary</b>; Worst: <b>Anaplastic</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Wound tensile strength max: <b>80%</b> at 3 months<span class="hy-warn">!</span></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Most important cell in wound healing: <b>Macrophage</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Collagen first synthesized: <b>Type III</b> → replaced by <b>Type I</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Rule of nines – lower limb: <b>18%</b>; Upper limb: <b>9%</b></span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">Parkland formula fluid: <b>Ringer's Lactate</b> (Muir-Barclay: Colloid)</span></div>
        <div class="hy-row"><span class="hy-star">★</span><span class="hy-text">MEN 2A: Medullary thyroid CA + <b>Phaeochromocytoma</b> + HPT</span></div>
      </div>
    </div>

  </div>

  <!-- LOWER SECTION -->
  <div class="lower-section">

    <!-- Important Definitions -->
    <div class="def-box">
      <div class="def-title">Important Definitions</div>
      <div class="def-item">• <b>Class I Shock:</b> Blood loss &lt;15% (&lt;750mL), HR &lt;100, BP normal</div>
      <div class="def-item">• <b>Class III Shock:</b> 30–40% loss, BP drops, confused patient</div>
      <div class="def-item">• <b>Clean wound (Class I):</b> Elective, no hollow organ entered, &lt;5% infection</div>
      <div class="def-item">• <b>Alvarado score 7–10:</b> High probability appendicitis → surgery</div>
      <div class="def-item">• <b>Major burn adult:</b> &gt;15% TBSA; Child: &gt;10% TBSA</div>
      <div class="def-item">• <b>AAA repair indicated:</b> Diameter &gt;5.5 cm or expanding &gt;1 cm/yr</div>
      <div class="def-item">• <b>Viable bowel (ischaemia):</b> Pink colour, peristalsis, arterial pulsation</div>
      <div class="def-item">• <b>Meckel's Rule of 2s:</b> 2%, 2 inches, 2 feet, 2 types, 2:1 M:F</div>
      <div class="def-item">• <b>Hernia strangulation:</b> Bowel ischaemia – needs URGENT surgery</div>
    </div>

    <!-- Abbreviations -->
    <div class="abbr-box">
      <div class="abbr-title">Abbreviations – Must Know</div>
      <div class="abbr-grid">
        <div>
          <div class="abbr-item"><b>ATLS</b> – Advanced Trauma Life Support</div>
          <div class="abbr-item"><b>FAST</b> – Focused Assessment Sonography in Trauma</div>
          <div class="abbr-item"><b>SSI</b> – Surgical Site Infection</div>
          <div class="abbr-item"><b>DVT</b> – Deep Vein Thrombosis</div>
          <div class="abbr-item"><b>PE</b> – Pulmonary Embolism</div>
          <div class="abbr-item"><b>CTPA</b> – CT Pulmonary Angiography</div>
          <div class="abbr-item"><b>LMWH</b> – Low Molecular Weight Heparin</div>
          <div class="abbr-item"><b>AAA</b> – Abdominal Aortic Aneurysm</div>
          <div class="abbr-item"><b>EVAR</b> – Endovascular Aneurysm Repair</div>
        </div>
        <div>
          <div class="abbr-item"><b>ERCP</b> – Endoscopic Retrograde Cholangiopancreatography</div>
          <div class="abbr-item"><b>PCNL</b> – Percutaneous Nephrolithotomy</div>
          <div class="abbr-item"><b>ESWL</b> – Extracorporeal Shock Wave Lithotripsy</div>
          <div class="abbr-item"><b>TURP</b> – TransUrethral Resection of Prostate</div>
          <div class="abbr-item"><b>BPH</b> – Benign Prostatic Hyperplasia</div>
          <div class="abbr-item"><b>FNAC</b> – Fine Needle Aspiration Cytology</div>
          <div class="abbr-item"><b>SLNB</b> – Sentinel Lymph Node Biopsy</div>
          <div class="abbr-item"><b>IDC</b> – Invasive Ductal Carcinoma</div>
          <div class="abbr-item"><b>TNM</b> – Tumour Node Metastasis staging</div>
        </div>
        <div>
          <div class="abbr-item"><b>PUD</b> – Peptic Ulcer Disease</div>
          <div class="abbr-item"><b>SBO</b> – Small Bowel Obstruction</div>
          <div class="abbr-item"><b>CBD</b> – Common Bile Duct</div>
          <div class="abbr-item"><b>RLN</b> – Recurrent Laryngeal Nerve</div>
          <div class="abbr-item"><b>RIF</b> – Right Iliac Fossa</div>
          <div class="abbr-item"><b>PR</b> – Per Rectum (digital rectal exam)</div>
          <div class="abbr-item"><b>NGT</b> – Nasogastric Tube</div>
          <div class="abbr-item"><b>ICS</b> – Intercostal Space</div>
          <div class="abbr-item"><b>TBSA</b> – Total Body Surface Area</div>
        </div>
      </div>
    </div>

    <!-- Exam Approach -->
    <div class="exam-box">
      <div class="exam-title">📋 Exam Approach</div>
      <div class="exam-step"><div class="step-num">1</div><span>Read the stem carefully – spot the key finding</span></div>
      <div class="exam-step"><div class="step-num">2</div><span>Identify the diagnosis or complication first</span></div>
      <div class="exam-step"><div class="step-num">3</div><span>Think pathophysiology – why does it happen?</span></div>
      <div class="exam-step"><div class="step-num">4</div><span>Apply NEXT BEST STEP logic (not ideal, but practical)</span></div>
      <div class="exam-step"><div class="step-num">5</div><span>Eliminate wrong options (2 usually clearly wrong)</span></div>
      <div class="exam-step"><div class="step-num">6</div><span>Choose the best answer – not the perfect one</span></div>
    </div>

  </div>

  <!-- FOOTER CALLOUT CARDS -->
  <div class="footer-cards">

    <div class="footer-card fc-pyq">
      <div class="footer-card-title"><span class="footer-card-icon">💡</span>PYQ Pearl</div>
      <div class="footer-card-text">
        &gt;60% surgery questions are case-based. Concept clarity + clinical reasoning = the key.<br><br>
        Focus: <b>Shock class + Burns formula + Hernia types + Appendicitis score + Stone types</b> – these repeat every year!
      </div>
    </div>

    <div class="footer-card fc-ini">
      <div class="footer-card-title"><span class="footer-card-icon">⭐</span>INI-CET Pearl</div>
      <div class="footer-card-text">
        INI-CET focuses on <b>algorithms</b>, next-best-step, first-line investigation, and complications.<br><br>
        Master: Alvarado score, Parkland formula, Ranson criteria, TNM staging, ATLS sequence.
      </div>
    </div>

    <div class="footer-card fc-trap">
      <div class="footer-card-title"><span class="footer-card-icon">⚠️</span>Exam Trap</div>
      <div class="footer-card-text">
        • Don't confuse <b>Richter's</b> (no obstruction) with regular strangulation<br>
        • Uric acid stone = <b>radiolucent</b> – NOT seen on plain X-ray<br>
        • <b>Neurogenic shock</b> = Bradycardia (not tachycardia like all others!)<br>
        • Follicular CA: NOT diagnosed by FNAC – needs histopathology
      </div>
    </div>

    <div class="footer-card fc-mantra">
      <div class="footer-card-title"><span class="footer-card-icon">🧠</span>Quick Revision Mantra</div>
      <div class="footer-card-text">Revise topics systematically, then test yourself with PYQs, then apply in clinical MCQs.</div>
      <div class="mantra-flow">Revise → Recall → Apply → <span style="color:#c0392b">REPEAT!</span></div>
    </div>

  </div>

  <!-- BOTTOM BAR -->
  <div class="bottom-bar">
    ★ CONSISTENT STUDY + SMART REVISION + PYQ PRACTICE = 700+ IS POSSIBLE ★
  </div>

</div>
</body>
</html>
Now let me write the remaining atlas pages and then compile all into one PDF:
Writing File

~/surgery-neet-pg/atlas_pages2to6.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Surgery Atlas - Pages 2-6</title>
<style>
  @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');
  * { margin:0; padding:0; box-sizing:border-box; }
  body { font-family:'Montserrat',Arial,sans-serif; background:white; width:794px; font-size:7.5px; color:#1a1a2e; }
  .page { width:794px; min-height:1123px; page-break-after:always; padding-bottom:0; }

  /* REUSABLE COMPONENTS */
  .pg-header { background:#0B1B3D; padding:6px 12px 5px; display:flex; align-items:center; justify-content:space-between; }
  .pg-num { border:2px solid #fff; color:white; font-weight:900; font-size:11px; padding:3px 7px; text-align:center; min-width:38px; line-height:1.1; }
  .pg-num span { font-size:6.5px; font-weight:600; display:block; }
  .pg-title { color:white; font-size:18px; font-weight:900; text-transform:uppercase; letter-spacing:.5px; text-align:center; flex:1; }
  .pg-subtitle { color:#FFD700; font-size:8px; font-weight:700; text-align:center; margin-top:2px; }
  .pg-badge { background:#1a3a6b; border:1.5px solid #FFD700; border-radius:5px; padding:4px 8px; text-align:center; }
  .pg-badge .bt { color:#FFD700; font-weight:900; font-size:8px; }
  .pg-badge .bs { color:white; font-size:6px; line-height:1.4; }

  .body { padding:6px 8px; }

  /* Section headers */
  .sec-header { border-radius:5px 5px 0 0; padding:4px 10px; color:white; font-weight:800; font-size:8px; text-transform:uppercase; letter-spacing:.5px; margin-bottom:0; }
  .sec-body { border-radius:0 0 6px 6px; border:1.5px solid; border-top:none; padding:5px 7px; margin-bottom:6px; }

  /* Tables */
  table { width:100%; border-collapse:collapse; font-size:6.5px; margin-bottom:6px; }
  th { background:#0B1B3D; color:white; font-weight:800; padding:4px 5px; text-align:left; font-size:7px; }
  th.teal { background:#007878; }
  th.red { background:#c0392b; }
  th.purple { background:#6a0dad; }
  th.orange { background:#e07b3a; }
  th.green { background:#1e8449; }
  td { padding:3.5px 5px; border-bottom:.5px solid #dee2e6; vertical-align:top; line-height:1.35; }
  tr:nth-child(even) td { background:#f8f9fa; }
  tr:nth-child(odd) td { background:#ffffff; }
  td b { color:#0B1B3D; }
  td.highlight { background:#fff3cd !important; }

  /* 2-col layout */
  .two-col { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-bottom:6px; }
  .three-col { display:grid; grid-template-columns:1fr 1fr 1fr; gap:6px; margin-bottom:6px; }

  /* Info boxes */
  .red-box { background:#fdf2f2; border:1.5px solid #c0392b; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .red-box-title { color:#c0392b; font-weight:800; font-size:7.5px; margin-bottom:3px; text-transform:uppercase; }
  .yellow-box { background:#fffce6; border:1.5px solid #f1c40f; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .yellow-box-title { color:#9b7c00; font-weight:800; font-size:7.5px; margin-bottom:3px; text-transform:uppercase; }
  .green-box { background:#eafaf1; border:1.5px solid #1e8449; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .green-box-title { color:#1e8449; font-weight:800; font-size:7.5px; margin-bottom:3px; text-transform:uppercase; }
  .blue-box { background:#eaf4fb; border:1.5px solid #2980b9; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .blue-box-title { color:#1a5276; font-weight:800; font-size:7.5px; margin-bottom:3px; text-transform:uppercase; }
  .purple-box { background:#f4eafd; border:1.5px solid #6a0dad; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .purple-box-title { color:#6c3483; font-weight:800; font-size:7.5px; margin-bottom:3px; text-transform:uppercase; }

  .li { font-size:6.5px; line-height:1.45; margin-bottom:2px; padding-left:10px; text-indent:-10px; }
  .li::before { content:"• "; color:#c0392b; font-weight:700; }
  .li b { color:#0B1B3D; }

  /* PYQ box */
  .pyq-box { background:#fffce6; border-left:3px solid #f39c12; border-radius:4px; padding:4px 6px; margin-top:4px; }
  .pyq-title { color:#9b7c00; font-weight:800; font-size:7px; margin-bottom:2px; }
  .pyq-item { font-size:6.5px; line-height:1.4; margin-bottom:2px; color:#1a1a2e; }
  .pyq-item::before { content:"Q: "; color:#e07b3a; font-weight:800; }

  /* High yield badge */
  .hy-badge { display:inline-block; background:#c0392b; color:white; border-radius:3px; font-size:6px; font-weight:800; padding:1px 4px; margin-left:3px; vertical-align:middle; }

  /* Footer bar */
  .pg-footer { background:#0B1B3D; color:#FFD700; text-align:center; padding:4px; font-size:7px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; margin-top:6px; }

  /* Comparison table */
  .vs-table { width:100%; font-size:6.5px; margin-bottom:5px; }
  .vs-table th { text-align:center; padding:4px 6px; font-size:7.5px; }
  .vs-table td { padding:3px 6px; border-bottom:.5px solid #dee2e6; vertical-align:top; line-height:1.35; }
  .vs-table tr:nth-child(even) td { background:#f8f9fa; }

  /* Mnemonic box */
  .mnemonic { background:linear-gradient(135deg,#eaf4fb,#f4eafd); border:1.5px solid #2980b9; border-radius:6px; padding:5px 7px; margin-bottom:5px; }
  .mnemonic-title { font-weight:800; font-size:7.5px; color:#1a5276; margin-bottom:3px; }
  .mnemonic-row { display:flex; gap:5px; align-items:flex-start; margin-bottom:2px; font-size:6.5px; line-height:1.3; }
  .mnem-letter { background:#1a5276; color:white; border-radius:2px; width:13px; height:13px; font-size:7.5px; font-weight:900; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

  /* Triads / special boxes */
  .triad-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:4px; margin-bottom:5px; }
  .triad-card { border-radius:5px; padding:4px 6px; text-align:center; border:1.5px solid; }
  .triad-title { font-weight:800; font-size:7px; margin-bottom:2px; text-transform:uppercase; }
  .triad-body { font-size:6px; line-height:1.4; }

  .flowchart { background:#f0f4ff; border:1.5px dashed #2980b9; border-radius:6px; padding:5px 7px; margin-bottom:5px; font-size:6.5px; text-align:center; }
  .arrow { color:#c0392b; font-weight:900; margin:0 3px; }
</style>
</head>
<body>

<!-- ═══════════════════════════════════════════════════════════════
     PAGE 2: WOUNDS, SHOCK, BURNS & TRAUMA
════════════════════════════════════════════════════════════════ -->
<div class="page">
  <div class="pg-header">
    <div class="pg-num"><span>PAGE</span>2</div>
    <div style="flex:1;text-align:center">
      <div class="pg-title">Wounds · Shock · Burns · Trauma</div>
      <div class="pg-subtitle">⭐ General Surgery Principles | ATLS | Fluid Management</div>
    </div>
    <div class="pg-badge"><div class="bt">🔥 HIGH YIELD</div><div class="bs">Repeated Every Year<br>★★★★★</div></div>
  </div>
  <div class="body">

    <div class="two-col">
      <!-- WOUND HEALING -->
      <div>
        <div class="sec-header" style="background:#1e8449">🔬 Wound Healing – Phases</div>
        <div class="sec-body" style="border-color:#1e8449">
          <table>
            <tr><th class="green">Phase</th><th class="green">Timing</th><th class="green">Key Events</th><th class="green">Cells</th></tr>
            <tr><td><b>Haemostasis</b></td><td>Immediate</td><td>Vasoconstriction, platelet plug, fibrin clot</td><td>Platelets</td></tr>
            <tr><td><b>Inflammation</b></td><td>Day 1–4</td><td>Vasodilation, phagocytosis, debridement</td><td>Neutrophils (1–2d) → Macrophages</td></tr>
            <tr><td><b>Proliferation</b></td><td>Day 4–3wk</td><td>Fibroblasts, Type III collagen, angiogenesis, granulation tissue</td><td>Fibroblasts, Endothelial</td></tr>
            <tr><td><b>Remodelling</b></td><td>3wk–2yr</td><td>Type III → Type I collagen, wound contracts, scar matures</td><td>Myofibroblasts</td></tr>
          </table>
          <div class="red-box">
            <div class="red-box-title">🔴 Key Facts (PYQ)</div>
            <div class="li"><b>First collagen synthesised:</b> Type III → replaced by Type I</div>
            <div class="li"><b>Max tensile strength:</b> 80% of normal at 3 months (never 100%)</div>
            <div class="li"><b>Most important cell:</b> MACROPHAGE (orchestrates all phases)</div>
            <div class="li"><b>Wound contraction:</b> Myofibroblasts</div>
            <div class="li"><b>Vitamin C:</b> Essential for collagen cross-linking (hydroxylation of proline)</div>
            <div class="li"><b>Zinc deficiency:</b> Impaired wound healing (cofactor for DNA polymerase)</div>
          </div>
        </div>
      </div>

      <!-- SHOCK -->
      <div>
        <div class="sec-header" style="background:#c0392b">💉 Haemorrhagic Shock – ATLS Classification</div>
        <div class="sec-body" style="border-color:#c0392b">
          <table>
            <tr><th class="red">Class</th><th class="red">Blood Loss</th><th class="red">HR</th><th class="red">BP</th><th class="red">Urine</th><th class="red">Mental</th></tr>
            <tr><td><b>I</b></td><td>&lt;750mL (&lt;15%)</td><td>&lt;100</td><td>Normal</td><td>&gt;30mL/hr</td><td>Normal</td></tr>
            <tr><td><b>II</b></td><td>750–1500 (15–30%)</td><td>100–120</td><td>Normal</td><td>20–30</td><td>Anxious</td></tr>
            <tr class="highlight"><td><b>III</b></td><td>1500–2000 (30–40%)</td><td>120–140</td><td>↓</td><td>5–15</td><td>Confused</td></tr>
            <tr class="highlight"><td><b>IV</b></td><td>&gt;2000mL (&gt;40%)</td><td>&gt;140</td><td>Very low</td><td>&lt;5mL</td><td>Lethargic</td></tr>
          </table>
          <div class="green-box">
            <div class="green-box-title">💡 Shock Types – Must Know</div>
            <div class="li"><b>Neurogenic shock:</b> Bradycardia + hypotension (warm peripheries) – UNIQUE! <span class="hy-badge">TRAP</span></div>
            <div class="li"><b>Obstructive:</b> Tension PTX, Tamponade, Massive PE</div>
            <div class="li"><b>Beck's triad (tamponade):</b> Hypotension + Muffled sounds + Raised JVP</div>
            <div class="li"><b>First line fluid:</b> Ringer's Lactate (Hartmann's) via 2 large-bore IV</div>
            <div class="li"><b>Urine target:</b> 0.5 mL/kg/hr adult; 1 mL/kg/hr child</div>
          </div>
        </div>
      </div>
    </div>

    <!-- BURNS - Full width -->
    <div class="sec-header" style="background:#e07b3a">🔥 Burns – Classification, Rule of Nines & Fluid Resuscitation</div>
    <div class="sec-body" style="border-color:#e07b3a">
      <div class="three-col">
        <div>
          <table>
            <tr><th class="orange">Rule of Nines (Adult)</th><th class="orange">% TBSA</th></tr>
            <tr><td><b>Head + Neck</b></td><td>9% (Head 7%, Neck 2%)</td></tr>
            <tr><td><b>Each Upper Limb</b></td><td>9% each (18% total)</td></tr>
            <tr><td><b>Anterior Trunk</b></td><td>18% (Chest 9% + Abd 9%)</td></tr>
            <tr><td><b>Posterior Trunk</b></td><td>18%</td></tr>
            <tr><td><b>Each Lower Limb</b></td><td>18% each (36% total)</td></tr>
            <tr><td><b>Perineum</b></td><td>1%</td></tr>
          </table>
          <div class="blue-box" style="margin-top:4px">
            <div class="blue-box-title">💡 Children</div>
            <div class="li">Use <b>Lund &amp; Browder Chart</b> – more accurate</div>
            <div class="li">Head proportionally larger (18% at birth)</div>
            <div class="li">Palm method: 1% TBSA for patchy burns</div>
          </div>
        </div>
        <div>
          <table>
            <tr><th class="orange">Depth</th><th class="orange">Features</th><th class="orange">Sensation</th></tr>
            <tr><td><b>1st Degree</b> (Superficial)</td><td>Red, dry, NO blisters</td><td>Painful</td></tr>
            <tr><td><b>2nd Superficial</b> (Partial)</td><td>Blisters, moist, pink</td><td>Very painful</td></tr>
            <tr><td><b>2nd Deep</b> (Deep partial)</td><td>Pale, mottled</td><td>Reduced</td></tr>
            <tr class="highlight"><td><b>3rd Degree</b> (Full thickness)</td><td>White/charred/leathery</td><td><b>PAINLESS</b></td></tr>
            <tr><td><b>4th Degree</b></td><td>Charred, muscle/bone</td><td>Painless</td></tr>
          </table>
        </div>
        <div>
          <div class="yellow-box">
            <div class="yellow-box-title">★ Parkland Formula (India/NEET)</div>
            <div style="font-size:7.5px; font-weight:800; color:#c0392b; margin-bottom:4px;">4 mL × Weight(kg) × %TBSA (2nd+3rd only)</div>
            <div class="li">½ in <b>first 8 hours</b> (from time of burn)</div>
            <div class="li">½ over next 16 hours</div>
            <div class="li">Fluid: <b>Ringer's Lactate</b></div>
          </div>
          <div class="yellow-box">
            <div class="yellow-box-title">Muir &amp; Barclay (UK)</div>
            <div style="font-size:6.5px;"><b>Weight × %TBSA ÷ 2</b> per period<br>6 periods: 4h, 4h, 4h, 6h, 6h, 12h<br>Fluid: <b>Colloid</b> (Human Albumin)</div>
          </div>
          <div class="red-box" style="margin-top:3px">
            <div class="red-box-title">⚠ Critical Points</div>
            <div class="li">Circumferential burn → <b>Escharotomy</b></div>
            <div class="li">Smoke inhalation → <b>Early intubation</b></div>
            <div class="li">Major burn adult: &gt;15% TBSA</div>
          </div>
        </div>
      </div>

      <div class="pyq-box">
        <div class="pyq-title">★ PYQ / Frequently Asked</div>
        <div class="pyq-item">Parkland formula fluid? Ans: Ringer's Lactate; half in first 8 hours from time of burn</div>
        <div class="pyq-item">Most accurate burns chart in children? Ans: Lund &amp; Browder Chart</div>
        <div class="pyq-item">Full thickness burn – sensation? Ans: PAINLESS (nerve endings destroyed)</div>
        <div class="pyq-item">Muir-Barclay uses which fluid? Ans: Colloid; Parkland uses crystalloid (RL)</div>
        <div class="pyq-item">Target urine output in burns? Ans: 0.5 mL/kg/hr (adult), 1 mL/kg/hr (child)</div>
      </div>
    </div>

    <!-- ATLS & TRAUMA -->
    <div class="two-col">
      <div>
        <div class="sec-header" style="background:#0B1B3D">🚨 ATLS Primary Survey – ABCDE</div>
        <div class="sec-body" style="border-color:#0B1B3D">
          <table>
            <tr><th>Step</th><th>Meaning</th><th>Key Action</th><th>Life Threats</th></tr>
            <tr><td><b>A</b></td><td>Airway + C-spine</td><td>Clear airway, immobilise C-spine</td><td>Foreign body, C-spine injury</td></tr>
            <tr><td><b>B</b></td><td>Breathing</td><td>Look-listen-feel, O2</td><td>Tension PTX, Open PTX, Haemothorax, Flail chest</td></tr>
            <tr><td><b>C</b></td><td>Circulation</td><td>2 large IVs, RL, FAST exam</td><td>Haemorrhage, tamponade</td></tr>
            <tr><td><b>D</b></td><td>Disability (Neuro)</td><td>GCS, pupils, glucose</td><td>GCS&lt;8 → intubate; unilateral dilated pupil = herniation</td></tr>
            <tr><td><b>E</b></td><td>Exposure</td><td>Undress, log roll, warm</td><td>Hidden injuries back/perineum</td></tr>
          </table>
        </div>
      </div>
      <div>
        <div class="triad-grid">
          <div class="triad-card" style="background:#fdf2f2; border-color:#c0392b">
            <div class="triad-title" style="color:#c0392b">Beck's Triad</div>
            <div style="font-size:7px; color:#c0392b; font-weight:800; margin-bottom:3px;">Cardiac Tamponade</div>
            <div class="triad-body">1. Hypotension<br>2. Muffled heart sounds<br>3. Raised JVP<br><br><b>Tx: Pericardiocentesis</b></div>
          </div>
          <div class="triad-card" style="background:#eaf4fb; border-color:#2980b9">
            <div class="triad-title" style="color:#2980b9">Charcot's Triad</div>
            <div style="font-size:7px; color:#2980b9; font-weight:800; margin-bottom:3px;">Acute Cholangitis</div>
            <div class="triad-body">1. Fever + rigors<br>2. Jaundice<br>3. RUQ pain<br><br><b>+2 = Reynolds Pentad</b></div>
          </div>
          <div class="triad-card" style="background:#eafaf1; border-color:#1e8449">
            <div class="triad-title" style="color:#1e8449">Rigler's Triad</div>
            <div style="font-size:7px; color:#1e8449; font-weight:800; margin-bottom:3px;">Gallstone Ileus</div>
            <div class="triad-body">1. Small bowel obstruction<br>2. Air in biliary tree<br>3. Ectopic gallstone<br><br><b>X-ray: Pneumobilia</b></div>
          </div>
        </div>
        <div class="red-box">
          <div class="red-box-title">⚠ Tension PTX vs Tamponade</div>
          <div style="font-size:6.5px; display:grid; grid-template-columns:1fr 1fr; gap:4px;">
            <div><b>Tension PTX:</b> Trachea DEVIATED away, absent breath sounds, hyperresonance → Needle decompression 2nd ICS MCL</div>
            <div><b>Tamponade:</b> Trachea MIDLINE, muffled sounds, Beck's triad → Pericardiocentesis</div>
          </div>
        </div>
      </div>
    </div>

  </div>
  <div class="pg-footer">★ WOUNDS • SHOCK • BURNS • TRAUMA – Know These Cold! ★</div>
</div>


<!-- ═══════════════════════════════════════════════════════════════
     PAGE 3: GI SURGERY + HEPATOBILIARY
════════════════════════════════════════════════════════════════ -->
<div class="page">
  <div class="pg-header">
    <div class="pg-num"><span>PAGE</span>3</div>
    <div style="flex:1;text-align:center">
      <div class="pg-title">Gastrointestinal Surgery</div>
      <div class="pg-subtitle">⭐ Appendicitis · Obstruction · PUD · Hepatobiliary · Pancreatitis</div>
    </div>
    <div class="pg-badge"><div class="bt">🏆 TOP PRIORITY</div><div class="bs">Most Repeated<br>GI Topics ★★★★★</div></div>
  </div>
  <div class="body">

    <div class="two-col">
      <!-- APPENDICITIS -->
      <div>
        <div class="sec-header" style="background:#c0392b">🎯 Acute Appendicitis</div>
        <div class="sec-body" style="border-color:#c0392b">
          <div class="mnemonic">
            <div class="mnemonic-title">MANTRELS = Alvarado Score (Max 10)</div>
            <div class="mnemonic-row"><div class="mnem-letter">M</div><span><b>M</b>igration of pain to RIF <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">A</div><span><b>A</b>norexia <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">N</div><span><b>N</b>ausea/Vomiting <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">T</div><span><b>T</b>enderness RIF <span style="color:#c0392b; font-weight:800">(2pts) ★</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">R</div><span><b>R</b>ebound tenderness <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">E</div><span><b>E</b>levated temperature &gt;37.3°C <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">L</div><span><b>L</b>eukocytosis &gt;10,000 <span style="color:#c0392b; font-weight:800">(2pts) ★</span></span></div>
            <div class="mnemonic-row"><div class="mnem-letter">S</div><span><b>S</b>hift to left (neutrophilia) <span style="color:#c0392b; font-weight:800">(1pt)</span></span></div>
          </div>
          <div style="font-size:6.5px; background:#fff3cd; border-radius:4px; padding:3px 6px; margin-bottom:4px;">
            <b>Score interpretation:</b> 7–10 = High probability → Surgery | 5–6 = Observe | &lt;5 = Low probability
          </div>
          <div class="li"><b>McBurney's Point:</b> Junction lateral ⅓ + medial ⅔ of ASIS-to-umbilicus line</div>
          <div class="li"><b>Rovsing's sign:</b> LIF pressure → RIF pain</div>
          <div class="li"><b>Psoas sign:</b> Pain on hip extension (retrocaecal appendix)</div>
          <div class="li"><b>Obturator sign:</b> Pain on internal hip rotation (pelvic appendix)</div>
          <div class="li"><b>Most common position:</b> Retrocaecal (65%) <span class="hy-badge">PYQ</span></div>
          <div class="li"><b>Best investigation:</b> CT scan (94–98%); USG for children/pregnant</div>
          <div class="pyq-box" style="margin-top:4px">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Most common position of appendix? Ans: Retrocaecal (65%)</div>
            <div class="pyq-item">Best investigation for appendicitis? Ans: CT (most accurate); USG in children</div>
            <div class="pyq-item">Alvarado score of 7–10? Ans: High probability → proceed to surgery</div>
          </div>
        </div>
      </div>

      <!-- INTESTINAL OBSTRUCTION -->
      <div>
        <div class="sec-header" style="background:#e07b3a">🔄 Intestinal Obstruction</div>
        <div class="sec-body" style="border-color:#e07b3a">
          <table>
            <tr><th class="orange">Feature</th><th class="orange">Small Bowel</th><th class="orange">Large Bowel</th></tr>
            <tr><td><b>Most common cause</b></td><td>Adhesions (post-op) ★</td><td>Carcinoma colon ★</td></tr>
            <tr><td><b>Vomiting</b></td><td>Early, projectile</td><td>Late, feculent</td></tr>
            <tr><td><b>Distension</b></td><td>Central, mild</td><td>Peripheral, marked</td></tr>
            <tr><td><b>X-ray pattern</b></td><td>Valvulae conniventes (full-width)</td><td>Haustra (partial-width)</td></tr>
            <tr><td><b>Air-fluid levels</b></td><td>Step-ladder pattern</td><td>Inverted U pattern</td></tr>
          </table>
          <div class="red-box">
            <div class="red-box-title">⭐ Special Types (All PYQ)</div>
            <div style="display:grid; grid-template-columns:1fr 1fr; gap:3px; font-size:6.5px;">
              <div><b>Richter's hernia:</b> No complete obstruction but can strangulate <span class="hy-badge">TRAP</span></div>
              <div><b>Sigmoid volvulus:</b> Coffee bean / Bent inner tube sign on X-ray</div>
              <div><b>Gallstone ileus:</b> Air in biliary tree (pneumobilia) = Rigler's triad</div>
              <div><b>Intussusception:</b> Currant jelly stools, sausage mass, target sign USG</div>
              <div><b>Caecal volvulus:</b> Kidney bean sign on X-ray</div>
              <div><b>Ogilvie's syndrome:</b> Pseudo-obstruction colon (no mechanical cause)</div>
            </div>
          </div>
          <div class="pyq-box">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Coffee bean sign on X-ray? Ans: Sigmoid volvulus</div>
            <div class="pyq-item">Currant jelly stools in a child? Ans: Intussusception</div>
            <div class="pyq-item">Air in biliary tree? Ans: Gallstone ileus (pneumobilia)</div>
          </div>
        </div>
      </div>
    </div>

    <div class="two-col">
      <!-- HEPATOBILIARY -->
      <div>
        <div class="sec-header" style="background:#007878">🫘 Hepatobiliary Surgery</div>
        <div class="sec-body" style="border-color:#007878">
          <table>
            <tr><th class="teal">Stone Type</th><th class="teal">Composition</th><th class="teal">Association</th><th class="teal">X-ray</th></tr>
            <tr><td><b>Cholesterol</b></td><td>Cholesterol &gt;50%</td><td>5 F's (Fat, Female, Fertile, Forty, Fair)</td><td>Radiolucent (80%)</td></tr>
            <tr><td><b>Black Pigment</b></td><td>Ca bilirubinate</td><td>Haemolytic anaemia, Cirrhosis</td><td>Radio-opaque</td></tr>
            <tr><td><b>Brown Pigment</b></td><td>Ca bilirubinate + FA</td><td>Bacterial infection, biliary stasis</td><td>Partial</td></tr>
          </table>
          <div class="green-box">
            <div class="green-box-title">💡 Key Clinical Signs</div>
            <div class="li"><b>Murphy's sign:</b> Cessation of inspiration on RUQ deep palpation (cholecystitis)</div>
            <div class="li"><b>Charcot's triad:</b> Fever + Jaundice + RUQ pain = Cholangitis</div>
            <div class="li"><b>Reynolds pentad:</b> Charcot's + Hypotension + Confusion = Severe cholangitis</div>
            <div class="li"><b>Courvoisier's law:</b> Palpable GB + painless jaundice = NOT stones = Malignancy <span class="hy-badge">★</span></div>
            <div class="li"><b>Mirizzi syndrome:</b> Stone in cystic duct → external compression of CBD → jaundice</div>
          </div>
          <div class="pyq-box">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Courvoisier's law significance? Ans: Palpable GB + painless jaundice = periampullary malignancy (NOT stones)</div>
            <div class="pyq-item">Best investigation for gallstones? Ans: Ultrasound</div>
            <div class="pyq-item">CBD stones treatment? Ans: ERCP + sphincterotomy</div>
          </div>
        </div>
      </div>

      <!-- PANCREATITIS -->
      <div>
        <div class="sec-header" style="background:#6a0dad">🔴 Acute Pancreatitis</div>
        <div class="sec-body" style="border-color:#6a0dad">
          <div class="mnemonic">
            <div class="mnemonic-title">GET SMASHED – Causes of Pancreatitis</div>
            <div style="display:grid; grid-template-columns:1fr 1fr; gap:2px; font-size:6.5px;">
              <div><b>G</b>allstones (40% – most common India)</div>
              <div><b>E</b>thanol/Alcohol (35%)</div>
              <div><b>T</b>rauma</div>
              <div><b>S</b>teroids</div>
              <div><b>M</b>umps / Autoimmune</div>
              <div><b>A</b>utoimmune / Scorpion sting</div>
              <div><b>S</b>corpion / Hyperlipidaemia</div>
              <div><b>H</b>ypercalcaemia / ERCP</div>
              <div><b>E</b>mboli / Drugs (azathioprine)</div>
              <div><b>D</b>rugs (thiazides, valproate)</div>
            </div>
          </div>
          <table style="margin-top:4px">
            <tr><th class="purple">Ranson's Criteria</th><th class="purple">At Admission</th><th class="purple">At 48 hrs</th></tr>
            <tr><td>Parameters</td><td>Age&gt;55, WBC&gt;16k, Glucose&gt;200, LDH&gt;350, AST&gt;250</td><td>HCT drop&gt;10%, BUN↑5, Ca&lt;8, PaO₂&lt;60, Base deficit&gt;4, Fluids&gt;6L</td></tr>
            <tr class="highlight"><td><b>Score</b></td><td colspan="2">&lt;3 = Mild | 3–5 = Moderate | &gt;5 = Severe (high mortality)</td></tr>
          </table>
          <div class="li" style="margin-top:4px"><b>Cullen's sign:</b> Periumbilical bruising (haemorrhagic pancreatitis)</div>
          <div class="li"><b>Grey-Turner's sign:</b> Flank bruising</div>
          <div class="li"><b>Lipase vs Amylase:</b> Lipase MORE SPECIFIC for pancreatitis <span class="hy-badge">PYQ</span></div>
          <div class="li"><b>Pseudocyst &gt;6cm &gt;6wks:</b> Cystogastrostomy (internal drainage)</div>
        </div>
      </div>
    </div>

  </div>
  <div class="pg-footer">★ GI SURGERY – Appendicitis • Obstruction • Gallstones • Pancreatitis ★</div>
</div>


<!-- ═══════════════════════════════════════════════════════════════
     PAGE 4: BREAST, THYROID & HERNIA
════════════════════════════════════════════════════════════════ -->
<div class="page">
  <div class="pg-header">
    <div class="pg-num"><span>PAGE</span>4</div>
    <div style="flex:1;text-align:center">
      <div class="pg-title">Breast · Thyroid · Hernia</div>
      <div class="pg-subtitle">⭐ Surgical Oncology + Endocrine Surgery + Abdominal Wall Hernias</div>
    </div>
    <div class="pg-badge"><div class="bt">⭐ HIGH YIELD</div><div class="bs">Top PYQ Topics<br>★★★★★</div></div>
  </div>
  <div class="body">

    <div class="two-col">
      <!-- BREAST -->
      <div>
        <div class="sec-header" style="background:#9b1d6e">🎗️ Breast Surgery</div>
        <div class="sec-body" style="border-color:#9b1d6e">
          <table>
            <tr><th style="background:#9b1d6e;color:white">Condition</th><th style="background:#9b1d6e;color:white">Age</th><th style="background:#9b1d6e;color:white">Features</th><th style="background:#9b1d6e;color:white">Consistency</th></tr>
            <tr><td><b>Fibroadenoma</b></td><td>15–30 yrs</td><td>'Breast mouse' – mobile, smooth, non-tender</td><td>Firm, rubbery</td></tr>
            <tr><td><b>Fibrocystic</b></td><td>30–50 yrs</td><td>Cyclical pain, bilateral, pre-menstrual</td><td>Nodular</td></tr>
            <tr><td><b>Breast Cyst</b></td><td>35–55 yrs</td><td>Smooth, tense, transilluminates</td><td>Cystic</td></tr>
            <tr class="highlight"><td><b>Carcinoma</b></td><td>&gt;40 yrs</td><td>Hard, irregular, skin tethering, nipple retraction, LN</td><td>Stony hard</td></tr>
            <tr><td><b>Fat Necrosis</b></td><td>Any (trauma)</td><td>Skin retraction – mimics CA</td><td>Hard</td></tr>
          </table>
          <div class="red-box">
            <div class="red-box-title">🔴 Breast Carcinoma – Key Facts</div>
            <div class="li"><b>Most common histology:</b> Invasive Ductal Carcinoma (75–80%) <span class="hy-badge">PYQ</span></div>
            <div class="li"><b>Most common site:</b> Upper outer quadrant (50%)</div>
            <div class="li"><b>Inflammatory breast CA:</b> Peau d'orange (dermal lymphatic invasion) – worst prognosis</div>
            <div class="li"><b>Paget's disease of nipple:</b> Associated with underlying intraductal carcinoma</div>
            <div class="li"><b>Triple assessment:</b> Clinical + Imaging (USG/mammography) + FNAC/biopsy</div>
            <div class="li"><b>BRCA1:</b> Breast + Ovarian; <b>BRCA2:</b> Breast + Pancreatic/Prostate</div>
            <div class="li"><b>Tamoxifen:</b> ER/PR+ breast cancer; SERM (pre + post-menopausal)</div>
          </div>
          <div class="pyq-box">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Most common type of breast cancer? Ans: Invasive Ductal Carcinoma</div>
            <div class="pyq-item">Peau d'orange in breast? Ans: Inflammatory breast carcinoma – dermal lymphatic invasion</div>
            <div class="pyq-item">Sentinel lymph node for breast drains to? Ans: Axillary nodes (Level I first)</div>
            <div class="pyq-item">Paget's disease of nipple associated with? Ans: Underlying intraductal carcinoma</div>
          </div>
        </div>
      </div>

      <!-- THYROID -->
      <div>
        <div class="sec-header" style="background:#007878">🦋 Thyroid Cancer</div>
        <div class="sec-body" style="border-color:#007878">
          <table>
            <tr><th class="teal">Type</th><th class="teal">Freq</th><th class="teal">Spread</th><th class="teal">Prognosis</th><th class="teal">Special</th></tr>
            <tr class="highlight"><td><b>Papillary</b></td><td>70–80%</td><td>Lymphatic (LN)</td><td>Excellent (&gt;95%)</td><td>Psammoma bodies, Orphan Annie nuclei</td></tr>
            <tr><td><b>Follicular</b></td><td>15–20%</td><td>Haematogenous (lung, bone)</td><td>Good</td><td>Vascular invasion; NOT by FNAC ★</td></tr>
            <tr><td><b>Medullary</b></td><td>5%</td><td>Both</td><td>Moderate</td><td>Calcitonin marker; MEN 2A/2B; RET gene</td></tr>
            <tr class="highlight"><td><b>Anaplastic</b></td><td>&lt;5%</td><td>Local + widespread</td><td>Very poor</td><td>Most aggressive; radio-resistant; elderly</td></tr>
          </table>
          <div style="display:grid; grid-template-columns:1fr 1fr; gap:4px; margin-top:4px;">
            <div class="blue-box">
              <div class="blue-box-title">MEN 2A</div>
              <div class="li">Medullary thyroid CA</div>
              <div class="li">Phaeochromocytoma</div>
              <div class="li">Primary Hyperparathyroidism</div>
            </div>
            <div class="purple-box">
              <div class="purple-box-title">MEN 2B</div>
              <div class="li">Medullary thyroid CA</div>
              <div class="li">Phaeochromocytoma</div>
              <div class="li">Mucosal neuromas</div>
              <div class="li">Marfanoid habitus</div>
            </div>
          </div>
          <div class="red-box" style="margin-top:4px">
            <div class="red-box-title">⚠ RLN Injury During Thyroidectomy</div>
            <div class="li"><b>Unilateral RLN:</b> Hoarseness (temporary or permanent)</div>
            <div class="li"><b>Bilateral RLN:</b> Stridor + respiratory distress → Emergency tracheotomy</div>
            <div class="li"><b>Hypocalcaemia:</b> Parathyroid gland inadvertent removal → Chvostek/Trousseau signs</div>
          </div>
          <div class="pyq-box">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Psammoma bodies in thyroid? Ans: Papillary carcinoma</div>
            <div class="pyq-item">Follicular CA diagnosed by? Ans: Histopathology (capsular/vascular invasion) – NOT FNAC</div>
            <div class="pyq-item">Tumour marker for medullary CA? Ans: Calcitonin</div>
          </div>
        </div>
      </div>
    </div>

    <!-- HERNIA -->
    <div class="sec-header" style="background:#2980b9">🔵 Hernia – Inguinal, Femoral &amp; Special Types</div>
    <div class="sec-body" style="border-color:#2980b9">
      <div class="three-col">
        <div>
          <table>
            <tr><th class="teal" style="background:#2980b9">Feature</th><th class="teal" style="background:#2980b9">Indirect</th><th class="teal" style="background:#2980b9">Direct</th></tr>
            <tr><td><b>Route</b></td><td>Deep ring → canal → superficial ring</td><td>Hesselbach's triangle</td></tr>
            <tr><td><b>Cause</b></td><td>Congenital (patent processus vaginalis)</td><td>Acquired (weak transversalis)</td></tr>
            <tr><td><b>Age</b></td><td>Young</td><td>Older</td></tr>
            <tr><td><b>Inf. epigastric</b></td><td>Lateral to it</td><td>Medial to it</td></tr>
            <tr class="highlight"><td><b>Strangulation</b></td><td>Higher risk</td><td>Lower risk</td></tr>
            <tr><td><b>Scrotum</b></td><td>Can descend</td><td>Rarely</td></tr>
          </table>
          <div class="blue-box" style="margin-top:4px">
            <div class="blue-box-title">Hesselbach's Triangle</div>
            <div class="li"><b>Medial:</b> Lateral border of Rectus abdominis</div>
            <div class="li"><b>Lateral:</b> Inferior epigastric vessels</div>
            <div class="li"><b>Inferior:</b> Inguinal ligament</div>
          </div>
        </div>
        <div>
          <div class="blue-box">
            <div class="blue-box-title">Femoral Hernia</div>
            <div class="li">Below + lateral to pubic tubercle</div>
            <div class="li">More common in women (wider pelvis)</div>
            <div class="li">BUT: Inguinal still more common in women!</div>
            <div class="li"><b>High strangulation risk</b> (narrow, rigid neck)</div>
            <div class="li">Lacunar lig. medially – can't be relieved!</div>
          </div>
          <table style="margin-top:4px">
            <tr><th class="teal" style="background:#2980b9">Special Hernia</th><th class="teal" style="background:#2980b9">Definition</th></tr>
            <tr class="highlight"><td><b>Richter's</b></td><td>Knuckle of bowel wall – strangulates WITHOUT obstruction <span class="hy-badge">★</span></td></tr>
            <tr><td><b>Littre's</b></td><td>Meckel's diverticulum in sac</td></tr>
            <tr class="highlight"><td><b>Maydl's (W hernia)</b></td><td>Middle loop of W strangulates inside abdomen <span class="hy-badge">★</span></td></tr>
            <tr><td><b>Spigelian</b></td><td>Linea semilunaris – interparietal, difficult to detect</td></tr>
            <tr><td><b>Obturator</b></td><td>Elderly thin woman; Howship-Romberg sign</td></tr>
            <tr><td><b>Sliding</b></td><td>Viscus wall forms part of hernia sac</td></tr>
          </table>
        </div>
        <div>
          <div class="yellow-box">
            <div class="yellow-box-title">★ Inguinal Canal (Boundaries)</div>
            <div class="li"><b>Anterior wall:</b> External oblique aponeurosis</div>
            <div class="li"><b>Posterior wall:</b> Transversalis fascia (+ conjoined tendon medially)</div>
            <div class="li"><b>Roof:</b> Transversus + Internal oblique</div>
            <div class="li"><b>Floor:</b> Inguinal ligament</div>
          </div>
          <div class="pyq-box" style="margin-top:4px">
            <div class="pyq-title">★ PYQ</div>
            <div class="pyq-item">Hernia that strangulates WITHOUT obstruction? Ans: Richter's hernia</div>
            <div class="pyq-item">Howship-Romberg sign? Ans: Obturator hernia (medial thigh pain)</div>
            <div class="pyq-item">Femoral hernia passes below which structure? Ans: Inguinal ligament (below + lateral to pubic tubercle)</div>
            <div class="pyq-item">Littre's hernia contains? Ans: Meckel's diverticulum</div>
            <div class="pyq-item">Most common hernia in females? Ans: Indirect inguinal (inguinal &gt; femoral even in women)</div>
          </div>
        </div>
      </div>
    </div>

  </div>
  <div class="pg-footer">★ BREAST • THYROID • HERNIA – Master the Details ★</div>
</div>


<!-- ═══════════════════════════════════════════════════════════════
     PAGE 5: UROLOGY + VASCULAR + PAEDIATRIC SURGERY
════════════════════════════════════════════════════════════════ -->
<div class="page">
  <div class="pg-header">
    <div class="pg-num"><span>PAGE</span>5</div>
    <div style="flex:1;text-align:center">
      <div class="pg-title">Urology · Vascular · Paediatric Surgery</div>
      <div class="pg-subtitle">⭐ Stones · BPH · AAA · DVT/PE · Pyloric Stenosis · Intussusception · Hirschsprung</div>
    </div>
    <div class="pg-badge"><div class="bt">🎯 PYQ HEAVY</div><div class="bs">Many PYQs Here<br>★★★★☆</div></div>
  </div>
  <div class="body">

    <!-- UROLOGY -->
    <div class="sec-header" style="background:#1e8449">🫘 Urology – Urinary Stones (Urolithiasis)</div>
    <div class="sec-body" style="border-color:#1e8449">
      <table>
        <tr><th class="green">Stone Type</th><th class="green">% Stones</th><th class="green">Radio-opacity</th><th class="green">Associations</th><th class="green">Urine pH</th><th class="green">Treatment Tips</th></tr>
        <tr class="highlight"><td><b>Calcium Oxalate</b> (most common)</td><td>70–80%</td><td>Radio-opaque</td><td>Hypercalciuria, Crohn's disease, hyperoxaluria</td><td>Acidic</td><td>Hydration, low oxalate diet</td></tr>
        <tr class="highlight"><td><b>Uric Acid</b></td><td>5–10%</td><td><b>RADIOLUCENT</b> ★</td><td>Gout, dehydration, myeloproliferative</td><td>Acidic (&lt;5.5)</td><td>Alkalinise urine (K-citrate)</td></tr>
        <tr><td><b>Struvite (Staghorn)</b></td><td>10–15%</td><td>Radio-opaque</td><td><b>Proteus mirabilis</b> (urease organism) ★</td><td>Alkaline (&gt;7)</td><td>PCNL + antibiotics</td></tr>
        <tr><td><b>Cystine</b></td><td>1–3%</td><td>Faintly opaque</td><td>Cystinuria (AR) – defective tubular reabsorption</td><td>Acidic</td><td>Alkalinise, penicillamine</td></tr>
        <tr><td><b>Calcium Phosphate</b></td><td>5–10%</td><td>Radio-opaque</td><td>Hyperparathyroidism, RTA type I</td><td>Alkaline</td><td>Treat underlying cause</td></tr>
      </table>
      <div class="three-col" style="margin-top:0">
        <div class="green-box">
          <div class="green-box-title">Radio-opacity Order</div>
          <div style="font-size:7px; font-weight:800; color:#1e8449; text-align:center; padding:3px">
            Ca Oxalate &gt; Ca Phosphate &gt; Struvite &gt; Cystine &gt; <span style="color:#c0392b">Uric Acid (LUCENT)</span>
          </div>
        </div>
        <div class="blue-box">
          <div class="blue-box-title">Treatment by Size</div>
          <div class="li">&lt;5mm: Conservative (pass spontaneously)</div>
          <div class="li">5–10mm: ESWL or ureteroscopy</div>
          <div class="li">&gt;2cm renal: PCNL</div>
          <div class="li">Staghorn: PCNL</div>
        </div>
        <div class="pyq-box">
          <div class="pyq-title">★ PYQ</div>
          <div class="pyq-item">Only radiolucent stone? Ans: Uric acid stone</div>
          <div class="pyq-item">Staghorn calculus = ? Ans: Struvite stone (Proteus mirabilis)</div>
          <div class="pyq-item">Investigation for ureteric colic? Ans: Non-contrast CT-KUB (NCCT)</div>
        </div>
      </div>
    </div>

    <div class="two-col">
      <!-- BPH -->
      <div>
        <div class="sec-header" style="background:#2980b9">🔵 BPH vs Prostate Carcinoma</div>
        <div class="sec-body" style="border-color:#2980b9">
          <table>
            <tr><th style="background:#2980b9;color:white">Feature</th><th style="background:#2980b9;color:white">BPH</th><th style="background:#2980b9;color:white">Prostate CA</th></tr>
            <tr class="highlight"><td><b>Zone</b></td><td><b>Transitional (Central)</b> ★</td><td><b>Peripheral zone</b> ★</td></tr>
            <tr><td>DRE</td><td>Smooth, firm, enlarged, groove preserved</td><td>Hard, nodular, irregular, no groove</td></tr>
            <tr><td>PSA</td><td>Raised (mod)</td><td>Markedly raised</td></tr>
            <tr><td>1st-line medical Rx</td><td>Alpha-blockers (tamsulosin)</td><td>Androgen deprivation</td></tr>
            <tr class="highlight"><td>Surgical gold standard</td><td><b>TURP</b></td><td>Radical prostatectomy</td></tr>
          </table>
          <div class="red-box">
            <div class="red-box-title">⚠ TUR Syndrome</div>
            <div class="li">Absorption of hypotonic irrigation fluid during TURP</div>
            <div class="li">→ Dilutional <b>hyponatraemia</b> → confusion, seizures</div>
            <div class="li">Treatment: Hypertonic saline + diuresis</div>
          </div>
        </div>
      </div>

      <!-- VASCULAR -->
      <div>
        <div class="sec-header" style="background:#c0392b">🩸 Vascular Surgery</div>
        <div class="sec-body" style="border-color:#c0392b">
          <div class="red-box">
            <div class="red-box-title">AAA – Abdominal Aortic Aneurysm</div>
            <div class="li"><b>Definition:</b> Aorta &gt;3cm (normal &lt;2.5cm)</div>
            <div class="li"><b>Most common site:</b> Infrarenal aorta (90%) <span class="hy-badge">PYQ</span></div>
            <div class="li"><b>Strongest RF:</b> Smoking; also atherosclerosis, male, &gt;65yrs</div>
            <div class="li"><b>Repair if:</b> &gt;5.5cm, expanding &gt;1cm/yr, symptomatic, ruptured <span class="hy-badge">★</span></div>
            <div class="li"><b>Ruptured triad:</b> Back pain + Hypotension + Pulsatile mass</div>
            <div class="li"><b>Treatment:</b> EVAR (preferred) or Open repair</div>
          </div>
          <table style="margin-top:3px">
            <tr><th class="red">DVT</th><th class="red">Pulmonary Embolism</th></tr>
            <tr><td>Unilateral leg swelling, Homan's sign (unreliable)</td><td>Dyspnoea, pleuritic pain, haemoptysis, tachycardia</td></tr>
            <tr><td>Investigation: Doppler USG (1st line)</td><td>Investigation: <b>CTPA</b> (gold standard) ★</td></tr>
            <tr class="highlight"><td>Virchow's triad: Stasis + Endothelial injury + Hypercoagulability</td><td>ECG: <b>S1Q3T3 pattern</b> ★</td></tr>
            <tr><td colspan="2">Treatment: LMWH → Warfarin/DOAC for 3–6 months; thrombolysis if haemodynamically unstable</td></tr>
          </table>
        </div>
      </div>
    </div>

    <!-- PAEDIATRIC SURGERY -->
    <div class="sec-header" style="background:#e07b3a">👶 Paediatric Surgery – High Yield Conditions</div>
    <div class="sec-body" style="border-color:#e07b3a">
      <table>
        <tr><th class="orange">Condition</th><th class="orange">Age</th><th class="orange">Presentation</th><th class="orange">Investigation</th><th class="orange">Treatment</th></tr>
        <tr class="highlight"><td><b>Pyloric Stenosis</b></td><td>2–6 weeks (M&gt;F 4:1)</td><td>Projectile NON-BILIOUS vomiting, 'olive' mass, hungry baby</td><td>USG (muscle &gt;4mm); Metabolic alkalosis + hypochloraemia</td><td>Ramstedt's pyloromyotomy (correct electrolytes FIRST)</td></tr>
        <tr class="highlight"><td><b>Intussusception</b></td><td>6mo–2yrs</td><td>Colicky pain, currant jelly stools, sausage mass RUQ</td><td>USG: Target sign / Doughnut sign</td><td>Air/hydrostatic enema (1st); Surgery if failed/peritonitis</td></tr>
        <tr><td><b>Hirschsprung's</b></td><td>Neonates</td><td>Delayed meconium (&gt;48hrs), distension, ribbon stools</td><td>Rectal biopsy: absent ganglion cells (GOLD STANDARD) ★</td><td>Surgical pull-through (Swenson/Duhamel/Soave)</td></tr>
        <tr><td><b>CDH</b></td><td>Neonate</td><td>Respiratory distress, scaphoid abdomen, bowel in chest</td><td>CXR: bowel in chest</td><td>Stabilise → surgical repair; Left-sided (Bochdalek) more common</td></tr>
        <tr class="highlight"><td><b>Meckel's Diverticulum</b></td><td>Rule of 2s</td><td>2% pop, 2 inches, 2 feet from IC valve, M:F 2:1</td><td>Tc-99m pertechnetate scan (ectopic gastric mucosa) ★</td><td>Surgical excision if symptomatic</td></tr>
      </table>
      <div class="pyq-box">
        <div class="pyq-title">★ PYQ</div>
        <div class="pyq-item">Meckel's Rule of 2s? Ans: 2% pop, 2 inches, 2 feet from ileocaecal valve, 2:1 M:F, ectopic gastric mucosa</div>
        <div class="pyq-item">Hirschsprung's gold standard investigation? Ans: Rectal biopsy (absent ganglion cells in Meissner's + Auerbach's plexus)</div>
        <div class="pyq-item">Currant jelly stools = ? Ans: Intussusception</div>
        <div class="pyq-item">Pyloric stenosis metabolic disturbance? Ans: Metabolic alkalosis + hypochloraemia + hypokalaemia (correct before surgery!)</div>
        <div class="pyq-item">ECG in massive PE? Ans: S1Q3T3 pattern; Gold standard investigation = CTPA</div>
      </div>
    </div>

  </div>
  <div class="pg-footer">★ UROLOGY • VASCULAR • PAEDIATRIC SURGERY ★</div>
</div>


<!-- ═══════════════════════════════════════════════════════════════
     PAGE 6: QUICK REFERENCE + TOP 40 PYQs
════════════════════════════════════════════════════════════════ -->
<div class="page">
  <div class="pg-header">
    <div class="pg-num"><span>PAGE</span>6</div>
    <div style="flex:1;text-align:center">
      <div class="pg-title">Quick Reference + Top 40 PYQs</div>
      <div class="pg-subtitle">⭐ Tumour Markers · Mnemonics · Instruments · Must-Know Facts</div>
    </div>
    <div class="pg-badge"><div class="bt">🎯 LAST-MINUTE</div><div class="bs">Final Revision<br>★★★★★</div></div>
  </div>
  <div class="body">

    <div class="two-col">
      <!-- TUMOUR MARKERS -->
      <div>
        <div class="sec-header" style="background:#6a0dad">🔬 Tumour Markers</div>
        <div class="sec-body" style="border-color:#6a0dad">
          <table>
            <tr><th class="purple">Marker</th><th class="purple">Primary Tumour</th><th class="purple">Notes</th></tr>
            <tr class="highlight"><td><b>CA 19-9</b></td><td>Pancreatic CA ★</td><td>Also biliary CA; best for monitoring</td></tr>
            <tr class="highlight"><td><b>AFP</b></td><td>Hepatocellular CA ★; Germ cell (non-seminoma)</td><td>Elevated in pregnancy, cirrhosis</td></tr>
            <tr><td><b>CEA</b></td><td>Colorectal CA (monitoring)</td><td>Also gastric, breast, lung; smokers</td></tr>
            <tr><td><b>PSA</b></td><td>Prostate CA</td><td>Also BPH, prostatitis; organ-specific</td></tr>
            <tr><td><b>CA 125</b></td><td>Ovarian CA (epithelial)</td><td>Also endometriosis, fibroids</td></tr>
            <tr><td><b>CA 15-3</b></td><td>Breast CA</td><td>Monitoring only (not screening)</td></tr>
            <tr class="highlight"><td><b>Calcitonin</b></td><td>Medullary Thyroid CA ★</td><td>Screen family members (MEN 2)</td></tr>
            <tr><td><b>Beta-hCG</b></td><td>Choriocarcinoma; Testicular CA</td><td>Gestational trophoblastic disease</td></tr>
            <tr><td><b>LDH</b></td><td>Seminoma, Lymphoma, Ewing's</td><td>Non-specific</td></tr>
            <tr><td><b>S-100</b></td><td>Melanoma, Schwannoma</td><td>Neural crest cell tumours</td></tr>
          </table>
        </div>
      </div>

      <!-- MNEMONICS -->
      <div>
        <div class="sec-header" style="background:#1a5276">💡 Key Mnemonics</div>
        <div class="sec-body" style="border-color:#1a5276">
          <table>
            <tr><th style="background:#1a5276;color:white">Mnemonic</th><th style="background:#1a5276;color:white">Stands For</th><th style="background:#1a5276;color:white">Topic</th></tr>
            <tr><td><b>MANTRELS</b></td><td>Migration, Anorexia, Nausea, Tenderness RIF, Rebound, Elevated Temp, Leukocytosis, Shift left</td><td>Alvarado Score (Appendicitis)</td></tr>
            <tr><td><b>GET SMASHED</b></td><td>Gallstones, Ethanol, Trauma, Steroids, Mumps, Autoimmune, Scorpion, Hyperlipidaemia, ERCP, Drugs</td><td>Pancreatitis causes</td></tr>
            <tr><td><b>5 F's</b></td><td>Fat, Female, Fertile, Forty, Fair</td><td>Cholesterol gallstones</td></tr>
            <tr><td><b>Rule of 2s</b></td><td>2%, 2 inches, 2 feet, &lt;2yrs, 2:1 M:F</td><td>Meckel's diverticulum</td></tr>
            <tr><td><b>ABCDE</b></td><td>Airway, Breathing, Circulation, Disability, Exposure</td><td>ATLS Primary Survey</td></tr>
            <tr><td><b>Virchow's Triad</b></td><td>Stasis + Endothelial injury + Hypercoagulability</td><td>DVT formation</td></tr>
            <tr><td><b>Beck's Triad</b></td><td>Hypotension + Muffled sounds + Raised JVP</td><td>Cardiac Tamponade</td></tr>
            <tr><td><b>Charcot's Triad</b></td><td>Fever + Jaundice + RUQ pain</td><td>Acute Cholangitis</td></tr>
            <tr><td><b>Reynolds Pentad</b></td><td>Charcot's + Hypotension + Confusion</td><td>Severe Cholangitis</td></tr>
            <tr><td><b>Rigler's Triad</b></td><td>SBO + Pneumobilia + Ectopic stone</td><td>Gallstone Ileus</td></tr>
          </table>
        </div>
      </div>
    </div>

    <!-- TOP 40 PYQs -->
    <div class="sec-header" style="background:#c0392b">🏆 TOP 40 MOST REPEATED SURGERY PYQs (NEET PG / INI-CET)</div>
    <div class="sec-body" style="border-color:#c0392b">
      <div style="display:grid; grid-template-columns:1fr 1fr; gap:6px; font-size:6.5px;">
        <div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>1.</b> Most common position of appendix: <b>Retrocaecal (65%)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>2.</b> Most common SBO cause (adults): <b>Adhesions</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>3.</b> Most common LBO cause: <b>Carcinoma colon</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>4.</b> Parkland formula: <b>4 × kg × %TBSA in RL; half in first 8 hrs</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>5.</b> Rule of nines – lower limb: <b>18%; upper limb: 9%</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>6.</b> Full thickness burn sensation: <b>Painless</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>7.</b> Most common thyroid cancer: <b>Papillary (psammoma bodies, lymphatic)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>8.</b> Best prognosis thyroid CA: <b>Papillary</b>; Worst: <b>Anaplastic</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>9.</b> Follicular CA diagnosed by: <b>Histopathology (not FNAC)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>10.</b> Charcot's triad: <b>Fever + Jaundice + RUQ pain = Cholangitis</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>11.</b> Courvoisier's law: <b>Palpable GB + painless jaundice = Malignancy</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>12.</b> Tumour marker pancreatic CA: <b>CA 19-9</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>13.</b> Tumour marker hepatocellular CA: <b>AFP</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>14.</b> Most specific enzyme pancreatitis: <b>Lipase &gt; Amylase</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>15.</b> Cullen's sign: <b>Periumbilical bruising = Haemorrhagic pancreatitis</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>16.</b> Richter's hernia: <b>Strangulates WITHOUT obstruction</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>17.</b> Howship-Romberg sign: <b>Obturator hernia</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>18.</b> Littre's hernia contains: <b>Meckel's diverticulum</b></div>
          <div style="background:#fff3cd; border-left:3px solid #f39c12; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>19.</b> Most common hernia in females: <b>Indirect inguinal (not femoral!)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>20.</b> Inguinal hernia – above/below pubic tubercle: <b>Above + medial</b></div>
        </div>
        <div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>21.</b> Femoral hernia: <b>Below + lateral to pubic tubercle</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>22.</b> Most common breast cancer: <b>Invasive Ductal Carcinoma (75–80%)</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>23.</b> Most common renal stone: <b>Calcium oxalate (70–80%)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>24.</b> Only radiolucent stone: <b>Uric acid stone</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>25.</b> Staghorn calculus: <b>Struvite (Proteus mirabilis)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>26.</b> Zone of prostate in BPH: <b>Transitional zone</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>27.</b> Zone of prostate CA: <b>Peripheral zone</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>28.</b> Gold standard BPH surgery: <b>TURP</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>29.</b> TUR syndrome: <b>Dilutional hyponatraemia</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>30.</b> Most common site AAA: <b>Infrarenal aorta (90%)</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>31.</b> AAA repair indication: <b>&gt;5.5 cm or expanding &gt;1 cm/year</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>32.</b> ECG in PE: <b>S1Q3T3 pattern</b>; Gold standard: <b>CTPA</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>33.</b> Intussusception: <b>Currant jelly stools + Target sign USG</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>34.</b> Hirschsprung's diagnosis: <b>Rectal biopsy (absent ganglion cells)</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>35.</b> Meckel's scan: <b>Tc-99m pertechnetate (ectopic gastric mucosa)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>36.</b> First collagen in wound healing: <b>Type III → replaced by Type I</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>37.</b> Max wound tensile strength: <b>80% at 3 months</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>38.</b> Most important wound healing cell: <b>Macrophage</b></div>
          <div style="background:#fdf2f2; border-left:3px solid #c0392b; padding:3px 5px; border-radius:3px; margin-bottom:2px;"><b>39.</b> Neurogenic shock: <b>Bradycardia + Hypotension (NOT tachycardia!)</b></div>
          <div style="padding:2px 5px; margin-bottom:2px;"><b>40.</b> Tension pneumothorax treatment: <b>Needle decompression – 2nd ICS MCL</b></div>
        </div>
      </div>
    </div>

    <!-- FINAL MOTIVATIONAL FOOTER -->
    <div style="background:#0B1B3D; border-radius:8px; padding:8px 14px; margin-top:6px; display:flex; align-items:center; justify-content:space-between;">
      <div style="color:#FFD700; font-size:9px; font-weight:900; letter-spacing:.5px;">🎯 SURGERY ATLAS COMPLETE</div>
      <div style="color:white; font-size:7px; font-weight:700; text-align:center; flex:1; margin:0 10px;">
        6 pages · All topics · PYQs marked · Mnemonics included · Clinical algorithms covered
      </div>
      <div style="background:#c0392b; border-radius:5px; padding:4px 10px; color:white; font-size:8px; font-weight:900;">Revise → Recall → Apply → 700+</div>
    </div>

  </div>
  <div class="pg-footer">★ CONSISTENT STUDY + SMART REVISION + PYQ PRACTICE = 700+ IS POSSIBLE ★</div>
</div>

</body>
</html>
Running Command

cd /home/daytona/workspace/surgery-neet-pg && /usr/bin/chromium --headless --no-sandbox --disable-gpu --print-to-pdf=atlas_page1.pdf --no-pdf-header-footer --print-to-pdf-no-header atlas_page1.html 2>&1 && echo "page1 done" && /usr/bin/chromium --headless --no-sandbox --disable-gpu --print-to-pdf=atlas_pages2to6.pdf --no-pdf-header-footer atlas_pages2to6.html 2>&1 && echo "pages2to6 done"

Running Command

cd /home/daytona/workspace/surgery-neet-pg && python3 -c " from pypdf import PdfReader, PdfWriter writer = PdfWriter() for f in ['atlas_page1.pdf', 'atlas_pages2to6.pdf']: r = PdfReader(f) for page in r.pages: writer.add_page(page) with open('Surgery_700_Bootcamp_Atlas_NEET_PG.pdf','wb') as out: writer.write(out) print('Merged PDF done') import os size = os.path.getsize('Surgery_700_Bootcamp_Atlas_NEET_PG.pdf') print(f'Size: {size/1024:.0f} KB, Pages: {len(writer.pages)}') "

Your Surgery 700+ Bootcamp Atlas is ready - exactly in the style of your OBG atlas!

Surgery 700 Bootcamp Atlas NEET PG

PDF Document · PDF


What's inside (6 pages, 12 PDF pages with print layout):
PageTitleContents
1Master MapCentral mind map with 8 surgical domains radiating out, Gold Standards table, SURGEON principles acronym, High Yield Fact File, abbreviations, exam approach
2Wounds · Shock · Burns · TraumaWound healing phases table, collagen facts, Shock Class I-IV (ATLS), Burns depth + Rule of Nines + Parkland formula, ATLS ABCDE, Beck's/Charcot's/Rigler's triads
3GI SurgeryMANTRELS score (Alvarado) with all 8 letters, appendicitis signs, intestinal obstruction SB vs LB, special hernias, gallstones + Courvoisier's law, pancreatitis (GET SMASHED) + Ranson's criteria
4Breast · Thyroid · HerniaBreast lump DDx, carcinoma facts, thyroid cancer comparison table, MEN 2A/2B boxes, RLN injury, inguinal direct vs indirect comparison, Hesselbach's triangle, 6 special hernias
5Urology · Vascular · PaediatricStone types with radio-opacity order, BPH vs CA zones, TUR syndrome, AAA criteria, DVT/PE + Virchow's triad, S1Q3T3, paediatric conditions (Pyloric stenosis, Intussusception, Hirschsprung's, Meckel's)
6Quick Reference + Top 40 PYQsComplete tumour markers table, all key mnemonics, 40 most-repeated NEET PG surgery questions with answers, colour-coded by topic
Same design as your OBG atlas: Navy header, colour-coded sections, ★ star facts, orange PYQ boxes, red high-yield boxes, green mnemonic boxes, bottom motivational bar.
This is a shared conversation. Sign in to Orris to start your own chat.