.dio{background:var(--shadow);overflow:clip}.dio-layer{position:absolute;inset:0;pointer-events:none;transform:translateZ(0);will-change:transform}@media (max-aspect-ratio:1/1){.dio-zoom .dio-layer{inset:0 -20%}}@media (max-aspect-ratio:4/5){.dio-zoom .dio-layer{inset:0 -40%}}.dio-interactive{pointer-events:auto}.dio-sprites,.dio-sprites-scene{position:absolute;left:0;top:0;pointer-events:none}.dio-sprites-scene{width:1600px;height:900px}.dio-sprite{position:absolute}.dio-sprite-measuring{left:0;top:0;width:1600px;height:900px;visibility:hidden}.dio-sprite-art{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible}.dio [data-place].hotspot:focus-visible .hotspot-art,.dio [data-place].hotspot:hover .hotspot-art{filter:none;transform:none}.dio [data-place].hotspot[aria-disabled=true]:focus-visible .hotspot-art,.dio [data-place].hotspot[aria-disabled=true]:hover .hotspot-art{filter:saturate(.4) opacity(.8);transform:none}.hotspot-glow{opacity:0;transition:opacity .18s ease}.hotspot-glow-on{opacity:1}.dio-plaques{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.dio-blur{filter:blur(7px)}.dio-hud{position:absolute;inset:0;pointer-events:none}.dio-hud>*{pointer-events:auto}.dio-vignette{inset:0;background:radial-gradient(ellipse 70% 72% at 50% 48%,transparent 50%,var(--shadow) 125%)}.dio-grain,.dio-vignette{position:absolute;pointer-events:none}.dio-grain{inset:-120px;opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:dio-grain .5s steps(3) infinite}.dio-curtain{position:absolute;inset:0;pointer-events:none;background:var(--shadow);opacity:0;animation:dio-curtain 1.2s ease-out both}.dio-dangle,.dio-drop,.dio-orbit,.dio-pop,.dio-ride,.dio-rock,.dio-spin,.dio-sweep,.dio-swing{transform-box:view-box;transform-origin:0 0}.dio-breathe,.dio-flag,.dio-flap,.dio-flutter,.dio-moon-halo,.dio-shimmer{transform-box:fill-box}.dio-spin{animation:dio-spin 60s linear infinite}.dio-reverse{animation-direction:reverse}.dio-rock{animation:dio-rock 2.8s ease-in-out infinite alternate}.dio-gallop{animation:dio-gallop 1.6s ease-in-out infinite alternate}.dio-ride{offset-rotate:auto;animation:dio-ride 7s cubic-bezier(.45,0,.55,1) infinite}.dio-twinkle{animation:dio-twinkle 2.4s ease-in-out infinite}.dio-drift{animation:dio-drift 80s ease-in-out infinite alternate}.dio-sweep-left{animation:dio-sweep-left 10s ease-in-out infinite alternate}.dio-sweep-right{animation:dio-sweep-right 10s ease-in-out infinite alternate}.dio-moon-halo{transform-origin:50% 50%;animation:dio-halo 6s ease-in-out infinite alternate}.dio-chase{animation:dio-chase 2.4s linear infinite}.dio-flicker{animation:dio-flicker 3.1s steps(1) infinite}.dio-flicker-soft{animation:dio-flicker-soft 5.3s steps(1) infinite}.dio-power{animation:dio-power 1.3s steps(1) .5s both}.dio-glow{animation:dio-glow 3.4s ease-in-out infinite alternate}.dio-neon{animation:dio-neon 7s steps(1) infinite}.dio-neon-bad{animation:dio-neon-bad 2.3s steps(1) infinite}.dio-drop{animation:dio-drop 1.2s cubic-bezier(.3,0,.3,1) .2s both}.dio-swing{animation:dio-swing 4.2s ease-in-out 1.4s infinite alternate}.dio-flag{transform-origin:0 50%;animation:dio-flag .9s ease-in-out infinite alternate}.dio-flutter{transform-origin:50% 0;animation:dio-flutter 1.5s ease-in-out infinite alternate}.dio-dangle{animation:dio-dangle 2.6s ease-in-out infinite alternate}.dio-rise{animation:dio-rise 18s linear infinite}.dio-orbit{animation:dio-orbit 3s linear infinite}.dio-flap{animation:dio-flap .12s linear infinite alternate}.dio-flap,.dio-shimmer{transform-origin:50% 50%}.dio-shimmer{animation:dio-shimmer 2.2s ease-in-out infinite alternate}.dio-fog{animation:dio-fog 40s ease-in-out infinite alternate}.dio-firefly{animation:dio-firefly 7s ease-in-out infinite}.dio-pop{animation:dio-pop .7s cubic-bezier(.34,1.56,.64,1) 1.5s both}.dio-breathe{transform-origin:50% 100%;animation:dio-breathe 1.1s ease-in-out 2.2s infinite alternate}.dio-press{transition:transform 90ms ease-out}.dio-button:active .dio-press{transform:translateY(10px)}@keyframes dio-spin{to{transform:rotate(1turn)}}@keyframes dio-rock{0%{transform:rotate(-7deg)}to{transform:rotate(7deg)}}@keyframes dio-gallop{0%{transform:translateY(-14px)}to{transform:translateY(12px)}}@keyframes dio-ride{0%{offset-distance:0}to{offset-distance:100%}}@keyframes dio-twinkle{0%,to{opacity:.9}50%{opacity:.25}}@keyframes dio-drift{0%{transform:translateX(-140px)}to{transform:translateX(140px)}}@keyframes dio-sweep-left{0%{transform:rotate(-38deg)}to{transform:rotate(8deg)}}@keyframes dio-sweep-right{0%{transform:rotate(38deg)}to{transform:rotate(-8deg)}}@keyframes dio-halo{0%{transform:scale(.94);opacity:.8}to{transform:scale(1.06);opacity:1}}@keyframes dio-chase{0%,to{opacity:.45}6%{opacity:1}22%{opacity:.45}}@keyframes dio-flicker{0%{opacity:1}7%{opacity:.15}9%{opacity:1}11%{opacity:.2}14%{opacity:1}52%{opacity:.3}55%{opacity:1}80%{opacity:.1}81%{opacity:1}}@keyframes dio-flicker-soft{0%{opacity:1}41%{opacity:.6}43%{opacity:1}77%{opacity:.75}78%{opacity:1}}@keyframes dio-power{0%{opacity:.08}18%{opacity:1}24%{opacity:.1}38%{opacity:1}44%{opacity:.3}58%{opacity:1}}@keyframes dio-glow{0%{opacity:.8}to{opacity:1}}@keyframes dio-neon{0%{opacity:1}61%{opacity:.4}62%{opacity:1}64%{opacity:.5}65%{opacity:1}}@keyframes dio-neon-bad{0%{fill-opacity:1;stroke-opacity:1}30%{fill-opacity:.1;stroke-opacity:.15}34%{fill-opacity:1;stroke-opacity:1}38%{fill-opacity:.1;stroke-opacity:.15}70%{fill-opacity:1;stroke-opacity:1}}@keyframes dio-drop{0%{transform:translateY(-520px)}55%{transform:translateY(22px)}72%{transform:translateY(-10px)}86%{transform:translateY(4px)}to{transform:translateY(0)}}@keyframes dio-swing{0%{transform:rotate(-1.6deg)}to{transform:rotate(1.6deg)}}@keyframes dio-flag{0%{transform:scaleX(1) skewY(0deg)}to{transform:scaleX(.82) skewY(7deg)}}@keyframes dio-flutter{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes dio-dangle{0%{transform:rotate(-12deg)}to{transform:rotate(10deg)}}@keyframes dio-rise{0%{transform:translate(0);opacity:0}6%{opacity:1}30%{transform:translate(-26px,-240px)}60%{transform:translate(22px,-500px)}88%{opacity:1}to{transform:translate(-10px,-820px);opacity:0}}@keyframes dio-orbit{to{transform:rotate(1turn)}}@keyframes dio-flap{0%{transform:scaleY(1)}to{transform:scaleY(.2)}}@keyframes dio-shimmer{0%{transform:scaleX(.85);opacity:.7}to{transform:scaleX(1.15);opacity:1}}@keyframes dio-fog{0%{transform:translateX(-260px)}to{transform:translateX(260px)}}@keyframes dio-firefly{0%,to{transform:translate(0);opacity:0}20%{opacity:1}50%{transform:translate(34px,-46px);opacity:.8}75%{transform:translate(-18px,-70px);opacity:1}95%{opacity:0}}@keyframes dio-pop{0%{transform:scale(0)}60%{transform:scale(1.12)}80%{transform:scale(.95)}to{transform:scale(1)}}@keyframes dio-breathe{0%{transform:scale(1.035,.965)}to{transform:scale(.985,1.02)}}@keyframes dio-grain{0%{transform:translate(0)}33%{transform:translate(-40px,25px)}66%{transform:translate(30px,-35px)}}@keyframes dio-curtain{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.dio,.dio *{animation:none!important;transition:none!important}.dio-layer{transform:none}}:is(.dio,.entrance){--font-marquee:var(--font-sign);--font-neon:var(--font-print)}:is(.dio,.entrance) .font-marquee{font-family:var(--font-marquee);letter-spacing:.03em}html[data-look=dark-carnival] :is(.dio,.entrance){--ink-900:#120d0b;--ink-700:#2a1f1a;--ink-500:#5e4e44;--canvas-card:#e6dccb;--parchment:#a89a7c;--paper:#ddd3bf;--enamel:#7a0f16;--enamel-700:#4a080d;--enamel-light:#a31d24;--bulb:#dcb25a;--brass:#7d6433;--midway:#2c4a36;--night:#08060b;--sky-top:#050408;--sky-low:#120b14;--dusk:#3a0f14;--dusk-violet:#150a18;--shadow:#020103;--wood:#3d2819;--wood-dark:#1c120b;--stripe:#b8ad99;--stone:#5e5a55;--stone-dark:#33302c;--grass:#1a241a;--water:#2f4f55;--candy:#7d3b4c;--rust:#6b2c14;--rust-light:#93431e;--neon:#b3122b;--neon-cool:#6fd6a0}html[data-look=after-hours] :is(.dio,.entrance){--ink-900:#151111;--ink-700:#2a211b;--ink-500:#6a5a4c;--canvas-card:#efe6d2;--parchment:#c9bb98;--paper:#f1e8d6;--enamel:#8e1f2a;--enamel-700:#5c141c;--enamel-light:#b23a3f;--bulb:#ffb347;--brass:#a8813e;--midway:#2a6b57;--night:#0b0e17;--sky-top:#07080f;--sky-low:#141a2b;--dusk:#4a1d34;--dusk-violet:#1a1830;--shadow:#030407;--wood:#5b3a24;--wood-dark:#2d1d13;--stripe:#d6ccb8;--stone:#7f7a70;--stone-dark:#45423c;--grass:#1c2f23;--water:#1e7f8c;--candy:#d6336c;--rust:#7a3a1f;--rust-light:#b0572e;--neon:#ff2e88;--neon-cool:#28e0ff;--font-neon:var(--font-neon-tube)}html[data-look=arcade] :is(.dio,.entrance){--ink-900:#0c0a1a;--ink-700:#231d3d;--ink-500:#5c5680;--canvas-card:#f1eefc;--parchment:#d8d2f0;--paper:#fbf8ff;--enamel:#ff3b5c;--enamel-700:#b3203f;--enamel-light:#ff6f86;--bulb:#ffd23f;--brass:#c9a227;--midway:#00d18f;--night:#0a0718;--sky-top:#05030d;--sky-low:#140a2e;--dusk:#3d0e5c;--dusk-violet:#1a0b36;--shadow:#020106;--wood:#3c2a52;--wood-dark:#1d1430;--stripe:#ece8fa;--stone:#4a4566;--stone-dark:#2a2640;--grass:#103b3a;--water:#00c2ff;--candy:#ff4fd8;--rust:#6b3b52;--rust-light:#9a5475;--neon:#ff4fd8;--neon-cool:#00e5ff}.dio-look,.entrance-look{position:absolute;inset:0;pointer-events:none}html[data-look=dark-carnival] .dio-look{background:radial-gradient(ellipse 80% 35% at 50% 70%,color-mix(in srgb,var(--neon) 14%,transparent),transparent 70%),linear-gradient(to bottom,color-mix(in srgb,var(--shadow) 35%,transparent),transparent 40%)}html[data-look=dark-carnival] .dio-grain{opacity:.26}html[data-look=dark-carnival] .dio-vignette{background:radial-gradient(ellipse 58% 60% at 50% 50%,transparent 35%,var(--shadow) 100%)}html[data-look=after-hours] .dio-look{background:radial-gradient(ellipse 60% 40% at 18% 100%,color-mix(in srgb,var(--neon) 16%,transparent),transparent 70%),radial-gradient(ellipse 60% 40% at 85% 100%,color-mix(in srgb,var(--neon-cool) 12%,transparent),transparent 70%),linear-gradient(to bottom,transparent 35%,color-mix(in srgb,var(--dusk) 22%,transparent) 60%,transparent 85%)}html[data-look=after-hours] .dio-vignette{background:radial-gradient(ellipse 65% 65% at 50% 50%,transparent 40%,var(--shadow) 110%)}html[data-look=arcade] :is(.dio-look,.entrance-look){background:repeating-linear-gradient(to bottom,color-mix(in srgb,var(--shadow) 42%,transparent) 0 1px,transparent 1px 3px),radial-gradient(ellipse 75% 70% at 50% 50%,transparent 60%,color-mix(in srgb,var(--shadow) 70%,transparent) 100%);box-shadow:inset 0 0 120px color-mix(in srgb,var(--neon-cool) 12%,transparent);animation:look-flicker 4s steps(1) infinite}html[data-look-family=own] .dio-drop{animation-name:look-drop}html[data-look-family=own] .dio-pop{animation-name:look-power-in}html[data-look-family=own] .dio-breathe{animation:none}@keyframes look-drop{0%{transform:translateY(-520px)}72%{transform:translateY(0)}80%{transform:translateY(5px)}88%{transform:translateY(-1px)}to{transform:translateY(0)}}@keyframes look-power-in{0%{opacity:0}20%{opacity:1}26%{opacity:.15}42%{opacity:1}48%{opacity:.4}60%,to{opacity:1}}@keyframes look-flicker{0%,to{opacity:1}48%{opacity:.93}49%{opacity:1}73%{opacity:.96}}@media (prefers-reduced-motion:reduce){:is(.dio-look,.entrance-look),:is(.dio-look,.entrance-look):after{animation:none!important}}.look-switcher{position:absolute;left:12px;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100vw - 24px);padding:6px;border-radius:10px;border:1px solid color-mix(in srgb,var(--paper) 18%,transparent);background:color-mix(in srgb,var(--shadow) 78%,transparent);color:var(--paper);font-size:12px;pointer-events:auto}.look-switcher-label{padding:0 6px;opacity:.7;font-weight:600}.look-switcher button{padding:5px 10px;border-radius:7px;color:var(--paper);font-weight:600;cursor:pointer}.look-switcher button:hover{background:color-mix(in srgb,var(--paper) 12%,transparent)}.look-switcher button[aria-pressed=true]{background:var(--bulb);color:var(--ink-900)}.look-switcher button:focus-visible{outline:2px solid var(--bulb);outline-offset:2px}