
:root{color-scheme:dark}
html,body{background:#05040a!important}
body{background:
 radial-gradient(circle at 12% 8%,rgba(88,28,135,.20),transparent 29%),
 radial-gradient(circle at 92% 22%,rgba(37,99,235,.12),transparent 28%),
 linear-gradient(180deg,#07050d 0%,#05040a 48%,#08050f 100%)!important}

.welcome-v4{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:15px;background:rgba(3,3,8,.92);backdrop-filter:blur(24px);overflow:hidden}
.welcome-v4::before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(124,58,237,.08),transparent 42%,rgba(37,99,235,.07));pointer-events:none}
.welcome-v4-orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.5;animation:welcomeV4Orb 9s ease-in-out infinite alternate;pointer-events:none}
.welcome-v4-orb-a{width:300px;height:300px;left:-90px;top:-80px;background:rgba(124,58,237,.33)}
.welcome-v4-orb-b{width:360px;height:360px;right:-130px;bottom:-110px;background:rgba(37,99,235,.24);animation-delay:-4s}
.welcome-v4-card{position:relative;width:min(1050px,calc(100vw - 30px));max-height:calc(100dvh - 30px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);padding:0!important;overflow:hidden;border:1px solid rgba(167,139,250,.25);border-radius:32px;background:linear-gradient(145deg,rgba(13,9,22,.985),rgba(6,5,12,.99));box-shadow:0 45px 140px rgba(0,0,0,.76),0 0 90px rgba(91,33,182,.16);text-align:left;transform:translateY(20px) scale(.975);opacity:0;animation:welcomeV4Card .72s cubic-bezier(.2,.8,.2,1) forwards}
.welcome-v4-media{position:relative;min-height:650px;overflow:hidden;background:#030207}
.welcome-v4-media video{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 42%;transform:scale(1.04);animation:welcomeV4Video 13s ease-in-out infinite alternate}
.welcome-v4-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,3,9,.03) 35%,rgba(4,3,10,.78) 100%),linear-gradient(90deg,transparent 62%,rgba(6,4,13,.42));pointer-events:none}
.welcome-v4-intro{position:absolute;z-index:2;left:28px;right:28px;top:26px;bottom:26px;display:flex;flex-direction:column;align-items:flex-start;pointer-events:none;text-shadow:0 5px 26px rgba(0,0,0,.72)}
.welcome-v4-title{display:grid;gap:4px;max-width:min(92%,520px)}
.welcome-v4-title>*{opacity:0;transform:translateY(12px);animation:welcomeV4Text .72s ease forwards}
.welcome-v4-intro .welcome-v4-eyebrow{font-size:10px;font-weight:900;letter-spacing:.30em;color:#ddd6fe;animation-delay:.35s}
.welcome-v4-intro strong{font:800 clamp(38px,6vw,70px)/.92 "Space Grotesk",Inter,sans-serif;letter-spacing:-.055em;color:#fff;animation-delay:.62s}
.welcome-v4-message{position:absolute;left:0;bottom:0;width:max-content;max-width:min(440px,88%);padding:10px 14px;border:1px solid rgba(221,214,254,.18);border-radius:14px;background:linear-gradient(135deg,rgba(8,6,17,.78),rgba(26,15,47,.56));backdrop-filter:blur(14px);box-shadow:0 14px 38px rgba(0,0,0,.26);color:#f4f0ff;font-size:clamp(11px,1.6vw,14px);font-weight:650;line-height:1.5;letter-spacing:.01em;opacity:0;transform:translateY(10px);transition:opacity .55s ease,transform .55s ease}
.welcome-v4-message.is-active{opacity:1;transform:none}
.welcome-v4-content{position:relative;display:flex;flex-direction:column;justify-content:center;padding:42px 42px 30px;overflow:auto}
.welcome-v4-brand{margin-top:18px}
.welcome-v4-content h2{font-size:clamp(35px,4.7vw,58px);line-height:1.02;margin:26px 0 17px}
.welcome-v4-content h2 span{background:linear-gradient(90deg,#a78bfa,#60a5fa);-webkit-background-clip:text;background-clip:text;color:transparent}
.welcome-v4-content .welcome-caption{min-height:0!important;color:#bdb6c8;font-size:14px;line-height:1.72}
.welcome-v4-content .welcome-loading-track{height:7px;background:rgba(255,255,255,.055)}
.welcome-v4-content .welcome-loading-track span{background:linear-gradient(90deg,#7c3aed,#a855f7,#60a5fa);background-size:180% 100%;animation:welcomeV4Gradient 2.6s linear infinite}
.welcome-v4-benefits span{transition:transform .25s ease,border-color .25s ease,background .25s ease}
.welcome-v4-benefits span:hover{transform:translateY(-2px);border-color:rgba(167,139,250,.32);background:rgba(124,58,237,.09)}
.welcome-v4-content #welcomeClose{position:relative;overflow:hidden;min-height:55px;border:0;background:linear-gradient(100deg,#7c3aed,#a855f7,#2563eb,#7c3aed);background-size:260% 100%;box-shadow:0 18px 45px rgba(124,58,237,.25);animation:welcomeV4Gradient 5s linear infinite;transition:transform .2s ease,filter .2s ease,opacity .25s ease}
.welcome-v4-content #welcomeClose:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.5)}
.welcome-v4-content #welcomeClose:not(:disabled):active{transform:scale(.985)}
.welcome-v4-content #welcomeClose b{transition:transform .22s ease}.welcome-v4-content #welcomeClose:hover b{transform:translateX(5px)}
.welcome-v4-sound{right:18px!important;bottom:18px!important;background:rgba(4,3,10,.72)!important;border-color:rgba(255,255,255,.2)!important}
.welcome-v4-sound.sound-on{background:linear-gradient(135deg,rgba(124,58,237,.92),rgba(37,99,235,.9))!important}

@keyframes welcomeV4Card{to{opacity:1;transform:none}}
@keyframes welcomeV4Text{to{opacity:1;transform:none}}
@keyframes welcomeV4Video{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.10) translate3d(-1.5%,-1%,0)}}
@keyframes welcomeV4Orb{to{transform:translate3d(34px,26px,0) scale(1.12)}}
@keyframes welcomeV4Gradient{to{background-position:180% 0}}

@media(max-width:820px){
 .welcome-v4{padding:10px}
 .welcome-v4-card{width:min(570px,calc(100vw - 20px));grid-template-columns:1fr;max-height:calc(100dvh - 20px);border-radius:27px;overflow:auto}
 .welcome-v4-media{min-height:clamp(290px,48dvh,430px)}
 .welcome-v4-media video{position:absolute;height:100%;object-position:center 40%}
 .welcome-v4-video-overlay{background:linear-gradient(180deg,rgba(3,3,9,.02) 34%,rgba(5,3,11,.78) 100%)}
 .welcome-v4-intro{left:19px;right:19px;top:19px;bottom:18px}
 .welcome-v4-intro strong{font-size:48px}
 .welcome-v4-message{max-width:min(330px,92%);padding:9px 12px;border-radius:12px;font-size:11px;line-height:1.45}
 .welcome-v4-content{padding:27px 25px 23px;overflow:visible}
 .welcome-v4-content h2{font-size:36px;margin:22px 0 13px}
 .welcome-v4-content .welcome-caption{font-size:13px;line-height:1.65}
 .welcome-v4-benefits{margin:16px 0}
}
@media(max-width:420px){
 .welcome-v4-card{border-radius:23px}
 .welcome-v4-media{min-height:300px}
 .welcome-v4-intro strong{font-size:41px}
 .welcome-v4-message{max-width:92%;font-size:10.5px}
 .welcome-v4-content{padding:23px 20px 20px}
 .welcome-v4-content h2{font-size:31px}
 .welcome-v4-content .welcome-brand-row{margin-top:14px}
 .welcome-v4-content .welcome-logo-v14{width:50px;height:50px;font-size:25px}
 .welcome-v4-content #welcomeClose{min-height:52px}
}
@media(prefers-reduced-motion:reduce){.welcome-v4-orb,.welcome-v4-card,.welcome-v4-media video,.welcome-v4-title>*,.welcome-v4-content .welcome-loading-track span,.welcome-v4-content #welcomeClose{animation:none!important}.welcome-v4-card,.welcome-v4-title>*{opacity:1;transform:none}.welcome-v4-message:first-of-type{opacity:1;transform:none}}

.welcome-v4-ripple{position:absolute;width:14px;height:14px;margin:-7px;border-radius:50%;background:rgba(255,255,255,.4);pointer-events:none;animation:welcomeV4Ripple .62s ease-out forwards}@keyframes welcomeV4Ripple{to{transform:scale(28);opacity:0}}

/* V4.2 — reliable welcome-video rendering */
.welcome-v4-media{isolation:isolate;background:#06030c}
.welcome-v4-poster,.welcome-v4-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.welcome-v4-poster{z-index:0;display:block;opacity:1;transform:scale(1.035);filter:saturate(1.04) contrast(1.03);transition:opacity .45s ease}
.welcome-v4-media video{z-index:1;display:block!important;visibility:visible!important;opacity:0;background:transparent!important;transition:opacity .45s ease;animation:none!important}
.welcome-v4-media.is-video-ready video{opacity:1;animation:welcomeV4Video 13s ease-in-out infinite alternate!important}
.welcome-v4-media.is-video-ready .welcome-v4-poster{opacity:0}
.welcome-v4-video-overlay{z-index:2;background:linear-gradient(180deg,rgba(2,1,7,.12) 0%,rgba(3,2,9,.08) 40%,rgba(4,2,11,.62) 100%)!important}
.welcome-v4-intro{z-index:3}
.welcome-v4-sound{z-index:4}
.welcome-v4-media.video-fallback .welcome-v4-poster{opacity:1}
.welcome-v4-media.video-fallback video{display:none!important}
@media(max-width:820px){.welcome-v4-poster,.welcome-v4-media video{object-position:center 42%}}

/* V4.3 — tombol wajib + framing video penuh */
.welcome-v4-media{
  background:
    radial-gradient(circle at 50% 42%,rgba(124,58,237,.16),transparent 44%),
    #030207;
}
.welcome-v4-poster,
.welcome-v4-media video{
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
.welcome-v4-media.is-video-ready video{
  animation:welcomeV4VideoContain 11s ease-in-out infinite alternate!important;
}
.welcome-v4::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:auto;
  z-index:0;
}
.welcome-v4-card{z-index:1}

@keyframes welcomeV4VideoContain{
  from{transform:scale(.965) translate3d(0,0,0)}
  to{transform:scale(1) translate3d(0,-.4%,0)}
}

@media(max-width:820px){
  .welcome-v4-media{
    min-height:clamp(345px,52dvh,470px);
  }
  .welcome-v4-poster,
  .welcome-v4-media video{
    object-fit:contain!important;
    object-position:center center!important;
  }
}
@media(max-width:420px){
  .welcome-v4-media{min-height:365px}
}

/* V5 — sisi video hidup mengikuti warna video + logo anime KivoPay */
.welcome-v4-media{
  --ambient-accent:#8b5cf6;
  --ambient-accent-2:#ef4444;
  background:#040208!important;
}
.welcome-v4-ambient-video{
  position:absolute!important;
  inset:-16%!important;
  z-index:0!important;
  width:132%!important;
  height:132%!important;
  object-fit:cover!important;
  opacity:.62!important;
  filter:blur(34px) saturate(1.45) brightness(.68) contrast(1.12)!important;
  transform:scale(1.08)!important;
  animation:welcomeAmbientBreath 8s ease-in-out infinite alternate!important;
  pointer-events:none!important;
}
.welcome-v4-media::before,
.welcome-v4-media::after{
  content:"";
  position:absolute;
  z-index:1;
  top:-12%;
  bottom:-12%;
  width:46%;
  opacity:.82;
  pointer-events:none;
  mix-blend-mode:screen;
  filter:blur(8px);
}
.welcome-v4-media::before{
  left:-16%;
  background:
    radial-gradient(ellipse at 35% 30%,color-mix(in srgb,var(--ambient-accent-2) 76%,transparent),transparent 58%),
    radial-gradient(ellipse at 65% 72%,color-mix(in srgb,var(--ambient-accent) 72%,transparent),transparent 62%);
  animation:welcomeSideFlowLeft 10s ease-in-out infinite alternate;
}
.welcome-v4-media::after{
  right:-16%;
  background:
    radial-gradient(ellipse at 65% 26%,color-mix(in srgb,var(--ambient-accent) 78%,transparent),transparent 58%),
    radial-gradient(ellipse at 30% 74%,color-mix(in srgb,var(--ambient-accent-2) 66%,transparent),transparent 62%);
  animation:welcomeSideFlowRight 11s ease-in-out infinite alternate;
}
.welcome-v4-ambient-wave{
  position:absolute;
  z-index:2;
  top:4%;
  bottom:4%;
  width:31%;
  opacity:.48;
  pointer-events:none;
  background:
    repeating-radial-gradient(ellipse at 50% 50%,transparent 0 19px,rgba(255,255,255,.12) 20px,transparent 22px 42px);
  mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
  filter:blur(.2px) drop-shadow(0 0 12px var(--ambient-accent));
}
.welcome-v4-ambient-wave-left{left:-12%;animation:welcomeWaveLeft 12s linear infinite}
.welcome-v4-ambient-wave-right{right:-12%;animation:welcomeWaveRight 14s linear infinite}
.welcome-v4-poster,
.welcome-v4-media>video#welcomeVideo{
  z-index:3!important;
  width:min(64%,520px)!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  border-left:1px solid rgba(255,255,255,.05);
  border-right:1px solid rgba(255,255,255,.05);
  box-shadow:-24px 0 55px rgba(124,58,237,.14),24px 0 55px rgba(239,68,68,.13);
}
.welcome-v4-media.is-video-ready video#welcomeVideo{
  animation:welcomeV4VideoCenter 11s ease-in-out infinite alternate!important;
}
.welcome-v4-video-overlay{z-index:4!important;background:linear-gradient(180deg,rgba(2,1,7,.08),rgba(3,2,9,.02) 48%,rgba(4,2,11,.62))!important}
.welcome-v4-intro{z-index:5!important}
.welcome-v4-sound{z-index:6!important}
.welcome-anime-logo{
  overflow:hidden;
  padding:0!important;
  background:#160b2d!important;
  border:1px solid rgba(196,181,253,.56);
  box-shadow:0 0 0 4px rgba(124,58,237,.1),0 13px 34px rgba(124,58,237,.42)!important;
  animation:welcomeAnimeLogo 3.2s ease-in-out infinite;
}
.welcome-anime-logo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 43%;transform:scale(1.04)}
@keyframes welcomeAmbientBreath{from{transform:scale(1.06);opacity:.48}to{transform:scale(1.16);opacity:.72}}
@keyframes welcomeSideFlowLeft{from{transform:translate3d(-4%,-2%,0) scale(.96)}to{transform:translate3d(9%,4%,0) scale(1.12)}}
@keyframes welcomeSideFlowRight{from{transform:translate3d(5%,3%,0) scale(1.08)}to{transform:translate3d(-8%,-4%,0) scale(.96)}}
@keyframes welcomeWaveLeft{to{transform:translateY(-42px) rotate(4deg)}}
@keyframes welcomeWaveRight{to{transform:translateY(42px) rotate(-4deg)}}
@keyframes welcomeV4VideoCenter{from{transform:translateX(-50%) scale(.975)}to{transform:translateX(-50%) scale(1)}}
@keyframes welcomeAnimeLogo{0%,100%{transform:translateY(0);filter:saturate(1)}50%{transform:translateY(-3px);filter:saturate(1.16) brightness(1.05)}}
@media(max-width:820px){
  .welcome-v4-poster,.welcome-v4-media>video#welcomeVideo{width:55%!important;max-width:none!important}
  .welcome-v4-ambient-video{opacity:.72!important;filter:blur(24px) saturate(1.5) brightness(.7)!important}
  .welcome-v4-media::before,.welcome-v4-media::after{width:58%;opacity:.9}
  .welcome-v4-ambient-wave{width:42%;opacity:.42}
}
@media(max-width:420px){
  .welcome-v4-poster,.welcome-v4-media>video#welcomeVideo{width:54%!important}
  .welcome-v4-media::before,.welcome-v4-media::after{width:62%}
}
@media(prefers-reduced-motion:reduce){
  .welcome-v4-ambient-video,.welcome-v4-media::before,.welcome-v4-media::after,.welcome-v4-ambient-wave,.welcome-anime-logo{animation:none!important}
}
