/* bailey.css — buddy 05 "The Fast Lens" skin. Bailey, the boxer. Loads ON TOP of iris-mascot.css; every rule scoped to .pup.bailey,
   variables on .bailey-box. Silhouette: square head, short wide muzzle, deep chest,
   straight front legs, weight forward — the one who is already standing up.
   Coat: mahogany brown with a black mask, white blaze, chest and toes. Emerald lens. */
.bailey-box{
  --b0:#b57a37; --b1:#945c26; --b2:#6d3f16; --b3:#43250e; --b4:#2a1608;
  --msk0:#241c17; --msk1:#120d0a; --msk2:#070505;
  --w0:#f8f2e4; --w1:#e9e0cc; --w2:#cfc4ac;
  --inear:#d99a92; --paw:#f2ead8; --edge:rgba(8,6,4,.55);
  --em:#2bb85a; --emhi:#9fe7a8;
  /* rig accessory palette (declared on .pup-box upstream) — his leans emerald */
  --gold0:#c9f0cf; --gold1:#9fe7a8; --gold2:#2bb85a; --gold3:#1f9a4e;
  --cream:#f6ecd6; --amber:#f0b24a; --pink:#f3a8b6;
  --red:#ff3b53; --brand:#c8102e; --green:#3fd08a;
  --panel2:#17171a; --panel3:#1d1d22; --border:#27272d; --hair:#1e1e23;
  --font:'Outfit',system-ui,sans-serif; --serif:'Newsreader',Georgia,serif; --mono:'JetBrains Mono',monospace;
  position:relative;
}

.pup.bailey .puddle{ left:50%; bottom:-4px; width:198px; height:42px;
  background:radial-gradient(closest-side, rgba(43,184,90,.22), transparent 76%); }

