:root{--glass-bg: rgba(255, 255, 255, .08);--glass-border: rgba(255, 255, 255, .18);--neon-green: #0ff96a;--neon-blue: #00f7ff;--neon-pink: #ff6ec4;--text: #f1f1f1;--card: #1b1b2f;--shadow: 0 10px 20px rgba(0, 0, 0, .35);--fast: .2s ease;--slow: .35s cubic-bezier(.2, .8, .2, 1);--rail: 68px;--rightbar: 320px;--radius: 14px;--brandGrad: linear-gradient(-45deg, #6a11cb, #2575fc, #ff6ec4, #00f7ff)}@keyframes animatedGradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes blink{50%{opacity:0}}html,body,#root{height:100%}body{margin:0;color:var(--text);font-family:Poppins,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(-45deg,#6a11cb,#2575fc,#ff6ec4,#00f7ff);background-size:400% 400%;animation:animatedGradient 12s ease infinite}.animated-border{position:relative;border-radius:var(--radius);overflow:hidden}.animated-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;z-index:-1;border-radius:inherit;background:var(--brandGrad);background-size:400% 400%;animation:animatedGradient 8s linear infinite}.join-container{display:flex;align-items:center;justify-content:center;height:100vh;padding:20px}.join-form{width:min(92vw,360px);padding:28px;border:1px solid var(--glass-border);border-radius:var(--radius);background:var(--glass-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);animation:fadeUp .6s var(--slow)}.join-form h1{margin:0 0 18px;font-weight:700}.join-form input{width:100%;margin:10px 0;padding:12px 14px;border:0;border-radius:10px;background:#ffffff1a;color:#fff;outline:0;transition:box-shadow var(--fast)}.join-form input:focus{box-shadow:0 0 0 2px var(--neon-blue)}.join-form button{width:100%;padding:12px 16px;border:0;border-radius:10px;color:#fff;cursor:pointer;background:var(--brandGrad);background-size:400% 400%;animation:animatedGradient 8s linear infinite;transition:transform var(--fast),box-shadow var(--fast)}.join-form button:hover{transform:translateY(-2px);box-shadow:0 0 16px var(--neon-blue),0 0 20px var(--neon-green)}.editor-container{position:relative;display:flex;height:100vh;gap:0}.top-navbar{position:fixed;top:0;left:var(--rail);right:0;height:48px;margin-left:20px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;background:#0a0a1e8c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--glass-border);z-index:50}.brand{font-weight:800;letter-spacing:.5px}.nav-controls{display:flex;align-items:center;gap:10px}.nav-language-selector{height:32px;padding:0 10px;border:0;border-radius:10px;background:#ffffff1a;color:#000;outline:0}.zoom-controls{display:flex;align-items:center;gap:6px;padding-left:4px}.zoom-btn{width:32px;height:32px;border:0;border-radius:10px;display:grid;place-items:center;cursor:pointer;color:#fff;background:#ffffff14;transition:transform var(--fast),box-shadow var(--fast)}.zoom-btn:hover{transform:translateY(-1px);box-shadow:0 0 10px #ffffff26}.zoom-btn svg{width:18px;height:18px}.zoom-display{font-size:12px;opacity:.8}.room-menu{position:relative}.room-menu-toggle{height:32px;padding:0 10px;border:0;border-radius:10px;cursor:pointer;color:#fff;background:#ffffff14}.room-menu-popover{position:absolute;top:40px;right:0;width:220px;padding:12px;border:1px solid var(--glass-border);border-radius:12px;background:#141428e6;box-shadow:var(--shadow);z-index:50;animation:fadeUp .2s var(--fast)}.room-menu-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.room-menu-label{opacity:.8}.room-menu-id{font-weight:600}.icon-rail{position:fixed;top:0;left:0;bottom:0;width:var(--rail);padding:10px 10px 14px;display:flex;flex-direction:column;gap:10px;background:#0a0a1e80;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right:1px solid var(--glass-border);z-index:41}.icon-btn{position:relative;width:48px;height:48px;border:1px solid var(--glass-border);border-radius:14px;background:#ffffff0f;color:#fff;display:grid;place-items:center;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),background var(--fast),border var(--fast)}.icon-btn svg{width:22px;height:22px}.icon-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000059}.icon-btn.on{box-shadow:0 0 12px #00ffc866,inset 0 0 10px #00ffc833}.icon-btn.off{opacity:.7}.icon-btn.active{outline:2px solid var(--neon-blue)}.icon-btn.danger{background:#ff00001a;border-color:#ff000040}.badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff4d6d;color:#fff;font-size:11px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4)}.show-rail-tab{position:fixed;top:56px;left:0;width:20px;height:72px;border-radius:0 10px 10px 0;border:1px solid var(--glass-border);background:#0a0a1e8c;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:42}.show-rail-tab svg{width:16px;height:16px}.workspace{position:relative;display:flex;flex-direction:column;gap:12px;flex:1;margin-left:var(--rail);padding:62px 16px 16px;transition:margin-right var(--slow)}.workspace.shrink{margin-right:var(--rightbar)}.typing-inline{margin-left:30px;height:20px;font-size:14px;color:var(--neon-green);opacity:1;font-family:monospace;white-space:nowrap;overflow:hidden;display:flex;align-items:center;gap:6px;text-shadow:0 0 6px var(--neon-green),0 0 12px var(--neon-green),0 0 20px var(--neon-green),0 0 40px var(--neon-green);animation:glowPulse 1.5s ease-in-out infinite}.typing-inline:before{content:"✏️";font-size:14px;animation:iconBounce 1s ease-in-out infinite}@keyframes glowPulse{0%,to{text-shadow:0 0 6px var(--neon-green),0 0 12px var(--neon-green),0 0 20px var(--neon-green),0 0 40px var(--neon-green)}50%{text-shadow:0 0 8px var(--neon-green),0 0 16px var(--neon-green),0 0 24px var(--neon-green),0 0 50px var(--neon-green)}}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.run-btn{width:100%;padding:10px 14px;border:0;border-radius:10px;color:#fff;cursor:pointer;background:var(--brandGrad);background-size:400% 400%;animation:animatedGradient 8s linear infinite;transition:transform var(--fast),box-shadow var(--fast)}.run-btn:hover{transform:translateY(-2px);box-shadow:0 0 14px var(--neon-green)}.output-console{width:100%;height:200px;padding:12px;border-radius:10px;background:#000;color:var(--neon-green);box-shadow:inset 0 0 10px #00ff004d;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;position:relative}.output-console:after{content:"|";position:absolute;bottom:10px;left:12px;animation:blink 1s step-end infinite}.right-sidebar{position:fixed;top:48px;right:0;bottom:0;width:0;overflow:hidden;background:linear-gradient(180deg,#ffffff1a,#ffffff0f);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-left:1px solid var(--glass-border);transition:width var(--slow);z-index:40}.right-sidebar.open{width:var(--rightbar)}.panel{padding:14px;animation:fadeUp .25s var(--fast)}.panel h3{margin:8px 6px 12px}.users-list{list-style:none;margin:0;padding:0}.users-list li{margin:6px;padding:8px 10px;border-radius:10px;background:#ffffff12}.panel.chat{display:flex;flex-direction:column;height:100%}.chat-messages{flex:1;padding:10px;border:1px solid var(--glass-border);border-radius:10px;background:#00000040;overflow:auto}.msg{margin:6px 0;padding:8px 10px;border-radius:10px;background:#ffffff0f}.chat-input-row{display:flex;flex-wrap:nowrap;gap:8px;margin-top:10px;margin-bottom:25px}.chat-input-row input{flex:1;height:34px;padding:10px;border:1px solid var(--glass-border);border-radius:10px;background:#ffffff14;color:#fff;outline:0;align-self:center}.chat-input-row button{min-width:20px;height:44px;padding:10px 14px;border:0;border-radius:10px;color:#fff;background-color:var(--neon-green);cursor:pointer;align-self:center}.toast{position:fixed;left:calc(var(--rail) + 16px);bottom:16px;padding:10px 14px;border:1px solid var(--glass-border);border-radius:10px;background:#141428e6;box-shadow:var(--shadow);z-index:60}.monaco-editor,.monaco-editor .overflow-guard{border-radius:10px;outline:1px solid rgba(255,255,255,.08)}
