:root{--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--accent:#0a84ff;--accent-soft:#0a84ff24;--danger:#ff453a;--radius-s:10px;--radius-m:14px;--radius-l:20px;--shadow-card:0 1px 2px #0f172a0f, 0 4px 16px #0f172a14;--shadow-float:0 2px 6px #0f172a14, 0 12px 40px #0f172a29;--shadow-pop:0 4px 12px #0f172a1f, 0 24px 64px #0f172a38;--ease-spring:cubic-bezier(.32, .72, .24, 1)}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f6;--bg-gradient:radial-gradient(1200px 800px at 15% -10%, #e4ecfb 0%, transparent 60%), radial-gradient(1000px 700px at 110% 110%, #f3e9f7 0%, transparent 55%), linear-gradient(180deg, #eef1f6 0%, #e9edf4 100%);--dots:#0f172a24;--text:#101623;--text-2:#4b5563;--text-3:#8a93a3;--surface:#ffffffeb;--surface-2:#ffffffb8;--glass:#fafbfdc7;--glass-strong:#fcfdffe6;--stroke:#0f172a17;--stroke-2:#0f172a24;--hover:#0f172a0d;--edge:#64748b8c}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0e14;--bg-gradient:radial-gradient(1200px 800px at 15% -10%, #14203a 0%, transparent 60%), radial-gradient(1000px 700px at 110% 110%, #241a33 0%, transparent 55%), linear-gradient(180deg, #0b0e14 0%, #0d1119 100%);--dots:#94a3b833;--text:#f2f4f8;--text-2:#b6bdc9;--text-3:#7c8494;--surface:#1c212df0;--surface-2:#232937c7;--glass:#141821b8;--glass-strong:#181c26e6;--stroke:#94a3b824;--stroke-2:#94a3b83d;--hover:#94a3b81a;--edge:#94a3b866;--shadow-card:0 1px 2px #0006, 0 4px 16px #00000073;--shadow-float:0 2px 6px #0006, 0 12px 40px #0000008c;--shadow-pop:0 4px 12px #00000080, 0 24px 64px #000000a6}*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;touch-action:manipulation}input,textarea,select,button{color:inherit;font-family:inherit}input,textarea{-webkit-user-select:text;user-select:text}.app{background:var(--bg-gradient);height:100%;position:relative;overflow:hidden}.canvas-layer{position:absolute;inset:0}.glass{background:var(--glass);-webkit-backdrop-filter:blur(24px)saturate(1.6);backdrop-filter:blur(24px)saturate(1.6);border:1px solid var(--stroke);box-shadow:var(--shadow-float)}.toolbar{z-index:40;border-radius:var(--radius-l);pointer-events:auto;align-items:center;gap:8px;padding:8px 10px;display:flex;position:absolute;top:14px;left:14px;right:14px}.toolbar .spacer{flex:1}.brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:8px;padding:0 6px 0 4px;font-size:15px;font-weight:700;display:flex}.brand-logo{color:#fff;background:linear-gradient(135deg,#0a84ff,#5e5ce6 60%,#bf5af2);border-radius:8px;place-items:center;width:26px;height:26px;font-size:13px;display:grid;box-shadow:0 2px 8px #0a84ff66}.btn{border-radius:var(--radius-s);height:34px;color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;transition:background .15s,color .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--hover);color:var(--text)}.btn:active{transform:scale(.96)}.btn.icon{width:34px;padding:0;font-size:15px}.btn.active{background:var(--accent-soft);color:var(--accent)}.btn.primary{background:var(--accent);color:#fff;font-weight:600}.btn.primary:hover{background:#2792ff}.btn .badge{background:var(--accent);color:#fff;border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 5px;font-size:11px;font-weight:700;display:grid}.toolbar-sep{background:var(--stroke-2);width:1px;height:20px;margin:0 2px}.map-switch{position:relative}.map-switch-btn{border-radius:var(--radius-s);background:var(--hover);cursor:pointer;height:34px;color:var(--text);border:none;align-items:center;gap:8px;padding:0 12px;font-size:13.5px;font-weight:600;display:flex}.map-switch-btn:hover{background:var(--accent-soft)}.map-switch-btn .chev{color:var(--text-3);font-size:9px}.menu{border-radius:var(--radius-m);background:var(--glass-strong);-webkit-backdrop-filter:blur(28px)saturate(1.7);backdrop-filter:blur(28px)saturate(1.7);border:1px solid var(--stroke);min-width:230px;box-shadow:var(--shadow-pop);z-index:100;animation:menu-in .16s var(--ease-spring);padding:6px;position:absolute}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.menu-item{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.menu-item:hover{background:var(--accent);color:#fff}.menu-item:hover .menu-hint{color:#ffffffbf}.menu-item.danger{color:var(--danger)}.menu-item.danger:hover{background:var(--danger);color:#fff}.menu-item .menu-ico{text-align:center;flex:none;width:20px}.menu-item .menu-hint{color:var(--text-3);margin-left:auto;font-size:11px}.menu-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:6px 10px 4px;font-size:11px;font-weight:600}.menu-sep{background:var(--stroke);height:1px;margin:5px 8px}.menu-grid{grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;display:grid}.menu-grid button{cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px 6px;font-size:16px;display:flex}.menu-grid button span{color:var(--text-3);font-size:9.5px}.menu-grid button:hover{background:var(--hover)}.menu-grid button.on{background:var(--accent-soft);outline:1.5px solid var(--accent)}.node-card{border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--stroke);min-height:44px;box-shadow:var(--shadow-card);cursor:pointer;flex-direction:column;justify-content:center;gap:4px;padding:9px 14px;transition:box-shadow .2s,border-color .15s;display:flex;position:relative}.node-card:hover{border-color:var(--stroke-2);box-shadow:var(--shadow-float)}.node-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), var(--shadow-float)}.node-card.done{opacity:.62}.node-card.done .node-title{text-decoration:line-through;-webkit-text-decoration-color:var(--text-3);text-decoration-color:var(--text-3)}.node-card.root{background:linear-gradient(135deg, var(--accent), #5e5ce6 90%);box-shadow:0 6px 24px #0a84ff59, var(--shadow-card);border:none;border-radius:18px;padding:13px 20px}.node-card.root .node-title{color:#fff;letter-spacing:-.02em;font-size:18px;font-weight:700}.node-card.root .node-meta{color:#ffffffd9}.node-card.root .node-meta .chip{color:#ffffffe6;background:#ffffff29}.node-head{align-items:center;gap:9px;min-width:0;display:flex}.node-ico{border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:14px;display:grid}.node-card.root .node-ico{border-radius:9px;width:30px;height:30px;font-size:16px;background:#ffffff38!important}.node-title{letter-spacing:-.01em;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:13.5px;font-weight:590;line-height:1.25;display:-webkit-box;overflow:hidden}.node-card.depth-1 .node-title{font-size:15px;font-weight:640}.node-title-input{width:100%;color:inherit;background:0 0;border:none;outline:none;padding:0;font-size:13.5px;font-weight:590;line-height:1.25}.node-card.root .node-title-input{color:#fff;font-size:18px;font-weight:700}.node-card.depth-1 .node-title-input{font-size:15px;font-weight:640}.node-follow{background:var(--accent-soft);width:20px;height:20px;color:var(--accent);cursor:pointer;transition:transform .15s var(--ease-spring);border:none;border-radius:6px;flex:none;place-items:center;padding:0;font-size:12px;font-weight:700;display:grid}.node-follow:hover{transform:scale(1.15)}.node-card.root .node-follow{color:#fff;background:#fff3}.node-meta.clickable{cursor:pointer}.node-meta.clickable:hover .chip{background:var(--accent-soft);color:var(--accent)}.node-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:5px;padding-left:35px;font-size:10.5px;display:flex}.chip{background:var(--hover);height:17px;color:var(--text-2);white-space:nowrap;border-radius:9px;align-items:center;gap:3px;padding:0 6px;font-size:10px;font-weight:600;display:inline-flex}.chip.status-in_progress{color:#0a84ff;background:#0a84ff26}.chip.status-blocked{color:#ff453a;background:#ff453a26}.chip.prio-high{color:#ff453a;background:#ff453a24}.chip.due{color:#bf5af2;background:#bf5af221}.node-check{border:1.8px solid var(--stroke-2);cursor:pointer;color:#0000;width:19px;height:19px;transition:all .15s var(--ease-spring);background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:11px;display:grid}.node-check:hover{border-color:var(--accent)}.node-check.checked{color:#fff;background:#30d158;border-color:#30d158}.collapse-chip{border:1.5px solid var(--stroke-2);background:var(--surface);width:22px;height:22px;color:var(--text-2);cursor:pointer;z-index:5;transition:all .15s var(--ease-spring);border-radius:50%;place-items:center;padding:0;font-size:10px;font-weight:700;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.collapse-chip:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-50%)scale(1.12)}.collapse-chip.right{right:-11px}.collapse-chip.left{left:-11px}.node-body-hint{color:var(--text-3);flex:none;font-size:10px}.react-flow__node{cursor:pointer}.react-flow__handle{border:2px solid var(--surface);background:var(--accent);opacity:0;width:9px;height:9px;transition:opacity .15s}.react-flow__node:hover .react-flow__handle,.react-flow__handle.connectingfrom,.react-flow__handle.connectingto{opacity:1}.react-flow__edge.selected .react-flow__edge-path{stroke-width:3.5px!important}.react-flow__edge-textbg{fill:var(--surface)}.react-flow__edge-text{fill:var(--text-2);font-size:10px;font-weight:600}.react-flow__attribution{color:var(--text-3);background:0 0}.react-flow__minimap{border-radius:var(--radius-m);border:1px solid var(--stroke);box-shadow:var(--shadow-float);margin:14px;overflow:hidden;background:var(--glass)!important}.react-flow__minimap-mask{fill:var(--hover)}.canvas-controls{z-index:39;border-radius:var(--radius-m);flex-direction:row;gap:2px;padding:4px;display:flex;position:absolute;bottom:20px;right:14px}.canvas-controls .btn{width:34px;height:32px;padding:0;font-size:14px}.focus-banner{z-index:35;height:34px;color:var(--text-2);animation:menu-in .2s var(--ease-spring);border-radius:17px;align-items:center;gap:8px;padding:0 6px 0 14px;font-size:12.5px;font-weight:600;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%)}.focus-banner .btn{height:26px;font-size:12px}.side-panel{z-index:38;border-radius:var(--radius-l);width:320px;animation:panel-in .25s var(--ease-spring);flex-direction:column;display:flex;position:absolute;top:72px;bottom:80px;overflow:hidden}.side-panel.left{left:14px}.side-panel.right{--panel-from:16px;width:336px;right:14px}@keyframes panel-in{0%{opacity:0;transform:translateX(var(--panel-from,-16px))}to{opacity:1;transform:none}}.panel-head{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:8px;padding:14px 16px 10px;font-size:14px;font-weight:700;display:flex}.panel-head .btn{width:26px;height:26px;padding:0;font-size:12px}.panel-head .spacer{flex:1}.panel-scroll{scrollbar-width:thin;flex:1;padding:0 10px 14px;overflow-y:auto}.outline-row{cursor:pointer;border-radius:8px;align-items:center;gap:5px;min-height:30px;padding:2px 6px 2px 0;font-size:13px;display:flex}.outline-row:hover{background:var(--hover)}.outline-row.selected{background:var(--accent-soft)}.outline-row .twist{width:18px;height:18px;color:var(--text-3);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;padding:0;font-size:8px;transition:transform .15s;display:grid}.outline-row .twist.open{transform:rotate(90deg)}.outline-row .o-ico{text-align:center;flex:none;width:18px;font-size:12px}.outline-row .o-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.outline-row.done .o-title{color:var(--text-3);text-decoration:line-through}.outline-row input.o-edit{background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:13px;font-weight:500}.outline-row .o-count{color:var(--text-3);flex:none;font-size:10px;font-weight:600}.outline-row .o-add{width:20px;height:20px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;flex:none;place-items:center;padding:0;font-size:12px;display:grid}.outline-row:hover .o-add{opacity:1}.outline-row .o-add:hover{background:var(--accent-soft);color:var(--accent)}.planner-tabs,.planner-filters{margin:0 10px 10px}.planner-day-group{margin-bottom:14px}.planner-day-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:4px 6px;font-size:11px;font-weight:700}.planner-row{cursor:pointer;text-align:left;width:100%;min-height:34px;color:var(--text);background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.planner-row:hover{background:var(--hover)}.planner-row-ico{flex:none;font-size:13px}.planner-row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.planner-row-title.done{color:var(--text-3);text-decoration:line-through}.planner-row-time{color:var(--text-3);flex:none;font-size:11px;font-weight:600}.planner-row-map{opacity:.8;flex:none;font-size:12px}.planner-task-row{align-items:center;gap:8px;padding:2px 8px;display:flex}.planner-task-row .planner-row-main{cursor:pointer;text-align:left;min-width:0;color:var(--text);background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:6px 0;display:flex}.planner-task-row:hover{background:var(--hover);border-radius:9px}.planner-empty{text-align:center;color:var(--text-3);padding:24px 10px;font-size:12.5px;line-height:1.5}.insp-field{margin:0 6px 14px}.insp-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.insp-title{resize:none;width:100%;font-family:var(--font-display);letter-spacing:-.02em;background:0 0;border:none;border-radius:8px;outline:none;padding:2px 6px;font-size:19px;font-weight:700;line-height:1.25}.insp-title:focus{background:var(--hover)}.insp-input,.insp-textarea{border:1px solid var(--stroke);border-radius:var(--radius-s);background:var(--surface-2);outline:none;width:100%;padding:8px 10px;font-size:13px;transition:border-color .15s}.insp-input:focus,.insp-textarea:focus{border-color:var(--accent)}.insp-textarea{resize:vertical;min-height:84px;line-height:1.5}.type-grid{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.type-grid button{background:var(--hover);cursor:pointer;border:1px solid #0000;border-radius:9px;flex-direction:column;align-items:center;gap:2px;padding:7px 2px 5px;font-size:14px;display:flex}.type-grid button span{color:var(--text-3);font-size:9px;font-weight:600}.type-grid button:hover{background:var(--accent-soft)}.type-grid button.on{border-color:var(--accent);background:var(--accent-soft)}.type-grid button.on span{color:var(--accent)}.type-grid .type-add{border:1.5px dashed var(--stroke-2);background:0 0}.type-grid .type-add:hover{border-color:var(--accent);background:var(--accent-soft)}.type-more{width:100%;height:26px;margin-top:5px;font-size:11.5px}.menu-typegrid{min-width:280px;padding:4px 6px 6px}.emoji-grid{grid-template-columns:repeat(9,1fr);gap:3px;display:grid}.emoji-grid button{background:var(--hover);cursor:pointer;border:1px solid #0000;border-radius:8px;height:30px;padding:0;font-size:15px}.emoji-grid button.on{border-color:var(--accent);background:var(--accent-soft)}.swatch-row{flex-wrap:wrap;gap:5px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;padding:0}.swatch.on{border-color:var(--text);transform:scale(1.12)}.type-actionable{color:var(--text-2);cursor:pointer;align-items:center;gap:8px;margin-top:12px;font-size:12.5px;display:flex}.type-manage-list{scrollbar-width:thin;max-height:200px;overflow-y:auto}.type-manage-row{border-radius:8px;align-items:center;gap:8px;min-height:32px;padding:2px 6px;font-size:13px;display:flex}.type-manage-row:hover{background:var(--hover)}.type-manage-row .spacer{flex:1}.type-manage-row .tm-badge{color:var(--accent);background:var(--accent-soft);border-radius:7px;padding:1px 6px;font-size:10px;font-weight:700}.type-manage-row .tm-star,.type-manage-row .tm-del{cursor:pointer;opacity:.55;background:0 0;border:none;padding:2px 4px;font-size:14px}.type-manage-row .tm-star.on,.type-manage-row .tm-star:hover,.type-manage-row .tm-del:hover{opacity:1}.seg{border-radius:var(--radius-s);background:var(--hover);gap:3px;padding:3px;display:flex}.seg button{height:26px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;font-size:11.5px;font-weight:600}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-card)}.tag-row{flex-wrap:wrap;gap:5px;margin-bottom:6px;display:flex}.tag-row .chip button{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0 0 0 2px;font-size:10px}.insp-actions{grid-template-columns:1fr 1fr;gap:6px;margin:0 6px 14px;display:grid}.insp-actions .btn{background:var(--hover);justify-content:flex-start;height:34px;font-size:12px}.insp-actions .btn:hover{background:var(--accent-soft);color:var(--accent)}.insp-meta{color:var(--text-3);margin:0 6px;font-size:11px;line-height:1.7}.relation-row{cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:6px 8px;font-size:12px;display:flex}.relation-row:hover{background:var(--hover)}.relation-row .rel-type{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:10px;font-weight:700}.relation-row .rel-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.relation-row .rel-x{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:2px;font-size:11px}.relation-row .rel-x:hover{color:var(--danger)}.quick-capture{z-index:40;border-radius:24px;align-items:center;gap:6px;width:min(520px,100vw - 28px);height:48px;padding:0 8px 0 16px;transition:box-shadow .2s,border-color .2s;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.quick-capture:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-pop)}.quick-capture .qc-ico{flex:none;font-size:15px}.quick-capture input{background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px;font-weight:500}.quick-capture input::placeholder{color:var(--text-3)}.quick-capture .qc-mic{cursor:pointer;opacity:.65;background:0 0;border:none;border-radius:17px;flex:none;place-items:center;width:34px;height:34px;font-size:14px;transition:all .15s;display:grid}.quick-capture .qc-mic:hover{background:var(--hover);opacity:1}.quick-capture .qc-mic.listening{opacity:1;background:#ff453a26;animation:1.2s ease-in-out infinite pulse}.quick-capture .qc-send{background:var(--accent);color:#fff;cursor:pointer;opacity:0;width:34px;height:34px;transition:all .18s var(--ease-spring);border:none;border-radius:17px;flex:none;place-items:center;font-size:14px;display:grid;transform:scale(.7)}.quick-capture .qc-send.show{opacity:1;transform:none}.qc-toast{z-index:150;color:var(--text);animation:toast-in .25s var(--ease-spring);pointer-events:none;border-radius:18px;padding:8px 16px;font-size:12.5px;font-weight:600;position:fixed;bottom:76px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)scale(.94)}to{opacity:1;transform:translate(-50%)}}.inbox-item{border-radius:var(--radius-m);background:var(--surface-2);border:1px solid var(--stroke);flex-direction:column;gap:7px;margin:0 6px 8px;padding:10px 12px;display:flex}.inbox-item .ib-head{align-items:center;gap:8px;font-size:13px;font-weight:550;display:flex}.inbox-item .ib-time{color:var(--text-3);padding-left:26px;font-size:10.5px}.inbox-item .ib-actions{flex-wrap:wrap;gap:5px;display:flex}.inbox-item .ib-actions .btn,.inbox-item .ib-actions select{background:var(--hover);cursor:pointer;border:none;border-radius:8px;height:26px;padding:0 9px;font-size:11.5px}.empty-note{text-align:center;color:var(--text-3);padding:24px 18px;font-size:13px;line-height:1.6}.empty-note .big{margin-bottom:8px;font-size:28px;display:block}.search-wrap{position:relative}.search-input{border-radius:var(--radius-s);background:var(--hover);width:180px;height:34px;transition:width .2s var(--ease-spring), background .15s;border:none;outline:none;padding:0 12px 0 30px;font-size:13px}.search-input:focus{background:var(--surface);width:240px;box-shadow:0 0 0 3px var(--accent-soft)}.search-wrap .s-ico{color:var(--text-3);pointer-events:none;font-size:12px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-results{width:300px;max-height:340px;position:absolute;top:40px;right:0;overflow-y:auto}.search-hit{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.search-hit:hover{background:var(--accent-soft)}.search-hit .s-map{color:var(--text-3);flex:none;margin-left:auto;font-size:10.5px}.overlay{z-index:90;position:fixed;inset:0}.mode-seg{align-items:center;height:34px}.mode-seg button{flex:none;height:28px;padding:0 10px}.node-card.drop-target{box-shadow:0 0 0 4px #30d15840, var(--shadow-float);border-color:#30d158;transform:scale(1.03)}.react-flow__node.dragging .node-card{opacity:.82;box-shadow:0 18px 40px #00000047, var(--shadow-float);cursor:grabbing;transform:scale(1.04)rotate(-.6deg)}@media (prefers-reduced-motion:reduce){.react-flow__node.dragging .node-card{transform:none}}.node-card.lod-bar>:not(.react-flow__handle){visibility:hidden}.node-card.lod-bar{background:var(--ast-farbe,var(--accent));opacity:.85;border-color:#0000}.node-card.lod-bar.style-underline{background:0 0;border-bottom-width:8px}.layout-settings{z-index:60;width:320px}.ls-row{border-bottom:1px solid var(--hairline);padding:10px 0}.ls-row:last-of-type{border-bottom:none}.ls-label{align-items:baseline;gap:8px;margin-bottom:7px;font-size:12.5px;font-weight:600;display:flex}.ls-hint{color:var(--text-dim);font-size:11px;font-weight:400}.layout-settings .seg{width:100%}.layout-settings .seg button{flex:1;font-size:12px}.layout-settings input[type=range]{width:100%;accent-color:var(--accent)}.node-card.style-underline{box-shadow:none;-webkit-backdrop-filter:none;border:none;border-bottom:3px solid var(--ast-farbe,var(--accent));background:0 0;border-radius:0;padding:2px 4px 0}.node-card.style-underline.root{border-bottom-width:4px}.node-card.style-underline.root,.node-card.style-underline.root .node-title,.node-card.style-underline.root .node-title-input{color:var(--text);background:0 0}.node-card.style-underline.root .node-meta .chip{color:var(--text-dim);background:var(--chip-bg)}.node-card.style-underline .node-title{white-space:nowrap;overflow-wrap:normal;-webkit-line-clamp:none;display:block;overflow:visible}.node-card.style-underline .node-head{padding-right:18px}.node-card.style-underline.selected{box-shadow:none;border-bottom-width:5px}.node-card.style-underline.selected .node-title{font-weight:700}.node-card.style-underline.drop-target{border-bottom-color:#30d158;box-shadow:0 3px #30d1584d}.node-card.style-pill{box-shadow:none;border-radius:999px;padding:4px 14px}.guide-line{pointer-events:none;z-index:3;background:var(--accent);opacity:.75;position:absolute}.guide-line.vertical{width:1px;height:16000px;top:-8000px;left:0}.guide-line.horizontal{width:16000px;height:1px;top:0;left:-8000px}.insert-line{pointer-events:none;z-index:4;background:#30d158;border-radius:2px;height:3px;margin-top:-1.5px;position:absolute;top:0;left:0;box-shadow:0 0 0 3px #30d15838}.insert-line:before{content:"";background:#30d158;border-radius:50%;width:9px;height:9px;margin-top:-4.5px;position:absolute;top:50%;left:-4px}.node-image{object-fit:cover;pointer-events:none;border-radius:13px 13px 4px 4px;width:calc(100% + 28px);height:104px;margin:-9px -14px 2px}.node-card.root .node-image{border-radius:17px 17px 5px 5px;width:calc(100% + 40px);margin:-13px -20px 4px}.insp-image{flex-direction:column;gap:6px;display:flex}.insp-image img{object-fit:cover;border-radius:var(--radius-s);border:1px solid var(--stroke);width:100%;max-height:160px}.palette-dim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:110;background:#0a0e1640;animation:.15s fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.palette{z-index:120;border-radius:var(--radius-l);width:min(560px,100vw - 28px);max-height:56vh;animation:palette-in .18s var(--ease-spring);flex-direction:column;display:flex;position:fixed;top:16vh;left:50%;overflow:hidden;transform:translate(-50%)}@keyframes palette-in{0%{opacity:0;transform:translate(-50%)translateY(-10px)scale(.98)}to{opacity:1;transform:translate(-50%)}}.palette-head{border-bottom:1px solid var(--stroke);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette-head .s-ico{color:var(--text-3);font-size:14px;position:static;transform:none}.palette-head input{background:0 0;border:none;outline:none;flex:1;font-size:16px;font-weight:500}.palette-list{flex:1;padding:6px;overflow-y:auto}.palette-item{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:13.5px;display:flex}.palette-item.active{background:var(--accent);color:#fff}.palette-item.active .menu-hint{color:#ffffffbf}.palette-item .p-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dialog{z-index:120;border-radius:var(--radius-l);width:min(480px,100vw - 28px);max-height:80vh;animation:dialog-in .2s var(--ease-spring);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)}}.dialog-body{padding:4px 16px 16px;overflow-y:auto}.dialog-note{color:var(--text-2);margin:0 0 14px;font-size:12.5px;line-height:1.55}.sync-badge{opacity:.75;cursor:default;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:inline-flex}.sync-badge.sync-saving{animation:1s ease-in-out infinite pulse}.sync-badge.sync-error{opacity:1}@keyframes pulse{50%{opacity:.3}}.ai-spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:13px;height:13px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=760px){.toolbar{flex-wrap:wrap;row-gap:4px}.side-panel,.side-panel.right{width:auto;max-height:55vh;inset:auto 10px 76px}.search-input{width:110px}.search-input:focus{width:150px}.react-flow__minimap{display:none}.canvas-controls{bottom:84px}}.page-editor{z-index:130;background:var(--bg-gradient), var(--bg);flex-direction:column;animation:.18s fade-in;display:flex;position:fixed;inset:0}.page-editor-head{border-radius:var(--radius-l);align-items:center;gap:8px;margin:14px 14px 0;padding:8px 12px;display:flex}.page-editor-head .pe-ico{font-size:18px}.pe-title{min-width:0;font-family:var(--font-display);letter-spacing:-.01em;background:0 0;border:none;border-radius:8px;outline:none;flex:1;padding:4px 6px;font-size:17px;font-weight:700}.pe-title:focus{background:var(--hover)}.page-editor-toolbar{border-radius:var(--radius-m);flex-wrap:wrap;align-items:center;gap:4px;margin:8px 14px 0;padding:5px 8px;display:flex}.page-editor-body{flex:1;gap:14px;min-height:0;margin:10px 14px 14px;display:flex}.pe-source{resize:none;border:1px solid var(--stroke);border-radius:var(--radius-m);background:var(--surface-2);outline:none;flex:1;min-width:0;padding:18px 20px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.65}.pe-source:focus{border-color:var(--accent)}.pe-preview{border:1px solid var(--stroke);border-radius:var(--radius-m);background:var(--surface);scrollbar-width:thin;flex:1;min-width:0;padding:20px 26px;overflow-y:auto}.pe-empty{color:var(--text-3);flex-direction:column;align-items:center;gap:10px;margin-top:60px;font-size:13px;display:flex}.pe-mobile-toggle{display:none}@media (width<=760px){.pe-mobile-toggle{display:inline-flex}.page-editor-body.view-edit .pe-preview,.page-editor-body.view-preview .pe-source{display:none}}.md-preview{-webkit-user-select:text;user-select:text;font-size:14.5px;line-height:1.65}.md-preview h1{font-family:var(--font-display);letter-spacing:-.02em;margin:.4em 0;font-size:26px}.md-preview h2{font-family:var(--font-display);letter-spacing:-.015em;margin:1em 0 .35em;font-size:20px}.md-preview h3{margin:.9em 0 .3em;font-size:16px;font-weight:700}.md-preview p{margin:.45em 0}.md-preview ul,.md-preview ol{margin:.4em 0;padding-left:24px}.md-preview li{margin:.18em 0}.md-preview li.md-check{align-items:baseline;gap:7px;margin-left:-20px;list-style:none;display:flex}.md-preview li.md-check input{transform:translateY(1.5px)}.md-preview blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--text-2);border-radius:0 8px 8px 0;margin:.6em 0;padding:4px 14px}.md-preview code{background:var(--hover);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.9em}.md-preview pre{background:var(--hover);border-radius:10px;padding:12px 14px;overflow-x:auto}.md-preview pre code{background:0 0;padding:0}.md-preview table{border-collapse:collapse;width:100%;margin:.7em 0;font-size:13.5px}.md-preview th,.md-preview td{border:1px solid var(--stroke-2);text-align:left;padding:6px 10px}.md-preview th{background:var(--hover);font-weight:600}.md-preview .md-img{border-radius:10px;max-width:100%;margin:.4em 0}.md-preview hr{border:none;border-top:1px solid var(--stroke-2);margin:1.2em 0}.md-preview a{color:var(--accent)}.add-child-chip{border:1.5px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;z-index:6;width:22px;height:22px;transition:all .15s var(--ease-spring);border-radius:50%;place-items:center;padding:0;font-size:13px;font-weight:700;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.add-child-chip:hover{transform:translateY(-50%)scale(1.15)}.add-child-chip.right{right:-11px}.add-child-chip.left{left:-11px}.add-child-chip.offset{top:auto;bottom:-11px;transform:none}.add-child-chip.offset:hover{transform:scale(1.15)}button.brand{color:var(--text);cursor:pointer;border-radius:var(--radius-s);background:0 0;border:none;height:34px;transition:background .15s}button.brand:hover{background:var(--hover)}.library{z-index:95;background:var(--bg);background-image:var(--bg-gradient);animation:.15s fade-in;display:flex;position:fixed;inset:0}.library-side{border-right:1px solid var(--stroke);background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:column;flex-shrink:0;gap:2px;width:232px;padding:16px 10px;display:flex;overflow-y:auto}.library-side .spacer{flex:1}.library-brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:8px;padding:2px 8px 14px;font-size:16px;font-weight:700;display:flex}.library-side-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:14px 10px 4px;font-size:11px;font-weight:700}.library-nav{border-radius:var(--radius-s);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:9px;padding:8px 10px;font-size:13.5px;font-weight:500;display:flex}.library-nav:hover{background:var(--hover)}.library-nav.on{background:var(--accent-soft);color:var(--accent)}.library-nav.subtle{color:var(--text-3)}.library-nav .badge{background:var(--accent);color:#fff;border-radius:9px;place-items:center;min-width:17px;height:17px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;display:grid}.library-count{color:var(--text-3);margin-left:auto;font-size:11.5px}.library-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.library-nav.folder{gap:0;padding:0}.library-nav-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-s);background:0 0;border:none;flex:1;align-items:center;gap:9px;padding:8px 4px 8px 10px;display:flex}.library-nav.folder .folder-actions{opacity:.55;gap:2px;padding-right:6px;display:inline-flex}.library-nav.folder:hover .folder-actions{opacity:1}.folder-actions button{cursor:pointer;color:var(--text-3);background:0 0;border:none;border-radius:6px;padding:4px 5px;font-size:12px}.folder-actions button:hover{background:var(--hover);color:var(--text)}.import-choices{flex-direction:column;gap:8px;display:flex}.import-choice{border:1px solid var(--stroke);border-radius:var(--radius-m);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;gap:3px;padding:11px 13px;transition:border-color .15s,background .15s;display:flex}.import-choice:hover{border-color:var(--accent);background:var(--hover)}.import-choice strong{font-size:14px}.import-choice span{color:var(--text-2);font-size:12px;line-height:1.45}.import-choice.subtle{opacity:.85;border-style:dashed}.library-main{flex:1;padding:18px 26px 40px;overflow-y:auto}.library-head{align-items:center;gap:10px;margin-bottom:18px;display:flex}.library-head h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700}.library-head .spacer{flex:1}.btn.danger-text{color:var(--danger)}.library-empty{color:var(--text-2);padding:26px 4px;font-size:14px;line-height:1.6}.library-invites{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.library-invite{border-radius:var(--radius-m);border:1px solid var(--stroke);align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;display:flex}.library-invite .spacer{flex:1}.library-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.library-card{border-radius:var(--radius-m);border:1px solid var(--stroke);min-height:148px;box-shadow:var(--shadow-card);cursor:pointer;transition:transform .15s var(--ease-spring), box-shadow .15s;flex-direction:column;gap:6px;padding:16px 14px 12px;display:flex;position:relative}.library-card:hover{box-shadow:var(--shadow-float);transform:translateY(-2px)}.library-card.trashed,.library-row.trashed{cursor:default;opacity:.75}.library-card-ico{font-size:34px;line-height:1}.library-card-title{font-family:var(--font-display);letter-spacing:-.01em;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:650;display:-webkit-box;overflow:hidden}.library-meta{color:var(--text-3);white-space:nowrap;font-size:11.5px}.library-badges{flex-wrap:wrap;gap:4px;margin-top:auto;display:flex}.library-card .library-item-menu{position:absolute;top:8px;right:8px}.library-item-menu{position:relative}.library-item-menu .menu{min-width:220px}.library-list{flex-direction:column;gap:8px;max-width:860px;display:flex}.library-row{border-radius:var(--radius-m);border:1px solid var(--stroke);cursor:pointer;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.library-row:hover{background:var(--hover)}.library-row .spacer{flex:1}.library-row-ico{font-size:19px}.library-row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}kbd{border:1px solid var(--stroke);background:var(--hover);font-family:var(--font);border-radius:5px;padding:1px 5px;font-size:11px}@media (width<=720px){.library{flex-direction:column}.library-side{border-right:none;border-bottom:1px solid var(--stroke);flex-flow:wrap;align-items:center;gap:2px;width:100%;padding:10px;overflow-y:visible}.library-brand{padding:0 8px 0 2px}.library-nav{width:auto}.library-side .spacer,.library-side-title{display:none}.library-main{padding:14px 14px 40px}}.auth-page{background:var(--bg-gradient), var(--bg);z-index:200;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.auth-page.session-expired{z-index:400;background:var(--bg-gradient), var(--bg)}.auth-card{border-radius:var(--radius-l);width:min(400px,100%);box-shadow:var(--shadow-float);flex-direction:column;align-items:stretch;padding:34px 32px 26px;display:flex}.auth-brand{justify-content:center;align-items:center;gap:10px;margin-bottom:6px;display:flex}.auth-brand h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin:0;font-size:26px;font-weight:700}.auth-brand .brand-logo{color:var(--accent);font-size:26px}.auth-sub{text-align:center;color:var(--text-2);margin:0 0 18px;font-size:13.5px;line-height:1.5}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-form .insp-input{height:42px;font-size:15px}.auth-submit{height:42px;margin-top:4px;font-size:15px}.auth-error{border-radius:var(--radius-s);color:var(--danger);background:#ff453a1a;margin:0;padding:9px 12px;font-size:13px;line-height:1.45}.auth-error.info{color:var(--text-2);background:var(--accent-soft)}.auth-terms{text-align:center;color:var(--text-3);margin:12px 0 0;font-size:11.5px;line-height:1.5}.auth-switch{text-align:center;color:var(--text-2);margin-top:16px;font-size:13px}.auth-link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.auth-link:hover{text-decoration:underline}.auth-pending{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-pending-icon{font-size:34px}.auth-pending h2{font-family:var(--font-display);color:var(--text);margin:0;font-size:18px}.auth-pending p{color:var(--text-2);margin:0 0 8px;font-size:13.5px;line-height:1.55}.auth-pending .auth-submit{align-self:stretch}.auth-foot{color:var(--text-3);text-align:center;margin:0;font-size:12px}.admin-panel{width:min(640px,100vw - 32px);max-height:min(80vh,720px)}.admin-stats{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.admin-stat{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--stroke);flex-direction:column;flex:1;align-items:center;gap:2px;min-width:86px;padding:10px 8px;display:flex}.admin-stat strong{font-size:20px;font-family:var(--font-display);color:var(--text)}.admin-stat span{color:var(--text-3);font-size:11.5px}.admin-server-note{margin-top:0}.admin-row{border-bottom:1px solid var(--stroke);align-items:center;gap:6px;padding:7px 0;display:flex}.admin-row:last-child{border-bottom:none}.admin-row.pending-row{background:var(--accent-soft);border-radius:var(--radius-s);border-bottom:none;margin-bottom:4px;padding:8px 10px}.admin-row-name{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex;overflow:hidden}.admin-row-name small{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.admin-status.pending{color:#b8860b}.admin-status.active{color:#2e9e5b}.admin-status.disabled{color:var(--danger)}.admin-btn{flex-shrink:0;height:26px;padding:0 8px;font-size:12px}.update-banner{z-index:500;border-radius:var(--radius-l);border:1px solid var(--stroke);box-shadow:var(--shadow-float);align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:10px 12px 10px 16px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.update-banner-text{color:var(--text);white-space:nowrap;font-size:14px}@media (width<=640px){.update-banner{bottom:84px}}
