@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap";:root{--bg-root: #0a0e17;--bg-primary: #0d1117;--bg-secondary: #111827;--bg-tertiary: #1e293b;--bg-hover: #263045;--border: #1e293b;--border-strong: #334155;--text-primary: #e2e8f0;--text-secondary:#a0aec0;--text-muted: #64748b;--text-dim: #475569;--accent: #3D9BE9;--accent-green: #2ECC71;--accent-amber: #F39C12;--accent-red: #FF4757;--canvas-bg: #0a0e17;--canvas-grid: #141d2e;--node-fill: #111827;--node-stroke: #334155;--shadow: rgba(0,0,0,.5)}[data-theme=light]{--bg-root: #f1f5f9;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #e2e8f0;--bg-hover: #e8edf5;--border: #e2e8f0;--border-strong: #cbd5e0;--text-primary: #1e293b;--text-secondary:#475569;--text-muted: #718096;--text-dim: #94a3b8;--accent: #2563eb;--accent-green: #16a34a;--accent-amber: #d97706;--accent-red: #dc2626;--canvas-bg: #f0f4f8;--canvas-grid: #dde4ee;--node-fill: #ffffff;--node-stroke: #94a3b8;--shadow: rgba(0,0,0,.15)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:IBM Plex Sans,Inter,system-ui,-apple-system,sans-serif;background:var(--bg-root);color:var(--text-primary);overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tab-btn{position:relative;transition:color .15s}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);border-radius:2px 2px 0 0}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}.toast-enter{animation:toast-in .2s ease}.toast-exit{animation:toast-out .2s ease forwards}.file-tab{display:flex;align-items:center;gap:5px;padding:0 12px 0 14px;height:100%;border-right:1px solid var(--border);cursor:pointer;font-size:12px;color:var(--text-muted);background:transparent;border-bottom:2px solid transparent;white-space:nowrap;transition:all .15s;-webkit-user-select:none;user-select:none;position:relative}.file-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.file-tab.active{color:var(--text-primary);border-bottom-color:var(--accent);background:var(--bg-secondary)}.file-tab.modified:after{content:"•";color:var(--accent-amber);margin-left:2px}.page-tab{display:flex;align-items:center;gap:4px;padding:0 12px;height:100%;border-right:1px solid var(--border);cursor:pointer;font-size:11px;color:var(--text-muted);background:transparent;border-top:2px solid transparent;white-space:nowrap;transition:all .15s;-webkit-user-select:none;user-select:none}.page-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.page-tab.active{color:var(--accent);border-top-color:var(--accent);background:var(--bg-secondary)}.dropdown-menu{position:absolute;top:100%;left:0;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:6px;padding:4px 0;min-width:180px;box-shadow:0 8px 24px var(--shadow);z-index:100}.dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 14px;font-size:12px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background .1s,color .1s}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item.danger:hover{background:#ff47571f;color:var(--accent-red)}.dropdown-separator{height:1px;background:var(--border);margin:4px 0}.sld-input{width:100%;padding:5px 8px;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-size:12px;font-family:inherit;outline:none;transition:border-color .15s}.sld-input:focus{border-color:var(--accent)}.kbd{display:inline-block;padding:1px 5px;background:var(--bg-tertiary);border:1px solid var(--border-strong);border-radius:3px;font-size:10px;font-family:IBM Plex Mono,JetBrains Mono,monospace;color:var(--text-muted);margin-left:auto}@keyframes mode-slide-in{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.panel-collapse-enter{animation:panel-in .18s ease}@keyframes panel-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.floating-panel{box-shadow:0 20px 60px #000000a6,0 0 0 1px #3d9be914}.mono{font-family:IBM Plex Mono,JetBrains Mono,monospace}
