/*! @license
(c) 2025–20XX c-render.net. All rights reserved.

This file is licensed solely for use in delivering c-render.net's
online services. Use is governed by the following source code policy:

The code supporting the project-sharing system, online IDE, editor, and
related platform features is proprietary and not distributed under any
Creative Commons license. You may not copy, modify, distribute, adapt,
reverse-engineer, or decompile any portion of this codebase.

Rehosting, scraping, or duplicating the online IDE or project-sharing
environment is strictly prohibited. To reference C-Render content,
please use the official project player or editor through provided links
or embeds.
*/
:root{--primary:#007acc;--primary-dark:#0062a3;--primary-light:#1a9fff;--secondary:#9cdcfe;--accent:#ff9d00;--success:#4ec9b0;--danger:#f14c4c;--warning:#dcdcaa;--info:#4fc1ff;--bg-primary:#1e1e1e;--bg-secondary:#2d2d2d;--bg-tertiary:#252526;--text-primary:#e0e0e0;--text-secondary:#a0a0a0;--text-disabled:#5a5a5a;--border-color:#3c3c3c;--border-light:#4f4f4f;--hover-bg:rgba(90, 93, 94, 0.3);--active-bg:rgba(55, 55, 61, 0.8);--selection-bg:#264f78;--bg-primary-light:#ffffff;--bg-secondary-light:#f3f3f3;--bg-tertiary-light:#e5e5e5;--text-primary-light:#333333;--text-secondary-light:#666666;--text-disabled-light:#999999;--border-color-light:#d4d4d4;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--spacing-xxl:32px;--font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;--font-mono:'Fira Code','Cascadia Code','Consolas','Monaco','Andale Mono',monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--shadow-sm:0 1px 3px rgba(0, 0, 0, 0.1);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05);--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--transition-fast:0.15s ease;--transition-normal:0.25s ease;--transition-slow:0.4s ease;--surface-0:#1e1f22;--surface-1:#222327;--surface-2:#25262a;--stroke-1:#2f3136;--stroke-2:#3c3f44;--text-1:#d4d4d4;--text-2:#aeb4ba;--accent:#0e639c;--accent-2:#3794ff;--hover-1:#2a2d31;--active-1:#30353b}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;height:100%;font-size:16px;overflow:auto}body{font-family:var(--font-sans);line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh;margin:0;padding:0;display:flex;flex-direction:column;transition:background-color var(--transition-normal),color var(--transition-normal);overflow:auto}body.light-theme{--bg-primary:var(--bg-primary-light);--bg-secondary:var(--bg-secondary-light);--bg-tertiary:var(--bg-tertiary-light);--text-primary:var(--text-primary-light);--text-secondary:var(--text-secondary-light);--text-disabled:var(--text-disabled-light);--border-color:var(--border-color-light);--hover-bg:rgba(0, 0, 0, 0.05);--active-bg:rgba(0, 0, 0, 0.1);--selection-bg:#b3d7ff;overflow:auto}.container{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.gap-6{gap:var(--spacing-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;font-weight:500;padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid transparent;font-size:var(--text-sm);line-height:1.5;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none;gap:.5rem}.btn:disabled{opacity:.6;cursor:not-allowed;position:relative}#run.compiling{background-color:var(--bg-tertiary);color:var(--text-disabled);cursor:wait;padding-left:2.5rem;position:relative;opacity:.8;transition:.3s;pointer-events:none}#run.compiling:hover{background-color:var(--bg-tertiary);transform:none;box-shadow:none}#run.compiling::before{content:'';position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}#run[title]::after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s;z-index:1000}#run[title]:hover::after{opacity:1}.btn-sm{padding:.25rem .5rem;font-size:var(--text-xs)}.btn-lg{padding:.75rem 1.5rem;font-size:var(--text-base)}.btn-primary{background-color:var(--primary);color:#fff;border-color:var(--primary-dark)}.btn-primary:hover:not(:disabled){background-color:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-run-clicked{animation:.15s ease-out run-button-click}@keyframes run-button-click{0%,100%{transform:scale(1)}50%{transform:scale(.95)}}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--hover-bg)}.btn-outline{border:1px solid var(--border-color);color:var(--text-primary)}.btn-outline:hover:not(:disabled){background-color:var(--hover-bg);border-color:var(--primary);color:var(--primary)}.btn-danger{background-color:var(--danger);color:#fff;border-color:#d42c2c}.btn-danger:hover:not(:disabled){background-color:#e03e3e}.btn-icon{width:2rem;height:2rem;padding:0;justify-content:center;border-radius:50%;color:var(--text-secondary);background:0 0;border:none}.btn-icon:hover{background-color:var(--hover-bg);color:var(--text-primary)}.top-nav{height:3.125rem;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--spacing-lg)}.logo-link{display:flex;align-items:center;text-decoration:none;color:var(--text-primary);font-size:1.2rem;font-weight:600;margin-right:auto}.nav-center{display:flex;justify-content:center;align-items:center;gap:.5rem;position:absolute;left:50%;transform:translateX(-50%);background:var(--bg-secondary);padding:0 1rem;height:100%;border-left:1px solid var(--border);border-right:1px solid var(--border)}.nav-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;transition:.2s;color:var(--text-secondary);text-decoration:none;margin:0 1px;font-size:18px;line-height:1;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif}.nav-icon:hover{background-color:var(--hover-bg);color:var(--text-primary);transform:scale(1.1);opacity:.9}.nav-icon i.fas{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.nav-icon .icon{font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.nav-right{margin-left:auto}.app-title-link{text-decoration:none;color:var(--text-primary);display:flex;align-items:center;gap:var(--spacing-sm)}.app-title{margin:0;font-size:1.125rem;font-weight:600;transition:color .2s}.app-title-link:hover .app-title{color:var(--primary-light);cursor:pointer}.app-logo{width:1.5rem;height:1.5rem;color:var(--primary)}.admin-logo-link{display:flex;align-items:center;text-decoration:none;color:var(--text-primary);font-weight:600;font-size:1.25rem;transition:.2s}.admin-logo-link:hover{transform:translateY(-1px)}.admin-logo{height:32px;width:32px;margin-right:12px;border-radius:6px}.admin-logo-text{margin-right:10px;font-weight:700;color:#007bff}.nav-right{display:flex;align-items:center;gap:var(--spacing-md)}.signin-btn{font-size:.875rem;background:var(--primary);color:#fff;border:1px solid var(--primary-dark);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:inline-flex;align-items:center;gap:.5rem}.signin-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.signin-btn:active{transform:translateY(0)}.user-profile-btn{padding:.375rem 1rem;font-size:.875rem;background:var(--primary);color:#fff;border:1px solid var(--primary-dark);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:inline-flex;align-items:center;gap:.5rem}.user-profile-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.user-profile-btn:active{transform:translateY(0)}.user-profile-btn i{font-size:.75rem}.theme-toggle{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.theme-toggle:hover{background-color:var(--hover-bg);color:var(--text-primary)}.user-menu{position:relative}.user-avatar{width:2rem;height:2rem;border-radius:50%;background-color:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;cursor:pointer;transition:transform var(--transition-fast);border:2px solid var(--border-color)}.user-avatar:hover{transform:scale(1.05)}.dropdown-menu{position:absolute;z-index:2000;min-width:200px;background:#2d2d30;border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast);margin:0;padding:0;list-style:none;left:0;right:auto;top:100%;bottom:auto;width:auto;height:auto}.dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0);display:block}.dropdown-header{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);font-weight:600;font-size:.875rem;color:var(--text-primary)}.dropdown-item{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);text-decoration:none;transition:background-color var(--transition-fast)}.dropdown-item:hover{background-color:var(--hover-bg)}.dropdown-item svg{width:1rem;height:1rem;color:var(--text-secondary)}.dropdown-divider{height:1px;background-color:var(--border-color);margin:.25rem 0}.badge{display:inline-flex;align-items:center;padding:.25em .5em;font-size:.75rem;font-weight:500;border-radius:9999px;background-color:var(--bg-tertiary);color:var(--text-secondary)}.badge-primary{background-color:var(--primary);color:#fff}.notification-indicator{position:absolute;top:-.25rem;right:-.25rem;width:.75rem;height:.75rem;border-radius:50%;background-color:var(--danger);border:2px solid var(--bg-secondary)}[data-tooltip]:hover::after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background-color:var(--bg-tertiary);color:var(--text-primary);padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;white-space:nowrap;pointer-events:none;margin-bottom:.5rem;opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast);z-index:1000;box-shadow:var(--shadow-md);border:1px solid var(--border-color);opacity:1;visibility:visible;margin-left:12px}[data-tooltip]:hover::before{content:'';position:absolute;bottom:calc(100% - 1px);left:50%;transform:translateX(-50%);border-width:.375rem .375rem 0;border-style:solid;border-color:var(--bg-tertiary) transparent transparent;z-index:1001;opacity:0;transition:opacity var(--transition-fast)}[data-tooltip]:hover::after,[data-tooltip]:hover::before{opacity:1;transform:translateX(-50%) translateY(-.25rem)}.modern-modal{max-width:500px;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.4);background:var(--bg-secondary);border:1px solid var(--border-color)}.modern-modal .modal-header{display:flex;align-items:center;padding:24px 24px 16px;border-bottom:1px solid var(--border-color);gap:16px}.modal-icon{width:56px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary-light));display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;flex-shrink:0}.modal-title h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.modal-subtitle{margin:4px 0 0;font-size:14px;color:var(--text-secondary)}.modern-modal .modal-body{padding:24px;max-height:60vh;overflow-y:auto;overflow-x:hidden}.form-label{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:500;color:var(--text-primary);font-size:14px}.form-label i{color:var(--primary);width:16px;text-align:center}.input-group{position:relative;display:flex;align-items:center}.input-group .form-input{flex:1;padding-right:40px}.input-suffix{position:absolute;right:12px;color:var(--text-secondary);font-size:14px;pointer-events:none}.form-hint{margin-top:6px;font-size:12px;color:var(--text-secondary);line-height:1.4}.radio-group{display:flex;flex-direction:column;gap:12px}.radio-item{display:flex;align-items:center;padding:16px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:.2s;background:var(--bg-tertiary)}.radio-item:hover{border-color:var(--primary);background:var(--hover-bg)}.radio-item input[type=radio]{display:none}.radio-custom{width:20px;height:20px;border:2px solid var(--border-color);border-radius:50%;margin-right:12px;position:relative;transition:.2s;flex-shrink:0}.radio-item input[type=radio]:checked+.radio-custom{border-color:var(--primary);background:var(--primary)}.radio-item input[type=radio]:checked+.radio-custom::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%}.radio-content{flex:1}.radio-title{font-weight:500;color:var(--text-primary);margin-bottom:2px}.radio-description{font-size:12px;color:var(--text-secondary);line-height:1.4}.modern-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px;border-top:1px solid var(--border-color)}.btn-outline{background:0 0;border:1px solid var(--border-color);color:var(--text-primary)}.btn-outline:hover{background:var(--hover-bg);border-color:var(--border-light)}.file-dropdown{margin-right:15px;overflow:visible;z-index:1000;position:relative;display:inline-block}.file-btn{padding:8px 12px;font-size:13px;background:#3c3c3c;color:#d4d4d4;border:1px solid #555;border-radius:3px;cursor:pointer;transition:background-color .2s;font-weight:400}.file-btn:hover{background:#4a4a4a}.file-dropdown .dropdown-menu{top:100%;left:0;z-index:2000;background:#2d2d30;border:1px solid #3e3e42;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.3);min-width:200px;opacity:0;visibility:hidden;transform:translateY(5px);transition:.2s;pointer-events:none;max-height:70vh;overflow-y:auto;position:absolute!important;right:auto!important;bottom:auto!important;width:auto!important;height:auto!important;margin:4px 0 0!important;padding:4px 0!important}.file-dropdown .dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.dropdown-menu.hidden{display:none;opacity:0;visibility:hidden;pointer-events:none}.dropdown-item{display:flex;align-items:center;padding:12px 16px;cursor:pointer;gap:12px;transition:.2s;font-size:13px;color:#d4d4d4}.dropdown-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.dropdown-text{flex:1;font-weight:500}.dropdown-item:hover{background:#3e3e42}.dropdown-separator{height:1px;background:#3e3e42;margin:4px 0}.github-panel{position:fixed;top:50px;right:0;width:400px;height:calc(100vh - 50px);background:#252526;border-left:1px solid #3c3c3c;z-index:1000;transform:translateX(100%);transition:transform .3s;overflow-y:auto}.github-panel.show{transform:translateX(0)}.github-panel.hidden{display:none}.github-panel-header{padding:20px;border-bottom:1px solid #3c3c3c;background:#2d2d30}.github-panel-title{margin:0 0 10px;font-size:16px;font-weight:600;color:#ccc}.github-user-info{display:flex;align-items:center;gap:10px;margin-bottom:15px}.github-avatar{width:32px;height:32px;border-radius:50%;border:2px solid #3c3c3c}.github-username{font-size:14px;color:#58a6ff;font-weight:500}.github-panel-content{padding:20px}.github-section{margin-bottom:30px}.github-section-title{font-size:14px;font-weight:600;color:#ccc;margin-bottom:15px;display:flex;align-items:center;justify-content:space-between}.github-repo-list{list-style:none;padding:0;margin:0}.github-repo-item{padding:12px;border:1px solid #3c3c3c;border-radius:6px;margin-bottom:8px;background:#1e1e1e;cursor:pointer;transition:.2s}.github-repo-item:hover{background:#2d2d30;border-color:#58a6ff}.github-repo-name{font-size:14px;font-weight:500;color:#58a6ff;margin-bottom:4px}.github-repo-description{font-size:12px;color:#8b949e;line-height:1.4}.github-repo-meta{font-size:11px;color:#6e7681;margin-top:8px;display:flex;gap:15px}.github-create-form{background:#1e1e1e;padding:15px;border-radius:6px;border:1px solid #3c3c3c}.github-form-group{margin-bottom:15px}.github-form-label{display:block;font-size:12px;font-weight:500;color:#f0f6fc;margin-bottom:5px}.github-form-input{width:100%;padding:8px 12px;background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#f0f6fc;font-size:14px}.github-form-input:focus{outline:0;border-color:#58a6ff;box-shadow:0 0 0 3px rgba(88,166,255,.1)}.github-form-textarea{width:100%;padding:8px 12px;background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#f0f6fc;font-size:14px;resize:vertical;min-height:60px}.github-form-textarea:focus{outline:0;border-color:#58a6ff;box-shadow:0 0 0 3px rgba(88,166,255,.1)}.github-btn{padding:8px 16px;background:#238636;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.github-btn:hover{background:#2ea043}.github-btn:disabled{background:#484f58;cursor:not-allowed}.github-btn-secondary{background:#21262d;border:1px solid #30363d}.github-btn-secondary:hover{background:#30363d}.github-close-btn{position:absolute;top:15px;right:15px;background:0 0;border:none;color:#8b949e;cursor:pointer;font-size:18px;padding:5px;border-radius:4px;transition:color .2s}.github-close-btn:hover{color:#f0f6fc;background:#30363d}.console-entry{display:flex;margin-bottom:2px;font-family:Consolas,Monaco,'Courier New',monospace;font-size:13px;line-height:1.4}.console-timestamp{color:#6e7681;margin-right:8px;flex-shrink:0}.console-message{flex:1;word-break:break-word}.console-entry.console-info .console-message{color:#f0f6fc}.console-entry.console-error .console-message{color:#f85149}.console-entry.console-warn .console-message{color:#d29922}.console-entry.console-success .console-message{color:#7ee787}.console-entry.console-debug .console-message{color:#8b949e}.thin-sidebar{background-color:var(--bg-tertiary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;z-index:100;height:100%;flex-shrink:0}.sidebar-icon{display:flex;align-items:center;justify-content:center;color:#fff;transition:all var(--transition-fast);background:0 0!important;border:none;padding:0}.sidebar-icon.settings-icon{margin-top:16px;margin-bottom:auto}.sidebar-icon.settings-icon i{font-size:20px;transition:transform .5s,color .2s}.sidebar-icon.settings-icon:hover i{color:#fff;transform:rotate(180deg)}.sidebar-icon i{font-size:20px;transition:color .2s}.settings-section{padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.settings-section:last-child{border-bottom:none;padding-bottom:0}.settings-section h3{font-size:1rem;margin-bottom:1rem;color:var(--text-primary);font-weight:500}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary)}.form-control{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 2px rgba(0,122,204,.2)}.checkbox-container{display:flex;align-items:center;position:relative;padding-left:30px;cursor:pointer;user-select:none;color:var(--text-primary)}.checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:absolute;top:0;left:0;height:20px;width:20px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;transition:.2s}.checkbox-container:hover input~.checkmark{border-color:var(--primary)}.checkbox-container input:checked~.checkmark{background-color:var(--primary);border-color:var(--primary)}.checkmark:after{content:"";position:absolute;display:none}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.sidebar-divider{height:1px;width:24px;background-color:var(--border-color);margin:8px 0}[data-tooltip]{cursor:pointer;position:relative}[data-tooltip]::after{content:attr(data-tooltip);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--bg-tertiary);color:var(--text-primary);padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-fast);pointer-events:none;margin-left:8px;border:1px solid var(--border-color);z-index:1000}.thin-sidebar{width:56px;background-color:var(--bg-tertiary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;padding:10px 0;flex-shrink:0}.sidebar-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;margin:4px 0;color:var(--text-secondary);transition:background-color .2s,color .2s}.sidebar-icon:hover{background-color:rgba(255,255,255,.1)!important;color:#fff!important}.settings-icon i{font-size:18px}.main-layout{display:flex;height:calc(100vh - var(--header-height));width:100%}.file-explorer{width:340px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;transition:width var(--transition-normal),margin-left var(--transition-normal)}.file-explorer.collapsed{width:0;overflow:hidden;border-right:none}.sidebar-header{padding:0 20px;border-bottom:1px solid var(--stroke-2);background:var(--surface-1);display:flex;align-items:center;justify-content:space-between}.sidebar-header h3{margin:0;font-size:13px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.explorer-actions{display:flex;align-items:center;justify-content:space-between;padding:2px 16px;border-bottom:1px solid var(--stroke-2);background:var(--surface-1)}.explorer-actions-left,.explorer-actions-right{display:flex;gap:6px}#sort-files.icon-btn{font-size:14px}#sort-files{position:relative}#sort-files .sort-note{position:absolute;bottom:-22px;right:0;background:#3e3e42;color:#fff;padding:2px 6px;border-radius:3px;font-size:11px;line-height:1.4;box-shadow:0 2px 6px rgba(0,0,0,.35);opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s;white-space:nowrap;pointer-events:none;z-index:10}#sort-files .sort-note.show{opacity:1;transform:translateY(0)}.icon-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;padding:0;margin:0;font-size:14px}.icon-btn:hover{background:var(--hover-bg);border-color:var(--border-light);transform:translateY(-1px);opacity:1}.file-tree{flex:1;overflow-y:auto;padding:8px 0;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}.project-root{padding-left:8px}.file-item,.folder-item{display:flex;align-items:center;cursor:pointer;user-select:none;transition:.2s}.file-item:hover,.folder-item:hover{background-color:var(--hover-bg)}.file-item.selected,.folder-item.selected{background-color:var(--selection-bg);color:var(--text-primary)}.file-indent{width:16px;height:22px;display:inline-block}.folder-toggle{width:16px;height:22px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-secondary);cursor:pointer;margin-right:2px}.folder-toggle:hover{color:var(--text-primary)}.file-icon,.folder-icon{border:none;background:0 0;object-fit:contain}.file-name,.folder-name{flex:1;font-size:13px}.folder-contents{margin-left:0}.folder-contents.hidden{display:none}.folder-item.expanded .folder-toggle::before{content:'▼'}.folder-item.collapsed .folder-toggle::before{content:'▶'}.context-menu{position:fixed;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.3);padding:4px 0;min-width:180px;z-index:10000;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;font-size:13px}.context-menu.hidden{display:none}.context-menu-item{display:flex;align-items:center;padding:6px 12px;cursor:pointer;color:var(--text-primary);user-select:none}.context-menu-item:hover{background-color:var(--selection-bg);color:var(--text-primary)}.context-menu-item.disabled{cursor:not-allowed}.context-menu-item.disabled:hover{background-color:transparent;color:#666}.context-icon{width:16px;height:16px;margin-right:8px;font-size:12px;display:flex;align-items:center;justify-content:center}.context-text{flex:1}.context-menu-separator{height:1px;background-color:var(--border-color);margin:4px 0}.settings-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:3px;margin-left:auto;opacity:.7;transition:.2s}.settings-btn:hover{background-color:var(--hover-bg);opacity:1}.settings-icon{font-size:14px;display:block}.settings-panel{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:10000;display:flex;align-items:center;justify-content:center}.settings-panel.hidden{display:none}.settings-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px rgba(0,0,0,.4)}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.settings-header h2{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.close-btn{color:var(--text-secondary)}.close-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.settings-body{padding:20px;max-height:calc(80vh - 80px);overflow-y:auto}.settings-section{margin-bottom:24px}.settings-section:last-child{margin-bottom:0;padding-left:20px}.section-title{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.setting-item{margin-bottom:16px}.setting-item:last-child{margin-bottom:0}.setting-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.setting-name{color:#ccc;font-size:13px;font-weight:500}.setting-select{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);padding:6px 8px;font-size:12px;min-width:100px}.setting-select:focus{outline:0;border-color:#007acc}.setting-checkbox{display:flex;align-items:center;cursor:pointer;position:relative;padding:8px 0;margin:4px 0;border-radius:4px;transition:background-color .2s}.setting-checkbox:hover{background-color:rgba(0,122,204,.05)}.setting-checkbox input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.setting-checkbox .checkmark{position:relative;display:inline-block;width:18px;height:18px;border:2px solid #555;border-radius:4px;margin-right:12px;transition:.2s;flex-shrink:0;background-color:#fff}.setting-checkbox:hover .checkmark{border-color:#007acc}.setting-checkbox input:focus-visible+.checkmark{box-shadow:0 0 0 2px rgba(0,122,204,.3);outline:0}.setting-checkbox input:checked+.checkmark{background:#007acc;border-color:#007acc}.setting-checkbox input:checked+.checkmark::after{content:'';position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.setting-info{display:flex;flex-direction:column;flex:1}.setting-description{color:#888;font-size:11px;margin-top:2px;line-height:1.4}.hidden-file{opacity:.5;color:#888!important}.hidden-file .file-icon,.hidden-file .folder-icon{opacity:.6}.hidden-file .file-name,.hidden-file .folder-name{font-style:italic}.file-tree:not(.show-hidden) .hidden-file{display:none}.file-item.selected,.folder-item.selected{background:var(--selection-bg)}.folder-contents{padding-left:16px}.file-name,.folder-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-tabs{display:flex;align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-sizing:border-box;overflow-x:auto;overflow-y:hidden;white-space:nowrap;width:100%;max-width:100%;flex:0 0 auto;scrollbar-width:auto;-ms-overflow-style:auto;scrollbar-gutter:stable}.file-tabs::-webkit-scrollbar{height:10px}.file-tabs::-webkit-scrollbar-track{background:var(--bg-secondary)}.file-tabs::-webkit-scrollbar-thumb{background:#424242;border-radius:6px}.file-tabs::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.tab{display:inline-flex;align-items:center;background:var(--bg-secondary);border-right:1px solid var(--border-color);cursor:pointer;font-size:13px;min-width:120px;max-width:200px;transition:background-color .2s;position:relative;flex:0 0 auto}.tab:hover{background:var(--hover-bg)}.tab.active{background:var(--bg-primary);border-bottom:2px solid #007acc}.tab-icon{font-weight:700;color:var(--text-primary);background:var(--bg-secondary);padding:2px 4px;border-radius:3px;border:1px solid var(--border-color)}.tab-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-close{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;padding:2px 4px;margin-left:6px;border-radius:3px;font-size:16px;line-height:1;opacity:0;transition:opacity .2s,background-color .2s}.tab:hover .tab-close{opacity:1}.new-tab-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;padding:8px 12px;font-size:16px;transition:background-color .2s}.new-tab-btn:hover{background:var(--hover-bg)}.panel-header{background:var(--bg-secondary);padding:10px 15px;border-bottom:1px solid var(--border-color)}.panel-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.file-list{flex:1;padding:10px 0;overflow-y:auto}.file-item{cursor:pointer;font-size:13px;color:var(--text-primary);transition:background-color .2s}.file-item:hover{background:var(--hover-bg)}.file-item.active{background:var(--selection-bg)}.scripting-zone{flex:1.0;display:flex;flex-direction:column;background:var(--bg-primary);transition:margin-left var(--transition-normal)}.editor-header{height:48px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 20px;gap:15px;flex-shrink:0}.editor-section{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0}.buttons-row{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--border-color)}button,select{padding:8px 16px;font-size:13px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:.2s;font-weight:500}button:hover,select:hover{background:var(--hover-bg);border-color:var(--border-light);transform:translateY(-1px)}button:active{background:var(--active-bg);transform:translateY(0)}textarea{flex:1;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:16px;font-family:Consolas,Monaco,'Courier New',monospace;font-size:14px;line-height:1.6;resize:none;border-radius:6px;transition:.2s}textarea:focus{outline:0;border-color:#007acc;box-shadow:0 0 0 2px rgba(0,122,204,.2)}.runner-panel{flex:1.1;background:var(--bg-primary);border-left:1px solid var(--border-color);display:flex;flex-direction:column}.runner-panel.running .runner-stage,.runner-panel.running .runner-window,.runner-panel.running canvas{background:#fff}.runner-panel,.scripting-zone{min-width:0}.runner-controls{background:var(--surface-1);height:42px;min-height:42px;padding:0 12px;border-bottom:1px solid var(--stroke-2);display:flex;align-items:center;gap:12px;flex-shrink:0}.control-buttons{display:flex;gap:8px}.control-buttons .file-btn,.control-buttons button{min-width:36px;height:36px;padding:0 12px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;background:0 0;color:var(--text-primary);border:1px solid var(--border-color);transition:.2s;cursor:pointer;white-space:nowrap}.control-buttons .file-btn:hover,.control-buttons button:hover{background:var(--hover-bg);border-color:var(--border-light);transform:translateY(-1px)}.control-buttons .file-btn:active,.control-buttons button:active{background:var(--active-bg);transform:translateY(0);box-shadow:none}.control-buttons .file-btn:focus,.control-buttons button:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 2px rgba(0,122,204,.2)}.runner-info{display:flex;gap:15px;font-size:12px;color:var(--text-secondary)}.runner-window{flex:0.8 1 0%;display:flex;align-items:center;justify-content:center;background:#000;min-height:0;position:relative}.runner-stage{aspect-ratio:16/9;width:100%;height:auto;max-width:100%;max-height:100%;background:#000;display:flex;align-items:center;justify-content:center}#html-preview{position:absolute;top:0;left:0;right:0;bottom:0;width:100%!important;height:100%!important;border:0!important;outline:0!important;background:#fff!important;display:block}.runner-stage canvas{width:100%!important;height:100%!important;display:block;object-fit:contain}canvas{border:none;background:#000;max-width:100%;max-height:100%;object-fit:contain}.debug-console{flex:0.65 1 0%;min-height:150px;background:var(--bg-primary);border-top:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.console-header{background:var(--bg-secondary);padding:8px 15px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.console-header h3{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}.console-header button{padding:4px 8px;font-size:11px}.console-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}pre#console{flex:1;margin:0;padding:10px 15px;background:var(--bg-primary);color:var(--text-primary);font-family:Consolas,Monaco,'Courier New',monospace;font-size:12px;line-height:1.4;min-height:0;max-height:100%;overflow-y:auto;overflow-x:auto;white-space:pre;border:none;outline:0}pre{margin:0}.console-input-line{display:flex;align-items:center;background:var(--bg-primary);border-top:1px solid var(--border-color);padding:8px 15px}.console-prompt{color:var(--text-primary);font-family:Consolas,Monaco,'Courier New',monospace;font-size:12px;margin-right:8px;font-weight:700}#console-input{flex:1;background:0 0;border:none;color:var(--text-primary);font-family:Consolas,Monaco,'Courier New',monospace;font-size:12px;outline:0;padding:4px 8px;min-height:20px;pointer-events:auto;z-index:1000}#console-input::placeholder{color:var(--text-secondary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#424242;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:2500;background-color:rgba(0,0,0,.45);backdrop-filter:blur(2px)}.modal.show{display:flex}.modal.hidden{display:none}.modal-content{background-color:var(--bg-secondary);padding:0;border:1px solid var(--border-color);border-radius:8px;width:480px;max-width:92vw;box-shadow:0 16px 48px rgba(0,0,0,.5);animation:.18s ease-out modalSlideIn}.modal-content.small{width:380px}@keyframes modalSlideIn{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.close-btn{background:0 0;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:.2s}.close-btn:hover{background:#3c3c3c;color:var(--text-primary)}.modal-body{padding:24px}.auth-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:500;color:var(--text-primary)}.form-group input{padding:10px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:border-color .2s}.form-group input:focus{outline:0;border-color:#007acc}.form-group input::placeholder{color:var(--text-secondary)}.auth-btn{padding:12px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center;gap:8px}.auth-btn.primary{background:#007acc;color:#fff}.auth-btn.primary:hover{background:#005a9e}.social-auth-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-btn.google{background:#fff;color:#333;border:1px solid #dadce0}.auth-btn.google:hover{background:#f8f9fa;box-shadow:0 1px 3px rgba(0,0,0,.1)}.auth-btn.microsoft{background:#2f2f2f;color:#fff;border:1px solid #3c3c3c}.auth-btn.microsoft:hover{background:#404040;box-shadow:0 1px 3px rgba(0,0,0,.2)}.auth-btn.github{background:#24292e;color:#fff;border:1px solid #24292e}.auth-btn.github:hover{background:#2f363d;box-shadow:0 1px 3px rgba(0,0,0,.2)}.auth-btn.apple{background:#000;color:#fff;border:1px solid #000}.auth-btn.apple:hover{background:#1a1a1a;box-shadow:0 1px 3px rgba(0,0,0,.2)}.google-icon{width:18px;height:18px}.divider{text-align:center;position:relative;margin:16px 0}.divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:#3c3c3c}.divider span{background:#252526;padding:0 12px;color:#888;font-size:12px}.auth-switch{text-align:center;margin:0;font-size:13px;color:var(--text-secondary)}.auth-switch a{color:#007acc;text-decoration:none;font-weight:500}.auth-switch a:hover{text-decoration:underline}.oauth-section-wrapper{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px}.coming-soon-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(37,37,38,.85);backdrop-filter:blur(2px);border-radius:4px;display:flex;align-items:center;justify-content:center;z-index:10}.coming-soon-text{text-align:center;padding:20px}.coming-soon-badge{display:inline-block;background:#ff6b35;color:#fff;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.coming-soon-text p{margin:8px 0 0;font-size:12px;color:#ccc;line-height:1.4}.oauth-section-wrapper .auth-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.oauth-section-wrapper .auth-btn:disabled:hover{background:inherit;box-shadow:none;transform:none}.fullscreen-runner .app-title,.fullscreen-runner .control-buttons #clear,.fullscreen-runner .control-buttons #pause,.fullscreen-runner .control-buttons #run,.fullscreen-runner .control-buttons #settings,.fullscreen-runner .debug-console,.fullscreen-runner .file-btn,.fullscreen-runner .file-dropdown,.fullscreen-runner .file-explorer,.fullscreen-runner .main-layout>:not(.runner-panel),.fullscreen-runner .nav-left,.fullscreen-runner .nav-right,.fullscreen-runner .runner-controls .runner-info,.fullscreen-runner .scripting-zone,.fullscreen-runner .settings-btn,.fullscreen-runner .signin-btn,.fullscreen-runner .top-bar,.fullscreen-runner .top-nav{display:none!important}.fullscreen-runner .runner-panel{inset:0;display:block!important}.fullscreen-runner #runner_canvas,.fullscreen-runner .runner-window{width:100%!important;height:100%!important;object-fit:contain}.fullscreen-runner .runner-window{height:100vh!important}.fullscreen-runner .debug-console{display:none!important;height:0!important;min-height:0!important;border:0!important;padding:0!important;margin:0!important}#floating-fullscreen{display:none;position:fixed;top:12px;right:12px;z-index:10000;width:40px;height:40px;background:rgba(30,30,30,.9);border:2px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:18px;line-height:36px;text-align:center;border-radius:8px;padding:0;margin:0;transition:.3s;backdrop-filter:blur(10px);box-shadow:0 4px 12px rgba(0,0,0,.3)}#floating-fullscreen:hover{background:#1e1e1e;border-color:var(--primary);transform:scale(1.1);box-shadow:0 6px 16px rgba(0,0,0,.4)}#floating-fullscreen:active{transform:scale(.95)}.fullscreen-runner #fullscreen{display:none!important}.fullscreen-runner .control-buttons,.fullscreen-runner .runner-controls{display:none!important;visibility:hidden!important}.fullscreen-runner .runner-panel{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;border:none;background:#1e1e1e}.fullscreen-runner .runner-panel.running,.fullscreen-runner .runner-panel.running .runner-stage,.fullscreen-runner .runner-panel.running .runner-window,.fullscreen-runner .runner-panel.running canvas{background:#fff}.top-nav{background:var(--surface-1);border-bottom-color:var(--stroke-2);position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;padding:0 1rem}.feature-highlights{background-color:var(--bg-secondary);margin:2rem 0;padding:1.5rem 0}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;align-items:center;justify-content:center;max-width:1200px;margin:0 auto}.highlight-item{display:flex;align-items:center;gap:1rem;padding:.75rem;border-radius:8px;transition:.3s}.highlight-item:hover{background-color:rgba(255,255,255,.05);transform:translateY(-2px)}.highlight-icon{font-size:1.75rem;line-height:1;opacity:.9}.highlight-content{display:flex;flex-direction:column}.highlight-value{font-size:1.5rem;font-weight:700;color:var(--primary-light);line-height:1.2}.highlight-text{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.main-layout{margin-top:var(--bar-height-top,60px);height:calc(100vh - var(--bar-height-top,60px));overflow:auto}.app-title{color:#e6e6e6;letter-spacing:.2px}.signin-btn{padding:6px 12px;background:var(--accent);border-radius:6px;border:1px solid #0c5888;box-shadow:none;transition:background-color .12s,border-color .12s,color .12s}.signin-btn:hover{background:#0c5c92;border-color:#0a4e7c}.signin-btn:active{background:#0a4e7c;border-color:#083f64}.file-explorer{background:var(--surface-2);border-right-color:var(--stroke-2)}.explorer-actions,.sidebar-header{background:var(--surface-1);border-bottom-color:var(--stroke-2);height:42px;min-height:42px;display:flex;align-items:center}.file-tree{font-size:12.5px;line-height:22px}.file-item,.folder-item{padding:5px 12px 5px 0;border-radius:4px;margin-right:6px}.file-item:hover,.folder-item:hover{background:var(--hover-1)}.file-item.selected,.folder-item.selected{background:#0e639c;color:#fff}.folder-toggle{color:#b9c0c7}.folder-toggle:hover{color:#dfe3e7}.file-name,.folder-name{color:var(--text-1)}.file-tabs{background:var(--surface-1);border-bottom-color:var(--stroke-2);height:42px;min-height:42px;display:flex;align-items:center}.tab{background:0 0;border-right:1px solid transparent;padding:6px 10px}.tab:hover{background:var(--hover-1)}.tab.active{background:var(--surface-2);border-bottom:2px solid var(--accent)}.tab-icon{border-color:var(--stroke-1);color:#92b8e8}.tab-close{color:#b9c0c7}.tab-close:hover{background:#c42b1c;color:#fff}.editor-header{background:var(--surface-1);border-bottom-color:var(--stroke-2)}.editor-section{padding:16px}.scripting-zone textarea{background:#1b1d20;border-color:var(--stroke-1)}.scripting-zone textarea:focus{border-color:var(--accent-2);box-shadow:0 0 0 2px rgba(55,148,255,.15)}#supported-languages-modal{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:9999;background-color:rgba(0,0,0,.7);backdrop-filter:blur(4px);opacity:1;visibility:visible;transition:opacity .2s,visibility .2s}#supported-languages-modal:not(.show){opacity:0;visibility:hidden;pointer-events:none}#supported-languages-modal .modal-content{background:#1e293b;border-radius:8px;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);border:1px solid #334155}#supported-languages-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #334155;background-color:#1e293b;position:sticky;top:0;z-index:1}#supported-languages-modal .modal-header h3{margin:0;color:#f8fafc;font-size:18px;font-weight:600;letter-spacing:.01em}#supported-languages-modal .close-modal{background:#334155;border:none;color:#94a3b8;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;font-size:16px}#supported-languages-modal .close-modal:hover{background:#475569;color:#e2e8f0}#supported-languages-modal .modal-body{padding:16px 20px;background-color:#0f172a}#supported-languages-modal .modal-description{color:#94a3b8;margin:0 0 16px;line-height:1.5;font-size:14px}#supported-languages-modal .languages-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}@media (max-width:600px){#supported-languages-modal .languages-grid{grid-template-columns:1fr}}#supported-languages-modal .language-card{background:#1e293b;border:1px solid #334155;border-radius:6px;padding:14px;display:flex;align-items:flex-start;gap:12px;transition:.15s;cursor:pointer}#supported-languages-modal .language-card:hover{background:#334155;border-color:#60a5fa;transform:none;box-shadow:0 1px 3px rgba(0,0,0,.1)}#supported-languages-modal .language-icon{font-size:20px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#0f172a;border:1px solid #334155;color:#60a5fa}#supported-languages-modal .language-info{flex:1}#supported-languages-modal .language-name{font-weight:600;color:#f8fafc;margin-bottom:2px;font-size:14px}#supported-languages-modal .language-extension{font-family:Monaco,Menlo,'Ubuntu Mono',monospace;color:#60a5fa;font-size:12px;margin-bottom:4px;display:inline-block;background:rgba(96,165,250,.1);padding:1px 6px;border-radius:4px}#supported-languages-modal .language-description{color:#94a3b8;font-size:12px;line-height:1.4;margin-top:4px}#supported-languages-modal .language-link-icon{color:#64748b;font-size:14px;opacity:1;transition:.15s;margin-left:8px}#supported-languages-modal .language-card:hover .language-link-icon{color:#60a5fa}#supported-languages-modal .modal-footer{padding:14px 20px;border-top:1px solid #334155;display:flex;background-color:#1e293b;position:sticky;bottom:0;justify-content:flex-end}.info-button{background:0 0;border:none;color:var(--text-2);cursor:pointer;padding:4px;border-radius:4px;transition:.2s;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.info-button:hover{background:var(--hover-1);color:var(--accent)}.info-button i{font-size:14px}body.modal-open{overflow:hidden}.scripting-zone button,.scripting-zone select{padding:6px 12px;background:var(--surface-2);color:var(--text-1);border:1px solid var(--stroke-2);border-radius:6px;transition:background-color .12s,border-color .12s,color .12s}.scripting-zone button:hover,.scripting-zone select:hover{background:var(--active-1);border-color:var(--stroke-2)}.scripting-zone button:active{background:#1f2226}.context-menu{background:var(--surface-1);border-color:var(--stroke-2);box-shadow:0 8px 24px rgba(0,0,0,.35)}.context-menu-item{color:var(--text-1)}.context-menu-item:hover{background:var(--hover-1)}.context-menu-item.disabled{color:#777b80}.settings-content{background:var(--surface-2);border-color:var(--stroke-2)}.settings-header{background:var(--surface-1);border-bottom-color:var(--stroke-2)}.checkmark,.setting-select{background:var(--surface-0);border-color:var(--stroke-2)}.placeholder-content{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px 20px;text-align:center;background:var(--bg-primary)}.placeholder-icon{font-size:4rem;color:var(--text-secondary);margin-bottom:1.5rem;opacity:.7}.placeholder-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.placeholder-subtitle{font-size:1rem;color:var(--text-secondary);line-height:1.5;margin:0;max-width:300px}.file-icon,.folder-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-right:8px;flex-shrink:0;font-size:14px}.file-icon{color:var(--text-secondary)}.folder-icon{color:#fbbf24}.file-item:hover .file-icon,.folder-item:hover .folder-icon{color:var(--text-primary)}.file-item.selected .file-icon,.folder-item.selected .folder-icon{color:#fff}.tab-icon{width:14px;height:14px;display:flex;align-items:center;justify-content:center;margin-right:6px;flex-shrink:0;font-size:12px;color:var(--text-secondary)}.tab.active .tab-icon{color:var(--text-primary)}