*{box-sizing:border-box;margin:0;padding:0}:root{--font-family-ui: "Urbanist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "Source Code Pro", "Consolas", "Monaco", "Courier New", monospace}body{font-family:var(--font-family-ui);background-color:#f5f5f5;color:#333;height:100vh;overflow:hidden;transition:background-color .3s ease,color .3s ease}body.dark-theme{background-color:#0d1117;color:#e6edf3}.app-container{display:flex;flex-direction:column;height:100vh}.app-header{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background-color:#fff;border-bottom:1px solid #e1e1e1;box-shadow:0 1px 2px rgba(0,0,0,.05);min-height:40px}.dark-theme .app-header{background-color:#161b22;border-bottom-color:#21262d}.app-header h1{font-size:1.1rem;font-weight:600;color:#007acc;margin:0}.header-controls{display:flex;gap:4px;align-items:center}.language-tabs{display:flex;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;min-height:32px}.language-section{flex:1;display:flex;justify-content:space-between;align-items:center;padding:0 12px;border-right:1px solid #dee2e6}.output-section-tabs{flex:1;display:flex;justify-content:space-between;align-items:center;padding:0 12px}.language-tab-buttons{display:flex}.language-tab{background:none;border:none;padding:8px 16px;font-size:13px;font-weight:500;font-family:var(--font-family-ui);color:#6c757d;cursor:pointer;position:relative;transition:all .2s ease;display:flex;align-items:center;gap:8px;border-radius:0;border-bottom:2px solid transparent;min-height:50px}.language-tab:hover{color:#495057;background-color:#e9ecef}.language-tab.active{color:#007acc;background-color:#fff;border-bottom-color:#007acc}.tab-icon{font-size:14px;line-height:1;display:inline-flex;align-items:center}.tab-icon svg{width:16px;height:16px;stroke-width:2}.tab-content{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.tab-filename{font-size:12px;font-weight:600;color:inherit}.tab-language{font-size:10px;font-weight:400;opacity:.7;margin-top:1px}.dark-theme .language-tabs{background-color:#161b22;border-bottom-color:#21262d}.dark-theme .language-section{border-right-color:#21262d}.dark-theme .language-tab{color:#7d8590}.dark-theme .language-tab:hover{color:#e6edf3;background-color:#21262d}.dark-theme .language-tab.active{color:#58a6ff;background-color:#0d1117;border-bottom-color:#58a6ff}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #ddd;border-radius:4px;background-color:#fff;color:#666;cursor:pointer;font-size:14px;font-family:var(--font-family-ui);transition:all .2s ease;padding:0;line-height:1}.icon-btn svg{width:16px;height:16px;stroke-width:2}.icon-btn:hover{background-color:#f5f5f5;border-color:#999;color:#333;transform:translateY(-1px)}.icon-btn.primary{background-color:#28a745;border-color:#28a745;color:#fff}.icon-btn.primary:hover{background-color:#218838;border-color:#1e7e34}.icon-btn.danger,.tab-clear-btn{background-color:#fff;border-color:#dc3545;color:#dc3545}.icon-btn.danger:hover,.tab-clear-btn:hover{background-color:#f8d7da;border-color:#c82333;color:#c82333}.icon-btn.danger.emergency{background-color:#dc3545;border-color:#dc3545;color:#fff;animation:pulse 1s infinite}.icon-btn.danger.emergency:hover{background-color:#c82333;border-color:#bd2130}.icon-btn:disabled,.icon-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none;background-color:#6c757d!important;border-color:#6c757d!important;color:#fff!important}#toggle-autorun[data-state=off]{background-color:#f8f9fa;border-color:#dee2e6;color:#6c757d}#toggle-autorun[data-state=off]:hover{background-color:#e9ecef;border-color:#adb5bd;color:#495057}#toggle-autorun[data-state=on]{background-color:#17a2b8;border-color:#17a2b8;color:#fff}#toggle-autorun[data-state=on]:hover{background-color:#138496;border-color:#117a8b}#toggle-theme{background-color:#6f42c1;border-color:#6f42c1;color:#fff}#toggle-theme:hover{background-color:#5a359a;border-color:#5a359a}#format-code{background-color:#fd7e14;border-color:#fd7e14;color:#fff;width:auto;min-width:28px;padding:6px 12px;gap:6px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:500}#format-code:hover{background-color:#e8650d;border-color:#dc5f0a}.dark-theme .icon-btn{background-color:#21262d;border-color:#30363d;color:#7d8590}.dark-theme .icon-btn:hover{background-color:#30363d;border-color:#3e434a;color:#e6edf3}.dark-theme .icon-btn.primary{background-color:#238636;border-color:#238636;color:#fff}.dark-theme .icon-btn.primary:hover{background-color:#2ea043;border-color:#2ea043}.dark-theme .icon-btn.danger,.dark-theme .tab-clear-btn{background-color:#21262d;border-color:#f85149;color:#f85149}.dark-theme .icon-btn.danger:hover,.dark-theme .tab-clear-btn:hover{background-color:#3c1e20;border-color:#ff6b6b;color:#ff6b6b}.dark-theme .icon-btn.danger.emergency{background-color:#f85149;border-color:#f85149;color:#fff}.dark-theme .icon-btn:disabled,.dark-theme .icon-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none;background-color:#484f58!important;border-color:#484f58!important;color:#7d8590!important}.dark-theme #toggle-autorun[data-state=off]{background-color:#161b22;border-color:#21262d;color:#7d8590}.dark-theme #toggle-autorun[data-state=off]:hover{background-color:#21262d;border-color:#30363d;color:#e6edf3}.dark-theme #toggle-autorun[data-state=on]{background-color:#1f6feb;border-color:#1f6feb;color:#fff}.dark-theme #toggle-autorun[data-state=on]:hover{background-color:#388bfd;border-color:#388bfd}.dark-theme #toggle-theme{background-color:#8b5cf6;border-color:#8b5cf6;color:#fff}.dark-theme #toggle-theme:hover{background-color:#a78bfa;border-color:#a78bfa}.dark-theme #format-code{background-color:#fb8500;border-color:#fb8500;color:#fff;width:auto;min-width:28px;padding:6px 12px;gap:6px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:500}.dark-theme #format-code:hover{background-color:#ffb703;border-color:#ffb703}.app-main{flex:1;display:flex;overflow:hidden}.editor-section{flex:1;display:flex;flex-direction:column;border-right:1px solid #e1e1e1;background-color:#fff}.dark-theme .editor-section{border-right-color:#21262d;background-color:#161b22}.editor-controls{display:flex;gap:4px}.monaco-editor-container{flex:1;min-height:300px}.monaco-editor .view-lines{font-family:Consolas,monospace!important;font-feature-settings:"liga" 0,"calt" 0!important;font-variant-ligatures:none!important}.monaco-editor .view-line{font-family:Consolas,monospace!important}.output-section{flex:1;display:flex;flex-direction:column;background-color:#fff}.dark-theme .output-section{background-color:#161b22}.tab-clear-btn{width:24px!important;height:24px!important;background-color:#fff;border-color:#dc3545;color:#dc3545}.tab-clear-btn:hover{background-color:#f8d7da;border-color:#c82333;color:#c82333}.tab-clear-btn svg{width:14px!important;height:14px!important}.output-tabs{display:flex;justify-content:space-between;align-items:center;width:100%}.output-tab-buttons{display:flex;gap:4px}.output-controls{display:flex;gap:4px;align-items:center;height:100%;margin-left:auto}.output-controls .icon-btn{height:28px;align-self:center}.tab-button{display:flex;align-items:center;gap:6px;padding:6px 16px;border:none;background:none;color:#6c757d;font-size:13px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s ease;font-family:var(--font-family-ui);min-height:28px}.tab-button .tab-icon{font-size:14px;line-height:1;display:inline-flex;align-items:center}.tab-button .tab-icon svg{width:16px;height:16px;stroke-width:2}.tab-button:hover{background-color:#e9ecef;color:#495057}.tab-button.active{background-color:#007acc;color:#fff}.dark-theme .tab-button{color:#7d8590}.dark-theme .tab-button:hover{background-color:#21262d;color:#e6edf3}.dark-theme .tab-button.active{background-color:#58a6ff;color:#0d1117}.output-panel{flex:1;display:none!important;flex-direction:column;overflow:hidden}.output-panel.active{display:flex!important}.console-content{flex:1;display:flex;flex-direction:column;height:100%}.console-log{flex:1;overflow-y:auto;padding:8px;font-family:var(--font-family-mono);font-size:12px;background-color:#fff;color:#333;line-height:1.3}.dark-theme .console-log{background-color:#0d1117;color:#e6edf3}.dark-theme .console-entry.console-command{color:#7ee787}.dark-theme .console-entry.console-result{color:#e6edf3}.dark-theme .console-entry.console-error{color:#f85149}.dark-theme .console-entry.console-warn{color:#f2cc60}.dark-theme .console-entry.console-log{color:#79c0ff}.dark-theme .console-prompt{color:#58a6ff}.console-entry{margin:1px 0;padding:2px 6px;border-radius:0;display:block;width:100%;font-family:var(--font-family-mono);font-size:12px;line-height:1.3}.console-entry-container{display:flex;align-items:flex-start}.console-prompt{color:#007acc;font-weight:600;margin-right:4px;flex-shrink:0;user-select:none}.console-content{flex:1;min-width:0}.console-entry.console-command{background-color:transparent;border-left:none;color:#22863a}.console-entry.console-result{background-color:transparent;border-left:none;color:#24292e}.console-entry.console-error{background-color:transparent;border-left:none;color:#d73a49}.console-entry.console-warn{background-color:transparent;border-left:none;color:#b08800}.console-entry.console-log{background-color:transparent;border-left:none;color:#0366d6;height:auto!important;max-height:none!important;overflow:visible!important;flex:none!important}.console-content{word-break:break-word;white-space:pre-wrap;flex:1;min-width:0;font-family:var(--font-family-mono)}.render-frame{width:100%;height:100%;border:none;background-color:#fff;display:block}.dark-theme .render-frame{background-color:#161b22}.status-bar{display:flex;justify-content:space-between;align-items:center;padding:4px 12px;background-color:#007acc;color:#fff;font-size:13px;min-height:24px}#execution-time{font-family:var(--font-family-mono);font-weight:500}.mobile-output-tabs{display:none}@media (max-width: 768px){.app-main{flex-direction:column}.editor-section{border-right:none;border-bottom:1px solid #e1e1e1;min-height:300px}.dark-theme .editor-section{border-bottom-color:#3c3c3c}.header-controls{flex-wrap:wrap}.btn{font-size:12px;padding:6px 12px}.language-section{flex:1;border-right:none;padding:0 12px}.output-section-tabs{display:none}.language-tab{min-height:40px;padding:6px 8px;font-size:12px}.tab-filename{font-size:11px}.tab-language{font-size:9px}.mobile-output-tabs{display:flex;justify-content:space-between;align-items:center;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;padding:0 12px;min-height:40px}.dark-theme .mobile-output-tabs{background-color:#161b22;border-bottom-color:#21262d}.mobile-output-tab-buttons{display:flex;gap:4px}.mobile-tab-button{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:none;color:#6c757d;font-size:12px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s ease}.mobile-tab-button:hover{background-color:#e9ecef;color:#495057}.mobile-tab-button.active{background-color:#007acc;color:#fff}.dark-theme .mobile-tab-button{color:#7d8590}.dark-theme .mobile-tab-button:hover{background-color:#21262d;color:#e6edf3}.dark-theme .mobile-tab-button.active{background-color:#58a6ff;color:#0d1117}.mobile-output-controls{display:flex;gap:4px}.mobile-tab-button .tab-icon svg{width:14px;height:14px}.output-panel{max-height:calc(100vh - 150px);overflow:hidden}.console-content{max-height:100%;height:100%;overflow:hidden}.console-log{overflow-y:auto;max-height:calc(100vh - 480px);height:calc(100vh - 480px);-webkit-overflow-scrolling:touch;margin-bottom:0}}@media (max-width: 480px){.app-header{padding:4px 8px;flex-wrap:wrap}.app-title{font-size:14px;margin-right:8px}.language-tab,.tab-button{padding:4px 8px;min-height:36px;font-size:11px}.tab-filename{font-size:10px}.tab-language{display:none}.tab-icon svg{width:14px;height:14px}.icon-btn{width:24px;height:24px;font-size:12px}.monaco-editor-container{min-height:200px}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.dark-theme ::-webkit-scrollbar-track{background:#2d2d30}.dark-theme ::-webkit-scrollbar-thumb{background:#555}.dark-theme ::-webkit-scrollbar-thumb:hover{background:#666}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.loading{animation:pulse 1.5s infinite}.floating-menu{position:fixed;bottom:20px;right:20px;z-index:1000;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:12px}.floating-menu-toggle{width:40px;height:40px;border-radius:50%;background-color:#007acc;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 12px rgba(0,122,204,.3);transition:all .3s ease;z-index:1001}.floating-menu-toggle:hover{background-color:#005a9e;transform:scale(1.05);box-shadow:0 6px 16px rgba(0,122,204,.4)}.floating-menu-toggle svg{width:18px;height:18px;stroke-width:2}.floating-menu-items{display:flex;flex-direction:column-reverse;gap:8px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;pointer-events:none}.floating-menu.active .floating-menu-items{opacity:1;visibility:visible;transform:translateY(0);pointer-events:all}.floating-menu-item{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fff;border:1px solid #dee2e6;border-radius:28px;color:#495057;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .2s ease;min-width:120px;justify-content:flex-start}.floating-menu-item:hover{background-color:#f8f9fa;border-color:#007acc;color:#007acc;transform:translate(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.floating-menu-item svg{width:18px;height:18px;stroke-width:2;flex-shrink:0}.dark-theme .floating-menu-toggle{background-color:#58a6ff;box-shadow:0 4px 12px rgba(88,166,255,.3)}.dark-theme .floating-menu-toggle:hover{background-color:#79c0ff;box-shadow:0 6px 16px rgba(88,166,255,.4)}.dark-theme .floating-menu-item{background-color:#21262d;border-color:#30363d;color:#e6edf3;box-shadow:0 2px 8px rgba(0,0,0,.3)}.dark-theme .floating-menu-item:hover{background-color:#30363d;border-color:#58a6ff;color:#58a6ff;box-shadow:0 4px 12px rgba(0,0,0,.4)}@media (max-width: 768px){.floating-menu{bottom:80px;right:16px}.floating-menu-toggle{width:36px;height:36px;font-size:16px}.floating-menu-toggle svg{width:16px;height:16px}.floating-menu-item{padding:10px 14px;font-size:13px;min-width:100px}.floating-menu-item svg{width:16px;height:16px}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:2000;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{background-color:#fff;border-radius:8px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 40px rgba(0,0,0,.3);transform:scale(.9) translateY(20px);transition:all .3s ease}.modal-overlay.active .modal-content{transform:scale(1) translateY(0)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e1e1e1}.modal-header h2{margin:0;color:#007acc;font-size:1.4rem;font-weight:600}.modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#666;transition:all .2s ease}.modal-close:hover{background-color:#f5f5f5;color:#333}.modal-close svg{width:20px;height:20px;stroke-width:2}.modal-body{padding:24px}.about-section{margin-bottom:24px}.about-section h3{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:8px}.about-section ul{list-style:none;padding:0;margin:0}.about-section li{padding:6px 0;color:#555;font-size:14px;line-height:1.4}.about-footer{text-align:center;padding-top:16px;border-top:1px solid #e1e1e1;color:#666}.about-footer p{margin:4px 0;font-size:14px}.version{font-weight:600;color:#007acc}.dark-theme .modal-content{background-color:#161b22;border:1px solid #30363d}.dark-theme .modal-header{border-bottom-color:#30363d}.dark-theme .modal-header h2{color:#58a6ff}.dark-theme .modal-close{color:#7d8590}.dark-theme .modal-close:hover{background-color:#21262d;color:#e6edf3}.dark-theme .about-section h3{color:#e6edf3}.dark-theme .about-section li{color:#c9d1d9}.dark-theme .about-footer{border-top-color:#30363d;color:#7d8590}.dark-theme .version{color:#58a6ff}
