*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#080f13;color:#c8cec9}body{font:14px/1.7 Georgia,serif}main{min-height:100svh;display:flex;flex-direction:column}header{display:flex;justify-content:space-between;gap:16px;padding:26px 5vw;font:10px/1.5 system-ui,sans-serif;letter-spacing:.19em;color:#8d9c9a;z-index:2}.room{position:relative;display:grid;place-items:center;min-height:560px;flex:1;overflow:hidden;background:radial-gradient(ellipse at 50% 86%,#18252b 0%,#0b141a 44%,#080f13 73%);touch-action:none}.floor{position:absolute;width:78%;height:2px;background:linear-gradient(90deg,transparent,#43505255,transparent);top:88%}.ghost{--light:0;--words:0;width:min(340px,65vw);position:relative;filter:drop-shadow(0 8px 22px #0008);transform:rotate(-2deg);transition:transform .5s}.ghost svg{display:block;width:100%;height:auto}.shadow{fill:#0008}.inside-light{opacity:var(--light)}.words{fill:#fff7db;font:italic 27px Georgia,serif;letter-spacing:1px;opacity:var(--words);paint-order:stroke;stroke:#b9773144;stroke-width:2}.mobile-note{position:absolute;bottom:14px;font:10px system-ui,sans-serif;color:#73817e;letter-spacing:.04em}footer{padding:22px 5vw 30px;display:grid;grid-template-columns:1fr auto;column-gap:28px;color:#7d908d;font-size:12px}footer p{margin:0}.instruction{font-style:italic;color:#bcc7bc}details{grid-column:1/-1;max-width:580px;margin-top:10px}summary{cursor:pointer;color:#a0aea7}details p{margin-top:8px}@media(max-width:600px){header{font-size:8px;padding:18px 20px}.room{min-height:470px}.ghost{width:285px}footer{display:block;padding:20px}.instruction{margin-top:8px}}@media(prefers-reduced-motion:reduce){.ghost{transition:none}}
