@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", Consolas, monospace;--bg-primary:#18191c;--bg-secondary:#202227;--bg-tertiary:#2a2d34;--bg-navbar:#121316;--bg-tab-active:#18191c;--bg-tab-inactive:#202227;--border-color:#31353f;--border-light:#3f4450;--text-primary:#cbd5e1;--text-secondary:#94a3b8;--text-muted:#64748b;--text-bright:#f8fafc;--accent-primary:#0284c7;--accent-primary-hover:#0369a1;--accent-green:#10b981;--accent-blue:#38bdf8;--accent-yellow:#fbbf24;--accent-purple:#a855f7;--accent-pink:#ec4899;--status-success:#10b981;--status-error:#f43f5e;--status-warning:#f59e0b;--status-info:#0284c7;--header-height:48px;--tab-height:36px;--footer-height:28px}.ide-root.vs-light{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--bg-navbar:#fff;--bg-tab-active:#fff;--bg-tab-inactive:#f8fafc;--border-color:#e2e8f0;--border-light:#cbd5e1;--text-primary:#334155;--text-secondary:#64748b;--text-muted:#94a3b8;--text-bright:#0f172a;--accent-primary:#0284c7;--accent-primary-hover:#0369a1;--status-success:#059669;--status-error:#e11d48;--status-warning:#d97706;--status-info:#0284c7}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;overflow:hidden}.ide-root{background-color:var(--bg-primary);flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.ide-navbar{height:var(--header-height);background-color:var(--bg-navbar);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;z-index:10;justify-content:space-between;align-items:center;padding:0 1rem;display:flex}.nav-left{align-items:center;gap:1.25rem;display:flex}.brand{align-items:center;gap:.6rem;display:flex}.brand-logo-img{object-fit:contain;filter:drop-shadow(0 0 8px #38bdf873);width:34px;height:34px;transition:transform .2s,filter .2s}.brand-logo-img:hover{filter:drop-shadow(0 0 12px #38bdf8bf);transform:scale(1.08)}.brand-text{align-items:center;gap:.5rem;display:flex}.brand-title{letter-spacing:-.2px;color:var(--text-bright);font-size:.95rem;font-weight:700}.brand-badge{letter-spacing:.5px;color:#38bdf8;background-color:#0284c726;border:1px solid #0284c74d;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:700}.auto-lang-selector-wrapper{align-items:center;display:flex}.auto-lang-pill{background-color:#1e293b99;border:1px solid #38bdf84d;border-radius:20px;align-items:center;gap:.45rem;padding:3px 8px;font-size:.78rem;transition:all .2s;display:flex}.auto-lang-pill:hover{border-color:#38bdf899;box-shadow:0 0 10px #38bdf833}.zap-icon{color:#38bdf8;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.auto-label{color:var(--text-muted);font-size:.72rem;font-weight:500}.lang-select-dropdown{color:#38bdf8;font-weight:600;font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;outline:none;padding:0 2px;font-size:.78rem}.lang-select-dropdown option{color:var(--text-bright);background-color:#1e222b}.detected-name{color:#38bdf8;font-weight:600;font-family:var(--font-mono)}.extension-badge{color:#7dd3fc;font-family:var(--font-mono);background-color:#38bdf826;border-radius:4px;padding:1px 5px;font-size:.68rem;font-weight:600}.extension-badge.live-detected{color:#6ee7b7;background:linear-gradient(135deg,#10b98140,#38bdf840);border:1px solid #10b98166;animation:2s ease-in-out infinite glowPulse}@keyframes glowPulse{0%,to{box-shadow:0 0 #10b98100}50%{box-shadow:0 0 8px #10b98166}}.nav-library-btn{color:#d8b4fe;cursor:pointer;background:linear-gradient(135deg,#a855f726,#0284c726);border:1px solid #a855f766;border-radius:6px;align-items:center;gap:.45rem;padding:4px 10px;font-size:.78rem;font-weight:600;transition:all .2s;display:flex}.nav-library-btn:hover{color:#fff;background:linear-gradient(135deg,#a855f740,#0284c740);border-color:#c084fc;transform:translateY(-1px);box-shadow:0 0 10px #a855f74d}.library-badge{text-transform:uppercase;color:#f3e8ff;letter-spacing:.5px;background-color:#a855f74d;border-radius:4px;padding:1px 5px;font-size:.62rem}.nav-center{align-items:center;display:flex}.run-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981,#059669);border:1px solid #ffffff26;border-radius:6px;align-items:center;gap:.5rem;padding:6px 16px;font-size:.85rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 8px #10b98159}.run-button:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-1px);box-shadow:0 4px 12px #10b98173}.run-button:active:not(:disabled){transform:translateY(0)}.run-button:disabled{opacity:.7;cursor:not-allowed}.run-button.running{background:#f59e0b;box-shadow:0 2px 8px #f59e0b59}.kbd-shortcut{font-family:var(--font-mono);opacity:.85;background-color:#00000040;border-radius:4px;padding:2px 5px;font-size:.7rem}.nav-right{align-items:center;gap:.4rem;display:flex}.nav-icon-btn{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.nav-icon-btn:hover{background-color:var(--bg-secondary);border-color:var(--border-color);color:var(--text-bright)}.nav-divider{background-color:var(--border-color);width:1px;height:20px;margin:0 .3rem}.font-size-select{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;outline:none;padding:4px 6px;font-size:.75rem}.ide-workspace{height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));background-color:var(--bg-primary);flex-direction:row;flex:1;display:flex;position:relative;overflow:hidden}.workspace-sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;width:240px;min-width:240px;max-width:320px;height:100%;animation:.2s cubic-bezier(.16,1,.3,1) slideInSidebar;display:flex}@keyframes slideInSidebar{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}.sidebar-header{height:var(--tab-height);border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary);justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.sidebar-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);align-items:center;gap:.45rem;font-size:.75rem;font-weight:700;display:flex}.sidebar-folder-icon{color:#38bdf8}.file-count-badge{color:#38bdf8;background-color:#38bdf826;border-radius:10px;padding:1px 5px;font-size:.65rem;font-weight:700}.sidebar-actions{align-items:center;gap:.25rem;display:flex}.sidebar-tool-btn{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sidebar-tool-btn:hover{background-color:var(--bg-primary);border-color:var(--border-color);color:var(--text-bright)}.sidebar-file-list{flex-direction:column;flex:1;gap:2px;padding:.35rem;display:flex;overflow-y:auto}.sidebar-file-item{color:var(--text-secondary);cursor:pointer;border:1px solid #0000;border-radius:5px;justify-content:space-between;align-items:center;padding:6px 8px;font-size:.8rem;transition:all .12s;display:flex}.sidebar-file-item:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.sidebar-file-item.active{color:#fff;background-color:#0284c726;border-color:#0284c766;font-weight:500}.file-item-left{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.file-type-pill{font-size:.62rem;font-family:var(--font-mono);border:1px solid;border-radius:3px;flex-shrink:0;padding:1px 4px;font-weight:700;line-height:1.2}.file-item-name{white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-mono);font-size:.78rem;overflow:hidden}.inline-rename-wrapper{flex:1;align-items:center;gap:3px;display:flex}.inline-rename-input{border:1px solid var(--accent-primary);color:#fff;font-family:var(--font-mono);background-color:#0f1115;border-radius:3px;outline:none;flex:1;padding:2px 4px;font-size:.75rem}.rename-confirm-btn{background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:3px;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.file-item-right{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.unsaved-dot{background-color:#fbbf24;border-radius:50%;width:6px;height:6px}.file-hover-actions{align-items:center;gap:2px;display:none}.sidebar-file-item:hover .file-hover-actions{display:flex}.file-action-icon{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;display:flex}.file-action-icon:hover{background-color:var(--bg-primary);color:var(--text-bright)}.file-action-icon.danger:hover{color:#f43f5e}.sidebar-footer{border-top:1px solid var(--border-color);background-color:var(--bg-secondary);flex-direction:column;gap:.35rem;padding:.5rem;display:flex}.sidebar-quick-btn{background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:5px;align-items:center;gap:.45rem;width:100%;padding:5px 8px;font-size:.75rem;font-weight:500;transition:all .15s;display:flex}.sidebar-quick-btn:hover{background-color:var(--bg-primary);border-color:var(--border-light);color:var(--text-bright)}.sidebar-quick-btn.algo{color:#d8b4fe;background:linear-gradient(135deg,#a855f71f,#0284c71f);border-color:#a855f74d}.sidebar-quick-btn.algo:hover{color:#fff;background:linear-gradient(135deg,#a855f738,#0284c738)}.ide-editor-section{border-right:1px solid var(--border-color);background-color:var(--bg-primary);flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}.editor-panel-container{flex-direction:column;width:100%;height:100%;display:flex}.editor-tab-strip-wrapper{height:var(--tab-height);background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:0 .5rem 0 .25rem;display:flex;overflow-x:hidden}.sidebar-toggle-btn{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-right:.25rem;transition:all .15s;display:flex}.sidebar-toggle-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.sidebar-toggle-btn.active{color:#38bdf8}.editor-tabs-container{scrollbar-width:none;flex:1;align-items:center;gap:2px;min-width:0;height:100%;display:flex;overflow:auto hidden}.editor-tabs-container::-webkit-scrollbar{display:none}.editor-tab{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);height:100%;font-family:var(--font-mono);color:var(--text-secondary);cursor:pointer;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:.45rem;max-width:160px;padding:0 10px;font-size:.78rem;transition:all .12s;display:flex}.editor-tab:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.editor-tab.active{background-color:var(--bg-tab-active);color:var(--text-bright);border-bottom:2px solid var(--accent-primary);border-top:2px solid var(--accent-primary);font-weight:500}.tab-lang-bullet{border-radius:50%;flex-shrink:0;width:6px;height:6px}.tab-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tab-unsaved-dot{background-color:#fbbf24;border-radius:50%;flex-shrink:0;width:6px;height:6px}.tab-close-btn{width:16px;height:16px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-left:2px;display:flex}.tab-close-btn:hover{color:#f43f5e;background-color:#f43f5e33}.tab-add-btn{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;transition:all .15s;display:flex}.tab-add-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.tab-strip-actions{flex-shrink:0;align-items:center;gap:.35rem;margin-left:.5rem;display:flex}.tab-action-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.35rem;padding:3px 8px;font-size:.75rem;transition:all .15s;display:flex}.tab-action-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.tab-action-btn.templates{color:#d8b4fe;background:linear-gradient(135deg,#a855f726,#0284c726);border-color:#a855f759;font-weight:500}.tab-action-btn.templates:hover{color:#fff;background:linear-gradient(135deg,#a855f740,#0284c740)}.sparkle-icon{color:#c084fc}.monaco-wrapper{height:calc(100% - var(--tab-height));flex:1;width:100%;position:relative}.editor-loading{background-color:var(--bg-primary);color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.9rem;display:flex;position:absolute;inset:0}.ide-terminal-section{background-color:var(--bg-secondary);flex-direction:column;height:100%;display:flex;overflow:hidden}.view-mode-bar{height:var(--tab-height);background-color:var(--bg-navbar);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;align-items:center;padding:0 .5rem;display:flex}.view-mode-tabs{align-items:center;gap:.35rem;display:flex}.view-mode-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:4px 4px 0 0;align-items:center;gap:.45rem;padding:6px 12px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.view-mode-btn:hover{color:var(--text-bright);background-color:#ffffff08}.view-mode-btn.active{color:#38bdf8;border-bottom-color:var(--accent-primary);background-color:#0284c71a;font-weight:600}.pill-badge{border-radius:50%;width:6px;height:6px}.pill-badge.success{background-color:var(--status-success)}.pill-badge.error{background-color:var(--status-error)}.right-pane-body{height:calc(100% - var(--tab-height));flex:1;position:relative;overflow:hidden}.console-panel-container{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.console-header{height:var(--tab-height);background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.terminal-header-title{color:var(--text-bright);align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;display:flex}.console-actions{align-items:center;gap:.3rem;display:flex}.console-action-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:.3rem;padding:4px 8px;font-size:.75rem;transition:all .15s;display:flex}.console-action-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.console-body{background-color:var(--bg-primary);font-family:var(--font-mono);flex:1;padding:.85rem 1rem;font-size:.85rem;line-height:1.5;overflow-y:auto}.console-running{color:var(--status-warning);align-items:center;gap:.75rem;padding:1rem 0;font-size:.85rem;display:flex}.console-empty{text-align:center;height:100%;min-height:200px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-icon{opacity:.4;margin-bottom:.75rem}.empty-title{color:var(--text-secondary);margin-bottom:.25rem;font-size:.95rem;font-weight:600}.empty-desc{font-size:.8rem}.empty-desc kbd{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:4px;padding:2px 6px}.terminal-stream{white-space:pre-wrap;word-break:break-all}.stdout-text{color:var(--text-bright);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word}.stderr-text{color:#fb7185;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background-color:#f43f5e1f;border-left:3px solid #f43f5e;border-radius:0 4px 4px 0;margin:.35rem 0;padding:.4rem .6rem;display:block}.system-text{color:#64748b;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;margin:.25rem 0;font-size:.8rem;font-style:italic;display:block}.stdin-echo-text{color:#38bdf8;font-weight:600;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background-color:#38bdf81a;border-radius:3px;margin:0 2px;padding:.1rem .35rem;display:inline-block}.terminal-live-cursor{color:#38bdf8;vertical-align:middle;margin-left:2px;font-weight:700;animation:1s infinite cursorBlink}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.live-pulse-badge{color:#34d399;letter-spacing:.04em;background-color:#10b98126;border:1px solid #10b9814d;border-radius:9999px;align-items:center;gap:.35rem;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.pulse-dot{background-color:#10b981;border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite pulseDotAnim;box-shadow:0 0 8px #10b981}@keyframes pulseDotAnim{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.console-action-btn.stop-btn{color:#f87171;background-color:#ef444426;border:1px solid #ef44444d;font-weight:600}.console-action-btn.stop-btn:hover{color:#fff;background-color:#ef4444}.terminal-input-bar{border-top:1px solid var(--border-color);background-color:#0d0f14;align-items:center;gap:.5rem;padding:6px 10px;transition:all .2s;display:flex}.terminal-input-bar.active-input-bar{background-color:#0b111e;border-top:1px solid #0284c7;box-shadow:0 -2px 10px #0ea5e926}.input-prompt-label{font-family:var(--font-mono);color:#38bdf8;align-items:center;gap:.25rem;font-size:.85rem;font-weight:700;display:flex}.prompt-symbol{color:#38bdf8;font-weight:700}.prompt-text{color:#94a3b8;font-size:.75rem}.terminal-inline-input{color:#f8fafc;font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;font-size:.88rem}.terminal-inline-input::placeholder{color:#475569;font-size:.8rem}.send-stdin-btn{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;border-radius:4px;align-items:center;gap:.35rem;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.send-stdin-btn.active,.send-stdin-btn:hover{color:#fff;background:linear-gradient(135deg,#0284c7,#2563eb);border-color:#38bdf8;box-shadow:0 0 10px #38bdf840}.spinner-mini{border:2px solid #f59e0b4d;border-top-color:#f59e0b;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}.badge-native{color:#818cf8;background:#6366f126;border:1px solid #6366f14d;border-radius:3px;padding:1px 6px;font-size:.68rem}.console-footer{height:var(--footer-height);background-color:var(--bg-secondary);border-top:1px solid var(--border-color);color:var(--text-secondary);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:0 .75rem;font-size:.72rem;display:flex}.footer-left{align-items:center;gap:1rem;display:flex}.footer-right{font-family:var(--font-mono);align-items:center;gap:.75rem;display:flex}.status-indicator{align-items:center;gap:.35rem;font-weight:600;display:flex}.status-indicator.success{color:var(--status-success)}.status-indicator.error{color:var(--status-error)}.status-indicator.neutral{color:var(--text-secondary)}.footer-metric{font-family:var(--font-mono);align-items:center;gap:.35rem;display:flex}.footer-idle{color:var(--text-muted)}.graphical-container{background-color:var(--bg-secondary);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.graphical-header{height:var(--tab-height);background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.graphical-tabs{align-items:center;gap:.25rem;display:flex}.tab-full-label{display:inline}.tab-short-label{display:none}.sim-btn-full{display:inline}.sim-btn-short{display:none}.status-tag-desktop{display:inline}.status-tag-mobile{display:none}.graph-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:.4rem;padding:5px 10px;font-size:.78rem;font-weight:500;transition:all .15s;display:flex}.graph-tab-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.graph-tab-btn.active{color:#38bdf8;background-color:#0284c726;font-weight:600}.badge-count{background-color:#ffffff1a;border-radius:10px;padding:1px 5px;font-size:.68rem}.graph-header-actions{align-items:center;gap:.5rem;display:flex}.simulate-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7,#2563eb);border:none;border-radius:5px;align-items:center;gap:.35rem;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 6px #0284c74d}.simulate-btn:hover{transform:translateY(-1px);box-shadow:0 3px 10px #0284c773}.simulate-btn.active{background:#f59e0b;box-shadow:0 2px 6px #f59e0b66}.graphical-body{background-color:#0f1115;flex:1;position:relative;overflow:hidden}.svg-viewport-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.canvas-floating-toolbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background-color:#18191cd9;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.25rem;padding:3px 6px;display:flex;position:absolute;bottom:16px;right:16px;box-shadow:0 4px 16px #0006}.canvas-tool-btn{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.canvas-tool-btn:hover{color:#fff;background-color:#ffffff1f}.zoom-slider-container{align-items:center;padding:0 4px;display:flex}.zoom-range-slider{appearance:none;cursor:pointer;background:#334155;border-radius:2px;outline:none;width:70px;height:4px}.zoom-range-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#38bdf8;border-radius:50%;width:12px;height:12px;transition:transform .1s;box-shadow:0 0 6px #38bdf899}.zoom-range-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.zoom-preset-wrapper{position:relative}.zoom-percentage-btn{color:#38bdf8;font-family:var(--font-mono);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:4px;padding:3px 6px;font-size:.72rem;font-weight:600;transition:all .15s}.zoom-percentage-btn:hover{background:#38bdf826;border-color:#38bdf8}.zoom-presets-dropdown{z-index:50;background:#1e222b;border:1px solid #ffffff1f;border-radius:6px;flex-direction:column;min-width:85px;padding:4px;display:flex;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0009}.zoom-presets-dropdown button{color:#cbd5e1;font-family:var(--font-mono);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:.72rem;transition:all .1s}.zoom-presets-dropdown button:hover{color:#fff;background:#0284c7}.canvas-status-tag{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#94a3b8;z-index:5;pointer-events:none;background-color:#121316cc;border:1px solid #ffffff14;border-radius:20px;align-items:center;gap:.4rem;padding:4px 10px;font-size:.72rem;display:flex;position:absolute;top:12px;left:14px}.sparkle-cyan{color:#38bdf8}.canvas-svg{display:block}.flow-node-group{transition:transform .12s}.flow-node-group:hover{filter:brightness(1.1)}.ast-container{background-color:#0f1115;height:100%;padding:1rem;overflow-y:auto}.ast-tree-view{font-family:var(--font-mono);font-size:.82rem}.ast-node{margin-top:.4rem;margin-left:1rem}.ast-node.root{margin-left:0}.ast-node-header{border-radius:4px;align-items:center;gap:.5rem;padding:4px 8px;display:flex}.ast-node-header.hoverable:hover{cursor:pointer;background-color:#ffffff0d}.ast-tag{color:#38bdf8;background-color:#1e222b;border:1px solid #334155;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:600}.ast-tag.root-tag{color:#34d399;background-color:#064e3b;border-color:#059669}.ast-title{color:var(--text-bright)}.ast-line{color:var(--text-muted);margin-left:auto;font-size:.72rem}.ast-sub-children{border-left:1px solid var(--border-color);margin-top:.25rem;margin-left:1.5rem;padding-left:.5rem}.ast-leaf{border-radius:3px;align-items:center;gap:.4rem;padding:3px 6px;display:flex}.ast-leaf:hover{cursor:pointer;background-color:#ffffff0a}.ast-leaf-text{color:var(--text-secondary)}.ast-tag-mini{color:#a78bfa;font-size:.65rem}.ast-line-mini{color:var(--text-muted);margin-left:auto;font-size:.68rem}.variables-container{background-color:#0f1115;height:100%;padding:1rem;overflow-y:auto}.variables-toolbar{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.vars-title{color:var(--text-bright);font-size:.9rem;font-weight:600}.vars-subtitle{color:var(--text-muted);margin-top:2px;font-size:.75rem}.step-btn{background-color:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:5px;align-items:center;gap:.4rem;padding:5px 12px;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.step-btn:hover{background-color:#0369a1}.no-vars-notice{text-align:center;height:60%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;font-size:.85rem;display:flex}.no-vars-notice code{background-color:var(--bg-tertiary);color:#38bdf8;border-radius:3px;padding:2px 5px}.vars-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.75rem;display:grid}.var-card{border:1px solid var(--border-color);cursor:pointer;background-color:#181a1f;border-radius:6px;padding:.75rem;transition:all .15s}.var-card:hover{border-color:var(--accent-primary);background-color:#20232a}.var-card.active-step{border-color:#38bdf8;box-shadow:0 0 12px #38bdf833}.var-header{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.var-name{font-family:var(--font-mono);color:var(--text-bright);font-size:.85rem;font-weight:600}.var-type-badge{font-size:.65rem;font-family:var(--font-mono);border-radius:3px;padding:1px 5px}.var-type-badge.number{color:#38bdf8;background-color:#38bdf826}.var-type-badge.string{color:#f472b6;background-color:#f472b626}.var-type-badge.collection{color:#a78bfa;background-color:#a78bfa26}.var-type-badge.expression{color:#fbbf24;background-color:#fbbf2426}.var-value-box{font-family:var(--font-mono);color:#4ade80;word-break:break-all;background-color:#0f1115;border-radius:4px;margin-bottom:.4rem;padding:6px 8px;font-size:.8rem}.var-footer{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.68rem;display:flex}.active-tag{color:#38bdf8;font-weight:600}.web-preview-container{background-color:var(--bg-secondary);flex-direction:column;width:100%;height:100%;display:flex}.web-preview-header{height:var(--tab-height);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.preview-title{color:var(--text-bright);align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:flex}.viewport-controls{align-items:center;gap:.25rem;display:flex}.viewport-btn{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;display:flex}.viewport-btn:hover{background-color:var(--bg-tertiary);color:var(--text-bright)}.viewport-btn.active{border-color:var(--accent-primary);color:#38bdf8;background-color:#0284c726}.web-preview-body{background-color:#0f1115;flex:1;justify-content:center;align-items:center;padding:.5rem;display:flex;overflow:hidden}.preview-viewport-frame{background-color:#fff;border-radius:6px;height:100%;transition:width .2s;overflow:hidden;box-shadow:0 4px 20px #00000080}.preview-viewport-frame.viewport-desktop{width:100%}.preview-viewport-frame.viewport-tablet{width:768px;max-width:100%}.preview-viewport-frame.viewport-mobile{width:375px;max-width:100%}.preview-iframe{border:none;width:100%;height:100%}.spinner{border:3px solid #0284c733;border-top-color:var(--accent-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.spinner-small{border:2px solid #f59e0b4d;border-top-color:var(--status-warning);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.text-success{color:var(--status-success)!important}.text-error{color:var(--status-error)!important}.text-muted{color:var(--text-muted)}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9999;background-color:#000000bf;justify-content:center;align-items:center;padding:1rem;animation:.18s ease-out fadeInModal;display:flex;position:fixed;inset:0}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.algorithm-modal-card{background-color:#16181d;border:1px solid #38bdf840;border-radius:12px;flex-direction:column;width:100%;max-width:1050px;height:85vh;max-height:750px;animation:.2s cubic-bezier(.16,1,.3,1) scaleUpModal;display:flex;overflow:hidden;box-shadow:0 20px 60px #000000b3,0 0 25px #0284c726}@keyframes scaleUpModal{0%{opacity:0;transform:scale(.96)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.algo-modal-header{border-bottom:1px solid var(--border-color);background-color:#1a1d24;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.algo-modal-title{align-items:center;gap:.75rem;display:flex}.algo-brand-icon{color:#c084fc}.algo-modal-title h3{color:var(--text-bright);font-size:1.1rem;font-weight:700}.algo-modal-subtitle{color:var(--text-muted);margin-top:2px;font-size:.78rem}.algo-close-btn{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.algo-close-btn:hover{color:#f43f5e;background-color:#f43f5e26}.algo-filter-bar{border-bottom:1px solid var(--border-color);background-color:#131519;flex-wrap:wrap;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.algo-search-input-wrap{flex:1;align-items:center;min-width:250px;display:flex;position:relative}.algo-search-input-wrap .search-icon{color:var(--text-muted);position:absolute;left:10px}.algo-search-input{border:1px solid var(--border-color);width:100%;color:var(--text-bright);background-color:#1e222b;border-radius:6px;outline:none;padding:7px 32px;font-size:.82rem;transition:border-color .15s}.algo-search-input:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf826}.clear-search-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;display:flex;position:absolute;right:8px}.algo-category-tabs{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.algo-cat-pill{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background-color:#1e222b;border-radius:20px;padding:5px 10px;font-size:.75rem;font-weight:500;transition:all .15s}.algo-cat-pill:hover{color:var(--text-bright);background-color:#2a2f3d}.algo-cat-pill.active{color:#fff;background:linear-gradient(135deg,#0284c740,#a855f740);border-color:#38bdf8;font-weight:600}.algo-modal-body{flex:1;display:flex;overflow:hidden}.algo-list-column{border-right:1px solid var(--border-color);background-color:#121418;flex-direction:column;gap:.5rem;width:38%;min-width:280px;max-width:380px;padding:.75rem;display:flex;overflow-y:auto}.algo-empty-state{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.85rem}.reset-filter-link{color:#38bdf8;cursor:pointer;background:0 0;border:none;margin-top:.5rem;font-size:.8rem;text-decoration:underline}.algo-item-card{border:1px solid var(--border-color);cursor:pointer;background-color:#191c22;border-radius:8px;padding:.75rem;transition:all .15s}.algo-item-card:hover{background-color:#21252e;border-color:#38bdf866}.algo-item-card.selected{background-color:#0284c726;border-color:#38bdf8;box-shadow:0 0 12px #38bdf826}.algo-item-top{justify-content:space-between;align-items:center;margin-bottom:.35rem;display:flex}.algo-item-name{color:var(--text-bright);font-size:.85rem;font-weight:600}.difficulty-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:4px;padding:1px 6px;font-size:.65rem;font-weight:700}.difficulty-badge.easy{color:#34d399;background-color:#10b98126;border:1px solid #10b9814d}.difficulty-badge.medium{color:#fbbf24;background-color:#f59e0b26;border:1px solid #f59e0b4d}.difficulty-badge.hard{color:#f43f5e;background-color:#f43f5e26;border:1px solid #f43f5e4d}.algo-item-desc{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.75rem;line-height:1.35;display:-webkit-box;overflow:hidden}.algo-item-tags{flex-wrap:wrap;gap:.35rem;display:flex}.algo-tag{color:#94a3b8;font-size:.65rem;font-family:var(--font-mono);background-color:#242933;border-radius:3px;padding:1px 5px}.algo-detail-column{background-color:#16181d;flex-direction:column;flex:1;display:flex;overflow:hidden}.algo-detail-header{border-bottom:1px solid var(--border-color);background-color:#1a1d24;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.algo-detail-title{color:var(--text-bright);font-size:1rem;font-weight:700}.algo-complexity-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.complexity-badge{font-size:.72rem;font-family:var(--font-mono);color:#7dd3fc;background-color:#38bdf81a;border:1px solid #38bdf833;border-radius:4px;align-items:center;gap:.35rem;padding:2px 7px;display:flex}.algo-lang-pills{border:1px solid var(--border-color);background-color:#0f1115;border-radius:6px;align-items:center;gap:.25rem;padding:3px;display:flex}.lang-pill-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:600;transition:all .12s}.lang-pill-btn:hover{color:var(--text-bright)}.lang-pill-btn.active{background-color:var(--accent-primary);color:#fff}.algo-code-preview-wrap{background-color:#0d0e12;flex:1;padding:1rem;overflow:auto}.algo-code-preview{font-family:var(--font-mono);color:#e2e8f0;white-space:pre;margin:0;font-size:.82rem;line-height:1.5}.algo-detail-footer{border-top:1px solid var(--border-color);background-color:#1a1d24;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.algo-copy-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background-color:#242832;border-radius:6px;align-items:center;gap:.4rem;padding:6px 12px;font-size:.78rem;transition:all .15s;display:flex}.algo-copy-btn:hover{color:var(--text-bright);background-color:#2c3240}.algo-cta-group{align-items:center;gap:.5rem;display:flex}.algo-load-btn{cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.algo-load-btn.secondary{border:1px solid var(--border-color);color:var(--text-secondary);background-color:#0000}.algo-load-btn.secondary:hover{color:var(--text-bright);background-color:#242832}.algo-load-btn.primary{color:#fff;background:linear-gradient(135deg,#0284c7,#0369a1);border:1px solid #ffffff26;box-shadow:0 2px 8px #0284c759}.algo-load-btn.primary:hover{background:linear-gradient(135deg,#38bdf8,#0284c7);transform:translateY(-1px);box-shadow:0 4px 12px #0284c780}@media (width<=768px){:root{--header-height:50px;--tab-height:38px}body{touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;height:100dvh;overflow:hidden}.ide-root{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.ide-workspace{flex-direction:column;flex:1;height:auto;min-height:0;display:flex;position:relative;overflow:hidden}.ide-editor-section,.ide-terminal-section{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.mobile-hidden{display:none!important}.view-mode-bar{display:none}.right-pane-body{flex-direction:column;height:100%;min-height:0;display:flex}.sidebar-backdrop{-webkit-backdrop-filter:blur(5px);z-index:998;background-color:#000000bf;animation:.2s ease-out fadeInOverlay;position:fixed;inset:0}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.workspace-sidebar{z-index:999;width:290px;max-width:85vw;height:100%;animation:.22s cubic-bezier(.16,1,.3,1) slideInDrawer;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 35px #000000d9}@keyframes slideInDrawer{0%{transform:translate(-100%)}to{transform:translate(0)}}.close-drawer-btn{color:#f43f5e;display:flex!important}.ide-navbar{height:var(--header-height);flex-shrink:0;justify-content:space-between;gap:.35rem;padding:0 .5rem}.nav-left{flex:1;gap:.35rem;min-width:0}.mobile-files-toggle{color:#38bdf8;background-color:#38bdf81f;border-radius:6px;flex-shrink:0;width:32px;height:32px;display:flex}.brand-logo-img{width:26px;height:26px}.brand-title{white-space:nowrap;font-size:.85rem}.auto-lang-selector-wrapper{flex-shrink:1;min-width:0}.auto-lang-pill{gap:.25rem;max-width:140px;padding:3px 6px}.lang-select-dropdown{text-overflow:ellipsis;max-width:95px;font-size:.72rem}.extension-badge{display:none}.nav-center{flex-shrink:0}.run-button{border-radius:8px;gap:.35rem;padding:6px 14px;font-size:.84rem;box-shadow:0 2px 12px #10b98173}.nav-right{flex-shrink:0;align-items:center;gap:.3rem;display:flex}.mobile-more-trigger{width:32px;height:32px;color:var(--text-secondary);background:#ffffff0d;border:1px solid #ffffff14;border-radius:6px;justify-content:center;align-items:center;display:flex}.mobile-more-trigger:active{color:#fff;background:#ffffff1f}.mobile-menu-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background-color:#000000b3;animation:.2s ease-out fadeInOverlay;position:fixed;inset:0}.mobile-menu-sheet{max-height:82vh;padding:1.15rem 1rem env(safe-area-inset-bottom,1rem);background:#11141c;border-top:1px solid #ffffff1f;border-top-left-radius:18px;border-top-right-radius:18px;flex-direction:column;gap:1rem;animation:.25s cubic-bezier(.16,1,.3,1) slideUpSheet;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 32px #000000bf}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-sheet-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.sheet-title-group{align-items:center;gap:.5rem;display:flex}.sheet-title{color:#fff;font-size:.95rem;font-weight:700}.sheet-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex}.mobile-sheet-content{flex-direction:column;gap:1.1rem;display:flex;overflow-y:auto}.sheet-section{flex-direction:column;gap:.5rem;display:flex}.sheet-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.68rem;font-weight:700}.sheet-action-row{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.sheet-action-card{color:#fff;cursor:pointer;text-align:left;background:#181c26;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:.65rem;padding:.65rem .75rem;transition:all .15s;display:flex}.sheet-action-card:active{border-color:var(--accent-primary);transform:scale(.97)}.card-text{flex-direction:column;gap:2px;min-width:0;display:flex}.card-label{color:var(--text-muted);text-transform:uppercase;font-size:.65rem;font-weight:600}.card-val{color:#f1f5f9;font-size:.8rem;font-weight:600}.font-adjust-card{cursor:default}.font-stepper{align-items:center;gap:6px;margin-top:2px;display:flex}.font-step-btn{color:#fff;cursor:pointer;background:#232938;border:1px solid #ffffff1f;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.85rem;font-weight:700;display:flex}.font-step-btn:active{background:var(--accent-primary)}.current-font-size{font-size:.78rem;font-weight:600;font-family:var(--font-mono);color:#38bdf8;text-align:center;min-width:32px}.sheet-action-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.sheet-grid-btn{color:#e2e8f0;cursor:pointer;background:#181c26;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem .75rem;font-size:.78rem;font-weight:500;transition:all .12s;display:flex}.sheet-grid-btn:active{background:#222736;transform:scale(.97)}.sheet-grid-btn.danger{color:#fb7185}.sheet-grid-btn.external{color:#38bdf8}.editor-tab-strip-wrapper{height:var(--tab-height)}.sidebar-toggle-btn,.tab-action-btn.templates span,.tab-action-btn#editor-copy-btn span{display:none}.editor-tab{max-width:120px;padding:0 8px;font-size:.72rem}.monaco-wrapper{flex:1;width:100%;height:100%;min-height:0}.mobile-accessory-bar{z-index:95;background:#0d1017;border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14;flex-shrink:0;align-items:center;gap:3px;height:40px;padding:0 4px;display:flex;box-shadow:0 2px 8px #0006}.accessory-fixed-group{flex-shrink:0;align-items:center;gap:3px;display:flex}.accessory-scroll-container{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;align-items:center;gap:4px;padding:0 2px;display:flex;overflow-x:auto}.accessory-scroll-container::-webkit-scrollbar{display:none}.accessory-btn{color:#e2e8f0;min-width:32px;height:30px;font-family:var(--font-mono);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#181d28;border:1px solid #ffffff17;border-radius:6px;justify-content:center;align-items:center;padding:0 6px;font-size:.8rem;font-weight:600;transition:all .1s;display:inline-flex}.accessory-btn:active{background:var(--accent-primary);color:#fff;transform:scale(.92)}.accessory-btn.action-btn{color:#94a3b8;background:#141720;width:30px;padding:0}.accessory-btn.enter-btn{color:#34d399;background:#10b98126;border-color:#10b9814d}.accessory-divider{background:#ffffff14;flex-shrink:0;width:1px;height:20px;margin:0 2px}.mobile-view-tabs{height:52px;padding:0 6px env(safe-area-inset-bottom,0px);z-index:100;-webkit-user-select:none;user-select:none;background:#0a0d14;border-top:1px solid #ffffff1a;flex-shrink:0;justify-content:space-around;align-items:center;display:flex;box-shadow:0 -4px 18px #0000008c}.mobile-tab-btn{color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:.68rem;font-weight:500;transition:all .15s;display:flex;position:relative}.mobile-tab-btn:active{background-color:#ffffff0d;transform:scale(.95)}.mobile-tab-btn.active{color:#38bdf8;background-color:#38bdf81f;font-weight:700}.mobile-tab-dot{border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:20%}.mobile-tab-dot.success{background-color:#10b981;box-shadow:0 0 8px #10b981}.mobile-tab-dot.error{background-color:#f43f5e;box-shadow:0 0 8px #f43f5e}.terminal-body{padding:.6rem;font-size:.8rem;line-height:1.45}.terminal-input-bar{gap:6px;padding:6px 8px}.paste-stdin-btn{color:#38bdf8;cursor:pointer;background:#38bdf81f;border:1px solid #38bdf840;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:6px 9px;font-size:.74rem;font-weight:600;display:flex}.paste-stdin-btn:active{background:#38bdf840;transform:scale(.95)}.send-stdin-btn{padding:6px 12px;font-size:.78rem}.algo-modal-container{border-radius:14px!important;flex-direction:column!important;width:96%!important;max-width:96%!important;height:92vh!important;max-height:92vh!important;display:flex!important}.algo-modal-body{flex-direction:column!important;overflow-y:auto!important}.algo-list-column{border-right:none!important;border-bottom:1px solid var(--border-color)!important;width:100%!important;min-width:0!important;max-width:100%!important;max-height:35vh!important}.algo-detail-column{flex:1!important;min-width:0!important;height:auto!important}.tab-full-label{display:none!important}.tab-short-label{display:inline!important}.sim-btn-full{display:none!important}.sim-btn-short{display:inline!important}.status-tag-desktop{display:none!important}.status-tag-mobile{display:inline!important}.graphical-container{width:100%!important;height:100%!important;overflow:hidden!important}.graphical-header{background:#0b0e14!important;border-bottom:1px solid #ffffff14!important;gap:6px!important;height:40px!important;padding:0 8px!important}.graphical-tabs{scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;flex:1!important;gap:4px!important;overflow-x:auto!important}.graphical-tabs::-webkit-scrollbar{display:none!important}.graph-tab-btn,.simulate-btn{white-space:nowrap!important;flex-shrink:0!important;padding:4px 8px!important;font-size:.72rem!important}.svg-viewport-wrapper{touch-action:none!important;-webkit-user-select:none!important;user-select:none!important}.canvas-floating-toolbar{z-index:50!important;background-color:#0f172af0!important;border:1px solid #38bdf840!important;border-radius:10px!important;gap:4px!important;padding:4px 6px!important;bottom:14px!important;right:12px!important;box-shadow:0 4px 18px #000000a6!important}.canvas-tool-btn{color:#e2e8f0!important;border-radius:6px!important;width:32px!important;height:32px!important}.canvas-tool-btn:active{color:#38bdf8!important;background-color:#38bdf840!important}.zoom-slider-container{display:none!important}.canvas-status-tag{max-width:calc(100% - 16px)!important;padding:3px 8px!important;font-size:.68rem!important;top:8px!important;left:8px!important}.ast-container,.variables-container{padding:.6rem!important}.vars-grid{grid-template-columns:1fr!important}}@media (width<=400px){.brand-title{display:none}.auto-lang-pill{max-width:110px}.lang-select-dropdown{max-width:80px}}.terminal-multiline-stdin-box{background:#0f131c;border-top:1px solid #38bdf840;border-bottom:1px solid #ffffff14;flex-direction:column;gap:6px;padding:8px 12px;animation:.18s ease-out fadeInOverlay;display:flex}.multiline-header{color:#38bdf8;justify-content:space-between;align-items:center;font-size:.74rem;font-weight:600;display:flex}.multiline-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:.8rem}.multiline-close-btn:hover{color:#fff;background:#ffffff1a}.multiline-stdin-textarea{color:#f8fafc;font-family:var(--font-mono);resize:vertical;background:#07090e;border:1px solid #ffffff1a;border-radius:6px;outline:none;min-height:52px;padding:6px 8px;font-size:.82rem;line-height:1.4}.multiline-stdin-textarea:focus{border-color:#38bdf8;box-shadow:0 0 8px #38bdf833}.nav-college-mode-btn{color:#fbbf24;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f59e0b1f;border:1px solid #f59e0b59;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:.78rem;font-weight:600;transition:all .2s;display:inline-flex}.nav-college-mode-btn:hover{color:#fff;background:#f59e0b38;border-color:#f59e0b;box-shadow:0 0 12px #f59e0b40}.nav-college-mode-btn.active-exam{color:#f87171;background:#ef444426;border-color:#ef444480;animation:2s ease-in-out infinite examPulseBorder}@keyframes examPulseBorder{0%,to{box-shadow:0 0 6px #ef44444d}50%{box-shadow:0 0 16px #ef4444b3}}.clg-pin-badge{letter-spacing:.05em;background:#f59e0b33;border-radius:3px;padding:1px 4px;font-size:.62rem;font-weight:700}.exam-status-dot{background-color:#ef4444;border-radius:50%;width:7px;height:7px;animation:1.2s infinite pulseDotAnim;box-shadow:0 0 8px #ef4444}.college-exam-banner{-webkit-user-select:none;user-select:none;z-index:100;background:linear-gradient(90deg,#18090a,#1f0d11,#18090a);border-bottom:2px solid #ef4444;flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 1rem;display:flex;box-shadow:0 2px 14px #ef444433}.banner-left{align-items:center;gap:1rem;display:flex}.exam-live-indicator{align-items:center;gap:6px;display:flex}.exam-radar-dot{background-color:#ef4444;border-radius:50%;width:8px;height:8px;animation:1s infinite pulseDotAnim;box-shadow:0 0 10px #ef4444}.exam-mode-badge{letter-spacing:.08em;color:#f87171;text-transform:uppercase;font-size:.74rem;font-weight:800}.exam-meta-pill{background:#ffffff0f;border-radius:4px;align-items:center;gap:6px;padding:3px 8px;font-size:.74rem;display:flex}.meta-exam-name{color:#f1f5f9;font-weight:600}.meta-divider{color:#ffffff4d}.meta-student{color:#38bdf8;font-weight:500;font-family:var(--font-mono);align-items:center;gap:4px;display:inline-flex}.banner-center{align-items:center;gap:1rem;display:flex}.exam-timer-display{color:#fbbf24;background:#0d1117;border:1px solid #f59e0b4d;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;display:flex}.timer-digits{font-family:var(--font-mono);letter-spacing:.05em;font-size:.85rem;font-weight:700}.exam-violation-badge{color:#fca5a5;background:#ef444433;border:1px solid #ef4444;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;animation:1.5s infinite pulseDotAnim;display:flex}.banner-right{align-items:center;display:flex}.exam-end-btn{color:#fff;cursor:pointer;background:#ef4444d9;border:none;border-radius:6px;align-items:center;gap:6px;padding:5px 12px;font-size:.76rem;font-weight:700;transition:all .15s;display:flex;box-shadow:0 2px 8px #ef44444d}.exam-end-btn:hover{background:#dc2626;transform:translateY(-1px)}.college-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:10000;background-color:#000c;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeInOverlay;display:flex;position:fixed;inset:0}.college-modal-backdrop.lockdown-active{-webkit-backdrop-filter:blur(14px);background-color:#0f0202f0}.college-modal-card{background:#11141c;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;width:100%;max-width:540px;display:flex;overflow:hidden;box-shadow:0 12px 48px #000000d9}.college-modal-card.card-security-alert{border-color:#ef4444;box-shadow:0 0 40px #ef444473}.college-modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;padding:1.15rem 1.25rem;display:flex}.modal-title-group{align-items:center;gap:.85rem;display:flex}.college-icon-badge{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.college-icon-badge.primary{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.college-icon-badge.danger{color:#ef4444;background:#ef444433;border:1px solid #ef4444}.alert-pulse{animation:1.2s infinite pulseDotAnim}.college-modal-title{color:#fff;margin:0 0 2px;font-size:1.05rem;font-weight:700}.college-modal-subtitle{color:var(--text-secondary);margin:0;font-size:.76rem;line-height:1.35}.college-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px}.college-close-btn:hover{color:#fff;background:#ffffff14}.college-modal-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.college-error-alert{color:#fca5a5;background:#ef444426;border:1px solid #ef4444;border-radius:8px;align-items:center;gap:.5rem;padding:8px 12px;font-size:.8rem;font-weight:500;display:flex}.college-form{flex-direction:column;gap:.85rem;display:flex}.college-input-group{flex-direction:column;gap:4px;display:flex}.college-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;font-size:.74rem;font-weight:600;display:flex}.req-star{color:#f43f5e}.college-input{color:#fff;background:#0b0e14;border:1px solid #ffffff1f;border-radius:8px;outline:none;padding:8px 12px;font-size:.85rem;transition:all .15s}.college-input:focus{border-color:#f59e0b;box-shadow:0 0 10px #f59e0b40}.college-grid-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.college-pin-box{background:#f59e0b0f;border:1px dashed #f59e0b59;border-radius:10px;flex-direction:column;gap:.5rem;padding:.85rem;display:flex}.pin-box-header{color:#fbbf24;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.pin-box-note{color:var(--text-secondary);margin:0;font-size:.72rem;line-height:1.35}.pin-input{font-family:var(--font-mono);letter-spacing:.25em;font-size:1.1rem;font-weight:700}.pin-input.center-text{text-align:center;padding:10px 14px}.college-features-list{background:#0b0e14;border-radius:8px;flex-direction:column;gap:5px;padding:.65rem .85rem;display:flex}.feature-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:.74rem;display:flex}.college-actions{justify-content:flex-end;align-items:center;gap:.65rem;margin-top:.5rem;display:flex}.college-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.college-btn.secondary{color:var(--text-secondary);background:#ffffff14}.college-btn.secondary:hover{color:#fff;background:#ffffff24}.college-btn.primary{color:#000;background:linear-gradient(135deg,#f59e0b,#d97706);font-weight:700;box-shadow:0 4px 14px #f59e0b59}.college-btn.primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.college-btn.danger{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);font-weight:700;box-shadow:0 4px 16px #ef444473}.security-violation-banner{color:#fff;background:#ef44442e;border:1px solid #ef4444;border-radius:10px;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.danger-icon{color:#ef4444;flex-shrink:0;animation:1s infinite pulseDotAnim}.security-violation-banner h4{color:#fca5a5;margin:0 0 2px;font-size:.92rem}.security-violation-banner p{color:#f1f5f9;margin:0;font-size:.76rem;line-height:1.35}.exam-summary-card{background:#0b0e14;border:1px solid #ffffff14;border-radius:10px;grid-template-columns:1fr 1fr;gap:.65rem;padding:.85rem;display:grid}.summary-col{flex-direction:column;gap:2px;display:flex}.summary-label{text-transform:uppercase;color:var(--text-muted);font-size:.66rem;font-weight:600}.summary-val{color:#f1f5f9;font-size:.84rem;font-weight:600}.college-summary-view{text-align:center;flex-direction:column;gap:1rem;display:flex}.summary-badge-header{flex-direction:column;align-items:center;gap:.5rem;display:flex}.summary-badge-header h3{color:#fff;margin:0;font-size:1.1rem}.terminal-inline-input-line{background:#0f172ab3;border:1px solid #38bdf859;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;margin:4px 0;padding:3px 8px;animation:.15s ease-out fadeInPrompt;display:inline-flex}@keyframes fadeInPrompt{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.terminal-inline-input-line.eof-inline-line{background:#1e0a0fb3;border-color:#ef444466}.terminal-inline-prompt-label{font-family:var(--font-mono);color:#38bdf8;white-space:pre-wrap;-webkit-user-select:none;user-select:none;font-size:.85rem;font-weight:700}.terminal-inline-input-line.eof-inline-line .terminal-inline-prompt-label{color:#f87171}.terminal-inline-input-field{color:#fff;min-width:140px;font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;padding:2px 4px;font-size:.88rem;font-weight:500}.terminal-inline-input-field::placeholder{color:#64748b;font-size:.78rem;font-style:italic}.terminal-inline-submit-btn{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#0284c7,#2563eb);border:none;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;padding:3px 9px;font-size:.72rem;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #0284c74d}.terminal-inline-submit-btn:hover{background:linear-gradient(135deg,#0369a1,#1d4ed8);transform:translateY(-1px);box-shadow:0 3px 8px #0284c773}.terminal-inline-submit-btn:active{transform:translateY(0)}.college-primary-tabs-nav{background:#090c12;border:1px solid #ffffff14;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:.85rem;padding:4px;display:grid}.clg-primary-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.84rem;font-weight:600;transition:all .15s;display:flex}.clg-primary-tab-btn:hover{color:#fff;background:#ffffff0d}.clg-primary-tab-btn.active{color:#fbbf24;background:linear-gradient(135deg,#f59e0b33,#d977061f);border:1px solid #f59e0b66;box-shadow:0 2px 10px #f59e0b26}.clg-tab-badge{color:var(--text-muted);background:#ffffff14;border-radius:4px;padding:1px 6px;font-size:.65rem}.clg-primary-tab-btn.active .clg-tab-badge{color:#fef3c7;background:#f59e0b40}.clg-subtab-switcher{border-bottom:1px solid #ffffff14;align-items:center;gap:6px;margin-bottom:.85rem;padding-bottom:8px;display:flex}.clg-subtab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.clg-subtab-btn:hover{color:#fff;background:#ffffff0a}.clg-subtab-btn.active{color:#38bdf8;background:#181d28;border-color:#38bdf84d}.clg-info-banner{color:#fde68a;background:#f59e0b14;border:1px solid #f59e0b33;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:.74rem;line-height:1.4;display:flex}.college-success-card{background:#10b9811f;border:1px solid #10b98159;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;display:flex}.success-title{color:#34d399;font-size:.82rem;font-weight:600}.success-note{color:var(--text-secondary);font-size:.72rem}.current-bound-badge{color:#e2e8f0;background:#38bdf81a;border:1px solid #38bdf840;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.76rem;display:flex}.clg-system-linked-card{background:#090c12;border:1px solid #10b9814d;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.linked-card-left{align-items:center;gap:10px;display:flex}.linked-sys-name{font-family:var(--font-mono);color:#fff;font-size:.95rem;font-weight:700}.linked-clg-name{color:var(--text-secondary);font-size:.74rem}.linked-status-pill{color:#34d399;background:#10b98126;border:1px solid #10b9814d;border-radius:20px;padding:2px 8px;font-size:.68rem;font-weight:700}.portal-launch-btn{cursor:pointer;align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.portal-quick-launch-pill{color:#fbbf24;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#f59e0b26,#d9770640);border:1px solid #f59e0b73;border-radius:8px;align-items:center;gap:6px;padding:5px 12px;font-size:.76rem;font-weight:700;transition:all .18s;display:inline-flex}.portal-quick-launch-pill:hover{color:#000;background:linear-gradient(135deg,#f59e0b,#d97706);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.college-portal-fullscreen-backdrop{z-index:1000000;color:#f1f5f9;background:#080a0f;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.college-portal-container{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.college-portal-navbar{background:#0c0f17;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 1.5rem;display:flex}.portal-nav-brand{align-items:center;gap:12px;display:flex}.portal-badge-icon{color:#000;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:flex}.portal-brand-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700}.portal-brand-sub{color:var(--text-secondary);font-size:.72rem}.portal-nav-actions{align-items:center;gap:10px;display:flex}.portal-user-chip{background:#151924;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:8px;padding:4px 10px;font-size:.78rem;display:flex}.user-clg-name{color:#f8fafc;font-weight:600}.portal-cloud-chip{color:#34d399;letter-spacing:.04em;background:#10b9811f;border:1px solid #10b98159;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.cloud-dot-pulse{background:#10b981;border-radius:50%;width:7px;height:7px;animation:1.2s infinite alternate pulseDot;box-shadow:0 0 8px #10b981}.user-clg-code{font-family:var(--font-mono);color:#fbbf24;background:#f59e0b26;border-radius:4px;padding:1px 5px;font-size:.72rem;font-weight:700}.portal-logout-btn,.portal-back-btn{cursor:pointer;color:var(--text-secondary);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.portal-logout-btn:hover{color:#f87171;background:#ef444426;border-color:#ef44444d}.portal-back-btn:hover{color:#38bdf8;background:#38bdf826;border-color:#38bdf84d}.portal-auth-layout{background:radial-gradient(circle at 50% 30%,#1e293b4d,#0000 70%);flex:1;justify-content:center;align-items:center;padding:1.5rem;display:flex;overflow-y:auto}.portal-login-card{background:#0f131c;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:1.25rem;width:100%;max-width:480px;padding:2rem;display:flex;box-shadow:0 10px 30px #0009}.login-card-header{text-align:center}.login-header-icon{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto .75rem;display:flex}.login-card-header h3{color:#fff;margin:0 0 4px;font-size:1.25rem}.login-card-header p{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.4}.portal-alert{border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;font-weight:500;display:flex}.portal-alert.danger{color:#fca5a5;background:#ef444426;border:1px solid #ef4444}.portal-alert.success{color:#6ee7b7;background:#10b98126;border:1px solid #10b981}.portal-form{flex-direction:column;gap:1rem;display:flex}.portal-input-group{flex-direction:column;gap:4px;display:flex}.portal-input-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem;font-weight:600}.portal-text-input{color:#fff;background:#080a0f;border:1px solid #ffffff1f;border-radius:8px;outline:none;padding:9px 12px;font-size:.88rem;transition:all .15s}.portal-text-input:focus{border-color:#f59e0b;box-shadow:0 0 10px #f59e0b40}.portal-primary-btn{color:#000;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #f59e0b59}.portal-primary-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.portal-secondary-btn{color:var(--text-secondary);cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.portal-quick-creds-box{background:#f59e0b0d;border:1px dashed #f59e0b40;border-radius:8px;flex-direction:column;gap:6px;padding:8px 12px;display:flex}.quick-creds-title{color:#fbbf24;font-size:.72rem;font-weight:600}.creds-pill-row{flex-wrap:wrap;gap:6px;display:flex}.cred-pill-btn{color:#cbd5e1;cursor:pointer;background:#151924;border:1px solid #ffffff1a;border-radius:4px;padding:3px 8px;font-size:.72rem}.cred-pill-btn:hover{color:#fff;border-color:#38bdf8}.portal-auth-footer{color:var(--text-secondary);border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;padding-top:.85rem;font-size:.76rem;display:flex}.portal-link-btn{color:#38bdf8;cursor:pointer;background:0 0;border:none;font-size:.76rem;font-weight:600}.portal-link-btn:hover{text-decoration:underline}.portal-dashboard-layout{flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.portal-metrics-row{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.metric-card{background:#0f131c;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:12px;padding:1rem;display:flex}.metric-icon-box{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.metric-icon-box.bg-blue{color:#38bdf8;background:#38bdf826}.metric-icon-box.bg-amber{color:#fbbf24;background:#f59e0b26}.metric-icon-box.bg-emerald{color:#34d399;background:#10b98126}.metric-icon-box.bg-rose{color:#f43f5e;background:#f43f5e33}.metric-icon-box.bg-slate{color:#94a3b8;background:#64748b26}.metric-num{color:#fff;font-size:1.4rem;font-weight:800;line-height:1}.metric-label{color:var(--text-secondary);margin-top:3px;font-size:.74rem}.portal-tabs-nav{border-bottom:1px solid #ffffff14;align-items:center;gap:8px;padding-bottom:8px;display:flex}.portal-tab-pill{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.portal-tab-pill:hover{color:#fff;background:#ffffff0d}.portal-tab-pill.active{color:#38bdf8;background:#181d28;border-color:#38bdf859;box-shadow:0 2px 8px #0000004d}.portal-tab-content{flex-direction:column;flex:1;gap:1rem;display:flex}.tab-header-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.search-input-wrapper{flex:1;max-width:420px;position:relative}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.portal-search-field{color:#fff;background:#0f131c;border:1px solid #ffffff1a;border-radius:8px;outline:none;width:100%;padding:7px 12px 7px 32px;font-size:.82rem}.portal-search-field:focus{border-color:#38bdf8}.header-action-group{align-items:center;gap:8px;display:flex}.refresh-btn,.add-system-quick-btn{cursor:pointer;color:#cbd5e1;background:#151924;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.refresh-btn:hover{color:#fff;background:#1e2433}.add-system-quick-btn{color:#fff;background:linear-gradient(135deg,#0284c7,#2563eb);border:none}.add-system-quick-btn:hover{filter:brightness(1.1)}.systems-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.system-status-card{background:#0f131c;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem;transition:all .15s;display:flex}.system-status-card.locked-card{background:linear-gradient(#f59e0b0d,#0f131c);border-color:#f59e0b59}.sys-card-header{justify-content:space-between;align-items:center;display:flex}.sys-name-badge{color:#fff;font-weight:700;font-family:var(--font-mono);align-items:center;gap:6px;font-size:.95rem;display:flex}.sys-status-pill{border-radius:20px;padding:2px 7px;font-size:.68rem;font-weight:700}.sys-status-pill.idle{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.sys-status-pill.locked{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b66}.sys-details-list{background:#080a0f;border-radius:6px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.sys-detail-row{justify-content:space-between;align-items:center;font-size:.74rem;display:flex}.detail-label{color:var(--text-muted)}.detail-value{color:#f1f5f9;font-weight:500}.sys-card-actions{align-items:center;gap:6px;display:flex}.sys-btn{cursor:pointer;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:5px;padding:6px 10px;font-size:.74rem;font-weight:600;display:inline-flex}.sys-btn.lock-btn{color:#000;background:linear-gradient(135deg,#f59e0b,#d97706)}.sys-btn.unlock-btn{color:#34d399;background:#10b98133;border:1px solid #10b98166}.sys-btn.delete-btn{color:#f87171;background:#ef444426;border:1px solid #ef44444d;flex:0 0 32px}.broadcast-control-box,.register-system-box,.incident-logs-box{background:#0f131c;border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;gap:1.25rem;max-width:800px;padding:1.5rem;display:flex}.broadcast-header,.reg-sys-header,.logs-header{align-items:center;gap:12px;display:flex}.broadcast-header h3,.reg-sys-header h3,.logs-header h3{color:#fff;margin:0 0 2px;font-size:1.15rem}.broadcast-header p,.reg-sys-header p,.logs-header p{color:var(--text-secondary);margin:0;font-size:.78rem}.broadcast-settings-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.broadcast-action-buttons{align-items:center;gap:1rem;display:flex}.broadcast-lock-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:.88rem;font-weight:700;display:inline-flex;box-shadow:0 4px 16px #ef444466}.broadcast-unlock-btn{color:#34d399;cursor:pointer;background:#10b98126;border:1px solid #10b98166;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-size:.84rem;font-weight:700;display:inline-flex}.broadcast-notice-card{color:#fde68a;background:#f59e0b14;border:1px solid #f59e0b40;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:.76rem;line-height:1.4;display:flex}.logs-table-wrapper{border:1px solid #ffffff14;border-radius:8px;overflow-x:auto}.incident-table{border-collapse:collapse;text-align:left;width:100%;font-size:.78rem}.incident-table th,.incident-table td{border-bottom:1px solid #ffffff0f;padding:9px 12px}.incident-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:#090c12;font-size:.7rem;font-weight:600}.badge-flagged{color:#f87171;background:#ef444433;border:1px solid #ef444466;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:700}.portal-submodal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100000;background:#000000bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.portal-submodal-card{background:#0f131c;border:1px solid #ffffff26;border-radius:14px;flex-direction:column;gap:1rem;width:100%;max-width:520px;padding:1.5rem;display:flex}.submodal-header{justify-content:space-between;align-items:center;display:flex}.submodal-title-group{align-items:center;gap:8px;display:flex}.submodal-title-group h4{color:#fff;margin:0;font-size:1.05rem}.submodal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px}.portal-grid-two{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.submodal-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:.5rem;display:flex}.portal-empty-state{text-align:center;background:#0a0d14;border:1px dashed #ffffff1a;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.portal-empty-state h4{color:#fff;margin:0;font-size:1.05rem}.portal-empty-state p{color:var(--text-secondary);max-width:360px;margin:0;font-size:.8rem}.college-fullscreen-takeover{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:9999999;cursor:pointer;background:radial-gradient(circle,#1e0a0af5 0%,#050508fc 100%);justify-content:center;align-items:center;padding:1.5rem;animation:.25s ease-out takeoverFadeIn;display:flex;position:fixed;inset:0}@keyframes takeoverFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.takeover-box{text-align:center;background:#120a0ad9;border:2px solid #ef444473;border-radius:20px;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:580px;padding:2.5rem 2rem;animation:3s infinite alternate pulseCardBorder;display:flex;box-shadow:0 0 60px #ef444459,inset 0 0 30px #ef44441a}@keyframes pulseCardBorder{0%{border-color:#ef444466;box-shadow:0 0 40px #ef444440}to{border-color:#f59e0bb3;box-shadow:0 0 70px #f59e0b66}}.takeover-radar{background:#ef444426;border:2px solid #ef444480;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;display:flex;position:relative}.takeover-radar:before{content:"";border:1px dashed #f59e0b66;border-radius:50%;animation:10s linear infinite spinRadar;position:absolute;inset:-10px}@keyframes spinRadar{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.takeover-icon{color:#ef4444;animation:1.5s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.takeover-title{letter-spacing:.04em;background:linear-gradient(135deg,#f87171,#fbbf24);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:1.5rem;font-weight:800}.takeover-desc{color:#cbd5e1;max-width:460px;margin:0;font-size:.92rem;line-height:1.5}.takeover-action-prompt{color:#fbbf24;letter-spacing:.03em;background:#f59e0b1f;border:1px solid #f59e0b59;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:.82rem;font-weight:700;display:inline-flex}.takeover-pulse-circle{background:#f59e0b;border-radius:50%;width:8px;height:8px;animation:1s infinite alternate pulseDot;box-shadow:0 0 10px #f59e0b}.takeover-launch-btn{color:#fff;letter-spacing:.02em;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:13px 28px;font-size:1rem;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 8px 25px #ef444473}.takeover-launch-btn:hover{background:linear-gradient(135deg,#f87171,#ef4444);transform:translateY(-2px);box-shadow:0 12px 30px #ef444499}.takeover-fineprint{color:#94a3b8;margin:0;font-size:.74rem;line-height:1.4}.system-kiosk-lock-overlay{z-index:99999999;-webkit-backdrop-filter:blur(25px);-webkit-user-select:none;user-select:none;background:#05070df7;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.system-kiosk-lock-box{text-align:center;background:#0d1322;border:1.5px solid #f59e0b66;border-radius:24px;width:100%;max-width:420px;padding:3rem 2.25rem 2.5rem;animation:.3s cubic-bezier(.16,1,.3,1) lockBoxPop;box-shadow:0 25px 70px -10px #000000f2,0 0 50px #f59e0b26}@keyframes lockBoxPop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lock-icon-halo{color:#fbbf24;background:#f59e0b1f;border:2px solid #f59e0b80;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 1.5rem;animation:2s infinite alternate pulseLockIcon;display:flex;box-shadow:0 0 30px #f59e0b4d}@keyframes pulseLockIcon{0%{transform:scale(1);box-shadow:0 0 20px #f59e0b33}to{transform:scale(1.05);box-shadow:0 0 35px #f59e0b73}}.lock-main-title{letter-spacing:.06em;color:#f8fafc;margin:0 0 .4rem;font-size:1.6rem;font-weight:800}.lock-sub-title{color:#94a3b8;margin:0 0 2rem;font-size:.88rem}.lock-action-form{flex-direction:column;width:100%;display:flex}.lock-input-wrap{width:100%}.lock-pin-field{text-align:center;letter-spacing:.35em;color:#fbbf24;box-sizing:border-box;background:#060911;border:2px solid #f59e0b59;border-radius:14px;outline:none;width:100%;height:56px;font-family:JetBrains Mono,monospace;font-size:1.7rem;font-weight:700;transition:all .2s}.lock-pin-field:focus{background:#080c16;border-color:#f59e0b;box-shadow:0 0 20px #f59e0b59}.lock-pin-field::placeholder{letter-spacing:.05em;color:#475569;font-size:1rem;font-weight:500}.lock-error-text{color:#fb7185;text-align:center;margin-top:.75rem;font-size:.84rem;font-weight:600}.lock-accept-button{color:#fff;letter-spacing:.03em;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:14px;justify-content:center;align-items:center;width:100%;height:52px;margin-top:1.25rem;font-size:1.05rem;font-weight:700;transition:all .2s;display:flex;box-shadow:0 8px 25px #f59e0b66}.lock-accept-button:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b);transform:translateY(-2px);box-shadow:0 12px 30px #f59e0b99}.lock-accept-button:active{transform:translateY(0)}.shake-animation{animation:.4s ease-in-out shakeLock}@keyframes shakeLock{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.portal-pin-control-card{background:#f59e0b14;border:1px solid #f59e0b40;border-radius:10px;align-items:center;gap:.75rem;padding:6px 12px;display:flex}.portal-pin-info{color:#f1f5f9;align-items:center;gap:6px;font-size:.82rem;font-weight:600;display:flex}.portal-pin-action-group{align-items:center;display:flex}.pin-display-inline{align-items:center;gap:8px;display:flex}.portal-pin-code-badge{color:#fbbf24;letter-spacing:.1em;background:#090d16;border:1px solid #f59e0b66;border-radius:6px;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:.95rem;font-weight:800}.portal-pin-edit-btn{color:#94a3b8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:600;transition:all .2s}.portal-pin-edit-btn:hover{color:#f59e0b;background:#f59e0b33;border-color:#f59e0b}.pin-edit-inline{align-items:center;gap:6px;display:flex}.portal-pin-inline-input{color:#fbbf24;text-align:center;background:#090d16;border:1.5px solid #f59e0b;border-radius:6px;outline:none;width:75px;height:28px;font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:700}.portal-pin-save-btn{color:#000;cursor:pointer;background:#f59e0b;border:none;border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:700}.portal-pin-cancel-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:.75rem}.portal-pin-success-toast{color:#34d399;margin-left:6px;font-size:.76rem;font-weight:600}@media (display-mode:standalone),(display-mode:fullscreen),(display-mode:minimal-ui){.nav-install-btn,.mobile-install-quick-btn,.highlight-install,.install-modal-backdrop{display:none!important}}.nav-install-btn{color:#38bdf8;cursor:pointer;white-space:nowrap;background:#38bdf81f;border:1px solid #38bdf859;border-radius:8px;align-items:center;gap:6px;padding:4px 11px;font-size:.78rem;font-weight:700;transition:all .2s;display:inline-flex}.nav-install-btn:hover{color:#fff;background:#38bdf838;border-color:#38bdf8;transform:translateY(-1px);box-shadow:0 0 14px #38bdf859}.mobile-install-quick-btn{color:#38bdf8;cursor:pointer;background:#38bdf829;border:1px solid #38bdf866;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;transition:all .2s;display:inline-flex}.mobile-install-quick-btn:hover{color:#fff;background:#38bdf84d}.highlight-install{color:#38bdf8!important;background:#38bdf81f!important;border:1px solid #38bdf859!important}.install-modal-backdrop{z-index:100000;-webkit-backdrop-filter:blur(14px);background:#030712d9;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.install-modal-card{background:#0f172a;border:1.5px solid #38bdf84d;border-radius:20px;width:100%;max-width:480px;animation:.25s cubic-bezier(.16,1,.3,1) popInModal;overflow:hidden;box-shadow:0 25px 60px -10px #000000e6,0 0 40px #38bdf826}@keyframes popInModal{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.install-modal-header{background:#ffffff05;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.install-modal-title{align-items:center;gap:12px;display:flex}.install-modal-title h4{color:#f8fafc;margin:0;font-size:1.15rem;font-weight:800}.install-modal-title p{color:#94a3b8;margin:2px 0 0;font-size:.78rem}.install-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.2rem;transition:all .2s}.install-modal-close:hover{color:#f43f5e;background:#f43f5e1a}.install-modal-body{padding:1.5rem}.install-success-banner{color:#34d399;background:#10b98126;border:1px solid #10b98166;border-radius:10px;align-items:center;gap:8px;margin-bottom:1.25rem;padding:10px 14px;font-size:.85rem;font-weight:600;display:flex}.install-guide-list{flex-direction:column;gap:1rem;display:flex}.guide-item{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.guide-item strong{color:#f1f5f9;margin-bottom:3px;font-size:.88rem;display:block}.guide-item p{color:#94a3b8;margin:0;font-size:.8rem;line-height:1.45}.install-modal-actions{border-top:1px solid #ffffff14;justify-content:flex-end;align-items:center;gap:10px;margin-top:1.5rem;padding-top:1.25rem;display:flex}.install-now-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7,#0369a1);border:none;border-radius:10px;align-items:center;gap:6px;padding:9px 18px;font-size:.88rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 15px #0284c759}.install-now-btn:hover{background:linear-gradient(135deg,#0ea5e9,#0284c7);transform:translateY(-1px)}.install-done-btn{color:#e2e8f0;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:all .2s}.install-done-btn:hover{background:#ffffff26}
