:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}body{min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--gold: #C5A059;--gold-dim: rgba(197,160,89,.35);--gold-active: rgba(197,160,89,.9);--gold-glow: rgba(197,160,89,.12);--bg-modal: #1A1A1A;--bg-panel: rgba(26,26,24,.92);--font-display: "Playfair Display", Georgia, serif;--font-ui: "Inter", system-ui, sans-serif}.modal-texture{position:relative}.modal-texture:before{content:"";position:absolute;inset:0;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.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;border-radius:inherit;z-index:0}.modal-texture>*{position:relative;z-index:1}@keyframes hintBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mobilePauseIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes tourBtnPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes chevronFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes nudgeGlow{0%,to{box-shadow:0 2px 8px #0009}50%{box-shadow:0 0 16px #60a5facc,0 0 6px #60a5fa80}}@keyframes joystickMove{0%{transform:translate(0)}15%{transform:translateY(-14px)}30%{transform:translate(0)}45%{transform:translate(14px)}60%{transform:translate(0)}75%{transform:translate(-14px)}90%,to{transform:translate(0)}}@keyframes handMove{0%{transform:translate(0)}15%{transform:translateY(-14px)}30%{transform:translate(0)}45%{transform:translate(14px)}60%{transform:translate(0)}75%{transform:translate(-14px)}90%,to{transform:translate(0)}}@keyframes cameraTravel{0%{transform:translate(0)}25%{transform:translate(30px,-20px)}50%{transform:translate(60px,10px)}75%{transform:translate(30px,30px)}to{transform:translate(0)}}@keyframes pinPulse{0%,to{opacity:.35;transform:scaleY(1)}50%{opacity:.8;transform:scaleY(1.15)}}@keyframes pathDash{0%{stroke-dashoffset:200}to{stroke-dashoffset:0}}.app{width:100vw;height:100vh;overflow:hidden;position:relative}.loader-screen{position:fixed;inset:0;background:#0a0a0cfa;display:flex;align-items:center;justify-content:center;z-index:100;transition:opacity .6s ease-out}.loader-screen--out{opacity:0;pointer-events:none}.loader-content{text-align:center;max-width:320px;width:90%}.loader-title{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1.5rem;font-weight:600;color:#f0f0f0;margin:0 0 1.5rem;letter-spacing:.02em}.loader-bar-wrap{height:6px;background:#ffffff1f;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.loader-bar{height:100%;background:linear-gradient(90deg,#7c6ee8,#a89cf5);border-radius:3px;transition:width .2s ease}.loader-percent{font-size:.875rem;color:#fff9}.loader-enter{margin-top:1.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;color:#0a0a0c;background:#f0f0f0;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.loader-enter:hover{background:#fff;transform:scale(1.02)}.loader-enter:active{transform:scale(.98)}.artwork-travel-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .65rem;font-size:.75rem;font-family:system-ui,sans-serif;color:#fff;background:#000000a6;border:1px solid rgba(255,255,255,.25);border-radius:6px;cursor:pointer;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s,transform .1s}.artwork-travel-btn:hover{background:#000000d9;transform:scale(1.05)}.artwork-travel-btn-icon{font-size:.9em}.close-view-ui{position:fixed;top:1rem;left:1rem;display:flex;flex-direction:column;gap:.25rem;align-items:flex-start;pointer-events:none}.close-view-back-btn{pointer-events:auto;padding:.5rem 1rem;font-size:.9rem;font-family:system-ui,sans-serif;color:#111;background:#ffffffe6;border:none;border-radius:6px;cursor:pointer;box-shadow:0 2px 8px #0003}.close-view-back-btn:hover{background:#fff}.close-view-hint{font-size:.7rem;color:#ffffffb3}@keyframes bounce-down{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes rotate-hint{0%{transform:rotate(0)}40%{transform:rotate(90deg)}60%{transform:rotate(90deg)}to{transform:rotate(0)}}.orientation-warning{position:fixed;inset:0;z-index:2147483647;background:#000;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.orientation-warning__icon{font-size:5rem;line-height:1;display:inline-block;animation:rotate-hint 2s ease-in-out infinite}.orientation-warning__title{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:.02em}.orientation-warning__subtitle{margin:0;font-size:1rem;color:#fff9}#stats{z-index:999999!important;position:fixed!important;top:0!important;left:0!important}
