@layer modules{.code_tabs_container{display:flex;gap:1px;overflow-x:scroll;flex:1;height:100%}.code_tab{display:flex;align-items:center;padding:var(--sp-2) var(--sp-3);background-color:var(--bg-hover);cursor:pointer;white-space:nowrap;color:var(--text-light);gap:var(--sp-1);border-radius:var(--r-2) var(--r-2) 0 0;&.active{background-color:var(--bg-white);color:var(--text-color)}.tab_icon{font-size:16px}.tab_label{font-size:var(--fs-small);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab_close,.tab_modified{font-size:16px;color:var(--text-light)}.tab_close:hover{color:var(--text-color)}}.code_tab_ghost{opacity:0.4;background:var(--bg-hover)}.code_tab_chosen{background:var(--bg-white);box-shadow:var(--shadow-md)}.code_tab_drag{cursor:grabbing}.modal{border:none;background:transparent;padding:0;overflow:visible;&::backdrop{background:rgb(0 0 0 / 40%)}}.modal-content{background-color:var(--bg-white);padding:var(--sp-5);border:1px solid var(--border-color);width:fit-content;border-radius:var(--r-1);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:15px}.modal-body{display:flex;flex-direction:column;gap:15px}.modal-buttons{display:flex;justify-content:center;gap:10px;button{padding:var(--sp-2) var(--sp-3);border-radius:3px;background-color:var(--bg-hover);color:var(--text-color);&:hover{filter:brightness(1.1)}}}#modal_save_btn{background-color:var(--success-color);color:var(--bg-white)}:has(>.search_file_block){display:flex;flex-direction:column;gap:var(--sp-2)}.search_file_block{border:1px solid var(--border-color);border-radius:3px;background:var(--bg-menu);overflow:hidden;&[open]{background:var(--bg-hover)}summary::after{content:'▼';font-size:10px;margin-left:var(--sp-2);color:var(--text-lighter);transition:transform 0.2s}&:not([open]) summary::after{transform:rotate(-90deg)}}.search_file_summary{display:flex;align-items:center;font-weight:bold;font-size:var(--fs-small);color:var(--text-color);padding:6px 10px;cursor:pointer;background:var(--bg-hover);border-bottom:1px solid var(--border-color);user-select:text;list-style:none}.search_result_line{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-small);background:var(--bg-white);border-bottom:1px solid var(--bg-hover);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:22px;cursor:pointer;&:hover{background:var(--bg-hover)}mark{background:var(--color_gold_light);color:#222;padding:0 1px;border-radius:2px}}.search_line_number{min-width:32px;color:var(--text-lighter);font-size:var(--fs-caption);text-align:right;flex-shrink:0}.search_line_content{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search_code{font-family:var(--mono);font-size:var(--fs-small);color:inherit;white-space:pre;overflow:hidden;text-overflow:ellipsis;display:inline}.search_form.sticky{position:sticky;top:-20px;z-index:2;background:var(--bg-white);margin:-20px;padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2)}.search_row,.search_replace_row{display:flex;align-items:center;gap:var(--sp-2)}.search_query,.search_replace,.search_include,.search_exclude{font-size:var(--fs-body);padding:7px var(--sp-3);border:1px solid var(--border-color);border-radius:var(--r-1);width:0;flex:1 1 0;min-width:0}.search_replace{width:100%}.search_toggle,.search_replace_toggle{outline:none;cursor:pointer;opacity:0.6;padding:6px;border-radius:var(--r-1);font-size:20px;display:flex;align-items:center;justify-content:center;&.selected{opacity:1;background:var(--bg-hover)}&:hover{opacity:0.85}}.search_replace_toggle.selected span{transform:rotate(90deg)}@media (max-width:600px){.search_form.sticky{padding:10px}.search_row,.search_replace_row{gap:var(--sp-1)}.search_query,.search_replace,.search_include,.search_exclude{font-size:var(--fs-small);padding:6px var(--sp-2)}.search_toggle{font-size:18px;padding:var(--sp-1)}}.code_history_tab{padding:var(--sp-3);overflow-y:auto}.history_container{height:100%;overflow:auto;padding:var(--sp-3)}.history_list{display:flex;flex-direction:column;gap:var(--sp-2)}.history_bucket{border:1px solid var(--border-color);border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:6px;&.active{border-color:var(--primary-color);background:var(--bg-hover)}}.history_header{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:baseline;font-size:var(--fs-small);justify-content:space-between}.history_count{font-weight:var(--fw-strong)}.history_time,.history_note,.history_owners{font-size:var(--fs-caption);color:var(--text-light)}.history_time{flex:none}.history_note{padding:var(--sp-3) var(--sp-2)}.history_files{display:flex;flex-direction:column;gap:var(--sp-1)}.history_file{display:flex;gap:var(--sp-2);font-size:var(--fs-caption);padding:var(--sp-0) 6px;border-radius:3px;cursor:pointer;.file_name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}&:hover{background:var(--bg-hover)}.file_stats{display:flex;align-items:center;gap:var(--sp-1)}.additions{color:var(--success-color)}.deletions{color:var(--error-color)}.file_status_label{color:var(--text-light);font-size:var(--fs-caption)}&.gone .file_name{text-decoration:line-through;color:var(--text-light)}}.history_container .history_file{cursor:default}.history_more{font-size:var(--fs-caption);color:var(--text-light);padding:var(--sp-0) 6px}.history_more_btn{cursor:pointer}.history_steps{border-top:1px solid var(--border-color);padding-top:6px}.history_step{font-family:var(--mono);font-size:var(--fs-caption);color:var(--text-light);white-space:pre;overflow:hidden;text-overflow:ellipsis}.history_switch_btn{font-size:var(--fs-caption);padding:var(--sp-0) 6px;border-radius:var(--r-1);display:inline-flex;align-items:center;cursor:pointer;user-select:none;background:var(--bg-hover);color:var(--text-color);&:hover{filter:brightness(0.98)}&.current{background:var(--primary-color);border-color:var(--primary-color);color:#fff}}.history_empty{color:var(--text-light);padding:var(--sp-5);text-align:center}.html_viewer{position:relative}.edit_presence{position:absolute;top:34px;right:6px;z-index:1;display:flex;gap:var(--sp-1);span{font-size:10px;color:#fff;padding:1px 6px;border-radius:8px}}.md_viewer{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden}.md_viewer_switch_code_btn{position:absolute;top:6px;right:6px;z-index:1}.md_viewer_body{flex:1;overflow:auto;padding:var(--sp-3);a{color:inherit;&:hover{cursor:pointer;text-decoration:underline}}}.md_viewer_heading{margin-block:0.5em}.md_viewer_para{margin-block:0.4em}.md_viewer_blank_space{height:1em;min-height:1em}.md_viewer_list{display:flex;flex-direction:column;gap:var(--sp-0)}.md_viewer_list_item{display:flex;align-items:flex-start;gap:6px}.md_viewer_list_num{flex-shrink:0;min-width:1.5em}.md_viewer_toggle{appearance:none;width:16px;height:16px;min-width:16px;margin-top:4px;border:2px solid var(--border-color);border-radius:3px;cursor:pointer;flex-shrink:0;background:transparent;&:hover{border-color:var(--primary-color)}&:checked{background:var(--primary-color);border-color:var(--primary-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' d='M3 8 l3 3 6-6'/%3E%3C/svg%3E");background-size:12px 12px;background-position:center;background-repeat:no-repeat}&:checked + .md_viewer_toggle_label{text-decoration:line-through;color:var(--text-light)}}.md_viewer_toggle_label{flex:1;line-height:1.5}.md_viewer_table_widget{margin-block:8px;max-width:100%;overflow-x:auto}.md_table_grid{display:grid;width:max-content;min-width:100%;border:1px solid var(--border-color);border-radius:var(--r-1);overflow:hidden}.md_table_cell{padding:6px var(--sp-2);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);min-height:24px;overflow-wrap:anywhere}.md_table_header{background:var(--bg-hover);font-weight:var(--fw-strong);cursor:pointer;&:hover{filter:brightness(0.97)}}.md_viewer_image_widget,.md_viewer_youtube_widget{margin-block:8px;position:relative}.md_viewer_youtube_widget iframe{width:100%;max-width:560px;height:315px;border:0}.md_viewer_edit_link{margin-top:4px}.media_preview{display:flex;flex-direction:column;height:100%;overflow:hidden}.media_preview_body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:var(--sp-3);img{max-width:100%;max-height:100%;object-fit:contain}video,audio{max-width:100%}embed{width:100%;height:100%;min-height:60vh}}.project_header{display:flex;flex-wrap:wrap;align-items:center;background-color:var(--bg-menu);position:sticky;top:0;z-index:1;height:36px;gap:var(--sp-0);padding-right:var(--sp-1)}.project_header_buttons{display:flex;position:sticky;right:0;height:100%;align-items:center;background-color:var(--bg-menu)}.project_btn{display:flex;align-items:center;justify-content:center;cursor:pointer;width:24px;height:24px;border-radius:6px;opacity:0.85;font-size:18px;&:hover{background-color:var(--bg-hover)}}.live_users_container{display:flex;align-items:center}.live_users_avatars{display:flex;gap:var(--sp-0)}.live_user_avatar{width:20px;height:20px;border-radius:50%;background:linear-gradient(45deg,var(--primary-color),var(--bg-selected));color:white;font-size:10px;font-weight:bold;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-menu);margin-left:-2px;&:first-child{margin-left:0}&.self{background:linear-gradient(45deg,var(--primary-color),var(--color_blue_light))}&.connected{background:linear-gradient(45deg,var(--success-color),var(--color_green_light))}&.disconnected{background:linear-gradient(45deg,var(--error-color),var(--color_red_light))}}.upload_progress{font-size:var(--fs-caption);color:var(--text-light);white-space:nowrap}.file_tree_container{position:relative;overflow-y:auto;max-height:100%;width:var(--grid-col3,280px);padding:10px;&:has(.file,.folder) .project_source_options_row{display:none}.mcp_row{position:sticky;bottom:0;margin-inline:auto}}#file_tree,.file_tree{font-size:var(--fs-body);flex:1;overflow:auto;padding:var(--sp-1);border:2px dashed transparent;border-radius:var(--r-4);user-select:none}.file_tree{&.drag_over{background-color:var(--bg-black-5);border-color:var(--border-color)}.folder>.folder_name .folder_icon::before{content:'folder'}.folder[open]>.folder_name .folder_icon::before{content:'folder_open'}.folder_name,.file{padding:6px;cursor:pointer;display:flex;align-items:center;gap:5px}.folder_name{user-select:none}.folder_name:hover,.file:hover{background-color:var(--bg-hover)}.file.ctx_target,.folder.ctx_target>.folder_name{background-color:var(--bg-selected);color:var(--primary-color);border-radius:var(--r-1)}.folder_icon,.file_icon{font-size:16px}.folder_icon{color:var(--warning-color)}.file_icon{color:var(--primary-color)}.file_icon.orange{color:var(--warning-color)}.folder>.folder,.folder>.file{margin-inline-start:20px}.error{color:var(--error-color);padding:10px;background-color:var(--error-light);border-radius:var(--r-1)}.file.ignored,.folder.ignored{opacity:0.45}.file.ignored,.folder.ignored>.folder_name{cursor:default}.file.ignored .file_name{flex:0 0 auto}.ignored_tag{margin-left:auto;padding-left:var(--sp-2);font-size:var(--fs-caption);white-space:nowrap;display:none;align-items:center;gap:3px;.mdst_icons{font-size:14px}}.file.ignored:hover .ignored_tag,.folder.ignored>.folder_name:hover .ignored_tag{display:inline-flex}}@media (max-width:760px){.file_tree::after{content:'';display:block;height:100px}}.file_name{flex:1;font-family:var(--mono)}.file_tree_header{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:var(--sp-2)}.branches_menu_content{position:absolute;z-index:1000;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--r-2);box-shadow:var(--shadow-md);min-width:160px}.file_tree_context_menu{position:absolute;background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--r-1);box-shadow:var(--shadow-md);min-width:150px;z-index:1000}.context_menu_item{padding:var(--sp-2) 10px;display:flex;align-items:center;gap:var(--sp-2);cursor:pointer;&:hover{background:var(--bg-hover)}span.mdst_icons{font-size:18px}&.delete{color:var(--error-color)}}.context_menu_divider{height:1px;background:var(--border-color);margin-inline:20px}.version_tree_graph{overflow:auto;display:flex;flex-direction:column;gap:var(--sp-3)}.file_path{flex:1;display:flex;font-family:var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-small);align-items:center}#projects_list{display:flex;flex-direction:column;gap:6px}.main.module_code>.content{order:1;width:100%}.code_editor.active{display:grid;grid-template:minmax(0,1fr) / minmax(0,1fr);gap:0;padding:0;overflow:hidden;font-family:monospace;color:var(--text-color)}.code_editor>*{grid-area:1 / 1}.code_scroller{position:relative;z-index:0;display:flex;align-items:flex-start;height:100%;overflow:auto;line-height:1.4}.code_content{flex:2 0 auto;min-height:100%;padding:4px 0 110px;white-space:pre;word-wrap:normal;tab-size:4;outline:none;caret-color:var(--text-color);counter-reset:line;&[contenteditable=true]{-webkit-user-modify:read-write-plaintext-only}::selection{background:var(--code-selection,Highlight)}}.code_line,.code_ruler{height:1.4em}.code_ruler{width:0;visibility:hidden;pointer-events:none}.code_line{display:block;padding-right:2px;counter-increment:line;&::before{content:counter(line);position:sticky;left:0;display:inline-block;width:calc(var(--num_ch,2) * 1ch);padding:0 11px 0 3px;text-align:right;color:var(--text-lighter);user-select:none}}.code_widget_buffer{display:inline;width:0;height:1em;vertical-align:text-top}.tk_kw,::highlight(tk_kw){color:var(--code-kw)}.tk_atom,::highlight(tk_atom){color:var(--code-atom)}.tk_num,::highlight(tk_num){color:var(--code-num)}.tk_type,::highlight(tk_type){color:var(--code-type)}.tk_self,::highlight(tk_self){color:var(--code-self)}.tk_str,::highlight(tk_str){color:var(--code-str)}.tk_esc,::highlight(tk_esc){color:var(--code-esc)}.tk_op,::highlight(tk_op){color:var(--code-op)}.tk_url,::highlight(tk_url){color:var(--code-url)}.tk_com,::highlight(tk_com){color:var(--code-com)}.tk_meta,::highlight(tk_meta){color:var(--code-meta)}.tk_def,::highlight(tk_def){color:var(--code-def)}.tk_tag,::highlight(tk_tag){color:var(--code-tag)}.tk_attr,.tk_prop,::highlight(tk_attr),::highlight(tk_prop){color:var(--code-prop)}.tk_link,::highlight(tk_link){color:var(--code-link);text-decoration:underline}.tk_head,::highlight(tk_head){color:var(--code-head)}.tk_head,.tk_strong{font-weight:bold}.tk_em{font-style:italic}::highlight(selection_match){background-color:var(--code-match)}::highlight(search_hit){background-color:rgb(255 230 0 / 40%)}::highlight(search_current){background-color:rgb(216 163 12)}.merge_G{background:color-mix(in srgb,var(--success-color) 8%,transparent)}.merge_R{background:color-mix(in srgb,var(--error-color) 8%,transparent);counter-increment:none;&::before{content:''}}.remote_line{margin:0 2px 0 4px}.remote_caret{position:relative;display:inline;margin:0 -1px;border-inline:1px solid black;&:hover>.remote_caret_dot{transform-origin:bottom center;transform:scale(0)}&:hover>.remote_caret_name{opacity:1}}.remote_caret_dot{position:absolute;top:-.2em;left:-.2em;width:.4em;height:.4em;border-radius:50%;background-color:inherit;transition:transform .3s ease-in-out}.remote_caret_name{position:absolute;top:-1.05em;left:-1px;z-index:101;padding:0 2px;font:normal .75em/normal serif;color:white;background-color:inherit;white-space:nowrap;user-select:none;opacity:0;transition:opacity .3s ease-in-out}.code_search{place-self:start end;z-index:30;margin-right:var(--sp-4);display:flex;align-items:center;gap:var(--sp-0);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-2);background:var(--bg-white);border:1px solid var(--border-color);border-top:none;border-radius:0 0 var(--r-2) var(--r-2);box-shadow:var(--shadow-sm);input{width:200px;padding:3px 6px;border:1px solid transparent;border-radius:6px;background:var(--bg-hover);color:var(--text-color);font-size:var(--fs-small);outline:none;&:focus{border-color:var(--primary-color)}}.search_count{color:var(--text-light);font-size:var(--fs-caption);width:90px;padding:0 var(--sp-1)}}.merge_bar :is(.prev,.next),.code_search :is(.prev,.next,.close){color:var(--text-light);cursor:pointer;padding:var(--sp-0);border-radius:6px;line-height:1;display:inline-flex;align-items:center;justify-content:center;font-size:18px;&:hover{background:var(--bg-hover)}}.code_markers{position:sticky;top:0;right:0;z-index:10;flex-shrink:0;width:12px;height:100%;border-left:1px solid var(--border-color);opacity:0.8;pointer-events:none;background-repeat:no-repeat;background-size:100% 100%,6px 100%,6px 100%;background-position:0 0,0 0,100% 0}.merge_btns{position:absolute;right:20px;top:16px;z-index:10;button{cursor:pointer;color:var(--bg-white);padding:var(--sp-0) 6px;font-size:var(--fs-caption);&:hover{filter:brightness(1.1)}}button:first-child{background-color:var(--text-light);border-radius:0 0 0 3px}button:last-child{background-color:var(--success-color);border-radius:0 0 3px 0}}.merge_bar{place-self:end center;z-index:30;margin-bottom:10px;display:flex;align-items:center;background:var(--bg-white);border:1px solid var(--border-color);border-radius:6px;padding:6px 10px;box-shadow:var(--shadow-sm);gap:var(--sp-2);width:max-content;button{border:1px solid var(--border-color);border-radius:var(--r-1);cursor:pointer;padding:var(--sp-1) var(--sp-2);font-size:var(--fs-caption);&:hover{opacity:0.9}}.reject_all_btn{background:transparent;color:var(--text-light);border-color:transparent}.accept_all_btn{background-color:var(--primary-color);color:white}.merge_count{font-size:var(--fs-caption);color:var(--text-light)}}#add_context_popover{position:fixed;margin:0;padding:0;border:0;background:transparent;z-index:1000;&::backdrop{background:transparent}}.add_context_btn{display:flex;align-items:center;gap:var(--sp-1);background:var(--text-color);color:var(--bg-white);padding:var(--sp-1) 10px;border-radius:6px;font-size:var(--fs-caption);cursor:pointer;box-shadow:0 2px 8px rgb(0 0 0 / 30%);white-space:nowrap;&:hover{filter:brightness(0.9)}.mdst_icons{font-size:16px}}.terminal_container{display:flex;flex-direction:column;height:100%;background:var(--bg-dark);padding:var(--sp-2)}.terminal_host{flex:1;width:100%;height:100%;overflow:hidden}.term{--term-bg:#1a1b26;--term-fg:#c0caf5;--term-cursor:#c0caf5;--term-c0:#15161e;--term-c1:#f7768e;--term-c2:#9ece6a;--term-c3:#e0af68;--term-c4:#7aa2f7;--term-c5:#bb9af7;--term-c6:#7dcfff;--term-c7:#a9b1d6;--term-c8:#414868;--term-c9:#f7768e;--term-c10:#9ece6a;--term-c11:#e0af68;--term-c12:#7aa2f7;--term-c13:#bb9af7;--term-c14:#7dcfff;--term-c15:#c0caf5;position:relative;background:var(--term-bg);color:var(--term-fg);font:14px/1.2 "Fira Code","Cascadia Code","JetBrains Mono",monospace;font-variant-ligatures:none}.term_scroll{position:absolute;inset:4px;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--term-c8) var(--term-bg)}.term_history>div,.term_screen>div{height:var(--term-cell-h,17px);line-height:var(--term-cell-h,17px);white-space:pre;overflow:hidden}.term_cursor{outline:1px solid var(--term-cursor);outline-offset:-1px}.term_focused .term_cursor{background:var(--term-cursor);color:var(--term-bg);animation:term_blink 1.2s step-end infinite}@keyframes term_blink{50%{background:transparent;color:inherit}}.term_input{position:absolute;width:2px;height:var(--term-cell-h,17px);padding:0;border:0;opacity:0;resize:none;overflow:hidden;pointer-events:none}.term_measure{position:absolute;left:-9999px;top:0;visibility:hidden;white-space:pre}.jobs_container{height:100%;overflow:auto;padding:var(--sp-3)}.jobs_row{display:flex;align-items:center;gap:10px;padding:10px var(--sp-2);border-bottom:1px solid var(--border-color);cursor:pointer;&:hover{background:var(--bg-hover)}&:hover .jobs_del{visibility:visible}}.jobs_dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--text-lighter);&.running{background:var(--success-color)}}.jobs_main{flex:1;min-width:0}.jobs_name{color:var(--text-color);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jobs_badge{margin-left:6px;padding:1px 6px;border-radius:8px;font-size:var(--fs-caption);font-weight:400;color:var(--primary-color);border:1px solid var(--primary-color)}.jobs_cmd{font-family:var(--mono);font-size:var(--fs-caption);color:var(--text-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jobs_meta{flex:none;font-size:var(--fs-caption);color:var(--text-light)}.jobs_del{flex:none;font-size:18px;color:var(--text-light);visibility:hidden;&:hover{color:var(--text-color)}}.jobs_new{color:var(--text-light)}}