{
  "version": 3,
  "sources": ["/cdn/shop/t/19/assets/nye-companions.js?release=1790392502"],
  "sourcesContent": ["/* Small, opt-out companions. One shared paint loop; optional, gesture-enabled cat purr. */\n(function(root){\n'use strict';\nconst clamp=(v,a,b)=>Math.max(a,Math.min(b,v)),mix=(a,b,t)=>a+(b-a)*t;\nconst MATT_LANDING_RECTS=[[23, 299, 383, 551], [415, 243, 760, 550], [795, 217, 1098, 549], [1157, 212, 1433, 549], [63, 703, 374, 1035], [432, 689, 747, 1031], [819, 629, 1086, 1032], [1178, 568, 1408, 1033]];\nconst CAT_SCRATCH_FRAMES=[[20, 126, 488, 555, 180, 690], [521, 125, 510, 556, 185, 690], [1035, 125, 502, 556, 183, 690], [1547, 125, 498, 556, 183, 690]];\nconst CAT_BOND_FRAMES=[[27, 56, 294, 468, 153, 454], [375, 71, 299, 453, 145, 453], [746, 80, 418, 445, 116, 445], [1193, 72, 249, 452, 116, 452], [45, 556, 281, 485, 139, 485], [397, 560, 274, 482, 143, 482], [745, 555, 261, 486, 123, 486], [1074, 568, 361, 473, 120, 473]];\nconst BODY_MOTION_RECTS=[[69, 44, 247, 383], [374, 68, 607, 380], [611, 77, 986, 286], [1044, 64, 1244, 325], [10, 407, 339, 666], [350, 485, 638, 655], [683, 451, 922, 671], [1004, 408, 1242, 680], [42, 687, 273, 987], [375, 701, 596, 973], [632, 698, 985, 892], [1025, 703, 1222, 957], [15, 995, 312, 1207], [369, 1030, 625, 1216], [664, 963, 959, 1230], [1010, 963, 1252, 1225]];\nconst MOBILITY_RECTS={\"matt\": [[20, 37, 471, 439], [455, 36, 738, 461], [775, 39, 1158, 467], [1191, 43, 1531, 437], [33, 484, 347, 987], [431, 495, 735, 984], [769, 571, 1141, 978], [1219, 478, 1504, 987]], \"blackie\": [[32, 77, 446, 478], [425, 123, 736, 477], [766, 133, 1152, 479], [1151, 99, 1515, 489], [21, 507, 337, 952], [435, 504, 689, 944], [759, 595, 1173, 929], [1192, 586, 1510, 929]]};\nfunction mobilityFrames(image,rects){\n const w=image.naturalWidth,h=image.naturalHeight,c=document.createElement('canvas');c.width=w;c.height=h;\n const cx=c.getContext('2d',{willReadFrequently:true});cx.drawImage(image,0,0);const px=cx.getImageData(0,0,w,h).data,labels=new Int32Array(w*h),stack=new Int32Array(w*h),regions=[];let serial=0;\n for(let seed=0;seed<labels.length;seed++){\n  if(labels[seed]||px[seed*4+3]<45)continue;const id=++serial;let count=0,sp=0,l=w,t=h,r=0,b=0;stack[sp++]=seed;labels[seed]=id;\n  while(sp){const k=stack[--sp],x=k%w,y=Math.floor(k/w);count++;l=Math.min(l,x);r=Math.max(r,x);t=Math.min(t,y);b=Math.max(b,y);\n   const add=j=>{if(!labels[j]&&px[j*4+3]>=45){labels[j]=id;stack[sp++]=j;}};\n   if(x) add(k-1);if(x<w-1)add(k+1);if(y)add(k-w);if(y<h-1)add(k+w);\n  }if(count>700)regions.push({id,l,t,r:r+1,b:b+1});\n }\n return rects.map(rect=>{\n  const region=regions.reduce((best,v)=>{const score=Math.abs(v.l-rect[0])+Math.abs(v.t-rect[1])+Math.abs(v.r-rect[2])+Math.abs(v.b-rect[3]);return !best||score<best.score?{...v,score}:best;},null);\n  if(!region||region.score>80)throw Error('Sprite atlas shape did not match');\n  const l=Math.max(0,region.l-2),t=Math.max(0,region.t-2),fw=Math.min(w,region.r+2)-l,fh=Math.min(h,region.b+2)-t,out=document.createElement('canvas');out.width=fw;out.height=fh;\n  const ox=out.getContext('2d'),data=ox.createImageData(fw,fh);\n  for(let y=0;y<fh;y++)for(let x=0;x<fw;x++){const k=(y+t)*w+x+l;let keep=labels[k]===region.id;\n   if(!keep&&px[k*4+3]>0)for(const d of [-1,1,-w,w])if(labels[k+d]===region.id)keep=true;\n   if(keep){const dest=(y*fw+x)*4;for(let ch=0;ch<4;ch++)data.data[dest+ch]=px[k*4+ch];}\n  }ox.putImageData(data,0,0);return out;\n });\n}\n\nclass Companions{\n constructor({canvas,controls,redraw,announce,onDragonGrab}){\n  Object.assign(this,{canvas,redraw,announce,onDragonGrab});this.age=0;this.nextVisit=150+Math.random()*120;this.hidden=false;this.ownsMatt=true;this.mode='walk';this.modeAge=0;this.socialIn=45;this.initialized=false;this.boardAge=0;this.wasWet=false;\n  this.catBond=null;this.cuddleImage=null;this.catSound=false;this.opening=null;\n  if(canvas.dataset.catBond){const im=new Image();im.crossOrigin=\"anonymous\";im.onload=()=>{try{im.isolatedFrames=mobilityFrames(im,CAT_BOND_FRAMES.map(r=>[r[0],r[1],r[0]+r[2],r[1]+r[3]]));this.cuddleImage=im;redraw();}catch{this.cuddleImage=null;}};im.src=canvas.dataset.catBond;}\n  if(canvas.dataset.catScratch){const im=new Image();im.crossOrigin=\"anonymous\";im.onload=()=>{try{im.isolatedFrames=mobilityFrames(im,CAT_SCRATCH_FRAMES.map(r=>[r[0],r[1],r[0]+r[2],r[1]+r[3]]));this.scratchImage=im;redraw();}catch{this.scratchImage=null;}};im.src=canvas.dataset.catScratch;}\n  if(canvas.dataset.mattLanding){const im=new Image();im.crossOrigin=\"anonymous\";im.onload=()=>{try{this.landingFrames=mobilityFrames(im,MATT_LANDING_RECTS);redraw();}catch{this.landingFrames=null;}};im.src=canvas.dataset.mattLanding;}\n  this.mobility={};this.follow={anchor:null,still:0,next:95,active:false};\n  this.mattHabit=null;this.nextHabit=28+Math.random()*15;this.nextCorner=80+Math.random()*50;this.habitInterest=0;this.lastHabit=null;this.habitImages={};this.habitURLs={writing:canvas.dataset.mattNotebook,smoke:canvas.dataset.mattSmoke};\n  document.fonts?.ready.then(()=>{this.letterMasks?.clear();this.surfaceAge=2;});\n  this.surfaces=[];this.surfaceIds=new WeakMap();this.surfaceSerial=0;this.surfaceAge=2;this.promoUntil=20;\n  this.actors={matt:{x:90,y:0,w:58,h:103.24,dir:1},blackie:{x:145,y:0,w:48,h:60,dir:1},dragon:{x:-200,y:0,w:168,h:56,dir:1,visible:false}};\n  this.rig=root.NyeSpriteRig?new root.NyeSpriteRig(canvas.dataset.grabParts,redraw):null;\n  this.bodyMotion=null;if(canvas.dataset.bodyMotion){const im=new Image();im.crossOrigin='anonymous';im.onload=()=>{try{this.bodyMotion=mobilityFrames(im,BODY_MOTION_RECTS);redraw();}catch(e){this.bodyMotion=null;}};im.src=canvas.dataset.bodyMotion;}\n  this.images={};for(const [id,url] of Object.entries({matt:canvas.dataset.mattWalk,blackie:canvas.dataset.blackie,dragon:canvas.dataset.luckDragon})){const image=new Image();image.crossOrigin='anonymous';image.onload=()=>{if(id!=='dragon')this.cropWalkFrames(image);redraw();};image.src=url||'';this.images[id]=image;}\n  this.actionImages={};for(const [id,url] of Object.entries({matt:canvas.dataset.mattTraverse,blackie:canvas.dataset.blackieTraverse})){if(!url)continue;const image=new Image();image.crossOrigin='anonymous';image.onload=()=>{const c=document.createElement('canvas');c.width=image.naturalWidth;c.height=image.naturalHeight;const cx=c.getContext('2d');cx.drawImage(image,0,0);const pixels=cx.getImageData(0,0,c.width,c.height).data;image.frames=[];const cw=c.width/4,ch=c.height/2;for(let i=0;i<8;i++){const cuts=id==='matt'?[0,420,812,1195,1536]:(i<4?[0,443,944,1330,1774]:[0,443,887,1330,1774]),split=id==='matt'?550:443;const x0=cuts[i%4],x1=cuts[i%4+1],y0=i<4?0:split,y1=i<4?split:c.height;let l=x1,r=x0,t=y1,b=y0;for(let y=y0;y<y1;y++)for(let x=x0;x<x1;x++)if(pixels[(y*c.width+x)*4+3]>40){l=Math.min(l,x);r=Math.max(r,x);t=Math.min(t,y);b=Math.max(b,y);}image.frames.push([l,t,Math.max(1,r-l+1),Math.max(1,b-t+1)]);}redraw();};image.src=url;this.actionImages[id]=image;}\n  this.waterFX=[];this.waterImages={};for(const id of ['matt','blackie','dragon']){const url=canvas.dataset[id+'Water'];if(!url)continue;const image=new Image();image.crossOrigin='anonymous';image.onload=()=>{this.cropWalkFrames(image);redraw();};image.src=url;this.waterImages[id]=image;}\n  this.lifeImages={};for(const id of ['matt','blackie','dragon']){const url=canvas.dataset[id+'Life'];if(!url)continue;const image=new Image();image.crossOrigin='anonymous';image.onload=()=>{this.cropLifeFrames(image,id);redraw();};image.src=url;this.lifeImages[id]=image;}\n  if(canvas.dataset.dragonLife){\n   const base=canvas.dataset.dragonLife.split('?')[0];\n   this.rideImage=new Image();this.rideImage.crossOrigin='anonymous';this.rideImage.onload=()=>{this.cropFourFrames(this.rideImage);redraw();};this.rideImage.src=base.replace('nye-dragon-life.webp','nye-dragon-riders-large.png');\n   this.largeDragon=new Image();this.largeDragon.crossOrigin='anonymous';this.largeDragon.onload=()=>{this.cropFourFrames(this.largeDragon);redraw();};this.largeDragon.src=base.replace('nye-dragon-life.webp','nye-dragon-flight-large.png');\n  }\n  this.handles={};for(const id of Object.keys(this.actors))this.addHandle(id);\n  const toggle=document.createElement('button');toggle.type='button';toggle.className='nye-paint-bottom';toggle.textContent='Hide the little weirdos';toggle.setAttribute('aria-pressed','false');toggle.addEventListener('click',()=>{this.hidden=!this.hidden;this.cancel();toggle.textContent=this.hidden?'Bring back the little weirdos':'Hide the little weirdos';toggle.setAttribute('aria-pressed',String(this.hidden));redraw();});controls.querySelector('.nye-paint-panel').append(toggle);\n  const purr=document.createElement('button');purr.type='button';purr.className='nye-paint-bottom';purr.textContent='Blackie purr: off';purr.setAttribute('aria-pressed','false');purr.addEventListener('click',()=>{this.catSound=!this.catSound;if(this.catSound){try{this.catAudio ||= new (root.AudioContext||root.webkitAudioContext)();this.catAudio.resume().catch(()=>{});}catch{this.catSound=false;}}else this.stopPurr();purr.textContent='Blackie purr: '+(this.catSound?'on':'off');purr.setAttribute('aria-pressed',String(this.catSound));});controls.querySelector('.nye-paint-panel').append(purr);\n  window.addEventListener('blur',()=>this.cancel());document.addEventListener('visibilitychange',()=>{if(document.hidden)this.cancel();});\n }\n\n // Small homepage vignettes use the same real surface and sprite system as play.\n // No viewport floor, auto-scroll, artificial ledges, or new animation timer.\n beginOpening(forced){\n  const e=this.env;if(!e||e.scroll>120)return false;\n  const options=this.surfaces.filter(s=>s.intro&&s.right-s.x>=145&&s.y>=e.scroll+150&&s.y<=e.scroll+e.height-45&&!this.liquidWet((s.x+s.right)/2,s.y-20));\n  if(!options.length)return false;\n  const variations=['release','writing','beats'];let variant=forced;\n  if(!variations.includes(variant)){\n   let last;try{last=root.sessionStorage?.getItem('nye-opening-last');}catch{}\n   const bag=variations.filter(v=>v!==last);variant=bag[Math.floor(Math.random()*bag.length)];\n   try{root.sessionStorage?.setItem('nye-opening-last',variant);}catch{}\n  }\n  const preferred=variant==='release'?'release':'music';\n  const start=options.find(s=>s.intro===preferred)||options.find(s=>s.intro==='release')||options[0];\n  const m=this.actors.matt,c=this.actors.blackie;\n  m.x=clamp(start.x+(start.right-start.x)*.3,start.x+35,start.right-85);c.x=clamp(m.x+65,start.x+25,start.right-25);\n  if(start.intro==='logo'){m.x=(start.x+start.right)/2-32;c.x=m.x+64;}\n  this.land(m,start);this.land(c,start);m.dir=1;c.dir=-1;\n  m.restUntil=c.restUntil=this.age+25;this.socialIn=50;\n  this.loadHabitArt('writing');this.loadHabitArt('smoke');\n  if(e.reduced){m.restUntil=c.restUntil=Infinity;this.nextHabit=Infinity;return true;}\n  this.opening={variant,started:this.age,initial:start.id,habitStarted:false,next:{matt:this.age+22+Math.random()*8,blackie:this.age+17+Math.random()*7},support:{matt:start.id,blackie:start.id},done:{}};\n  this.nextHabit=this.age+180;this.follow.next=this.age+200;this.nextVisit=Math.max(this.nextVisit,this.age+180);\n  this.canvas.dataset.companionOpening=variant;return true;\n }\n cancelOpening(){if(!this.opening)return;this.opening=null;this.cancelMattHabit(true);this.nextHabit=this.age+35;this.socialIn=25;}\n openingActorStep(a,id,s,dt){\n  const q=this.opening;if(!q||q.done[id])return false;\n  if(this.env.reduced||this.age-q.started>150){this.cancelOpening();return false;}\n  if(a.aboard||a.aqua||s.kind==='floor'){q.done[id]=true;if(q.done.matt&&q.done.blackie)this.cancelOpening();return false;}\n  // Every landing gets a real pause. Blackie leads by a few seconds.\n  if(q.support[id]!==s.id){q.support[id]=s.id;q.next[id]=this.age+(id==='blackie'?10:15)+Math.random()*7;}\n  if(id==='matt'&&!q.habitStarted&&s.id===q.initial&&this.age-q.started>1){\n   const kind=q.variant==='writing'?'write':q.variant==='beats'?'beats':'roll';\n   if(this.beginMattHabit(kind)){q.habitStarted=true;this.mattHabit.duration=kind==='roll'?7:16;}\n  }\n  if(id==='matt'&&this.mattHabit){this.mattHabitStep(a,s,dt);return true;}\n  if(this.age<q.next[id]){a.pose='perch';return true;}\n  const reach=id==='blackie'?300:235;\n  const candidates=this.surfaces.filter(t=>t.id!==s.id&&['button','image','border','floor'].includes(t.kind)&&t.right-t.x>=Math.max(55,a.w)&&t.y>s.y+40&&t.y<=s.y+370&&Math.abs(clamp(a.x,t.x+20,t.right-20)-a.x)<reach);\n  candidates.sort((l,r)=>(l.y-s.y+Math.abs(clamp(a.x,l.x,l.right)-a.x)*.7)-(r.y-s.y+Math.abs(clamp(a.x,r.x,r.right)-a.x)*.7));\n  q.next[id]=this.age+18+Math.random()*10;\n  if(candidates.length){this.jump(a,candidates[0],id);return true;}\n  // With no reachable lower perch, walk off the edge and let normal collisions\n  // and harmless tumbles take over instead of snapping to a distant destination.\n  const left=a.x-s.x,right=s.right-a.x,side=left<right?-1:1;\n  const edge=side<0?s.x+2:s.right-2;a.dir=side;a.pose='walk';a.x+=clamp(edge-a.x,-20*dt,20*dt);a.y=this.level(s,a.x);q.next[id]=this.age;\n  if(Math.abs(a.x-edge)<3){a.support=null;a.falling=true;a.vx=side*48;a.vy=30;a.ignoreSurface=s.id;a.dropDistance=0;}\n  return true;\n }\n // Combined contact art only starts after the real cat reaches Matt.\n bondReady(){\n  const m=this.actors.matt,e=this.env;\n  return !!(this.cuddleImage?.complete&&this.cuddleImage.naturalWidth&&e&&!e.paused&&!e.rescue&&!e.mattHeld&&!this.hidden&&!this.dragonTrip&&!this.encounters?.locksMatt?.()&&!this.encounters?.locksCat?.()&&m.support&&this.surface(m.support)&&!this.liquidWet(m.x,m.y-m.h*.25)&&!m.recovery&&!m.falling&&!m.motion&&!m.tumble&&!m.aqua&&!m.aboard&&!m.toyFire&&!m.wallBeat);\n }\n startCatBond(kind='cradle',fromDrop=false){\n  if(this.catBond||!this.bondReady()||this.held)return false;\n  if(kind==='scratch'&&!(this.scratchImage?.complete&&this.scratchImage.naturalWidth))return false;\n  const m=this.actors.matt,c=this.actors.blackie;\n  if(c.recovery||c.aqua||c.aboard||c.toyFire||c.dragonRiding||c.dragonBoard)return false;\n  if(!fromDrop&&(c.falling||c.motion||c.tumble||c.support!==m.support||Math.abs(c.x-m.x)>85))return false;\n  if(kind==='scratch'){const ledge=this.surface(m.support),end=m.x+m.dir*40;if(end<ledge.x+20||end>ledge.right-20)return false;}\n  this.cancelSeeking();this.cancelMattHabit(true);this.mode='walk';this.socialIn=100+Math.random()*90;\n  this.catBond={kind,phase:fromDrop?'settle':'jump',age:0,from:{x:c.x,y:c.y},duration:fromDrop?.22:.52,life:0};\n  Object.assign(c,{falling:false,motion:null,tumble:null,wallBeat:null,grab:null,support:null,vx:0,vy:0,rollAngle:0});\n  m.pose='perch';m.restUntil=this.age+20;this.announce(kind==='scratch'?'Chin scratches. Blackie approves.':kind==='shoulder'?'Blackie claims Matt\u2019s shoulder.':'Matt catches Blackie. Cat break.');return true;\n }\n tryCatDrop(target){\n  const m=this.actors.matt,c=this.actors.blackie,center=target?target.y:c.y-c.h*.5,x=target?target.x:c.x;\n  if(Math.abs(x-m.x)>m.w*.75||center<m.y-m.h*1.23||center>m.y-m.h*.20)return false;\n  return this.startCatBond(center<m.y-m.h*.70?'shoulder':'cradle',true);\n }\n endCatBond(jump=false){\n  if(!this.catBond)return;const kind=this.catBond.kind;this.catBond=null;this.stopPurr();this.socialIn=110+Math.random()*80;\n  const m=this.actors.matt,c=this.actors.blackie;\n  Object.assign(c,{support:null,falling:true,motion:null,tumble:null,vx:jump?m.dir*95:0,vy:jump?-130:0,dropDistance:0,decideIn:45});\n  if(kind==='scratch'&&this.surface(m.support)&&!c.aqua&&!this.liquidWet(c.x,c.y-c.h*.3))this.land(c,this.surface(m.support));\n  m.restUntil=this.age+12;m.decideIn=35;\n  for(const id of ['matt','blackie'])if(this.handles[id]){delete this.handles[id].dataset.bond;delete this.handles[id].dataset.mood;}\n }\n stopPurr(){if(this.purrVoice){try{this.purrVoice.stop();}catch{}this.purrVoice=null;}}\n playPurr(){\n  const ac=this.catAudio;if(!this.catSound||!ac||ac.state!=='running'||this.age<(this.nextPurr||0))return;\n  this.nextPurr=this.age+3;this.stopPurr();\n  // Low, softly pulsing filtered breath. No audio until the visitor enables it.\n  const n=Math.floor(ac.sampleRate*1.3),b=ac.createBuffer(1,n,ac.sampleRate),v=b.getChannelData(0);\n  for(let i=0;i<n;i++){const t=i/ac.sampleRate,envelope=Math.sin(Math.PI*i/n);v[i]=(Math.random()*2-1)*(.35+.65*Math.pow(Math.sin(t*25*Math.PI),2))*envelope*.12;}\n  const src=ac.createBufferSource(),filter=ac.createBiquadFilter(),gain=ac.createGain();src.buffer=b;filter.type='lowpass';filter.frequency.value=360;gain.gain.value=.28;src.connect(filter);filter.connect(gain);gain.connect(ac.destination);src.onended=()=>{src.disconnect();filter.disconnect();gain.disconnect();};this.purrVoice=src;src.start();\n }\n stepCatBond(dt){\n  const q=this.catBond;if(!q)return false;const m=this.actors.matt,c=this.actors.blackie,e=this.env;\n  if(!this.bondReady()||this.held||c.toyFire||c.aqua||this.liquidWet(c.x,c.y-c.h*.3)){this.endCatBond();return false;}\n  q.age+=dt;q.life+=dt;m.pose='perch';m.y=this.level(this.surface(m.support),m.x);\n  const scratch=q.kind==='scratch',x=m.x+m.dir*(scratch?34:q.kind==='shoulder'?17:12),y=scratch?this.level(this.surface(m.support),x):m.y-m.h*(q.kind==='shoulder'?.73:.34);\n  if(q.phase==='jump'||q.phase==='settle'){\n   const t=clamp(q.age/q.duration,0,1),smooth=t*t*(3-2*t);c.x=mix(q.from.x,x,smooth);c.y=mix(q.from.y,y,smooth)-(e.reduced||scratch?0:Math.sin(Math.PI*t)*(q.phase==='jump'?32:5));c.pose=scratch?'walk':'leap';\n   if(t>=1){q.phase='contact';q.age=0;}return true;\n  }\n  c.x=x;c.y=y;c.dir=m.dir;c.pose='perch';\n  if(q.age>.5&&q.age<6)this.playPurr();\n  if(q.age>(e.reduced?5:scratch?5.5:q.kind==='shoulder'?9:7.8)){this.endCatBond(!e.reduced);return false;}\n  return true;\n }\n drawCatBond(ctx,scroll,id){\n  const q=this.catBond;if(!q||q.phase!=='contact')return false;\n  const m=this.actors.matt,e=this.env,scratch=q.kind==='scratch',im=scratch?this.scratchImage:this.cuddleImage;\n  let frame=q.kind==='shoulder'?(e.reduced?0:Math.floor(q.age*1.4)%2):q.age<.12?2:q.age<.4?3:q.age<1.3?4:q.age<2.3?5:q.age<7.3?(e.reduced?4:[4,6,6,4][Math.floor(q.age*2)%4]):7;\n  if(scratch)frame=e.reduced?1:q.age<.35?0:[1,2,1,2,3,2][Math.floor((q.age-.35)*5)%6];\n  const rect=(scratch?CAT_SCRATCH_FRAMES:CAT_BOND_FRAMES)[frame],scale=Math.min(m.h/rect[5],1/Math.max(1,root.devicePixelRatio||1));\n  this.handles[id].dataset.bond=q.kind;this.handles[id].dataset.animation=(scratch?'chin-scratch-':'together-')+frame;this.handles[id].dataset.mood=scratch?'content':q.kind==='shoulder'?'content':frame===5?'kiss':'purring';\n  if(id==='blackie')return true;\n  ctx.save();ctx.translate(m.x,m.y-scroll);ctx.scale(m.dir,1);const cut=im.isolatedFrames[frame];ctx.drawImage(cut,-(rect[4]+2)*scale,-(rect[3]+2)*scale,cut.width*scale,cut.height*scale);ctx.restore();\n  if(q.age>.7&&q.age<2.8){ctx.save();ctx.font='italic 11px monospace';ctx.fillStyle='#c397bd';ctx.textAlign='center';ctx.fillText(frame===5?'mwa.':'prrrr\u2026',m.x,m.y-scroll-(scratch?m.h*.68:m.h)-13);ctx.restore();}return true;\n }\n // Quiet, destination-based visits. Scrolling never drags a character with the viewport.\n loadMobility(id){\n  if(this.mobility[id]||!this.canvas.dataset[id+'Mobility'])return;\n  const im=new Image();im.crossOrigin='anonymous';this.mobility[id]={loading:true};\n  im.onload=()=>{try{this.mobility[id]={frames:mobilityFrames(im,MOBILITY_RECTS[id])};this.redraw();}catch{this.mobility[id]={failed:true};}};\n  im.onerror=()=>{this.mobility[id]={failed:true};};im.src=this.canvas.dataset[id+'Mobility'];\n }\n cancelSeeking(){\n  for(const a of [this.actors.matt,this.actors.blackie]){if(a.seeking?.phase==='wall'){a.falling=true;a.vy=0;a.support=null;}a.seeking=null;}\n  this.follow.active=false;this.follow.still=0;this.follow.next=this.age+180;\n }\n visitSurface(){\n  const e=this.env,goal=e.scroll+e.height*.70;\n  return this.surfaces.filter(s=>['border','image','button'].includes(s.kind)&&s.y>e.scroll+140&&s.y<e.scroll+e.height-55&&s.right-s.x>185&&Math.abs(s.slope||0)<.08).sort((s,t)=>Math.abs(s.y-goal)-Math.abs(t.y-goal))[0];\n }\n startSeeking(force=false,method){\n  const e=this.env;if(!e||e.paused||e.reduced||this.hidden||this.held||e.mattHeld||e.rescue||this.dragonTrip||this.encounters?.encounter||this.encounters?.catScene)return false;\n  const destination=this.visitSurface();if(!destination)return false;\n  const ids=['matt','blackie'].filter(id=>{const a=this.actors[id];return this.canBoardDragon(id)&&!a.wallBeat&&(force||a.y>e.scroll+e.height+60);});\n  if(!ids.length)return false;this.cancelMattHabit(true);this.mode='walk';this.socialIn=999;this.follow.active=true;this.follow.started=this.age;this.follow.target=destination.id;this.follow.next=this.age+240;\n  for(const id of ids){this.loadMobility(id);this.actors[id].seeking={target:destination.id,phase:'route',age:0,next:0};}\n  const gap=Math.max(...ids.map(id=>this.actors[id].y-destination.y));\n  if((method==='dragon'||(!method&&gap>1000))&&ids.length===2&&this.startDragonVisit()){this.dragonTrip.destination=destination.id;this.follow.method='dragon';}\n  else this.follow.method='climb';\n  return true;\n }\n updateSeeking(dt){\n  const f=this.follow,e=this.env;if(!f)return;\n  if(e.reduced||e.rescue||this.held){if(f.active)this.cancelSeeking();return;}\n  if(f.anchor==null)f.anchor=e.scroll;\n  if(Math.abs(e.scroll-f.anchor)>75){f.anchor=e.scroll;f.still=0;if(f.active)this.cancelSeeking();}\n  else f.still+=dt;\n  if(f.active){\n   if(!this.surface(f.target)||this.age-f.started>150){this.cancelSeeking();return;}\n   if(!this.dragonTrip&&!['matt','blackie'].some(id=>this.actors[id].seeking)){f.active=false;f.still=0;f.next=this.age+240;}\n  }else if(this.age>=f.next&&f.still>50&&!this.mattHabit&&this.mode==='walk')this.startSeeking();\n }\n seekStep(a,id,dt){\n  const q=a.seeking;if(!q)return false;\n  if((id==='matt'&&this.encounters?.encounter)||(id==='blackie'&&this.encounters?.catScene)||a.aqua||a.toyFire||this.env.reduced||this.hidden){a.seeking=null;return false;}\n  if(a.dragonBoard||a.dragonRiding||this.dragonTrip?.destination)return false;\n  const target=this.surface(q.target);if(!target){a.seeking=null;return false;}\n  q.age+=dt;if(q.age>130){a.seeking=null;if(!a.support){a.falling=true;a.vy=0;}return false;}\n  if(q.phase==='wall'){\n   a.pose='visit-climb';a.dir=q.side;a.x=q.side<0?25:this.env.width-25;\n   const goal=this.level(target,q.landX)+a.h*.82;\n   a.y=Math.max(goal,a.y-(id==='blackie'?155:115)*dt);a.vx=0;a.vy=0;\n   if(a.y<=goal+.5){const oldX=a.x;a.x=q.landX;this.jump(a,target,id);a.motion.from.x=oldX;a.x=oldX;q.phase='route';q.next=this.age+2;}\n   return true;\n  }\n  if(a.falling||a.motion||a.tumble||a.wallBeat)return false;\n  const support=this.surface(a.support);if(!support)return false;\n  if(a.support===target.id||(a.y>this.env.scroll+120&&a.y<this.env.scroll+this.env.height-25)){a.seeking=null;a.restUntil=this.age+25;a.decideIn=35;if(id==='matt')this.nextHabit=this.age+25;return false;}\n  if(this.age<q.next){a.pose='perch';return true;}\n  const next=this.route(a,id);\n  if(next&&next.y<a.y-25&&next.kind!=='wall'){this.jump(a,next,id);q.next=this.age+1.8;return true;}\n  // Walk to a real page edge, then alternate native hand/foot climbing poses.\n  q.side=target.x<this.env.width-target.right?-1:1;\n  const wallX=q.side<0?25:this.env.width-25,pad=a.w*.25,destination=clamp(wallX,support.x+pad,support.right-pad),dx=destination-a.x;\n  a.dir=Math.sign(dx)||q.side;a.x+=clamp(dx,-45*dt,45*dt);a.y=this.level(support,a.x);a.pose='walk';\n  if(Math.abs(dx)<2){\n   if(Math.abs(a.x-wallX)>55){a.seeking=null;a.restUntil=this.age+20;return false;}\n   q.landX=clamp(q.side<0?target.x+a.w*.65:target.right-a.w*.65,target.x+10,target.right-10);\n   if(Math.abs(q.landX-wallX)>this.env.width*.75){a.seeking=null;return false;}\n   q.phase='wall';a.support=null;a.falling=false;a.motion=null;a.x=wallX;\n  }\n  return true;\n }\n wallBeatStep(a,id,dt){\n  const q=a.wallBeat;if(!q)return false;\n  if(this.env.reduced||a.aqua||a.toyFire){a.wallBeat=null;a.falling=true;return false;}\n  q.age+=dt;a.dir=q.side;a.pose=q.age<.13?'wall-brace':'wall-push';a.x=q.side<0?25:this.env.width-25;\n  // Brief compression, then a real velocity impulse away from the boundary.\n  if(q.age>.28){a.wallBeat=null;a.falling=true;a.vx=-q.side*clamp(q.speed*.48,180,420);a.vy=-110;a.rollAngle=0;a.wallRecover=.45;a.wallCooldown=.8;}\n  return true;\n }\n drawBodyMotion(ctx,a,id,scroll,held,pose){\n  if(id==='dragon'||!this.bodyMotion||(!held&&!a.falling&&!a.tumble&&!['reach','hang','pull','crest'].includes(pose)))return false;\n  // Climbing already has intact drawn reach/pull poses; never use detached sleeves.\n  if(!held&&!a.falling&&!a.tumble)return false;\n  const offset=id==='matt'?0:8,frames=this.bodyMotion.slice(offset,offset+8);\n  let index,label;\n  if(held){index=Math.floor(this.age*5)%2;label='whole-body-grab';}\n  else if(a.tumble){index=5;label='whole-body-contact';}\n  else{const fast=Math.abs(a.vx||0)>180||Math.abs(a.vy||0)>250;index=fast?[2,4,3,4][Math.floor(this.age*8)%4]:2;label='whole-body-fall';}\n  const f=frames[index],scale=Math.min(a.h/frames[0].height,1/Math.max(1,root.devicePixelRatio||1)),height=frames[0].height*scale;\n  const angle=held?(a.holdAngle||0)+Math.sin(this.age*7)*.025:a.rollAngle||0;\n  // Rotation changes the silhouette's lower edge. Anchor that edge at contact.\n  const extent=(Math.abs(Math.sin(angle))*f.width+Math.abs(Math.cos(angle))*f.height)*scale*.5;\n  let center=a.tumble?a.y-extent:a.y-height*.5;const floor=this.surface?.('floor');\n  if(!held&&floor)center=Math.min(center,this.level(floor,a.x)-extent);\n  ctx.save();ctx.translate(a.x,center-scroll);ctx.rotate(angle);ctx.scale(a.dir,1);\n  // Preserve the original fabric pinch, sampled from the real hoodie art.\n  if(held&&id==='matt'&&this.rig?.ready&&root.NyeSpriteRig?.cloth){\n   const gx=(this.held.x-a.x)*a.dir,gy=this.held.y-(a.y-scroll-height*.5),local={x:gx*Math.cos(angle)+gy*Math.sin(angle),y:-gx*Math.sin(angle)+gy*Math.cos(angle)};\n   const px=clamp(local.x,-height*.65,height*.65),py=clamp(local.y,-height*1.1,-height*.38),top=-height*.26;\n   ctx.save();ctx.beginPath();ctx.moveTo(-height*.21,top+height*.14);ctx.quadraticCurveTo(-height*.25,top,px-height*.027,py);ctx.lineTo(px+height*.027,py);ctx.quadraticCurveTo(height*.25,top,height*.21,top+height*.14);ctx.closePath();ctx.clip();\n   root.NyeSpriteRig.cloth(ctx,this.rig.image,[560,265,125,175],-height*.25,top,height*.5,height*.24,{x:px,y:py});ctx.restore();\n  }\n  // A single scale per character keeps heads/shoes the same size in tucked poses.\n  ctx.drawImage(f,-f.width*scale/2,-f.height*scale/2,f.width*scale,f.height*scale);ctx.restore();\n  const el=this.handles[id];el.dataset.animation=label;el.dataset.animationFrame=String(index);el.dataset.rig='connected-sprite';el.dataset.cloth=held&&id==='matt'?'stretch':'rest';el.dataset.gripping='false';return true;\n }\n\n beginLanding(a,id,s,speed){\n  this.land(a,s);if(this.env.reduced)return;\n  a.recovery={age:0,surface:s.id,severe:speed>=780};a.pose='impact';a.restUntil=this.age+12;\n  if(id==='matt')this.cancelMattHabit(true);\n }\n recoveryStep(a,id,dt){\n  const q=a.recovery;if(!q)return false;const s=this.surface(q.surface);\n  if(!s||this.held?.id===id||a.aqua||a.aboard||a.toyFire){a.recovery=null;if(!s){a.support=null;a.falling=true;}return false;}\n  if(this.env.reduced){a.recovery=null;this.land(a,s);return true;}\n  q.age+=dt;a.y=this.level(s,a.x);a.vx=0;a.vy=0;a.rollAngle=0;a.falling=false;a.support=s.id;\n  a.pose=q.age<.3?'impact':q.age<1.35+(q.severe?.4:0)?'dazed':'recover';\n  if(q.age>(id==='matt'?2.35+(q.severe?.4:0):.85)){a.recovery=null;this.land(a,s);}\n  return true;\n }\n drawRecovery(ctx,a,id,scroll){\n  const q=a.recovery;if(!q||id==='dragon')return false;\n  const cat=id==='blackie',arr=cat?this.bodyMotion?.slice(8):this.landingFrames;\n  if(!arr){const fallback=this.bodyMotion?.[cat?14:6];if(!fallback)return false;const scale=Math.min(a.h/(this.bodyMotion[cat?8:0].height),1/Math.max(1,root.devicePixelRatio||1));ctx.save();ctx.translate(a.x,a.y-scroll);ctx.scale(a.dir,1);ctx.drawImage(fallback,-fallback.width*scale/2,-fallback.height*scale,fallback.width*scale,fallback.height*scale);ctx.restore();return true;}\n  const t=q.age,extra=q.severe?.4:0;\n  const n=cat?(t<.25?6:7):t<.14?0:t<.34?1:t<.85+extra?2:t<1.4+extra?(Math.floor((t-.85-extra)*10)%2?3:4):t<1.72+extra?5:t<2.02+extra?6:7;\n  const f=arr[n],scale=Math.min(a.h/(cat?arr[0].height:arr[7].height),1/Math.max(1,root.devicePixelRatio||1));\n  // Every frame rests on its own lowest drawn pixel; no below-ground centre rotation.\n  const angle=cat&&t>.25&&t<.65?Math.sin(t*38)*.045:0,extent=(Math.abs(Math.sin(angle))*f.width+Math.abs(Math.cos(angle))*f.height)*scale*.5;\n  ctx.save();ctx.translate(a.x,a.y-scroll-extent);ctx.rotate(angle);ctx.scale(a.dir,1);ctx.drawImage(f,-f.width*scale/2,-f.height*scale/2,f.width*scale,f.height*scale);ctx.restore();\n  this.handles[id].dataset.animation=cat?'landing-cat':'landing-recovery';this.handles[id].dataset.animationFrame=String(n);this.handles[id].dataset.rig='connected-sprite';return true;\n }\n drawMobility(ctx,a,id,scroll){\n  if(id==='dragon'||this.held?.id===id||a.aqua||a.toyFire||a.dragonRiding||a.dragonBoard)return false;\n  let n=-1,label='',side=a.dir,wall=false;\n  if(a.wallBeat){n=a.wallBeat.age<.13?1:2;label='wall-'+(n===1?'brace':'push');side=a.wallBeat.side;wall=true;}\n  else if(a.wallRecover>0&&a.falling){n=3;label='wall-release';}\n  else if(a.seeking?.phase==='wall'||id==='matt'&&this.mattHabit?.phase==='wall'){n=4+Math.floor(this.age*7)%2;label='edge-climb';wall=true;}\n  else if(a.falling&&!a.tumble&&Math.abs(a.vx||0)>180&&(a.vx<0&&a.x<75||a.vx>0&&a.x>this.env.width-75)){n=0;label='wall-reach';side=Math.sign(a.vx);wall=true;}\n  else if(a.pose==='land'&&a.poseAge<.45){n=a.poseAge<.17?6:7;label='soft-landing';}\n  if(n<0)return false;this.loadMobility(id);const arr=this.mobility[id]?.frames;if(!arr)return false;\n  const f=arr[n],ref=id==='matt'?arr[7].height:arr[7].height,scale=Math.min((id==='matt'?a.h:a.h*.72)/ref,1/Math.max(1,root.devicePixelRatio||1));\n  const anchorX=wall?(side<0?3:this.env.width-3):a.x;\n  ctx.save();ctx.translate(anchorX,a.y-scroll);ctx.scale(side,1);ctx.drawImage(f,wall?-f.width*scale:-f.width*scale/2,-f.height*scale,f.width*scale,f.height*scale);ctx.restore();\n  const el=this.handles[id];el.dataset.animation=label;el.dataset.animationFrame=String(n);el.dataset.follow=a.seeking?.phase||'rest';return true;\n }\n\n // Small, interruptible habits use the shared active-time clock, not wall-clock timers.\n loadHabitArt(key){\n  if(this.habitImages[key])return this.habitImages[key];\n  const url=this.habitURLs[key];if(!url)return null;\n  const im=new Image();im.crossOrigin='anonymous';im.decoding='async';this.habitImages[key]=im;\n  im.onload=()=>{this.cropWalkFrames(im);this.redraw();};im.onerror=()=>{im.failed=true;};im.src=url;return im;\n }\n cancelMattHabit(fall=false){\n  const a=this.actors.matt,h=this.mattHabit;\n  if(h?.phase==='wall'&&fall){a.falling=true;a.vy=0;a.support=null;}\n  this.mattHabit=null;a.habitDraw=null;a.renderH=a.h;\n  this.nextHabit=this.age+35+Math.random()*40;\n }\n noteMattInterest(){this.habitInterest=Math.min(5,(this.habitInterest||0)+1);this.nextHabit=Math.min(this.nextHabit,this.age+10+Math.random()*9);}\n chooseWritingCorner(a){\n  const options=this.surfaces.filter(s=>['image','border','button'].includes(s.kind)&&s.right-s.x>Math.max(125,a.w*2)&&s.y>100&&s.y<this.env.floor-150&&Math.abs(s.slope||0)<.08);\n  if(!options.length)return null;\n  // Prefer a real upper image/border near a page edge, never an empty layout rectangle.\n  options.sort((s,t)=>(s.y+Math.min(s.x,this.env.width-s.right)*.6)-(t.y+Math.min(t.x,this.env.width-t.right)*.6));\n  const s=options[0],side=s.x<this.env.width-s.right?-1:1,margin=a.w*.6;\n  const x=side<0?s.x+margin:s.right-margin;\n  return {id:s.id,x,side,wallX:side<0?48:this.env.width-48};\n }\n beginMattHabit(kind){\n  const a=this.actors.matt,s=this.surface(a.support);\n  if(this.env?.reduced||this.env?.paused||this.hidden||this.held||this.env?.mattHeld||a.falling||a.motion||a.tumble||a.aqua||a.aboard||a.dragonBoard||a.dragonRiding||a.toyFire||!s||this.mode!=='walk')return false;\n  if(kind==='write'||kind==='beats'||kind==='corner'){\n   const im=this.loadHabitArt('writing');if(!im?.frames)return false;\n   if(s.kind==='floor'&&kind!=='corner')kind='corner';\n  }else if(kind==='smoke'||kind==='roll'){if(!this.loadHabitArt('smoke')?.frames)return false;}\n  const h={kind,phase:'perform',age:0,duration:kind==='pace'?14+Math.random()*9:kind==='roll'?8+Math.random()*4:kind==='smoke'?9+Math.random()*5:22+Math.random()*18,originX:a.x};\n  if(kind==='corner'){\n   const corner=this.chooseWritingCorner(a);if(!corner)return false;\n   h.corner=corner;h.phase='approach';h.duration=32+Math.random()*24;\n  }\n  this.mattHabit=h;this.lastHabit=kind;this.mode='walk';this.socialIn=Math.max(this.socialIn,20);a.restUntil=0;a.attention=0;a.decideIn=90;\n  return true;\n }\n mattHabitStep(a,s,dt){\n  if(this.env.reduced){if(this.mattHabit)this.cancelMattHabit(true);return false;}\n  if(!this.mattHabit){\n   if(this.age<this.nextHabit||this.mode!=='walk'||this.dragonTrip)return false;\n   const onShelf=s.kind!=='floor'&&s.right-s.x>a.w*1.7;\n   const bag=onShelf?['write','beats','pace','smoke','roll']:['roll','smoke','pace','corner'];\n   const options=bag.filter(k=>k!==this.lastHabit&&(k!=='corner'||this.age>=this.nextCorner));\n   const kind=options[Math.floor(Math.random()*options.length)]||'pace';\n   if(!this.beginMattHabit(kind)){this.nextHabit=this.age+5;return false;}\n  }\n  const h=this.mattHabit;h.age+=dt;\n  if(h.phase==='approach'){\n   const target=this.surface(h.corner.id);if(!target){this.cancelMattHabit();return false;}\n   // Reach the end of the current ledge first. Step off with ordinary falling physics\n   // if a different lower support blocks the walk; never slide through a page element.\n   const destination=clamp(h.corner.wallX,s.x+a.w*.35,s.right-a.w*.35),dx=destination-a.x;\n   a.dir=dx>=0?1:-1;a.pose='walk';a.x+=clamp(dx,-22*dt,22*dt);a.y=this.level(s,a.x);\n   if(Math.abs(dx)<2){\n    if(Math.abs(a.x-h.corner.wallX)>45){\n     // Already on a shelf: use it as a writing nook instead of levitating across a gap.\n     h.phase='perform';h.kind='write';h.age=0;h.duration=26+Math.random()*18;a.pose='notebook';return true;\n    }\n    h.phase='wall';h.age=0;a.support=null;a.pose='idle-climb';a.x=h.corner.wallX;\n   }\n   return true;\n  }\n  if(h.phase==='wall')return this.mattWallStep(a,dt);\n  if(h.phase==='landing'){\n   // Existing jump/pull-up code owns the transfer onto the actual ledge.\n   h.phase='perform';h.kind='write';h.age=0;a.pose='notebook';return true;\n  }\n  if(h.kind==='pace'){\n   const lo=Math.max(s.x+a.w*.4,h.originX-70),hi=Math.min(s.right-a.w*.4,h.originX+70);\n   if(hi-lo>14){a.x=clamp(a.x+a.dir*15*dt,lo,hi);if(a.x>=hi)a.dir=-1;if(a.x<=lo)a.dir=1;a.y=this.level(s,a.x);a.pose='walk';}else a.pose='perch';\n  }else a.pose=({write:'notebook',beats:'walkman',smoke:'smoke',roll:'roll'})[h.kind]||'perch';\n  if(h.age>=h.duration){\n   // Small sequences: finish a roll, then smoke it; write, then listen for a beat.\n   if(h.kind==='roll'&&Math.random()<.7){h.kind='smoke';h.age=0;h.duration=8;this.lastHabit='smoke';}\n   else if(h.kind==='write'&&Math.random()<.7){h.kind='beats';h.age=0;h.duration=12+Math.random()*8;this.lastHabit='beats';}\n   else{this.cancelMattHabit();a.pose='perch';a.restUntil=this.age+12+Math.random()*16;this.nextHabit=this.age+45+Math.random()*55;}\n  }\n  return true;\n }\n mattWallStep(a,dt){\n  const h=this.mattHabit;if(!h||h.phase!=='wall')return false;\n  const target=this.surface(h.corner.id);\n  if(!target||this.env.reduced||a.toyFire){this.cancelMattHabit(true);return false;}\n  // The outer page edge is the handhold. The floor and target stay in document space.\n  h.age+=dt;a.x=clamp(h.corner.wallX,28,this.env.width-28);a.dir=h.corner.side;\n  const landingY=this.level(target,h.corner.x),goal=landingY+a.h*.82;\n  a.y=Math.max(goal,a.y-(58+Math.sin(h.age*8)*9)*dt);a.pose='idle-climb';a.vx=0;a.vy=0;\n  if(a.y<=goal+.5){\n   const x=clamp(h.corner.x,target.x+a.w*.4,target.right-a.w*.4),distance=Math.abs(x-a.x);\n   if(distance>260){this.cancelMattHabit(true);return false;}\n   h.phase='landing';h.age=0;this.nextCorner=this.age+240+Math.random()*150;\n   const savedX=a.x;a.x=x;this.jump(a,target,'matt');a.motion.from.x=savedX;a.x=savedX;a.motion.to.x=x;a.dir=x>=savedX?1:-1;\n  }\n  return true;\n }\n // Fixed standing-equivalent body size per atlas. Pose bounds (raised hands,\n // folded knees, smoke and headphones) never determine the character's scale.\n mattSpriteScale(a,im,kind){\n  let ref;\n  if(kind==='notebook')ref=Math.max(...im.frames.slice(0,4).map(f=>f[3]))*1.10;\n  else if(kind==='smoke')ref=Math.max(...im.frames.slice(4).map(f=>f[3]));\n  else ref=im.frames[kind==='life'?4:7][3];\n  return Math.min(1/Math.max(1,root.devicePixelRatio||1),a.h/ref);\n }\n drawMattHabit(ctx,a,scroll){\n  const h=this.mattHabit;if(!h||this.held?.id==='matt'||a.aqua||a.falling||a.tumble||a.dragonBoard||a.dragonRiding||a.toyFire)return false;\n  const el=this.handles.matt;\n  if(h.phase==='wall'){\n   const im=this.actionImages.matt;if(!im?.frames)return false;\n   const n=[2,3,2,4,3,2][Math.floor(h.age*4)%6],f=im.frames[n],scale=this.mattSpriteScale(a,im,'action');\n   ctx.save();ctx.translate(a.x,a.y-scroll);ctx.scale(a.dir,1);ctx.drawImage(im,...f,-f[2]*scale/2,-f[3]*scale,f[2]*scale,f[3]*scale);ctx.restore();\n   el.dataset.animation='page-edge-climb';el.dataset.animationFrame=String(n);return true;\n  }\n  if(h.phase!=='perform'||h.kind==='pace'||a.motion)return false;\n  const seated=h.kind==='write'||h.kind==='beats',key=seated?'writing':'smoke',im=this.habitImages[key];if(!im?.frames)return false;\n  // Unequal frame holds make the thought/pencil/beat pauses feel intentional.\n  const sequence=h.kind==='write'?[0,1,0,1,2,2,3,1]:h.kind==='beats'?[4,6,4,7,4,5,4,6]:h.kind==='smoke'?[0,0,1,1,2,3,0,0]:[4,5,4,5,6,5,6,7];\n  const rate=h.kind==='write'?2.1:h.kind==='beats'?2.3:h.kind==='smoke'?1.2:2.1,index=sequence[Math.floor(h.age*rate)%sequence.length],f=im.frames[index];\n  const scale=this.mattSpriteScale(a,im,seated?'notebook':'smoke'),dw=f[2]*scale,dh=f[3]*scale;\n  // Sitting pivots at the hips: the shoes dangle below the actual ledge.\n  const seatDrop=seated?a.h*.245:0;\n  ctx.save();ctx.translate(a.x,a.y-scroll+seatDrop);ctx.scale(a.dir,1);ctx.drawImage(im,...f,-dw/2,-dh,dw,dh);ctx.restore();\n  a.renderH=Math.max(a.h,dh);a.habitDraw={width:dw,height:dh,drop:seatDrop};\n  Object.assign(el.style,{left:clamp(a.x-dw/2,0,this.env.width-dw)+'px',top:(a.y-scroll+seatDrop-dh)+'px',width:Math.max(44,dw)+'px',height:Math.max(44,dh-seatDrop)+'px'});\n  el.dataset.animation=h.kind==='write'?'writing-bars':h.kind==='beats'?'walkman-beats':h.kind==='roll'?'rolling-break':'smoke-break';el.dataset.animationFrame=String(index);\n  return true;\n }\n\n cropWalkFrames(image){\n  const c=document.createElement('canvas');c.width=image.naturalWidth;c.height=image.naturalHeight;const ctx=c.getContext('2d');ctx.drawImage(image,0,0);const px=ctx.getImageData(0,0,c.width,c.height).data;image.frames=[];\n  for(let i=0;i<8;i++){const x0=Math.floor(i%4*c.width/4),x1=Math.floor((i%4+1)*c.width/4),y0=Math.floor(Math.floor(i/4)*c.height/2),y1=Math.floor((Math.floor(i/4)+1)*c.height/2);let l=x1,r=x0,t=y1,b=y0;for(let y=y0;y<y1;y++)for(let x=x0;x<x1;x++)if(px[(y*c.width+x)*4+3]>40){l=Math.min(l,x);r=Math.max(r,x);t=Math.min(t,y);b=Math.max(b,y);}image.frames.push([l,t,Math.max(1,r-l+1),Math.max(1,b-t+1)]);}\n }\n cropFourFrames(image){\n  const c=document.createElement('canvas');c.width=image.naturalWidth;c.height=image.naturalHeight;const ctx=c.getContext('2d');ctx.drawImage(image,0,0);const px=ctx.getImageData(0,0,c.width,c.height).data;image.frames=[];\n  for(let i=0;i<4;i++){const x0=Math.floor(i%2*c.width/2),x1=Math.floor((i%2+1)*c.width/2),y0=Math.floor(Math.floor(i/2)*c.height/2),y1=Math.floor((Math.floor(i/2)+1)*c.height/2);let l=x1,r=x0,t=y1,b=y0;for(let y=y0;y<y1;y++)for(let x=x0;x<x1;x++)if(px[(y*c.width+x)*4+3]>40){l=Math.min(l,x);r=Math.max(r,x);t=Math.min(t,y);b=Math.max(b,y);}image.frames.push([l,t,Math.max(1,r-l+1),Math.max(1,b-t+1)]);}\n }\n cropLifeFrames(image,id){\n  // The seated cat's feet sit below the sheet midpoint; isolate the actual art rows.\n  if(id!=='blackie'){this.cropWalkFrames(image);return;}\n  const c=document.createElement('canvas');c.width=image.naturalWidth;c.height=image.naturalHeight;const ctx=c.getContext('2d');ctx.drawImage(image,0,0);const px=ctx.getImageData(0,0,c.width,c.height).data;image.frames=[];\n  for(let i=0;i<8;i++){const x0=Math.floor(i%4*c.width/4),x1=Math.floor((i%4+1)*c.width/4),y0=i<4?0:600,y1=i<4?600:c.height;let l=x1,r=x0,t=y1,b=y0;for(let y=y0;y<y1;y++)for(let x=x0;x<x1;x++)if(px[(y*c.width+x)*4+3]>40){l=Math.min(l,x);r=Math.max(r,x);t=Math.min(t,y);b=Math.max(b,y);}image.frames.push([l,t,Math.max(1,r-l+1),Math.max(1,b-t+1)]);}\n }\n // Local sprite motion has its own clock; page translation never substitutes for animation.\n lifeIndex(id,rest=false){\n  if(this.env?.reduced)return rest?4:0;\n  const t=this.age+(id==='blackie'?1.7:id==='dragon'?.8:0),blink=t%5.3;\n  if(id==='dragon'){\n   if(blink<.24)return blink<.07?1:blink<.17?2:1;\n   const cycle=[0,7,6,5,4,3,4,5,6,7];return cycle[Math.floor(t*7)%cycle.length];\n  }\n  if(blink<.26)return (rest?4:0)+(blink<.07?1:blink<.18?2:3);\n  if(id==='blackie')return (rest?4:0)+(Math.floor(t*1.5)%2?3:0);\n  return [4,5,6,7,6,5][Math.floor(t*3)%6];\n }\n drawLifeActor(ctx,a,id,scroll=0,{rest=false,angle=0,opacity=1}={}){\n  const im=this.lifeImages?.[id];if(!im?.frames)return false;\n  const index=this.lifeIndex(id,rest),f=im.frames[index];\n  // One scale for each cycle, never normalize individual frames (which makes bodies pulse).\n  const reference=im.frames[id==='blackie'?0:4];\n  const scale=id==='matt'?this.mattSpriteScale(a,im,'life'):Math.min(1/Math.max(1,root.devicePixelRatio||1),id==='dragon'?a.w/Math.max(...im.frames.map(r=>r[2])):a.h/reference[3]);\n  const dw=f[2]*scale,dh=f[3]*scale;\n  ctx.save();ctx.globalAlpha*=opacity;ctx.translate(a.x,a.y-scroll);ctx.rotate(angle);ctx.scale(a.dir||1,1);\n  const left=id==='matt'?-dw/2:(Math.max(...im.frames.map(r=>r[2]))/2-f[2])*scale;\n  ctx.drawImage(im,...f,left,-dh,dw,dh);ctx.restore();\n  a.renderH=Math.max(a.h,dh);a.lifeFrame=index;\n  const el=this.handles?.[id];if(el){el.dataset.animation=id==='dragon'?'flight':rest?'rest':'idle';el.dataset.animationFrame=String(index);}\n  return true;\n }\n addHandle(id){\n  const el=document.createElement('button');el.type='button';el.className='nye-companion-hit';el.dataset.companion=id;el.hidden=true;el.setAttribute('aria-label',({matt:'Little Matt',blackie:'Blackie the cat',dragon:'The luck dragon'})[id]+'. Drag to pick up. Press P, then arrows to move and Space to drop.');el.title=id==='blackie'?'Pet Blackie, or pick him up.':'Tap to say hello, or pick up and drag.';document.body.append(el);this.handles[id]=el;\n  el.addEventListener('pointerdown',e=>{if(this.env?.paused||this.hidden||this.held||e.button!==0||e.isPrimary===false)return;e.preventDefault();this.hold(id,e.clientX,e.clientY,e.pointerId);el.setPointerCapture(e.pointerId);});\n  el.addEventListener('pointermove',e=>{if(this.held?.id!==id||e.pointerId!==this.held.pointer)return;this.held.moved ||= Math.hypot(e.clientX-this.held.startX,e.clientY-this.held.startY)>6;this.held.x=e.clientX;this.held.y=e.clientY;});\n  el.addEventListener('pointerup',e=>{if(this.held?.id===id&&e.pointerId===this.held.pointer)this.release(false);});\n  el.addEventListener('pointercancel',()=>{if(this.held?.id===id)this.release(true);});el.addEventListener('lostpointercapture',()=>{if(this.held?.id===id)this.release(true);});el.addEventListener('contextmenu',e=>e.preventDefault());\n  el.addEventListener('keydown',e=>{if(this.env?.paused)return;if(e.key.toLowerCase()==='p'&&!this.held){e.preventDefault();const a=this.actors[id];this.hold(id,a.x,a.y-this.env.scroll-a.h*.5,null);this.held.moved=true;}else if(this.held?.id===id){const d={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]}[e.key];if(d){e.preventDefault();this.held.x+=d[0]*20;this.held.y+=d[1]*20;this.held.moved=true;}else if([' ','Enter','Escape'].includes(e.key)){e.preventDefault();this.release(e.key==='Escape');}}});\n  el.addEventListener('click',e=>{if(e.detail===0&&!this.held)this.greet(id);});\n }\n hold(id,x,y,pointer){this.cancelOpening();this.endCatBond();this.cancelSeeking();if(id!=='dragon')this.loadMobility(id);this.actors[id].wallBeat=null;this.actors[id].recovery=null;this.encounters?.endCat?.();if(id==='matt'){this.encounters?.endEncounter();this.cancelMattHabit();}const a=this.actors[id];this.leaveDragon(id);if(id==='dragon'){this.endDragonRide();this.onDragonGrab();a.visible=true;}this.held={id,x,y,startX:x,startY:y,pointer,moved:false};a.aqua=null;a.vx=0;a.vy=0;a.falling=false;a.motion=null;a.support=null;a.aboard=false;a.grab=null;a.tumble=null;a.rollAngle=0;a.grabSeen=new Set();a.holdAngle=0;if(id==='dragon'){a.holdOffset={x:a.x-x,y:a.y-y-(this.env?.scroll||0)};a.wiggle=0;}this.mode='walk';if(id==='matt')this.ownsMatt=true;this.redraw();}\n release(cancelled){\n  if(!this.held)return;const h=this.held,a=this.actors[h.id];this.held=null;a.grab=null;\n  a.vx=cancelled||!h.moved?0:clamp(a.vx||0,-480,480);a.vy=cancelled||!h.moved?0:clamp(a.vy||0,-280,500);\n  a.falling=h.id!=='dragon';a.dropDistance=0;a.rollAngle=0;a.tumble=null;a.ignoreSurface=null;a.bounces=0;a.decideIn=30;\n  if(!cancelled&&h.moved&&h.id==='blackie')this.tryCatDrop({x:h.x,y:h.y+this.env.scroll+a.h*.05});\n  if(!cancelled&&!h.moved)this.greet(h.id);\n  if(h.id==='dragon'){this.nextVisit=this.age+180;a.flyRemaining=10;a.wiggle=cancelled?0:1.4;a.releaseDrift=cancelled?0:.65;}\n  const el=this.handles[h.id];if(h.pointer!==null&&el.hasPointerCapture?.(h.pointer))el.releasePointerCapture(h.pointer);\n }\n\n cancel(){this.endCatBond();this.stopPurr();this.cancelSeeking();this.release(true);this.endDragonRide();}\n greet(id){this.cancelOpening();if(id!=='dragon'){this.cancelMattHabit(true);this.noteMattInterest();}if(id==='dragon'){this.actors.dragon.wiggle=2;this.announce('The luck dragon says hey.');return;}if(this.startCatBond('scratch')||this.startCatBond('cradle'))return;this.mode='walk';this.modeAge=0;this.socialIn=12;this.announce(id==='blackie'?'Blackie approves. Mostly.':'Matt\u2019s taking a cat break.');}\n reset(){this.cancelOpening();this.encounters?.endCat?.();this.encounters?.cancelComedy?.();this.encounters?.endEncounter();this.cancelMattHabit(true);this.nextHabit=this.age+28;this.cancel();this.env=null;this.initialized=false;this.ownsMatt=true;this.wasWet=false;this.boardAge=0;this.mode='walk';this.modeAge=0;for(const a of Object.values(this.actors)){a.recovery=null;a.wallBeat=null;a.wallRecover=0;a.seeking=null;a.falling=false;a.motion=null;a.aboard=false;a.support=null;a.aqua=null;a.wetFor=0;a.tumble=null;a.rollAngle=0;a.vx=0;a.vy=0;}this.surfaceAge=2;this.actors.dragon.visible=false;}\n mattGeometry(){const a=this.actors.matt;return {x:a.x,y:a.y-a.h*.5,size:a.w,height:a.h,angle:0};}\n // Surfaces and actor positions use document coordinates. Scrolling changes the goal, never the floor.\n scanSurfaces(env){\n  const list=[{id:'floor',x:20,right:env.width-20,y:env.floor-16,kind:'floor',shop:false}];\n  // Only drawn edges are physical. Text/layout rectangles and image undersides are not shelves.\n  const nodes=document.querySelectorAll('main img,main section,main article,main a,main button,main hr,footer a,[data-companion-ledge]');\n  const painted=color=>!!color&&color!=='transparent'&&!/rgba?\\([^)]*[,/]\\s*0(?:\\.0+)?\\s*\\)$/.test(color);\n  for(const el of nodes){\n   if(el.closest('[data-paint-controls],[data-paint-playground],iframe')||el.disabled||el.matches('[data-companion],[data-matt-hit]'))continue;\n   let skip=false;for(let n=el;n&&n!==document.body;n=n.parentElement){const cs=getComputedStyle(n);if(cs.position==='fixed'||cs.position==='sticky'||cs.visibility==='hidden'||cs.display==='none'||Number(cs.opacity)===0){skip=true;break;}}if(skip)continue;\n   let r=el.getBoundingClientRect();if(r.width<42||r.height<1||r.left>=env.width||r.right<=0||!el.getClientRects().length)continue;\n   const tag=el.tagName,img=tag==='IMG',button=tag==='BUTTON'||tag==='A',cs=getComputedStyle(el);\n   const topBorder=parseFloat(cs.borderTopWidth)>=1&&cs.borderTopStyle!=='none'&&painted(cs.borderTopColor);\n   const filled=painted(cs.backgroundColor)||(cs.backgroundImage&&cs.backgroundImage!=='none');\n   if(!img&&!topBorder&&!(button&&filled))continue;\n   if(img){\n    if(r.width<100||r.height<90||!el.complete||!el.naturalWidth)continue;\n    // A contained image can have letterboxing: perch on the artwork, not its empty element box.\n    if(cs.objectFit==='contain'||cs.objectFit==='scale-down'){\n     const k=Math.min(r.width/el.naturalWidth,r.height/el.naturalHeight,cs.objectFit==='scale-down'?1:Infinity),w=el.naturalWidth*k,h=el.naturalHeight*k;\n     const pos=(cs.objectPosition||'50% 50%').split(' '),offset=(v,space)=>v?.endsWith('%')?space*parseFloat(v)/100:v?.endsWith('px')?parseFloat(v):space/2;\n     const left=r.left+offset(pos[0],r.width-w),top=r.top+offset(pos[1],r.height-h);r={left,right:left+w,top,width:w,height:h};\n    }\n   }\n   let x=clamp(r.left,12,env.width-12),right=clamp(r.right,12,env.width-12);if(right-x<40)continue;\n   let y=r.top+env.scroll,slope=0;\n   const transform=cs.transform;if(button&&transform&&transform!=='none'&&typeof DOMMatrix!=='undefined'){const m=new DOMMatrix(transform),w=el.offsetWidth,h=el.offsetHeight;if(m.a>.5&&Math.abs(m.b)>.001){const minX=Math.min(0,m.a*w,m.c*h,m.a*w+m.c*h),minY=Math.min(0,m.b*w,m.d*h,m.b*w+m.d*h);x=r.left-minX;right=x+m.a*w;y=r.top+env.scroll-minY;slope=m.b/m.a;}}\n   const intro=el.matches('.nye-latest-stamp')?'release':el.matches('.nye-hero-listen .nye-button')?'music':el.matches('.nye-world-hero .nye-world-art img')?'art':el.matches('.nye-art-wordmark img')?'logo':null;\n   const shop=button&&(/buy|shop|merch|cart/i.test(el.textContent||'')||/\\/products\\/|\\/collections\\//.test(el.getAttribute('href')||''));\n   if(!this.surfaceIds.has(el))this.surfaceIds.set(el,'edge-'+(++this.surfaceSerial));const id=this.surfaceIds.get(el);\n   if(!list.some(s=>Math.abs(s.x-x)<3&&Math.abs(s.right-right)<3&&Math.abs(s.y-y)<3))list.push({id:id+'-top',x,right,y,slope,kind:img?'image':button?'button':'border',shop,intro});\n  }\n  this.addLetterSurfaces(list,env);this.surfaces=list.slice(0,900);this.surfaceAge=0;\n }\n addLetterSurfaces(list,env){\n  this.letterMasks ||= new Map();\n  const canvas=this.letterCanvas ||= document.createElement('canvas'),cx=canvas.getContext('2d',{willReadFrequently:true});\n  for(const el of document.querySelectorAll('main h1,main h2,main h3,footer h2')){\n   const rect=el.getBoundingClientRect();if(rect.bottom<-350||rect.top>env.height+350)continue;\n   const cs=getComputedStyle(el),size=parseFloat(cs.fontSize);if(size<30||cs.visibility==='hidden'||cs.display==='none'||Number(cs.opacity)===0)continue;\n   if(el.closest('[data-paint-controls],[data-paint-playground]'))continue;\n   if(!this.surfaceIds.has(el))this.surfaceIds.set(el,'letters-'+(++this.surfaceSerial));const id=this.surfaceIds.get(el);\n   const walker=document.createTreeWalker(el,NodeFilter.SHOW_TEXT);let node,serial=0;\n   while((node=walker.nextNode())){\n    const style=getComputedStyle(node.parentElement),font=style.font||`${style.fontWeight} ${style.fontSize} ${style.fontFamily}`,fs=parseFloat(style.fontSize);\n    for(let i=0;i<node.textContent.length;){const code=node.textContent.codePointAt(i),char=String.fromCodePoint(code),length=char.length,index=serial++;if(!char.trim()){i+=length;continue;}\n     const range=document.createRange();range.setStart(node,i);range.setEnd(node,i+length);i+=length;const r=range.getBoundingClientRect();if(r.width<3||r.height<5||r.right<0||r.left>env.width)continue;\n     const key=font+'|'+char;let mask=this.letterMasks.get(key);\n     if(!mask){\n      cx.font=font;const m=cx.measureText(char),ascent=m.fontBoundingBoxAscent||fs*.8,descent=m.fontBoundingBoxDescent||fs*.2;\n      canvas.width=Math.ceil(Math.max(m.width,m.actualBoundingBoxRight||0)+Math.max(0,m.actualBoundingBoxLeft||0)+8);canvas.height=Math.ceil(ascent+descent+8);cx.font=font;cx.fillStyle='#fff';cx.textBaseline='alphabetic';cx.fillText(char,4,ascent+4);\n      const data=cx.getImageData(0,0,canvas.width,canvas.height).data,columns=[];\n      for(let x=0;x<canvas.width;x++){let top=-1;for(let y=0;y<canvas.height;y++)if(data[(y*canvas.width+x)*4+3]>140){top=y;break;}columns.push(top);}\n      const runs=[];for(let x=0;x<columns.length;){if(columns[x]<0){x++;continue;}const left=x,top=columns[x];while(x+1<columns.length&&columns[x+1]>=0&&Math.abs(columns[x+1]-top)<=2)x++;if(x-left>=4)runs.push({left:left-4,right:x-3,top:top-4});x++;}\n      mask={runs,ascent,descent};if(this.letterMasks.size>350)this.letterMasks.clear();this.letterMasks.set(key,mask);\n     }\n     const textTop=r.top+env.scroll+(r.height-mask.ascent-mask.descent)/2;\n     for(let n=0;n<mask.runs.length;n++){const q=mask.runs[n],x=r.left+q.left,right=r.left+q.right;if(right<=0||x>=env.width)continue;list.push({id:`${id}-${index}-${n}`,x:Math.max(0,x),right:Math.min(env.width,right),y:textTop+q.top,kind:'letter',shop:false});}\n    }\n   }\n  }\n }\n\n level(s,x){return s.y+(s.slope||0)*(clamp(x,s.x,s.right)-s.x);}\n surface(id){return this.surfaces.find(s=>s.id===id);}\n spot(s,a){return clamp(a.x,s.x+Math.min(a.w*.35,(s.right-s.x)/2),s.right-Math.min(a.w*.35,(s.right-s.x)/2));}\n land(a,s){a.x=clamp(a.x,s.x,s.right);a.y=this.level(s,a.x)+(s.kind==='wall'?a.h*.9:0);a.support=s.id;a.falling=false;a.vy=0;a.motion=null;a.pose=s.kind==='wall'?'hang':'land';a.poseAge=0;a.decideIn=24+Math.random()*24;a.vx=0;a.tumble=null;a.rollAngle=0;a.dropDistance=0;a.ignoreSurface=null;a.restUntil=this.age+8+Math.random()*12;if(a.wetFor>0&&s.kind!=='wall')a.aqua={state:'shake',age:0,bubbles:0};}\n route(a,id){\n  const cat=id==='blackie',rise=cat?310:205,reach=cat?350:255,current=this.surface(a.support),wet=this.env.poolAt?.(a.x),goal=this.env.scroll+this.env.height*.66;\n  const candidates=this.surfaces.filter(s=>s.id!==a.support&&s.right-s.x>=a.w*.55&&s.y>90&&(wet==null||s.y<wet-18||s.kind==='floor'));\n  const reachable=(x,y,s)=>{const dx=Math.abs(clamp(x,s.x,s.right)-x),dy=y-(s.y+(s.kind==='wall'?a.h*.9:0));return dx<=reach&&dy<=rise&&dy>=-350&&!(s.kind==='floor'&&wet!=null&&s.y>=wet);};\n  // A tiny breadth-first route lets them take intermediate image edges toward a visible ledge.\n  const queue=[{x:a.x,y:a.y,first:null,depth:0}],seen=new Set([a.support]);let best=null,bestScore=Infinity;\n  for(let qi=0;qi<queue.length&&qi<180;qi++){const q=queue[qi];if(q.depth>=5)continue;\n   for(const s of candidates){if(seen.has(s.id)||!reachable(q.x,q.y,s))continue;seen.add(s.id);const x=clamp(q.x,s.x+8,s.right-8),first=q.first||s;\n    const visible=s.y>this.env.scroll+100&&s.y<this.env.scroll+this.env.height-24;\n    let score=Math.abs(s.y-goal)+q.depth*28+(s.kind==='wall'?110:0)+(s.kind==='floor'?45:0);\n    if(visible&&s.shop&&this.age>this.promoUntil)score-=190;if(wet!=null&&a.y>wet-100&&s.y<a.y)score-=90;\n    if(score<bestScore){bestScore=score;best=first;}queue.push({x,y:s.y+(s.kind==='wall'?a.h*.9:0),first,depth:q.depth+1});\n   }\n  }\n  const currentScore=Math.abs(a.y-goal)+(current?.kind==='wall'?130:0);\n  return best&&(bestScore<currentScore-15||current?.kind==='wall'||a.y>(wet??Infinity)-55||Math.random()<.12)?best:null;\n }\n jump(a,s,id){\n  const x=this.spot(s,a),targetY=this.level(s,x)+(s.kind==='wall'?a.h*.9:0),dy=a.y-targetY;a.dir=x>=a.x?1:-1;a.support=null;a.falling=false;\n  a.motion={type:'windup',age:0,from:{x:a.x,y:a.y},to:{x,y:targetY},surface:s.id,catch:dy>65&&s.kind!=='wall',duration:clamp(.55+Math.abs(x-a.x)/560+Math.max(0,dy)/800,.58,1.1)};a.pose='crouch';\n }\n liquidHeight(a,id){return id==='dragon'?112:a.h;}\n liquidWet(x,y){return this.env.liquidAt?this.env.liquidAt(x,y).wet>.12:(this.env.poolAt?.(x)!=null&&y>this.env.poolAt(x));}\n waterBurst(a,id,kind){\n  const surface=this.env.poolAt?.(a.x)??a.y;\n  this.env.splash?.(a.x,kind==='break'?18:8);\n  for(let i=0;i<(kind==='bubble'?2:10)&&this.waterFX.length<90;i++)this.waterFX.push({x:a.x+(Math.random()-.5)*a.w*.6,y:kind==='bubble'?a.y-this.liquidHeight(a,id)*.7:surface,vx:(Math.random()-.5)*(kind==='bubble'?15:140),vy:kind==='bubble'?-35-Math.random()*25:-65-Math.random()*90,life:kind==='bubble'?1.3:.7,kind});\n }\n beginWater(a,id){\n  if(id==='matt')this.cancelMattHabit();\n  a.aqua={state:'submerged',age:0,bubbles:0};a.recovery=null;a.tumble=null;a.rollAngle=0;a.motion=null;a.support=null;a.grab=null;a.falling=false;a.aboard=false;a.vy=clamp(a.vy||0,-40,130);a.vx=0;if(id==='matt')this.ownsMatt=true;this.waterBurst(a,id,'entry');\n }\n waterStep(a,id,dt){\n  const env=this.env,h=this.liquidHeight(a,id),pool=env.poolAt?.(a.x),bodyWet=this.liquidWet(a.x,a.y-h*.35);\n  if(!a.aqua){\n   if(!bodyWet||a.aboard&&!this.liquidWet(a.x,a.y-h*.7))return false;\n   // A jump is allowed to cross out of the water; a submerged head cancels it.\n   if(a.motion&&!this.liquidWet(a.x,a.y-h*.8))return false;\n   this.beginWater(a,id);\n  }\n  const q=a.aqua;q.age+=dt;q.bubbles+=dt;\n  if(env.reduced){a.pose=bodyWet?'swim':'tread';return true;}\n  if(q.state==='shake'&&this.liquidWet(a.x,a.y-h*.8)){this.beginWater(a,id);return true;}\n  if(q.state==='shake'){\n   a.pose='shake';if(q.age>.85){if(id==='dragon'){q.state='escape';q.age=0;}else{a.aqua=null;a.pose='land';a.poseAge=0;a.decideIn=1;}}return true;\n  }\n  if(q.state==='escape'){\n   a.pose='escape';a.x+=a.dir*115*dt;a.y-=70*dt;\n   if(bodyWet){this.beginWater(a,id);return true;}\n   if(q.age>4.5||a.x>env.width+180||a.x<-180){a.visible=false;a.aqua=null;this.nextVisit=this.age+90;}\n   return true;\n  }\n  if(pool==null){a.aqua=null;a.wetFor=1.5;a.falling=id!=='dragon';a.vy=0;if(id==='dragon'){a.aqua={state:'shake',age:0,bubbles:0};}return true;}\n  const top=Math.max(0,pool),target=top+h*.47;\n  if(q.state==='submerged'){\n   a.pose=q.age<.3?'struggle':'swim';\n   const speed=(id==='dragon'?155:id==='blackie'?112:100)*(1+.13*Math.sin(q.age*9));\n   // Drag removes impact momentum; strokes accelerate toward the free surface.\n   a.vy+=( -speed-a.vy)*Math.min(1,dt*(q.age<.3?2:5));\n   a.y+=a.vy*dt;a.x=clamp(a.x+Math.sin(q.age*7)*dt*12,25,env.width-25);\n   if(q.bubbles>.22){q.bubbles=0;this.waterBurst(a,id,'bubble');}\n   if(a.y<=target){a.y=target;q.state='break';q.age=0;q.fromY=a.y;this.waterBurst(a,id,'break');}\n   return true;\n  }\n  if(q.state==='break'){\n   a.pose='surface';const t=clamp(q.age/.45,0,1);a.y=mix(q.fromY,id==='dragon'?top-18:top+h*.34,t)-Math.sin(t*Math.PI)*h*.20;\n   if(t===1){q.state=id==='dragon'?'shake':'tread';q.age=0;}\n   return true;\n  }\n  a.pose='tread';\n  if(this.liquidWet(a.x,a.y-h*.8)){this.beginWater(a,id);return true;}\n  a.y=mix(a.y,top+h*.38+Math.sin(this.age*5)*2,Math.min(1,dt*9));\n  if(q.age<.65)return true;\n  const exit=this.route(a,id);\n  if(exit&&this.level(exit,this.spot(exit,a))<top-12){a.aqua=null;a.wetFor=3;this.jump(a,exit,id);this.waterBurst(a,id,'break');return true;}\n  const raft=env.raft;\n  if(raft.active){\n   a.x+=clamp(raft.x-a.x,-65,65)*dt;\n   if(Math.abs(raft.x-a.x)<45&&Math.abs(raft.y-top)<85){q.state='board';q.age=0;q.fromX=a.x;q.fromY=a.y;}\n  }\n  return true;\n }\n waterBoard(a,id,dt){\n  const q=a.aqua,raft=this.env.raft;if(!raft.active){q.state='tread';q.age=0;return;}\n  q.age+=dt;const t=clamp(q.age/.65,0,1),e=t*t*(3-2*t);a.pose='wet-climb';a.x=mix(q.fromX,raft.x+(id==='blackie'?35:0),e);a.y=mix(q.fromY,raft.y-12,e)-Math.sin(t*Math.PI)*24;\n  if(t===1){a.aqua=null;a.aboard=true;a.decideIn=4;a.pose='perch';if(id==='matt')this.ownsMatt=false;}\n }\n drawWaterActor(ctx,a,id,scroll){\n  const im=this.waterImages[id];if(!im?.frames)return false;\n  const wetHeld=this.held?.id===id&&this.liquidWet(a.x,a.y-this.liquidHeight(a,id)*.35);\n  let pose=wetHeld?'struggle':a.pose;if(!a.aqua&&!wetHeld&&!(a.wetFor>0&&['pull','crest','land','wet-climb'].includes(pose)))return false;\n  let index;if(id==='dragon')index=({struggle:0,swim:1+Math.floor(this.age*7)%2,surface:3,shake:4+Math.floor(this.age*9)%2,escape:6+(Math.floor(this.age*4)%2)})[pose]??1;\n  else index=({struggle:0,swim:1+Math.floor(this.age*8)%3,surface:4,tread:5,'wet-climb':6,pull:6,crest:6,land:7,shake:7})[pose]??5;\n  const f=im.frames[index],scale=id==='matt'?this.mattSpriteScale(a,im,'water'):Math.min(1,this.liquidHeight(a,id)/im.frames[id==='dragon'?1:7][3]),dw=f[2]*scale,dh=f[3]*scale,left=a.x-dw/2,top=a.y-scroll-dh;\n  a.renderH=dh;this.handles[id].dataset.waterPose=pose;\n  // Render narrow strips against the actual liquid sampler. Submerged pixels\n  // remain visible through the ink, while the emerged head stays fully opaque.\n  ctx.save();\n  for(let y=0;y<dh;y+=4){const band=Math.min(4,dh-y),wet=this.liquidWet(a.x,top+y+band/2+scroll);ctx.globalAlpha=wet?.46:1;ctx.save();ctx.translate(a.x+(wet?Math.sin(this.age*4+y*.08)*1.4:0),0);ctx.scale(a.dir,1);ctx.drawImage(im,f[0],f[1]+y/scale,f[2],band/scale,-dw/2,top+y,dw,band);ctx.restore();}\n  ctx.restore();return true;\n }\n\n // A passenger is only attached after a visible, completed jump onto the back.\n dragonSeat(id){const d=this.actors.dragon,k=d.w/168;return {x:d.x+d.dir*(id==='matt'?22:-9)*k,y:d.y-(id==='matt'?25:40)*k};}\n leaveDragon(id){\n  const a=this.actors[id];if(!a?.dragonBoard&&!a?.dragonRiding)return;\n  this.dragonTrip?.boarded.delete(id);a.dragonBoard=null;a.dragonRiding=false;a.support=null;a.motion=null;a.falling=true;a.vy=20;a.vx=this.actors.dragon.dir*35;a.dropDistance=0;\n  if(id==='matt')this.ownsMatt=true;\n }\n endDragonRide(){\n  if(!this.dragonTrip)return;\n  for(const id of ['matt','blackie'])this.leaveDragon(id);\n  this.dragonTrip=null;this.nextVisit=this.age+160+Math.random()*100;\n  this.actors.dragon.flyRemaining=6;\n }\n canBoardDragon(id){\n  const a=this.actors[id],r=this.env;\n  return !this.catBond&&this.held?.id!==id&&!r.mattHeld&&!a.recovery&&!a.motion&&!a.falling&&!a.tumble&&!a.aqua&&!a.toyFire&&!a.dragonRiding&&!a.dragonBoard&&!a.wallBeat&&(a.support||a.aboard);\n }\n startDragonVisit(){\n  if(this.dragonTrip||this.held||this.env.reduced||this.env.rescue||this.hidden)return false;\n  const ids=['matt','blackie'].filter(id=>this.canBoardDragon(id));if(!ids.length)return false;\n  const lead=this.actors[ids[0]],targets=ids.filter(id=>Math.abs(this.actors[id].y-lead.y)<95&&Math.abs(this.actors[id].x-lead.x)<220);\n  const margin=this.actors.dragon.w/2+12;const x=clamp(targets.reduce((n,id)=>n+this.actors[id].x,0)/targets.length,margin,Math.max(margin,this.env.width-margin));\n  const y=lead.y-42,dir=Math.random()<.5?1:-1,d=this.actors.dragon;\n  Object.assign(d,{x:dir>0?-120:this.env.width+120,y,dir,visible:true,aqua:null,flyRemaining:30});\n  this.dragonTrip={phase:'approach',age:0,x,y,baseY:y,targets,attempted:new Set(),boarded:new Set()};\n  this.nextVisit=this.age+180+Math.random()*150;return true;\n }\n stepDragonPassenger(a,id,dt){\n  if(a.dragonRiding){const seat=this.dragonSeat(id);a.x=seat.x;a.y=seat.y;a.dir=this.actors.dragon.dir;a.pose='ride';return true;}\n  const b=a.dragonBoard;if(!b)return false;\n  if(!this.dragonTrip||!this.actors.dragon.visible){this.leaveDragon(id);return false;}\n  b.age+=dt;a.dir=this.actors.dragon.dir;\n  if(b.age<b.delay){a.pose='crouch';return true;}\n  const t=clamp((b.age-b.delay)/b.duration,0,1),seat=this.dragonSeat(id);\n  const tx=seat.x+(b.miss?this.actors.dragon.dir*65:0),ty=seat.y+(b.miss?36:0);\n  a.x=mix(b.x,tx,t);a.y=mix(b.y,ty,t)-Math.sin(t*Math.PI)*(id==='blackie'?100:80);a.pose=t<.72?'leap':'reach';\n  if(t===1){a.dragonBoard=null;\n   if(b.miss){a.falling=true;a.vx=this.actors.dragon.dir*65;a.vy=90;a.dropDistance=0;a.pose='leap';}\n   else{a.dragonRiding=true;a.pose='ride';a.x=seat.x;a.y=seat.y;this.dragonTrip.boarded.add(id);}\n  }\n  return true;\n }\n stepDragonVisit(dt){\n  const f=this.dragonTrip,d=this.actors.dragon;if(!f)return false;\n  if(this.env.rescue||this.env.reduced||this.held?.id==='dragon'){this.endDragonRide();return false;}\n  if(this.liquidWet(d.x,d.y-d.h*.35)){this.endDragonRide();this.beginWater(d,'dragon');return false;}\n  f.age+=dt;\n  if(f.phase==='approach'){\n   const dx=f.x-d.x;d.x+=clamp(dx,-100,100)*dt;d.y=f.y+Math.sin(this.age*2.4)*2;\n   if(Math.abs(dx)<40){f.phase='boarding';f.age=0;}\n  }else if(f.phase==='boarding'){\n   d.x=mix(d.x,f.x,Math.min(1,dt*3));d.y=f.y+Math.sin(this.age*2.4)*2;\n   for(const id of f.targets){if(f.attempted.has(id))continue;f.attempted.add(id);if(!this.canBoardDragon(id))continue;\n    const a=this.actors[id],seat=this.dragonSeat(id);if(Math.abs(a.x-seat.x)>210||Math.abs(a.y-seat.y)>160)continue;\n    if(id==='matt')this.cancelMattHabit();\n    a.dragonBoard={x:a.x,y:a.y,age:0,delay:id==='blackie'?.3:.12,duration:id==='blackie'?.68:.85,miss:Math.random()<(id==='blackie'?.07:.16)};\n    a.aboard=false;a.support=null;a.motion=null;a.falling=false;a.grab=null;a.tumble=null;a.aqua=null;a.vx=0;a.vy=0;\n    if(id==='matt')this.ownsMatt=true;this.mode='walk';this.socialIn=60;\n   }\n   if(f.age>1.7&&!f.targets.some(id=>this.actors[id].dragonBoard)){\n    f.phase=f.boarded.size?'ride':'depart';f.age=0;f.fromX=d.x;f.fromY=d.y;\n    if(f.boarded.size)this.announce(f.boarded.size===2?'Matt and Blackie caught a ride.':'Caught a ride. The other one missed this time.');\n   }\n  }else if(f.phase==='ride'&&f.destination){\n   const dest=this.surface(f.destination);if(!dest){this.endDragonRide();return false;}\n   const goalY=dest.y-65,goalX=clamp((dest.x+dest.right)/2,d.w*.5+12,this.env.width-d.w*.5-12),duration=Math.max(6,Math.abs(f.fromY-goalY)/300),t=clamp(f.age/duration,0,1),ease=t*t*(3-2*t);\n   d.x=mix(f.fromX,goalX,ease);d.y=mix(f.fromY,goalY,ease)+Math.sin(f.age*2.2)*2;\n   if(t===1){f.fromY=goalY;f.phase='unload';f.age=0;}\n  }else if(f.phase==='ride'){\n   const t=clamp(f.age/10,0,1),travel=Math.min(145,this.env.width*.25);\n   const margin=d.w/2+12;d.x=clamp(f.fromX+d.dir*Math.sin(t*Math.PI*2)*travel,margin,Math.max(margin,this.env.width-margin));\n   d.y=f.fromY-Math.sin(t*Math.PI)*135+Math.sin(f.age*2.2)*2;\n   if(t===1){f.phase='unload';f.age=0;}\n  }else if(f.phase==='unload'){\n   d.y=f.fromY+Math.sin(this.age*2.4)*2;\n   for(const id of ['matt','blackie'])if(this.actors[id].dragonRiding&&f.age>(id==='matt'?.2:.5)){\n    this.leaveDragon(id);const a=this.actors[id],destination=f.destination&&this.surface(f.destination);if(destination){this.jump(a,destination,id);}else{a.vy=-90;a.vx=(id==='matt'?-1:1)*55;}\n   }\n   if(f.age>1){f.phase='depart';f.age=0;}\n  }else{\n   d.x+=d.dir*80*dt;d.y-=20*dt;\n   if(f.age>8||d.x<-160||d.x>this.env.width+160){this.endDragonRide();d.visible=false;}\n  }\n  for(const id of ['matt','blackie'])if(this.actors[id].dragonRiding){const a=this.actors[id],p=this.dragonSeat(id);a.x=p.x;a.y=p.y;a.dir=d.dir;}\n  return true;\n }\n moveActor(a,id,dt){\n  const env=this.env,raft=env.raft,cat=id==='blackie',ground=this.surface('floor');a.wallRecover=Math.max(0,(a.wallRecover||0)-dt);a.wallCooldown=Math.max(0,(a.wallCooldown||0)-dt);a.poseAge=(a.poseAge||0)+dt;a.decideIn=(a.decideIn||0)-dt;\n  if(id==='matt'&&this.mattHabit&&(a.toyFire||env.mattHeld||env.rescue||a.dragonBoard||a.dragonRiding||env.reduced))this.cancelMattHabit(true);\n  if(this.held?.id!==id&&this.stepDragonPassenger(a,id,dt))return;\n  if(this.held?.id===id){\n   const h=this.held;a.motion=null;a.support=null;a.aboard=false;\n   let tx=clamp(h.x,25,env.width-25),ty=h.y+env.scroll+a.h*(cat?.55:1.04);\n   if(!env.reduced&&this.rig?.ready&&!a.grab){\n    for(const s of this.surfaces){if(!['button','image','border'].includes(s.kind))continue;\n     const near=a.x>s.x-8&&a.x<s.right+8&&Math.abs(a.y-a.h*.85-this.level(s,a.x))<18;\n     if(!near){a.grabSeen?.delete(s.id);continue;}if(a.grabSeen?.has(s.id))continue;a.grabSeen?.add(s.id);\n     if(Math.random()<.35){a.grab={surface:s.id,x:clamp(a.x,s.x+6,s.right-6),age:0,strain:0};break;}\n    }\n   }\n   if(a.grab){const g=a.grab,s=this.surface(g.surface);g.age+=dt;\n    if(!s)a.grab=null;else{const gy=this.level(s,g.x),dx=tx-g.x,dy=ty-(gy+a.h*.83),distance=Math.hypot(dx,dy);g.strain+=Math.max(0,distance/a.h-.25)*dt;\n     if(distance>a.h*1.4||g.strain>.45||g.age>2.6)a.grab=null;\n     else{tx=g.x+clamp(dx,-a.h*.10,a.h*.10);ty=gy+a.h*.83+clamp(dy,-a.h*.08,a.h*.06);}\n    }\n   }\n   // Restore the original damped hoodie tug; sprite limbs retain their anatomy.\n   if(cat||env.reduced||a.grab){const ox=a.x,oy=a.y;a.x=mix(a.x,tx,Math.min(1,dt*14));a.y=mix(a.y,ty,Math.min(1,dt*11));if(dt>0){a.vx=(a.x-ox)/dt;a.vy=(a.y-oy)/dt;}}\n   else{const steps=Math.max(1,Math.ceil(dt*120)),h=dt/steps;for(let i=0;i<steps;i++){a.vx=clamp((a.vx||0)+((tx-a.x)*85-(a.vx||0)*14)*h,-700,700);a.vy=clamp((a.vy||0)+((ty-a.y)*85-(a.vy||0)*14)*h,-700,700);a.x=clamp(a.x+a.vx*h,25,env.width-25);a.y=clamp(a.y+a.vy*h,25,env.floor-16);}a.holdAngle=mix(a.holdAngle||0,clamp(-a.vx*.0015,-.35,.35),Math.min(1,dt*10));}return;\n  }\n  a.wetFor=Math.max(0,(a.wetFor||0)-dt);\n  if(a.aqua?.state==='board'){this.waterBoard(a,id,dt);return;}\n  if(this.waterStep(a,id,dt)){a.wallBeat=null;a.seeking=null;return;}\n  if(this.recoveryStep(a,id,dt))return;\n  if(this.wallBeatStep(a,id,dt))return;\n  if(this.seekStep(a,id,dt))return;\n  if(id==='matt'&&this.mattHabit?.phase==='wall'&&this.mattWallStep(a,dt))return;\n  if(a.aboard){\n   if(!raft.active){a.aboard=false;if(id==='matt')this.ownsMatt=true;a.falling=true;a.vy=0;}\n   else{a.x=raft.x+(cat?Math.cos(raft.angle)*43:0);a.y=raft.y+(cat?Math.sin(raft.angle)*43-9:-12);a.pose='perch';\n    if(!env.reduced&&a.decideIn<=0&&(cat||env.riderState==='aboard')&&!env.mattHeld){a.decideIn=30+Math.random()*30;const target=Math.random()<.12?this.route(a,id):null;if(target&&target.y<a.y-25){a.aboard=false;if(id==='matt')this.ownsMatt=true;this.jump(a,target,id);}}\n    if(a.aboard)return;\n   }\n  }\n  if(a.motion){const m=a.motion;m.age+=dt;const target=this.surface(m.surface);\n   if(!target){a.motion=null;a.falling=true;a.vy=0;return;}\n   if(m.type==='windup'){a.pose='crouch';if(m.age>=.16){m.type='jump';m.age=0;}return;}\n   if(m.type==='jump'){const t=clamp(m.age/m.duration,0,1),hang=m.catch?a.h*.93:0,endY=m.to.y+hang,arc=Math.max(cat?105:80,(m.from.y-endY)*.6+65);a.x=mix(m.from.x,m.to.x,t);a.y=mix(m.from.y,endY,t)-Math.sin(Math.PI*t)*arc;a.pose=t<.68?'leap':'reach';\n    if(t===1){if(m.catch){m.type='hang';m.age=0;a.pose='hang';}else this.land(a,target);}return;}\n   if(m.type==='hang'){a.pose='hang';a.x=m.to.x;a.y=m.to.y+a.h*.93;if(m.age>.18){m.type='climb';m.age=0;}return;}\n   if(m.type==='climb'){const t=clamp(m.age/.42,0,1);a.y=m.to.y+a.h*.93*(1-t*t*(3-2*t));a.pose=t<.55?'pull':'crest';if(t===1)this.land(a,target);return;}\n  }\n  if(a.tumble){\n   const t=a.tumble,s=this.surface(t.surface);a.pose='tumble';\n   if(!s){a.tumble=null;a.falling=true;return;}\n   t.age=(t.age||0)+dt;\n   a.x+=a.vx*dt;a.rollAngle+=(a.vx/Math.max(18,a.h*.38))*dt;\n   a.y=this.level(s,a.x);a.support=null;\n   if(s.kind==='floor'){\n    a.vx*=Math.exp(-dt*4);a.x=clamp(a.x,s.x+12,s.right-12);\n    if(t.age>.65||Math.abs(a.vx)<25)this.beginLanding(a,id,s,t.speed||500);\n   }else if(t.age>.22||a.x<s.x-6||a.x>s.right+6){a.tumble=null;a.falling=true;a.vy=140;a.ignoreSurface=s.id;a.y+=3;}\n   return;\n  }\n  if(a.falling){\n   // Substeps stop a fast drop from skipping narrow buttons and image edges.\n   let remaining=dt;\n   while(remaining>0&&a.falling&&!a.tumble){const h=Math.min(remaining,1/120);remaining-=h;const oldY=a.y;\n    a.vy=Math.min(1100,(a.vy||0)+820*h);a.x+=(a.vx||0)*h;a.y+=a.vy*h;a.dropDistance=(a.dropDistance||0)+Math.max(0,a.y-oldY);\n    if(a.x<25||a.x>env.width-25){const side=a.x<25?-1:1,speed=Math.abs(a.vx||0);a.x=clamp(a.x,25,env.width-25);if(!env.reduced&&speed>180&&!a.wallCooldown){this.loadMobility(id);a.wallBeat={age:0,side,speed};a.falling=false;a.support=null;a.motion=null;a.tumble=null;a.rollAngle=0;a.vx=0;a.vy=0;break;}a.vx=-(a.vx||0)*.4;}\n    if(a.rollAngle)a.rollAngle+=(a.vx||a.dir*65)*h/40;\n    const hit=this.surfaces.filter(s=>s.kind!=='wall'&&s.id!==a.ignoreSurface&&a.x>=s.x&&a.x<=s.right&&this.level(s,a.x)>=oldY-1&&this.level(s,a.x)<=a.y).sort((s,t)=>this.level(s,a.x)-this.level(t,a.x))[0];\n    if(hit){\n     const hard=!env.reduced&&(a.vy>430||Math.abs(a.vx||0)>260);\n     if(hard&&hit.kind==='floor'){this.beginLanding(a,id,hit,a.vy);break;}\n     if(hard){\n      const speed=a.vy,dir=Math.abs(a.vx||0)>80?Math.sign(a.vx):a.x<(hit.x+hit.right)/2?-1:1;\n      a.y=this.level(hit,a.x);a.vx=dir*clamp(speed*.45,160,350);a.bounces=(a.bounces||0)+1;a.rollAngle=dir*.16;a.pose='tumble';\n      // Alternate a brief rubbery ricochet with a roll across the edge. Friends never take damage.\n      if(hit.kind!=='floor'&&a.bounces%2===0){a.vy=-Math.min(190,speed*.22);a.ignoreSurface=hit.id;a.falling=true;}\n      else{a.vy=0;a.falling=false;a.tumble={surface:hit.id,age:0};}\n     }else this.land(a,hit);\n    }else if(a.y>=ground.y)this.land(a,ground);\n   }return;\n  }\n  if(id==='blackie'&&this.encounters?.locksCat?.())return;\n  const support=this.surface(a.support);if(!support){if(id==='matt')this.cancelMattHabit();a.falling=true;a.vy=0;return;}a.y=this.level(support,a.x)+(support.kind==='wall'?a.h*.9:0);\n  if(env.reduced){a.pose='perch';return;}\n  if(a.pose==='land'&&a.poseAge<.22)return;\n  if(a.attention>0){a.attention-=dt;a.pose=cat?(Math.floor(a.attention*2)%2?'tap':'beckon'):'beckon';return;}\n  if(id==='matt'&&this.encounters?.locksMatt())return;\n  if(this.openingActorStep(a,id,support,dt))return;\n  if(id==='matt'&&this.mattHabitStep(a,support,dt))return;\n  if(a.decideIn<=0){a.decideIn=30+Math.random()*30;a.restUntil=this.age+10+Math.random()*12;\n   if(support.shop&&this.age>=this.promoUntil&&a.y>env.scroll&&a.y<env.scroll+env.height){a.attention=3;this.promoUntil=this.age+45;return;}\n   const nearby=a.y>env.scroll&&a.y<env.scroll+env.height;const target=nearby&&Math.random()<.12?this.route(a,id):null;if(target&&Math.abs(target.y-a.y)<150){this.jump(a,target,id);return;}\n  }\n  if(support.kind==='wall'){a.pose='hang';return;}\n  if(this.age<(a.restUntil||0)){a.pose='perch';return;}\n  const pad=Math.min(a.w*.4,(support.right-support.x)/2),lo=support.x+pad,hi=support.right-pad;\n  if(hi-lo>18){a.x+=a.dir*(cat?12:8)*dt;if(a.x>hi){a.x=hi;a.dir=-1;}if(a.x<lo){a.x=lo;a.dir=1;}a.pose='walk';a.y=this.level(support,a.x);}else{a.x=(lo+hi)/2;a.y=this.level(support,a.x);a.pose='perch';}\n }\n step(dt,env){\n  const resized=this.env&&this.env.width!==env.width;this.env=env;dt=clamp(dt,0,.04);this.surfaceAge+=dt;\n  if(resized){this.cancelMattHabit(true);this.cancel();this.surfaceAge=2;for(const a of Object.values(this.actors))a.x=clamp(a.x,25,env.width-25);}\n  if(this.surfaceAge>=1||!this.initialized)this.scanSurfaces(env);\n  const m=this.actors.matt,c=this.actors.blackie,d=this.actors.dragon;\n  const nativeWidth=Math.min(...[this.largeDragon,this.rideImage].filter(im=>im?.frames).map(im=>Math.max(...im.frames.map(f=>f[2]))));d.w=Math.min(clamp(env.width*.62,230,300),nativeWidth/Math.max(1,root.devicePixelRatio||1));d.h=d.w*.34;\n  if(!this.initialized){\n   const start=this.surface('floor');m.x=clamp(env.width*.45,35,env.width-85);c.x=clamp(m.x+60,35,env.width-35);this.land(m,start);this.land(c,start);m.decideIn=35;c.decideIn=45;this.initialized=true;this.beginOpening();\n  }\n  if(env.paused||this.hidden||document.hidden){this.stopPurr();return;}this.age+=dt;this.modeAge+=dt;this.socialIn-=dt;\n  if(this.opening&&(this.age-this.opening.started>150||[m,c].every(a=>a.aboard||a.aqua||a.support==='floor')))this.cancelOpening();\n  if(!this.opening)this.updateSeeking(dt);\n  const bonded=this.stepCatBond(dt);\n  if(!bonded)for(const [id,a] of [['matt',m],['blackie',c]])this.moveActor(a,id,dt);\n  if(!this.opening&&!this.catBond&&!this.follow.active&&!env.reduced&&!this.mattHabit&&!this.held&&this.socialIn<=0){\n   const choice=Math.random();if(!this.startCatBond(choice<.65?'scratch':choice<.82?'shoulder':'cradle'))this.socialIn=20;\n  }\n  this.wasWet=!!(m.aboard||c.aboard);\n  if(env.rescue){this.endDragonRide();d.x=env.rescue.x;d.y=env.rescue.y+30;d.dir=env.rescue.endX<env.rescue.startX?-1:1;d.visible=false;}\n  else if(this.held?.id==='dragon'){\n   const ox=d.x,oy=d.y,blend=1-Math.exp(-18*dt),off=d.holdOffset||{x:0,y:d.h*.55};\n   d.x=mix(d.x,clamp(this.held.x+off.x,d.w*.3,env.width-d.w*.3),blend);d.y=mix(d.y,this.held.y+env.scroll+off.y,blend);\n   d.vx=dt?(d.x-ox)/dt:0;d.vy=dt?(d.y-oy)/dt:0;\n   d.holdAngle=mix(d.holdAngle||0,clamp(-d.vx*.001,-.45,.45)+Math.sin(this.age*8)*.055,Math.min(1,dt*12));\n  }\n  else if(d.visible&&this.waterStep(d,'dragon',dt)){this.endDragonRide();}\n  else if(this.dragonTrip)this.stepDragonVisit(dt);\n  else if(!env.reduced){\n   if(!this.opening&&!d.visible&&this.age>=this.nextVisit&&!this.startDragonVisit())this.nextVisit=this.age+20;\n   if(this.dragonTrip)this.stepDragonVisit(dt);\n   else if(d.visible){if(d.releaseDrift>0){d.releaseDrift=Math.max(0,d.releaseDrift-dt);d.x+=clamp(d.vx||0,-300,300)*dt*d.releaseDrift;d.y+=clamp(d.vy||0,-200,200)*dt*d.releaseDrift;d.vx*=Math.exp(-6*dt);d.vy*=Math.exp(-6*dt);}d.x+=d.dir*34*dt;d.y+=Math.sin(this.age*2.4)*dt*8;d.flyRemaining-=dt;if(d.flyRemaining<=0||d.x>env.width+150||d.x<-180)d.visible=false;}\n  }\n  for(let i=this.waterFX.length-1;i>=0;i--){const f=this.waterFX[i];f.life-=dt;f.x+=f.vx*dt;f.y+=f.vy*dt;if(f.kind!=='bubble')f.vy+=240*dt;if(f.life<=0||f.kind==='bubble'&&!this.liquidWet(f.x,f.y))this.waterFX.splice(i,1);}\n  if(d.wiggle)d.wiggle=Math.max(0,d.wiggle-dt);\n }\n draw(ctx,scroll,options={}){\n  if(!this.env)return;const {paused,width,height,raft,rescue}=this.env;\n  const visible=(a)=>a.y-scroll>-20&&a.y-scroll-a.h<height;\n  const bothRiding=!options.hideMatt&&this.actors.matt.dragonRiding&&this.actors.blackie.dragonRiding&&this.rideImage?.frames;\n  // The dragon renders behind separate jumpers. Combined flight art is gated by BOTH landings.\n  for(const id of ['dragon','matt','blackie']){const a=this.actors[id];\n   const image=this.images[id],show=!this.hidden&&image.complete&&image.naturalWidth&&visible(a)&&(id!=='matt'||this.ownsMatt)&&(id!=='dragon'||a.visible||!!rescue);\n   const el=this.handles[id];el.hidden=!show;el.disabled=paused;if(!show)continue;\n   Object.assign(el.style,{left:clamp(a.x-a.w/2,0,width-a.w)+'px',top:(a.y-scroll-Math.max(a.h,a.renderH||0))+'px',width:a.w+'px',height:Math.max(44,a.h,a.renderH||0)+'px'});el.dataset.fire=String(!!a.toyFire);el.dataset.motion=a.recovery?'recovery':a.tumble?'tumble':a.falling?'fall':a.motion?.type||'rest';el.dataset.held=String(this.held?.id===id);el.dataset.pose=a.pose||'idle';el.dataset.documentY=String(Math.round(a.y));el.dataset.surface=a.support|| (a.aboard?'raft':'air');el.dataset.water=a.aqua?.state||(this.liquidWet(a.x,a.y-this.liquidHeight(a,id)*.35)?'held-underwater':'dry');\n   if(this.catBond&&id==='blackie'){Object.assign(el.style,{top:(a.y-scroll-32)+'px',height:'44px',width:'46px',left:(a.x-23)+'px'});}\n   if((id==='matt'||id==='blackie')&&this.drawCatBond(ctx,scroll,id))continue;\n   if(id==='dragon'&&rescue)continue;if(id==='matt'&&options.hideMatt)continue;\n   el.dataset.dragon=a.dragonRiding?'riding':a.dragonBoard?'boarding':'off';\n   if(bothRiding){\n    if(id==='dragon'){\n     const im=this.rideImage,index=this.env.reduced?0:[0,1,2,3,1,0][Math.floor(this.age*6)%6],f=im.frames[index];\n     const scale=Math.min(1/Math.max(1,root.devicePixelRatio||1),a.w/Math.max(...im.frames.map(r=>r[2])));\n     ctx.save();ctx.translate(a.x,a.y-scroll);ctx.scale(a.dir,1);ctx.drawImage(im,...f,(Math.max(...im.frames.map(r=>r[2]))/2-f[2])*scale,-f[3]*scale,f[2]*scale,f[3]*scale);ctx.restore();\n     el.dataset.animation='riding-together';el.dataset.animationFrame=String(index);\n    }\n    continue;\n   }\n   if(a.dragonRiding&&id!=='dragon'){\n    const im=id==='matt'?this.actionImages.matt:this.lifeImages.blackie;\n    if(im?.frames){const f=im.frames[id==='matt'?0:this.lifeIndex('blackie',true)],scale=id==='matt'?this.mattSpriteScale(a,im,'action'):Math.min(1/Math.max(1,root.devicePixelRatio||1),42/f[3]);ctx.save();ctx.translate(a.x,a.y-scroll);ctx.scale(a.dir,1);ctx.drawImage(im,...f,-f[2]*scale/2,-f[3]*scale,f[2]*scale,f[3]*scale);ctx.restore();el.dataset.animation='riding';continue;}\n   }\n   el.dataset.animation='action';delete el.dataset.animationFrame;\n   if(this.drawWaterActor(ctx,a,id,scroll))continue;a.renderH=a.h;\n   if(this.drawRecovery(ctx,a,id,scroll))continue;\n   if(id==='blackie'&&this.encounters?.drawCat?.(ctx,a,scroll))continue;\n   if(id==='matt'&&this.encounters?.drawMatt(ctx,a,scroll))continue;\n   if(this.drawMobility(ctx,a,id,scroll))continue;\n   if(id==='matt'&&this.drawMattHabit(ctx,a,scroll))continue;\n   const held=this.held?.id===id;\n   const pose=held?'hang':a.tumble?'tumble':a.falling?'leap':a.pose;\n   if(id==='dragon'&&this.largeDragon?.frames){\n    const im=this.largeDragon,index=this.env.reduced?0:[0,1,2,3,1,0][Math.floor(this.age*6)%6],f=im.frames[index],maxWidth=Math.max(...im.frames.map(r=>r[2])),scale=Math.min(1/Math.max(1,root.devicePixelRatio||1),a.w/maxWidth);\n    ctx.save();ctx.translate(a.x,a.y-scroll);ctx.rotate(held?(a.holdAngle||0):a.wiggle?Math.sin(this.age*17)*.07*Math.min(1,a.wiggle):0);ctx.scale(a.dir,1);\n    const reacts=held||a.wiggle>0,baseX=(maxWidth/2-f[2])*scale;\n    if(reacts&&!this.env.reduced){\n     // Warp the original connected illustration in native-resolution strips: tail curls,\n     // chest stays at the grip and the head/paws wriggle. Never draw replacement limbs.\n     const grip=.56,amount=held?1:Math.min(1,a.wiggle),step=3;\n     for(let sx=0;sx<f[2];sx+=step){const sw=Math.min(step,f[2]-sx),q=(sx+sw*.5)/f[2],distance=Math.abs(q-grip),tail=q<grip;\n      const sag=held?distance*distance*32:0,wave=Math.sin(this.age*(tail?10:13)-q*8)*distance*(tail?14:7)*amount;\n      ctx.drawImage(im,f[0]+sx,f[1],sw,f[3],baseX+sx*scale,-f[3]*scale+sag+wave,sw*scale,f[3]*scale);\n     }\n    }else ctx.drawImage(im,...f,baseX,-f[3]*scale,f[2]*scale,f[3]*scale);\n    ctx.restore();el.dataset.animation=held?'held-wriggle':a.wiggle?'shake-off':'flight';el.dataset.animationFrame=String(index);continue;\n   }\n   // Whole illustrated silhouettes replace the socket-and-limb puppet.\n   if(this.drawBodyMotion(ctx,a,id,scroll,held,pose))continue;\n   if(id==='dragon'&&this.drawLifeActor(ctx,a,id,scroll,{angle:held?Math.sin(this.age*7)*.045:0}))continue;\n   if(!held&&!a.falling&&!a.motion&&(['perch','idle','land'].includes(pose)||a.aboard)&&this.drawLifeActor(ctx,a,id,scroll,{rest:id==='blackie'&&a.aboard,angle:a.aboard&&raft.active?raft.angle:0}))continue;\n   el.dataset.rig='pose';el.dataset.gripping='false';ctx.save();ctx.translate(a.x,a.y-scroll);if(a.tumble||a.falling)ctx.rotate(a.rollAngle||0);if(id==='blackie'&&a.aboard&&raft.active&&!held&&!a.falling)ctx.rotate(raft.angle);ctx.scale(a.dir,1);if(held&&id!=='dragon')ctx.rotate(Math.sin(this.age*8)*.07);\n   const actions=this.actionImages[id],poses=id==='matt'?{crouch:0,leap:1,tumble:1,reach:2,hang:2,pull:3,crest:4,land:5,beckon:6,perch:7}:{crouch:0,leap:1,tumble:1,reach:2,hang:2,pull:3,crest:3,land:4,beckon:5,tap:6,perch:7};\n   if(actions?.frames&&poses[pose]!==undefined){const f=actions.frames[poses[pose]],scale=id==='matt'?this.mattSpriteScale(a,actions,'action'):Math.min(1,a.w*.9/actions.frames[7][3]);ctx.drawImage(actions,...f,-f[2]*scale/2,-f[3]*scale,f[2]*scale,f[3]*scale);}\n   else if(id==='matt'){\n    const moving=a.pose==='walk'&&!held&&!a.falling&&!this.env.reduced,frame=moving?Math.floor(this.age*7)%8:7;\n    const cw=image.naturalWidth/4,ch=image.naturalHeight/2;\n    // Tight per-cell crop retains the native artwork and removes atlas padding.\n    if(this.mode==='pet'&&!held)ctx.rotate(.08+Math.sin(this.modeAge*5)*.015);\n    if(image.frames){const f=image.frames[frame],scale=this.mattSpriteScale(a,image,'walk');ctx.drawImage(image,...f,-f[2]*scale/2,-f[3]*scale,f[2]*scale,f[3]*scale);}else ctx.drawImage(image,(frame%4)*cw,Math.floor(frame/4)*ch+ch*.10,cw,ch*.89,-a.w/2,-a.h,a.w,a.h);\n\n   }else if(id==='blackie'){\n    let frame=a.aboard&&raft.active?7:a.pose==='walk'?(this.env.reduced?0:Math.floor(this.age*8)%4):this.mode==='pet'||this.mode==='shoulder'?4:6;if(held||a.falling)frame=6;\n    const cw=image.naturalWidth/4,sy=image.naturalHeight*(frame<4?.175:frame===4?.62:frame===5?.665:frame===6?.58:.76),sh=image.naturalHeight*(frame<4?.275:frame===4?.27:frame===5?.225:frame===6?.28:.135),dh=a.w*sh/cw;if(image.frames){const f=image.frames[frame],scale=Math.min(1,a.w/image.frames[0][2]);ctx.drawImage(image,...f,-f[2]*scale/2,-f[3]*scale,f[2]*scale,f[3]*scale);}else ctx.drawImage(image,(frame%4)*cw,sy,cw,sh,-a.w/2,-dh,a.w,dh);\n   }else{ctx.rotate(Math.sin(this.age*(held?9:2))*(held?.09:.035));ctx.drawImage(image,-a.w/2,-a.h,a.w,a.h);}\n   ctx.restore();\n  }\n  ctx.save();for(const f of this.waterFX){if(f.y-scroll<-10||f.y-scroll>height+10)continue;ctx.globalAlpha=clamp(f.life,0,.7);ctx.beginPath();ctx.arc(f.x,f.y-scroll,f.kind==='bubble'?2.5:1.8,0,Math.PI*2);ctx.strokeStyle='#e7d7e7';ctx.fillStyle='#a77fae';if(f.kind==='bubble')ctx.stroke();else ctx.fill();}ctx.restore();\n }\n}\nroot.NyeCompanions=Companions;\n})(window);\n"],
  "mappings": "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",
  "names": ["scale", "s", "im", "f", "cs", "seat", "h"]
}
