.save-state-indicator{display:none}.save-state-indicator.saving,.save-state-indicator.saved{display:block}.save-state-indicator.error{color:var(--destructive);display:block}@media (max-width:640px){.save-state-indicator,.save-state-indicator.saving,.save-state-indicator.saved,.save-state-indicator.error{display:none}}
.dynamic-tips{color:var(--muted-foreground);white-space:nowrap;padding:4px 12px;font-size:13px;transition:all .32s cubic-bezier(.175,.885,.32,1.275);position:absolute;left:50%;overflow:hidden;transform:translate(-50%,60px)}.dynamic-tips .prefix{white-space:nowrap}.dynamic-tips .text{color:#0000;background:linear-gradient(90deg, var(--muted-foreground) 45%, var(--brand), var(--muted-foreground) 65%);text-overflow:ellipsis;white-space:nowrap;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:2s linear infinite textScroll;overflow:hidden}.dynamic-tips.show{transform:translate(-50%)}@keyframes textScroll{0%{background-position:100%}to{background-position:0}}@media screen and (max-width:480px){.dynamic-tips{display:none}}
.mindmap-box{background-color:var(--secondary);width:100%;height:100%;display:flex;position:relative;overflow:hidden}.mindmap-box .svg-wrapper{flex:1}.mindmap-box .note-panel{flex-shrink:0}.mindmap-box.hidden{animation:.3s forwards mindmaphide}@keyframes mindmaphide{0%{opacity:1}to{opacity:0;transform:translateY(12px)}}.overlay{cursor:initial}svg text{white-space:pre}#svg-wrapper{width:100%;height:100%;position:relative}.asst-svg{width:0;height:0;position:absolute}.svg{width:100%;height:100%;display:block}.svg foreignObject.html-container{cursor:pointer;background:0 0;border:none}.svg .imagebox{background-position:50%;background-repeat:no-repeat;margin:0 auto}.svg .imagebox:hover{background-color:color-mix(in oklch, var(--info) 15%, transparent)}.svg .imagebox:hover .handle{opacity:1}.svg .imagebox .handle{background:var(--info);float:right;border:var(--card) solid 2px;width:16px;height:16px;box-shadow:0 0 3px color-mix(in oklch, var(--foreground) 30%, transparent);opacity:0;border-radius:100%;margin-top:-16px;margin-right:-6px}.svg .imagebox .handle:hover{background:var(--info);cursor:nwse-resize}.svg .textbox .text{white-space:pre-wrap;border:1px solid #0000}.svg .textbox .note-icon:hover{opacity:.5}.svg .trigger{fill:#0000}.svg.dragging .add-btn{visibility:hidden}.svg .add-btn{opacity:0;transition:opacity .24s}.svg .add-btn:hover{cursor:pointer}.svg .add-btn:hover rect{stroke:var(--info)}.svg .add-btn:hover path{fill:var(--info)}.svg .add-btn.hidden{visibility:hidden}.svg .add-btn rect{stroke-width:2px;stroke:var(--info-foreground);fill:var(--secondary)}.svg .add-btn path{fill:var(--info-foreground)}.svg .expand-btn{visibility:hidden}.svg .expand-btn:hover{cursor:pointer}.svg .expand-btn:hover rect{fill:#fff}.svg .expand-btn:hover circle{fill:currentColor}.svg .text>rect.hover-cell{cursor:pointer;opacity:.3;stroke:color-mix(in oklch, var(--info) 56%, transparent);stroke-width:3px;transition:all .3s}.svg g.root>.content .textbox{font-weight:700}.svg .selected>.content>.text>rect{fill:color-mix(in oklch, var(--info) 56%, transparent);stroke:color-mix(in oklch, var(--info) 56%, transparent);transition:all .3s;visibility:visible!important}.svg .root.selected>.content>.text>rect{stroke-width:3px;stroke:color-mix(in oklch, var(--info) 56%, transparent)}.svg .typing.content .textbox .text{opacity:0!important}.svg .root>.content>.text>rect{opacity:1;fill:#fff;filter:drop-shadow(0 5px 20px color-mix(in oklch, var(--foreground) 10%, transparent))}.svg .fold>.content>.expand-btn{visibility:visible}.svg .outlined>.content>.text>rect{opacity:.75;fill:var(--success);stroke:var(--success);stroke-width:10px;transition:all .3s}.context-menu-container{position:absolute;inset:0}.context-menu-container>div:first-child{width:100%;height:100%}#menu{background-color:var(--card);color:var(--foreground);white-space:nowrap;border-color:var(--border);border-radius:6px;padding:4px;font-size:13px;position:absolute}#menu ul{border-radius:inherit;margin:0;padding:0;list-style-type:none}#menu ul:not(:last-child):after{content:"";background-color:var(--border);height:1px;margin:4px 0;display:block}#menu ul li{cursor:pointer;border-radius:4px;padding:3px 8px;position:relative}#menu ul li:before{border-radius:inherit;content:"";opacity:0;pointer-events:none;background-color:#000;position:absolute;inset:0}#menu ul li:not(.disabled):hover:before{opacity:.09}#menu ul li.disabled{color:var(--muted-foreground);pointer-events:none}.note-panel{width:0;padding-top:44px;display:flex;overflow:hidden}.note-panel .action-item{height:36px;color:var(--muted-foreground);border-radius:4px;margin:0 20px;padding-left:10px;line-height:36px}.note-panel .action-item:hover{cursor:pointer;background:color-mix(in oklch, var(--foreground) 10%, transparent);color:var(--foreground)}.full-note-panel{width:320px}
.container-editor{width:100vw;height:100dvh;position:fixed;inset:0;overflow:hidden}.container-editor .mindmap-wrapper{position:absolute;inset:0;overflow:hidden}.load-fail{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute}.load-fail .icon{color:var(--border);font-size:64px}.load-fail .title{color:color-mix(in oklch, var(--foreground) 80%, transparent);margin:16px 0 0;font-size:22px;font-weight:700}.load-fail .description{color:var(--muted-foreground);font-size:14px}.load-fail .action-button{margin:20px 0 0}
