@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap";:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100vw;height:100vh;background-color:#0d0d0d;overflow:hidden}#root{width:100%;height:100%;max-width:none;margin:0;padding:0;text-align:left}*{box-sizing:border-box;font-family:Inter,sans-serif}body,html{margin:0;padding:0;background:#0d0d0d;color:#fff;height:100vh}.homePageWrapper{display:flex;align-items:center;justify-content:center;color:#fff;height:100vh;background-color:#0a0a0a;background-image:radial-gradient(circle at 50% 50%,#1a1a1a,#0a0a0a)}.formWrapper{background:#1c1e29;padding:30px;border-radius:15px;width:450px;max-width:90%;box-shadow:0 20px 50px #00000080;border:1px solid #333;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.logoWrapper{display:flex;align-items:center;justify-content:center;margin-bottom:25px;gap:10px}.homePageLogo{height:50px;filter:drop-shadow(0 0 10px rgba(74,237,136,.4))}.appName{margin:0;font-size:24px;font-weight:700;color:#eee}.mainLabel{margin-bottom:20px;margin-top:0;color:#888;font-weight:600}.inputGroup{display:flex;flex-direction:column}.inputBox{padding:12px 15px;border-radius:8px;outline:none;border:1px solid #333;margin-bottom:15px;background:#282a36;color:#eee;font-size:16px;font-weight:600;transition:all .3s ease}.inputBox:focus{border-color:#4aed88;box-shadow:0 0 5px #4aed8833}.btn{border:none;padding:12px;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease-in-out}.joinBtn{background:#4aed88;color:#1c1e29;margin-top:10px}.joinBtn:hover{background:#36c570;transform:scale(1.02)}.createInfo{margin:20px auto 0;color:#888;font-size:14px}.createNewBtn{color:#4aed88;text-decoration:none;border-bottom:1px solid #4aed88;transition:all .3s ease-in-out;cursor:pointer;font-weight:700}.createNewBtn:hover{color:#36c570;border-color:#36c570}footer{position:fixed;bottom:10px;text-align:center;width:100%}footer h4{color:#555;font-weight:400;font-size:14px}footer a{color:#4aed88;text-decoration:none}.homePageWrapper{display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;background-color:#0a0a0a;background-image:radial-gradient(circle at 50% 50%,#1a1a1a,#0a0a0a)}.session-tape-bar{position:fixed;bottom:0;left:0;right:0;background:#181824;border-top:2px solid #4a9eff;z-index:1000;font-family:JetBrains Mono,monospace;font-size:12px}.replay-banner{background:linear-gradient(90deg,#ff7a45,#ffd166);color:#181824;padding:4px 16px;font-weight:700;display:flex;align-items:center;justify-content:space-between}.exit-replay-btn{background:#181824;color:#fff;border:none;padding:2px 10px;border-radius:4px;cursor:pointer;font-size:11px}.tape-controls{display:flex;align-items:center;gap:8px;padding:6px 12px;min-height:44px;overflow:hidden}.tape-btn{min-width:42px;background:#292943;color:#7db8ff;border:1px solid #4a9eff44;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;transition:background .15s}.tape-btn:hover{background:#35355b}.tape-btn:disabled{cursor:not-allowed;opacity:.55}.play-btn{min-width:72px;background:#0e639c;color:#fff;border-color:#47a8ff;font-weight:700;flex:0 0 auto}.play-btn:hover{background:#17b}.play-btn:disabled:hover{background:#0e639c}.live-btn{background:#16512f;color:#64f29e;border-color:#4eff9144;font-weight:700}.tape-slider-wrapper{flex:1;position:relative;height:24px;display:flex;align-items:center;min-width:140px}.tape-slider{width:100%;accent-color:#4a9eff;cursor:pointer}.tape-slider:disabled{cursor:not-allowed;opacity:.55}.tape-markers{position:absolute;top:0;left:0;right:0;height:100%;pointer-events:none}.tape-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%}.marker-edit{background:#4a9eff;opacity:.6}.marker-create{background:#4eff91;opacity:.8}.marker-delete{background:#ff4a4a;opacity:.8}.tape-event-info{display:flex;gap:12px;color:#aaa;font-size:11px;white-space:nowrap;min-width:0}.event-index{color:#4a9eff;font-weight:700}.event-user{color:#ffd166}.event-file{color:#c3e88d;overflow:hidden;text-overflow:ellipsis;max-width:220px}.event-time{color:#888}.speed-select{background:#292943;color:#aaa;border:1px solid #4a9eff44;border-radius:4px;padding:3px 6px;font-size:11px;cursor:pointer}.speed-select:disabled{cursor:not-allowed;opacity:.55}@media(max-width:780px){.tape-controls{flex-wrap:wrap;overflow:visible}.tape-slider-wrapper{order:10;flex-basis:100%;min-width:100%}.tape-event-info{display:none}.tape-btn{min-width:34px;padding:4px 6px}.play-btn{min-width:64px}}.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility,.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.editorShell{height:100vh;display:flex;flex-direction:column;background:#1e1e1e;color:#d4d4d4;overflow:hidden}.topBar{height:48px;background:#242424;border-bottom:1px solid #303030;display:flex;justify-content:space-between;align-items:center;padding:0 14px;flex:0 0 auto}.brandMark{display:flex;align-items:center;gap:10px;min-width:0}.brandLogo{width:26px;height:26px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#4aed88;color:#102416;font-size:10px;font-weight:900;letter-spacing:0;box-shadow:inset 0 -1px #00000038}.brandName{color:#f2f2f2;font-size:14px;font-weight:800;letter-spacing:0}.topActions{display:flex;gap:8px;align-items:center}.memberMenu{position:relative}.topButton{height:30px;border:1px solid #444444;background:#303030;color:#f4f4f4;padding:0 11px;border-radius:5px;cursor:pointer;font-size:12px;font-weight:750}.topButton:hover{background:#393939;border-color:#575757}.topButtonSecondary{background:#262626;color:#d8d8d8}.membersDropdown{position:absolute;top:36px;right:0;width:260px;z-index:10;padding:8px;background:#202020;border:1px solid #3a3a3a;border-radius:6px;box-shadow:0 14px 34px #00000061}.membersTitle{padding:4px 5px 8px;color:#8f8f8f;font-size:10px;font-weight:900;letter-spacing:0}.memberRow{padding:8px 7px;border-top:1px solid #303030}.memberName{color:#4aed88;font-size:13px;font-weight:800}.memberLocation{margin-top:3px;color:#a7a7a7;font-size:11px}.workspaceBody{display:flex;flex:1;min-height:0;overflow:hidden;padding-bottom:70px}.editorSidebar{width:292px;min-width:240px;background:#171717;border-right:1px solid #303030;display:flex;color:#ccc}.activityRail{width:48px;background:#111;border-right:1px solid #292929;display:flex;flex-direction:column;align-items:center;padding-top:8px;gap:4px}.activityButton{width:48px;height:44px;border:0;border-left:2px solid transparent;background:transparent;color:#858585;cursor:pointer;font-size:15px;font-weight:700}.activityButton:hover,.activityButton.is-active{color:#f3f3f3;background:#1d1d1d}.activityButton.is-active{border-left-color:#4aed88}.explorerPanel{flex:1;min-width:0;display:flex;flex-direction:column;background:#1c1c1c}.explorerTitlebar{height:35px;padding:0 10px 0 14px;display:flex;align-items:center;justify-content:space-between;color:#a9a9a9;font-size:11px;font-weight:700;letter-spacing:0}.explorerActions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .12s ease}.explorerPanel:hover .explorerActions,.explorerActions:focus-within{opacity:1}.iconButton,.fileTree-action,.newFileSubmit,.newFileCancel{border:0;background:transparent;color:#c5c5c5;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.iconButton{width:24px;height:24px;border-radius:5px;font-size:16px;font-weight:700}.iconButton:hover,.fileTree-action:hover,.newFileSubmit:hover,.newFileCancel:hover{background:#303030;color:#fff}.iconButton:disabled,.emptyExplorerAction:disabled{color:#5f5f5f;cursor:not-allowed}.workspaceHeader{height:24px;padding:0 8px;display:flex;align-items:center;gap:5px;color:#d4d4d4;font-size:11px;font-weight:800;letter-spacing:0;border-top:1px solid #2d2d2d;border-bottom:1px solid #2d2d2d;background:#222}.workspaceChevron{color:#bdbdbd;font-size:12px}.workspaceName{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspaceCount{margin-left:auto;color:#777;font-size:10px}.newFileForm{margin:7px 8px 5px;min-height:32px;border:1px solid #3d6fb6;background:#242424;display:flex;align-items:center;gap:4px;padding:3px 4px 3px 8px;box-shadow:0 0 0 1px #3d6fb633}.newFileBase{max-width:100px;color:#858585;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.newFileInput{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#fff;font-size:13px}.newFileInput::placeholder{color:#777}.newFileSubmit,.newFileCancel{width:22px;height:22px;border-radius:3px;font-size:12px}.fileTree{flex:1;overflow-y:auto;padding:3px 0 12px}.fileTree-row{min-height:26px;padding:0 8px 0 calc(8px + (var(--depth) * 14px));display:flex;align-items:center;justify-content:space-between;gap:6px;color:#ccc;cursor:pointer;font-size:13px;line-height:1;border-left:2px solid transparent;-webkit-user-select:none;user-select:none}.fileTree-row:hover{background:#292929}.fileTree-row.is-active{background:#303a34;border-left-color:#4aed88;color:#fff}.fileTree-folder{color:#ddd;font-weight:600}.fileTree-folder.has-active-child{color:#fff}.fileTree-name{min-width:0;display:flex;align-items:center;gap:6px}.fileTree-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fileTree-actions{display:flex;align-items:center;gap:1px;opacity:0}.fileTree-row:hover .fileTree-actions,.fileTree-row:hover>.fileTree-action,.fileTree-actions:focus-within{opacity:1}.fileTree-row:hover .fileTree-actions .fileTree-action,.fileTree-actions:focus-within .fileTree-action{opacity:1}.fileTree-action{width:20px;height:20px;border-radius:3px;opacity:0;flex:0 0 auto;font-size:13px}.fileTree-row:hover>.fileTree-action{opacity:1}.folderChevron{width:12px;color:#9d9d9d;font-size:11px}.folderIcon{width:14px;height:11px;position:relative;flex:0 0 auto;border-radius:2px;background:#c9a84f}.folderIcon:before{content:"";position:absolute;top:-3px;left:1px;width:7px;height:4px;border-radius:2px 2px 0 0;background:#d8b969}.folderIcon.is-open{background:#d6b15f}.fileTypeIcon{width:16px;height:16px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#101010;background:#8a8a8a;font-size:8px;font-weight:800;letter-spacing:0}.fileTypeIcon.is-default{background:transparent;border:1px solid #7d7d7d}.fileTypeIcon.is-html{background:#e56b3f;font-size:7px}.fileTypeIcon.is-css{background:#4aa3ff;color:#fff;font-size:10px}.fileTypeIcon.is-js{background:#f4d03f}.fileTypeIcon.is-jsx{background:#61dafb}.fileTypeIcon.is-py{background:#ffd66b}.fileTypeIcon.is-java{background:#f89820}.fileTypeIcon.is-cpp{background:#9cdcfe}.file-lock{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:3px;padding:2px 4px;font-size:9px;font-weight:800}.file-lockMine{color:#10351e;background:#4aed88}.file-lockOther{color:#ffd7d7;background:#6f2525}.emptyExplorer{padding:18px 12px}.emptyExplorerAction{width:100%;border:1px solid #3d3d3d;background:#2b2b2b;color:#d4d4d4;padding:8px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700}.emptyExplorerAction:hover{border-color:#4aed88;color:#fff}.editorMain{flex:1;min-width:0;display:flex;flex-direction:column;background:#1e1e1e}.editorTopStrip{height:36px;background:#1f1f1f;display:flex;border-bottom:1px solid #303030;justify-content:space-between;flex:0 0 auto}.editorTab{min-width:140px;max-width:320px;padding:0 14px;color:#fff;display:flex;align-items:center;border-top:2px solid #4aed88;background:#242424;font-size:13px;gap:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editorStatus{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:0 14px;color:#cfcfcf;font-size:12px;font-weight:750}.statusMeta{max-width:210px;color:#9f9f9f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statusPill{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:850}.statusPillGood{color:#13351f;background:#4aed88}.statusPillWarn{color:#2d2207;background:#f4c95d}.statusPillDanger{color:#ffe6e6;background:#7c2d2d}.statusButton{height:24px;border:1px solid #4a4a4a;background:#2d2d2d;color:#f3f3f3;padding:0 9px;border-radius:5px;cursor:pointer;font-size:11px;font-weight:800}.statusButton:hover{background:#383838}.statusButton:disabled{color:#777;cursor:not-allowed}.statusButtonPrimary{border-color:#1f6f48;background:#20864f}.statusButtonPrimary:hover{background:#25965a}.editorCanvas{flex:1;min-height:0;position:relative}.emptyEditorState{height:100%;display:flex;align-items:center;justify-content:center;color:#666;font-size:13px}.bottomWorkbench{height:240px;background:#181818;border-top:1px solid #303030;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.1fr);min-height:0}.outputPanel,.terminalPanel{min-width:0;min-height:0;display:flex;flex-direction:column;background:#151515}.outputPanel{border-right:1px solid #333333}.panelTitlebar{height:30px;padding:0 12px;font-size:11px;color:#b4b4b4;border-bottom:1px solid #303030;font-weight:800;display:flex;align-items:center;justify-content:space-between;letter-spacing:0;flex:0 0 auto}.panelActions{display:flex;align-items:center;gap:8px}.panelActions button{border:1px solid #1f6f48;background:#20864f;color:#fff;border-radius:5px;cursor:pointer;font-size:11px;font-weight:800;padding:3px 9px}.panelButtonGhost{background:transparent;color:#d4d4d4;border-color:transparent}.panelActions button:disabled{background:#555;cursor:not-allowed}.outputStream{flex:1;min-height:0;padding:10px 12px;margin:0;font-family:Fira Code,Consolas,monospace;font-size:13px;color:#a7f3d0;white-space:pre-wrap;overflow:auto}.outputStream span{color:#666;font-style:italic}.outputStream.is-error{color:#f87171}.terminalHost{flex:1;min-height:0;padding:6px 8px;background:#101010}.terminalHost .xterm{height:100%}.terminalPlaceholder{flex:1;display:flex;align-items:center;justify-content:center;color:#666;font-size:13px}@media(max-width:760px){.editorSidebar{width:240px;min-width:220px}.activityRail,.activityButton{width:40px}.bottomWorkbench{grid-template-columns:1fr;grid-template-rows:42% 58%}.outputPanel{border-right:0;border-bottom:1px solid #333333}}
