:root{--bg-color: #0f172a;--bg-sidebar: rgba(30, 41, 59, .7);--bg-toolbar: rgba(15, 23, 42, .8);--bg-card: #1e293b;--text-main: #f8fafc;--text-muted: #94a3b8;--accent-color: #3b82f6;--accent-hover: #2563eb;--accent-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);--border-color: rgba(255, 255, 255, .1);--success-color: #10b981;--font-ui: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-color);color:var(--text-main);height:100vh;overflow:hidden;background-image:radial-gradient(circle at 15% 50%,rgba(59,130,246,.1),transparent 25%),radial-gradient(circle at 85% 30%,rgba(139,92,246,.1),transparent 25%)}#app{display:flex;height:100vh;width:100vw}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}#sidebar{width:280px;background:var(--bg-sidebar);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:width .3s ease;z-index:10}.sidebar-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:16px}.sidebar-header h2{font-size:1.5rem;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}button{cursor:pointer;font-family:var(--font-ui);font-size:.9rem;font-weight:500;border-radius:8px;padding:10px 16px;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:8px}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 14px #3b82f64d}.btn-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.btn-primary:not(:disabled):active{transform:translateY(1px)}.btn-secondary{background:#ffffff0d;color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:not(:disabled):hover{background:#ffffff1a}.file-list{flex-grow:1;overflow-y:auto;padding:12px}ul.tree-list{list-style:none;padding-left:12px;margin:0;display:flex;flex-direction:column;gap:2px}ul.root-tree{padding-left:0}li{margin:0;padding:0}details{margin-bottom:2px}details>summary{padding:8px 12px;border-radius:6px;cursor:pointer;color:var(--text-main);font-size:.9rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none}details>summary::marker,details>summary::-webkit-details-marker{display:none}details>summary:hover{background:#ffffff0d}.folder-icon{width:16px;height:16px;color:var(--accent-light, #60a5fa)}.folder-icon.icon-fill{display:none}details[open]>summary .icon-stroke{display:none}details[open]>summary .icon-fill{display:inline-block}details>summary.loading{opacity:.5}.file-item{padding:8px 12px 8px 24px;border-radius:6px;cursor:pointer;color:var(--text-muted);font-size:.9rem;transition:all .2s ease;display:flex;align-items:center;gap:8px;margin-top:2px}.file-item:hover{background:#ffffff0d;color:var(--text-main)}.file-item.active{background:#3b82f626;color:var(--accent-color);font-weight:500}.file-item svg.file-icon{width:16px;height:16px;opacity:.7}.empty-state{color:var(--text-muted);text-align:center;padding:20px;font-size:.9rem;font-style:italic}#main-content{flex-grow:1;display:flex;flex-direction:column;min-width:0;background-color:var(--bg-color)}.toolbar{height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:var(--bg-toolbar);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);z-index:5}#current-file-name{font-size:1.1rem;font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions{display:flex;align-items:center;gap:16px}.view-modes{display:flex;align-items:center;gap:4px;background:var(--bg-card);padding:4px;border-radius:8px;border:1px solid var(--border-color)}.divider{width:1px;height:24px;background:var(--border-color);margin:0 4px}.status-indicator{font-size:.85rem;color:var(--text-muted);transition:color .3s ease}.status-indicator.saved{color:var(--success-color)}.status-indicator.unsaved{color:#fbbf24}.status-indicator.unsaved:before{content:"•";margin-right:4px;font-size:1.2rem;vertical-align:middle}.split-view{display:flex;flex-grow:1;height:calc(100vh - 64px);overflow:hidden;position:relative}.editor-pane{display:block;width:50%;min-width:100px;height:100%;overflow-y:auto;border-right:1px solid var(--border-color)}.preview-pane{display:block;flex:1;height:100%;overflow-y:auto;min-width:100px}.resizer{width:6px;background-color:transparent;cursor:col-resize;z-index:10;transition:background-color .2s ease;flex-shrink:0}.resizer:hover,.resizer.dragging{background-color:var(--accent-color)}.split-view.mode-editor .preview-pane,.split-view.mode-editor .resizer,.split-view.mode-editor .toc-pane{display:none!important}.split-view.mode-editor .editor-pane{width:100%!important;border-right:none}.split-view.mode-preview .editor-pane,.split-view.mode-preview .resizer{display:none!important}.split-view.mode-preview .preview-pane{width:100%!important}.toc-pane{width:250px;background:var(--bg-card);border-left:1px solid var(--border-color);overflow-y:auto;display:flex;flex-direction:column;flex-shrink:0}.toc-pane.hidden{display:none}.toc-header{padding:12px 16px;font-weight:600;border-bottom:1px solid var(--border-color);color:var(--text-main);position:sticky;top:0;background:var(--bg-card);z-index:5}.toc-list{list-style:none;padding:8px;margin:0}.toc-item{display:block;padding:6px 12px;color:var(--text-muted);text-decoration:none;font-size:.9rem;border-radius:6px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.toc-item:hover,.toc-item.active{background:#0000000d;color:var(--text-main)}body.light-theme .toc-item:hover,body.light-theme .toc-item.active{background:#0000000f}.toc-level-1{margin-left:0;font-weight:600;font-size:.95rem;color:var(--text-main)}.toc-level-2{margin-left:12px}.toc-level-3{margin-left:24px;font-size:.85rem}.toc-level-4{margin-left:36px;font-size:.85rem}.toc-level-5{margin-left:48px;font-size:.8rem}.toc-level-6{margin-left:60px;font-size:.8rem}#editor{width:100%;height:100%;background:transparent;border:none;color:var(--text-main);font-family:var(--font-mono);font-size:14px;line-height:1.6;padding:32px;resize:none;outline:none}#editor:disabled{color:var(--text-muted)}#editor::placeholder{color:#94a3b880}.preview-pane{padding:32px 32px 80px;background:var(--bg-color);font-family:var(--font-ui);line-height:1.7;color:var(--text-main);font-size:1.05rem}.empty-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:16px;opacity:.5}.preview-pane h1,.preview-pane h2,.preview-pane h3{margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.3}.preview-pane h1{font-size:2.25rem}.preview-pane h2{font-size:1.875rem;border-bottom:1px solid var(--border-color);padding-bottom:.3em}.preview-pane h3{font-size:1.5rem}.preview-pane p{margin-bottom:1em}.preview-pane a{color:var(--accent-light);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.preview-pane a:hover{border-bottom:1px solid var(--accent-light)}.preview-pane ul,.preview-pane ol{margin-bottom:1em;padding-left:2em}.preview-pane li{margin-bottom:.25em}.preview-pane pre{background:var(--bg-card);padding:16px;border-radius:8px;overflow-x:auto;margin-bottom:1em;border:1px solid var(--border-color)}.preview-pane code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-card);padding:.2em .4em;border-radius:4px}.preview-pane pre code{background:transparent;padding:0;border-radius:0}.preview-pane blockquote{border-left:4px solid var(--accent-color);padding-left:16px;color:var(--text-muted);margin-left:0;margin-bottom:1em;font-style:italic;background:#3b82f60d;padding-top:8px;padding-bottom:8px;border-radius:0 8px 8px 0}.preview-pane img{max-width:100%;height:auto;border-radius:8px;margin:1em 0;border:1px solid var(--border-color)}.preview-pane table{width:100%;border-collapse:collapse;margin-bottom:1em}.preview-pane th,.preview-pane td{border:1px solid var(--border-color);padding:8px 12px}.preview-pane th{background:#ffffff0d;font-weight:600;text-align:left}body.light-theme{--bg-color: #ffffff;--bg-sidebar: #f8fafc;--bg-toolbar: rgba(255, 255, 255, .95);--bg-card: #f1f5f9;--text-main: #0f172a;--text-muted: #334155;--border-color: #cbd5e1;background-image:none}body.light-theme .preview-pane pre,body.light-theme .preview-pane code{background:#f1f5f9;color:#0f172a}body.light-theme .preview-pane th{background:#0000000d;color:#000}body.light-theme .btn-secondary{background:#0000000d;color:#0f172a}body.light-theme .btn-secondary:not(:disabled):hover{background:#0000001a}body.light-theme .file-item:hover,body.light-theme details>summary:hover{background:#0000000f}.btn-icon{background:transparent;padding:8px;color:var(--text-muted);border:1px solid transparent;border-radius:8px;display:inline-flex;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#ffffff1a;color:var(--text-main)}.btn-icon.active{background:#3b82f626;color:var(--accent-color)}body.light-theme .btn-icon:hover{background:#0000000d;color:var(--text-main)}body.light-theme .view-modes{background:#00000008;border-color:#cbd5e1}body.light-theme .btn-icon.active{background:#3b82f626;color:var(--accent-hover)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172acc;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:1;visibility:visible;transition:all .2s ease}.modal-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.modal-content{background:var(--bg-card);padding:32px;border-radius:12px;width:90%;max-width:400px;border:1px solid var(--border-color);box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;text-align:center;transform:translateY(0);transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.modal-overlay.hidden .modal-content{transform:translateY(20px)}.modal-icon{width:48px;height:48px;margin:0 auto 16px;color:var(--success-color);background:#10b9811a;border-radius:50%;display:flex;align-items:center;justify-content:center}.modal-icon svg{width:24px;height:24px}.modal-content h3{font-size:1.25rem;margin-bottom:12px;color:var(--text-main)}.modal-content p{color:var(--text-muted);font-size:.95rem;margin-bottom:16px;line-height:1.5}.modal-content strong{color:var(--text-main)}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{flex:1}body.light-theme .modal-overlay{background:#f8fafccc}
