@import "https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500&family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap";:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-sidebar:#f1f5f9d9;--bg-glass:#ffffffb3;--border-glass:#0f172a14;--shadow-glass:0 8px 32px 0 #94a3b826;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-primary:#6d28d9;--accent-secondary:#0891b2;--accent-hover:#7c3aed;--accent-rgb:109, 40, 217;--code-bg:#f1f5f9;--code-text:#0f172a;--danger:#ef4444;--success:#10b981;--warning:#f59e0b;--info:#3b82f6}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--border-glass) transparent;margin:0;padding:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--border-glass);border-radius:20px}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .3s,color .3s;overflow:hidden}#root{width:100vw;height:100vh;display:flex}.app-container{width:100%;height:100%;display:flex}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:var(--shadow-glass);border-radius:12px}.glass-card{background:rgba(var(--accent-rgb), .03);border:1px solid var(--border-glass);border-radius:10px;padding:1.25rem;transition:transform .2s,border-color .2s,box-shadow .2s}.glass-card:hover{border-color:rgba(var(--accent-rgb), .3);box-shadow:var(--shadow-glass);transform:translateY(-2px)}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-glass);-webkit-backdrop-filter:blur(20px);z-index:10;flex-direction:column;flex-shrink:0;width:320px;height:100%;transition:width .3s,transform .3s;display:flex}.sidebar-header{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.sidebar-logo{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:.5rem;font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:700;display:flex}.search-box{padding:1rem 1.5rem;position:relative}.search-input{background:var(--bg-glass);border:1px solid var(--border-glass);width:100%;color:var(--text-primary);border-radius:8px;outline:none;padding:.6rem 1rem .6rem 2.2rem;font-size:.9rem;transition:border-color .2s}.search-input:focus{border-color:var(--accent-primary)}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:2rem;transform:translateY(-50%)}.sidebar-content{flex-direction:column;flex:1;gap:1.5rem;padding:0 1rem 1.5rem;display:flex;overflow-y:auto}.sidebar-section-title{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:.75rem;padding-left:.5rem;font-size:.75rem;font-weight:600}.nav-menu{flex-direction:column;gap:.25rem;display:flex}.nav-item{color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:.75rem;padding:.6rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:flex}.nav-item:hover,.nav-item.active{background:rgba(var(--accent-rgb), .1);color:var(--text-primary)}.nav-item.active{border-left:3px solid var(--accent-primary);padding-left:calc(.75rem - 3px)}.folder-tree{flex-direction:column;gap:2px;display:flex}.tree-node{cursor:pointer;color:var(--text-secondary);-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.88rem;transition:background .15s,color .15s;display:flex}.tree-node:hover{color:var(--text-primary);background:#ffffff08}.tree-node.file-node.active{background:rgba(var(--accent-rgb), .08);color:var(--accent-hover);font-weight:500}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden}.main-header{border-bottom:1px solid var(--border-glass);-webkit-backdrop-filter:blur(10px);background:rgba(var(--bg-primary), .2);justify-content:space-between;align-items:center;height:64px;padding:0 2rem;display:flex}.header-actions{align-items:center;gap:1rem;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.88rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-glass);border-color:var(--border-glass);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff14}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.1)}.icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.4rem;transition:background .2s,color .2s;display:flex}.icon-btn:hover{background:var(--border-glass);color:var(--text-primary)}.scroll-frame{flex:1;padding:2rem;overflow-y:auto}.container-narrow{flex-direction:column;gap:2rem;max-width:800px;margin:0 auto;display:flex}.dashboard-title{background:linear-gradient(135deg, var(--text-primary), var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-family:Outfit,sans-serif;font-size:2.2rem;font-weight:700}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;margin-top:1rem;display:grid}.stat-num{color:var(--accent-secondary);font-family:Outfit,sans-serif;font-size:2rem;font-weight:700}.stat-label{color:var(--text-muted);margin-top:.25rem;font-size:.85rem}.tag-cloud{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tag-pill{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--text-secondary);cursor:pointer;border-radius:20px;padding:.3rem .75rem;font-size:.8rem;transition:all .2s}.tag-pill:hover,.tag-pill.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.recent-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.recent-item{border:1px solid var(--border-glass);color:inherit;cursor:pointer;background:#ffffff05;border-radius:8px;justify-content:space-between;align-items:center;padding:.88rem 1rem;text-decoration:none;transition:all .15s;display:flex}.recent-item:hover{background:rgba(var(--accent-rgb), .05);border-color:rgba(var(--accent-rgb), .25)}.recent-title{color:var(--text-primary);font-weight:500}.recent-date{color:var(--text-muted);font-size:.8rem}.note-container{align-items:flex-start;gap:2rem;max-width:1200px;margin:0 auto;display:flex}.note-article{flex-direction:column;flex:1;gap:1.5rem;min-width:0;display:flex}.note-header{border-bottom:1px solid var(--border-glass);padding-bottom:1.5rem}.note-title{color:var(--text-primary);margin-bottom:.75rem;font-family:Outfit,sans-serif;font-size:2.4rem;font-weight:700}.note-meta{color:var(--text-muted);flex-wrap:wrap;gap:1rem;font-size:.85rem;display:flex}.note-meta-item{align-items:center;gap:.35rem;display:flex}.markdown-preview{color:var(--text-primary);font-size:1.05rem;line-height:1.625}.markdown-preview p{margin-bottom:1.25rem}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4{color:var(--text-primary);margin-top:2rem;margin-bottom:.88rem;font-family:Outfit,sans-serif;font-weight:600;line-height:1.3}.markdown-preview h1{border-bottom:1px solid var(--border-glass);padding-bottom:.4rem;font-size:1.85rem}.markdown-preview h2{font-size:1.5rem}.markdown-preview h3{font-size:1.25rem}.markdown-preview h4{font-size:1.1rem}.markdown-preview a{color:var(--accent-secondary);text-decoration:none;transition:border-bottom .15s}.markdown-preview a:hover{border-bottom:1px solid var(--accent-secondary)}.markdown-preview ul,.markdown-preview ol{margin-bottom:1.25rem;padding-left:1.5rem}.markdown-preview li{margin-bottom:.35rem}.markdown-preview code{background:var(--code-bg);color:var(--code-text);border-radius:4px;padding:.15rem .35rem;font-family:Fira Code,monospace;font-size:.9em}.markdown-preview pre{background:var(--code-bg);border:1px solid var(--border-glass);border-radius:8px;margin-bottom:1.25rem;padding:1rem;overflow-x:auto}.markdown-preview pre code{color:var(--code-text);background:0 0;padding:0;font-size:.92rem}.markdown-preview blockquote{border-left:4px solid var(--accent-primary);color:var(--text-secondary);background:#ffffff03;margin-bottom:1.25rem;padding-top:.25rem;padding-bottom:.25rem;padding-left:1rem;font-style:italic}.markdown-preview img{border-radius:6px;margin:1.25rem 0;box-shadow:0 4px 12px #00000026}.wikilink{border-bottom:1px dashed rgba(var(--accent-rgb), .4);cursor:pointer;font-weight:500;color:var(--accent-primary)!important}.wikilink:hover{border-bottom-style:solid}.broken-link{border-bottom:1px dotted var(--danger);cursor:help;color:var(--danger)!important}.inline-tag{background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .15);color:var(--accent-hover);border-radius:4px;margin:0 .15rem;padding:.1rem .45rem;font-size:.85em;display:inline-block}.callout{border:1px solid var(--border-glass);border-left:4px solid var(--accent-primary);background:#ffffff04;border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.callout-header{-webkit-user-select:none;user-select:none;background:#ffffff05;align-items:center;gap:.6rem;padding:.6rem 1rem;font-size:.95rem;font-weight:600;display:flex}.callout-body{padding:.88rem 1.2rem;font-size:.98rem}.callout-body>:last-child{margin-bottom:0}.callout-note,.callout-info,.callout-todo{border-left-color:var(--info);background:#3b82f60d}.callout-note .callout-header,.callout-info .callout-header,.callout-todo .callout-header{color:#60a5fa}.callout-tip,.callout-hint,.callout-important{border-left-color:var(--success);background:#10b9810d}.callout-tip .callout-header,.callout-hint .callout-header,.callout-important .callout-header{color:#34d399}.callout-warning,.callout-caution,.callout-attention{border-left-color:var(--warning);background:#f59e0b0d}.callout-warning .callout-header,.callout-caution .callout-header,.callout-attention .callout-header{color:#fbbf24}.callout-danger,.callout-error,.callout-bug{border-left-color:var(--danger);background:#ef44440d}.callout-danger .callout-header,.callout-error .callout-header,.callout-bug .callout-header{color:#f87171}.callout-example{background:#8b5cf60d;border-left-color:#a78bfa}.callout-example .callout-header{color:#c084fc}.callout-icon:before{content:"💡";display:inline-block}.callout-note .callout-icon:before,.callout-info .callout-icon:before{content:"ℹ️"}.callout-todo .callout-icon:before{content:"☑️"}.callout-warning .callout-icon:before,.callout-caution .callout-icon:before{content:"⚠️"}.callout-danger .callout-icon:before,.callout-error .callout-icon:before,.callout-bug .callout-icon:before{content:"🚫"}.callout-example .callout-icon:before{content:"🧪"}.callout-tip .callout-icon:before{content:"✨"}.markdown-preview li.task-list-item{list-style-type:none;position:relative;left:-.25rem}.markdown-preview input[type=checkbox]{accent-color:var(--accent-primary);vertical-align:middle;width:14px;height:14px;margin-right:.5rem}.note-sidebar{flex-direction:column;flex-shrink:0;gap:1.5rem;width:280px;display:flex;position:sticky;top:0}.sidebar-widget{padding:1.25rem}.widget-title{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;font-weight:600;display:flex}.backlink-list{flex-direction:column;gap:.5rem;display:flex}.backlink-item{color:var(--text-secondary);border:1px solid var(--border-glass);white-space:nowrap;text-overflow:ellipsis;background:#ffffff03;border-radius:4px;padding:.4rem .5rem;font-size:.88rem;text-decoration:none;transition:all .15s;overflow:hidden}.backlink-item:hover{background:rgba(var(--accent-rgb), .05);border-color:rgba(var(--accent-rgb), .2);color:var(--text-primary)}.local-graph-box{border:1px solid var(--border-glass);border-radius:8px;height:200px;position:relative;overflow:hidden}.math-error{color:var(--danger);border:1px dashed var(--danger);border-radius:4px;padding:.5rem}.editor-layout{flex-direction:column;gap:1rem;height:calc(100vh - 64px - 4rem);display:flex}.editor-inputs{gap:1rem;display:flex}.editor-field{flex-direction:column;flex:1;gap:.35rem;display:flex}.editor-field label{color:var(--text-muted);font-size:.8rem;font-weight:500}.input-text{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:6px;outline:none;padding:.6rem .88rem;font-size:.9rem}.input-text:focus{border-color:var(--accent-primary)}.editor-workspace{flex:1;gap:1.5rem;min-height:0;display:flex}.editor-textarea-wrapper,.editor-preview-wrapper{flex-direction:column;flex:1;min-height:0;display:flex}.textarea-editor{resize:none;background:var(--bg-glass);border:1px solid var(--border-glass);width:100%;color:var(--text-primary);scrollbar-width:thin;border-radius:8px;outline:none;flex:1;padding:1.25rem;font-family:Fira Code,monospace;font-size:.95rem;line-height:1.5}.textarea-editor:focus{border-color:var(--accent-primary)}.editor-preview-wrapper .markdown-preview{border:1px solid var(--border-glass);background:#ffffff01;border-radius:8px;flex:1;padding:1.25rem;overflow-y:auto}.editor-footer{justify-content:space-between;align-items:center;padding-top:.5rem;display:flex}.pwd-box{align-items:center;gap:.5rem;display:flex}.upload-container{flex-direction:column;gap:1.5rem;max-width:600px;margin:0 auto;display:flex}.drop-zone{border:2px dashed var(--border-glass);text-align:center;cursor:pointer;background:#ffffff01;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;transition:all .3s;display:flex}.drop-zone.dragover{border-color:var(--accent-primary);background:rgba(var(--accent-rgb), .05);transform:scale(1.01)}.drop-icon{color:var(--text-muted);animation:2s infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.log-console{border:1px solid var(--border-glass);color:#10b981;white-space:pre-wrap;background:#000;border-radius:8px;height:200px;padding:1rem;font-family:Fira Code,monospace;font-size:.8rem;overflow-y:auto}.graph-container{background:radial-gradient(circle at center, var(--bg-secondary) 0%, var(--bg-primary) 100%);width:100%;height:100%;position:relative;overflow:hidden}.graph-canvas{width:100%;height:100%;display:block}.graph-controls{flex-direction:column;gap:.5rem;display:flex;position:absolute;bottom:2rem;right:2rem}.graph-tooltip{background:var(--bg-secondary);border:1px solid var(--border-glass);color:var(--text-primary);pointer-events:none;z-index:100;border-radius:4px;padding:.5rem .75rem;font-size:.82rem;font-weight:500;position:absolute;box-shadow:0 4px 12px #0003}.graph-instructions{color:var(--text-secondary);pointer-events:none;padding:.75rem 1rem;font-size:.8rem;position:absolute;top:1.5rem;left:1.5rem}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:50;background:#0006;width:100vw;height:100vh;position:fixed;top:0;left:0}.sidebar-toggle{display:none}@media (width<=768px){.sidebar{height:100%;position:fixed;top:0;left:-320px;transform:translate(0,0);box-shadow:10px 0 30px #0000004d;-webkit-backdrop-filter:none!important;z-index:100!important;background:#f1f5f9!important}.sidebar.open{left:0}.sidebar-toggle{display:flex}.note-container{flex-direction:column;width:100%}.note-article{width:100%;max-width:100%}.note-sidebar{width:100%;position:static}.note-title{word-break:break-word;overflow-wrap:break-word;font-size:1.6rem!important}.scroll-frame{padding:1rem;overflow-x:hidden}.main-header{padding:0 1rem}.dashboard-title{font-size:1.8rem!important}.markdown-preview{width:100%;max-width:100%;font-size:.98rem}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4{word-break:break-word;overflow-wrap:break-word}.markdown-preview h1{font-size:1.45rem!important}.markdown-preview h2{font-size:1.25rem!important}.markdown-preview h3{font-size:1.15rem!important}.markdown-preview h4{font-size:1.05rem!important}.markdown-preview img{max-width:100%;height:auto}.markdown-preview pre{max-width:100%;padding:.75rem}.callout{width:100%;max-width:100%}.editor-inputs{flex-direction:column;gap:.75rem}.editor-inputs .editor-field{width:100%;flex:none!important}.editor-layout .glass-panel button:nth-child(2){display:none}}
