:root{color-scheme:dark;font:14px system-ui,sans-serif;color:#f4e9cf;background:#131c1a;--gold:#e5ba78;--glass:#111c1bec;--line:#dec28d50}*{box-sizing:border-box}body{margin:0}#exhibit{position:relative;isolation:isolate;min-height:560px;height:100svh;overflow:hidden}#stage,canvas{width:100%;height:100%;display:block}#stage{position:absolute;inset:0;z-index:-2}#stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#101a1990,transparent 27%,transparent 62%,#101a19a0)}header,aside,footer,.badge,#parts,#status{position:absolute}header{top:28px;left:34px;text-shadow:0 2px 12px #101715}h1,h2{font-family:Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(48px,8vw,96px);line-height:1}h1 span{font-size:.28em;margin-left:.65em;color:var(--gold)}header p{margin:8px 0}.kicker,.badge{font-size:10px;letter-spacing:.19em;color:var(--gold);font-weight:700}b{color:var(--gold)}.badge{right:32px;top:34px;background:var(--glass);padding:10px;border:1px solid var(--line)}i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b7c98b;margin-right:6px}aside{right:32px;bottom:88px;width:280px;background:var(--glass);border:1px solid var(--line);border-top:2px solid var(--gold);padding:15px 17px;max-height:42%;overflow:auto}h2{font-size:25px;margin-top:4px}p{line-height:1.45}summary,a{color:var(--gold)}summary{cursor:pointer}ul{padding-left:18px}footer{bottom:25px;left:34px;right:32px;display:flex;align-items:center;justify-content:space-between;gap:10px}.actions,#parts{display:flex;gap:6px;flex-wrap:wrap}button{font:inherit;color:inherit;background:var(--glass);border:1px solid var(--line);padding:8px 12px;cursor:pointer;border-radius:4px}button:hover,button[aria-pressed=true]{background:#3c3528;border-color:var(--gold)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}#parts{bottom:88px;left:34px;max-width:calc(100% - 365px)}#status{top:46%;left:50%;transform:translateX(-50%);padding:12px;background:var(--glass)}.hint{font-size:12px;text-shadow:0 1px 5px #000}
@media(max-width:720px){header{top:14px;left:14px}.badge{display:none}aside{bottom:107px;left:14px;right:14px;width:auto;max-height:27%;padding:9px 12px;font-size:12px}aside p{margin:4px 0}h2{font-size:21px}#parts{left:14px;right:14px;bottom:67px;max-width:none;flex-wrap:nowrap;overflow-x:auto;padding:2px}footer{bottom:13px;left:14px;right:14px;display:block}.hint{margin-bottom:4px}button{font-size:12px;padding:6px 9px}}
