@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{margin:0;overflow:hidden;background-color:var(--bg-color);color:var(--text-main);background-image:radial-gradient(var(--grid-color) 1px,transparent 1px);background-size:30px 30px;font-family:var(--font-main);-webkit-user-select:none;user-select:none;transition:background-color var(--transition-slow),color var(--transition-slow)}.is-zoomed-out .node-wrapper{filter:none!important;animation:none!important;box-shadow:none!important;transition:none!important;pointer-events:none}.is-zoomed-out .node-ai-badge,.is-zoomed-out .srs-review-indicator,.is-zoomed-out .node-tag-icon,.is-zoomed-out .drag-handle,.is-zoomed-out .toggle-btn,.is-zoomed-out .chunking-counter{display:none!important}.is-zoomed-out .node-text{pointer-events:none;-webkit-user-select:none;user-select:none}.caderno-manage-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:150px;min-width:60px;padding:var(--space-2) var(--space-3);padding-left:calc(var(--space-3) + 4px);overflow:visible;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 2px 4px #0000000d;font-weight:var(--font-semibold);font-size:var(--text-sm)}.caderno-manage-btn:hover{background:var(--btn-hover);transform:translateY(-1px)}.current-caderno-icon{position:absolute;top:50%;left:-9px;transform:translateY(-50%);font-size:16px;line-height:1;pointer-events:none;z-index:2;display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:50%;box-shadow:0 1px 4px #0000001f}.current-caderno-icon svg{position:static;width:10px;height:10px;display:block;pointer-events:none}.current-caderno-name{font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caderno-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:5px}.caderno-item-icon{font-size:16px;line-height:1;flex-shrink:0}.caderno-item-icon--svg svg{position:static;width:16px;height:16px;display:block;pointer-events:none}.caderno-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.caderno-customize-btn{background:none;border:1px solid var(--btn-border);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;padding:2px 5px;opacity:.7;transition:opacity var(--transition-normal)}.caderno-customize-btn:hover{opacity:1}.caderno-customizer{position:fixed;z-index:10000;background:var(--panel-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);box-shadow:0 6px 20px #0003;padding:10px;width:250px;box-sizing:border-box}.cc-tab-bar{display:flex;gap:4px;margin-bottom:8px}.cc-tab-btn{flex:1;font-size:11px;padding:4px 6px;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:transparent;color:var(--text-main);cursor:pointer;opacity:.6;transition:all var(--transition-normal)}.cc-tab-btn.active{background:var(--selection-color);color:#fff;border-color:var(--selection-color);opacity:1}.cc-content{max-height:180px;overflow-y:auto;margin-bottom:8px}.cc-category-label{font-size:10px;font-weight:600;text-transform:uppercase;opacity:.5;margin:6px 0 3px}.cc-emoji-grid{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.cc-emoji-btn{background:none;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:18px;padding:3px;transition:background var(--transition-normal)}.cc-emoji-btn:hover{background:var(--btn-hover);border-color:var(--btn-border)}.cc-icon-search{width:100%;padding:5px 8px;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-main);font-size:12px;margin-bottom:6px;box-sizing:border-box;outline:none}.cc-icon-grid{display:flex;flex-wrap:wrap;gap:4px}.cc-icon-item{width:28px;height:28px;cursor:pointer;border:1px solid var(--btn-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color var(--transition-normal)}.cc-icon-item:hover{border-color:var(--selection-color)}.cc-icon-item svg{position:static;width:22px;height:22px;display:block;pointer-events:none}.cc-icon-skeleton{width:22px;height:22px;background:var(--btn-hover);border-radius:3px}.cc-icon-hint{font-size:11px;opacity:.5;padding:4px 0}.cc-color-grid{display:flex;flex-wrap:wrap;gap:5px}.cc-color-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform var(--transition-normal),border-color var(--transition-normal)}.cc-color-swatch:hover{transform:scale(1.15)}.cc-color-swatch.active{border-color:var(--text-main);transform:scale(1.15)}.cc-color-custom{background:var(--btn-hover);border-color:var(--btn-border);font-size:14px;font-weight:700;color:var(--text-main);position:relative;display:flex;align-items:center;justify-content:center}.cc-remove-row{display:flex;gap:4px;border-top:1px solid var(--btn-border);padding-top:8px;margin-top:4px}.cc-remove-btn{flex:1;font-size:10px;padding:3px 6px;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:transparent;color:var(--text-main);cursor:pointer;opacity:.6;transition:opacity var(--transition-normal)}.cc-remove-btn:hover{opacity:1;border-color:var(--color-error);color:var(--color-error)}#viewport{width:100vw;height:100vh;overflow:hidden;cursor:grab}#viewport:active{cursor:grabbing}#map-layer{transform-origin:0 0;width:100%;height:100%}svg{position:absolute;top:0;left:0;overflow:visible;z-index:1;pointer-events:none}path{transition:d .2s ease}#svg-layer.dragging path{transition:none}#context-sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;background:var(--panel-bg);border-right:1px solid var(--btn-border);z-index:95;padding:80px 15px 20px;display:flex;flex-direction:column;gap:var(--space-4);transform:translate(-280px);transition:transform .3s cubic-bezier(.25,.8,.25,1);box-shadow:4px 0 15px #0000000d;overflow-y:auto}#context-sidebar::-webkit-scrollbar{width:6px;background:transparent}#context-sidebar::-webkit-scrollbar-track{background:transparent}#context-sidebar::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}#context-sidebar::-webkit-scrollbar-thumb:hover{background:#94a3b899}#context-sidebar.active{transform:translate(0)}#icon-sidebar{position:fixed;top:0;right:0;bottom:0;width:320px;background:var(--panel-bg);border-left:1px solid var(--btn-border);z-index:95;display:flex;flex-direction:column;transform:translate(340px);transition:transform .3s cubic-bezier(.25,.8,.25,1);box-shadow:-4px 0 15px #0000000d}#icon-sidebar.active{transform:translate(0)}#btn-icon-sidebar-toggle{position:fixed;top:50%;right:0;transform:translateY(-50%);width:20px;height:40px;background:var(--panel-bg);border:1px solid var(--btn-border);border-right:none;border-radius:8px 0 0 8px;z-index:96;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-main);box-shadow:-2px 0 5px #0000000d;transition:right .3s cubic-bezier(.25,.8,.25,1);padding:0;line-height:1}#btn-icon-sidebar-toggle:hover{background:var(--btn-hover);color:var(--selection-color)}#icon-sidebar.active+#btn-icon-sidebar-toggle{right:320px}.main-tabs-row{display:flex;flex-direction:row;gap:0;padding:0 8px;flex-shrink:0;border-bottom:2px solid var(--btn-border)}.main-tab-btn{flex:1;background:none;border:none;border-bottom:3px solid transparent;color:var(--text-main);cursor:pointer;font-size:13px;font-weight:600;padding:10px 6px;white-space:nowrap;opacity:.6;transition:all var(--transition-normal);margin-bottom:-2px}.main-tab-btn:hover{opacity:.85;background:var(--btn-hover)}.main-tab-btn.active{opacity:1;border-bottom-color:var(--selection-color);color:var(--selection-color)}.main-tab-btn:focus-visible{outline:2px solid var(--selection-color);outline-offset:-2px;border-radius:var(--radius-sm)}.tab-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.tab-content[style*="display:none"],.tab-content[style*="display: none"]{flex:0}.tab-placeholder{display:flex;align-items:center;justify-content:center;flex:1;font-size:14px;opacity:.5;color:var(--text-main);padding:40px 20px;text-align:center}.image-gallery-toolbar{display:flex;gap:6px;padding:8px 12px;flex-shrink:0}.gallery-toolbar-btn{font-size:11px;padding:4px 10px;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-main);cursor:pointer;transition:all var(--transition-normal)}.gallery-toolbar-btn:hover{background:var(--btn-hover);border-color:var(--selection-color)}.gallery-toolbar-btn-subtle{opacity:.6;font-size:10px}.gallery-toolbar-btn-subtle:hover{opacity:1}.image-gallery-grid{flex:1;overflow-y:auto;overflow-x:hidden;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:4px 12px 12px;align-content:start}.image-gallery-grid::-webkit-scrollbar{width:6px;background:transparent}.image-gallery-grid::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.gallery-item{position:relative;display:flex;flex-direction:column;border-radius:var(--radius-sm);border:1px solid var(--btn-border);overflow:hidden;cursor:pointer;transition:all var(--transition-normal);background:var(--bg-color)}.gallery-item:hover{border-color:var(--selection-color);box-shadow:0 2px 8px #00000026}.gallery-item:focus{outline:2px solid var(--selection-color);outline-offset:-2px}.gallery-thumb{width:100%;aspect-ratio:1;object-fit:cover;background:var(--btn-hover)}.gallery-badge{position:absolute;top:4px;right:4px;font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;background:var(--selection-color);color:#fff;pointer-events:auto;cursor:pointer;line-height:1.3}.gallery-badge-orphan{background:#94a3b880;color:var(--text-main)}.gallery-node-popup{position:fixed;z-index:10000;min-width:160px;max-width:240px;max-height:180px;overflow-y:auto;background:var(--panel-bg, #ffffff);border:1px solid var(--btn-border, #e2e8f0);border-radius:6px;box-shadow:0 4px 12px #00000026;padding:4px 0;margin-top:2px}.gallery-node-link{display:block;padding:5px 10px;font-size:11px;color:var(--text-main);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.gallery-node-link:hover{background:var(--selection-color, #3b82f6);color:#fff}.gallery-label{font-size:10px;padding:3px 5px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-main);opacity:.8;cursor:text}.gallery-label:hover{opacity:1;background:var(--btn-hover)}.gallery-label-input{font-size:10px;padding:2px 4px;width:100%;border:1px solid var(--selection-color);border-radius:2px;background:var(--bg-color);color:var(--text-main);text-align:center;outline:none;box-sizing:border-box}.gallery-empty{grid-column:1 / -1;text-align:center;font-size:12px;opacity:.5;padding:40px 20px;color:var(--text-main)}.gallery-skeleton-item{pointer-events:none}.gallery-skeleton-thumb{width:100%;aspect-ratio:1;background:linear-gradient(90deg,var(--btn-hover) 25%,var(--bg-color) 50%,var(--btn-hover) 75%);background-size:200% 100%;border-radius:4px;animation:loading 1.5s infinite}.gallery-skeleton-label{height:12px;margin:4px 8px;background:var(--btn-hover);border-radius:4px;animation:loading 1.5s infinite}[data-theme=dark] .gallery-thumb{border-bottom:1px solid rgba(255,255,255,.1)}.drawing-gallery-toolbar{display:flex;gap:6px;padding:8px 12px;flex-shrink:0}.gallery-action-btn{font-size:11px;padding:5px 12px;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-main);cursor:pointer;transition:all var(--transition-normal)}.gallery-action-btn:hover{background:var(--btn-hover);border-color:var(--selection-color)}.icon-sidebar-topbar{display:flex;align-items:center;justify-content:space-between;padding:68px 10px 6px 14px;flex-shrink:0}.icon-sidebar-title{font-size:13px;font-weight:600;color:var(--text-main);opacity:.8}#icon-sidebar-close{background:none;border:1px solid transparent;color:var(--text-main);cursor:pointer;font-size:15px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);flex-shrink:0;transition:all var(--transition-normal)}#icon-sidebar-close:hover{background:var(--btn-hover);border-color:var(--btn-border)}.icon-sidebar-search-row{padding:10px 12px;flex-shrink:0;border-bottom:1px solid var(--btn-border)}.icon-sidebar-section-title{font-size:10px;font-weight:600;color:var(--text-muted, #94a3b8);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px 4px;flex-shrink:0}.icon-sidebar-recents{display:flex;flex-direction:row;gap:6px;padding:4px 12px 10px;overflow-x:auto;flex-shrink:0;border-bottom:1px solid var(--btn-border);min-height:56px}.icon-sidebar-recents::-webkit-scrollbar{height:4px;background:transparent}.icon-sidebar-recents::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.icon-sidebar-recents .icon-result-item{width:40px;height:40px;flex-shrink:0}.icon-sidebar-recents .icon-result-item svg{width:28px;height:28px}.icon-sidebar-tabs{display:flex;flex-direction:row;gap:2px;padding:6px 8px 0;overflow-x:auto;overflow-y:hidden;flex-shrink:0;border-bottom:1px solid var(--btn-border);-webkit-overflow-scrolling:touch}.icon-sidebar-tabs::-webkit-scrollbar{height:7px;background:transparent}.icon-sidebar-tabs::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.icon-tab-btn{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-main);cursor:pointer;font-size:12px;padding:6px 8px;white-space:nowrap;flex-shrink:0;opacity:.7;transition:all var(--transition-normal);border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin-bottom:-1px}.icon-tab-btn:hover{opacity:1;background:var(--btn-hover)}.icon-tab-btn.active{opacity:1;border-bottom-color:var(--selection-color);color:var(--selection-color)}.icon-sidebar-grid{flex:1;overflow-y:auto;overflow-x:hidden;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px;align-content:start}.icon-sidebar-grid::-webkit-scrollbar{width:6px;background:transparent}.icon-sidebar-grid::-webkit-scrollbar-track{background:transparent}.icon-sidebar-grid::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.icon-sidebar-grid::-webkit-scrollbar-thumb:hover{background:#94a3b899}.icon-sidebar-grid .icon-result-item{width:100%;aspect-ratio:1}.icon-sidebar-grid .icon-result-item svg{width:36px;height:36px}.icon-sidebar-grid .icon-skeleton{width:100%;aspect-ratio:1}#btn-sidebar-toggle{position:fixed;top:50%;left:0;transform:translateY(-50%);width:20px;height:40px;background:var(--panel-bg);border:1px solid var(--btn-border);border-left:none;border-radius:0 8px 8px 0;z-index:96;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-main);box-shadow:2px 0 5px #0000000d;transition:left .3s}#context-sidebar.active+#btn-sidebar-toggle{left:260px}.tag-cloud-area{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--btn-border)}.tag-pill{font-size:11px;padding:3px 8px;border-radius:12px;background:var(--btn-hover);color:var(--text-main);cursor:pointer;border:1px solid transparent;opacity:.8;transition:all var(--transition-normal)}.tag-pill:hover{opacity:1;border-color:var(--selection-color);transform:translateY(-1px)}.tag-pill.active{background:var(--selection-color);color:#fff;opacity:1}.context-list{display:flex;flex-direction:column;gap:8px}.context-item{background:var(--bg-color);border:1px solid var(--btn-border);border-radius:var(--radius-md);padding:var(--space-2);transition:all var(--transition-normal);position:relative}.context-item:hover{border-color:var(--grid-color)}.context-item.focused{border-color:var(--selection-color);box-shadow:0 0 0 2px #3b82f61a}.context-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.context-name{font-weight:var(--font-semibold);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.context-name:hover{color:var(--selection-color)}.context-actions{display:flex;gap:3px}.ctx-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px;opacity:.5;transition:var(--transition-normal);box-shadow:none;display:inline-block}.ctx-btn:hover{opacity:1;transform:scale(1.1);background:none}.ctx-btn.visible{opacity:1;color:var(--text-main)}.ctx-btn.hidden{opacity:.4}.ctx-btn.ai-active{color:var(--ai-context-color);opacity:1}.search-results-list{max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.search-results-list::-webkit-scrollbar{width:6px;background:transparent}.search-results-list::-webkit-scrollbar-track{background:transparent}.search-results-list::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.search-results-list::-webkit-scrollbar-thumb:hover{background:#94a3b899}.search-result-item{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:5px 8px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text-main);transition:background .15s;line-height:1.4}.search-result-item:hover{background-color:var(--btn-hover);color:var(--selection-color)}.search-result-item.active{color:var(--selection-color);font-weight:var(--font-semibold)}.search-crumb{opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.search-crumb-project{opacity:.45;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.search-crumb-match{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.search-crumb-sep{opacity:.35;font-size:11px;padding:0 1px;flex-shrink:0}.search-no-results{font-size:12px;opacity:.5;padding:6px 8px;text-align:center}.pill-input-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin-top:5px;min-height:20px;cursor:text}.pill-chip{display:inline-flex;align-items:center;background:#3b82f61a;color:var(--text-main);font-family:var(--font-nodes, var(--font-main));font-size:10px;padding:2px 5px;border-radius:10px;border:1px solid rgba(59,130,246,.2);gap:2px;white-space:nowrap}.pill-chip-remove{background:none;border:none;cursor:pointer;font-size:12px;line-height:1;padding:0 0 1px;color:var(--text-main);opacity:.45;transition:opacity .15s}.pill-chip-remove:hover{opacity:1}.pill-add-input{background:transparent;border:none;outline:none;font-size:10px;color:var(--text-main);font-family:inherit;min-width:30px;width:30px;opacity:.45;padding:1px 0}.pill-add-input:focus{opacity:1}.pill-chip--keyword{background:#78787814;border-color:#78787833;font-style:italic}.ctx-sort-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:transparent;color:var(--text-main);opacity:.5;cursor:pointer;transition:all var(--transition-normal)}.ctx-sort-btn svg{position:static;display:block;flex-shrink:0}.ctx-sort-btn:hover{opacity:1;border-color:var(--grid-color)}.ctx-sort-btn.active{opacity:1;color:var(--selection-color);border-color:var(--selection-color)}.sort-dropdown{display:none;flex-direction:column;gap:2px;background:var(--bg-color);border:1px solid var(--btn-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001f;padding:4px;margin-top:4px;margin-bottom:6px}.sort-dropdown.is-open{display:flex}.sort-option{width:100%;text-align:left;font-size:12px;padding:6px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-main);cursor:pointer;transition:background var(--transition-normal)}.sort-option:hover{background:var(--btn-hover)}.sort-option.active{color:var(--selection-color);font-weight:var(--font-semibold)}@media(max-width:767px){#toolbar{top:var(--space-2);left:var(--space-2);right:var(--space-2);max-width:calc(100vw - var(--space-4));gap:var(--space-1)}button,[role=button],.ctx-btn,.drag-handle,.toggle-btn,.tag-pill,.quiz-option{min-width:44px;min-height:44px}.ctx-btn,.modal-close-btn{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}#context-sidebar{width:100%;max-width:320px}#context-sidebar.mobile-auto-close{transform:translate(-100%)}#btn-sidebar-toggle{width:28px;height:48px}#style-panel{left:50%;transform:translate(-50%);max-width:calc(100vw - var(--space-4));overflow-x:auto;flex-wrap:nowrap}.modal-content{width:95%;padding:var(--space-4);max-height:90vh}#help-panel{left:var(--space-2);right:var(--space-2);width:auto}#timer-panel{bottom:var(--space-2);right:var(--space-2);font-size:var(--text-sm)}.level-1 .node-text{font-size:var(--node-text-l1-mobile)}.level-2 .node-text{font-size:var(--node-text-l2-mobile)}.level-0 .node-text{font-size:var(--node-text-l0-mobile);padding:15px 30px}}@media(min-width:768px)and (max-width:1023px){#toolbar{max-width:80vw}.level-1 .node-text{font-size:var(--node-text-l1-mobile)}}.save-indicator{position:fixed;top:calc(var(--space-3) + 48px);right:var(--space-5);z-index:1001;font-size:11px;font-weight:400;letter-spacing:.03em;opacity:0;pointer-events:none;transition:opacity .4s ease}.save-saving{color:#9ca3af;opacity:.6}.save-saved{color:#9ca3af;opacity:.4}.save-retrying{color:#f59e0b;opacity:.75}.save-error{color:#f87171;opacity:.75;pointer-events:auto}.save-hidden{opacity:0;pointer-events:none}.save-pending{opacity:0}.save-btn-saving{opacity:.7}.shortcuts-backdrop{position:fixed;inset:0;background:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center}.shortcuts-panel{background:var(--bg-panel, #fff);color:var(--text-primary, #1a1a2e);border-radius:12px;box-shadow:0 8px 32px #0000003d;width:min(480px,92vw);max-height:80vh;display:flex;flex-direction:column;outline:none}.shortcuts-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border-subtle, rgba(0,0,0,.08));flex-shrink:0}.shortcuts-header h3{margin:0;font-size:15px;font-weight:600;letter-spacing:.01em}.shortcuts-close{background:none;border:none;cursor:pointer;font-size:20px;line-height:1;color:var(--text-secondary, #666);padding:4px 8px;border-radius:6px;transition:background .15s}.shortcuts-close:hover{background:var(--bg-hover, rgba(0,0,0,.06))}.shortcuts-body{overflow-y:auto;padding:12px 20px 20px;display:flex;flex-direction:column;gap:16px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}.shortcuts-body::-webkit-scrollbar{width:6px;background:transparent}.shortcuts-body::-webkit-scrollbar-track{background:transparent}.shortcuts-body::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.shortcuts-body::-webkit-scrollbar-thumb:hover{background:#94a3b899}.shortcuts-category h4{margin:0 0 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary, #888)}.shortcuts-category .shortcut-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;gap:12px}.shortcut-label{font-size:13px;color:var(--text-primary, #1a1a2e)}.shortcut-keys{display:flex;gap:4px;flex-shrink:0}.shortcut-keys kbd{display:inline-block;background:var(--bg-kbd, #f0f0f0);border:1px solid var(--border-kbd, #ccc);border-bottom-width:2px;border-radius:4px;padding:1px 6px;font-size:11px;font-family:ui-monospace,Cascadia Code,Fira Mono,monospace;color:var(--text-primary, #1a1a2e);white-space:nowrap}[data-theme=dark] .shortcuts-panel{--bg-panel: #1e2230;--text-primary: #e8e8f0;--text-secondary: #9090a8;--border-subtle: rgba(255,255,255,.08);--bg-hover: rgba(255,255,255,.06);--bg-kbd: #2a2d3e;--border-kbd: #404060}.read-only-banner{position:fixed;top:0;left:0;right:0;z-index:9999;padding:8px 16px;background:var(--warning-bg, #fef3cd);border-bottom:2px solid var(--warning-border, #ffc107);color:var(--warning-text, #856404);font-size:13px;display:flex;align-items:center;justify-content:center;gap:12px;height:36px;box-sizing:border-box}body.has-read-only-banner #toolbar{top:calc(36px + var(--space-5))}body.has-read-only-banner .btn-action,body.has-read-only-banner #hub-menu-container,body.has-read-only-banner #env-indicator{top:calc(36px + var(--space-3, 12px))!important}.read-only-banner-btn{padding:4px 12px;background:var(--accent-color, #6366f1);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px}[data-theme=dark] .read-only-banner{background:var(--warning-bg, #3b2e00);border-bottom-color:var(--warning-border, #ffc107);color:var(--warning-text, #ffd54f)}#toolbar{position:fixed;top:var(--space-5);left:var(--space-5);display:flex;gap:var(--space-2);z-index:var(--z-toolbar);flex-wrap:wrap;max-width:90vw}button{background:var(--btn-bg);border:1px solid var(--btn-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-semibold);color:var(--text-main);box-shadow:0 2px 4px #0000000d;transition:all var(--transition-normal);font-family:var(--font-main);font-size:var(--text-sm);display:flex;align-items:center;gap:var(--space-1)}button:hover{background:var(--btn-hover);transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed;transform:none}button:disabled:hover{background:var(--btn-bg);transform:none}button.active,.dark-theme button.active{background-color:var(--color-active-bg);color:var(--color-active-text);border-color:var(--color-active-border)}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;background-color:var(--panel-bg);min-width:180px;box-shadow:var(--shadow);border-radius:var(--radius-md);border:1px solid var(--btn-border);z-index:200;top:100%;left:0;padding:var(--space-1);margin-top:var(--space-1)}.dropdown-content:before{content:"";position:absolute;top:-15px;left:0;width:100%;height:15px;background:transparent}.dropdown:hover .dropdown-content,.dropdown.is-open .dropdown-content{display:block;animation:fadeIn var(--transition-fast)}.dropdown>button:focus-visible{outline:2px solid var(--selection-color);outline-offset:2px}.dropdown-content [role=menuitem]:focus{outline:2px solid var(--selection-color);outline-offset:-2px;background-color:var(--btn-hover);color:var(--selection-color)}@media(prefers-reduced-motion:reduce){.dropdown:hover .dropdown-content,.dropdown.is-open .dropdown-content{animation:none}}.dropdown-content button{display:flex;width:100%;text-align:left;border:none;background:none;border-radius:4px;padding:8px 10px;margin-bottom:2px;box-shadow:none;justify-content:flex-start}.dropdown-content button:hover{background-color:var(--btn-hover);transform:none;color:var(--selection-color)}.dropdown>button:after{content:"▾";margin-left:5px;opacity:.5}.btn-font-icon{color:#a78bfa;font-style:normal}.font-dropdown-content{min-width:210px;max-height:420px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}.font-dropdown-content::-webkit-scrollbar{width:6px;background:transparent}.font-dropdown-content::-webkit-scrollbar-track{background:transparent}.font-dropdown-content::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.font-dropdown-content::-webkit-scrollbar-thumb:hover{background:#94a3b899}.font-group-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.45;padding:6px 10px 2px;pointer-events:none}.font-dropdown-content button[data-font]{font-size:14px}.font-dropdown-content button.font-active{color:var(--selection-color);font-weight:700}.font-dropdown-content button.font-active:after{content:" ✓";opacity:.8}#style-panel{padding:6px 10px!important;gap:6px!important;border-radius:8px!important;transform-origin:bottom center;transform:scale(.95);max-width:90vw}#style-panel button{width:26px!important;height:26px!important;font-size:13px!important;padding:0!important;display:flex;align-items:center;justify-content:center}#style-panel input[type=color]{width:24px!important;height:24px!important;padding:0!important;border:none}#style-panel #font-size-select{height:26px;padding:0 4px;font-size:11px;font-family:inherit;background:var(--btn-bg);color:var(--text-main);border:1px solid var(--btn-border);border-radius:var(--radius-sm);cursor:pointer;outline:none}#style-panel .divider{height:20px!important;margin:0 4px!important}#style-panel button.active{background:var(--selection-color, #3b82f6);color:#fff;border-radius:var(--radius-sm, 4px)}@keyframes slideDownFade{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}#style-panel{top:90px;left:50%;transform:translate(-50%);display:none;flex-wrap:wrap;gap:12px;align-items:center;padding:10px 20px;animation:slideDownFade .2s ease-out forwards}.node-color-group{display:flex;align-items:center;gap:6px}.color-picker-wrap{position:relative;width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0}.color-picker-wrap input[type=color]{position:absolute;inset:0;width:100%!important;height:100%!important;padding:0!important;border:none!important;cursor:pointer}.color-picker-wrap.no-color:after{content:"";position:absolute;inset:20%;background:linear-gradient(to top right,transparent calc(50% - .75px),rgba(220,38,38,.7) calc(50% - .75px),rgba(220,38,38,.7) calc(50% + .75px),transparent calc(50% + .75px));pointer-events:none}.node-dynamic-palette{flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:6px;border-top:1px solid var(--btn-border)}.palette-label{font-size:11px;opacity:.65;margin-right:2px;white-space:nowrap}.color-lock-btn{width:22px!important;height:22px!important;min-width:22px;font-size:12px!important;border-radius:4px!important;cursor:pointer;opacity:1;transition:opacity .1s}.color-lock-btn:not(.locked):not(.lock-dimmed){opacity:.5}.color-lock-btn.lock-dimmed{opacity:.35;cursor:default}#style-panel .node-local-tone-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px!important;padding:0 7px!important;height:26px!important;width:auto!important;border-radius:4px!important;white-space:nowrap;position:relative}#style-panel .node-local-tone-btn .node-tone-label{font-size:11px;opacity:.85}.node-local-tone-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:300;background-color:var(--panel-bg);border:1px solid var(--btn-border);border-radius:var(--radius-md);box-shadow:var(--shadow);min-width:140px;padding:var(--space-1)}#style-panel .node-local-tone-dropdown button{display:flex;width:100%!important;text-align:left;border:none;background:none;border-radius:4px;padding:6px 10px!important;margin-bottom:2px;box-shadow:none;font-size:12px!important;height:auto!important;justify-content:flex-start!important}#style-panel .node-local-tone-dropdown button:hover{background-color:var(--btn-hover);color:var(--selection-color);transform:none}#style-panel .node-local-tone-dropdown button.tone-active{color:var(--selection-color);font-weight:700}.node-local-tone-dropdown button.tone-active:after{content:" ✓";opacity:.8}.node-tone-selector{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.node-tone-selector button{font-size:11px!important;padding:2px 6px!important;width:auto!important;height:auto!important;border-radius:4px!important;white-space:nowrap}.node-tone-selector button.tone-active{color:var(--selection-color);font-weight:700}.divider{width:1px;height:20px;background:var(--btn-border)}#btn-bg-palette{font-size:16px;line-height:1}.btn-bg-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;border:1.5px solid var(--btn-border);background-color:var(--bg-color);vertical-align:middle;pointer-events:none}#bg-palette-dropdown>button:after{content:"▾";margin-left:3px;opacity:.5}.bg-palette-content{min-width:auto;width:152px;padding:8px}.bg-palette-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.bg-swatch{width:28px;height:28px;border-radius:50%;border:2px solid var(--btn-border);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;position:relative;padding:0;box-shadow:none;display:block;min-width:28px}.bg-swatch:hover{transform:scale(1.15);box-shadow:0 2px 8px #00000026;background:none}.bg-swatch:focus-visible{outline:2px solid var(--selection-color);outline-offset:2px}.bg-swatch.bg-swatch-active{border-color:var(--selection-color);box-shadow:0 0 0 2px var(--selection-color)}.bg-swatch.bg-swatch-active:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:12px;font-weight:700;color:var(--selection-color);text-shadow:0 0 2px rgba(255,255,255,.8)}.dark-theme .bg-swatch.bg-swatch-active:after{text-shadow:0 0 2px rgba(0,0,0,.8)}.tone-dropdown-content{min-width:160px}.tone-dropdown-content button[data-tone]{font-size:13px}.tone-dropdown-content button.tone-active{color:var(--selection-color);font-weight:700}.tone-dropdown-content button.tone-active:after{content:" ✓";opacity:.8}.node-wrapper{position:absolute;z-index:var(--z-nodes);display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-100%);width:max-content}.node-wrapper.dragging{opacity:.7;pointer-events:none;z-index:var(--z-toolbar)}.node-text{background:var(--node-bg);outline:none;text-align:center;color:var(--text-main);min-width:40px;max-width:350px;padding:var(--space-1) var(--space-2);cursor:text;font-family:var(--font-nodes, var(--font-main));line-height:var(--line-height-tight);border-radius:var(--radius-sm);margin-bottom:0;border:2px solid transparent;transition:all var(--transition-normal);box-shadow:0 2px 5px #0000000d;position:relative}.node-time{position:absolute;top:-8px;right:-8px;font-size:9px;color:var(--text-main);font-family:monospace;font-weight:500;background:transparent;padding:0;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity var(--transition-normal),transform var(--transition-normal);white-space:nowrap}.node-wrapper:hover .node-time{opacity:.8;transform:translateY(-2px)}.node-text:focus{background:var(--panel-bg);border-color:var(--selection-color);box-shadow:0 4px 12px #3b82f626}.node-wrapper.selected .node-text{background:var(--panel-bg);border-color:#3b82f680;box-shadow:0 0 0 3px #3b82f61a}.node-wrapper.drop-target .node-text{border-color:var(--drop-target-color);background-color:var(--ui-drop-target-bg);transform:scale(1.1);box-shadow:0 0 15px #22c55e66;z-index:5}.node-text:empty:before{content:"Digite...";color:var(--text-main);opacity:.5;font-weight:400;font-size:.9em}.node-text:focus:before{content:""}.level-0{z-index:10;transform:translate(-50%,-50%)}.level-0 .node-text{font-size:var(--node-text-l0);font-weight:var(--font-black);color:var(--text-main);text-transform:uppercase;letter-spacing:.5px;background:var(--panel-bg);padding:25px 50px;border-radius:50px;border:2px solid var(--btn-border);box-shadow:0 10px 30px #0000001a;margin-bottom:0}.level-1 .node-text{font-size:var(--node-text-l1);font-weight:var(--font-bold);color:var(--text-main)}.level-2 .node-text{font-size:var(--node-text-l2);font-weight:var(--font-bold);color:var(--text-main);opacity:.9}.level-3 .node-text{font-size:var(--node-text-l3);font-weight:500;color:var(--text-main);opacity:.8}.level-4 .node-text{font-size:var(--node-text-l4);font-weight:500;color:var(--text-main);opacity:.8}.node-text-wrap{position:relative;display:flex;flex-direction:column;align-items:center}.node-visual-container{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translate(var(--vt-offset-x, 0px),var(--vt-offset-y, 0px)) rotate(var(--vt-rotation, 0deg)) scale(var(--vt-scale, 1));transform-origin:center center;pointer-events:auto;cursor:grab;margin-bottom:6px;z-index:3}.node-visual-container.vt-dragging{cursor:grabbing}.node-visual{display:block;border-radius:var(--radius-md);pointer-events:none;box-shadow:0 4px 15px #00000026}.node-emoji{font-size:42px;cursor:default;pointer-events:none}.node-icon-svg{pointer-events:none;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.visual-transform-bbox{position:absolute;inset:-4px;border:2px dashed var(--color-primary, #6366f1);pointer-events:none;z-index:4}.visual-transform-handle{position:absolute;width:8px;height:8px;background:var(--color-primary, #6366f1);border:1px solid #fff;cursor:nwse-resize;pointer-events:auto;z-index:5}.visual-transform-handle.corner-tl{top:-8px;left:-8px}.visual-transform-handle.corner-tr{top:-8px;right:-8px}.visual-transform-handle.corner-bl{bottom:-8px;left:-8px}.visual-transform-handle.corner-br{bottom:-8px;right:-8px}.visual-rotate-stem{position:absolute;top:-24px;left:50%;transform:translate(-50%);width:1px;height:16px;background:var(--color-primary, #6366f1);pointer-events:none;z-index:5}.visual-rotate-handle{position:absolute;top:-34px;left:50%;transform:translate(-50%);width:10px;height:10px;border-radius:50%;background:var(--color-primary, #6366f1);border:1px solid #fff;cursor:grab;pointer-events:auto;z-index:5}.visual-rotate-handle:active{cursor:grabbing}.visual-tether-svg{position:absolute;top:0;left:0;width:1px;height:1px;overflow:visible;pointer-events:none;z-index:6}.node-icon-svg svg{width:100%;height:100%}.node-wrapper>.node-visual,.node-wrapper>.node-emoji,.node-wrapper>.node-icon-svg{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:6px}.node-ai-badge{position:absolute;top:-10px;right:-10px;width:22px;height:22px;background:var(--ai-context-color);border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;box-shadow:0 2px 5px #0003;z-index:25;cursor:pointer;transition:transform var(--transition-normal);animation:pulse-badge 2s infinite}.node-ai-badge:hover{transform:scale(1.2)}.node-ai-badge-empty{position:absolute;top:-12px;right:-12px;width:24px;height:24px;background:var(--color-surface-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;box-shadow:0 2px 5px #0000001a;z-index:25;cursor:pointer;transition:transform var(--transition-normal),opacity var(--transition-normal);opacity:.6}.node-ai-badge-empty:hover{transform:scale(1.2);opacity:1}.srs-review-indicator{position:absolute;top:-12px;left:-12px;width:24px;height:24px;background:var(--color-error);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 5px #ef444466;z-index:26;cursor:pointer;transition:transform var(--transition-normal);animation:pulse-srs 2s infinite}.srs-review-indicator:hover{transform:scale(1.2)}@media(prefers-reduced-motion:reduce){.node-ai-badge,.srs-review-indicator{animation:none}#btn-global-review{animation:none!important}.node-wrapper *,.node-wrapper *:before,.node-wrapper *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.node-emphasized{z-index:10;filter:drop-shadow(0 0 8px var(--emphasis-color, #6366f1));transition:transform .2s ease,filter .2s ease}.node-emphasized .node-text{font-weight:800}[data-theme=dark] .node-emphasized{filter:drop-shadow(0 0 12px var(--emphasis-color, #6366f1))}[data-theme=light] .node-emphasized{filter:drop-shadow(0 0 6px var(--emphasis-color, rgba(99, 102, 241, .6)))}@media(prefers-reduced-motion:reduce){.node-emphasized{transition:none}}.drag-handle{width:18px;height:18px;border-radius:50%;background:var(--panel-bg);border:2px solid #94a3b8;position:absolute;bottom:-9px;cursor:move;opacity:0;transition:var(--transition-normal);z-index:20;pointer-events:auto}.node-wrapper:hover .drag-handle,.node-wrapper.selected .drag-handle{opacity:1}.drag-handle:hover{transform:scale(1.3);border-color:var(--selection-color);background:var(--selection-color)}.toggle-btn{width:20px;height:20px;background:var(--panel-bg);border:1px solid var(--btn-border);border-radius:50%;position:absolute;bottom:-32px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-main);cursor:pointer;opacity:0;transition:var(--transition-normal);z-index:21}.node-wrapper.collapsed>.toggle-btn{opacity:.7}.node-wrapper:hover .toggle-btn{opacity:1}.toggle-btn:hover{border-color:var(--selection-color);color:var(--selection-color);transform:scale(1.2)}.node-text{transition:none}.node-text.text-holo{-webkit-text-stroke:4px #fff;paint-order:stroke fill}body.dark-theme .node-text.text-holo{-webkit-text-stroke-color:#000}.text-color-mode-btn{position:relative;font-weight:700;font-size:15px;min-width:32px;height:32px}.text-color-mode-btn .tcm-icon{display:inline-block;font-family:var(--font-main);font-weight:800;font-size:16px}.text-color-mode-btn[data-text-color-mode=default] .tcm-icon{text-decoration:underline;text-decoration-color:var(--selection-color, #6366f1);text-underline-offset:2px}.text-color-mode-btn[data-text-color-mode=bw] .tcm-icon{color:var(--text-main);text-decoration:none}.text-color-mode-btn[data-text-color-mode=holo] .tcm-icon{-webkit-text-stroke:1px var(--selection-color, #6366f1);text-decoration:none}.drawing-toolbar{display:flex;flex-direction:column;gap:8px;padding:8px 0;border-bottom:1px solid var(--btn-border, #e2e8f0);margin-bottom:8px}.drawing-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.drawing-tool-btn,.drawing-action-btn{background:var(--btn-bg, #ffffff);border:1px solid var(--btn-border, #e2e8f0);border-radius:6px;cursor:pointer;font-size:16px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;transition:background .15s}.drawing-tool-btn:hover,.drawing-action-btn:hover{background:var(--btn-hover, #f1f5f9)}.drawing-tool-btn.active{background:var(--selection-color, #3b82f6);color:#fff;border-color:var(--selection-color, #3b82f6)}.drawing-toolbar-sep{width:1px;height:24px;background:var(--btn-border, #e2e8f0);margin:0 4px}.drawing-colors{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.drawing-color-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s;padding:0}.drawing-color-swatch:hover{transform:scale(1.15)}.drawing-color-swatch.active{border-color:var(--selection-color, #3b82f6);box-shadow:0 0 0 2px var(--panel-bg, #ffffff),0 0 0 4px var(--selection-color, #3b82f6)}.drawing-color-custom{cursor:pointer;font-size:16px;display:flex;align-items:center}.drawing-color-custom.active{outline:2px solid var(--selection-color, #3b82f6);border-radius:4px}.drawing-custom-color-input{width:0;height:0;padding:0;border:0;opacity:0;position:absolute}.drawing-thickness{display:flex;align-items:center}.drawing-thickness-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-muted, #374151)}.drawing-thickness-slider{width:120px;accent-color:var(--selection-color, #3b82f6)}.drawing-canvas{display:block;width:100%;max-width:400px;height:auto;aspect-ratio:4 / 3;border:1px solid var(--btn-border, #e2e8f0);border-radius:8px;background:var(--panel-bg, #ffffff);cursor:crosshair;touch-action:none;margin:0 auto}.drawing-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:10px}.drawing-btn-cancel{padding:6px 16px;border:1px solid var(--btn-border, #e2e8f0);border-radius:6px;background:var(--btn-bg, #ffffff);cursor:pointer;font-size:14px;color:var(--text-main, #1e293b)}.drawing-btn-save{padding:6px 16px;border:none;border-radius:6px;background:var(--btn-primary-bg, #1d4ed8);color:var(--color-text-on-primary, #ffffff);cursor:pointer;font-size:14px;font-weight:600}.drawing-btn-cancel:hover{background:var(--btn-hover, #f1f5f9)}.drawing-btn-save:hover{opacity:.9}.drawing-hint{margin-top:8px;font-size:12px;color:var(--color-text-muted, #374151);text-align:center;font-style:italic}.latent-root-placeholder{position:absolute;transform:translate(-50%,-50%);padding:12px 20px;border:2px dashed var(--node-border-color, rgba(120, 120, 120, .3));border-radius:12px;background:#c8c8c814;cursor:pointer;pointer-events:auto;transition:border-color .2s,background .2s;z-index:1}.latent-root-placeholder:hover{border-color:var(--accent-color, #4a9eff);background:#4a9eff14}.latent-root-title{font-size:14px;font-weight:600;color:var(--text-secondary, rgba(180, 180, 180, .7));white-space:nowrap;-webkit-user-select:none;user-select:none}.modal-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:var(--z-modal);align-items:center;justify-content:center}.modal-content{background:var(--panel-bg);width:90%;max-width:600px;border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow);color:var(--text-main);max-height:85vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--btn-border);padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.ctx-drop-zone{border:2px dashed var(--btn-border);border-radius:var(--radius-md);padding:var(--space-6);text-align:center;color:var(--text-main);opacity:.7;margin-bottom:var(--space-4);transition:var(--transition-normal);cursor:pointer}.ctx-drop-zone:hover,.ctx-drop-zone.dragover{border-color:var(--ai-context-color);background:var(--btn-hover);opacity:1}.ctx-file-list{margin-top:10px;display:flex;flex-direction:column;gap:5px}.ctx-file-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-color);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);border:1px solid var(--btn-border)}.ctx-file-type{font-weight:var(--font-bold);font-size:10px;text-transform:uppercase;margin-right:8px;padding:2px 4px;border-radius:4px;background:var(--btn-border);color:var(--color-text-muted)}.ctx-delete-btn{color:var(--color-error);cursor:pointer;font-weight:700;padding:0 5px}.ctx-buffer-info{font-size:11px;margin-top:10px;color:var(--text-main);opacity:.6;text-align:right}.ctx-textarea{width:100%;box-sizing:border-box;height:80px;background:var(--bg-color);border:1px solid var(--btn-border);border-radius:var(--radius-md);padding:var(--space-2);color:var(--text-main);font-family:inherit;margin-bottom:var(--space-2);resize:vertical}.icon-search-box{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--btn-border);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-main);font-family:inherit;font-size:var(--text-md);box-sizing:border-box}.icon-search-box:focus{outline:none;border-color:var(--selection-color)}.icon-grid-container{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding-top:5px}.icon-result-item{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;transition:all var(--transition-normal);position:relative}.icon-result-item:hover{background:var(--btn-hover);border-color:var(--selection-color)}.icon-result-item svg{width:24px;height:24px}.icon-skeleton{width:100%;height:100%;background:linear-gradient(90deg,var(--btn-hover) 25%,var(--bg-color) 50%,var(--btn-hover) 75%);background-size:200% 100%;border-radius:6px;animation:loading 1.5s infinite}.icon-category-title{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--text-main);opacity:.5;margin-top:5px}.btn-clear-icon{font-size:12px;color:var(--color-error);background:none;border:1px solid var(--color-error);padding:4px;border-radius:4px;cursor:pointer;width:100%;margin-top:5px}.btn-clear-icon:hover{background:var(--alert-error-bg)}.ctx-icon-small{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:6px;flex-shrink:0;overflow:hidden}.ctx-icon-small svg{display:block;position:static;width:16px;height:16px}.ctx-icon-small--emoji{font-size:13px;line-height:1}.ctx-icon-small--img{width:16px;height:16px;object-fit:cover;border-radius:2px}.notebooks-modal{max-width:460px;display:flex;flex-direction:column;overflow:hidden}.notebooks-modal-title{margin:0;font-size:18px;display:flex;align-items:center;gap:8px;font-weight:var(--font-semibold);color:var(--text-main);white-space:nowrap}.notebooks-btn-new{background:var(--btn-bg);color:var(--text-main);font-size:12px;padding:6px 12px;border-radius:var(--radius-md);border:1px solid var(--btn-border);cursor:pointer;font-weight:var(--font-semibold);display:flex;align-items:center;gap:4px;transition:background var(--transition-fast);white-space:nowrap}.notebooks-btn-new:hover{background:var(--btn-hover)}.notebooks-btn-save{background:var(--selection-color);color:var(--color-text-on-primary);font-size:12px;padding:6px 12px;border-radius:var(--radius-md);border:none;cursor:pointer;font-weight:var(--font-semibold);display:flex;align-items:center;gap:4px;transition:opacity var(--transition-fast);white-space:nowrap}.notebooks-btn-save:hover{opacity:.85}.notebooks-current-badge{font-size:12px;color:var(--text-main);opacity:.7;background:var(--btn-hover);border-radius:var(--radius-md);padding:6px 10px;margin-bottom:14px;border-left:3px solid var(--selection-color)}.notebooks-current-badge strong{opacity:1;color:var(--text-main)}.notebooks-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}.notebooks-list::-webkit-scrollbar{width:6px;background:transparent}.notebooks-list::-webkit-scrollbar-track{background:transparent}.notebooks-list::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}.notebooks-list::-webkit-scrollbar-thumb:hover{background:#94a3b899}.notebooks-footer{margin-top:16px;display:flex;justify-content:flex-end}.project-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--btn-border);border-radius:var(--radius-md);transition:var(--transition-normal);cursor:pointer;background:var(--btn-bg)}.project-item:hover{background:var(--btn-hover);border-color:var(--selection-color)}.project-name{display:flex;align-items:center;gap:8px;font-weight:var(--font-semibold);font-size:14px;color:var(--text-main)}.delete-proj{background:transparent;border:none;color:var(--color-error);font-size:16px;cursor:pointer;padding:4px 6px;border-radius:var(--radius-md);line-height:1;box-shadow:none;transition:background var(--transition-fast);flex-shrink:0}.delete-proj:hover{background:#ef44441a;transform:none}.reorder-handle{cursor:grab;opacity:.4;font-size:16px;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 4px;line-height:1;transition:opacity var(--transition-fast)}.reorder-handle:hover{opacity:.8}.reorder-handle:active{cursor:grabbing}.project-item.reorder-dragging{opacity:.4}.project-item.reorder-over-above{border-top:2px solid var(--selection-color)}.project-item.reorder-over-below{border-bottom:2px solid var(--selection-color)}#project-list-container.reorder-active{outline:1px dashed var(--selection-color);outline-offset:4px;border-radius:var(--radius-md)}.quiz-question{font-size:18px;font-weight:600;color:var(--text-main);margin-bottom:20px}.quiz-option{padding:12px;border:2px solid var(--btn-border);border-radius:var(--radius-md);margin-bottom:var(--space-2);cursor:pointer;transition:all var(--transition-normal);font-size:var(--text-md);color:var(--text-main);display:flex;align-items:center;background:var(--bg-color)}.quiz-option:hover{border-color:var(--ai-context-color);background:var(--btn-hover)}.quiz-option.correct{background:var(--alert-success-bg-emphasis);border-color:var(--color-success);color:var(--alert-success-text)}.quiz-option.wrong{background:var(--alert-error-bg-emphasis);border-color:var(--color-error);color:var(--alert-error-text)}#upgrade-modal .modal-content{max-width:440px}.upgrade-modal-message{margin:0 0 var(--space-3) 0;color:var(--text-main);font-size:var(--text-md);line-height:1.5}.upgrade-modal-usage{margin:0 0 var(--space-5) 0;color:var(--text-main);opacity:.8;font-size:var(--text-sm);line-height:1.5}.upgrade-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.upgrade-modal-btn{padding:10px 16px;border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--font-semibold);cursor:pointer;border:1px solid transparent;transition:background var(--transition-fast),opacity var(--transition-fast)}.upgrade-modal-btn--secondary{background:var(--btn-bg);color:var(--text-main);border-color:var(--btn-border)}.upgrade-modal-btn--secondary:hover{background:var(--btn-hover)}.upgrade-modal-btn--primary{background:var(--selection-color);color:var(--color-text-on-primary)}.upgrade-modal-btn--primary:hover{opacity:.88}@media(max-width:480px){.upgrade-modal-actions{flex-direction:column-reverse}.upgrade-modal-btn{width:100%}}#toast-container{position:fixed;bottom:var(--space-6, 24px);right:var(--space-6, 24px);display:flex;flex-direction:column;gap:var(--space-2, 8px);z-index:var(--z-toast, 1000);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-2, 8px);padding:10px var(--space-4, 16px);border-radius:var(--radius-md, 8px);color:#fff;font-size:var(--text-md, 14px);font-family:var(--font-main, sans-serif);box-shadow:0 4px 12px #0003;pointer-events:auto;max-width:320px;word-break:break-word;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease}.toast--visible{opacity:1;transform:translateY(0)}.toast--hidden{opacity:0;transform:translateY(8px)}.toast--success{background:var(--alert-success-text, #15803d)}.toast--error{background:var(--alert-error-text, #b91c1c)}.toast--info{background:var(--alert-info-text, #1e40af)}.toast--warning{background:var(--alert-warning-text, #92400e)}.toast__icon{flex-shrink:0;font-style:normal}@media(prefers-reduced-motion:reduce){.toast,.toast--visible,.toast--hidden{transition:none;animation:none}}.btn{cursor:pointer;border-radius:var(--radius-md, 8px);padding:6px var(--space-4, 14px);font-size:var(--text-md, 14px);font-family:var(--font-main, sans-serif);transition:opacity var(--transition-fast, .15s ease),background var(--transition-fast, .15s ease);display:inline-flex;align-items:center;gap:var(--space-1, 4px)}.btn--primary{background:var(--btn-primary-bg, #1d4ed8);color:var(--color-text-on-primary, #ffffff);border:none}.btn--secondary{background:var(--btn-bg, #fff);color:var(--text-main, #1e293b);border:1px solid var(--btn-border, #e2e8f0)}.btn--icon{background:transparent;color:var(--text-main, #1e293b);border:none;padding:4px var(--space-2, 8px)}.btn:not(:disabled):hover{opacity:.85}.btn:focus-visible{outline:2px solid var(--selection-color, #3b82f6);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.btn{transition:none}}.btn-action{position:fixed;top:var(--space-5, 20px);z-index:1001;width:32px;height:32px;border-radius:var(--radius-md, 8px);display:flex;align-items:center;justify-content:center;background:var(--panel-bg, #fff);border:1px solid var(--btn-border, #e2e8f0);box-shadow:var(--shadow, 0 1px 2px rgba(0,0,0,.05));cursor:pointer;font-size:15px;padding:0;transition:opacity var(--transition-fast, .15s ease),background var(--transition-fast, .15s ease)}.btn-action:hover:not(:disabled){opacity:.85}.btn-action:focus-visible{outline:2px solid var(--selection-color, #3b82f6);outline-offset:2px}input[type=color]{width:28px;height:28px;border:none;cursor:pointer;background:none;border-radius:50%}input[type=range]{appearance:none;-webkit-appearance:none;background:var(--btn-border);height:4px;border-radius:2px}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:16px;height:16px;background:var(--selection-color);border-radius:50%;cursor:pointer;border:2px solid var(--color-text-on-primary);box-shadow:0 1px 3px #0003}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-1)}.input-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-main)}.input-field{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);font-size:var(--text-md);font-family:var(--font-main);color:var(--text-main);background:var(--panel-bg);border:1px solid var(--btn-border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-field:focus-visible{border-color:var(--selection-color);box-shadow:0 0 0 3px #3b82f626}.input-field--error{border-color:var(--alert-error-border)}.input-field--error:focus-visible{border-color:var(--alert-error-text);box-shadow:0 0 0 3px #ef444426}.input-field:disabled{opacity:.5;cursor:not-allowed}.textarea-field{min-height:72px}.input-error{font-size:var(--text-sm);color:var(--alert-error-text);margin-top:2px}#timer-dock{position:fixed;bottom:var(--space-5);right:var(--space-5);display:flex;align-items:center;gap:8px;z-index:var(--z-toast)}#btn-timer-panel{width:36px;height:36px;padding:0;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-md);background:var(--btn-bg);border:1px solid var(--btn-border);color:var(--text-main);cursor:pointer;box-shadow:0 4px 12px #00000026;transition:box-shadow .2s,transform .15s}#btn-timer-panel:hover{transform:scale(1.07);box-shadow:0 6px 18px #00000038}#btn-timer-panel.active{background-color:var(--color-active-bg);color:var(--color-active-text);border-color:var(--color-active-border)}#timer-panel{background:#0f172ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;padding:10px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.08);display:flex;gap:6px;align-items:center;opacity:.6;transition:opacity .25s ease,box-shadow .25s ease;box-shadow:0 8px 24px #00000040,0 1px #ffffff0a inset;font-family:SF Mono,Fira Code,Fira Mono,monospace;letter-spacing:.04em}#timer-panel:hover{opacity:1;box-shadow:0 12px 32px #00000059,0 1px #ffffff0f inset}#timer-panel span[aria-hidden]{color:#ffffff4d;font-size:18px;line-height:1;-webkit-user-select:none;user-select:none}.timer-input{background:transparent;border:none;color:#fff;width:26px;text-align:center;font-size:18px;font-family:inherit;letter-spacing:inherit;border-bottom:1px solid rgba(255,255,255,.15);transition:border-bottom-color .15s}.timer-input:focus{outline:none;border-bottom-color:#60a5fa}.timer-btn{background:#3b82f6d9;border:none;color:#fff;width:26px;height:26px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;margin-left:4px;transition:background .15s,transform .1s;box-shadow:0 2px 6px #3b82f666}.timer-btn:hover{background:#3b82f6;transform:scale(1.08)}.timer-btn.stop{background:#ef4444cc;box-shadow:0 2px 6px #ef444459;margin-left:0}.timer-btn.stop:hover{background:#ef4444}.panel{position:fixed;background:var(--panel-bg);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow);z-index:var(--z-panel);border:1px solid var(--btn-border);display:none;color:var(--text-main);animation:fadeIn var(--transition-normal)}#help-panel{top:80px;left:20px;width:250px}#help-panel h3{margin:0 0 10px;font-size:14px;color:var(--text-main)}.shortcut-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px;color:var(--text-main);opacity:.8}kbd{background:var(--btn-hover);border:1px solid var(--btn-border);border-radius:4px;padding:2px 6px;font-family:monospace;font-size:11px;color:var(--text-main)}#ai-loading{position:fixed;inset:0;background:var(--ui-loading-overlay-bg);color:var(--ui-loading-overlay-text);z-index:2000;display:none;align-items:center;justify-content:center;flex-direction:column;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spinner{width:40px;height:40px;border:4px solid var(--ui-spinner-track);border-top:4px solid var(--ui-loader-start);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}#ai-status-text{font-weight:600;color:var(--ui-loader-end);animation:pulse 1.5s infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-badge{0%{box-shadow:0 0 #8b5cf666}70%{box-shadow:0 0 0 6px #8b5cf600}to{box-shadow:0 0 #8b5cf600}}@keyframes pulse-srs{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 6px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes dash-flow{to{stroke-dashoffset:-20}}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}button:focus-visible,input:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--selection-color);outline-offset:2px}.badge{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-main);font-weight:var(--font-semibold);border-radius:var(--radius-full);white-space:nowrap}.badge--md{font-size:var(--text-xs);padding:2px var(--space-2)}.badge--sm{font-size:9px;padding:1px 6px}.badge--default{background:var(--btn-border);color:var(--color-text-muted)}.badge--success{background:var(--alert-success-bg);color:var(--alert-success-text)}.badge--error{background:var(--alert-error-bg);color:var(--alert-error-text)}.badge--warning{background:var(--alert-warning-bg);color:var(--alert-warning-text)}.badge--info{background:var(--alert-info-bg);color:var(--alert-info-text)}.spinner-wrapper{display:inline-flex;align-items:center;justify-content:center}.spinner-ring{border-radius:50%;border-style:solid;border-color:var(--ui-spinner-track);border-top-color:var(--ui-loader-start);animation:spin 1s linear infinite}.spinner-ring--sm{width:16px;height:16px;border-width:2px}.spinner-ring--md{width:24px;height:24px;border-width:3px}.spinner-ring--lg{width:32px;height:32px;border-width:4px}@media(prefers-reduced-motion:reduce){.spinner-ring{animation:none;opacity:.5}}.hub-layout{min-height:100vh;background:var(--bg-color);padding:var(--space-6)}.hub-header{display:flex;justify-content:space-between;align-items:center;max-width:860px;margin:0 auto var(--space-6) auto}.hub-header__title{font-size:28px;color:var(--text-main);margin:0 0 4px}.hub-header__sub{font-size:var(--text-md);color:var(--text-main);opacity:.7;margin:0}.hub-header__sub strong{color:var(--selection-color)}.hub-header__actions{display:flex;align-items:center;gap:var(--space-3)}.hub-header__logout{padding:10px 20px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--btn-border);color:var(--text-main);cursor:pointer;transition:background var(--transition-normal)}.hub-header__logout:hover{background:var(--btn-hover)}.hub-header__admin{padding:8px 16px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--btn-border);color:var(--text-main);cursor:pointer;font-size:var(--text-md);transition:background var(--transition-normal);margin-right:var(--space-2)}.hub-header__admin:hover{background:var(--btn-hover)}.admin-overlay{position:fixed;inset:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.admin-panel{background:var(--panel-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow);width:100%;max-width:700px;max-height:80vh;display:flex;flex-direction:column}.admin-panel__header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--btn-border)}.admin-panel__title{margin:0;font-size:var(--text-xl)}.admin-panel__close{background:transparent;border:none;font-size:var(--text-xl);cursor:pointer;color:var(--text-main);opacity:.6;transition:opacity var(--transition-fast)}.admin-panel__close:hover{opacity:1}.admin-panel__content{overflow-y:auto;padding:var(--space-5) var(--space-6)}.admin-panel__loading,.admin-panel__error{opacity:.7;font-size:var(--text-md)}.admin-table{width:100%;border-collapse:collapse;font-size:var(--text-md)}.admin-table th,.admin-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--btn-border)}.admin-table th{opacity:.6;font-weight:var(--font-semibold)}.admin-table__email{font-size:var(--text-md)}.admin-table__toggle{text-align:center}.admin-role-btn{padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--text-main);cursor:pointer;font-size:var(--text-sm);transition:background var(--transition-fast)}.admin-role-btn:hover{background:var(--btn-hover)}.admin-role-btn--admin{border-color:var(--selection-color);color:var(--selection-color)}.admin-toggle{position:relative;display:inline-block;width:36px;height:20px}.admin-toggle__input{opacity:0;width:0;height:0}.admin-toggle__slider{position:absolute;inset:0;background:var(--btn-border);border-radius:20px;cursor:pointer;transition:background var(--transition-normal)}.admin-toggle__slider:before{content:"";position:absolute;width:14px;height:14px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform var(--transition-normal)}.admin-toggle__input:checked+.admin-toggle__slider{background:var(--selection-color)}.admin-toggle__input:checked+.admin-toggle__slider:before{transform:translate(16px)}.admin-toggle__input:disabled+.admin-toggle__slider{opacity:.5;cursor:not-allowed}.hub-grid{display:flex;gap:var(--space-5);justify-content:center;flex-wrap:wrap;max-width:860px;margin:0 auto}.app-card{display:block;padding:30px;border-radius:var(--radius-lg);text-decoration:none;color:var(--text-main);width:240px;text-align:left;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.app-card--active{background:var(--panel-bg);border:1px solid var(--btn-border);box-shadow:var(--shadow)}.app-card--active:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.app-card--disabled{background:transparent;border:1px dashed var(--btn-border);opacity:.5;pointer-events:none}.app-card__icon{font-size:40px;display:block;margin-bottom:15px}.app-card__name{font-size:var(--text-xl);margin:0 0 10px}.app-card__desc{font-size:var(--text-md);opacity:.7;margin:0;line-height:var(--line-height-normal)}.app-card__badge{display:inline-block;margin-top:12px;font-size:var(--text-sm);background:var(--btn-hover);padding:3px 8px;border-radius:var(--radius-sm);opacity:.8}@media(max-width:768px){.hub-layout{padding:var(--space-4)}.hub-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.hub-header__actions{width:100%;justify-content:flex-end}.hub-grid{flex-direction:column;align-items:center;gap:var(--space-4)}.app-card{width:100%;max-width:400px}.admin-panel{max-width:100%;max-height:95vh;border-radius:var(--radius-md)}.admin-overlay{padding:var(--space-3)}.admin-panel__content{overflow-x:auto}}#topics-dim-overlay{position:absolute;inset:0;background:var(--bg-color, #f8fafc);pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:4}#topics-dim-overlay.visible{opacity:.78}#topics-cloud-layer{position:absolute;top:0;left:0;width:0;height:0;transform-origin:0 0;pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:5}#topics-cloud-layer.visible{opacity:1}.topics-cluster{position:absolute}@keyframes float-word{0%,to{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-18px)}}.topic-word{display:inline-block;font-family:var(--font-nodes, var(--font-main));animation:float-word var(--float-duration, 4s) ease-in-out infinite;animation-delay:var(--float-delay, 0s);letter-spacing:.02em;text-shadow:0 2px 8px rgba(0,0,0,.15)}:root{--breathing-base-dark: var(--neuro-breathing-base-dark);--breathing-peak-dark: var(--neuro-breathing-peak-dark);--breathing-base-light: var(--neuro-breathing-base-light);--breathing-peak-light: var(--neuro-breathing-peak-light);--breathing-duration: 10s}@keyframes breathing-dark{0%,to{background-color:var(--breathing-base-dark)}50%{background-color:var(--breathing-peak-dark)}}@keyframes breathing-light{0%,to{background-color:var(--breathing-base-light)}50%{background-color:var(--breathing-peak-light)}}.neuro-breathing-active{animation:breathing-dark var(--breathing-duration) ease-in-out infinite;will-change:background-color;transition:background-color .3s ease}body.neuro-breathing-active:not(.dark-theme){animation:breathing-light var(--breathing-duration) ease-in-out infinite}.neuro-breathing-paused{animation-play-state:paused;transition:background-color .3s ease}@media(prefers-reduced-motion:reduce){.neuro-breathing-active{animation:none}}.neuro-config-dropdown{position:absolute;top:100%;right:0;background:var(--panel-bg, #1e293b);border:1px solid var(--btn-border, rgba(255,255,255,.1));border-radius:var(--radius-md, 8px);padding:8px 0;min-width:240px;z-index:1000;box-shadow:var(--shadow, 0 8px 24px rgba(0,0,0,.3));display:none;margin-top:4px}body:not(.dark-theme) .neuro-config-dropdown{background:var(--panel-bg);border-color:#0000001a;box-shadow:0 8px 24px #0000001f}.neuro-config-dropdown.is-open{display:block;animation:fadeIn var(--transition-fast, .15s ease)}.neuro-config-item{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;cursor:pointer;font-size:13px;color:var(--text-main, #e2e8f0);transition:background .15s ease;gap:8px}body:not(.dark-theme) .neuro-config-item{color:var(--text-main)}.neuro-config-item:hover{background:var(--btn-hover, rgba(255,255,255,.05))}body:not(.dark-theme) .neuro-config-item:hover{background:#0000000a}.neuro-config-item label:not(.neuro-toggle){cursor:pointer;flex:1;-webkit-user-select:none;user-select:none}.neuro-toggle{position:relative;width:28px;height:16px;flex:none}.neuro-toggle input{opacity:0;width:0;height:0;position:absolute}.neuro-toggle-slider{position:absolute;inset:0;background:#ffffff26;border-radius:18px;transition:background .2s ease;cursor:pointer}body:not(.dark-theme) .neuro-toggle-slider{background:#0000002e}.neuro-toggle-slider:before{content:"";position:absolute;height:10px;width:10px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s ease}.neuro-toggle input:checked+.neuro-toggle-slider{background:var(--neuro-form-accent-active)}body:not(.dark-theme) .neuro-toggle input:checked+.neuro-toggle-slider{background:var(--neuro-form-accent-active)}.neuro-toggle input:checked+.neuro-toggle-slider:before{transform:translate(12px)}.neuro-toggle input:focus-visible+.neuro-toggle-slider{outline:2px solid var(--selection-color, #6366f1);outline-offset:2px}.neuro-config-separator{height:1px;background:var(--btn-border, rgba(255,255,255,.08));margin:4px 0}body:not(.dark-theme) .neuro-config-separator{background:#00000014}.neuro-config-header{padding:6px 14px 4px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.5;color:var(--text-main, #e2e8f0);pointer-events:none}body:not(.dark-theme) .neuro-config-header{color:var(--text-main)}#neuro-config-container{position:relative;display:inline-block}.node-tunnel-inactive{filter:saturate(.15) opacity(.25);transition:filter .2s ease,opacity .2s ease;will-change:filter,opacity}body.dark-theme .node-tunnel-inactive{filter:saturate(.15) opacity(.2)}.node-tunnel-inactive.node-emphasized{filter:saturate(.15) opacity(.25)}body.dark-theme .node-tunnel-inactive.node-emphasized{filter:saturate(.15) opacity(.2)}.node-tunnel-active{filter:none;opacity:1;transition:filter .3s ease,opacity .3s ease}@media(prefers-reduced-motion:reduce){.node-tunnel-inactive{filter:opacity(.3);transition:none}.node-tunnel-active{transition:none}}@keyframes synaptic-pulse{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}path.neuro-pulse-active{stroke-dasharray:8,4;animation:synaptic-pulse 1.5s linear infinite;will-change:stroke-dashoffset}path.neuro-pulse-active[data-path-reversed]{animation-direction:reverse}body.dark-theme path.neuro-pulse-active{filter:drop-shadow(0 0 4px var(--branch-color, currentColor))}@media(prefers-reduced-motion:reduce){path.neuro-pulse-active{animation:none;stroke-dasharray:none}}.neuro-confidence{position:absolute;top:4px;right:4px;width:14px;height:14px;border-radius:50%;cursor:pointer;font-size:10px;display:flex;align-items:center;justify-content:center;z-index:10;transition:transform .15s ease;-webkit-user-select:none;user-select:none;background:none;border:none;padding:0;line-height:1}.neuro-confidence:hover{transform:scale(1.2)}.neuro-confidence:focus-visible{outline:2px solid currentColor;outline-offset:2px}.neuro-confidence[data-level="0"]{color:var(--neuro-confidence-low-color)}.neuro-confidence[data-level="1"]{color:var(--neuro-confidence-medium-color)}.neuro-confidence[data-level="2"]{color:var(--neuro-confidence-high-color)}.node-tag-important .node-text,.node-tag-doubt .node-text,.node-tag-insight .node-text,.node-tag-mastered .node-text{background-repeat:repeat-y!important;background-size:100% 1.2em!important;background-position:0 var(--space-1)!important}.node-tag-important .node-text{background-image:linear-gradient(transparent 15%,rgba(249,115,22,.35) 15%,rgba(249,115,22,.35) 85%,transparent 85%)!important}.node-tag-doubt .node-text{background-image:linear-gradient(transparent 15%,rgba(239,68,68,.35) 15%,rgba(239,68,68,.35) 85%,transparent 85%)!important}.node-tag-insight .node-text{background-image:linear-gradient(transparent 15%,rgba(234,179,8,.35) 15%,rgba(234,179,8,.35) 85%,transparent 85%)!important}.node-tag-mastered .node-text{background-image:linear-gradient(transparent 15%,rgba(34,197,94,.35) 15%,rgba(34,197,94,.35) 85%,transparent 85%)!important}body.dark-theme .node-tag-important .node-text{background-image:linear-gradient(transparent 15%,rgba(251,146,60,.45) 15%,rgba(251,146,60,.45) 85%,transparent 85%)!important}body.dark-theme .node-tag-doubt .node-text{background-image:linear-gradient(transparent 15%,rgba(248,113,113,.45) 15%,rgba(248,113,113,.45) 85%,transparent 85%)!important}body.dark-theme .node-tag-insight .node-text{background-image:linear-gradient(transparent 15%,rgba(253,224,71,.45) 15%,rgba(253,224,71,.45) 85%,transparent 85%)!important}body.dark-theme .node-tag-mastered .node-text{background-image:linear-gradient(transparent 15%,rgba(134,239,172,.45) 15%,rgba(134,239,172,.45) 85%,transparent 85%)!important}.node-tag-icon{position:absolute;bottom:-15px;left:4px;font-size:11px;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:5;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}#btn-emotion-tag .btn-tag-icon{display:block;line-height:0}#btn-emotion-tag.has-tag{opacity:1;box-shadow:0 1px 3px #00000040}.neuro-tag-menu{position:fixed;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, rgba(255,255,255,.1));border-radius:8px;padding:6px 0;z-index:9999;box-shadow:0 8px 24px #0000004d;min-width:160px}body:not(.dark-theme) .neuro-tag-menu{background:#fff;border-color:#0000001a;box-shadow:0 8px 24px #0000001a}.neuro-tag-menu-item{display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;font-size:13px;color:var(--text-main, #e2e8f0);transition:background .15s;-webkit-user-select:none;user-select:none}.neuro-tag-menu-item:hover{background:#ffffff0f}body:not(.dark-theme) .neuro-tag-menu-item:hover{background:#0000000a}.neuro-tag-menu-item.active{font-weight:600}.neuro-tag-menu-item.active:after{content:" ✓";margin-left:auto;opacity:.7}.neuro-tag-menu-separator{height:1px;background:var(--border-color, rgba(255,255,255,.08));margin:4px 0}.neuro-tag-menu-action{font-size:12px;opacity:.7}.neuro-tag-menu-action:hover{opacity:1}.neuro-tag-form-active{padding:12px;min-width:220px}.neuro-tag-form{display:flex;flex-direction:column;gap:10px}.neuro-tag-form-section-label{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.5;color:var(--text-main, #e2e8f0);margin-bottom:-4px}body:not(.dark-theme) .neuro-tag-form-section-label{color:var(--color-text-muted)}.neuro-tag-emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:3px}.neuro-tag-emoji-cell{display:flex;align-items:center;justify-content:center;font-size:15px;width:28px;height:28px;border-radius:5px;border:1px solid transparent;background:transparent;cursor:pointer;transition:background .12s,border-color .12s;padding:0}.neuro-tag-emoji-cell:hover{background:#ffffff14}body:not(.dark-theme) .neuro-tag-emoji-cell:hover{background:#0000000f}.neuro-tag-emoji-cell.selected{background:#818cf833;border-color:var(--neuro-form-accent)}.neuro-tag-form-text{width:100%;box-sizing:border-box;font-size:13px;border-radius:5px;border:1px solid var(--border-color, rgba(255,255,255,.15));background:var(--bg-primary, #0f172a);color:var(--text-main, #e2e8f0);padding:5px 9px;outline:none}body:not(.dark-theme) .neuro-tag-form-text{background:var(--bg-color);color:var(--text-main);border-color:#00000026}.neuro-tag-form-text:focus{border-color:var(--neuro-form-accent)}.neuro-tag-form-color-row{display:flex;align-items:center;gap:8px}.neuro-tag-form-color{width:36px;height:28px;border-radius:5px;border:1px solid var(--border-color, rgba(255,255,255,.15));background:none;cursor:pointer;padding:2px}.neuro-tag-form-color-label{font-size:12px;opacity:.6;color:var(--text-main, #e2e8f0)}body:not(.dark-theme) .neuro-tag-form-color-label{color:var(--color-text-muted)}.neuro-tag-form-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:2px}.neuro-tag-form-btn{font-size:12px;padding:5px 12px;border-radius:5px;border:1px solid transparent;cursor:pointer;transition:background .15s}.neuro-tag-form-btn.cancel{background:transparent;border-color:var(--border-color, rgba(255,255,255,.15));color:var(--text-main, #e2e8f0)}.neuro-tag-form-btn.cancel:hover{background:#ffffff0f}body:not(.dark-theme) .neuro-tag-form-btn.cancel{color:var(--color-text-muted);border-color:#00000026}body:not(.dark-theme) .neuro-tag-form-btn.cancel:hover{background:#0000000a}.neuro-tag-form-btn.save{background:var(--neuro-form-accent);color:var(--color-text-on-primary);border-color:var(--neuro-form-accent)}.neuro-tag-form-btn.save:hover{background:var(--neuro-form-accent-active);border-color:var(--neuro-form-accent-active)}#btn-recall-mode{font-size:16px;padding:6px 10px;transition:background .15s ease,color .15s ease}#btn-recall-mode[data-recall-mode=reveal]{background:#fbbf2426;border-color:#fbbf24;color:#fbbf24}#btn-recall-mode[data-recall-mode=generate]{background:#a78bfa26;border-color:#a78bfa;color:#a78bfa}#btn-recall-mode.active{border-radius:4px}.node-recall-hidden{display:none!important}.recall-placeholder{position:absolute;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:2px dashed rgba(255,255,255,.2);border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease,border-color .15s ease;background:#ffffff08;min-width:60px;min-height:36px;box-sizing:border-box}body:not(.dark-theme) .recall-placeholder{border-color:#00000026;background:#00000005}.recall-placeholder:hover{background:#ffffff12;border-color:#ffffff59}.recall-placeholder:focus{outline:2px solid var(--selection-color, #6366f1);outline-offset:2px}body:not(.dark-theme) .recall-placeholder:hover{background:#0000000d;border-color:#00000040}.recall-placeholder.recall-priority-high{border-color:#fbbf2480;background:#fbbf240d}.recall-placeholder.recall-priority-medium{border-color:#60a5fa80;background:#60a5fa0d}.recall-question-mark{font-size:20px;font-weight:700;color:#ffffff94;line-height:1}body:not(.dark-theme) .recall-question-mark{color:#00000073}.recall-placeholder:hover .recall-question-mark{color:#ffffffd9}body:not(.dark-theme) .recall-placeholder:hover .recall-question-mark{color:#000000b3}.recall-tag-hint{font-size:13px;opacity:.6;line-height:1}.recall-generate{flex-direction:column;align-items:stretch;gap:6px;padding:10px;cursor:default;min-width:160px}.recall-gen-label{font-size:11px;opacity:.55;text-transform:uppercase;letter-spacing:.05em;color:var(--text-main, #e2e8f0)}.recall-gen-textarea{resize:vertical;border:1px solid rgba(255,255,255,.15);border-radius:5px;padding:6px 8px;background:#ffffff0a;color:var(--text-main, #e2e8f0);font-size:13px;font-family:var(--font-main, inherit);min-height:60px;transition:border-color .15s ease}body:not(.dark-theme) .recall-gen-textarea{border-color:#0000001f;background:#00000005;color:var(--text-main, #1e293b)}.recall-gen-textarea:focus{outline:none;border-color:#a78bfa80}.recall-reveal-btn{align-self:flex-end;padding:5px 14px;border-radius:5px;border:1px solid rgba(255,255,255,.15);background:#ffffff12;color:var(--text-main, #e2e8f0);font-size:12px;cursor:pointer;transition:background .15s ease}.recall-reveal-btn:hover{background:#ffffff1f}body:not(.dark-theme) .recall-reveal-btn{border-color:#0000001f;background:#0000000a;color:var(--text-main, #1e293b)}.recall-comparison{position:absolute;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:var(--panel-bg, #1e293b);box-shadow:0 4px 16px #0000004d;min-width:200px;z-index:5}body:not(.dark-theme) .recall-comparison{border-color:#00000014;background:#fff;box-shadow:0 4px 16px #0000001a}.recall-comparison-user,.recall-comparison-real{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:6px}.recall-comparison-user{background:#a78bfa14;border:1px solid rgba(167,139,250,.2)}.recall-comparison-real{background:#34d3990f;border:1px solid rgba(52,211,153,.2)}.recall-comparison-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.55;font-weight:600;color:var(--text-main, #e2e8f0)}.recall-comparison-text{font-size:13px;color:var(--text-main, #e2e8f0);line-height:1.4;word-break:break-word}.recall-revealed{animation:recall-fade-in .4s ease forwards}@keyframes recall-fade-in{0%{opacity:0}to{opacity:1}}.recall-confidence-prompt{display:flex;gap:4px;margin-top:8px;flex-wrap:wrap}.recall-confidence-btn{padding:3px 10px;border-radius:5px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:var(--text-main, #e2e8f0);font-size:11px;cursor:pointer;transition:background .15s ease;white-space:nowrap}.recall-confidence-btn:hover{background:#ffffff1f}body:not(.dark-theme) .recall-confidence-btn{border-color:#0000001a;background:#00000008;color:var(--text-main, #1e293b)}body:not(.dark-theme) .recall-confidence-btn:hover{background:#00000012}.chunking-counter{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;border-radius:7px;font-size:10px;font-weight:600;padding:0 3px;position:absolute;bottom:-16px;right:4px;pointer-events:auto;cursor:help;z-index:5}.level-3 .chunking-counter,.level-4 .chunking-counter{min-width:12px;height:12px;border-radius:6px;font-size:9px;bottom:-13px;right:3px}.chunking-counter[data-tooltip]{overflow:visible}.chunking-counter[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--panel-bg, #1e293b);color:var(--text-main, #f1f5f9);border:1px solid var(--btn-border, rgba(255,255,255,.08));font-size:var(--text-sm, 12px);font-weight:400;line-height:1.4;padding:5px 9px;border-radius:var(--radius-sm, 6px);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast, .15s ease);z-index:var(--z-toast, 1000);box-shadow:var(--shadow, 0 4px 15px rgba(0,0,0,.15))}.chunking-counter[data-tooltip]:hover:after{opacity:1}body:not(.dark-theme) .chunking-counter[data-tooltip]:after{background:#1e293b;color:#f1f5f9;border-color:transparent;box-shadow:0 4px 12px #0000002e}.chunking-counter.chunking-alert{background:#dc26261f;color:#dc2626;border:1px solid rgba(220,38,38,.35)}body.dark-theme .chunking-counter.chunking-alert{background:#dc26262e;color:#f87171;border-color:#f871714d}.recall-placeholder.recall-brain-dump{flex-direction:column;gap:4px;min-width:80px;padding:10px 16px;border-color:#6366f166;background:#6366f10f;cursor:pointer}.recall-placeholder.recall-brain-dump:hover{border-color:#6366f1b3;background:#6366f11f}body:not(.dark-theme) .recall-placeholder.recall-brain-dump{border-color:#6366f159;background:#6366f10d}.recall-brain-icon{font-size:18px;line-height:1}.recall-brain-hint{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.brain-dump-modal{max-width:560px;width:95vw}.brain-dump-instruction{font-size:12px;opacity:.65;margin:0 0 10px}.brain-dump-textarea{width:100%;min-height:130px;background:var(--panel-bg, #1e293b);color:var(--text-main, #e2e8f0);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:10px 12px;font-size:13px;font-family:inherit;resize:vertical;box-sizing:border-box;outline:none}body:not(.dark-theme) .brain-dump-textarea{background:#f8fafc;color:#1e293b;border-color:#0000001f}.brain-dump-textarea:focus{border-color:#6366f180}.brain-dump-actions{display:flex;gap:8px;margin:10px 0 4px;flex-wrap:wrap}.brain-dump-btn-primary{background:#6366f1;color:#fff;border:none;padding:8px 18px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease}.brain-dump-btn-primary:hover{background:#4f46e5}.brain-dump-btn-primary:disabled{opacity:.5;cursor:default}.brain-dump-btn-secondary{background:transparent;color:var(--text-main, #e2e8f0);border:1px solid rgba(255,255,255,.2);padding:8px 18px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.brain-dump-btn-secondary:hover{background:#ffffff0f;border-color:#ffffff59}body:not(.dark-theme) .brain-dump-btn-secondary{color:#1e293b;border-color:#0000002e}body:not(.dark-theme) .brain-dump-btn-secondary:hover{background:#0000000a}#brain-dump-results{margin-top:14px;max-height:320px;overflow-y:auto;display:none}.brain-dump-summary{font-size:13px;line-height:1.55;padding:10px 12px;background:#6366f112;border-left:3px solid #6366f1;border-radius:4px;margin-bottom:10px}body:not(.dark-theme) .brain-dump-summary{background:#6366f10d}.brain-dump-section{margin-bottom:8px;font-size:12px}.brain-dump-section ul{margin:4px 0 0 16px;padding:0;line-height:1.6}.brain-dump-section-title{font-weight:600;font-size:12px;margin-bottom:2px}.brain-dump-ok .brain-dump-section-title{color:#4ade80}.brain-dump-gap .brain-dump-section-title{color:#f87171}.brain-dump-imprecise .brain-dump-section-title{color:#fbbf24}.brain-dump-suggest .brain-dump-section-title{color:#60a5fa}body:not(.dark-theme) .brain-dump-ok .brain-dump-section-title{color:#16a34a}body:not(.dark-theme) .brain-dump-gap .brain-dump-section-title{color:#dc2626}body:not(.dark-theme) .brain-dump-imprecise .brain-dump-section-title{color:#d97706}body:not(.dark-theme) .brain-dump-suggest .brain-dump-section-title{color:#2563eb}.brain-dump-error{color:#f87171;font-size:13px;margin:0}@media(prefers-reduced-motion:reduce){.chunking-counter[data-tooltip]:after{transition:none}}.neuro-info-btn{flex-shrink:0;background:none;border:1.25px solid currentColor;color:var(--text-muted, rgba(255,255,255,.3));cursor:pointer;padding:0;width:16px;height:16px;border-radius:50%;line-height:1;font-size:11px;font-style:italic;font-family:Georgia,Times New Roman,serif;justify-content:center;transition:color .15s ease,background .15s ease}.neuro-info-btn:hover{color:var(--text-main, #e2e8f0);background:#ffffff14}body:not(.dark-theme) .neuro-info-btn{color:#0000004d}body:not(.dark-theme) .neuro-info-btn:hover{color:#1e293b;background:#0000000f}.neuro-info-overlay{display:none;position:fixed;inset:0;background:#0000008c;z-index:2000;align-items:center;justify-content:center}.neuro-info-overlay.is-open{display:flex}.neuro-info-card{background:var(--panel-bg, #1e293b);border:1px solid var(--btn-border, rgba(255,255,255,.1));border-radius:var(--radius-lg, 12px);padding:22px 24px 20px;max-width:420px;width:calc(100% - 32px);box-shadow:0 24px 64px #0000004d;position:relative;animation:fadeIn .15s ease}body:not(.dark-theme) .neuro-info-card{background:#fff;border-color:#0000001a;box-shadow:0 24px 64px #00000026}.neuro-info-close{position:absolute;top:12px;right:14px;background:none;border:none;color:var(--text-muted, rgba(255,255,255,.4));font-size:20px;cursor:pointer;padding:0 5px;border-radius:4px;line-height:1;transition:color .15s ease}.neuro-info-close:hover{color:var(--text-main, #e2e8f0)}body:not(.dark-theme) .neuro-info-close{color:#00000059}body:not(.dark-theme) .neuro-info-close:hover{color:#1e293b}.neuro-info-title{font-size:15px;font-weight:600;color:var(--text-main, #e2e8f0);margin:0 28px 16px 0}body:not(.dark-theme) .neuro-info-title{color:#1e293b}.neuro-info-section{margin-bottom:14px}.neuro-info-section:last-child{margin-bottom:0}.neuro-info-section-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#818cf8;margin-bottom:5px}body:not(.dark-theme) .neuro-info-section-label{color:#4f46e5}.neuro-info-section-text{font-size:12.5px;line-height:1.65;color:var(--text-muted, rgba(255,255,255,.7))}body:not(.dark-theme) .neuro-info-section-text{color:#475569}.neuro-info-badge{display:inline-block;background:#6366f11f;color:#818cf8;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500;margin-top:8px}body:not(.dark-theme) .neuro-info-badge{background:#6366f114;color:#4f46e5}.node-health-suggestion{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--panel-bg, #1e293b);border:1px solid var(--btn-border, rgba(255,255,255,.12));border-radius:var(--radius-md, 8px);padding:8px 10px;z-index:200;display:flex;flex-direction:column;gap:6px;min-width:180px;max-width:280px;box-shadow:0 4px 20px #00000059;font-size:12px;animation:fadeIn var(--transition-fast, .15s ease)}body:not(.dark-theme) .node-health-suggestion{background:#fff;border-color:#0000001a;box-shadow:0 4px 20px #0000001f}.node-health-preview{display:flex;align-items:center;gap:6px;color:var(--text-main, #e2e8f0);flex-wrap:wrap}body:not(.dark-theme) .node-health-preview{color:#1e293b}.node-health-keyword-display{font-weight:700}.node-health-secondary-display{opacity:.6;font-size:11px}.node-health-actions{display:flex;gap:4px}.node-health-btn{flex:1;padding:4px 6px;border:1px solid var(--btn-border, rgba(255,255,255,.15));border-radius:var(--radius-sm, 4px);background:transparent;color:var(--text-main, #e2e8f0);font-size:11px;cursor:pointer;transition:background .15s ease;white-space:nowrap;font-family:inherit}body:not(.dark-theme) .node-health-btn{border-color:#0000001f;color:#1e293b}.node-health-btn:hover{background:var(--btn-hover, rgba(255,255,255,.08))}body:not(.dark-theme) .node-health-btn:hover{background:#0000000d}.node-health-apply{color:#4ade80;border-color:#4ade804d}body:not(.dark-theme) .node-health-apply{color:#16a34a;border-color:#16a34a4d}.node-health-ignore,.node-health-cancel{color:#f87171;border-color:#f871714d}body:not(.dark-theme) .node-health-ignore,body:not(.dark-theme) .node-health-cancel{color:#dc2626;border-color:#dc26264d}.node-health-edit-form{display:flex;flex-direction:column;gap:6px}.node-health-edit-keyword,.node-health-edit-icon{padding:4px 8px;border:1px solid var(--btn-border, rgba(255,255,255,.15));border-radius:var(--radius-sm, 4px);background:#ffffff0d;color:var(--text-main, #e2e8f0);font-size:12px;width:100%;box-sizing:border-box;font-family:inherit}body:not(.dark-theme) .node-health-edit-keyword,body:not(.dark-theme) .node-health-edit-icon{background:#0000000a;color:#1e293b;border-color:#0000001f}.node-has-fulltext:after{content:attr(data-fulltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#0f172aeb;color:#f1f5f9;padding:4px 10px;border-radius:6px;font-size:11px;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis;pointer-events:none;opacity:0;transition:opacity .18s ease;z-index:300;border:1px solid rgba(255,255,255,.1)}body:not(.dark-theme) .node-has-fulltext:after{background:#1e293be6}.node-has-fulltext:hover:after,.node-has-fulltext:focus-within:after{opacity:1}.node-has-tooltips:after{display:none!important}.node-tooltip-popup{position:fixed;transform:translate(-50%) translateY(-100%);background:#0f172aeb;color:#f1f5f9;padding:6px 12px;border-radius:8px;font-size:11px;max-width:280px;overflow:hidden;white-space:pre-wrap;word-wrap:break-word;pointer-events:none;z-index:300;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 12px #0000004d;animation:tooltipFadeIn .15s ease}body:not(.dark-theme) .node-tooltip-popup{background:#1e293be6}.node-tooltip-line{padding:2px 0;line-height:1.4}.node-tooltip-separator{border:none;border-top:1px solid rgba(255,255,255,.15);margin:4px 0}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}.tooltip-manager-menu{min-width:200px;max-width:280px}.tooltip-item-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.tooltip-item-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.tooltip-item-actions{display:flex;gap:2px;flex-shrink:0}.tooltip-action-btn{background:none;border:none;cursor:pointer;padding:2px 4px;font-size:12px;opacity:.6;border-radius:4px;transition:opacity .12s,background .12s}.tooltip-action-btn:hover{opacity:1;background:#ffffff1a}.tooltip-inline-input{width:100%;padding:6px 10px;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#ffffff0d;color:inherit;font-size:12px;outline:none}.tooltip-inline-input:focus{border-color:#6366f199}.tooltip-inline-input::placeholder{opacity:.4}.tooltip-add-btn.disabled{cursor:not-allowed}@media(prefers-reduced-motion:reduce){.node-health-suggestion{animation:none}}.fsv-edit-parent{display:flex;gap:6px;align-items:center}.fsv-edit-children{display:flex;flex-direction:column;gap:4px}.fsv-child-row{display:flex;align-items:center;gap:4px}.fsv-marker{font-size:14px;flex-shrink:0;min-width:18px;text-align:center}.fsv-child-icon{width:44px;flex-shrink:0;padding:3px 6px;border:1px solid var(--btn-border, rgba(255,255,255,.15));border-radius:var(--radius-sm, 4px);background:#ffffff0d;color:var(--text-main, #e2e8f0);font-size:12px;font-family:inherit;text-align:center}.fsv-child-text{flex:1;padding:3px 6px;border:1px solid var(--btn-border, rgba(255,255,255,.15));border-radius:var(--radius-sm, 4px);background:#ffffff0d;color:var(--text-main, #e2e8f0);font-size:12px;font-family:inherit}.fsv-child-remove{padding:2px 6px;font-size:13px;line-height:1;flex-shrink:0}body:not(.dark-theme) .fsv-child-icon,body:not(.dark-theme) .fsv-child-text{background:#0000000a;color:#1e293b;border-color:#0000001f}.ci-body{display:flex;flex-direction:column;gap:var(--space-4)}.ci-wizard__subtitle{margin:0;font-size:var(--text-sm);color:var(--text-main);opacity:.75;text-align:center}.ci-wizard__options{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.ci-wizard__option-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);min-width:110px;background:var(--btn-bg);border:2px solid var(--btn-border);border-radius:var(--radius-lg);color:var(--text-main);cursor:pointer;font-family:inherit;font-size:var(--text-md);transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.ci-wizard__option-btn:hover,.ci-wizard__option-btn:focus-visible{background:var(--btn-hover);border-color:var(--selection-color);outline:none}.ci-wizard__option-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--selection-color) 40%,transparent)}.ci-wizard__option-btn--skip{opacity:.7;border-style:dashed}.ci-wizard__option-btn--skip:hover,.ci-wizard__option-btn--skip:focus-visible{opacity:1;border-style:dashed}.ci-wizard__option-icon{font-size:2rem;line-height:1}.ci-wizard__option-label{font-size:var(--text-sm);font-weight:var(--font-semibold);text-align:center}.ci-preview__image{display:block;max-width:100%;max-height:240px;margin:0 auto;border-radius:var(--radius-md);object-fit:contain;border:1px solid var(--btn-border)}.ci-preview__actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.ci-btn{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-md);font-weight:var(--font-semibold);cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast)}.ci-btn--primary{background:var(--selection-color);color:var(--color-text-on-primary);border:none}.ci-btn--primary:hover{opacity:.85}.ci-btn--primary:focus-visible{outline:2px solid var(--selection-color);outline-offset:2px}.ci-btn--secondary{background:var(--btn-bg);color:var(--text-main);border:1px solid var(--btn-border)}.ci-btn--secondary:hover{background:var(--btn-hover)}.ci-btn--secondary:focus-visible{outline:2px solid var(--selection-color);outline-offset:2px}.ci-btn--back{background:none;color:var(--text-main);border:none;font-size:var(--text-sm);opacity:.7;cursor:pointer;padding:var(--space-1) 0;font-family:inherit;align-self:flex-start}.ci-btn--back:hover,.ci-btn--back:focus-visible{opacity:1;outline:none;text-decoration:underline}.ci-emoji-gallery{display:flex;flex-direction:column;gap:var(--space-3);max-height:360px;overflow-y:auto}.ci-emoji-category{display:flex;flex-direction:column;gap:var(--space-2)}.ci-emoji-category__label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-main);opacity:.65;text-transform:uppercase;letter-spacing:.04em}.ci-emoji-category__empty{font-size:var(--text-sm);color:var(--text-main);opacity:.5;margin:0}.ci-emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:var(--space-1)}.ci-emoji-btn{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:var(--btn-bg);border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);padding:0;line-height:1}.ci-emoji-btn:hover{background:var(--btn-hover);border-color:var(--selection-color);transform:scale(1.15)}.ci-emoji-btn:focus-visible{outline:2px solid var(--selection-color);outline-offset:1px;background:var(--btn-hover)}.central-image-placeholder{position:absolute;bottom:100%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;margin-bottom:6px;border:2px dashed var(--btn-border, #94a3b8);border-radius:var(--radius-lg, 8px);cursor:pointer;opacity:.7;transition:opacity var(--transition-fast, .2s),border-color var(--transition-fast, .2s);background:none;z-index:3}.central-image-placeholder:hover,.central-image-placeholder:focus-visible{opacity:1;border-color:var(--selection-color, #6366f1)}.central-image-placeholder:focus-visible{outline:2px solid var(--selection-color, #6366f1);outline-offset:2px}.central-image-placeholder__icon{font-size:1.5rem;line-height:1}.central-image-placeholder__label{font-size:var(--text-sm, 13px);font-weight:var(--font-semibold, 600);color:var(--text-main, #e2e8f0)}.central-image-placeholder__hint{font-size:11px;color:var(--text-main, #64748b);opacity:.6;text-align:center;max-width:200px}@media(max-width:768px){.ci-wizard__options{flex-direction:column;align-items:stretch}.ci-wizard__option-btn{flex-direction:row;justify-content:flex-start;padding:var(--space-3) var(--space-4);min-width:unset}.ci-wizard__option-icon{font-size:1.5rem}.ci-emoji-grid{grid-template-columns:repeat(6,1fr)}.ci-emoji-gallery{max-height:280px}}@media(max-width:400px){.ci-emoji-grid{grid-template-columns:repeat(5,1fr)}}.quick-tag-picker{position:fixed;z-index:1200;background:var(--panel-bg, #fff);border:1px solid var(--btn-border, #e2e8f0);border-radius:10px;box-shadow:var(--shadow, 0 4px 20px rgba(0,0,0,.15));padding:6px 4px;min-width:170px;max-height:360px;overflow-y:auto;outline:none}.quick-tag-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-main, #374151);opacity:.45;padding:4px 10px 2px}.quick-tag-item{display:flex;align-items:center;gap:8px;width:100%;padding:5px 10px;background:none;border:none;border-radius:6px;cursor:pointer;font-family:var(--font-main, inherit);font-size:13px;color:var(--text-main, #374151);text-align:left}.quick-tag-item:hover,.quick-tag-item:focus{background:var(--selection-color-light, rgba(129,140,248,.12));outline:none}.quick-tag-item.active{background:var(--selection-color-light, rgba(129,140,248,.15));font-weight:600}.quick-tag-icon{font-size:16px;width:20px;text-align:center;flex-shrink:0}.quick-tag-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-tag-separator{height:1px;background:var(--btn-border, #e2e8f0);margin:4px 8px}.quick-tag-add-btn{display:flex;align-items:center;gap:6px;width:100%;padding:5px 10px;background:none;border:none;border-radius:6px;cursor:pointer;font-family:var(--font-main, inherit);font-size:12px;color:var(--selection-color, #818cf8);font-weight:600;text-align:left}.quick-tag-add-btn:hover,.quick-tag-add-btn:focus{background:var(--selection-color-light, rgba(129,140,248,.12));outline:none}#tag-manager-modal .modal-content{max-width:520px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent}#tag-manager-modal .modal-content::-webkit-scrollbar{width:6px}#tag-manager-modal .modal-content::-webkit-scrollbar-track{background:transparent}#tag-manager-modal .modal-content::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:10px}#tag-manager-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#94a3b899}.tag-manager-section{margin-bottom:20px}.tag-manager-section-heading{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-main, #374151);opacity:.45;margin-bottom:8px}.tag-manager-card{display:flex;flex-direction:column;padding:0;background:var(--bg-color, #f8fafc);border-left:3px solid var(--selection-color, #818cf8);border-radius:8px;overflow:hidden}.tag-manager-card--hidden{opacity:.55}.tag-manager-card-main{display:flex;align-items:center;gap:10px;padding:8px 12px}.tag-hidden-badge{font-size:10px;padding:1px 6px;background:var(--btn-border, #e2e8f0);border-radius:4px;color:var(--text-main, #374151);opacity:.7;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.tag-manager-expand-btn{font-size:10px;color:var(--text-main, #374151)}.tag-manager-expand-btn:disabled{opacity:.25;cursor:default}.expand-chevron{display:inline-block;transition:transform .18s ease}.tag-manager-restore-btn:hover{background:#4ade8026;color:#16a34a}.tag-manager-usage-section{display:flex;flex-direction:column;padding:6px 12px 8px;gap:2px;border-top:1px solid var(--btn-border, #e2e8f0);margin-top:0}.tag-manager-usage-item{display:flex;align-items:center;gap:8px;padding:4px 6px;background:none;border:none;border-radius:6px;cursor:pointer;text-align:left;width:100%;font-family:var(--font-main, inherit);font-size:12px;color:var(--text-main, #374151)}.tag-manager-usage-item:hover,.tag-manager-usage-item:focus{background:var(--selection-color-light, rgba(129,140,248,.12));outline:none}.usage-item-dot{font-size:8px;color:var(--selection-color, #818cf8);opacity:.7;flex-shrink:0}.usage-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-manager-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.tag-manager-create-btn{padding:6px 14px;background:var(--selection-color, #818cf8);color:#fff;border:none;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer;margin-bottom:10px;display:block}.tag-manager-create-btn:disabled{opacity:.45;cursor:not-allowed}.tag-manager-create-btn:not(:disabled):hover{filter:brightness(1.1)}.tag-manager-limit-msg{font-size:11px;color:var(--text-main, #374151);opacity:.55}.tag-manager-empty{font-size:13px;color:var(--text-main, #374151);opacity:.6;text-align:center;padding:20px 0}.tag-manager-grid{display:flex;flex-direction:column;gap:6px}.tag-manager-card{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-color, #f8fafc);border-left:3px solid var(--selection-color, #818cf8);border-radius:8px}.tag-manager-preview{font-size:22px;width:28px;text-align:center;flex-shrink:0}.tag-manager-info{flex:1;min-width:0}.tag-manager-name{font-size:13px;font-weight:600;color:var(--text-main, #374151);display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-shortcut-badge{font-size:10px;padding:1px 5px;background:var(--btn-border, #e2e8f0);border-radius:4px;font-family:monospace;color:var(--text-main, #374151);border:none}.tag-manager-usage{font-size:11px;color:var(--text-main, #374151);opacity:.5;margin-top:2px}.tag-manager-actions{display:flex;gap:4px;flex-shrink:0}.tag-manager-action-btn{background:none;border:none;border-radius:6px;padding:4px 6px;cursor:pointer;font-size:14px;color:var(--text-main, #374151);opacity:.6}.tag-manager-action-btn:hover,.tag-manager-action-btn:focus{background:var(--btn-border, #e2e8f0);opacity:1;outline:none}.tag-manager-delete-btn:hover{background:#fee2e2;color:#ef4444}.tag-form{display:flex;flex-direction:column;gap:8px}.tag-form-preview-row{text-align:center;margin-bottom:4px}.tag-form-preview{font-size:36px;display:inline-block;line-height:1}.tag-form-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-main, #374151);opacity:.55}.tag-form-emoji-grid{display:flex;flex-wrap:wrap;gap:4px}.tag-form-emoji-cell{font-size:18px;padding:4px;border:2px solid transparent;border-radius:6px;background:none;cursor:pointer;line-height:1;width:34px;height:34px;display:flex;align-items:center;justify-content:center}.tag-form-emoji-cell:hover,.tag-form-emoji-cell:focus{background:var(--btn-border, #e2e8f0);outline:none}.tag-form-emoji-cell.selected{border-color:var(--selection-color, #818cf8);background:var(--selection-color-light, rgba(129,140,248,.12))}.tag-form-custom-emoji{width:100%;padding:5px 8px;border:1px solid var(--btn-border, #e2e8f0);border-radius:6px;background:var(--bg-color, #f8fafc);color:var(--text-main, #374151);font-size:13px;font-family:var(--font-main, inherit);margin-top:4px}.tag-form-text{width:100%;padding:6px 10px;border:1px solid var(--btn-border, #e2e8f0);border-radius:6px;background:var(--bg-color, #f8fafc);color:var(--text-main, #374151);font-size:13px;font-family:var(--font-main, inherit);box-sizing:border-box}.tag-form-text:focus{outline:2px solid var(--selection-color, #818cf8);outline-offset:1px}.tag-form-shortcut{width:80px;text-align:center;font-weight:700;font-family:monospace;letter-spacing:.1em}.tag-form-color-row{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.tag-form-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;outline:none}.tag-form-color-swatch:hover,.tag-form-color-swatch:focus{transform:scale(1.2);outline:2px solid var(--selection-color, #818cf8)}.tag-form-color-swatch.selected{border-color:var(--text-main, #374151);transform:scale(1.15)}.tag-form-color-input{width:30px;height:22px;border:1px solid var(--btn-border, #e2e8f0);border-radius:4px;padding:0;cursor:pointer}.tag-form-error{font-size:12px;color:#ef4444;min-height:16px}.tag-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.tag-form-btn{padding:7px 16px;border:none;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer}.tag-form-btn.cancel{background:var(--btn-border, #e2e8f0);color:var(--text-main, #374151)}.tag-form-btn.save{background:var(--selection-color, #818cf8);color:#fff}.tag-form-btn.delete{background:#ef4444;color:#fff}.tag-form-btn:hover{filter:brightness(1.08)}.tag-form-btn:focus{outline:2px solid var(--selection-color, #818cf8);outline-offset:2px}.tag-confirm-delete p{font-size:14px;color:var(--text-main, #374151);margin-bottom:16px;line-height:1.5}@media(prefers-reduced-motion:reduce){.tag-form-color-swatch{transform:none!important}}.buzan-flow-node{background:transparent!important;border:none!important;box-shadow:none!important;min-width:0!important;min-height:0!important;padding:0!important}.node-wrapper.buzan-flow-node.drop-target:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;background:var(--drop-target-color);box-shadow:0 0 12px var(--drop-target-color);pointer-events:none;z-index:10}.buzan-flow-node .node-text-wrap{pointer-events:none;height:0;overflow:visible;position:absolute}.buzan-flow-node .node-text-wrap .node-text{opacity:0;height:0;overflow:hidden}.buzan-flow-node .node-text-wrap .node-time{opacity:0;position:absolute;top:-34px;right:auto;left:50%;transform:translate(-50%);pointer-events:none;transition:opacity var(--transition-normal);white-space:nowrap}.buzan-flow-node:hover .node-text-wrap .node-time,.buzan-flow-node.buzan-text-hover .node-text-wrap .node-time{opacity:.8}.buzan-flow-node.buzan-flow-editing .node-text-wrap{pointer-events:auto;height:auto;overflow:visible;position:relative}.buzan-flow-node.buzan-flow-editing .node-text-wrap .node-text{opacity:1;height:auto;overflow:visible}.buzan-flow-text{pointer-events:auto;cursor:text;font-family:var(--font-nodes, var(--font-main, "Inter", sans-serif))}.buzan-flow-node.buzan-text-hover .drag-handle,.buzan-flow-node.buzan-text-hover .toggle-btn{opacity:1}.buzan-flow-node.node-tunnel-inactive{filter:saturate(.15) opacity(.25);transition:none}.buzan-taper{pointer-events:none}path.buzan-taper-spine{opacity:0!important}.buzan-taper.neuro-pulse-active{animation:taper-pulse var(--breathing-duration, 10s) ease-in-out infinite;will-change:filter}path.buzan-taper-spine.neuro-pulse-active{opacity:1!important}@keyframes taper-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}body.dark-theme .buzan-taper.neuro-pulse-active{animation-name:taper-pulse-dark}@keyframes taper-pulse-dark{0%,to{filter:brightness(1)}50%{filter:brightness(1.2) drop-shadow(0 0 3px var(--branch-color, currentColor))}}.buzan-text-layer{transition:opacity .1s ease}@media(prefers-reduced-motion:reduce){.buzan-flow-node,.buzan-flow-text,.buzan-taper,.buzan-text-layer{transition:none!important;animation:none!important}}.no-node-text .node-text-wrap{display:none!important}
