
.orbita-cssbg{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden;
    isolation:isolate;
    background:#071522;
    --orbita-bg-speed:1;
    --orbita-bg-intensity:1;
}
.orbita-cssbg::before,
.orbita-cssbg::after,
.orbita-cssbg .cssbg-layer{
    content:"";
    position:absolute;
    inset:-18%;
    pointer-events:none;
    will-change:transform,opacity,background-position;
}
.scene-widget-box[data-widget-type="cssbg"] .orbita-cssbg{
    pointer-events:none;
    user-select:none;
}
.orbita-cssbg[data-motion="off"]::before,
.orbita-cssbg[data-motion="off"]::after,
.orbita-cssbg[data-motion="off"] .cssbg-layer{
    animation:none!important;
}

/* SPRING -------------------------------------------------- */
.cssbg-spring-bloom{
    background:
      radial-gradient(circle at 18% 20%,rgba(255,202,222,.72),transparent 24%),
      radial-gradient(circle at 82% 24%,rgba(205,255,220,.62),transparent 28%),
      linear-gradient(135deg,#dff7ea 0%,#bde8d0 48%,#f6dce8 100%);
}
.cssbg-spring-bloom::before{
    background:
      radial-gradient(ellipse at 15% 45%,rgba(255,255,255,.72) 0 2%,transparent 3%),
      radial-gradient(ellipse at 35% 25%,rgba(255,174,205,.62) 0 2.5%,transparent 3.5%),
      radial-gradient(ellipse at 68% 62%,rgba(255,255,255,.62) 0 2%,transparent 3%),
      radial-gradient(ellipse at 84% 36%,rgba(255,182,212,.58) 0 2.3%,transparent 3.3%);
    background-size:170px 150px,220px 190px,190px 210px,240px 180px;
    animation:cssbg-float calc(18s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.78 * var(--orbita-bg-intensity));
}
.cssbg-spring-bloom::after{
    background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.35) 48%,transparent 66%);
    animation:cssbg-sheen calc(14s / var(--orbita-bg-speed)) linear infinite;
}

