/* Qunity case v08: theme-safe chapter scenes, restrained motion and app handset. */
.qunity-case .qs-chapter{--qs-fg:#f6f8fc;--qs-copy:#dce8ec}
.qunity-case .qs-chapter .qs-chapter-copy h2{color:var(--qs-fg)}
.qunity-case .qs-chapter .qs-chapter-copy h2 em{color:var(--qs-accent)}
.qunity-case .qs-chapter .qs-chapter-copy>p:not(.case-kicker){color:var(--qs-copy)}
.qunity-case .qs-chapter .case-kicker{color:var(--qs-accent)}
.qunity-case .qs-chapter .qs-chapter-link{color:var(--qs-fg);border-color:color-mix(in srgb,var(--qs-fg) 55%,transparent)}
.qunity-case .qs-topic{--qs-accent:#93e6d3}
.qunity-case .qs-path{--qs-fg:#f7f6ff;--qs-copy:#dce0f1;--qs-accent:#c7b8ff;background:radial-gradient(circle at 80% 32%,#7663b638,transparent 42%),linear-gradient(130deg,#17293c,#292b4d 56%,#1c3445)}
.qunity-case .qs-path .qs-path-card{background:#f8f7ff;color:#24334b;border-color:#c7c2e8;box-shadow:0 22px 55px #07142655}
.qunity-case .qs-path .qs-path-card-3{background:#493f77;color:#fff;border-color:#9e8ce0}
.qunity-case .qs-path .qs-path-card i{background:#ded7fa;color:#473980}
.qunity-case .qs-path .qs-path-card-3 i{background:#c6b4ff;color:#352960}
.qunity-case .qs-path .qs-path-line{background:linear-gradient(#aaa0e1,#7769bc,#d1c2f9)}
.qunity-case .qs-event{--qs-accent:#d7f478}
.qunity-case .qs-creator{--qs-accent:#c9b5ff}
.qunity-case .qs-creator-center{overflow:hidden;background:#f9f7ff;box-shadow:0 0 0 14px #b8a2ed18,0 0 60px #9588df77}
.qunity-case .qs-creator-center img{display:block;width:50%;height:50%;max-width:none;object-fit:contain;flex:none}
html[data-theme="light"] .qunity-case .qs-topic{--qs-fg:#163543;--qs-copy:#38515e;--qs-accent:#087f79;background:radial-gradient(circle at 74% 44%,#bededfb2,transparent 44%),linear-gradient(125deg,#edf2f7,#e7e7f1)}
html[data-theme="light"] .qunity-case .qs-topic .qs-topic-orbit{border-color:#168b8870}
html[data-theme="light"] .qunity-case .qs-topic .qs-topic-orbit-2{border-color:#7965ba66}
html[data-theme="light"] .qunity-case .qs-topic .qs-topic-node{background:#23475a;color:#fff;border-color:#4b9eac}
html[data-theme="light"] .qunity-case .qs-topic .qs-topic-spark{background:#3a7c8b;box-shadow:0 0 17px #2b8296}
html[data-theme="light"] .qunity-case .qs-path{--qs-fg:#242e49;--qs-copy:#42516a;--qs-accent:#6552a5;background:radial-gradient(circle at 77% 38%,#d8d1f4a8,transparent 43%),linear-gradient(125deg,#f4f3f8,#e8edf5 62%,#f1eef8)}
html[data-theme="light"] .qunity-case .qs-path .qs-path-card{background:#fff;color:#24334b;border-color:#c9c7df;box-shadow:0 18px 42px #5b648429}
html[data-theme="light"] .qunity-case .qs-path .qs-path-card-3{background:#493f77;color:#fff}
html[data-theme="light"] .qunity-case .qs-event{--qs-fg:#213547;--qs-copy:#465469;--qs-accent:#6654a8;background:radial-gradient(circle at 81% 30%,#d9d0f0b8,transparent 45%),linear-gradient(130deg,#f4f1f7,#e7edf4)}
html[data-theme="light"] .qunity-case .qs-event .qs-event-glow{border-color:#927bc762;box-shadow:0 0 0 42px #8f80be0e,0 0 0 86px #8f80be08;background:radial-gradient(circle,#b7a5e85c,transparent 68%)}
html[data-theme="light"] .qunity-case .qs-event .qs-event-poster{box-shadow:25px 31px 60px #65718b5c}
html[data-theme="light"] .qunity-case .qs-event .qs-event-ticket{box-shadow:0 18px 42px #50617a54}
html[data-theme="light"] .qunity-case .qs-creator{--qs-fg:#233449;--qs-copy:#4b5369;--qs-accent:#6a50a9;background:radial-gradient(circle at 76% 48%,#d2c9edb5,transparent 46%),linear-gradient(135deg,#f1eff8,#e8eef5)}
html[data-theme="light"] .qunity-case .qs-creator .qs-creator-visual:before{border-color:#8f7ec09c}
html[data-theme="light"] .qunity-case .qs-creator .qs-creator-visual:after{border-color:#619eaa7d}
html[data-theme="light"] .qunity-case .qs-creator .qs-creator-node{background:#fff;color:#1f3648;border-color:#9789c2a6;box-shadow:0 17px 38px #62648840}
html[data-theme="light"] .qunity-case .qs-creator .qs-creator-node i{color:#6552a5}
html[data-theme="light"] .qunity-case .qs-creator-center{background:#fff;box-shadow:0 0 0 16px #8e79c01b,0 20px 48px #827ba84d}
.qunity-case .qs-topic-visual,.qunity-case .qs-path-visual,.qunity-case .qs-event-visual,.qunity-case .qs-creator-visual{transform:translate3d(var(--qs-px,0px),var(--qs-py,0px),0);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
html.qs-motion-enabled .qunity-case .qs-chapter-copy{opacity:.35;transform:translateY(25px);transition:opacity .8s,transform .8s}
html.qs-motion-enabled .qunity-case .qs-chapter.has-entered .qs-chapter-copy{opacity:1;transform:none}
.qunity-case .qs-topic-orbit{animation:qs-orbit-a 34s linear infinite}
.qunity-case .qs-topic-orbit-2{animation:qs-orbit-b 42s linear infinite}
.qunity-case .qs-topic-core{animation:qs-breathe 5.8s ease-in-out infinite}
.qunity-case .qs-topic-node,.qunity-case .qs-creator-node{animation:qs-float 6.8s ease-in-out infinite}
.qunity-case .qs-topic-node-b,.qunity-case .qs-creator-node-b{animation-delay:-2s}
.qunity-case .qs-topic-node-c,.qunity-case .qs-creator-node-c{animation-delay:-4s}
.qunity-case .qs-creator-node-d{animation-delay:-5s}
.qunity-case .qs-topic-spark{animation:qs-spark 3s ease-in-out infinite}
.qunity-case .qs-topic-spark-b{animation-delay:-1.5s}
.qunity-case .qs-path-card{animation:qs-path-float 6s ease-in-out infinite}
.qunity-case .qs-path-card-2{animation-delay:-2s}
.qunity-case .qs-path-card-3{animation-delay:-4s}
.qunity-case .qs-path-line:after{content:"";position:absolute;left:-5px;top:0;width:12px;height:12px;border-radius:50%;background:#c4b5ff;box-shadow:0 0 18px #c4b5ff;animation:qs-route 7s ease-in-out infinite}
.qunity-case .qs-event-poster{animation:qs-poster 7s ease-in-out infinite}
.qunity-case .qs-event-ticket{animation:qs-ticket 5.8s ease-in-out infinite}
.qunity-case .qs-event-glow{animation:qs-breathe 7s ease-in-out infinite}
.qunity-case .qs-creator-visual:before{border-style:dashed;animation:qs-ring 36s linear infinite}
.qunity-case .qs-creator-visual:after{border-style:dashed;animation:qs-ring 49s linear infinite reverse}
.qunity-case .qs-creator-center{animation:qs-breathe 6s ease-in-out infinite}
.qunity-case .qs-chapter:not(.is-in-view) .qs-topic-orbit,
.qunity-case .qs-chapter:not(.is-in-view) .qs-topic-core,
.qunity-case .qs-chapter:not(.is-in-view) .qs-topic-node,
.qunity-case .qs-chapter:not(.is-in-view) .qs-topic-spark,
.qunity-case .qs-chapter:not(.is-in-view) .qs-path-card,
.qunity-case .qs-chapter:not(.is-in-view) .qs-path-line:after,
.qunity-case .qs-chapter:not(.is-in-view) .qs-event-poster,
.qunity-case .qs-chapter:not(.is-in-view) .qs-event-ticket,
.qunity-case .qs-chapter:not(.is-in-view) .qs-event-glow,
.qunity-case .qs-chapter:not(.is-in-view) .qs-creator-visual:before,
.qunity-case .qs-chapter:not(.is-in-view) .qs-creator-visual:after,
.qunity-case .qs-chapter:not(.is-in-view) .qs-creator-node,
.qunity-case .qs-chapter:not(.is-in-view) .qs-creator-center{animation-play-state:paused}
@keyframes qs-orbit-a{from{transform:rotate(-24deg) scaleY(.69)}to{transform:rotate(336deg) scaleY(.69)}}
@keyframes qs-orbit-b{from{transform:rotate(33deg) scaleY(.71)}to{transform:rotate(-327deg) scaleY(.71)}}
@keyframes qs-breathe{50%{filter:brightness(1.13);scale:1.035}}
@keyframes qs-float{50%{translate:0 -11px}}
@keyframes qs-spark{50%{opacity:.3;scale:1.7}}
@keyframes qs-path-float{50%{translate:0 -8px}}
@keyframes qs-route{0%{top:0;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:100%;opacity:0}}
@keyframes qs-poster{50%{translate:0 -13px;rotate:1.8deg}}
@keyframes qs-ticket{50%{translate:0 -14px;rotate:-3deg}}
@keyframes qs-ring{to{rotate:360deg}}
/* A physical handset inside the pinned app stage. Screen IDs remain unchanged. */
.qunity-case .qs-app-screen{perspective:1200px}
.qunity-case .qs-phone-stage{position:relative;z-index:2;width:clamp(180px,40%,266px);aspect-ratio:576 / 1248;max-height:92%;animation:qs-phone-float 6.8s ease-in-out infinite;filter:drop-shadow(20px 26px 22px #02162680)}
.qunity-case .qs-phone-stage:before{content:"";position:absolute;z-index:-1;inset:-40%;background:radial-gradient(circle,var(--qs-screen-glow,#79d4d640),transparent 65%);filter:blur(16px)}
.qunity-case .qs-phone-shell{position:relative;width:100%;height:100%;padding:7px;border:1px solid #708997;border-radius:42px;background:linear-gradient(120deg,#09141e 5%,#3b5365 32%,#0d1c2b 55%,#627b87 73%,#101d29 100%);box-shadow:inset 2px 0 3px #cce9f47a,inset -4px 0 6px #0008,10px 5px 0 #081823,17px 12px 22px #010d19b3;transform:perspective(1000px) rotateY(var(--qs-phone-yaw,-12deg)) rotateX(3deg) rotateZ(-1.5deg);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.qunity-case .qs-phone-shell:before{content:"";position:absolute;z-index:2;left:-5px;top:100px;width:4px;height:60px;border-radius:3px 0 0 3px;background:#829dab}
.qunity-case .qs-phone-shell:after{content:"";position:absolute;z-index:2;right:-5px;top:128px;width:4px;height:69px;border-radius:0 3px 3px 0;background:#677f91}
.qunity-case .qs-phone-glass{position:relative;width:100%;height:100%;border-radius:35px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1px #071b2b}
.qunity-case .qs-phone-glass:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#fff3,transparent 22%,transparent 72%,#fff2);border-radius:inherit}
.qunity-case .qs-phone-camera{position:absolute;z-index:5;top:8px;left:50%;width:47px;height:10px;transform:translateX(-50%);border-radius:0 0 10px 10px;background:#0d1721}
.qunity-case .qs-phone-glass img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:fill;border-radius:0;box-shadow:none;transform:translateX(8%) scale(1.025);transition:opacity .42s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.qunity-case .qs-phone-glass img.is-visible{transform:translateX(0) scale(1)}
.qunity-case .qs-app.is-in-view .qs-phone-stage{animation-play-state:running}
.qunity-case .qs-app:not(.is-in-view) .qs-phone-stage{animation-play-state:paused}
@keyframes qs-phone-float{50%{translate:0 -8px}}
@media(max-width:650px){.qunity-case .qs-app-device{height:430px}.qunity-case .qs-app-story{padding-top:430px}.qunity-case .qs-phone-stage{width:min(48%,150px);max-height:95%}.qunity-case .qs-phone-shell{border-radius:31px;padding:5px}.qunity-case .qs-phone-glass{border-radius:25px}.qunity-case .qs-phone-camera{width:32px;height:8px;top:6px}.qunity-case .qs-phone-shell:before{top:72px;height:40px}.qunity-case .qs-phone-shell:after{top:98px;height:46px}}
@media(max-width:380px){.qunity-case .qs-app-device{height:410px}.qunity-case .qs-app-story{padding-top:410px}}
@media(prefers-reduced-motion:reduce){
 html.qs-motion-enabled .qunity-case .qs-chapter-copy{opacity:1;transform:none;transition:none}
 .qunity-case .qs-topic-orbit,.qunity-case .qs-topic-core,.qunity-case .qs-topic-node,.qunity-case .qs-topic-spark,.qunity-case .qs-path-card,.qunity-case .qs-path-line:after,.qunity-case .qs-event-poster,.qunity-case .qs-event-ticket,.qunity-case .qs-event-glow,.qunity-case .qs-creator-visual:before,.qunity-case .qs-creator-visual:after,.qunity-case .qs-creator-node,.qunity-case .qs-creator-center,.qunity-case .qs-phone-stage{animation:none}
 .qunity-case .qs-topic-visual,.qunity-case .qs-path-visual,.qunity-case .qs-event-visual,.qunity-case .qs-creator-visual,.qunity-case .qs-phone-shell,.qunity-case .qs-phone-glass img{transition:none}
}