<!-- SAGA2 · part 26 -->
));
      }
      draw(pts, mat);
    }
    function curve(pts, mat){ draw(pts.map(function(p){return new THREE.Vector3(p[0],p[1],p[2]);}), mat); }
    // EYES — banknote intaglio (King's guide)
    function banknoteEye(cx, cy, cz){
      // outer almond — upper lid heavier
      var pts=[];
      for(var i=0;i<=30;i++){ var a=(i/30)*Math.PI*2;
        var rx=2.8, ry=1.5;
        // upper lid thicker (more lines)
        pts.push(new THREE.Vector3(cx+Math.cos(a)*rx, cy+Math.sin(a)*ry, cz));
      }
      draw(pts, lnCyan);
      // upper lid fold — parallel line above
      var fold=[];
      for(var f=0;f<=20;f++){ var fa=Math.PI*(f/20);
        fold.push(new THREE.Vector3(cx-Math.cos(fa)*2.6, cy+Math.sin(fa)*1.1+0.5, cz-0.1));
      }
      draw(fold, lnGold);
      // lower lid — fine single
      var low=[];
      for(var l=0;l<=20;l++){ var la=Math.PI*(l/20);
        low.push(new THREE.Vector3(cx+Math.cos(la)*2.5, cy-Math.sin(la)*1.2-0.15, cz-0.05));
      }
      draw(low, lnDim);
      // iris — concentric rings (5)
      for(var ir=0; ir<5; ir++){
        var irr = 1.1 - ir*0.18;
        var ipts=[];
        for(var ia=0; ia<=24; ia++){ var ang=(ia/24)*Math.PI*2;
          ipts.push(new THREE.Vector3(cx+Math.cos(ang)*irr, cy+Math.sin(ang)*irr, cz+0.15));
        }
        draw(ipts, ir%2?lnCyan:lnGold);
      }
      // pupil — dense dark center
      var ppts=[];
      for(var pa=0; pa<=16; pa++){ var pang=(pa/16)*Math.PI*2;
        ppts.push(new THREE.Vector3(cx+Math.cos(pang)*0.35, cy+Math.sin(pang)*0.35, cz+0.2));
      }
      draw(ppts, lnDim); draw(ppts, lnDim);
      // lash lines — upper lid
      for(var lh=0; lh<8; lh++){
        var lx = cx-2.2+lh*0.55;
        draw([new THREE.Vector3(lx, cy+1.2, cz), new THREE.Vector3(lx+0.1, cy+1.6, cz-0.1)], lnDim);
      }
      // skin lines — radiate from eye (follow form)
      for(var sl=0; sl<6; sl++){
        var sa = Math.PI*(0.15+sl*0.14);
        var spts=[];
        for(var st=0; st<=8; st++){ var t=st/8;
          spts.push(new THREE.Vector3(cx+Math.cos(sa)*(3.0+t*1.2), cy+Math.sin(sa)*(1.8+t*0.8), cz-0.2-t*0.3));
        }
        draw(spts, lnDim);
      }
    }
    // banknote eyes disabled — minimal only (King's order)
    // brows
    curve([[-3.6,23.8,8.8],[-2.2,24.1,9],[-0.8,23.8,8.8]], lnGold);
    curve([[0.8,23.8,8.8],[2.2,24.1,9],[3.6,23.8,8.8]], lnGold);
    // nose bridge
    curve([[0,22.5,9.2],[0.1,21,9.6],[0,19.2,10]], lnCyan);
    // nostrils
    ellipse(-0.7, 18.7, 9.9, 0.4, 0.25, lnCyan);
    ellipse(0.7, 18.7, 9.9, 0.4, 0.25, lnCyan);
    // mouth — upper and lower lip (2x)
    curve([[-3.2,17.5,9.3],[-1.6,17.2,9.6],[0,17.4,9.8],[1.6,17.2,9.6],[3.2,17.5,9.3]], lnGold);
    curve([[-2.8,17.5,9.3],[-1.4,16.7,9.6],[0,16.5,9.8],[1.4,16.7,9.6],[2.8,17.5,9.3]], lnCyan);
    // jawline
    curve([[-3.5,20,8],[-2.5,17.5,8.8],[-1.2,16.2,9.2],[0,15.8,9.4],[1.2,16.2,9.2],[2.5,17.5,8.8],[3.5,20,8]], lnCyan);
    // ears removed — floating circle (King's order)
  }


  // HUMAN BODY DETAIL — pure linework, no shapes (King's order: push it totally)
  (function(){
    function curve(pts, mat){ draw(pts.map(function(p){return new THREE.Vector3(p[0],p[1],p[2]);}), mat); }
    function ellipse(cx,cy,cz,rx,ry,mat){
      var pts=[];
      for(var i=0;i<=20;i++){ var a=(i/20)*Math.PI*2;
        pts.push(new THREE.Vector3(cx+Math.cos(a)*rx, cy+Math.sin(a)*ry, cz)); }
      draw(pts, mat);
    }
    // NECK — trapezius lines from head to shoulders
    curve([[-2,15,7],[-3.5,12,6],[-5,10,5]], lnCyan);
    curve([[2,15,7],[3.5,12,6],[5,10,5]], lnCyan);
    // COLLARBONES
    curve([[-4.5,10.5,8],[-2,11,8.5],[0,10.8,8.8]], lnGold);
    curve([[0,10.8,8.8],[2,11,8.5],[4.5,10.5,8]], lnGold);
    // PECS — chest muscles
    ellipse(-2.2, 8, 8.5, 2.2, 1.6, lnCyan);
    ellipse(2.2, 8, 8.5, 2.2, 1.6, lnCyan);
    // ABS — six-pack lines
    for(var ab=0; ab<3; ab++){
      var ay = 5.5 - ab*1.8;
      curve([[-1.8,ay,8.2],[-0.6,ay,8.6],[0.6,ay,8.6],[1.8,ay,8.2]], lnCyan);
    }
    curve([[0,6.5,8.6],[0,0.5,8.4]], lnGold); // center line
    // HANDS — fingers (left)
    for(var f=0; f<5; f++){
      var fx = -8.5 + (f-2)*0.5;
      curve([[fx,6,4],[fx+(f-2)*0.15,4,4.2],[fx+(f-2)*0.2,2.5,4.3]], f%2?lnGold:lnCyan);
    }
    // HANDS — fingers (right)
    for(var f2=0; f2<5; f2++){
      var fx2 = 8.5 + (f2-2)*0.5;
      curve([[fx2,6,4],[fx2+(f2-2)*0.15,4,4.2],[fx2+(f2-2)*0.2,2.5,4.3]], f2%2?lnGold:lnCyan);
    }
    // FEET — toes (left)
    for(var t=0; t<5; t++){
      var tx = -2.5 + (t-2)*0.45;
      curve([[tx,-10,3],[tx,-11.5,4],[tx,-12.5,5]], t%2?lnCyan:lnGold);
    }
    // FEET — toes (right)
    for(var t2=0; t2<5; t2++){
      var tx2 = 2.5 + (t2-2)*0.45;
      curve([[tx2,-10,3],[tx2,-11.5,4],[tx2,-12.5,5]], t2%2?lnCyan:lnGold);
    }
  })();


  // FULL HUMAN ANATOMY — pure linework (King: go all the way)
  (function(){
    function curve(pts, mat){ draw(pts.map(function(p){return new THREE.Vector3(p[0],p[1]