:root{font-family:Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#212529;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh;font-family:Roboto,sans-serif}#root{width:100%;height:100vh;margin:0;padding:0}.editor-container{width:100vw;height:100vh;display:flex;background:#fff;font-family:Roboto,sans-serif}.mobile-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:none}.mobile-menu-button{display:none;width:40px;height:40px;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-right:8px}.mobile-menu-button:hover{background:#f3f4f6;color:#374151}@media(max-width:768px){.mobile-overlay{display:block}.mobile-menu-button{display:flex}.file-sidebar{position:fixed;top:0;left:0;height:100vh;z-index:1001;transform:translate(-100%);transition:transform .3s ease;box-shadow:4px 0 20px #00000026}.file-sidebar.mobile-open{transform:translate(0)}.main-editor-area{width:100%}.editor-toolbar{padding:8px 16px}.toolbar-group{gap:1px}.editor-toolbar button{padding:4px 8px;min-width:28px;height:28px;font-size:13px}.editor-content{padding:32px 16px}}@media(max-width:480px){.file-sidebar{width:260px}.file-sidebar-header{padding:16px 12px}.file-sidebar-header h3{font-size:14px}.file-item{padding:8px 12px;margin:0 2px}.file-name{font-size:13px}.editor-toolbar{padding:6px 12px;flex-wrap:wrap;gap:4px}.toolbar-group{order:2;justify-content:center;margin-top:4px}.current-file-info{order:1;flex:1;min-width:0}.toolbar-spacer{display:none}.editor-content{padding:24px 12px;font-size:14px}.editor-content .ProseMirror{font-size:14px;line-height:1.6}}.file-sidebar{width:280px;background:linear-gradient(145deg,#fff,#f8f9fa);border-right:1px solid #e2e8f0;display:flex;flex-direction:column;flex-shrink:0;box-shadow:2px 0 10px #0000000d}.file-sidebar-header{padding:20px 16px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(145deg,#f8fafc,#f1f5f9)}.file-sidebar-header h3{margin:0;font-size:16px;font-weight:600;color:#1e293b;letter-spacing:-.025em}.new-file-button{width:32px;height:32px;border:none;background:linear-gradient(145deg,#10b981,#059669);color:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s ease;box-shadow:0 2px 4px #10b98133}.new-file-button:hover{background:linear-gradient(145deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.new-file-button:active{transform:translateY(0)}.file-list{flex:1;overflow-y:auto;padding:8px 0;scrollbar-width:thin;scrollbar-color:#cbd5e1 #f8fafc}.file-list::-webkit-scrollbar{width:6px}.file-list::-webkit-scrollbar-track{background:#f8fafc}.file-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.file-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.file-item{display:flex;align-items:center;padding:10px 16px;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:all .2s ease;gap:8px;margin:0 4px;border-radius:8px}.file-item:hover{background:linear-gradient(145deg,#f8fafc,#f1f5f9);transform:translate(2px);box-shadow:0 2px 4px #0000000d}.file-item.active{background:linear-gradient(145deg,#dbeafe,#bfdbfe);border-left:4px solid #3b82f6;transform:translate(2px);box-shadow:0 4px 8px #3b82f626;border-bottom-color:#dbeafe}.file-icon-wrapper{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px}.file-icon{color:#6c757d;opacity:.8;transition:opacity .2s ease}.file-item:hover .file-icon{opacity:1}.file-name{flex:1;font-size:14px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;transition:color .2s ease}.file-item:hover .file-name{color:#1f2937}.file-item.active .file-name{color:#1e40af;font-weight:600}.file-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.file-item:hover .file-actions,.file-item.active .file-actions{opacity:1}.file-action-button{width:24px;height:24px;border:none;background:transparent;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}.file-action-button:hover{background:#e2e8f0;transform:scale(1.1)}.file-action-button.delete:hover{background:#fee2e2;color:#dc2626;transform:scale(1.1)}.file-rename-input{flex:1;border:2px solid #3b82f6;border-radius:6px;padding:6px 10px;font-size:14px;outline:none;font-weight:500;color:#1f2937;background:#fff;transition:border-color .2s ease}.file-rename-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #3b82f61a}.file-rename-input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.rename-container{flex:1;display:flex;align-items:center;gap:8px}.rename-error{font-size:12px;color:#dc2626;background:#fef2f2;padding:2px 6px;border-radius:3px;border:1px solid #fecaca}.main-editor-area{flex:1;display:flex;flex-direction:column}.editor-toolbar{display:flex;align-items:center;gap:4px;padding:12px 24px;background:#f8f9fa;border-bottom:1px solid #e9ecef;flex-shrink:0;box-shadow:0 1px 3px #0000000d}.current-file-info{display:flex;align-items:center;position:relative}.current-file-name{font-size:14px;font-weight:500;color:#495057;padding:4px 8px;background:#fff;border-radius:4px;border:1px solid #dee2e6}.save-status-absolute{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;opacity:0;pointer-events:none;transition:opacity .3s ease;white-space:nowrap;min-width:max-content}.save-status-absolute.visible{opacity:1;pointer-events:auto}.save-status{font-size:12px;font-weight:500;color:#10b981;padding:2px 8px;background:#f0fdf4;border-radius:4px;border:1px solid #dcfce7;animation:fadeInOut 3s ease-in-out;white-space:nowrap;display:inline-block}.toolbar-group{display:flex;align-items:center;gap:2px}.toolbar-divider{width:1px;height:24px;background:#dee2e6;margin:0 8px}.toolbar-spacer{flex:1}.editor-toolbar button{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-family:Roboto,sans-serif;font-size:14px;font-weight:500;color:#495057;transition:all .2s ease;min-width:32px;height:32px}.editor-toolbar button:hover{background:#e9ecef;color:#212529}.editor-toolbar button.is-active{background:#0d6efd;color:#fff}.editor-toolbar button.is-active:hover{background:#0b5ed7}.save-button{background:#10b981!important;color:#fff!important;font-weight:500}.save-button:hover{background:#059669!important}.editor-content{flex:1;overflow-y:auto;padding:48px;background:#fff}.editor-content .ProseMirror{outline:none;width:100%;font-family:JetBrains Mono,monospace;font-weight:600;font-size:16px;line-height:1.75;color:#212529}.editor-content .ProseMirror p{margin:0 0 1em}.editor-content .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#adb5bd;pointer-events:none;height:0}.editor-content .ProseMirror h1{font-size:2.5em;font-weight:700;line-height:1.2;margin:1.5em 0 .5em;color:#212529}.editor-content .ProseMirror h2{font-size:2em;font-weight:600;line-height:1.3;margin:1.3em 0 .5em;color:#212529}.editor-content .ProseMirror h3{font-size:1.5em;font-weight:600;line-height:1.4;margin:1.2em 0 .5em;color:#212529}.editor-content .ProseMirror ul,.editor-content .ProseMirror ol{margin:1em 0;padding-left:2em}.editor-content .ProseMirror li{margin:.5em 0}.editor-content .ProseMirror blockquote{border-left:4px solid #0d6efd;padding-left:1.5em;margin:1.5em 0;color:#6c757d;font-style:italic}.editor-content .ProseMirror code{background:#f1f3f5;padding:2px 6px;border-radius:4px;font-family:Roboto Mono,monospace;font-size:.9em;color:#e83e8c}.editor-content .ProseMirror pre{background:#1e1e1e;color:#d4d4d4;padding:1.5em;border-radius:8px;overflow-x:auto;margin:1.5em 0;font-family:Roboto Mono,monospace;font-size:.9em;line-height:1.6}.editor-content .ProseMirror pre code{background:transparent;padding:0;color:inherit;font-size:inherit}.editor-content .ProseMirror strong{font-weight:700;color:#212529}.editor-content .ProseMirror em{font-style:italic}.editor-content .ProseMirror s{text-decoration:line-through}.editor-content .ProseMirror hr{border:none;border-top:2px solid #e9ecef;margin:2em 0}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-10px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.editor-content::-webkit-scrollbar{width:10px}.editor-content::-webkit-scrollbar-track{background:#f1f1f1}.editor-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:5px}.editor-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}
