@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Exo:wght@300;400;600&family=Roboto:wght@400;500;700&display=swap");:root{--vs-accent:rgba(0,255,200,.35);--vs-accent-hover:rgba(0,255,200,.6);--vs-scrollbar-size:6px}*{box-sizing:border-box}.vs-scrollbar{scrollbar-color:var(--vs-accent) transparent;scrollbar-width:thin}.vs-scrollbar::-webkit-scrollbar{height:var(--vs-scrollbar-size);width:var(--vs-scrollbar-size)}.vs-scrollbar::-webkit-scrollbar-track{background:transparent}.vs-scrollbar::-webkit-scrollbar-thumb{background:var(--vs-accent);border-radius:10px;-webkit-transition:background .2s ease;transition:background .2s ease}.vs-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--vs-accent-hover)}.vs-toast{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(0,255,200,.08);border:1px solid var(--vs-accent);border-radius:8px;color:var(--vs-accent-hover);font-size:12px;line-height:1.3;opacity:0;padding:6px 12px;pointer-events:none;position:fixed;right:20px;top:20px;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease;z-index:10000}.vs-toast.show{opacity:1;transform:translateY(0)}body,html{background:#323232;color:#fff;font-family:Orbitron,Exo,monospace;font-size:14px;height:100%;line-height:1.4;margin:0;overflow:hidden;padding:0}body:before{background:linear-gradient(135deg,#323232,#404040);content:"";z-index:-2}#starfield,body:before{height:100vh;left:0;pointer-events:none;position:fixed;top:0;width:100vw}#starfield{animation:twinkle 20s linear infinite;background:radial-gradient(2px 2px at 20px 30px,hsla(0,0%,78%,.4),transparent),radial-gradient(2px 2px at 40px 70px,hsla(0,0%,71%,.3),transparent),radial-gradient(2px 2px at 90px 40px,hsla(0,0%,86%,.5),transparent),radial-gradient(2px 2px at 130px 80px,hsla(0,0%,75%,.4),transparent);background-repeat:repeat;background-size:200px 100px;z-index:-1}@keyframes twinkle{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.code-editor-container{overflow:hidden}.code-editor-code-viewer,.code-editor-container{background:rgba(35,35,35,.9)}.code-editor-ai-assistant{background:rgba(45,45,45,.8);border-radius:6px;overflow:hidden;width:300px}#preview-iframe{border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.3);margin-top:1rem}@media (max-width:1200px){.code-editor-container{flex-direction:column;height:auto}#files-pane,.code-editor-ai-assistant{max-width:none;width:100%}}#map-canvas-host{background:#1f2327;box-shadow:inset 0 0 0 1px #343a40;overflow:hidden;position:relative}#map-canvas-host,#map-canvas-host canvas{border-radius:14px;height:100%;width:100%}#map-canvas-host canvas{display:block;image-rendering:auto}.map-controls{display:flex;gap:.75rem;position:absolute;right:1.5rem;top:1.5rem;z-index:10}.map-legend{background:rgba(45,45,45,.8);bottom:1.5rem;box-shadow:0 4px 15px rgba(0,0,0,.3);left:1.5rem;padding:1rem;z-index:10}#sphere-info-box,.map-legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;font-size:.8rem;position:absolute}#sphere-info-box{background:rgba(45,45,45,.9);box-shadow:0 4px 15px rgba(0,0,0,.5);display:none;padding:.75rem;pointer-events:none;z-index:20}.glassy-box{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:rgba(50,50,50,.3);border:1px solid hsla(0,0%,100%,.15);border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 20px hsla(0,0%,100%,.08);color:#fff}.welcome-container{background:rgba(55,55,55,.95);border:1px solid hsla(0,0%,100%,.15);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.5);left:50%;max-width:95vw;min-width:480px;padding:3rem 2.5rem 2.5rem;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:2}h1{color:#0fc;font-family:Orbitron,monospace;font-size:1.8rem;font-weight:700;letter-spacing:2px;margin-bottom:2rem;text-shadow:0 0 10px rgba(0,255,204,.5),0 0 20px rgba(0,255,204,.3),0 0 30px rgba(0,255,204,.1);text-transform:uppercase}.form-toggle{margin-bottom:1.5rem}.form-toggle button{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:500;letter-spacing:.5px;margin:0 .5rem;padding:.6rem 1.2rem;text-transform:uppercase;transition:all .3s ease}.form-toggle button:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3);transform:translateY(-1px)}.form-toggle button.active{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.4)}.auth-form{display:flex;flex-direction:column;gap:.8rem}.auth-form input{background:rgba(45,45,45,.8);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;font-family:Exo,sans-serif;font-size:14px;padding:.6rem;transition:all .3s ease}.auth-form input:focus{border-color:hsla(0,0%,100%,.4);box-shadow:0 0 8px hsla(0,0%,100%,.1);outline:none}.auth-form input::-moz-placeholder{color:hsla(0,0%,100%,.5)}.auth-form input::placeholder{color:hsla(0,0%,100%,.5)}.input-group{align-items:center;background:rgba(45,45,45,.8);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;display:flex;margin-bottom:.8rem;transition:all .3s ease}.input-group:focus-within{border-color:hsla(0,0%,100%,.4);box-shadow:0 0 8px hsla(0,0%,100%,.1)}.input-icon{color:hsla(0,0%,100%,.7);font-size:1rem;opacity:.8;padding:0 .8rem}.input-group input{background:transparent;border:none;color:#fff;flex:1;font-weight:400;letter-spacing:.3px;outline:none;padding:.6rem .4rem}.form-options,.input-group input{font-family:Exo,sans-serif;font-size:14px}.form-options{justify-content:space-between;margin-bottom:1.5rem}.form-options,.remember-me{align-items:center;display:flex}.remember-me{color:hsla(0,0%,100%,.7);font-size:12px;font-weight:400;gap:.5rem;transition:all .3s ease}.remember-me input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:rgba(45,45,45,.8);border:1px solid hsla(0,0%,100%,.2);border-radius:3px;cursor:pointer;height:14px;position:relative;transition:all .3s ease;width:14px}.remember-me input[type=checkbox]:checked{background:rgba(0,255,204,.3);border-color:#0fc;box-shadow:0 0 6px rgba(0,255,204,.4),inset 0 0 4px rgba(0,255,204,.2)}.remember-me input[type=checkbox]:checked:after{content:""}.remember-me input[type=checkbox]:hover{border-color:hsla(0,0%,100%,.3);box-shadow:0 0 4px hsla(0,0%,100%,.15)}.forgot-password{color:hsla(0,0%,100%,.7);font-size:12px;text-decoration:none;transition:all .3s ease}.forgot-password:hover{color:hsla(0,0%,100%,.9)}.login-btn{background:hsla(0,0%,100%,.1);border:2px solid #0fc;border-radius:8px;box-shadow:0 0 10px rgba(0,255,204,.3),0 0 20px rgba(0,255,204,.1),inset 0 0 10px rgba(0,255,204,.05);color:#fff;cursor:pointer;display:block;font-family:Orbitron,monospace;font-size:14px;font-weight:500;letter-spacing:1px;margin:1rem auto 0;overflow:hidden;padding:1rem 0;position:relative;text-transform:uppercase;transition:all .3s ease;width:85%}.login-btn:before{background:linear-gradient(90deg,transparent,rgba(0,255,204,.2),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.login-btn:hover{background:rgba(0,255,204,.1);border-color:#0fc;box-shadow:0 0 15px rgba(0,255,204,.4),0 0 30px rgba(0,255,204,.2),inset 0 0 15px rgba(0,255,204,.1);transform:translateY(-2px)}.login-btn:hover:before{left:100%}.form-message{background:rgba(0,255,204,.1);border:1px solid rgba(0,255,204,.3);border-radius:4px;color:#0fc;display:none;font-family:Exo,sans-serif;font-size:14px;margin-top:.5rem;min-height:1.5em;padding:.5rem;text-shadow:0 0 10px rgba(0,255,204,.5)}.form-message:not(:empty){display:block}.form-message.error{background:hsla(0,100%,71%,.1);border:1px solid hsla(0,100%,71%,.3);color:#ff6b6b;text-shadow:0 0 10px hsla(0,100%,71%,.5)}.form-message.success{background:rgba(0,255,204,.1);border:1px solid rgba(0,255,204,.3);color:#0fc;text-shadow:0 0 10px rgba(0,255,204,.5)}.social-login-section{margin-top:1.5rem;padding-top:1.5rem}.divider{align-items:center;display:flex;gap:.8rem;margin-bottom:1.2rem}.divider-line{background:hsla(0,0%,100%,.2);flex:1;height:1px}.divider-text{color:hsla(0,0%,100%,.5);font-family:Exo,sans-serif;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.social-buttons{flex-wrap:wrap;gap:.6rem;margin-top:.5rem}.social-btn,.social-buttons{align-items:center;display:flex;justify-content:center}.social-btn{background:hsla(0,0%,100%,.08);border:2px solid hsla(0,0%,100%,.2);border-radius:6px;box-shadow:0 0 4px hsla(0,0%,100%,.1),inset 0 0 4px hsla(0,0%,100%,.03);color:#fff;cursor:pointer;font-family:Roboto,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:500;gap:.5rem;letter-spacing:.6px;margin:0;max-width:180px;min-width:140px;overflow:hidden;padding:.65rem .35rem;position:relative;text-transform:uppercase;transition:all .25s ease;width:45%}.social-btn:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.3);box-shadow:0 0 6px hsla(0,0%,100%,.15),inset 0 0 6px hsla(0,0%,100%,.05);transform:translateY(-1px)}.social-btn:active{box-shadow:0 0 3px hsla(0,0%,100%,.12),inset 0 0 4px hsla(0,0%,100%,.04);transform:translateY(0)}.social-btn.is-loading{cursor:not-allowed;opacity:.7;pointer-events:none}.social-btn.is-loading .spinner{animation:spin .6s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:hsla(0,0%,100%,.8);display:inline-block;height:12px;margin-right:.5rem;width:12px}.social-icon{flex-shrink:0}.social-btn:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.social-btn:hover:before{left:100%}@media (max-width:600px){.social-buttons{flex-direction:column}.social-btn{max-width:none;min-width:0;width:85%}}.legal-links{align-items:center;display:flex;font-size:11px;gap:.5rem;justify-content:center;margin-top:.8rem}.legal-links a{color:#00ffc3;text-decoration:none;transition:all .3s ease}.legal-links a:hover{color:#00ffc3;text-decoration:underline;text-shadow:0 0 8px rgba(0,255,195,.5)}.legal-links .separator{color:hsla(0,0%,100%,.3)}.register-link{color:hsla(0,0%,100%,.8);font-family:Exo,sans-serif;font-size:13px;font-weight:400;margin-top:1.2rem}.register-link a{color:hsla(0,0%,100%,.9);font-weight:500;margin-left:.5rem;text-decoration:none;transition:all .3s ease}.register-link a:hover{color:#fff}.auth-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(0,0,0,.55);display:flex;inset:0;justify-content:center;opacity:0;pointer-events:auto;position:fixed;transition:opacity .16s ease;z-index:200}.auth-modal-backdrop.open{opacity:1}.auth-modal-panel{background:rgba(32,32,34,.96);border:1px solid hsla(0,0%,100%,.06);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.6);color:#fff;max-height:90vh;max-width:90%;opacity:0;overflow:auto;padding:28px;transform:scale(.96);transition:opacity .16s cubic-bezier(.16,.84,.44,1),transform .16s cubic-bezier(.16,.84,.44,1);width:420px}.auth-modal-panel.open{opacity:1;transform:scale(1)}.forgot-step{display:none}.forgot-step.step-active{display:block}.auth-modal-title{margin-bottom:1rem}.auth-modal-subtext{color:hsla(0,0%,100%,.8);font-size:14px;margin-bottom:1rem}.auth-modal-panel .login-btn.secondary{background:hsla(0,0%,100%,.06);border-color:hsla(0,0%,100%,.2);margin-top:1rem}.auth-modal-panel .login-btn.secondary:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3)}.auth-modal-panel h2{margin-bottom:18px;margin-top:0}.auth-modal-panel .auth-form,.auth-modal-panel .form-message{margin-top:10px}.auth-modal-panel .register-link{margin-top:16px;text-align:center}.auth-back-link{cursor:pointer}.auth-modal-panel .register-link .auth-back-link{margin-left:0}#hud{background:rgba(25,25,45,.9);border:2px solid #0fc;border-radius:12px;box-shadow:0 0 20px rgba(0,255,204,.2),0 8px 32px rgba(0,0,0,.3);font-size:14px;left:1rem;min-width:250px;padding:1rem 1.5rem;pointer-events:none;top:1rem;z-index:10}#hud,#menu{color:#fff;font-family:Orbitron,monospace;position:fixed}#menu{background:rgba(25,25,45,.95);border:2px solid #0fc;border-radius:16px;box-shadow:0 0 30px rgba(0,255,204,.3),0 8px 32px rgba(0,0,0,.4);display:none;left:50%;padding:2.5rem 3rem;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:20}#menu h2{font-size:1.8rem;font-weight:700;letter-spacing:2px;margin-bottom:2rem;text-shadow:0 0 15px rgba(0,255,204,.5)}#menu button,#menu h2{color:#0fc;text-transform:uppercase}#menu button{background:rgba(0,255,204,.1);border:2px solid #0fc;border-radius:8px;cursor:pointer;font-family:Orbitron,monospace;font-size:14px;font-weight:600;letter-spacing:1px;margin:.5rem;padding:.75rem 2rem;transition:all .3s ease}#menu button:hover{background:rgba(0,255,204,.2);box-shadow:0 0 15px rgba(0,255,204,.4);transform:translateY(-2px)}.crosshair{background:#0fc;border-radius:50%;box-shadow:0 0 10px rgba(0,255,204,.8),0 0 20px rgba(0,255,204,.4);display:none;height:8px;left:50%;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:8px;z-index:1000}.crosshair.locked{display:block;opacity:1}.crosshair.unlocked{opacity:0}.creator-panel{background:rgba(25,25,45,.95);border:2px solid #0fc;border-radius:12px;box-shadow:0 0 30px rgba(0,255,204,.3),0 8px 32px rgba(0,0,0,.4);display:none;font-family:Orbitron,monospace;height:400px;position:fixed;right:2rem;top:50%;transform:translateY(-50%);width:300px;z-index:100}.creator-header{align-items:center;background:rgba(0,255,204,.1);border-bottom:2px solid #0fc;display:flex;justify-content:space-between;padding:1rem}.creator-title{color:#0fc;font-size:16px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.creator-close{background:none;border:none;border-radius:4px;color:#0fc;cursor:pointer;font-size:18px;padding:.25rem;transition:all .3s ease}.creator-close:hover{background:rgba(0,255,204,.2);box-shadow:0 0 10px rgba(0,255,204,.3)}.creator-tabs{background:rgba(20,20,40,.8);display:flex;flex-direction:column}.creator-tab{background:none;border:none;border-left:3px solid transparent;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:.75rem 1rem;text-align:left;text-transform:uppercase;transition:all .3s ease}.creator-tab:hover{background:rgba(0,255,204,.1);border-left-color:#0fc}.creator-tab.active{background:rgba(0,255,204,.2);border-left-color:#0fc;color:#0fc}.creator-content{flex:1;overflow-y:auto;padding:1rem}.creator-button{background:rgba(0,255,204,.1);border:2px solid #0fc;border-radius:6px;color:#0fc;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin:.25rem;padding:.5rem 1rem;text-transform:uppercase;transition:all .3s ease}.creator-button:hover{background:rgba(0,255,204,.2);box-shadow:0 0 15px rgba(0,255,204,.4)}.creator-button.primary{background:linear-gradient(135deg,#0fc,#0ff);color:#000;font-weight:700}.creator-button.primary:hover{box-shadow:0 0 20px rgba(0,255,204,.5);transform:translateY(-2px)}.code-editor-container{background:transparent;border:none;border-radius:0;display:flex;gap:0;height:100%;min-height:0;padding:0;width:100%}.code-editor-file-column{background:rgba(45,45,45,.3);border:1px solid rgba(0,255,204,.2);border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;padding:1rem;width:200px}.code-editor-code-viewer{background:rgba(45,45,45,.9);border:none;border-radius:0;display:flex;flex:1;flex-direction:column;min-width:400px;overflow:hidden}.code-editor-ai-assistant{background:rgba(45,45,45,.3);border:1px solid rgba(0,255,204,.2);border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;padding:1rem;width:200px}.code-editor-file-column h4{color:#0fc;font-family:Orbitron,monospace;font-size:14px;font-weight:600;letter-spacing:1px;margin:0 0 1rem;text-transform:uppercase}.code-editor-file-column ul{flex:1;list-style:none;margin:0;overflow-y:auto;padding:0}.code-editor-file-column li{background:rgba(0,255,204,.1);border:1px solid rgba(0,255,204,.2);border-radius:4px;cursor:pointer;font-family:Exo,monospace;font-size:12px;margin-bottom:.25rem;padding:.5rem;transition:all .2s ease}.code-editor-file-column li:hover{background:rgba(0,255,204,.2);border-color:rgba(0,255,204,.4);transform:translateX(2px)}.code-editor-file-column li.active{background:rgba(0,255,204,.3);border-color:#0fc;box-shadow:0 0 10px rgba(0,255,204,.3)}.code-editor-code-viewer .cm-editor{flex:1;font-family:Exo,monospace;font-size:14px;height:100%;line-height:1.5}.code-editor-code-viewer .cm-scroller{min-height:0}.code-editor-code-viewer .cm-gutters{background:rgba(45,45,45,.5);border-right:1px solid rgba(0,255,255,.2)}.code-editor-code-viewer .cm-lineNumbers .cm-gutterElement{color:rgba(0,255,255,.6)}.code-editor-code-viewer .cm-cursor{border-color:#0fc}.code-editor-code-viewer .cm-selectionBackground{background:rgba(0,255,204,.2)}.cm-ai-ghost{color:#8fa1ff;opacity:.4;pointer-events:none}.ai-preview{background:rgba(15,26,29,.95);border:1px solid rgba(140,255,230,.25);border-radius:8px;font-size:12px;margin:.5rem 0;padding:.75rem}.ai-preview-header{color:#0fc;font-weight:600}.ai-preview-edit,.ai-preview-header{margin-bottom:.5rem}.ai-preview-path{color:hsla(0,0%,100%,.9);font-weight:500}.ai-preview-action{color:rgba(140,255,230,.8);margin-left:.25rem}.ai-preview-diff{background:rgba(0,0,0,.3);border-radius:4px;font-size:11px;margin:.25rem 0 0;max-height:8em;overflow:auto;padding:.5rem;white-space:pre-wrap;word-break:break-all}.ai-preview-actions{display:flex;gap:.5rem;margin-top:.75rem}.ai-preview-actions button{background:rgba(0,255,204,.1);border:1px solid rgba(140,255,230,.3);border-radius:4px;color:#0fc;cursor:pointer;font-size:12px;padding:.4rem .75rem}.ai-preview-actions button:hover{background:rgba(0,255,204,.2)}.ai-runtime-error{background:rgba(40,20,20,.95);border:1px solid hsla(0,100%,77%,.35);border-radius:8px;font-size:12px;margin:.5rem 0;padding:.75rem}.ai-runtime-error-header{color:#f88;font-weight:600;margin-bottom:.5rem}.ai-runtime-error-message{color:hsla(0,0%,100%,.95);margin-bottom:.25rem;word-break:break-word}.ai-runtime-error-phase{color:hsla(0,100%,89%,.9);font-size:11px;margin-bottom:.5rem}.ai-runtime-error-location{background:rgba(0,255,204,.08);border:1px solid rgba(0,255,204,.25);border-radius:4px;color:hsla(0,0%,100%,.9);cursor:pointer;display:block;font-size:12px;margin-bottom:.5rem;padding:.35rem .5rem}.ai-runtime-error-location:hover{background:rgba(0,255,204,.14);border-color:rgba(0,255,204,.4)}.ai-runtime-error-location:focus{outline:1px solid rgba(0,255,204,.5);outline-offset:2px}.ai-runtime-error-location .ai-runtime-error-location-label{color:rgba(0,255,204,.85);margin-right:.25rem}.ai-runtime-error-location .ai-runtime-error-location-value{margin-right:.75rem}.ai-runtime-error-actions{display:flex;gap:.5rem;margin-top:.5rem}.ai-runtime-error-actions button{background:hsla(0,100%,70%,.15);border:1px solid hsla(0,100%,77%,.4);border-radius:4px;color:#faa;cursor:pointer;font-size:12px;padding:.4rem .75rem}.ai-runtime-error-actions button:hover{background:hsla(0,100%,70%,.25)}.ai-error-bar{align-items:center;background:rgba(180,40,40,.15);border-top:1px solid rgba(255,80,80,.4);display:flex;font-size:12px;justify-content:space-between;padding:8px 10px}.ai-error-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-error-actions button{font-size:11px;margin-left:6px}.ai-runtime-console{background:rgba(15,15,20,.95);border-top:1px solid hsla(0,0%,100%,.08);display:flex;flex-direction:column;font-family:monospace;font-size:12px;max-height:200px}.ai-console-header{background:rgba(0,0,0,.3);display:flex;justify-content:space-between;padding:4px 8px}.ai-console-body{overflow-y:auto;padding:6px}.ai-console-entry{margin-bottom:4px;white-space:pre-wrap}.ai-console-log{color:#8fa1ff}.ai-console-warn{color:#fc6}.ai-console-error{color:#ff6b6b}#editor-view-switch>#console-view-container,#editor-view-switch>#editor-view-container{flex:1;min-height:0}#console-view-container{background:#0d0f15;display:flex;flex-direction:column;height:100%;overflow:hidden}.console-header{flex:0 0 auto}.console-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}#standalone-console{display:flex;flex:1;flex-direction:column;font-family:monospace;font-size:13px;min-height:0}#standalone-console .console-body{min-height:0;padding:12px}.code-editor-ai-assistant h4{color:#0fc;font-family:Orbitron,monospace;font-size:14px;font-weight:600;letter-spacing:1px;margin:0 0 1rem;text-transform:uppercase}.code-editor-ai-assistant input{background:rgba(45,45,45,.8);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#fff;font-family:Exo,sans-serif;font-size:12px;padding:.5rem;width:100%}.code-editor-ai-assistant button{background:transparent;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:.5rem 1rem;text-transform:uppercase;transition:all .2s ease;width:100%}.code-editor-ai-assistant button:hover{background:hsla(0,0%,100%,.1)}.code-editor-ai-assistant button:active{background:hsla(0,0%,100%,.2)}#ai-suggestions{background:rgba(45,45,45,.9);border:1px solid rgba(255,193,7,.3);border-radius:4px;color:#0fc;flex:1;font-family:Exo,monospace;font-size:11px;line-height:1.4;overflow-y:auto;padding:.5rem}@media (max-width:768px){.code-editor-container{flex-direction:column;gap:0}.code-editor-ai-assistant,.code-editor-file-column{flex-shrink:0;width:100%}.code-editor-code-viewer{min-height:300px;min-width:0}}.code-editor-textarea{background:rgba(45,45,45,.9);border:none;border-radius:8px;color:#fff;font-family:Exo,monospace;font-size:14px;height:100%;line-height:1.5;min-height:0;outline:none;overflow:auto;padding:1rem;resize:none;width:100%}.code-editor-textarea:focus{box-shadow:0 0 15px rgba(0,255,204,.3)}.code-editor-code-viewer button,.code-editor-file-column button{background:transparent;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin-top:.5rem;padding:.5rem 1rem;text-transform:uppercase;transition:all .2s ease}.code-editor-code-viewer button:hover,.code-editor-file-column button:hover{background:hsla(0,0%,100%,.1)}.code-editor-code-viewer button:active,.code-editor-file-column button:active{background:hsla(0,0%,100%,.2)}#current-file-name{background:rgba(0,255,204,.1);border:1px solid rgba(0,255,204,.3);border-radius:4px;color:#0fc;font-weight:700;margin-bottom:1rem;padding:.5rem;text-align:center}#preview-container{background:rgba(45,45,45,.3);border:1px solid rgba(0,255,255,.2);border-radius:8px;margin-top:1rem;padding:1rem}#preview-container h4{color:#0ff;font-family:Orbitron,monospace;font-size:14px;font-weight:600;letter-spacing:1px;margin:0 0 1rem;text-transform:uppercase}#preview-scene{align-items:center;background:rgba(45,45,45,.9);border:1px solid rgba(0,255,255,.2);border-radius:4px;color:rgba(0,255,255,.6);display:flex;font-family:Exo,monospace;font-size:12px;justify-content:center;min-height:200px}.status-message{border-radius:6px;font-family:Exo,sans-serif;font-size:12px;font-weight:600;margin:.5rem 0;padding:.5rem}.status-success{background:rgba(0,255,204,.1);border:1px solid #0fc;color:#0fc}.status-error{background:hsla(0,100%,71%,.1);border:1px solid #ff6b6b;color:#ff6b6b}.status-info{background:rgba(0,255,255,.1);border:1px solid #0ff;color:#0ff}.loading{animation:spin 1s ease-in-out infinite;border:2px solid rgba(0,255,204,.3);border-radius:50%;border-top-color:#0fc;display:inline-block;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.welcome-container{min-width:320px;padding:2rem 1.5rem}h1{font-size:1.6rem}.creator-panel{height:350px;right:1rem;width:280px}}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.slide-in{animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.text-neon{text-shadow:0 0 10px currentColor}.border-neon{box-shadow:0 0 10px currentColor}.glow{filter:drop-shadow(0 0 10px currentColor)}.particle{animation:float 8s ease-in-out infinite;background:radial-gradient(circle,rgba(0,255,204,.6) 0,rgba(0,255,204,.2) 50%,transparent 100%);border-radius:50%;pointer-events:none;position:fixed;z-index:1}.particle:nth-child(odd){animation-duration:12s;background:radial-gradient(circle,rgba(0,255,255,.4) 0,rgba(0,255,255,.1) 50%,transparent 100%)}.particle:nth-child(3n){animation-duration:15s;background:radial-gradient(circle,hsla(0,0%,100%,.3) 0,hsla(0,0%,100%,.1) 50%,transparent 100%)}@keyframes float{0%,to{opacity:.3;transform:translateY(0) translateX(0) scale(1)}25%{opacity:.6;transform:translateY(-20px) translateX(10px) scale(1.1)}50%{opacity:.4;transform:translateY(-10px) translateX(-15px) scale(.9)}75%{opacity:.7;transform:translateY(-30px) translateX(5px) scale(1.2)}}#esc-menu{background:rgba(50,50,50,.7);color:#fff;contain:layout style paint;font-family:Orbitron,monospace;height:100%;left:0;opacity:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1);visibility:hidden;width:100%;will-change:transform,opacity;z-index:1000}#esc-menu.active{display:flex;flex-direction:row;opacity:1;transform:translateX(0);visibility:visible}#esc-menu .esc-header{align-items:center;background:rgba(40,40,40,.9);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;left:0;padding:1rem 1.5rem;position:absolute;right:0;top:0;z-index:1001}#esc-menu .esc-title{color:#0fc;font-size:1.8rem;font-weight:700;letter-spacing:2px;margin:0;text-shadow:0 0 15px rgba(0,255,204,.5);text-transform:uppercase}#esc-menu .esc-close{background:rgba(0,255,204,.1);border:2px solid #0fc;border-radius:6px;color:#0fc;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:.5rem 1rem;text-transform:uppercase;transition:all .3s ease}#esc-menu .esc-close:hover{background:rgba(0,255,204,.2);box-shadow:0 0 15px rgba(0,255,204,.4);transform:scale(1.05)}#esc-menu .esc-exit-sphere{background:hsla(0,100%,71%,.1);border:2px solid #ff6b6b;border-radius:6px;color:#ff6b6b;contain:layout style;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin-right:1rem;padding:.5rem 1rem;text-transform:uppercase;transform:scale(1);transition:all .3s ease;transition:background-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);will-change:background-color,box-shadow,transform}#esc-menu .esc-exit-sphere:hover{background:hsla(0,100%,71%,.2);box-shadow:0 0 15px hsla(0,100%,71%,.4);transform:scale(1.05)}#esc-menu .enhanced-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(40,40,40,.9);border-radius:3px;contain:layout style;cursor:pointer;height:6px;outline:none;transition:background-color .2s cubic-bezier(.4,0,.2,1);width:200px;will-change:background-color}#esc-menu .enhanced-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#0fc;border-radius:50%;box-shadow:0 0 5px #0fc;cursor:pointer;height:18px;-webkit-transition:all .2s cubic-bezier(.4,0,.2,1);transition:all .2s cubic-bezier(.4,0,.2,1);width:18px;will-change:transform,box-shadow}#esc-menu .enhanced-slider::-moz-range-thumb{background:#0fc;border:none;border-radius:50%;box-shadow:0 0 5px #0fc;cursor:pointer;height:18px;-moz-transition:all .2s cubic-bezier(.4,0,.2,1);transition:all .2s cubic-bezier(.4,0,.2,1);width:18px;will-change:transform,box-shadow}#esc-menu .enhanced-slider:hover::-webkit-slider-thumb{box-shadow:0 0 8px #0fc;transform:scale(1.1)}#esc-menu .enhanced-slider:hover::-moz-range-thumb{box-shadow:0 0 8px #0fc;transform:scale(1.1)}#esc-menu .keybinding-input{background:rgba(45,45,45,.8);border:1px solid #0fc;border-radius:6px;color:#fff;contain:layout style;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;outline:none;padding:8px 12px;text-align:center;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;will-change:border-color,background-color,transform}#esc-menu .keybinding-input:hover{background:rgba(0,255,204,.1);border-color:#0fc;transform:scale(1.02)}#esc-menu .keybinding-input:focus{background:rgba(0,255,204,.15);border-color:#0fc;box-shadow:0 0 10px rgba(0,255,204,.3)}#esc-menu .enhanced-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(45,45,45,.8);border:2px solid #0fc;border-radius:4px;contain:layout style;cursor:pointer;height:18px;outline:none;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);width:18px;will-change:background-color,border-color,transform}#esc-menu .enhanced-checkbox:checked{background:#0fc;border-color:#0fc}#esc-menu .enhanced-checkbox:checked:after{color:#1a1a1a;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}#esc-menu .enhanced-checkbox:hover{background:rgba(0,255,204,.1);transform:scale(1.05)}#esc-menu .enhanced-select{background:rgba(45,45,45,.8);border:1px solid #0fc;border-radius:6px;color:#fff;contain:layout style;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;outline:none;padding:8px 12px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;will-change:border-color,background-color}#esc-menu .enhanced-select:hover{background:rgba(0,255,204,.1);border-color:#0fc}#esc-menu .enhanced-select:focus{background:rgba(0,255,204,.15);border-color:#0fc;box-shadow:0 0 10px rgba(0,255,204,.3)}#esc-menu .enhanced-select option{background:rgba(30,30,30,.95);color:#fff;font-family:Orbitron,monospace;font-size:12px}#esc-menu .enhanced-button{background:rgba(0,255,204,.1);border:2px solid #0fc;border-radius:6px;color:#0fc;contain:layout style;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:.75rem 1.5rem;text-transform:uppercase;transform:scale(1);transition:all .3s cubic-bezier(.4,0,.2,1);will-change:background-color,box-shadow,transform}#esc-menu .enhanced-button:hover{background:rgba(0,255,204,.2);box-shadow:0 0 15px rgba(0,255,204,.4);transform:scale(1.05)}@media (max-width:768px){#esc-menu .enhanced-slider{width:150px}#esc-menu .enhanced-select,#esc-menu .keybinding-input{font-size:11px;padding:6px 8px}#esc-menu .enhanced-button{font-size:11px;padding:.5rem 1rem}}#esc-menu .esc-tabs{background:rgba(40,40,40,.9);border:1px solid #0fc;display:flex;flex-direction:column;height:calc(100% - 68px);margin-top:68px;overflow-y:auto;padding:10px;width:200px}#esc-menu .esc-tab{background:none;border:none;border-left:3px solid transparent;border-radius:0 6px 6px 0;color:#fff;contain:layout style;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin-bottom:.25rem;padding:.75rem 1rem;text-align:left;text-transform:uppercase;transform:translateX(0);transition:background-color .2s cubic-bezier(.4,0,.2,1),border-left-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);will-change:background-color,border-left-color,color,transform}#esc-menu .esc-tab:hover{background:rgba(0,255,204,.1)}#esc-menu .esc-tab.active,#esc-menu .esc-tab:hover{border-left-color:#0fc;color:#0fc;transform:translateX(4px)}#esc-menu .esc-tab.active{background:rgba(0,255,204,.2);box-shadow:0 0 10px rgba(0,255,204,.3)}#esc-menu .esc-content{background:rgba(45,45,45,.8);flex:1;height:calc(100% - 68px);margin-top:68px;overflow-y:auto;padding:0;-webkit-overflow-scrolling:touch;contain:layout style;scroll-behavior:smooth;will-change:scroll-position}#esc-menu .esc-content>:not(.code-editor-container){padding:1.5rem}.code-editor-btn:before{background:linear-gradient(90deg,transparent,rgba(0,255,204,.2),transparent);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .5s ease;width:100%}.code-editor-btn:hover:before{left:100%}@media (max-width:768px){#esc-menu{flex-direction:column}#esc-menu .esc-tabs{flex-direction:row;height:auto;margin-top:68px;max-height:200px;overflow-x:auto;overflow-y:hidden;width:100%}#esc-menu .esc-tab{border-bottom:3px solid transparent;border-left:none;border-radius:6px 6px 0 0;margin-bottom:0;margin-right:.5rem;white-space:nowrap}#esc-menu .esc-tab.active,#esc-menu .esc-tab:hover{border-bottom-color:#0fc;border-left:none;transform:translateY(-2px)}#esc-menu .esc-content{height:calc(100% - 68px);margin-top:68px}}#esc-menu .esc-content h3{color:#0fc;font-size:1.2rem;font-weight:700;letter-spacing:1px;margin-bottom:1rem;text-shadow:0 0 10px rgba(0,255,204,.5);text-transform:uppercase}#esc-menu .esc-content p{color:#fff;font-family:Exo,sans-serif;font-size:14px;line-height:1.6;margin-bottom:1rem}#esc-menu .esc-content button{background:transparent;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin:.25rem;padding:.5rem 1rem;text-transform:uppercase;transition:all .2s ease}#esc-menu .esc-content button:hover{background:hsla(0,0%,100%,.1)}#esc-menu .esc-content input,#esc-menu .esc-content select{background:rgba(45,45,45,.8);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;contain:layout style;font-family:Exo,sans-serif;font-size:14px;margin:.25rem 0;padding:.5rem;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);will-change:border-color,box-shadow}#esc-menu .esc-content input:focus,#esc-menu .esc-content select:focus{border-color:#0fc;box-shadow:0 0 8px rgba(0,255,204,.3);outline:none}#create-section h3{font-size:14px;letter-spacing:1px;opacity:.7}#create-subnav{display:flex;gap:15px;margin-bottom:20px}.create-subnav-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:hsla(0,0%,100%,.6);cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:5px 0;text-transform:uppercase}.create-subnav-btn:hover{color:hsla(0,0%,100%,.9)}.create-subnav-btn.active{border-bottom:2px solid #00ffc8;color:#00ffc8}#world-subnav{display:flex;gap:15px;margin-bottom:20px}.world-subnav-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:hsla(0,0%,100%,.6);cursor:pointer;font-family:Orbitron,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;padding:5px 0;text-transform:uppercase}.world-subnav-btn:hover{color:hsla(0,0%,100%,.9)}.world-subnav-btn.active{border-bottom:2px solid #00ffc8;color:#00ffc8}.system-header{align-items:center;display:flex;gap:48px;margin-bottom:1rem}.system-title{color:#0fc;font-family:Orbitron,monospace;font-size:1.2rem;font-weight:700;letter-spacing:1px;margin:0;text-shadow:0 0 10px rgba(0,255,204,.5);text-transform:uppercase}.system-nav{display:flex;gap:28px}.tab-header{align-items:center;display:flex;gap:48px;margin-bottom:1rem}.tab-title{color:#0fc;font-family:Orbitron,monospace;font-size:1.2rem;font-weight:700;letter-spacing:1px;margin:0;text-shadow:0 0 10px rgba(0,255,204,.5);text-transform:uppercase}.tab-nav{display:flex;gap:28px}.system-nav button,.tab-nav button{padding:0 18px;position:relative}.system-nav button:not(:last-child):after,.tab-nav button:not(:last-child):after{background:hsla(0,0%,71%,.18);content:"";height:60%;position:absolute;right:0;top:20%;width:1px}#world-section{box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow:hidden}#world-view-map,#world-view-map>div{display:flex;flex:1;min-height:0}#world-view-map>div{margin:0;padding:0}#world-view-map>div>div:last-child{flex:1;min-height:0;position:relative}#esc-menu #map-canvas-host{height:100%;width:100%}.filter-panel{background:linear-gradient(135deg,#2e2e2e,#2e2e2e);border-right:1px solid hsla(0,0%,100%,.1);display:flex;flex-direction:column;min-height:0;min-width:300px;overflow:hidden;padding:1.5rem;width:300px}.filter-panel>*{margin-bottom:16px}.filter-panel>:last-child{margin-bottom:0}.filter-options{display:flex;flex-direction:column;gap:.5rem}.filter-search{align-items:center;display:flex;gap:.5rem}.filter-panel #filter-results{background:rgba(45,45,45,.2);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;padding:1rem}#world-view-discover,.filter-panel #filter-results{flex:1;min-height:0;overflow-y:auto}.discover-section h4{font-size:14px;letter-spacing:1px;margin-bottom:10px;opacity:.9}.discover-grid{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-bottom:30px}.discover-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.discover-tag-btn{background:rgba(0,255,200,.1);border:1px solid rgba(0,255,200,.3);color:#00ffc8;cursor:pointer;font-size:11px;letter-spacing:1px;padding:4px 10px;text-transform:uppercase}.discover-tag-btn:hover{background:rgba(0,255,200,.2)}.discover-card{background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;display:flex;flex-direction:column;justify-content:space-between;padding:12px}.discover-card-title{font-weight:600;margin-bottom:6px}.discover-card-description{font-size:13px;margin-bottom:8px;opacity:.8}.discover-card-meta{font-size:11px;margin-bottom:10px;opacity:.6}.discover-card-actions{margin-top:auto}.create-message{color:#ff6b6b;font-size:13px;margin-top:10px}.create-success{border:1px solid rgba(0,255,200,.3);border-radius:6px;padding:15px}#create-metadata-panel label{display:block;margin-bottom:.25rem}#create-metadata-panel input,#create-metadata-panel select,#create-metadata-panel textarea{margin-bottom:1rem;width:100%}#create-metadata-panel textarea{min-height:80px;resize:vertical}#esc-menu .esc-primary-btn{background:rgba(0,255,204,.1);border:2px solid #0fc;border-radius:6px;color:#0fc;cursor:pointer;font-family:Orbitron,monospace;font-size:14px;font-weight:600;letter-spacing:1px;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .3s ease}#esc-menu .esc-primary-btn:hover:not(:disabled){background:rgba(0,255,204,.2);box-shadow:0 0 15px rgba(0,255,204,.3)}#esc-menu .esc-secondary-btn{background:rgba(45,45,45,.8);border:2px solid hsla(0,0%,100%,.3);border-radius:6px;color:#fff;cursor:pointer;font-family:Orbitron,monospace;font-size:12px;font-weight:600;letter-spacing:1px;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .3s ease}#esc-menu .esc-secondary-btn:hover{background:hsla(0,0%,100%,.1)}.my-sphere-card{background:rgba(0,0,0,.2);border:1px solid rgba(0,255,200,.2);border-radius:8px;margin-bottom:15px;padding:15px}.my-sphere-header{display:flex;font-weight:600;justify-content:space-between}.my-sphere-badge{border-radius:4px;font-size:11px;padding:3px 8px}.my-sphere-badge.public{background:rgba(0,255,200,.2)}.my-sphere-badge.private{background:hsla(0,100%,70%,.2)}.my-sphere-description{display:-webkit-box;font-size:13px;margin-top:6px;opacity:.9;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.my-sphere-meta{font-size:12px;margin-top:6px;opacity:.7}.my-sphere-actions{display:flex;gap:10px;margin-top:10px}.my-sphere-confirm-label{font-size:12px;margin-right:8px}#esc-menu .esc-status{border-radius:6px;font-family:Exo,sans-serif;font-size:12px;font-weight:600;margin:.5rem 0;padding:.5rem}#esc-menu .esc-status.success{background:rgba(0,255,204,.1);border:1px solid #0fc;color:#0fc}#esc-menu .esc-status.error{background:hsla(0,100%,71%,.1);border:1px solid #ff6b6b;color:#ff6b6b}#esc-menu .esc-status.info{background:rgba(0,255,255,.1);border:1px solid #0ff;color:#0ff}#sphere-name-tag,#user-name-tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(10,18,30,.65);border:1px solid rgba(80,220,255,.35);border-radius:999px;box-shadow:0 0 8px rgba(80,220,255,.25),inset 0 0 6px rgba(80,220,255,.15);color:rgba(220,245,255,.95);font-size:12px;font-weight:500;letter-spacing:.5px;padding:4px 12px}#user-name-tag{transform:translateY(-4px)}#add-user-input:hover,#permission-level:hover,#sphere-description-edit:hover,#sphere-invite-code:hover,#sphere-max-users-edit:hover,#sphere-name-edit:hover,#sphere-tags-edit:hover{border-color:rgba(0,255,204,.6)!important;box-shadow:0 0 10px rgba(0,255,204,.2);transform:translateY(-1px);transition:all .3s ease}#add-user-input:focus,#permission-level:focus,#sphere-description-edit:focus,#sphere-invite-code:focus,#sphere-max-users-edit:focus,#sphere-name-edit:focus,#sphere-tags-edit:focus{border-color:#0fc!important;box-shadow:0 0 15px rgba(0,255,204,.3);outline:none;transition:all .3s ease}button[onclick="addSphereUser()"]:hover,button[onclick="blockSelectedUser()"]:hover,button[onclick="generateInviteCode()"]:hover,button[onclick="kickSelectedUser()"]:hover,button[onclick="resetSphereSettings()"]:hover,button[onclick="updateSphereSettings()"]:hover{box-shadow:0 4px 15px rgba(0,255,204,.3);transform:translateY(-2px);transition:all .3s ease}button[onclick="updateSphereSettings()"]:hover{background:rgba(0,255,204,.2)!important}button[onclick="resetSphereSettings()"]:hover{background:rgba(255,193,7,.2)!important}button[onclick="generateInviteCode()"]:hover{background:rgba(0,255,255,.2)!important}button[onclick="addSphereUser()"]:hover{background:rgba(0,255,204,.2)!important}button[onclick="kickSelectedUser()"]:hover{background:rgba(255,193,7,.2)!important}button[onclick="blockSelectedUser()"]:hover{background:hsla(0,100%,71%,.2)!important}#login-message{color:#cfd6dc;font-size:12px;margin-top:8px;min-height:1em}#login-message[data-type=ok]{color:#39f6d6}#login-message[data-type=warn]{color:#ffcf6e}#login-message[data-type=error]{color:#ff7a7a}.login-btn.is-loading{opacity:.6;pointer-events:none}:root{--vs-bg:#0d1315;--vs-panel:#2e2e2e;--vs-edge:rgba(140,255,230,.18);--vs-edge-2:rgba(140,255,230,.1);--vs-text:#cfe9e6;--vs-title:#9efbe7;--vs-focus:rgba(140,255,230,.35);--vs-warn:#ffc451;--vs-rad:12px;--vs-line:1px;--vs-gap:14px}#sphere-settings.vs-settings{display:flex;flex-direction:column;gap:18px;margin:0;padding:0 18px 22px;width:100%}.vs-header-btn{font-size:12px;height:36px;padding:0 16px}.vs-card{border:var(--vs-line) solid var(--vs-edge)}.vs-grid{gap:var(--vs-gap) var(--vs-gap)}.vs-btn{background:transparent;border:var(--vs-line) solid var(--vs-edge);border-radius:12px;color:#bff;font-weight:800;height:42px;letter-spacing:.08em}.vs-btn:hover{background:rgba(140,255,230,.08)}.vs-btn.primary{background:linear-gradient(180deg,rgba(140,255,230,.18),rgba(140,255,230,.08));border-color:var(--vs-focus)}.vs-btn.warn{background:linear-gradient(180deg,rgba(255,196,81,.2),rgba(255,196,81,.08));border-color:rgba(255,196,81,.45);color:#fff3d3}.vs-btn.ghost{border-color:var(--vs-edge)}.vs-settings :is(h2,h3,button,label,span):before{content:none!important}#settings-root.vs-settings{display:flex;flex-direction:column;gap:18px;margin:0;padding:0 18px 22px;width:100%}.vs-head{align-items:center;border-bottom:var(--vs-line) solid var(--vs-edge-2);display:flex;justify-content:space-between;padding:8px 0 0}.vs-head h2{color:var(--vs-title);font-weight:800;letter-spacing:.1em;margin:0;text-transform:uppercase}.vs-sub{color:#9db;font-size:13px;margin:6px 0 14px}.vs-header-actions{align-items:center;display:flex;gap:10px}.vs-card{background:var(--vs-panel);border:none;border-radius:var(--vs-rad);padding:16px}.vs-section{border-bottom:var(--vs-line) solid var(--vs-edge-2);color:var(--vs-title);font-weight:700;letter-spacing:.08em;margin:0 0 10px;padding-bottom:8px;text-transform:uppercase}.vs-grid{display:grid;gap:var(--vs-gap);grid-template-columns:repeat(2,minmax(280px,1fr))}.vs-col-2{grid-column:1/-1}@media (max-width:1024px){.vs-grid{grid-template-columns:1fr}}.vs-field{display:flex;flex-direction:column;gap:6px}.vs-field>span{color:#aee;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.vs-field input[type=text],.vs-field select,.vs-field textarea{background:transparent;border:var(--vs-line) solid var(--vs-edge);border-radius:10px;color:var(--vs-text);outline:none;padding:10px 12px;transition:border-color .15s,box-shadow .15s}.vs-field textarea{resize:vertical}.vs-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:none}.vs-check{align-items:center;display:flex;gap:10px}.vs-check input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--vs-line) solid var(--vs-edge);border-radius:4px;height:18px;position:relative;width:18px}.vs-check input[type=checkbox]:checked{border-color:var(--vs-focus);box-shadow:inset 0 0 0 2px rgba(140,255,230,.12)}.vs-check input[type=checkbox]:checked:after{background:var(--vs-focus);border-radius:2px;content:"";inset:3px;position:absolute}.vs-check span{color:var(--vs-text)}.vs-field input:focus,.vs-field select:focus,.vs-field textarea:focus{border-color:var(--vs-focus);box-shadow:0 0 0 3px rgba(140,255,230,.08)}.sphere-orb{display:inline-block;position:relative}.sphere-orb-container{background:rgba(173,216,230,.1);border:1px solid rgba(173,216,230,.3);border-radius:8px;color:#add8e6;font-family:Orbitron,monospace;font-size:12px;padding:8px 12px}.sphere-orb-glow{box-shadow:0 0 10px rgba(173,216,230,.5),0 0 20px rgba(173,216,230,.3),0 0 30px rgba(173,216,230,.1)}.sphere-orb-hover{background:rgba(173,216,230,.2);border-color:rgba(173,216,230,.5);transform:scale(1.05);transition:all .3s ease}.vs-hint{color:#9db;font-size:12px;margin:-2px 0 10px}.vs-inline{align-items:center;display:grid;gap:10px;grid-template-columns:1fr auto}.vs-meter{color:#aee;font-weight:700}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--vs-edge-2);border-radius:999px;height:4px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--vs-focus);border:1px solid var(--vs-edge);border-radius:50%;box-shadow:0 0 12px rgba(140,255,230,.35);height:16px;width:16px}input[type=range]::-moz-range-thumb{background:var(--vs-focus);border:1px solid var(--vs-edge);border-radius:50%;box-shadow:0 0 12px rgba(140,255,230,.35);height:16px;width:16px}#settings-root :is(h2,h3,label,button,span):before{content:none!important}.vs-btn.saved{box-shadow:0 0 0 3px rgba(140,255,230,.15)}.vs-list{background:rgba(46,46,46,.6);border:var(--vs-line) solid var(--vs-edge);border-radius:10px;max-height:360px;overflow:auto;padding:8px}.vs-user{align-items:center;border-bottom:var(--vs-line) solid var(--vs-edge-2);display:grid;gap:10px;grid-template-columns:1fr 160px auto;padding:8px 6px}.vs-user:last-child{border-bottom:none}.vs-user .name{color:var(--vs-text)}.vs-user .role{min-width:140px}.vs-user .role select{background:transparent;border:var(--vs-line) solid var(--vs-edge);border-radius:8px;color:var(--vs-text);padding:6px 8px;width:100%}.vs-user .actions .vs-btn{height:30px;padding:0 10px}#boot-overlay{align-items:center;background:radial-gradient(circle at 50% 50%,hsla(0,0%,100%,.03),transparent 70%),#1a1d20;display:flex;inset:0;justify-content:center;overflow:hidden;position:fixed;z-index:999999}.boot-particles{inset:0;pointer-events:none;position:absolute}.boot-particles:after,.boot-particles:before{animation:floatParticles 12s ease-in-out infinite alternate;background:radial-gradient(circle at 50% 50%,hsla(0,0%,100%,.04),transparent 50%);content:"";filter:blur(60px);inset:-20%;position:absolute}@keyframes floatParticles{0%{transform:translateY(-10px)}to{transform:translateY(10px)}}.boot-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(40,40,40,.75);border:1px solid rgba(0,255,200,.15);border-radius:16px;box-shadow:0 0 40px rgba(0,255,200,.08),0 20px 60px rgba(0,0,0,.4);min-width:520px;padding:40px 60px;position:relative;text-align:center}.boot-title{color:#8fffe0;font-size:18px;font-weight:500;letter-spacing:2px;margin-bottom:18px;text-shadow:0 0 10px rgba(0,255,200,.35)}.boot-loader{background:rgba(0,255,200,.08);border-radius:4px;height:3px;margin:0 auto;max-width:420px;overflow:hidden;width:100%}.boot-loader-bar{animation:bootLoaderMove 1.8s ease-in-out infinite;background:linear-gradient(90deg,rgba(0,255,200,.12),rgba(0,255,200,.35),rgba(0,255,200,.12));border-radius:4px;height:100%;width:35%}@keyframes bootLoaderMove{0%{transform:translateX(-100%)}50%{transform:translateX(80%)}to{transform:translateX(200%)}}#boot-overlay.fade-out{opacity:0;pointer-events:none;transition:opacity .8s ease}#social-subnav{display:flex;gap:15px;margin-bottom:20px}.social-subnav-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:hsla(0,0%,100%,.6);cursor:pointer;font-family:Orbitron,sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;padding:5px 0;text-transform:uppercase}.social-subnav-btn.active{border-bottom:2px solid #00ffc8;color:#00ffc8}.subnav-badge{background:#ff3b3b;border-radius:10px;color:#fff;display:none;font-size:10px;margin-left:6px;padding:2px 6px}#friends-subnav{display:flex;gap:15px;margin-bottom:15px}.friends-subnav-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:hsla(0,0%,100%,.6);cursor:pointer;font-family:Orbitron,sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;padding:5px 0;text-transform:uppercase}.friends-subnav-btn.active{border-bottom:2px solid #00ffc8;color:#00ffc8}#esc-notification-bell{cursor:pointer;position:absolute;right:15px;top:10px}#esc-notification-count{background:#00ffc8;border-radius:10px;color:#000;font-size:11px;font-weight:700;padding:2px 6px}.friend-online-indicator{background:#555;border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.friend-online-indicator.online{background:#00ffc8}