#guide { position:fixed; z-index:50; right:max(18px,env(safe-area-inset-right)); bottom:max(10px,env(safe-area-inset-bottom)); width:auto; height:clamp(330px,47svh,500px); aspect-ratio:960/1222; display:block; margin:0; padding:0; border:0; background:transparent; cursor:pointer; pointer-events:none; opacity:0; transform:none; transition:opacity .34s ease,filter .24s ease; filter:drop-shadow(0 12px 18px rgba(24,18,12,.22)); -webkit-tap-highlight-color:transparent; }
#guide.is-visible { opacity:1; pointer-events:auto; transform:none; }
#guide[data-talking-head-scientist="newton"] { aspect-ratio:888/1176; }
#guide[data-talking-head-scientist="euler"] { aspect-ratio:960/1240; }
#guide[data-talking-head-scientist="cauchy"] { aspect-ratio:960/1316; }
#hotspots { z-index:52; pointer-events:none; }
#hotspots .portal { pointer-events:auto; }
#guide:focus-visible { outline:none; }
#guide:hover { filter:drop-shadow(0 20px 32px rgba(50,36,19,.32)) saturate(1.04); }
#guide-canvas,#guide-v2-canvas,#guide-video { position:absolute; inset:0; width:100%; height:100%; display:block; pointer-events:none; }
#guide-video { z-index:1; object-fit:fill; object-position:center bottom; transition:opacity .2s ease; -webkit-mask:center bottom/100% 100% no-repeat; mask:center bottom/100% 100% no-repeat; }
#guide[data-talking-head-scientist="gauss"] #guide-video { -webkit-mask-image:url("talking-head/masks/gauss.png?v=20260814-1"); mask-image:url("talking-head/masks/gauss.png?v=20260814-1"); }
#guide[data-talking-head-scientist="newton"] #guide-video { -webkit-mask-image:url("talking-head/masks/newton.png?v=20260814-1"); mask-image:url("talking-head/masks/newton.png?v=20260814-1"); }
#guide[data-talking-head-scientist="euler"] #guide-video { -webkit-mask-image:url("talking-head/masks/euler.png?v=20260814-1"); mask-image:url("talking-head/masks/euler.png?v=20260814-1"); }
#guide[data-talking-head-scientist="cauchy"] #guide-video { -webkit-mask-image:url("talking-head/masks/cauchy.png?v=20260814-1"); mask-image:url("talking-head/masks/cauchy.png?v=20260814-1"); }
#guide[data-talking-head-state="pending"] #guide-video,#guide[data-talking-head-state="unloaded"] #guide-video,#guide[data-talking-head-state="error"] #guide-video { opacity:0; }
#guide-v2-canvas { opacity:0; transition:opacity .35s ease; }
#guide[data-guide-v2="ready"] #guide-canvas { opacity:0; }
#guide[data-guide-v2="ready"] #guide-v2-canvas { opacity:1; }
#guide-hint { display:none !important; }
#guide-credit { position:fixed; z-index:51; right:10px; bottom:6px; color:rgba(255,255,255,.54); font:500 9px/1.2 sans-serif; text-decoration:none; }
#guidePrompt { display:none !important; }
@media (max-width:700px) { #guide { right:max(4px,env(safe-area-inset-right)); bottom:max(4px,env(safe-area-inset-bottom)); width:auto; height:clamp(150px,23svh,208px); } #guide-credit { display:none; } }
@media (prefers-reduced-motion:reduce) { #guide { transition:none; } }

.museum-scene-nav { position:fixed; z-index:54; left:50%; bottom:max(16px,env(safe-area-inset-bottom)); display:flex; gap:8px; transform:translateX(-50%); pointer-events:auto; }
.museum-scene-nav[hidden] { display:none !important; }
.museum-scene-nav__button { min-height:44px; min-width:108px; padding:10px 16px; border:1px solid rgba(25,31,38,.16); border-radius:999px; color:#20252b; background:rgba(255,255,255,.96); box-shadow:0 8px 24px rgba(13,19,27,.16); font:600 14px/1.2 "Microsoft YaHei","PingFang SC",system-ui,sans-serif; cursor:pointer; transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease; }
.museum-scene-nav__button:hover,.museum-scene-nav__button:focus-visible { outline:none; transform:translateY(-2px); box-shadow:0 10px 28px rgba(13,19,27,.22); }
.museum-scene-nav__button:disabled { opacity:.58; cursor:wait; transform:none; }
@media (min-width:761px) { .museum-scene-nav--newton { left:max(18px,env(safe-area-inset-left)); transform:none; } }
@media (max-width:760px) { .museum-scene-nav { left:max(10px,env(safe-area-inset-left)); bottom:max(10px,env(safe-area-inset-bottom)); flex-direction:column; gap:6px; transform:none; } .museum-scene-nav__button { min-width:94px; min-height:42px; padding:9px 12px; font-size:13px; } }
@media (prefers-reduced-motion:reduce) { .museum-scene-nav__button { transition:none; } }
