/* A soft toy-like 3D finish for the live world, built from the existing scene. */
.immersive-world #scene{
  --space-sky:#bce8f0;
  isolation:isolate;
  background:
    radial-gradient(ellipse at 50% 44%,#fff7dd 0%,#fff7dd00 23%),
    linear-gradient(180deg,#bce8f0 0%,#d9f2ed 45%,#bce1bd 45%,#a5d39d 90%,#f5e9c9 90%,#ead9ad 100%)!important;
}
.immersive-world #scene:before{
  z-index:0;top:10%;bottom:10%;
  background:radial-gradient(ellipse at 50% 88%,#477a4a35,transparent 62%),linear-gradient(90deg,#fff8 0%,transparent 18%,transparent 83%,#fff5 100%);
}
.immersive-world #scene:after{
  content:"";position:absolute;z-index:0;left:4%;right:4%;top:32%;bottom:9%;
  border-radius:48% 48% 24% 24% / 15% 15% 12% 12%;
  background:
    linear-gradient(30deg,transparent 49.5%,#8dbd7d45 50%,transparent 50.6%),
    linear-gradient(150deg,transparent 49.5%,#8dbd7d45 50%,transparent 50.6%),
    linear-gradient(180deg,#c9e5ad 0%,#a9d28f 100%);
  box-shadow:0 16px 0 #82b278,0 24px 22px #477c4a35,inset 0 4px 0 #e7f5c9;
  transform:perspective(900px) rotateX(13deg);pointer-events:none;
}
.immersive-world #scene .sun{z-index:1;background:linear-gradient(145deg,#fff9cf,#ffd978);box-shadow:0 0 0 10px #fff9d347,0 7px 20px #edae4a38}
.immersive-world #scene .cloud{z-index:1;color:#fff;font-size:clamp(20px,5dvh,42px);filter:drop-shadow(0 5px 3px #65a3a440)}
.immersive-world #scene .cloud.b{font-size:clamp(16px,3.5dvh,32px)}
.immersive-world #scene .path{
  z-index:1;top:38%;bottom:9%;left:44%;width:18%;border-radius:50% 50% 0 0;
  background:linear-gradient(90deg,#eddaa9,#fff0c7 45%,#e5ce96);opacity:1;
  box-shadow:inset 5px 0 #fff4,inset -5px 0 #c6a97640;transform:rotate(-4deg) perspective(500px) rotateX(8deg)
}
.immersive-world #scene .tree{z-index:2;filter:drop-shadow(0 11px 5px #365e3545);transform:translateY(-3px)}
.immersive-world #scene .t1{filter:drop-shadow(5px 8px 0 #7ba66a) drop-shadow(0 12px 4px #365e3540)}
.immersive-world #scene .t2{filter:drop-shadow(5px 8px 0 #719c68) drop-shadow(0 12px 4px #365e3540)}
.immersive-world #scene .t3{filter:drop-shadow(4px 7px 0 #7ba66a) drop-shadow(0 10px 4px #365e3540)}
.immersive-world #scene .church{
  z-index:3;top:calc(41% - min(38.4vh,33.1vw,384px));bottom:auto;left:50%;
  width:min(62vw,760px);height:min(48vh,480px);border:0;border-radius:0;
  background:transparent;box-shadow:none;transform:translateX(-50%);overflow:visible
}
.immersive-world #scene .church:before{
  content:"";position:absolute;inset:0;width:100%;height:100%;left:0;top:0;
  background:url('/images/church-3d.png') center bottom / contain no-repeat;
  clip-path:none;filter:drop-shadow(0 12px 12px #294a3555)
}
.immersive-world #scene .church:after,.immersive-world #scene .church .win,.immersive-world #scene .church .door{display:none}
.immersive-world #scene .sign{background:linear-gradient(135deg,#82b878,#579562);box-shadow:0 4px 0 #467b50,0 7px 10px #42613d35}
.immersive-world #scene .bench{filter:drop-shadow(0 7px 3px #4a604544)}
.immersive-world #scene .flower{z-index:3;filter:drop-shadow(0 5px 2px #4c754144)}
.immersive-world #scene .avatar-guy .person{filter:drop-shadow(0 10px 4px #304d3f45);}
.immersive-world #scene .avatar-guy .name,.immersive-world #scene .avatar-guy .bubble{
  border:1px solid #fff;background:#ffffffed;box-shadow:0 5px 12px #41634b26;color:#496d52
}
.immersive-world .world-actor.motion-actor{filter:drop-shadow(0 10px 4px #29443c40)}
.immersive-world .world-actor.motion-actor .person{filter:drop-shadow(0 2px 0 #ffffff70) drop-shadow(0 5px 0 #375d4930) drop-shadow(0 11px 5px #29443c35);text-shadow:1px 1px 0 #fff8,2px 3px 0 #35634b44,4px 6px 4px #29443c35}
.immersive-world .world-actor.motion-actor .person svg{filter:drop-shadow(0 3px 2px #193e3230)}
.immersive-world .world-actor.motion-actor .person svg path,.immersive-world .world-actor.motion-actor .person svg rect,.immersive-world .world-actor.motion-actor .person svg ellipse,.immersive-world .world-actor.motion-actor .person svg circle{paint-order:stroke fill}
.immersive-world .world-actor.motion-actor .name{background:#ffffffed;border:1px solid #ffffff;color:#466a50;box-shadow:0 5px 13px #36553e22;border-radius:12px;padding:4px 11px}
.immersive-world #scene .world-decorations{perspective:1000px;transform-style:preserve-3d}
.immersive-world #scene .world-decoration,.immersive-world #scene .space-home-scene{
  display:grid;place-items:center;line-height:1;transform:translate(-50%,-58%) rotateX(-9deg);
  transform-style:preserve-3d;filter:drop-shadow(0 3px 0 #ffffff70) drop-shadow(0 7px 0 #39724945) drop-shadow(0 13px 6px #264d3640);
  text-shadow:1px 1px 0 #ffffff70,2px 3px 0 #386b494f,4px 6px 2px #254e3740;
}
.immersive-world #scene .world-decoration:after,.immersive-world #scene .space-home-scene:after{
  content:"";position:absolute;z-index:-1;left:17%;right:17%;bottom:-7%;height:16%;border-radius:50%;
  background:#477d4638;filter:blur(3px);transform:rotateX(65deg) translateZ(-12px)
}
.space-canvas{perspective:900px;background-image:linear-gradient(30deg,transparent 49.5%,#ffffff40 50%,transparent 50.5%),linear-gradient(150deg,transparent 49.5%,#ffffff40 50%,transparent 50.5%);background-size:90px 90px}
.space-object{transform:translate(-50%,-58%) rotateX(-9deg);transform-style:preserve-3d;text-shadow:1px 1px 0 #fff8,2px 3px 0 #386b4955,4px 7px 3px #254e3745;filter:drop-shadow(0 5px 0 #39724950) drop-shadow(0 10px 5px #264d3640);transition:filter .18s,scale .18s}
.space-object:hover,.space-object.selected{scale:1.08;filter:drop-shadow(0 6px 0 #39724955) drop-shadow(0 14px 7px #264d3650)}
.space-catalog button{filter:drop-shadow(0 3px 0 #39724935) drop-shadow(0 5px 3px #264d3625);text-shadow:1px 2px 0 #386b4940}
.immersive-world #scene .world-decoration{font-size:clamp(34px,5.4dvh,64px)!important}
.immersive-world #scene .space-home-scene{filter:drop-shadow(0 8px 0 #4b8050) drop-shadow(0 17px 8px #294a3550)}
.immersive-world #scene .church,.immersive-world #scene .sign,.immersive-world #scene .bench,.immersive-world #scene .tree,.immersive-world #scene .flower{transform-style:preserve-3d}
.immersive-world #scene .bench{ text-shadow:1px 2px 0 #725b3a,2px 4px 0 #384b3555 }
.immersive-world #scene .flower{text-shadow:1px 2px 0 #5b8654,2px 4px 3px #34543855}
.immersive-world #scene .sign{left:50%;top:auto;bottom:19%;border:1px solid #ffffff75;transform:translateX(-50%) perspective(350px) rotateY(-8deg)}
.immersive-world #scene.inside-home:after{
  left:0;right:0;top:10%;bottom:10%;border-radius:0;transform:none;box-shadow:none;
  background:repeating-linear-gradient(0deg,transparent 0 74px,#b28e6935 74px 77px),repeating-linear-gradient(90deg,transparent 0 74px,#b28e6935 74px 77px),linear-gradient(135deg,#eee4d1,#dbc9ad)
}
.immersive-world .scene-label,.immersive-world .weather{
  border:1px solid #ffffffb8;box-shadow:0 7px 22px #35594417;backdrop-filter:blur(12px)
}
.immersive-world .world-toolbar>button,.immersive-world .chat-pull-tab{
  border:1px solid #ffffffc9;box-shadow:0 7px 22px #35594422;transition:transform .18s ease,box-shadow .18s ease
}
.immersive-world .world-toolbar>button:hover,.immersive-world .chat-pull-tab:hover{transform:translateY(-2px);box-shadow:0 10px 25px #3559442c}
@media(max-width:640px){
  .immersive-world #scene:after{left:-11%;right:-11%;top:37%;bottom:9%;border-radius:50% 50% 12% 12% / 12% 12% 8% 8%}
  .immersive-world #scene .path{left:42%;width:21%}
  .immersive-world #scene .tree{filter:drop-shadow(4px 6px 0 #7ba66a) drop-shadow(0 9px 4px #365e3540)}
  .immersive-world #scene .church{top:calc(41% - min(33.6vh,50.1vw,280px));width:min(94vw,560px);height:min(42vh,350px)}
  .immersive-world #scene .sign{bottom:21%;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.immersive-world .world-toolbar>button,.immersive-world .chat-pull-tab{transition:none}}
