.scene-callouts{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:hidden}@media (prefers-reduced-motion:no-preference){html.js .scene-callouts{transform:translate3d(calc(var(--px,0)*-6px),calc(var(--py,0)*-4px),0)scale(1.02);will-change:transform}}.scene-callout-list{margin:0;padding:0;list-style:none;transition:opacity .2s ease-out;position:absolute;inset:0}.scene-callout-list.is-leaving{opacity:0}.scene-callout{--delay:calc(var(--n,0)*.16s);left:var(--cx,0px);top:var(--cy,0px);width:0;height:0;position:absolute}.scene-callout-dot{width:10px;height:10px;box-shadow:0 0 0 2px rgb(var(--accent-rgb)/.9),0 0 18px rgb(var(--accent-rgb)/.75);animation:scene-callout-dot .48s var(--ease-spring,ease-out)var(--delay)both;background:#fff;border-radius:50%;position:absolute;top:-5px;left:-5px}.scene-callout-dot:before{content:"";border:1.5px solid rgb(var(--accent-rgb)/.85);animation:scene-callout-ring 2.2s ease-out calc(var(--delay) + .3s)infinite;border-radius:50%;position:absolute;inset:-7px}.scene-callout-line{width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.scene-callout-line path{fill:none;stroke:#ffffffd9;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:scene-callout-draw .45s cubic-bezier(.2,.7,.2,1)calc(var(--delay) + .12s)backwards}.scene-callout-card{top:-28px;left:var(--card-left,76px);-webkit-backdrop-filter:blur(10px);width:max-content;max-width:min(260px,100vw - 32px);font-family:var(--font-mono,ui-monospace,monospace);letter-spacing:.12em;text-transform:uppercase;color:#ffffffeb;white-space:nowrap;animation:scene-callout-type calc(var(--chars,12)*32ms)steps(var(--chars,12),end)calc(var(--delay) + .42s)backwards;background:#000000b8;border:1px solid #ffffff2e;border-radius:4px;padding:6px 10px;font-size:11px;line-height:1.35;position:absolute;translate:0 -50%}.scene-callout-card:after{content:"";vertical-align:-1px;background:var(--accent);opacity:0;width:6px;height:.9em;animation:scene-callout-caret .5s steps(1,end)calc(var(--delay) + .42s)5 both;margin-left:5px;display:inline-block}.scene-callout-index{color:var(--accent-text,var(--accent));margin-right:4px;font-weight:500}.scene-callout-note{letter-spacing:.04em;text-transform:none;white-space:normal;color:#fffc;margin-top:2px;font-size:11px;display:block}.scene-callout.is-flipped .scene-callout-card:not([data-placed]){left:auto;right:76px}@keyframes scene-callout-dot{0%{opacity:0;scale:.2}to{opacity:1;scale:1}}@keyframes scene-callout-ring{0%{opacity:.9;scale:.6}70%{opacity:0;scale:1.9}to{opacity:0;scale:1.9}}@keyframes scene-callout-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes scene-callout-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes scene-callout-caret{0%{opacity:1}50%{opacity:0}to{opacity:0}}.scene-minimap{top:calc(var(--ka-topbar,0px) + 88px);z-index:20;pointer-events:none;width:160px;font-family:var(--font-mono,ui-monospace,monospace);color:#ffffffe6;display:none;position:absolute;right:clamp(16px,3vw,32px)}@media (min-width:640px){.scene-minimap{display:block}}.scene-minimap-map{-webkit-backdrop-filter:blur(12px);background:#00000073;border:1px solid #ffffff29;border-radius:8px;width:160px;height:100px;position:relative;overflow:hidden;box-shadow:0 8px 30px #00000059}.scene-minimap-map img{opacity:.85;filter:saturate(.8)contrast(1.05)}.scene-minimap-map:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg,#ffffff12 0 1px,#0000 1px 20px),repeating-linear-gradient(90deg,#ffffff12 0 1px,#0000 1px 20px);position:absolute;inset:0}.scene-minimap-cam{z-index:1;width:0;height:0;translate:calc(var(--mx,.5)*160px)calc(var(--my,.5)*100px);rotate:calc(var(--mh,0)*1deg);position:absolute;top:0;left:0}.scene-minimap-cam:not([data-visible="1"]){display:none}.scene-minimap-cone{position:absolute;top:-24px;left:-24px;overflow:visible}.scene-minimap-cone path{fill:rgb(var(--accent-rgb)/.38);stroke:rgb(var(--accent-rgb)/.7);stroke-width:.75px}.scene-minimap-cone circle{fill:#fff;stroke:var(--accent);stroke-width:1.5px}.scene-minimap-cone .scene-minimap-pulse{fill:none;stroke:rgb(var(--accent-rgb)/.8);stroke-width:1px;transform-origin:0 0;animation:2.2s ease-out infinite scene-callout-ring}.scene-minimap-meta{letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 2px #000000d9,0 0 8px #0009;flex-direction:column;gap:2px;margin:8px 2px 4px;font-size:11px;display:flex}.scene-minimap-counter b{color:#fff;font-weight:500}.scene-minimap-counter span{color:#ffffff8c}.scene-minimap-label{-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere;color:#fffc;-webkit-box-orient:vertical;max-width:150px;display:-webkit-box;overflow:hidden}.scene-minimap-track{background:#ffffff2e;border-radius:1px;height:2px;overflow:hidden}.scene-minimap-progress{background:var(--accent);transform-origin:0;height:100%;transform:scaleX(var(--p,0));display:block}.scene-grain{z-index:40;pointer-events:none;opacity:.06;will-change:transform;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:180px 180px;animation:.7s step-end infinite scene-grain;position:fixed;inset:-20%}.scene-vignette{z-index:40;pointer-events:none;background:radial-gradient(78% 68%,#0000 55%,#0000006b 100%);position:fixed;inset:0}@keyframes scene-grain{0%{transform:translate(0,0)}16.67%{transform:translate(-3%,2%)}33.33%{transform:translate(2%,-4%)}50%{transform:translate(-4%,-2%)}66.67%{transform:translate(3%,4%)}83.33%{transform:translate(-1%,-3%)}to{transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.scene-callout-list{transition:none}.scene-callout-dot,.scene-callout-dot:before,.scene-callout-line path,.scene-callout-card,.scene-minimap-cone .scene-minimap-pulse{animation:none}.scene-callout-dot:before{opacity:.6}.scene-callout-card:after,.scene-grain,.scene-vignette{display:none}}