.cssbg-spring-rain{
    background:linear-gradient(160deg,#8bc5c7,#cbe8d6 55%,#9bc4d1);
}
.cssbg-spring-rain::before{
    inset:-40%;
    background:repeating-linear-gradient(105deg,transparent 0 24px,rgba(255,255,255,.34) 25px 27px,transparent 28px 54px);
    animation:cssbg-rain calc(4.8s / var(--orbita-bg-speed)) linear infinite;
    opacity:calc(.75 * var(--orbita-bg-intensity));
}
.cssbg-spring-rain::after{
    background:
      radial-gradient(ellipse at 20% 30%,rgba(255,255,255,.38),transparent 28%),
      radial-gradient(ellipse at 75% 65%,rgba(108,190,160,.28),transparent 35%);
    animation:cssbg-breathe calc(9s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

.cssbg-spring-wind{
    background:linear-gradient(135deg,#b8e6ce,#7bc7a5 50%,#d7f1df);
}
.cssbg-spring-wind::before{
    background:
      repeating-radial-gradient(ellipse at 10% 80%,transparent 0 32px,rgba(255,255,255,.22) 34px 37px,transparent 40px 68px);
    transform:rotate(-12deg);
    animation:cssbg-drift calc(15s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.9 * var(--orbita-bg-intensity));
}
.cssbg-spring-wind::after{
    background:linear-gradient(90deg,transparent,rgba(239,255,247,.4),transparent);
    animation:cssbg-sheen calc(12s / var(--orbita-bg-speed)) linear infinite;
}

/* SUMMER -------------------------------------------------- */
.cssbg-summer-meadow{
    background:linear-gradient(160deg,#8ed8ee 0%,#dff4b8 48%,#3f9d5d 100%);
}
.cssbg-summer-meadow::before{
    inset:42% -10% -20%;
    background:
      repeating-linear-gradient(82deg,transparent 0 25px,rgba(24,111,58,.34) 27px 30px,transparent 32px 55px);
    transform-origin:bottom center;
    animation:cssbg-grass calc(6s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.95 * var(--orbita-bg-intensity));
}
.cssbg-summer-meadow::after{
    inset:-25%;
    background:radial-gradient(circle at 78% 18%,rgba(255,244,158,.8),rgba(255,218,82,.24) 12%,transparent 28%);
    animation:cssbg-breathe calc(7s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

.cssbg-summer-sun{
    background:linear-gradient(145deg,#1d9bd1,#7ed4df 52%,#f5d66d);
}
.cssbg-summer-sun::before{
    inset:-45%;
    background:conic-gradient(from 0deg at 76% 26%,rgba(255,242,157,.46),transparent 8%,rgba(255,242,157,.24) 16%,transparent 25%,rgba(255,242,157,.32) 34%,transparent 46%);
    animation:cssbg-spin calc(40s / var(--orbita-bg-speed)) linear infinite;
    opacity:calc(.9 * var(--orbita-bg-intensity));
}
.cssbg-summer-sun::after{
    background:radial-gradient(circle at 76% 26%,#fff4b0 0 4%,rgba(255,220,91,.62) 8%,transparent 23%);
    animation:cssbg-breathe calc(5s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

.cssbg-summer-water{
    background:linear-gradient(180deg,#58c9d8,#137ca8 55%,#075b82);
}
.cssbg-summer-water::before{
    background:
      repeating-radial-gradient(ellipse at 50% 100%,transparent 0 35px,rgba(255,255,255,.18) 38px 41px,transparent 44px 76px);
    transform:scaleX(1.8);
    animation:cssbg-water calc(9s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.9 * var(--orbita-bg-intensity));
}
.cssbg-summer-water::after{
    background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.24) 48%,transparent 72%);
    animation:cssbg-sheen calc(10s / var(--orbita-bg-speed)) linear infinite;
}

/* AUTUMN -------------------------------------------------- */
.cssbg-autumn-leaves{
    background:linear-gradient(145deg,#6d2f24,#c46a2b 48%,#e0a83d 100%);
}
.cssbg-autumn-leaves::before{
    background:
      radial-gradient(ellipse at 15% 20%,#f2b13f 0 2.2%,transparent 2.8%),
      radial-gradient(ellipse at 40% 45%,#9b3f28 0 2.5%,transparent 3.2%),
      radial-gradient(ellipse at 68% 18%,#e46f2e 0 2.2%,transparent 3%),
      radial-gradient(ellipse at 84% 60%,#f0c45a 0 2.4%,transparent 3.1%);
    background-size:180px 220px,240px 190px,210px 250px,260px 210px;
    animation:cssbg-leaves calc(15s / var(--orbita-bg-speed)) linear infinite;
    opacity:calc(.88 * var(--orbita-bg-intensity));
}
.cssbg-autumn-leaves::after{
    background:radial-gradient(ellipse at 50% 120%,rgba(255,190,78,.38),transparent 58%);
    animation:cssbg-breathe calc(8s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

.cssbg-autumn-branches{
    background:linear-gradient(160deg,#3b2522,#744132 52%,#b66b36);
}
.cssbg-autumn-branches::before{
    inset:-12%;
    background:
      linear-gradient(63deg,transparent 0 45%,rgba(31,20,18,.72) 46% 47.2%,transparent 48%),
      linear-gradient(118deg,transparent 0 56%,rgba(42,25,20,.58) 57% 58%,transparent 59%),
      linear-gradient(38deg,transparent 0 70%,rgba(58,31,23,.48) 71% 72%,transparent 73%);
    animation:cssbg-branches calc(10s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.95 * var(--orbita-bg-intensity));
}
.cssbg-autumn-branches::after{
    background:radial-gradient(circle at 72% 30%,rgba(230,141,61,.42),transparent 26%);
    animation:cssbg-drift calc(13s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

.cssbg-autumn-amber{
    background:linear-gradient(125deg,#5b281d,#9b4d22,#d49331,#6f3223);
    background-size:300% 300%;
    animation:cssbg-gradient calc(16s / var(--orbita-bg-speed)) ease infinite;
}
.cssbg-autumn-amber::before{
    background:repeating-linear-gradient(125deg,transparent 0 70px,rgba(255,202,92,.12) 72px 76px,transparent 78px 140px);
    animation:cssbg-drift calc(14s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.9 * var(--orbita-bg-intensity));
}
.cssbg-autumn-amber::after{
    background:radial-gradient(ellipse at 25% 20%,rgba(255,190,75,.35),transparent 28%);
    animation:cssbg-breathe calc(7s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
}

/* WINTER -------------------------------------------------- */
.cssbg-winter-snow{
    background:linear-gradient(160deg,#eaf7ff,#b9dcec 52%,#7fb5d1);
}
.cssbg-winter-snow::before{
    inset:-35%;
    background:
      radial-gradient(circle,#fff 0 2px,transparent 2.8px),
      radial-gradient(circle,rgba(255,255,255,.78) 0 3px,transparent 3.8px),
      radial-gradient(circle,rgba(255,255,255,.56) 0 1.5px,transparent 2.2px);
    background-size:72px 86px,125px 138px,48px 62px;
    background-position:0 0,30px 40px,18px 22px;
    animation:cssbg-snow calc(13s / var(--orbita-bg-speed)) linear infinite;
    opacity:calc(.92 * var(--orbita-bg-intensity));
}
.cssbg-winter-snow::after{
    background:radial-gradient(ellipse at 50% 110%,rgba(255,255,255,.82),transparent 48%);
}

.cssbg-winter-frost{
    background:linear-gradient(135deg,#dff5ff,#8fc4df 48%,#d9edf7);
}
.cssbg-winter-frost::before{
    background:
      repeating-radial-gradient(ellipse at 0 0,transparent 0 42px,rgba(255,255,255,.32) 44px 47px,transparent 50px 82px),
      repeating-radial-gradient(ellipse at 100% 100%,transparent 0 55px,rgba(255,255,255,.2) 57px 60px,transparent 63px 98px);
    animation:cssbg-frost calc(18s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.9 * var(--orbita-bg-intensity));
}
.cssbg-winter-frost::after{
    background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.42) 48%,transparent 70%);
    animation:cssbg-sheen calc(13s / var(--orbita-bg-speed)) linear infinite;
}

.cssbg-winter-aurora{
    background:linear-gradient(180deg,#071b35,#12365b 55%,#0a243d);
}
.cssbg-winter-aurora::before{
    inset:-30% -15%;
    background:
      radial-gradient(ellipse at 35% 30%,rgba(87,236,196,.46),transparent 34%),
      radial-gradient(ellipse at 68% 42%,rgba(100,176,255,.38),transparent 38%),
      radial-gradient(ellipse at 50% 18%,rgba(192,132,252,.22),transparent 30%);
    filter:blur(18px);
    animation:cssbg-aurora calc(12s / var(--orbita-bg-speed)) ease-in-out infinite alternate;
    opacity:calc(.95 * var(--orbita-bg-intensity));
}
.cssbg-winter-aurora::after{
    background:
      radial-gradient(circle,#fff 0 1px,transparent 1.7px);
    background-size:95px 95px;
    opacity:calc(.34 * var(--orbita-bg-intensity));
    animation:cssbg-drift calc(25s / var(--orbita-bg-speed)) linear infinite alternate;
}

/* Common motion ------------------------------------------ */
@keyframes cssbg-float{from{transform:translate3d(-2%,-2%,0) rotate(-2deg)}to{transform:translate3d(3%,3%,0) rotate(2deg)}}
@keyframes cssbg-sheen{from{transform:translateX(-55%) rotate(-3deg)}to{transform:translateX(55%) rotate(3deg)}}
@keyframes cssbg-rain{from{transform:translate3d(-6%,-12%,0)}to{transform:translate3d(8%,18%,0)}}
@keyframes cssbg-breathe{from{opacity:.55;transform:scale(.98)}to{opacity:1;transform:scale(1.04)}}
@keyframes cssbg-drift{from{transform:translate3d(-4%,-2%,0)}to{transform:translate3d(5%,3%,0)}}
@keyframes cssbg-grass{from{transform:skewX(-4deg) translateX(-1%)}to{transform:skewX(5deg) translateX(1%)}}
@keyframes cssbg-spin{to{transform:rotate(360deg)}}
@keyframes cssbg-water{from{transform:scaleX(1.8) translateY(-3%) translateX(-2%)}to{transform:scaleX(1.9) translateY(4%) translateX(3%)}}
@keyframes cssbg-leaves{from{transform:translate3d(-4%,-14%,0) rotate(-4deg)}to{transform:translate3d(7%,16%,0) rotate(7deg)}}
@keyframes cssbg-branches{from{transform:rotate(-1deg) scale(1.02)}to{transform:rotate(1.2deg) scale(1.05)}}
@keyframes cssbg-gradient{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}
@keyframes cssbg-snow{from{transform:translate3d(-3%,-16%,0)}to{transform:translate3d(5%,18%,0)}}
@keyframes cssbg-frost{from{transform:scale(1) rotate(-1deg);opacity:.58}to{transform:scale(1.08) rotate(1deg);opacity:1}}
@keyframes cssbg-aurora{from{transform:translate3d(-6%,-2%,0) skewX(-5deg) scale(1)}to{transform:translate3d(7%,5%,0) skewX(7deg) scale(1.08)}}
