/* PINMANIA V5.13.2 — protected cinematic entry polish.
   Visual-only layer. Does not touch gameplay, controls, camera, vehicles, or world logic. */
#pmEntryCinematic{position:fixed;inset:0;z-index:25000;background:#050611;color:#fff;overflow:hidden;font-family:Arial,Helvetica,sans-serif;display:none}
#pmEntryCinematic.pmec-active{display:block}
.pmec-stage{position:absolute;inset:0;overflow:hidden;background:radial-gradient(circle at 65% 28%,rgba(133,52,255,.26),transparent 26%),linear-gradient(180deg,#10152a 0%,#0b0d1d 42%,#070811 100%)}
.pmec-sky{position:absolute;inset:-8%;background:radial-gradient(circle at 20% 17%,rgba(255,78,168,.14),transparent 24%),radial-gradient(circle at 82% 22%,rgba(41,209,255,.14),transparent 23%);animation:pmecSky 8s ease-in-out infinite alternate}
.pmec-stars{position:absolute;inset:0;opacity:.65;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px);background-size:76px 76px;animation:pmecStars 18s linear infinite}
.pmec-city{position:absolute;left:-4%;right:-4%;bottom:0;height:58%;transform-origin:50% 100%;transition:transform 1.1s cubic-bezier(.18,.72,.18,1),filter .7s ease}
.pmec-building{position:absolute;bottom:0;border:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,#222949,#0d1225);box-shadow:inset 0 0 36px rgba(255,255,255,.025),0 0 45px rgba(0,0,0,.35)}
.pmec-building:after{content:"";position:absolute;inset:10px 8px;background:repeating-linear-gradient(180deg,rgba(74,214,255,.65) 0 2px,transparent 2px 13px);opacity:.36}
.pmec-road{position:absolute;left:0;right:0;bottom:-4%;height:28%;background:linear-gradient(180deg,#171a2c,#080a10);clip-path:polygon(24% 0,76% 0,100% 100%,0 100%)}
.pmec-road:after{content:"";position:absolute;left:49.5%;top:0;width:1.2%;height:100%;background:repeating-linear-gradient(180deg,#ffd55c 0 18px,transparent 18px 36px);opacity:.85}
.pmec-neon{position:absolute;border-radius:999px;filter:blur(.2px);box-shadow:0 0 20px currentColor,0 0 44px currentColor;opacity:.78}
.pmec-neon.n1{width:8px;height:8px;left:13%;top:33%;color:#ff4ba5;background:currentColor;animation:pmecBlink 1.3s ease-in-out infinite alternate}
.pmec-neon.n2{width:9px;height:9px;right:18%;top:27%;color:#49e7ff;background:currentColor;animation:pmecBlink 1.8s .4s ease-in-out infinite alternate}
.pmec-car{position:absolute;left:50%;bottom:8%;width:90px;height:40px;transform:translateX(-50%) scale(.72);transition:transform .8s cubic-bezier(.18,.8,.25,1),left .9s cubic-bezier(.18,.8,.25,1),bottom .9s cubic-bezier(.18,.8,.25,1),opacity .35s ease;opacity:0}
.pmec-car:before{content:"";position:absolute;inset:10px 0 0;border-radius:16px 18px 10px 10px;background:linear-gradient(135deg,#ff3f9d,#862dff);box-shadow:0 12px 30px rgba(0,0,0,.5),0 0 24px rgba(255,63,157,.28)}
.pmec-car:after{content:"";position:absolute;left:19px;top:2px;width:52px;height:18px;border-radius:16px 16px 4px 4px;background:#17233a;border:2px solid rgba(255,255,255,.2)}
.pmec-car i{position:absolute;bottom:-5px;width:17px;height:17px;border-radius:50%;background:#05070b;border:3px solid #252b39;z-index:2}.pmec-car i:first-child{left:12px}.pmec-car i:last-child{right:12px}
.pmec-hero{position:absolute;bottom:12%;width:112px;height:255px;filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));opacity:0;transition:all .85s cubic-bezier(.17,.84,.3,1)}
.pmec-hero.pinny{left:31%;transform:translateX(-30px) scale(.82) rotate(-3deg)}
.pmec-hero.sparella{right:30%;transform:translateX(30px) scale(.82) rotate(3deg)}
.pmec-pinbody{position:absolute;left:15px;top:4px;width:82px;height:192px;border-radius:46% 46% 36% 36% / 28% 28% 62% 62%;background:linear-gradient(90deg,#e9f4ff 0%,#fff 38%,#dce8f5 100%);border:3px solid rgba(23,27,45,.82);box-shadow:inset -10px 0 0 rgba(38,59,90,.08)}
.pmec-pinbody:before{content:"";position:absolute;left:6px;right:6px;top:52px;height:23px;border-radius:18px;background:linear-gradient(90deg,#ed367e,#ff5fa7);box-shadow:0 11px 0 #ef438b}
.pmec-eye{position:absolute;top:88px;width:14px;height:20px;border-radius:50%;background:#111625}.pmec-eye.e1{left:25px}.pmec-eye.e2{right:25px}.pmec-eye:after{content:"";position:absolute;width:4px;height:6px;border-radius:50%;left:3px;top:3px;background:#fff}
.pmec-smile{position:absolute;left:28px;top:121px;width:28px;height:14px;border-bottom:4px solid #111625;border-radius:0 0 30px 30px}
.pmec-arm,.pmec-leg{position:absolute;background:#f1f6fb;border:3px solid #171c2c;border-radius:999px;transform-origin:50% 10%}
.pmec-arm{top:112px;width:17px;height:66px}.pmec-arm.a1{left:3px;transform:rotate(18deg)}.pmec-arm.a2{right:3px;transform:rotate(-18deg)}
.pmec-leg{top:184px;width:18px;height:64px}.pmec-leg.l1{left:30px;transform:rotate(5deg)}.pmec-leg.l2{right:30px;transform:rotate(-5deg)}
.pmec-hero.pinny .pmec-pinbody:after{content:"";position:absolute;left:16px;right:16px;bottom:16px;height:42px;border-radius:10px;background:linear-gradient(145deg,#20324b,#111a2a);opacity:.96}
.pmec-hero.sparella .pmec-pinbody:after{content:"";position:absolute;left:12px;right:12px;bottom:14px;height:48px;border-radius:50% 50% 18% 18%;background:linear-gradient(145deg,#ff4fa6,#8a49ff);opacity:.97}
.pmec-hero.sparella .pmec-hair{position:absolute;left:5px;right:4px;top:2px;height:92px;border-radius:48% 48% 28% 28%;background:linear-gradient(135deg,#1b1530,#6c2e89);z-index:-1;transform:translateY(8px)}
.pmec-hero.pmec-show{opacity:1}.pmec-hero.pinny.pmec-show{transform:translateX(0) scale(1) rotate(-2deg)}.pmec-hero.sparella.pmec-show{transform:translateX(0) scale(1) rotate(2deg)}
.pmec-hero.pmec-run .pmec-arm.a1{animation:pmecArm .38s ease-in-out infinite alternate}.pmec-hero.pmec-run .pmec-arm.a2{animation:pmecArm .38s ease-in-out infinite alternate-reverse}.pmec-hero.pmec-run .pmec-leg.l1{animation:pmecLeg .34s ease-in-out infinite alternate}.pmec-hero.pmec-run .pmec-leg.l2{animation:pmecLeg .34s ease-in-out infinite alternate-reverse}.pmec-hero.pmec-run .pmec-pinbody{animation:pmecBob .34s ease-in-out infinite alternate}
.pmec-blackball{position:absolute;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#4c556d,#080a11 58%);border:3px solid #11172a;box-shadow:0 18px 38px rgba(0,0,0,.6);opacity:0;transition:all .55s ease}.pmec-blackball:before,.pmec-blackball:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#ff365c;top:14px}.pmec-blackball:before{left:16px}.pmec-blackball:after{right:16px}.pmec-blackball.b1{left:14%;bottom:19%}.pmec-blackball.b2{right:13%;bottom:25%}.pmec-blackball.pmec-show{opacity:1;animation:pmecBall 1.1s ease-in-out infinite alternate}
.pmec-pinwing{position:absolute;left:50%;top:22%;width:88px;height:72px;opacity:0;transform:translate(-50%,30px) scale(.6);transition:all .7s ease}.pmec-pinwing:before{content:"";position:absolute;left:32px;top:12px;width:24px;height:48px;border-radius:14px;background:linear-gradient(180deg,#dcecff,#7d93b4);border:2px solid #1a2235;box-shadow:0 0 25px rgba(70,211,255,.45)}.pmec-pinwing:after{content:"";position:absolute;left:0;right:0;top:21px;height:24px;clip-path:polygon(0 35%,38% 0,50% 45%,62% 0,100% 35%,63% 100%,50% 64%,37% 100%);background:linear-gradient(90deg,#ff4ca8,#6f64ff 50%,#42dfff)}.pmec-pinwing.pmec-show{opacity:1;transform:translate(-50%,0) scale(1);animation:pmecWing 1.3s ease-in-out infinite alternate}
.pmec-copy{position:absolute;left:7vw;bottom:max(9vh,70px);z-index:6;width:min(620px,84vw);opacity:0;transform:translateY(20px);transition:all .5s ease}.pmec-copy.pmec-show{opacity:1;transform:translateY(0)}.pmec-copy small{display:block;font-size:10px;letter-spacing:.32em;font-weight:900;color:#ff74bb;margin-bottom:9px}.pmec-copy h2{margin:0;font-size:clamp(34px,7vw,78px);line-height:.88;letter-spacing:-.055em;text-shadow:0 10px 34px rgba(0,0,0,.6)}.pmec-copy p{margin:14px 0 0;max-width:560px;font-size:clamp(12px,1.5vw,17px);line-height:1.55;color:rgba(255,255,255,.76)}
.pmec-logo{position:absolute;inset:0;display:grid;place-items:center;z-index:7;opacity:0;transform:scale(.88);transition:all .65s cubic-bezier(.17,.84,.3,1);pointer-events:none}.pmec-logo.pmec-show{opacity:1;transform:scale(1)}.pmec-logo>div{text-align:center}.pmec-logo b{display:block;font-size:clamp(52px,11vw,118px);line-height:.78;letter-spacing:-.07em;text-shadow:0 18px 46px rgba(0,0,0,.7)}.pmec-logo span{display:block;margin-top:16px;font-size:11px;letter-spacing:.38em;color:#ff70ba;font-weight:900}
.pmec-skip{position:absolute;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));z-index:12;border:1px solid rgba(255,255,255,.18);background:rgba(6,8,18,.5);color:#fff;border-radius:999px;padding:10px 13px;font-size:9px;font-weight:900;letter-spacing:.14em;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.pmec-bars:before,.pmec-bars:after{content:"";position:absolute;left:0;right:0;height:7vh;z-index:10;background:#020308;transition:height .6s ease}.pmec-bars:before{top:0}.pmec-bars:after{bottom:0}
#pmEntryCinematic.pmec-out{animation:pmecOut .7s ease forwards}
@keyframes pmecOut{to{opacity:0;transform:scale(1.025);visibility:hidden}}
@keyframes pmecSky{to{transform:scale(1.05) translate3d(-1%,1%,0)}}
@keyframes pmecStars{to{background-position:0 76px}}
@keyframes pmecBlink{to{opacity:.3;transform:scale(.7)}}
@keyframes pmecArm{from{transform:rotate(-24deg)}to{transform:rotate(28deg)}}
@keyframes pmecLeg{from{transform:rotate(-13deg)}to{transform:rotate(14deg)}}
@keyframes pmecBob{to{transform:translateY(-5px) rotate(.8deg)}}
@keyframes pmecBall{to{transform:translateY(-10px) rotate(12deg)}}
@keyframes pmecWing{to{transform:translate(-50%,-9px) rotate(1deg)}}
@media(max-width:760px){.pmec-hero{width:82px;height:196px;bottom:15%;transform-origin:bottom center}.pmec-pinbody{left:8px;width:66px;height:154px}.pmec-pinbody:before{top:40px;height:18px;box-shadow:0 9px 0 #ef438b}.pmec-eye{top:69px}.pmec-eye.e1{left:20px}.pmec-eye.e2{right:20px}.pmec-smile{left:20px;top:97px}.pmec-arm{top:88px;height:53px}.pmec-leg{top:146px;height:50px}.pmec-leg.l1{left:22px}.pmec-leg.l2{right:22px}.pmec-hero.pinny{left:23%}.pmec-hero.sparella{right:22%}.pmec-copy{left:18px;bottom:13vh}.pmec-copy p{max-width:90vw}.pmec-car{width:76px}.pmec-logo span{font-size:8px}.pmec-skip{font-size:8px;padding:9px 11px}}
@media(prefers-reduced-motion:reduce){#pmEntryCinematic *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
