*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-editor:#1e1e1e;--bg-sidebar:#252526;--bg-activity:#333;--bg-title:#3c3c3c;--bg-tab-active:#1e1e1e;--bg-tab-inactive:#2d2d2d;--bg-status:#007acc;--border-color:#474747;--text-primary:#ccc;--text-secondary:#8b8b8b;--text-dim:#6b6b6b;--accent-blue:#007acc;--tab-border-active:#007acc;--line-number-color:#858585;--cursor-color:#aeafad;--scrollbar-thumb:#424242;--scrollbar-thumb-hover:#686868;color:var(--text-primary);background:var(--bg-editor);-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px}html,body{width:100%;height:100%;overflow:hidden}#app{background:var(--bg-editor);flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}#title-bar{background:var(--bg-title);z-index:100;flex-shrink:0;justify-content:space-between;align-items:center;height:30px;display:flex;position:relative}#title-bar-left{align-items:center;padding-left:8px;display:flex}#title-logo{opacity:.9;margin-right:8px}.title-menu-item{color:var(--text-primary);cursor:pointer;border-radius:3px;padding:4px 8px;font-size:12px}.title-menu-item:hover{background:#ffffff1a}#title-bar-center{color:#ccc;cursor:text;background:#ffffff12;border:1px solid #ffffff1a;border-radius:4px;align-items:center;min-width:220px;padding:3px 10px;font-size:12px;display:flex;position:absolute;left:50%;transform:translate(-50%)}#title-center-text{color:#8b8b8b;font-size:12px}#title-bar-right{align-items:center;display:flex}.window-btn{width:46px;height:30px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;font-size:11px;transition:background .1s;display:flex}.window-btn:hover{background:#ffffff1a}.window-btn.close:hover{color:#fff;background:#e81123}#main-layout{flex:1;min-height:0;display:flex;overflow:hidden}#activity-bar{background:var(--bg-activity);border-right:1px solid #2a2a2a;flex-direction:column;flex-shrink:0;align-items:center;width:48px;padding-top:4px;display:flex}.activity-icon{color:#858585;cursor:pointer;justify-content:center;align-items:center;width:48px;height:48px;transition:color .1s;display:flex;position:relative}.activity-icon:hover,.activity-icon.active{color:var(--text-primary)}.activity-icon.active:before{content:"";background:var(--accent-blue);border-radius:0 2px 2px 0;width:2px;position:absolute;top:12px;bottom:12px;left:0}.activity-icon.bottom{margin-top:auto;margin-bottom:4px}#sidebar{background:var(--bg-sidebar);border-right:1px solid #1a1a1a;flex-direction:column;flex-shrink:0;width:240px;display:flex;overflow:hidden}#sidebar-header{color:#bbbbbbb8;letter-spacing:.08em;flex-shrink:0;padding:12px 12px 6px 20px;font-size:11px;font-weight:700}#sidebar-section-header{letter-spacing:.04em;color:var(--text-primary);cursor:pointer;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px 4px 12px;font-size:11px;font-weight:700;display:flex}#sidebar-section-header:hover{background:#ffffff0a}.collapse-arrow{color:var(--text-primary);flex-shrink:0}#repo-folder-name{letter-spacing:.05em;font-size:11px}#file-tree{flex:1;overflow:hidden auto}#file-tree::-webkit-scrollbar{width:6px}#file-tree::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.file-item{color:var(--text-primary);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;padding:2px 8px 2px 28px;font-size:13px;display:flex;overflow:hidden}.file-item:hover{background:#ffffff0f}.file-item.active{background:#ffffff1a}#editor-area{background:var(--bg-editor);flex-direction:column;flex:1;min-width:0;display:flex}#tab-bar{background:var(--bg-tab-inactive);border-bottom:1px solid #252526;flex-shrink:0;align-items:stretch;height:35px;display:flex;overflow:hidden}#tabs-container{flex:1;align-items:stretch;min-width:0;display:flex;overflow:auto hidden}#tabs-container::-webkit-scrollbar{height:0}.tab{cursor:pointer;white-space:nowrap;color:#8b8b8b;background:var(--bg-tab-inactive);border-right:1px solid #252526;flex-shrink:0;align-items:center;gap:6px;min-width:120px;max-width:200px;height:35px;padding:0 10px;font-size:13px;transition:color .1s;display:flex;position:relative;overflow:hidden}.tab:hover{color:var(--text-primary);background:#2a2a2a}.tab.active{background:var(--bg-tab-active);color:var(--text-primary);border-top:1px solid var(--tab-border-active);border-bottom:1px solid var(--bg-editor)}.tab-icon{flex-shrink:0;width:16px;height:16px}.tab-name{text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.tab-close{opacity:0;width:18px;height:18px;color:var(--text-secondary);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex}.tab:hover .tab-close{opacity:1}.tab.active .tab-close{opacity:.6}.tab-close:hover{background:#ffffff26;opacity:1!important}#breadcrumb{background:var(--bg-editor);height:22px;color:var(--text-secondary);border-bottom:1px solid #2a2a2a;flex-shrink:0;align-items:center;gap:4px;padding:0 12px;font-size:12px;display:flex;overflow:hidden}.breadcrumb-item{color:#ccc;cursor:pointer;align-items:center;gap:4px;display:flex}.breadcrumb-item:hover{color:#fff}.breadcrumb-sep{color:var(--text-dim);margin:0 2px}#editor-container{flex:1;min-height:0;font-family:Cascadia Code,Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;display:flex;overflow:hidden}#line-numbers{text-align:right;min-width:52px;color:var(--line-number-color);background:var(--bg-editor);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:4px 16px 100px 8px;font-family:Cascadia Code,Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;overflow:hidden}#line-numbers span{display:block}#code-scroll-area{cursor:text;flex:1;min-width:0;padding:4px 16px 100px 8px;overflow:auto}#code-scroll-area::-webkit-scrollbar{width:8px;height:8px}#code-scroll-area::-webkit-scrollbar-track{background:0 0}#code-scroll-area::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}#code-scroll-area::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}#code-display{white-space:pre;font-family:inherit;font-size:inherit;line-height:inherit;word-break:normal;overflow-wrap:normal;color:var(--text-primary);background:0 0;border:none;outline:none;margin:0;padding:0;display:inline}#code-content{font-family:inherit;font-size:inherit;background:0 0}#editor-cursor{background:var(--cursor-color);vertical-align:text-bottom;width:2px;height:1.15em;margin-left:1px;animation:1.2s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}#status-bar{background:var(--bg-status);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;height:22px;padding:0 4px;font-size:12px;display:flex}#status-left,#status-right{align-items:center;height:100%;display:flex}.status-item{cursor:pointer;white-space:nowrap;align-items:center;height:100%;padding:0 8px;display:flex}.status-item:hover{background:#fff3}.status-branch{font-weight:500}#loading-overlay{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e1e1ee0;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:fixed;inset:0}#loading-overlay.hidden{opacity:0;pointer-events:none}#loading-content{flex-direction:column;align-items:center;gap:16px;display:flex}.loading-spinner{border:3px solid #007acc4d;border-top-color:#007acc;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#loading-text{color:#ccc;font-size:13px}.hljs{color:#d4d4d4;background:0 0!important}.hljs-keyword{color:#569cd6}.hljs-built_in,.hljs-type{color:#4ec9b0}.hljs-literal{color:#569cd6}.hljs-number{color:#b5cea8}.hljs-operator,.hljs-punctuation{color:#d4d4d4}.hljs-property{color:#9cdcfe}.hljs-regexp{color:#d16969}.hljs-string,.hljs-char{color:#ce9178}.hljs-comment{color:#6a9955;font-style:italic}.hljs-meta,.hljs-variable{color:#9cdcfe}.hljs-variable.language_{color:#569cd6}.hljs-title{color:#dcdcaa}.hljs-title.class_{color:#4ec9b0}.hljs-title.function_{color:#dcdcaa}.hljs-params,.hljs-attr,.hljs-attribute{color:#9cdcfe}.hljs-section,.hljs-tag{color:#569cd6}.hljs-name{color:#4ec9b0}.hljs-selector-tag,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo{color:#d7ba7d}.hljs-addition{color:#b5cea8}.hljs-deletion{color:#f44747}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}
