/* LottoLuma globe lottery balls — reversible design PREVIEW, 2026-10-22 */
/* Decorative only: country markers remain the top, clickable layer. */
body.visual-perfection-home .atlas-globe-scene { isolation:isolate; }
body.visual-perfection-home .luma-globe-balls {
  position:absolute; inset:0; width:100%; height:100%; z-index:3;
  overflow:visible; pointer-events:none; user-select:none;
}
body.visual-perfection-home .luma-globe-ball {
  --size:32px; --drift-x:12px; --drift-y:13px;
  position:absolute; left:var(--left); top:var(--top);
  box-sizing:border-box; width:var(--size); height:var(--size);
  border-radius:50%; display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.8);
  background:radial-gradient(circle at 29% 21%, #ecfaff 0%, #a1cfff 17%, #288cdd 39%, #0966bc 68%, #063b7b 100%);
  box-shadow:0 8px 16px rgba(0,40,95,.22),inset -3px -3px 6px rgba(4,35,91,.32),inset 2px 3px 4px rgba(255,255,255,.58);
  will-change:transform;
  animation:lumaGlobeBallDrift var(--duration,13s) ease-in-out var(--delay,0s) infinite alternate;
}
body.visual-perfection-home .luma-globe-ball::before {
  content:'';position:absolute;inset:14%;border:1px solid rgba(5,84,162,.7);
  border-radius:50%;background:linear-gradient(145deg,#fff 10%,#f1f9ff 63%,#bddaf1 100%);
  box-shadow:0 1px 2px rgba(2,47,100,.23),inset 0 1px 2px rgba(255,255,255,.95);
}
body.visual-perfection-home .luma-globe-ball::after {
  content:'';position:absolute;top:12%;left:18%;width:21%;height:11%;border-radius:100%;
  background:rgba(255,255,255,.8);filter:blur(.7px);transform:rotate(-30deg);
}
body.visual-perfection-home .luma-globe-ball > span {
  position:relative;z-index:1;display:block;font:900 11px/1 Montserrat,Arial,sans-serif;
  letter-spacing:-.06em;color:#064f99; font-variant-numeric:tabular-nums;
  text-shadow:0 1px 0 #fff;
}
body.visual-perfection-home .luma-globe-ball.is-ice {
  background:radial-gradient(circle at 27% 21%,#fff,#ecf7ff 39%,#74b6e2 70%,#1557a2 100%);
  border-color:rgba(255,255,255,.85);
}
body.visual-perfection-home .luma-globe-ball.is-ice::before {background:linear-gradient(145deg,#fefefe,#deefff);}
body.visual-perfection-home .luma-globe-ball.is-small > span {font-size:10px;}
@keyframes lumaGlobeBallDrift {
  0%   {transform:translate3d(-5px,2px,0) rotate(-12deg) scale(.96)}
  25%  {transform:translate3d(2px,-8px,0) rotate(5deg) scale(1)}
  52%  {transform:translate3d(var(--drift-x),-3px,0) rotate(12deg) scale(1.03)}
  75%  {transform:translate3d(4px,var(--drift-y),0) rotate(-3deg) scale(.98)}
  100% {transform:translate3d(-8px,5px,0) rotate(-14deg) scale(1)}
}
/* Balls never obstruct country selections or open selector popovers. */
body.visual-perfection-home .atlas-globe-marker {position:absolute; z-index:5;}
body.visual-perfection-home .atlas-country-picker,
body.visual-perfection-home .atlas-marker-preview {z-index:8;}
/* The mobile globe already has many labels; keep just three small accents there. */
@media (max-width:700px){
  body.visual-perfection-home .luma-globe-ball {--size:23px!important;}
  body.visual-perfection-home .luma-globe-ball > span {font-size:8px;}
  body.visual-perfection-home .luma-globe-ball.ball-02,
  body.visual-perfection-home .luma-globe-ball.ball-04,
  body.visual-perfection-home .luma-globe-ball.ball-06 {display:none;}
}
@media (prefers-reduced-motion: reduce){
  body.visual-perfection-home .luma-globe-ball {animation:none!important;transform:none!important;will-change:auto;}
}
@media print {body.visual-perfection-home .luma-globe-balls{display:none!important;}}
