#crosshair{position:absolute;top:50%;left:50%;width:10px;height:10px;border-radius:50%;border:2px solid white;transform:translate(-50%,-50%);z-index:10;pointer-events:none;opacity:.5}#loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity .5s ease,visibility .5s ease}#loading-screen.hidden{opacity:0;visibility:hidden}.loading-content{text-align:center;color:#fff}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-content p{font-size:1.2rem;font-weight:300;letter-spacing:.1em;opacity:.8}html{overflow-y:hidden;width:100%;height:100%;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;min-width:100%;height:100vh;overflow-y:hidden;overflow-x:auto;background-color:#f0f0f0;font-family:Inter,sans-serif;-webkit-overflow-scrolling:touch}body.loaded #ui,body.loaded #canvas-container{opacity:1;visibility:visible}#canvas-container{width:100vw;height:100vh;max-width:100vw;max-height:100vh;position:fixed;top:0;left:0;z-index:1;overflow:hidden}#canvas-container canvas{display:block;width:100%!important;height:100%!important}#ui{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none}#details-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;pointer-events:auto;z-index:20;opacity:0;animation:fadeIn .3s ease forwards}@keyframes fadeIn{to{opacity:1}}#details-modal .content{background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#1a1a1a;padding:3rem;border-radius:24px;border:1px solid rgba(255,255,255,.3);box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;text-align:center;transform:scale(.9);animation:scaleIn .3s ease forwards}@keyframes scaleIn{to{transform:scale(1)}}#details-modal h2{font-size:2rem;font-weight:600;margin-bottom:1rem;letter-spacing:-.02em}#details-modal p{font-size:1.1rem;line-height:1.6;color:#666;margin-bottom:2rem}#details-modal button{margin-top:1rem;padding:.75rem 2rem;background:#1a1a1a;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:.95rem;letter-spacing:.05em;transition:all .2s ease;box-shadow:0 4px 12px #00000026}#details-modal button:hover{background:#333;transform:translateY(-2px);box-shadow:0 6px 20px #00000040}#details-modal button:active{transform:translateY(0)}.title{position:absolute;top:2rem;left:2rem;color:#000;pointer-events:auto;z-index:10}.title h1{font-weight:300;letter-spacing:.2rem;font-size:1.5rem;text-transform:uppercase}#scroll-hint{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);color:#333;text-align:center;pointer-events:none;transition:opacity .5s ease;z-index:10}#scroll-hint p{font-size:1.2rem;font-weight:300;letter-spacing:.05em;text-transform:uppercase;animation:pulse 2s infinite ease-in-out}#scroll-hint.scrolled{opacity:0}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}@media screen and (max-width:768px){.title{top:1rem;left:1rem}.title h1{font-size:1.5rem;letter-spacing:.1rem}#details-modal .content{padding:2rem 1.5rem;border-radius:16px;max-width:90%}#details-modal h2{font-size:1.8rem;margin-bottom:.75rem}#details-modal p{font-size:1.2rem;margin-bottom:1.5rem}#details-modal button{padding:.75rem 1.75rem;font-size:1.1rem}}@media screen and (max-width:480px){.title h1{font-size:1.2rem;letter-spacing:.08rem}#details-modal .content{padding:1.5rem 1rem;max-width:95%}#details-modal h2{font-size:1.5rem}#details-modal p{font-size:1.1rem;line-height:1.5}#details-modal button{padding:.7rem 1.5rem;font-size:1rem}}@media screen and (max-height:500px)and (orientation:landscape){.title{top:.5rem;left:.5rem}.title h1{font-size:.9rem}#details-modal .content{padding:1.5rem;max-height:90vh;overflow-y:auto}}
