*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}.webgl{outline:none;width:100%;height:100%;position:fixed;top:0;left:0}#loader{clip-path:inset(0);z-index:100;pointer-events:all;background:#000;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loader__bar-container{background:#222;height:3px;position:absolute;top:50%;left:6%;right:6%;transform:translateY(-50%)}.loader__bar{background:#fff;width:0%;height:100%;transition:width .3s}.loader__percent{color:#fff;letter-spacing:.2em;font-size:.75rem;position:absolute;top:calc(50% + 16px);left:6%}.prompt{color:#fff;letter-spacing:.25em;text-transform:uppercase;opacity:0;pointer-events:none;white-space:nowrap;z-index:10;font-family:Satoshi,sans-serif;font-size:.85rem;transition:opacity .4s;position:fixed;bottom:12%;left:50%;transform:translate(-50%)}.prompt.visible{opacity:1}.detail-card{opacity:0;pointer-events:none;z-index:10;background:#fff;flex-direction:column;justify-content:space-between;gap:1.5rem;width:320px;padding:2rem;font-family:Satoshi,sans-serif;transition:opacity .4s;display:flex;position:fixed;top:50%;left:3%;transform:translateY(-50%)}.detail-card.visible{opacity:1;pointer-events:all}.detail-card__title{color:#111;margin-bottom:.75rem;font-size:1.4rem;font-weight:700}.detail-card__artist,.detail-card__year,.detail-card__dimensions{color:#444;margin-bottom:.25rem;font-size:.85rem;font-weight:400}.detail-card__description{color:#555;margin-top:.75rem;font-size:.85rem;font-weight:300;line-height:1.6}.detail-card__escape{letter-spacing:.15em;text-transform:uppercase;color:#999;text-align:center;font-family:sans-serif;font-size:.75rem}.detail-card__exit-btn,#joystick-zone{display:none}@media (width<=768px){.detail-card{border-radius:16px 16px 0 0;gap:1rem;width:100%;max-height:55vh;padding:1.5rem;transition:transform .4s,opacity .4s;inset:auto 0 0;overflow-y:auto;transform:translateY(100%)}.detail-card.visible{opacity:1;transform:translateY(0)}.detail-card__title{font-size:1.1rem}.detail-card__exit-btn{color:#fff;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:#111;border:none;border-radius:4px;width:100%;margin-top:.5rem;padding:.75rem;font-family:Satoshi,sans-serif;font-size:.8rem;display:block}.detail-card__escape{letter-spacing:.15em;text-transform:uppercase;color:#999;text-align:center;font-family:sans-serif;font-size:.75rem}.prompt{font-size:.75rem;bottom:28%}#joystick-zone{z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;bottom:3rem;left:2rem}#joystick-base{touch-action:none;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;width:110px;height:110px;position:relative}#joystick-knob{pointer-events:none;background:#ffffff59;border-radius:50%;width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}.detail-card__escape--mobile{display:none}.detail-card__look-hint{letter-spacing:.08em;color:#ccc;text-align:center;margin-top:-.75rem;font-family:Satoshi,sans-serif;font-size:.65rem}@media (width<=768px){.detail-card__look-hint,.detail-card__escape{display:none}.detail-card__escape--mobile{letter-spacing:.08em;color:#bbb;text-align:center;text-transform:none;font-family:sans-serif;font-size:.65rem;display:block}.detail-card__escape{display:none}.detail-card__escape--mobile{letter-spacing:.15em;text-transform:uppercase;color:#999;text-align:center;font-family:sans-serif;font-size:.75rem;display:block}}
