/* ONELING tool shell. Product controls, selected skins and stage styles stay local. */
body.oneling-tool-shell{background:#f4f7ff;background-image:radial-gradient(ellipse at 85% 0%,#d7d2fa80,transparent 48%),radial-gradient(ellipse at 5% 5%,#d0e4ff90,transparent 50%);background-attachment:scroll}
html[data-skin=noir] body.oneling-tool-shell{background:#0b122b;background-image:radial-gradient(ellipse at 85% 0%,#65558a35,transparent 55%),radial-gradient(ellipse at 5% 5%,#375f8c30,transparent 50%)}
.oneling-tool-shell .oneling-tool-ending{position:relative;isolation:isolate;overflow:hidden;margin-top:48px;padding:32px 24px 24px;border-radius:20px;color:#f0f3ff;background:radial-gradient(ellipse at 85% 70%,#6553a44d,transparent 65%),#0b122b;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.65;text-align:left}
.oneling-tool-shell .oneling-tool-ending h2{font:550 clamp(24px,5.5vw,38px)/1.3 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;letter-spacing:-.03em;color:#f0f3ff;margin:16px 0}
.oneling-tool-shell .oneling-tool-ending p{color:#bdc8e3;font-size:14px;margin:12px 0}
.oneling-tool-shell .oneling-tool-ending .oneling-tool-kicker{font-size:11px;letter-spacing:.12em}
.oneling-tool-shell .oneling-tool-ending .oneling-tool-art{position:relative;max-width:440px;margin:0 auto}
.oneling-tool-shell .oneling-tool-art svg{display:block;width:100%;height:auto}
.oneling-tool-shell .oneling-tool-band{transform-origin:240px 150px;fill:#c4bdff;animation:oneling-tool-orbit 32s ease-in-out infinite alternate paused}
.oneling-tool-shell .oneling-tool-band:nth-child(even){fill:#a8c9ff;animation-direction:alternate-reverse;animation-duration:27s}
.oneling-tool-shell [data-running=true] .oneling-tool-band{animation-play-state:running}
.oneling-tool-shell .oneling-tool-seed{fill:#f0f3ff}
.oneling-tool-shell .oneling-tool-pulse{transform-origin:240px 150px}
.oneling-tool-shell [data-running=true] .oneling-tool-pulse[data-pulse=true]{animation:oneling-tool-ripple 1.4s cubic-bezier(.22,1,.36,1)}
.oneling-tool-shell .oneling-tool-trigger{position:absolute;inset:15% 8%;border:0;border-radius:50%;background:transparent;cursor:pointer;min-height:44px}
.oneling-tool-shell .oneling-tool-pause{position:relative;z-index:2;display:block;margin-left:auto;border:1px solid #b9c9ff33;border-radius:8px;background:transparent;color:#bdc8e3;min-height:44px;padding:8px 12px;font:inherit;font-size:13px;cursor:pointer}
.oneling-tool-shell .oneling-tool-ending [hidden]{display:none}
.oneling-tool-shell .oneling-tool-ending :is(a,button):focus-visible{outline:2px solid #c4bdff;outline-offset:4px}
.oneling-tool-shell .oneling-tool-ending button:disabled{cursor:default}
.oneling-tool-shell .oneling-tool-ending .oneling-tool-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;padding:10px 16px;border:1px solid #b9c9ff33;border-radius:8px;color:#f0f3ff;text-decoration:none;font-size:14px}
.oneling-tool-shell .oneling-tool-ending .oneling-tool-credit{border-top:1px solid #b9c9ff33;margin-top:24px;padding-top:16px;font-size:12px}
@keyframes oneling-tool-orbit{from{transform:rotate(-12deg) scale(.94)}to{transform:rotate(14deg) scale(1.04)}}
@keyframes oneling-tool-ripple{0%{transform:scale(1)}30%{transform:scale(1.09)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.oneling-tool-shell .oneling-tool-band,.oneling-tool-shell .oneling-tool-pulse{animation:none!important}}
@media(max-width:360px){.oneling-tool-shell .oneling-tool-ending{padding:24px 16px}}
