/* BOSS ENTRANCE 4.1 — cinematic CSS scene, isolated from the game stage. */
.entrance-overlay[hidden],.entrance-replay[hidden]{display:none!important}
.entrance-replay{font-size:11px;padding:9px 12px;border:1px solid #a8a0ff55;color:#e8dcff;border-radius:12px;background:#272446b3;font-weight:800;white-space:nowrap;cursor:pointer;transition:background .18s}
.entrance-replay:hover{background:#514885}
body.entrance-open{overflow:hidden}
.entrance-overlay{position:fixed;inset:0;z-index:9999;overflow:hidden;color:#f7f5ff;background:radial-gradient(ellipse at 55% 55%,#3a2b62 0%,#13182d 48%,#050918 100%);font-family:inherit;isolation:isolate}
.entrance-sky{position:absolute;inset:0;overflow:hidden;background:linear-gradient(170deg,#161a32bd 0%,transparent 47%,#291c454d 76%,#050713 100%)}
.entrance-sky:after{content:'';position:absolute;left:0;right:0;bottom:25%;height:200px;background:repeating-linear-gradient(90deg,transparent 0,transparent 18%,#a892c010 18.1%,transparent 19.2%),linear-gradient(0deg,#201b38,transparent);opacity:.44}
.entrance-star{position:absolute;width:4px;height:4px;transform:rotate(45deg);background:#d5b3ff;box-shadow:0 0 20px 5px #b7a8ff}.entrance-star.one{top:21%;left:13%}.entrance-star.two{top:36%;right:21%;transform:rotate(45deg) scale(.65)}.entrance-star.three{top:15%;right:11%;transform:rotate(45deg) scale(.42)}
.entrance-overlay:before{content:'';position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 38%,#cfb5ff11 50%,transparent 66%);filter:blur(18px)}
.entrance-ground{position:absolute;z-index:1;bottom:-11%;left:-20%;width:140%;height:43%;background:linear-gradient(170deg,#32304d 0%,#141a30 33%,#070d22 100%);transform:perspective(590px) rotateX(30deg);box-shadow:0 -8px 120px #af8bff42;transform-origin:50% 0}
.entrance-roadline{position:absolute;bottom:10%;z-index:2;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#b4a5b855,transparent)}
.entrance-upper{position:absolute;z-index:30;top:0;left:0;right:0;padding:clamp(18px,3vw,34px) clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:20px}
.entrance-brand{display:flex;align-items:center;gap:12px;color:#fff;font-size:13px;font-weight:900;letter-spacing:2px}.entrance-brand-logo{gap:14px}.entrance-brand-image{display:block;width:clamp(220px,23vw,330px);height:auto;filter:drop-shadow(0 5px 14px rgba(5,10,30,.22))}.entrance-brand small{display:block;color:#ac9fcf;letter-spacing:2.5px;font-size:9px;margin-top:4px}
.entrance-skip{border:1px solid #cab9ee55;background:#1b1e39b2;color:#f4e9ff;border-radius:100px;padding:10px 16px;font-size:12px;font-weight:800;cursor:pointer;transition:background .15s}.entrance-skip span{margin-left:8px;color:#ffca8b}.entrance-skip:hover{background:#353052}
.entrance-topline{position:absolute;z-index:10;top:clamp(93px,13vh,136px);left:clamp(22px,6vw,92px);right:clamp(22px,6vw,92px);display:flex;justify-content:space-between;color:#bea6f5;font-size:10px;letter-spacing:2.6px;font-weight:800}
.entrance-headline{position:absolute;z-index:10;top:17%;left:8%;right:8%;text-align:center;pointer-events:none;text-shadow:0 5px 25px #0b092777;transition:opacity .6s,transform .6s}
.entrance-headline small{font-size:11px;font-weight:900;letter-spacing:4px;color:#e1bf93}.entrance-headline h2{font-size:clamp(38px,5.25vw,80px);letter-spacing:-2.5px;line-height:1.04;margin:13px 0 11px;font-weight:1000}.entrance-headline h2 em{font-style:normal;background:linear-gradient(95deg,#ffe9bc,#ffd08b,#dfafff);background-clip:text;-webkit-background-clip:text;color:transparent}.entrance-headline p{font-size:clamp(13px,1.2vw,16px);color:#c2b9da;margin:0}
.entrance-scene{position:absolute;z-index:5;inset:0;overflow:hidden;pointer-events:none}
.entrance-glow{position:absolute;left:22%;right:15%;bottom:10%;height:33%;background:radial-gradient(ellipse,#b68dfa4d 0%,#6d6cd62e 42%,transparent 75%);filter:blur(20px)}
.entrance-vehicle{position:absolute;z-index:5;width:min(90vw,960px);aspect-ratio:1040/390;left:50%;bottom:10%;transform:translateX(-12%) scale(.93);opacity:.50;filter:blur(2px) brightness(.75)}
.entrance-car{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 10px 28px #08091888)}
.entrance-car-shadow{position:absolute;left:10%;bottom:7%;height:10%;width:84%;background:#070817b7;border-radius:50%;filter:blur(22px)}
.entrance-wheel{transform-box:view-box}
.entrance-car-door{transform-origin:715px 223px;transform-box:view-box}
.entrance-exhaust{position:absolute;left:8%;bottom:14%;width:56px;height:56px;opacity:0}.entrance-exhaust i{position:absolute;left:15px;bottom:0;width:28px;height:18px;border-radius:50%;background:#dfe9ff88;filter:blur(4px)}
.entrance-avatar-shell{position:absolute;z-index:8;left:54%;bottom:12%;width:18%;opacity:0;transform-origin:50% 95%;filter:drop-shadow(0 14px 8px #060516aa) drop-shadow(0 0 14px #bd9aff55)}
.entrance-avatar{display:block;width:100%;height:auto}
.entrance-avatar-face{position:absolute;left:50.3%;top:12.4%;width:28%;aspect-ratio:1;border-radius:50%;transform:translateX(-50%);background-size:cover;background-position:center;background-repeat:no-repeat;border:3px solid #eef3ff;box-shadow:0 4px 12px #070a1d66,inset 0 0 0 1px #ffffff80;background-color:#f5f7ff}
.entrance-boss-title{position:absolute;z-index:12;top:23%;left:50%;width:90%;text-align:center;transform:translate(-50%,20px) scale(.7);opacity:0;pointer-events:none;filter:drop-shadow(0 10px 25px #000)}
.entrance-boss-title span{display:inline-block;font-size:clamp(29px,6vw,78px);font-weight:1000;letter-spacing:-2px;line-height:1;color:#ffe7a5;text-shadow:0 2px #7047b9,0 0 42px #ffd36b66}
.entrance-boss-title strong{display:block;font-size:clamp(21px,3.6vw,46px);letter-spacing:9px;line-height:1.3;color:#f7efff}
.entrance-boss-title small{display:block;color:#dfb9ff;font-size:clamp(12px,1.45vw,17px);letter-spacing:3px;font-weight:800}
.entrance-ready{position:absolute;z-index:20;bottom:clamp(13px,5vh,55px);left:50%;width:min(470px,92vw);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .35s}
.entrance-audio-choice{display:flex;align-items:center;gap:10px;padding:9px 16px;border-radius:100px;background:#15172ee0;border:1px solid #a3a0bd4a;color:#f5ecff;font-size:12px;font-weight:650;cursor:pointer}.entrance-audio-choice input{accent-color:#da9cff;width:16px;height:16px;cursor:pointer}
.entrance-play{display:flex;align-items:center;justify-content:center;gap:13px;width:min(350px,100%);padding:17px 24px;background:linear-gradient(100deg,#fbd399,#ffd792 40%,#e2b1ff);color:#2b1d32;border:0;border-radius:18px;font-weight:1000;letter-spacing:1.3px;font-size:15px;cursor:pointer;box-shadow:0 11px 42px #ffcf9180,inset 0 1px #fff9;transition:transform .15s,filter .15s}.entrance-play:hover{transform:translateY(-2px);filter:brightness(1.06)}.entrance-ready p{font-size:11px;color:#b9b0c7;margin:0}
.entrance-progress{position:absolute;bottom:0;left:0;right:0;height:5px;background:#14182e;z-index:50;opacity:0}.entrance-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#7a9df4,#e3a2ff,#ffe0a4)}
.entrance-overlay.entrance-running .entrance-vehicle{animation:entranceDrive 2.3s cubic-bezier(.14,.7,.22,1) forwards;filter:none;opacity:1}
.entrance-overlay.entrance-running .entrance-wheel{animation:entranceSpin .6s linear 4}
.entrance-overlay.entrance-running .entrance-car-door{animation:entranceDoor .76s 2.65s cubic-bezier(.25,.5,.2,1) both}
.entrance-overlay.entrance-running .entrance-avatar-shell{animation:entranceWalkOut 3.1s 3.18s cubic-bezier(.12,.65,.26,1) both}
.entrance-overlay.entrance-running .entrance-exhaust{animation:entranceSmoke 1.75s ease-out forwards}
.entrance-overlay.entrance-running .entrance-headline{opacity:0;transform:translateY(-26px);transition-delay:1.45s}
.entrance-overlay.entrance-running .entrance-boss-title{animation:entranceBossReveal 2.1s 5.25s ease-out both}
.entrance-overlay.entrance-running .entrance-ready{opacity:0;pointer-events:none}
.entrance-overlay.entrance-running .entrance-progress{opacity:1}.entrance-overlay.entrance-running .entrance-progress span{animation:entranceProgress 10.5s linear forwards}
.entrance-overlay.entrance-ending{opacity:0;transition:opacity .38s ease;pointer-events:none}
@keyframes entranceDrive{0%{transform:translateX(-170vw) scale(.92);opacity:1}61%{transform:translateX(-56%) scale(1.03)}78%{transform:translateX(-50%) scale(1)}100%{transform:translateX(-50%) scale(1)}}
@keyframes entranceSpin{to{transform:rotate(360deg)}}
@keyframes entranceSmoke{0%{opacity:0}40%{opacity:.72}100%{opacity:0}}
@keyframes entranceDoor{0%,5%{transform:scaleX(1)}54%{transform:scaleX(.08) skewY(4deg)}100%{transform:scaleX(.26) skewY(2deg)}}
@keyframes entranceWalkOut{0%{opacity:0;transform:translate(-74px,-14px) scale(.6) rotate(-8deg)}12%{opacity:1;transform:translate(-54px,-14px) scale(.68) rotate(-3deg)}26%{transform:translate(-34px,0) scale(.75) rotate(4deg)}39%{transform:translate(6px,4px) scale(.88) rotate(-4deg)}53%{transform:translate(56px,8px) scale(.97) rotate(3deg)}70%{transform:translate(111px,7px) scale(1.07) rotate(0)}84%{transform:translate(112px,-3px) scale(1.12) rotate(-3deg)}100%{opacity:1;transform:translate(120px,7px) scale(1.08) rotate(0)}}
@keyframes entranceBossReveal{0%{opacity:0;transform:translate(-50%,16px) scale(.58) rotate(-7deg)}30%{opacity:1;transform:translate(-50%,0) scale(1.12) rotate(2deg)}53%,85%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:1;transform:translate(-50%,-8px) scale(1)}}
@keyframes entranceProgress{to{width:100%}}
@media(max-width:750px){.entrance-upper{padding:17px 17px}.entrance-brand{font-size:11px;letter-spacing:1px}.entrance-brand-image{width:min(48vw,260px)}.entrance-brand small{font-size:8px;letter-spacing:1px}.entrance-topline{top:99px;left:17px;right:17px;font-size:8px;letter-spacing:1px}.entrance-headline{top:21%;left:5%;right:5%}.entrance-headline h2{font-size:clamp(35px,7vw,55px)}.entrance-vehicle{bottom:22%;width:117vw}.entrance-boss-title{top:30%}.entrance-boss-title strong{letter-spacing:3px}.entrance-ready{bottom:7%}.entrance-glow{bottom:15%}.entrance-sky:after{bottom:23%}.entrance-roadline{bottom:25%}.entrance-ground{bottom:-3%;height:37%}.entrance-replay{font-size:10px;padding:7px}}
@media(max-width:430px){.entrance-brand{font-size:9px}.entrance-brand-image{width:min(55vw,220px)}.entrance-headline h2{font-size:clamp(30px,9vw,44px);letter-spacing:-.9px}.entrance-headline small{font-size:9px;letter-spacing:2px}.entrance-headline p{font-size:12px}.entrance-vehicle{bottom:27%;width:139vw}.entrance-boss-title{top:30%}.entrance-boss-title span{font-size:37px;letter-spacing:-.7px}.entrance-boss-title strong{font-size:23px;letter-spacing:2px}.entrance-boss-title small{font-size:12px;letter-spacing:1px}.entrance-audio-choice{font-size:10px}.entrance-ready{bottom:7%}.entrance-play{font-size:12px}}
@media(prefers-reduced-motion:reduce){.entrance-overlay *{animation:none!important;transition:none!important}.entrance-overlay.entrance-running .entrance-vehicle{transform:translateX(-50%) scale(1);opacity:1}.entrance-overlay.entrance-running .entrance-avatar-shell{opacity:1;transform:translate(100px,10px) scale(1)}.entrance-overlay.entrance-running .entrance-boss-title{opacity:1;transform:translate(-50%,0) scale(1)}}
