:root{--bg-color:#050505;--text-color:#fff;--accent-color:#f36;--glass-bg:#0a0a0a66;--glass-border:#ffffff14;--font-main:"Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow:hidden}#webgl-canvas{z-index:1;outline:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.loading-screen{background-color:var(--bg-color);z-index:100;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity 1s ease-in-out;display:flex;position:fixed;top:0;left:0}.loading-screen.hidden{opacity:0;pointer-events:none}.loader{border:2px solid var(--glass-border);border-top-color:var(--accent-color);border-radius:50%;width:40px;height:40px;margin-bottom:20px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen p{letter-spacing:2px;text-transform:uppercase;color:#fff9;font-size:.9rem}.ui-layer{z-index:10;pointer-events:none;flex-direction:column;justify-content:space-between;width:100vw;height:100vh;padding:40px 60px;display:flex;position:fixed;top:0;left:0}header{pointer-events:auto;justify-content:space-between;align-items:center;display:flex}.logo{letter-spacing:1px;font-size:1.5rem;font-weight:800}.logo .dot{color:var(--accent-color)}nav{gap:30px;display:flex}nav a{color:#ffffff80;text-transform:uppercase;letter-spacing:1px;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .3s;position:relative}nav a:hover,nav a.active{color:#fff}nav a.active:after{content:"";background-color:var(--accent-color);transform-origin:0;width:100%;height:2px;animation:.3s forwards scaleIn;position:absolute;bottom:-6px;left:0}@keyframes scaleIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.content{pointer-events:auto;justify-content:space-between;align-items:flex-end;display:flex}.controls{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:40px;align-items:center;gap:20px;padding:15px 25px;display:flex}.nav-btn{color:#fff;cursor:pointer;background:#ffffff0d;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.nav-btn:hover{background:#ffffff26;transform:scale(1.1)}.nav-btn svg{width:20px;height:20px}.progress{background:#ffffff1a;border-radius:2px;width:100px;height:2px;overflow:hidden}.progress-bar{background:var(--accent-color);width:0%;height:100%;transition:width .5s cubic-bezier(.25,1,.5,1)}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.modal{z-index:50;-webkit-backdrop-filter:blur(8px);opacity:1;pointer-events:auto;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .4s,visibility .4s;display:flex;position:fixed;top:0;left:0}.modal.hidden{opacity:0;visibility:hidden;pointer-events:none}.modal-content{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;width:90%;max-width:500px;padding:50px;transition:transform .4s cubic-bezier(.2,.8,.2,1);position:relative;transform:translateY(0)}.modal.hidden .modal-content{transform:translateY(40px)}.modal-content h2{color:#fff;margin-bottom:20px;font-size:2rem}.modal-content p{color:#ffffffb3;margin-bottom:30px;line-height:1.6}.close-btn{color:#ffffff80;cursor:pointer;background:0 0;border:none;font-size:24px;transition:color .3s;position:absolute;top:20px;right:25px}.close-btn:hover{color:#fff}.contact-form{flex-direction:column;gap:15px;display:flex}.contact-form input,.contact-form textarea{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:12px 15px;font-family:inherit;font-size:1rem;transition:border-color .3s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-color)}.contact-form textarea{resize:vertical}.submit-btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:10px;padding:12px;font-size:1rem;font-weight:600;transition:background .3s}.submit-btn:hover{background:#e62e5c}@media (width<=768px){.ui-layer{padding:20px}.content{flex-direction:column;align-items:flex-start;gap:20px}.poster-info{max-width:100%}}
