@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&display=swap";
:root{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-tertiary:#111;--bg-card:#ffffff08;--bg-card-hover:#ffffff0f;--bg-elevated:#ffffff14;--accent-primary:#ff6363;--accent-primary-hover:#ff7a7a;--accent-glow:#ff636326;--accent-secondary:#e8a0ff;--accent-secondary-glow:#e8a0ff1a;--accent-warm:#ffb347;--accent-warm-glow:#ffb3471a;--accent-gold:gold;--text-primary:#ececec;--text-secondary:#888;--text-muted:#555;--text-accent:#ff6363;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-accent:#ff636340;--cursor-1:#ff6b6b;--cursor-2:#51cf66;--cursor-3:#339af0;--cursor-4:#fcc419;--cursor-5:#cc5de8;--cursor-6:#22b8cf;--cursor-7:#ff922b;--cursor-8:#f06595;--sidebar-width:260px;--header-height:52px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 20px #0009;--shadow-lg:0 12px 48px #000000b3;--shadow-glow:0 0 40px var(--accent-glow);--transition-fast:.15s cubic-bezier(.25,.1,.25,1);--transition-normal:.25s cubic-bezier(.25,.1,.25,1);--transition-slow:.4s cubic-bezier(.25,.1,.25,1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}body{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea{color:inherit;font-family:inherit}.mono{font-family:JetBrains Mono,Fira Code,monospace}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}30%{transform:translate(3%,-15%)}50%{transform:translate(12%,9%)}70%{transform:translate(9%,4%)}90%{transform:translate(-1%,7%)}}.landing-page{background:var(--bg-primary);flex-direction:column;min-height:100vh;display:flex;position:relative;overflow:hidden}.landing-bg{z-index:0;pointer-events:none;position:fixed;inset:0}.landing-bg:before{content:"";background-color:#0000;background-image:radial-gradient(at 20% 20%,#ff636312 0%,#0000 50%),radial-gradient(at 80% 80%,#e8a0ff0a 0%,#0000 50%),radial-gradient(#ffb34708 0%,#0000 50%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;width:180%;height:180%;animation:25s infinite gradientShift;position:absolute;top:-40%;left:-40%}.landing-bg:after{content:"";opacity:.4;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:absolute;inset:0}.landing-nav{z-index:50;-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border-subtle);background:#000c;justify-content:space-between;align-items:center;height:56px;padding:0 2rem;display:flex;position:fixed;top:0;left:0;right:0}.landing-nav-logo{letter-spacing:-.02em;align-items:center;gap:10px;font-size:1rem;font-weight:700;display:flex}.landing-nav-logo svg{flex-shrink:0}.landing-nav-links{align-items:center;gap:.5rem;display:flex}.landing-nav-link{color:var(--text-secondary);transition:all var(--transition-fast);border-radius:8px;padding:6px 14px;font-size:.85rem;font-weight:500}.landing-nav-link:hover{color:var(--text-primary);background:#ffffff0d}.landing-main{z-index:1;flex:1;grid-template-columns:1fr 420px;align-items:center;gap:4rem;width:100%;max-width:1100px;min-height:100vh;margin:0 auto;padding:56px 3rem 2rem;animation:.6s fadeIn;display:grid;position:relative}.landing-hero{flex-direction:column;justify-content:center;display:flex}.landing-logo-svg{flex-shrink:0}.landing-hero h1{letter-spacing:-.04em;color:#fff;margin-bottom:1.2rem;font-size:clamp(2.5rem,4.5vw,3.8rem);font-weight:800;line-height:1.08;animation:.6s slideUp}.gradient-text{background:linear-gradient(135deg,var(--accent-primary),var(--accent-warm),var(--accent-secondary));-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s infinite gradientShift}.hero-subtitle{color:var(--text-secondary);max-width:440px;margin-bottom:1.5rem;font-size:1.05rem;font-weight:400;line-height:1.7;animation:.7s slideUp}.hero-pills{flex-wrap:wrap;gap:.5rem;animation:.9s slideUp;display:flex}.hero-pill{border:1px solid var(--border-subtle);color:var(--text-secondary);transition:all var(--transition-fast);background:#ffffff0a;border-radius:100px;padding:6px 14px;font-size:.75rem;font-weight:500}.hero-pill:hover{border-color:var(--border-default);color:#fff;background:#ffffff12}.landing-panel{border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffff06;border-radius:16px;flex-direction:column;gap:1rem;padding:1.5rem;animation:.7s slideUp;display:flex;box-shadow:0 8px 40px #0006}.panel-identity{align-items:center;gap:.75rem;display:flex}.avatar-big{border:2px solid var(--border-default);width:48px;height:48px;transition:border-color var(--transition-fast);background:#ffffff0d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.6rem;display:flex}.avatar-big:hover{border-color:var(--border-active)}.avatar-toggle-btn{letter-spacing:2px;width:24px;height:24px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.avatar-toggle-btn:hover{color:var(--text-primary);background:#ffffff14}.panel-name-input{font-size:.95rem!important}.avatar-picker{grid-template-columns:repeat(8,1fr);gap:3px;display:grid}.avatar-option{aspect-ratio:1;cursor:pointer;background:#ffffff05;border:2px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:100%;font-size:1.15rem;transition:all .12s;display:flex}.avatar-option:hover{background:#ffffff0f;transform:scale(1.1)}.avatar-option.selected{border-color:var(--accent-primary);background:#ff63631a}.panel-tabs{background:#ffffff0a;border-radius:8px;gap:2px;padding:3px;display:flex}.panel-tab{text-align:center;color:var(--text-muted);transition:all var(--transition-fast);cursor:pointer;border-radius:6px;flex:1;padding:.5rem;font-size:.82rem;font-weight:500}.panel-tab:hover{color:var(--text-secondary)}.panel-tab.active{color:#fff;background:#ffffff14}.panel-form{flex-direction:column;gap:.6rem;display:flex}.input-row{gap:.5rem;display:flex}.input-field{border:1px solid var(--border-subtle);color:var(--text-primary);transition:all var(--transition-fast);background:#ffffff0a;border-radius:8px;outline:none;flex:1;padding:.6rem .8rem;font-size:.85rem}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);background:#ffffff0f}.input-field::placeholder{color:var(--text-muted)}.select-field{border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;min-width:130px;transition:border-color var(--transition-fast);appearance:none;background:#ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 10px center no-repeat;border-radius:8px;outline:none;padding:.6rem 32px .6rem .8rem;font-size:.85rem}.select-field:focus{border-color:var(--accent-primary)}.select-field option,option{color:#eee;background:#111}.btn-primary{background:var(--accent-primary);color:#fff;cursor:pointer;width:100%;transition:all var(--transition-normal);border-radius:8px;padding:.7rem 1.5rem;font-size:.88rem;font-weight:600}.btn-primary:hover{background:var(--accent-primary-hover);box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:#ffffff0a;border-radius:8px;padding:.6rem 1.2rem;font-size:.85rem;font-weight:500}.btn-secondary:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#ffffff14}.panel-rooms{flex-direction:column;gap:.3rem;display:flex}.panel-rooms-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.25rem;font-size:.65rem;font-weight:600}.room-item{border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);background:#ffffff05;border-radius:8px;justify-content:space-between;align-items:center;padding:.55rem .7rem;display:flex}.room-item:hover{border-color:var(--border-default);background:#ffffff0d}.room-item-info{align-items:center;gap:.5rem;display:flex}.room-item-name{font-size:.82rem;font-weight:500}.room-item-lang{color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:1px 6px;font-size:.65rem}.room-item-users{color:var(--text-secondary);align-items:center;gap:5px;font-size:.75rem;display:flex}.room-item-dot{background:#51cf66;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}.landing-footer{z-index:1;text-align:center;border-top:1px solid var(--border-subtle);color:var(--text-muted);padding:1.5rem 0;font-size:.72rem;position:relative}.landing-footer a{color:var(--text-secondary);transition:color var(--transition-fast)}.landing-footer a:hover{color:var(--accent-primary)}@media (max-width:860px){.landing-main{grid-template-columns:1fr;gap:2.5rem;min-height:auto;padding:80px 1.5rem 2rem}.landing-hero{text-align:center;align-items:center}.hero-subtitle{max-width:100%}.hero-features{max-width:400px}.landing-panel{width:100%;max-width:480px;margin:0 auto}}@media (max-width:480px){.hero-features{grid-template-columns:1fr}.avatar-picker{grid-template-columns:repeat(8,1fr)}.landing-main{padding:72px 1rem 1.5rem}}.editor-page{flex-direction:column;height:100vh;display:flex;overflow:hidden}.editor-header{height:var(--header-height);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);z-index:10;background:#0a0a0af2;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.editor-header-left{align-items:center;gap:.75rem;display:flex}.editor-logo{cursor:pointer;transition:opacity var(--transition-fast);align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:flex}.editor-logo:hover{opacity:.8}.editor-logo svg{flex-shrink:0}.editor-room-name{color:var(--text-muted);border:1px solid var(--border-subtle);background:#ffffff0a;border-radius:6px;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:.8rem}.editor-header-right{align-items:center;gap:.4rem;display:flex}.editor-body{flex:1;display:flex;overflow:hidden}.editor-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.connected-users{align-items:center;gap:2px;display:flex}.user-avatar{color:#fff;border:2px solid var(--bg-primary);width:30px;height:30px;transition:transform var(--transition-fast);cursor:default;border-radius:50%;justify-content:center;align-items:center;margin-left:-5px;font-size:.65rem;font-weight:700;display:flex;position:relative;overflow:hidden}.user-avatar-emoji{font-size:.85rem;line-height:1}.user-avatar:first-child{margin-left:0}.user-avatar:hover{z-index:2;transform:scale(1.15)}.user-avatar-tooltip{background:var(--bg-tertiary);border:1px solid var(--border-default);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);border-radius:6px;padding:3px 8px;font-size:.65rem;font-weight:500;position:absolute;bottom:-28px;left:50%;transform:translate(-50%)}.user-avatar:hover .user-avatar-tooltip{opacity:1}.user-count-badge{color:var(--text-muted);margin-left:4px;font-size:.7rem}.language-select{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast);appearance:none;background:#ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 6px center no-repeat;border-radius:6px;outline:none;padding:.35rem 22px .35rem .65rem;font-size:.78rem}.language-select:focus{border-color:var(--accent-primary)}.btn-copy-room{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;border-radius:6px;align-items:center;gap:5px;padding:.35rem .65rem;font-size:.78rem;display:flex}.btn-copy-room:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#ffffff14}.btn-copy-room.copied{color:#51cf66;border-color:#51cf66}.connection-status{color:var(--text-muted);align-items:center;gap:5px;font-size:.72rem;display:flex}.connection-dot{width:6px;height:6px;transition:background var(--transition-fast);border-radius:50%}.connection-dot.connected{background:#51cf66;box-shadow:0 0 8px #51cf6666}.connection-dot.disconnected{background:var(--accent-primary)}.connection-dot.connecting{background:var(--accent-warm);animation:1s infinite pulse}.editor-container{flex:1;position:relative;overflow:hidden}.remote-cursor{z-index:5;pointer-events:none;width:2px;animation:1.2s step-end infinite cursorBlink;position:absolute}.remote-cursor-label{color:#fff;white-space:nowrap;pointer-events:none;border-radius:3px 3px 3px 0;padding:1px 6px;font-size:.65rem;font-weight:600;animation:.3s fadeIn;position:absolute;top:-20px;left:0}.remote-selection{opacity:.18;z-index:4;pointer-events:none;position:absolute}.editor-loading{background:var(--bg-primary);z-index:20;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:absolute;inset:0}.loading-spinner{border:2px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.loading-text{color:var(--text-muted);font-size:.85rem}.editor-sidebar{width:var(--sidebar-width);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-left:1px solid var(--border-subtle);background:#080808f2;flex-direction:column;gap:1.25rem;padding:1rem;transition:width .25s,padding .25s,opacity .2s;display:flex;overflow:hidden auto}.editor-sidebar.closed{opacity:0;border-left:none;width:0;padding:0;overflow:hidden}.sidebar-backdrop{display:none}.sidebar-close-btn{width:28px;height:28px;color:var(--text-muted);cursor:pointer;z-index:5;transition:all var(--transition-fast);border-radius:6px;justify-content:center;align-items:center;display:none;position:absolute;top:.6rem;right:.6rem}.sidebar-close-btn:hover{color:var(--text-primary);background:#ffffff14}.sidebar-section h4{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.6rem;font-size:.65rem}.sidebar-user-list{flex-direction:column;gap:.25rem;display:flex}.sidebar-user{transition:background var(--transition-fast);border-radius:8px;align-items:center;gap:.6rem;padding:.5rem;display:flex}.sidebar-user:hover{background:#ffffff0a}.sidebar-user-avatar{background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.2rem;display:flex}.sidebar-user-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sidebar-user-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.sidebar-user-name{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:.82rem;font-weight:500;display:flex;overflow:hidden}.sidebar-you-tag{color:var(--text-muted);background:#ffffff0f;border-radius:4px;padding:1px 5px;font-size:.6rem;font-weight:600}.sidebar-user-status{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.7rem}.typing-indicator{color:var(--accent-primary);align-items:center;gap:3px;font-weight:500;display:inline-flex}.typing-dot{background:var(--accent-primary);border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite typingBounce}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.sidebar-info-grid{flex-direction:column;gap:.4rem;display:flex}.sidebar-info-item{background:#ffffff05;border-radius:6px;justify-content:space-between;align-items:center;padding:.35rem .5rem;display:flex}.sidebar-info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.sidebar-info-value{color:var(--text-secondary);font-size:.75rem}.sidebar-leave{border-top:1px solid var(--border-subtle);margin-top:auto;padding-top:1rem}.btn-leave-room{width:100%;color:var(--accent-primary);cursor:pointer;transition:all var(--transition-fast);background:#ff63630f;border:1px solid #ff636326;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:.55rem .75rem;font-size:.8rem;font-weight:500;display:flex}.btn-leave-room:hover{background:#ff636324;border-color:#ff636359}.btn-leave-room svg{flex-shrink:0}.btn-copy-room.active{color:var(--text-primary);background:#ffffff14}.btn-run{color:#51cf66;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:#51cf661f;border:1px solid #51cf6640;border-radius:6px;align-items:center;gap:5px;padding:.35rem .75rem;font-size:.78rem;font-weight:600;display:flex}.btn-run:hover:not(.disabled):not(.running){background:#51cf6633;border-color:#51cf6666;box-shadow:0 0 12px #51cf6626}.btn-run.running{opacity:.7;cursor:wait}.btn-run.disabled{opacity:.35;cursor:not-allowed}.run-spinner{border:2px solid #51cf664d;border-top-color:#51cf66;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite spin}.editor-pane{position:relative;overflow:hidden}.terminal-panel{border-top:1px solid var(--border-subtle);background:#080808;flex-direction:column;min-height:100px;max-height:60vh;display:flex;position:relative}.terminal-resize-handle{cursor:row-resize;z-index:5;background:0 0;height:6px;transition:background .15s;position:absolute;top:-3px;left:0;right:0}.terminal-resize-handle:hover,.terminal-resize-handle:active{background:var(--accent-primary)}.terminal-header{border-bottom:1px solid var(--border-subtle);background:#0f0f0ff2;flex-shrink:0;justify-content:space-between;align-items:center;padding:.35rem .75rem;display:flex}.terminal-header-left{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:flex}.terminal-header-right{align-items:center;gap:4px;display:flex}.terminal-running-badge{text-transform:uppercase;color:#51cf66;background:#51cf661f;border-radius:4px;padding:1px 6px;font-size:.6rem;font-weight:600;animation:1.5s infinite pulse}.terminal-action{color:var(--text-muted);transition:all var(--transition-fast);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;display:flex}.terminal-action:hover{color:var(--text-primary);background:#ffffff0f}.terminal-body{flex:1;padding:.5rem .75rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.78rem;line-height:1.6;overflow:hidden auto}.terminal-line pre{white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:inherit;margin:0}.terminal-stdout pre{color:#d4d4d4}.terminal-stderr pre{color:#ff6b6b}.terminal-command pre{color:#51cf66;font-weight:600}.terminal-info pre{color:var(--text-muted);font-size:.7rem}.terminal-system pre{color:#ffb347}.terminal-line+.terminal-line{margin-top:2px}.terminal-command{border-top:1px solid #ffffff0a;margin-top:.5rem;padding-top:.5rem}.terminal-command:first-child{border-top:none;margin-top:0;padding-top:0}.terminal-empty{height:100%;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.terminal-empty kbd{color:var(--text-secondary);background:#ffffff14;border:1px solid #ffffff1f;border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:.72rem;display:inline-block}.terminal-supported{color:var(--text-muted);margin-top:.25rem;font-size:.7rem}.btn-cloud-save{color:#6395ff;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:#6395ff1a;border:1px solid #6395ff40;border-radius:6px;align-items:center;gap:5px;padding:.35rem .75rem;font-size:.78rem;font-weight:500;display:flex}.btn-cloud-save:hover{background:#6395ff2e;border-color:#6395ff66;box-shadow:0 0 12px #6395ff1f}.btn-cloud-save.logged-in{color:#51cf66;background:#51cf661a;border-color:#51cf6640}.btn-cloud-save.logged-in:hover{background:#51cf662e;border-color:#51cf6666}.sidebar-account{flex-direction:column;gap:.5rem;display:flex}.sidebar-account-info{align-items:center;gap:.6rem;display:flex}.sidebar-account-avatar{background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.4rem;display:flex}.sidebar-account-details{flex-direction:column;gap:1px;min-width:0;display:flex}.sidebar-account-name{color:var(--text-primary);font-size:.82rem;font-weight:600}.sidebar-account-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.btn-logout{color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);background:#ffffff08;border-radius:6px;padding:.35rem .6rem;font-size:.72rem}.btn-logout:hover{color:var(--accent-primary);background:#ff63630f;border-color:#ff636333}.btn-signin{color:#6395ff;cursor:pointer;width:100%;transition:all var(--transition-fast);background:#6395ff14;border:1px solid #6395ff2e;border-radius:8px;align-items:center;gap:6px;padding:.55rem .75rem;font-size:.78rem;font-weight:500;display:flex}.btn-signin:hover{background:#6395ff26;border-color:#6395ff4d}.sidebar-files-header{justify-content:space-between;align-items:center;display:flex}.sidebar-files-header h4{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:flex}.sidebar-files-refresh{width:24px;height:24px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:5px;justify-content:center;align-items:center;display:flex}.sidebar-files-refresh:hover{color:var(--text-primary);background:#ffffff0f}.sidebar-files-list{flex-direction:column;gap:2px;max-height:240px;display:flex;overflow-y:auto}.sidebar-files-empty{text-align:center;color:var(--text-muted);padding:.75rem .5rem;font-size:.75rem}.sidebar-file-item{transition:background var(--transition-fast);border-radius:6px;justify-content:space-between;align-items:center;padding:.4rem .5rem;display:flex}.sidebar-file-item:hover{background:#ffffff0a}.sidebar-file-info{cursor:pointer;min-width:0;color:var(--text-secondary);flex:1;align-items:center;gap:.5rem;display:flex}.sidebar-file-info:hover{color:var(--text-primary)}.sidebar-file-info svg{color:var(--text-muted);flex-shrink:0}.sidebar-file-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.sidebar-file-name{white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:500;overflow:hidden}.sidebar-file-lang{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.62rem}.sidebar-file-delete{width:22px;height:22px;color:var(--text-muted);cursor:pointer;opacity:0;transition:all var(--transition-fast);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-file-item:hover .sidebar-file-delete{opacity:1}.sidebar-file-delete:hover{color:#ff6b6b;background:#ff63631f}.auth-overlay{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.auth-modal{border:1px solid var(--border-default);background:#0a0a0a;border-radius:16px;width:100%;max-width:400px;margin:1rem;animation:.25s scaleIn;overflow:hidden;box-shadow:0 24px 80px #0009}.auth-header{flex-direction:column;gap:.4rem;padding:1.5rem 1.5rem 0;display:flex;position:relative}.auth-logo{align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.auth-subtitle{color:var(--text-muted);font-size:.82rem}.auth-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:1.25rem;right:1.25rem}.auth-close:hover{color:var(--text-primary);background:#ffffff0f}.auth-tabs{background:#ffffff0a;border-radius:8px;gap:2px;margin:1rem 1.5rem 0;padding:3px;display:flex}.auth-tab{text-align:center;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:6px;flex:1;padding:.5rem;font-size:.82rem;font-weight:500}.auth-tab:hover{color:var(--text-secondary)}.auth-tab.active{color:#fff;background:#ffffff14}.auth-form{flex-direction:column;gap:.75rem;padding:1rem 1.5rem;display:flex}.auth-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:.3rem;font-size:.75rem;font-weight:500;display:flex}.auth-input{border:1px solid var(--border-subtle);color:var(--text-primary);transition:all var(--transition-fast);background:#ffffff0a;border-radius:8px;outline:none;padding:.65rem .8rem;font-size:.88rem}.auth-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);background:#ffffff0f}.auth-input::placeholder{color:var(--text-muted)}.auth-error{color:#ff6b6b;background:#ff636314;border:1px solid #ff636333;border-radius:8px;padding:.5rem .75rem;font-size:.8rem}.auth-submit{background:var(--accent-primary);color:#fff;cursor:pointer;width:100%;transition:all var(--transition-normal);border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:.25rem;padding:.7rem;font-size:.88rem;font-weight:600;display:flex}.auth-submit:hover{background:var(--accent-primary-hover);box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.auth-footer{text-align:center;color:var(--text-muted);padding:.75rem 1.5rem 1.25rem;font-size:.78rem}.auth-link{color:var(--accent-primary);cursor:pointer;font-weight:500;text-decoration:none}.auth-link:hover{text-decoration:underline}.save-submit{background:#51cf66!important}.save-submit:hover{background:#5fd072!important;box-shadow:0 4px 20px #51cf6633!important}.save-existing{flex-direction:column;gap:.4rem;display:flex}.save-existing-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem;font-weight:600}.save-file-list{flex-direction:column;gap:3px;max-height:160px;display:flex;overflow-y:auto}.save-file-item{border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:#ffffff05;border-radius:6px;justify-content:space-between;align-items:center;padding:.45rem .6rem;display:flex}.save-file-item:hover{border-color:var(--border-default);background:#ffffff0d}.save-file-item.selected{background:#51cf660f;border-color:#51cf6666}.save-file-name{font-size:.8rem;font-weight:500}.save-file-meta{color:var(--text-muted);font-size:.65rem}.btn-mobile-menu{color:var(--text-secondary);transition:all var(--transition-fast);border-radius:6px;justify-content:center;align-items:center;padding:6px;display:none}.btn-mobile-menu:hover{color:var(--text-primary);background:#ffffff0f}.header-controls{align-items:center;gap:.4rem;display:flex}.toast{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:100;background:#111111f2;align-items:center;gap:8px;padding:.65rem 1.1rem;font-size:.82rem;animation:.25s slideUp;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.toast.toast-success{border-color:#51cf664d}.toast.toast-error{border-color:#ff63634d}@media (max-width:860px){.landing-main{grid-template-columns:1fr;gap:2.5rem;min-height:auto;padding:80px 1.5rem 2rem}.landing-hero{text-align:center;align-items:center}.hero-subtitle{max-width:100%}.hero-pills{justify-content:center}.landing-panel{width:100%;max-width:480px;margin:0 auto}}@media (max-width:768px){.btn-mobile-menu{display:flex}.btn-label-desktop{display:none}.editor-header{padding:0 .5rem;position:relative}.editor-room-name{display:none}.editor-header-right{gap:.25rem}.header-controls{top:var(--header-height);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-subtle);z-index:40;background:#0a0a0afa;border-radius:0 0 12px 12px;flex-direction:column;align-items:stretch;gap:.35rem;width:240px;padding:.6rem;animation:.2s slideDown;display:none;position:absolute;right:0;box-shadow:0 12px 40px #0009}.header-controls.open{display:flex}.header-controls .connection-status{border-bottom:1px solid var(--border-subtle);justify-content:center;margin-bottom:.15rem;padding:.4rem 0}.header-controls .connected-users{justify-content:center;padding:.3rem 0}.header-controls .language-select{width:100%;padding:.5rem .65rem}.header-controls .btn-run{justify-content:center;width:100%;padding:.5rem}.header-controls .btn-run .btn-label-desktop{display:inline}.header-controls .btn-copy-room,.header-controls .btn-cloud-save{justify-content:center;width:100%;padding:.5rem}.header-controls .btn-cloud-save .btn-label-desktop{display:inline}.editor-sidebar{right:0;top:var(--header-height);z-index:50;width:280px;transition:transform .25s,opacity .2s;position:fixed;bottom:0;transform:translate(0);box-shadow:-8px 0 30px #0009}.editor-sidebar.closed{opacity:0;pointer-events:none;width:280px;padding:1rem;transform:translate(100%)}.sidebar-backdrop{inset:0;top:var(--header-height);z-index:45;background:#00000080;animation:.2s fadeIn;display:block;position:fixed}.sidebar-close-btn{display:flex}.header-controls .btn-sidebar-toggle{justify-content:center;width:100%;padding:.5rem;display:flex}.terminal-panel{min-height:80px}.terminal-body{font-size:.72rem}.auth-modal{max-width:calc(100vw - 2rem);margin:.5rem}.auth-header{padding:1.25rem 1.25rem 0}.auth-form{padding:.75rem 1.25rem}.auth-footer{padding:.6rem 1.25rem 1rem}}@media (max-width:480px){.landing-main{padding:72px 1rem 1.5rem}.landing-nav{padding:0 .75rem}.landing-nav-links{display:none}.landing-hero h1{font-size:1.85rem}.hero-subtitle{font-size:.85rem}.hero-pills{gap:.4rem}.hero-pill{padding:.3rem .7rem;font-size:.7rem}.avatar-picker{grid-template-columns:repeat(8,1fr)}.input-row{flex-direction:column}.panel-identity{text-align:center;flex-direction:column}.avatar-big{margin:0 auto}.landing-panel{border-radius:12px;padding:1rem}.landing-footer{padding:1rem .5rem;font-size:.65rem}.toast{justify-content:center;font-size:.78rem;bottom:.75rem;left:.75rem;right:.75rem}.editor-header{padding:0 .4rem}.editor-logo span{font-size:.85rem}.editor-logo svg{width:18px;height:18px}.editor-sidebar,.editor-sidebar.closed{width:260px;padding:.75rem}.header-controls{border-radius:12px;width:calc(100vw - 1rem);right:.5rem}}
