body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;width:100%}.app-wrapper{background-color:#fff;display:flex;flex-direction:column;height:100vh;width:100%}.app-header{background:#fff;border-bottom:1px solid #e9ecef;box-shadow:0 2px 4px #0000001a;color:#2c3e50;flex-shrink:0;font-size:18px;font-weight:600;height:60px;justify-content:space-between;padding:12px 20px}.app-header,.header-left,.header-right,.logo-title{align-items:center;display:flex}.logo-title{gap:10px}.app-logo{height:32px;width:auto}.account-btn{background:#46b1e1;padding:8px 16px}.account-btn:hover{background:#2980b9}.main-container{display:flex;flex:1 1;overflow:hidden;position:relative}.sidebar{background:#f8f9fa;border-right:1px solid #e9ecef;bottom:0;display:flex;flex-direction:column;left:0;position:absolute;top:0;transition:width .2s ease;width:280px;z-index:10}button:disabled{opacity:1;pointer-events:none}.home-button:disabled{background:#92d1ed;border:none;color:#fff;cursor:not-allowed}.sidebar.collapsed{width:50px!important}.logo-container{display:flex;justify-content:center;margin-bottom:15px}.sidebar-title{align-items:center;display:flex;justify-content:space-between;width:100%}.sidebar-controls{margin-left:auto}.sidebar-title button{align-items:center;background:#46b1e1;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center}.sidebar-title button:hover{background:#2980b9}.sidebar-title button.add-btn{background:#46b1e1;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:28px;justify-content:center;transition:background .2s ease,transform .1s ease;width:28px}.sidebar-title button.add-btn:hover{background:#2f94c4;transform:scale(1.05)}.sidebar-title button.add-btn:active{transform:scale(.95)}.collapse-btn{align-items:center;background:#46b1e1;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;width:28px}.collapse-btn:hover{background:#2f94c4!important}.diagram-list{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:8px 0}.diagram-item{align-items:center;border-bottom:1px solid #f1f2f6;color:#34495e;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:10px 16px;position:relative}.diagram-item .delete-btn{background:#0000;border:none;color:#888;cursor:pointer;font-size:14px;margin-left:8px;opacity:.6;z-index:2}.diagram-item:hover .delete-btn{opacity:1}.diagram-item .delete-btn:hover{color:#c00}.diagram-item:hover{background:#e8f4fc}.diagram-item.active{background:#d6eaf8;color:#2c3e50;font-weight:500}.diagram-item.dragging{background:#d6eaf8;box-shadow:0 4px 8px #0000001a}.diagram-item input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:4px 8px;width:100%}.diagram-item .diagram-name{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.sidebar.collapsed .diagram-name{max-width:40px}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:280px;overflow:hidden;transition:margin-left .2s ease}.sidebar.collapsed .collapse-btn{margin:0 auto}.sidebar.collapsed~.main-content{margin-left:50px!important}.sidebar.collapsed~.divider{left:50px!important}.main-content-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:12px 20px}.breadcrumb-container{align-items:center;display:flex;font-size:14px;gap:4px}.breadcrumb-item{background:none;border:none;color:#46b1e1;cursor:pointer;font-size:14px;padding:2px 6px}.breadcrumb-item.active{color:#2c3e50;cursor:default;font-size:14px;font-weight:600}.breadcrumb-separator{color:#ccc;margin:0 8px}.editor-diagram-container{display:flex;height:100%}.diagram-panel,.editor-panel{background:#fff;height:100%;overflow:auto;position:relative}.editor-panel{display:flex;flex:0 0 auto;flex-direction:column}.editor-header{align-items:center;display:flex;justify-content:space-between;width:100%}.editor-left-controls{align-items:center;display:flex;gap:10px}.diagram-pane{align-items:flex-start;display:flex;flex:1 1;justify-content:stretch;overflow:auto}.diagram-pane>*{flex:1 1}.view-toggle{background:#0000;border:1px solid #ddd;border-radius:4px;cursor:pointer;margin-right:8px;padding:4px 12px}.view-toggle.active{background:#46b1e1;border-color:#46b1e1;color:#fff}.view-toggle:hover{background:#e8f4fc}.view-toggle.active:hover{background:#2980b9}.json-view{background:#f8f9fa;font-family:Fira Code,Consolas,monospace;font-size:13px;height:calc(100% - 50px);line-height:1.5;overflow:auto;padding:16px}.json-view pre{margin:0}.app-footer{align-items:center;background:#f8f9fa;border-top:1px solid #e9ecef;color:#6c757d;display:flex;flex-shrink:0;font-size:14px;height:40px;justify-content:space-between;padding:10px 16px}.footer-right a{color:#6c757d;margin-left:8px;text-decoration:none}.footer-right a:hover{text-decoration:underline}.editor-lines{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:12px}.editor-line{align-items:center;border-radius:4px;display:flex;margin-bottom:6px;padding:6px 8px}.editor-line:hover{background:#f8f9fa}.editor-line.selected{background-color:#e1f0fa}.editor-line.dragging{background-color:#e8f4fc;opacity:.5}.editor-line[draggable=true]{cursor:grab}.editor-line[draggable=true]:active{cursor:grabbing}.bullet{color:#7f8c8d;font-weight:700;margin-right:10px;min-width:16px;text-align:center}.editor-input{background:#0000;border:none;border-bottom:1px solid #e0e0e0;flex:1 1;font-size:14px;outline:none;padding:6px 4px}.editor-input:focus{border-bottom-color:#46b1e1}.editor-toolbar,.panel-header,.sidebar-header{justify-content:space-between}.editor-toolbar,.panel-header,.sidebar-header,.themes-toolbar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;box-sizing:border-box;display:flex;height:40px;min-height:40px;padding:8px 16px}.editor-toolbar button{background:#46b1e1;border:none;border-radius:4px;box-shadow:0 1px 2px #0000001a;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.editor-toolbar button:hover{background:#3498db}.editor-toolbar span{color:#46b1e1;font-size:14px}.switch{height:22px;width:42px}#save-btn{margin-left:auto}.divider,.splitter{background:#e9ecef;bottom:0;cursor:col-resize;position:absolute;top:0}.divider{left:280px;transition:left .2s ease;width:2px;z-index:15}.divider:hover{background:#3498db}.splitter{background:#e9ecef;cursor:col-resize;position:relative;width:2px;z-index:20}.splitter:hover{background:#2980b9}.sidebar.collapsed .collapse-btn,.sidebar.collapsed .sidebar-title .collapse-btn,.sidebar.collapsed button.collapse-btn{align-items:center!important;box-sizing:border-box!important;display:inline-flex!important;font-size:16px!important;justify-content:center!important;margin:.25rem auto!important;min-width:24px!important}.json-switch{align-items:center;display:flex;gap:6px;margin-right:auto}.switch{cursor:pointer;display:inline-block;height:24px;position:relative;width:44px}.switch input{height:0;opacity:0;position:absolute;width:0}.slider{background:#d1d5db;border-radius:999px;box-shadow:inset 0 0 0 1px #00000005;inset:0;position:absolute;transition:background .18s ease}.slider:before{background:#fff;border-radius:50%;box-shadow:0 1px 2px #10182814;content:"";height:18px;left:3px;position:absolute;top:3px;transition:transform .18s ease;width:18px}.switch input:checked+.slider{background:#46b1e1}.switch input:checked+.slider:before{transform:translateX(20px)}.switch input:focus+.slider{box-shadow:0 0 0 4px #4f46e51f;outline:none}.json-label{color:#111827;font-size:13px;letter-spacing:.01em;line-height:1}.action-controls{display:flex;gap:.5rem;margin-left:auto}.toolbar button{background:#fff;border:1px solid #ddd;border-radius:6px;padding:6px 10px;transition:background .2s}.toolbar button:hover{background:#f0f4ff}.sidebar-title button.new-btn{background:#46b1e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;margin-left:8px;padding:4px 10px;transition:background .2s ease,transform .1s ease}.sidebar-title button.new-btn:hover{background:#2f94c4}.sidebar-title button.new-btn:active{transform:scale(.96)}.diagram-json-editor{background:#fdfdfd;border:1px solid #ccc;border-radius:6px;font-family:monospace;font-size:13px;height:400px;line-height:1.4;outline:none;padding:10px;resize:vertical;transition:border .2s ease,box-shadow .2s ease;white-space:pre;width:100%}.diagram-json-editor:focus{border-color:#46b1e1;box-shadow:0 0 0 2px #46b1e14d}.account-menu{display:inline-block;position:relative}.account-trigger{background:#f5f5f5;border:1px solid #ccc;border-radius:6px;cursor:pointer;font-size:14px;padding:6px 10px}.account-trigger .arrow{font-size:10px;margin-left:6px}.account-dropdown{background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 6px #00000026;margin-top:4px;min-width:170px;padding:8px;position:absolute;right:0;z-index:1000}.account-name{color:#333;font-size:13px;margin:0 0 8px}.account-btn{align-items:center;background-color:#46b1e1;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;gap:6px;padding:6px 12px;transition:background-color .2s,opacity .2s}.account-btn:hover:not(:disabled){background-color:#2f94c4}.account-btn:disabled{background-color:silver;color:#f0f0f0;cursor:not-allowed;opacity:.7}.header-left .account-btn{margin-left:140px}@media (max-width:768px){.diagram-panel{display:none}}.fab-toggle{display:none}@media (max-width:768px){.fab-toggle{background:#fff;border:2px solid #e0e0e0;border-radius:999px;bottom:48px;box-shadow:0 6px 16px #00000040;display:flex;left:50%;padding:4px;position:fixed;transform:translateX(-50%);z-index:1000}.fab-toggle .toggle-btn{border:none;border-radius:999px;color:#333;cursor:pointer;font-size:14px;font-weight:600;margin:0 2px;padding:10px 18px;transition:all .2s ease}.fab-toggle .toggle-btn,.fab-toggle .toggle-btn:focus{background:#fff;outline:none}.fab-toggle .toggle-btn.active{background:#46b1e1;border-radius:999px;box-shadow:0 2px 8px #0003;color:#fff}.fab-toggle .toggle-btn:hover:not(.active){background:#e6f5fb}}.mobile-panel{height:100%;overflow:hidden}.mobile-content,.mobile-panel,.mobile-view{display:flex;flex:1 1;flex-direction:column;min-height:0}.mobile-view{overflow:auto}.mobile-view .diagram-root,.mobile-view canvas,.mobile-view svg{display:block;height:100%;width:100%}.editor-header .collapse-btn,.sidebar .collapse-btn{align-items:center;background:#46b1e1;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;width:28px}.editor-header .collapse-btn:hover,.sidebar .collapse-btn:hover{background:#2f94c4}.sidebar.collapsed .sidebar-title{justify-content:center}.sidebar.collapsed .sidebar-controls{margin-left:0}.key{background:#f4f4f4;border:1px solid #ccc;border-radius:3px;box-shadow:inset 0 -1px 0 #ccc;display:inline-block;font-family:monospace;font-size:12px;margin:0 2px;padding:2px 6px}.editor-container{height:100%;margin:10px;position:relative}.editor-shortcuts{color:#555;font-size:13px;line-height:2;margin-top:16px;padding:12px}.editor-hint,.editor-shortcuts-list{color:#555;font-family:monospace,ui-monospace,SFMono-Regular,Menlo,Monaco,Courier New;font-size:14px;white-space:pre}.editor-shortcuts kbd{border:1px solid #ccc;border-radius:4px;font-family:monospace;font-size:12px;margin:0 2px;padding:2px 6px}@media (max-width:768px){.mobile-panel .editor-panel{display:flex;flex:1 1;flex-direction:column;margin-left:30px!important;width:100%!important}.mobile-content .editor-panel{margin:0}.mobile-panel .editor-container{box-sizing:border-box;margin:0;max-width:100%;overflow-x:hidden;padding:15px;width:100%}.editor-shortcuts{margin-left:20px}.panel-header{align-items:flex-start;justify-content:flex-start}}.react-colorful{border-radius:8px;box-shadow:0 2px 6px #00000026;height:140px;width:180px}.react-colorful__saturation{border-radius:8px 8px 0 0}.react-colorful__hue{border-radius:0 0 8px 8px}
/*# sourceMappingURL=main.42d3f11a.css.map*/