/* ── short tail, carried up ── */
.pup.bailey .tail{ left:188px; top:190px; width:22px; height:52px; border-radius:11px 11px 10px 10px;
  background:linear-gradient(172deg,var(--b1) 0%,var(--b2) 56%,var(--b3) 100%);
  transform-origin:50% 92%; transform:rotate(30deg);
  box-shadow:0 0 0 1px var(--edge), -2px 4px 8px -4px #000; }

/* ── haunch, coiled under him ── */
.pup.bailey .hind{ left:58px; top:204px; width:92px; height:94px; border-radius:52% 48% 40% 40%/ 62% 62% 38% 38%;
  background:radial-gradient(70% 62% at 44% 18%, var(--b0), var(--b1) 50%, var(--b3) 100%);
  box-shadow:0 0 0 1px var(--edge), 0 12px 26px -16px #000; }

/* ── deep chest, medium build ── */
.pup.bailey .body{ left:88px; top:170px; width:114px; height:130px; border-radius:46% 46% 36% 36%/ 48% 48% 52% 52%;
  background:radial-gradient(72% 58% at 52% 12%, var(--b0), var(--b1) 46%, var(--b3) 100%);
  box-shadow:0 0 0 1px var(--edge), 0 14px 30px -16px #000; }
/* white chest blaze (base .blaze re-used) */
.pup.bailey .blaze{ left:114px; top:184px; width:62px; height:104px; border-radius:44% 44% 40% 40%/ 54% 54% 46% 46%;
  background:radial-gradient(58% 56% at 50% 14%, #fff 0%, var(--w0) 44%, var(--w2) 84%, rgba(207,196,172,0) 99%);
  opacity:.96; }

/* ── straight front legs, white toes ── */
.pup.bailey .legf{ top:228px; width:28px; height:72px; border-radius:14px 14px 10px 10px;
  background:linear-gradient(var(--b0),var(--b2));
  box-shadow:0 0 0 1px var(--edge), inset 0 6px 8px -6px rgba(20,12,6,.5), 0 4px 9px -5px #000; }
.pup.bailey .legf.l{ left:110px; } .pup.bailey .legf.r{ left:148px; }
.pup.bailey .legf::after{ left:-6px; bottom:-3px; width:40px; height:30px;
  background:linear-gradient(#fffcf2,var(--paw));
  box-shadow:0 0 0 1px var(--edge), 0 4px 8px -4px #000, inset 6px -7px 0 -5px rgba(70,50,26,.18), inset -6px -7px 0 -5px rgba(70,50,26,.18); }

/* ── thick short neck ── */
.pup.bailey .neck{ left:106px; top:114px; width:70px; height:74px; border-radius:38% 38% 28% 28%/ 32% 32% 68% 68%;
  background:linear-gradient(168deg,var(--b0) 0%,var(--b2) 62%,var(--b3) 100%);
  box-shadow:0 0 0 1px var(--edge); }

/* ── square head ── */
.pup.bailey .head-grp{ transform-origin:140px 108px; }
.pup.bailey .head{ left:80px; top:22px; width:120px; height:104px; border-radius:34% 34% 28% 28%/ 40% 40% 30% 30%;
  background:radial-gradient(62% 58% at 50% 24%, var(--b0), var(--b1) 52%, var(--b2) 100%);
  box-shadow:0 0 0 1px var(--edge), 0 10px 26px -14px #000; }
/* the mask: boxers are dark from the brow down through the muzzle. One soft lobe,
   low and centred — side lobes at lens height read as sunglasses. */
.pup.bailey .mask{ left:80px; top:22px; width:120px; height:104px; border-radius:34% 34% 28% 28%/ 40% 40% 30% 30%; overflow:hidden;
  background-image:
    radial-gradient(46% 34% at 50% 116%, var(--msk0) 0 62%, rgba(36,28,23,0) 99%); }
.pup.bailey .stripe{ left:80px; top:22px; width:120px; height:104px; border-radius:34% 34% 28% 28%/ 40% 40% 30% 30%; overflow:hidden; opacity:.55;
  background-image:
    radial-gradient(11% 22% at 50% 6%, #fffdf6 0 66%, rgba(255,253,246,0) 98%); }

.pup.bailey .face{ left:108px; top:44px; width:64px; height:64px; }
.pup.bailey .glint{ width:8px; height:8px;
  background:radial-gradient(circle at 38% 34%, #fff, var(--emhi) 55%, rgba(159,231,168,0) 78%); }
.pup.bailey .glint.l{ left:116px; top:58px; } .pup.bailey .glint.r{ left:156px; top:68px; }
.pup.bailey .lid{ left:106px; top:88px; width:68px; height:16px; border-radius:0 0 34px 34px; background:#0c0806; }
/* brows — boxers do the worried-eyebrow thing constantly */
.pup.bailey .brow{ width:26px; height:10px; opacity:.8; border-radius:60% 60% 50% 50%/ 86% 86% 24% 24%;
  background:radial-gradient(60% 100% at 50% 20%, var(--b0), var(--b3) 82%);
  transition:transform .3s cubic-bezier(.3,.7,.3,1), opacity .3s; }
.pup.bailey .brow.l{ left:104px; top:36px; transform:rotate(-13deg); }
.pup.bailey .brow.r{ left:150px; top:36px; transform:rotate(13deg); }
.pup.bailey.m-yesand .brow.l, .pup.bailey.m-mischief .brow.l{ transform:rotate(-22deg) translateY(-3px); }
.pup.bailey.m-yesand .brow.r, .pup.bailey.m-mischief .brow.r{ transform:rotate(4deg) translateY(2px); }

/* ── short wide muzzle, undershot chin ── */
.pup.bailey .muzzle{ left:102px; top:108px; width:76px; height:38px; border-radius:40% 40% 46% 46%/ 30% 30% 70% 70%;
  background:radial-gradient(70% 92% at 50% 4%, rgba(46,36,29,.85) 0%, var(--msk1) 52%, var(--msk2) 100%);
  box-shadow:0 8px 16px -12px #000; }
.pup.bailey .muzzle::after{ content:''; position:absolute; left:18px; bottom:-6px; width:40px; height:18px; border-radius:46% 46% 50% 50%/ 30% 30% 70% 70%;
  background:linear-gradient(#f2ecdc,#cfc4ac); opacity:.9; }
.pup.bailey .nose{ left:126px; top:106px; width:30px; height:20px; border-radius:50% 50% 50% 50%/ 56% 56% 46% 46%;
  background:radial-gradient(circle at 42% 28%, #3a2f28, #050403 78%); }
.pup.bailey .maw{ display:none; left:118px; top:126px; width:46px; height:28px; border-radius:50% 50% 52% 52%/ 40% 40% 60% 60%;
  background:radial-gradient(60% 70% at 50% 24%, #6e2f3a 0%, #3a1620 70%); box-shadow:inset 0 3px 5px rgba(0,0,0,.5); }
.pup.bailey .tongue{ left:132px; top:132px; width:18px; height:22px; border-radius:8px 8px 11px 12px; }

/* ── small folded ears, high on the corners ── */
.pup.bailey .ear{ width:48px; height:52px;
  background:linear-gradient(154deg,var(--b0) 0%,var(--b2) 58%,var(--b3) 100%);
  border-radius:44% 44% 50% 50%/ 30% 30% 70% 70%;
  box-shadow:0 0 0 1px var(--edge), -2px 5px 10px -6px #000; transform-origin:50% 6%;
  transition:transform .4s cubic-bezier(.3,.7,.3,1); }
.pup.bailey .ear::after{ content:''; position:absolute; left:50%; top:12px; transform:translateX(-50%);
  width:18px; height:24px; border-radius:50% 50% 46% 46%/ 30% 30% 70% 70%;
  background:linear-gradient(var(--inear),#a86a62); opacity:.42; }
.pup.bailey .ear.l{ left:58px; top:18px; transform:rotate(-28deg); }
.pup.bailey .ear.r{ left:174px; top:18px; transform:rotate(28deg) scaleX(-1); }
.pup.bailey.e-perk .ear.l{ transform:rotate(-10deg) scaleY(1.06); }
.pup.bailey.e-perk .ear.r{ transform:rotate(10deg) scaleY(1.06) scaleX(-1); }
.pup.bailey.e-rest .ear.l{ transform:rotate(-24deg); }
.pup.bailey.e-rest .ear.r{ transform:rotate(24deg) scaleX(-1); }
.pup.bailey.e-one  .ear.l{ transform:rotate(-6deg) scaleY(1.08); }
.pup.bailey.e-one  .ear.r{ transform:rotate(30deg) scaleX(-1); }
.pup.bailey.e-back .ear.l{ transform:rotate(-38deg) translate(-3px,3px); }
.pup.bailey.e-back .ear.r{ transform:rotate(38deg) scaleX(-1) translate(-3px,3px); }

/* ── his moves: a coiled spring, the whole-body wiggle, a play bow, a launch ── */
.pup.bailey.an-spring{ animation:bxSpring 2.2s cubic-bezier(.3,.7,.3,1) infinite; }
.pup.bailey.an-spring .head-grp{ animation:bxSpringHead 2.2s cubic-bezier(.3,.7,.3,1) infinite; }
.pup.bailey.an-wiggle{ animation:bxWiggle .58s ease-in-out infinite; }
.pup.bailey.an-wiggle .tail{ animation:wag .28s ease-in-out infinite; }
.pup.bailey.an-bow{ animation:bxBow 1.7s cubic-bezier(.3,.7,.3,1) infinite; }
.pup.bailey.an-launch{ animation:bxLaunch 1.1s cubic-bezier(.2,.8,.2,1) infinite; }
@keyframes bxSpring{ 0%,72%,100%{ transform:translate(-50%,-50%) scale(var(--s)); }
  84%{ transform:translate(-50%,-53%) scale(calc(var(--s)*1.015)); } }
@keyframes bxSpringHead{ 0%,72%,100%{ transform:rotate(var(--tilt,0deg)) translateY(0); }
  84%{ transform:rotate(var(--tilt,0deg)) translateY(-3px); } }
@keyframes bxWiggle{ 0%,100%{ transform:translate(-52%,-50%) scale(var(--s)) rotate(-3.5deg); }
  50%{ transform:translate(-48%,-50%) scale(var(--s)) rotate(3.5deg); } }
@keyframes bxBow{ 0%,100%{ transform:translate(-50%,-50%) scale(var(--s)) rotate(0deg); }
  44%,58%{ transform:translate(-50%,-45%) scale(var(--s)) rotate(-2deg); } }
@keyframes bxLaunch{ 0%,100%{ transform:translate(-50%,-50%) scale(var(--s)); }
  30%{ transform:translate(-50%,-58%) scale(calc(var(--s)*1.02)); }
  62%{ transform:translate(-50%,-49%) scale(var(--s)); } }
