#simulation-quick-rail #open-guided-demo:hover,
#simulation-quick-rail #open-guided-demo:focus-visible { background: linear-gradient(135deg, #7554ce, #a475e5); color: #fff; transform: translateY(-1px); }
.guided-demo-layer { position: fixed; inset: 0; z-index: 9000; pointer-events: none; }
.guided-demo-mask { position: fixed; inset: 0; background: rgb(0 0 0 / 70%); opacity: 0; pointer-events: none; transition: opacity 1s ease, clip-path .45s ease; }
.guided-demo-layer.is-visible .guided-demo-mask { opacity: 1; pointer-events: auto; }
.guided-demo-focus-ring { position: fixed; border: 2px solid #b083e9; border-radius: 16px; box-shadow: 0 0 0 5px rgb(188 141 247 / 25%), 0 0 28px rgb(209 173 255 / 45%); transition: top .45s ease, left .45s ease, width .45s ease, height .45s ease; pointer-events: none; }
.guided-demo-pointer { position: fixed; width: 45px; height: 52px; z-index: 2; opacity: 0; filter: drop-shadow(0 5px 7px rgb(104 58 160 / 38%)); transform: translate(-4px, -4px) scale(1); transition: left .55s ease, top .55s ease, opacity .55s ease, transform .22s ease; pointer-events: none; }
.guided-demo-pointer.is-visible { opacity: 1; }
.guided-demo-pointer svg { display: block; width: 100%; height: 100%; }
.guided-demo-pointer.is-pressing { animation: guided-demo-press 1s ease-in-out 1; }
@keyframes guided-demo-press { 50% { transform: translate(-4px, -4px) scale(.72); } }
.guided-demo-exit { position: fixed; top: 12px; right: 12px; z-index: 3; border: 1px solid rgb(255 255 255 / 65%); border-radius: 999px; padding: 8px 14px; background: #fff; color: #563590; font: inherit; font-size: 13px; cursor: pointer; pointer-events: auto; box-shadow: 0 4px 16px rgb(0 0 0 / 20%); }
.guided-demo-step { position: fixed; top: 13px; left: 50%; z-index: 3; max-width: calc(100vw - 130px); transform: translateX(-50%); border-radius: 999px; padding: 8px 15px; background: #fff; color: #563590; font-size: 13px; font-weight: 600; box-shadow: 0 4px 16px rgb(0 0 0 / 20%); text-align: center; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .guided-demo-mask, .guided-demo-focus-ring, .guided-demo-pointer { transition-duration: .1s; } .guided-demo-pointer.is-pressing { animation-duration: .15s; } }
