:root{font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;min-height:100%}body{min-height:100vh;color:#e2e8f0;background:#020617}button,input,select,textarea{font:inherit}.app-shell{--app-background: radial-gradient(circle at top, rgba(59, 130, 246, .22), transparent 28%), linear-gradient(180deg, #111827 0%, #020617 100%);--text-primary: #e2e8f0;--text-secondary: #cbd5e1;--text-muted: #9fb4d2;--panel-bg: rgba(2, 6, 23, .66);--panel-border: rgba(148, 163, 184, .18);--field-bg: rgba(15, 23, 42, .92);--field-text: #f8fafc;--accent: #7dd3fc;--accent-strong: #08111f;--selection-accent: #fef08a;--canvas-panel: rgba(9, 17, 31, .64);--node-label-bg: rgba(12, 16, 24, .76);--node-label-border: rgba(255, 255, 255, .22);--node-label-text: #f8fafc;--node-label-selected-bg: rgba(255, 255, 255, .92);--node-label-selected-text: #111827;--handle-tag-bg: rgba(12, 16, 24, .76);--handle-tag-border: rgba(255, 255, 255, .18);--handle-tag-text: #f8fafc;--ui-panel-bg: rgba(6, 12, 24, .9);--ui-panel-border: rgba(148, 163, 184, .2);--ui-row-hover: rgba(148, 163, 184, .12);--ui-row-selected: rgba(125, 211, 252, .16);--ui-row-active: rgba(125, 211, 252, .22);--ui-row-focus: rgba(125, 211, 252, .42);--ui-divider: rgba(148, 163, 184, .16);--ui-panel-divider: rgba(148, 163, 184, .16);--ui-input-bg: rgba(15, 23, 42, .86);--ui-resize-handle: rgba(125, 211, 252, .34);--ui-input-border: rgba(148, 163, 184, .24);--ui-input-text: #f8fafc;--ui-input-placeholder: #9fb4d2;--ui-input-focus: rgba(125, 211, 252, .62);--ui-menu-bg: rgba(6, 12, 24, .96);--ui-menu-border: rgba(148, 163, 184, .22);--ui-menu-item-hover: rgba(148, 163, 184, .12);--ui-menu-item-selected: rgba(125, 211, 252, .16);--ui-tree-guide: rgba(148, 163, 184, .22);--ui-focus-ring: rgba(125, 211, 252, .42);--ui-radius: 0px;--ui-toolbar-bg: rgba(6, 12, 24, .34);--ui-toolbar-hover: rgba(148, 163, 184, .14);--ui-toolbar-active: rgba(125, 211, 252, .18);--ui-toolbar-icon: #cbd5e1;--ui-toolbar-divider: rgba(226, 232, 240, .16);--ui-tooltip-bg: rgba(15, 23, 42, .96);--ui-tooltip-text: #f8fafc;--ui-tooltip-border: rgba(226, 232, 240, .18);--ui-tooltip-shadow: 0 8px 20px rgba(0, 0, 0, .28);--z-canvas: 0;--z-panel: 10;--z-toolbar: 20;--z-tooltip: 30;--z-dropdown: 40;--z-modal: 60;--z-capture: 80;--z-presentation: 90;width:100vw;height:100vh;color:var(--text-primary);background:var(--app-background);padding:0;position:relative;overflow:hidden}.app-shell.theme-light{--app-background: #f3f4f6;--text-primary: #20242a;--text-secondary: #68707c;--text-muted: #7a8491;--panel-bg: rgba(248, 249, 250, .86);--panel-border: #d9dde3;--field-bg: #ffffff;--field-text: #20242a;--accent: #2563eb;--accent-strong: #ffffff;--selection-accent: #20242a;--canvas-panel: rgba(248, 249, 250, .78);--node-label-bg: rgba(255, 255, 255, .9);--node-label-border: #d9dde3;--node-label-text: #20242a;--node-label-selected-bg: rgba(32, 36, 42, .92);--node-label-selected-text: #f8fafc;--handle-tag-bg: rgba(255, 255, 255, .9);--handle-tag-border: #d9dde3;--handle-tag-text: #20242a;--hover-bg: #eceff3;--soft-shadow: 0 1px 2px rgb(0 0 0 / .05), 0 4px 12px rgb(0 0 0 / .04);--ui-panel-bg: rgba(246, 247, 249, .94);--ui-panel-border: #d9dde3;--ui-row-hover: #eceff3;--ui-row-selected: rgba(37, 99, 235, .12);--ui-row-active: rgba(37, 99, 235, .16);--ui-row-focus: rgba(37, 99, 235, .35);--ui-divider: #e1e5ea;--ui-panel-divider: #e1e5ea;--ui-input-bg: #ffffff;--ui-resize-handle: rgba(37, 99, 235, .3);--ui-input-border: #cbd2dc;--ui-input-text: #20242a;--ui-input-placeholder: #7a8491;--ui-input-focus: rgba(37, 99, 235, .62);--ui-menu-bg: rgba(255, 255, 255, .98);--ui-menu-border: #d9dde3;--ui-menu-item-hover: #eceff3;--ui-menu-item-selected: rgba(37, 99, 235, .12);--ui-tree-guide: #d5dbe4;--ui-focus-ring: rgba(37, 99, 235, .35);--ui-radius: 0px;--ui-toolbar-bg: rgba(246, 247, 249, .52);--ui-toolbar-hover: rgba(32, 36, 42, .08);--ui-toolbar-active: rgba(37, 99, 235, .12);--ui-toolbar-icon: #4b5563;--ui-toolbar-divider: rgba(75, 85, 99, .16);--ui-tooltip-bg: rgba(255, 255, 255, .98);--ui-tooltip-text: #20242a;--ui-tooltip-border: rgba(75, 85, 99, .18);--ui-tooltip-shadow: 0 6px 18px rgba(15, 23, 42, .14)}.app-shell.theme-light .tool-submenu,.app-shell.theme-light .add-menu-panel{box-shadow:var(--soft-shadow)}.app-shell.theme-light .tool-rail-button:hover{background:var(--hover-bg)}.app-shell.theme-light .tool-rail-button.active,.app-shell.theme-light .tool-action.active,.app-shell.theme-light .tool-action:hover:not(:disabled),.app-shell.theme-light .add-menu-option:hover{background:color-mix(in srgb,var(--accent) 12%,var(--panel-bg))}.app-shell.theme-light *{scrollbar-color:#b9c1cc #eef1f4}.app-shell.theme-light *::-webkit-scrollbar{width:10px;height:10px}.app-shell.theme-light *::-webkit-scrollbar-track{background:#eef1f4}.app-shell.theme-light *::-webkit-scrollbar-thumb{border:2px solid #eef1f4;border-radius:999px;background:#b9c1cc}.topbar,.summary-panel,.toolbar-field,.status-card,.overlay-panel,.overlay-select{border:1px solid var(--panel-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:22px}.eyebrow{margin:0 0 6px;color:var(--accent);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.brand h1{margin:0;font-size:clamp(1.5rem,3vw,2.25rem)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar-field{display:flex;flex-direction:column;gap:6px;min-width:220px;padding:10px 12px;border-radius:14px}.toolbar-field.compact{min-width:132px}.toolbar-field span{color:var(--text-muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.toolbar-field select,.toolbar-field input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--panel-border);color:var(--field-text);background:var(--field-bg)}.view-switcher{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:var(--panel-bg);border:1px solid var(--panel-border)}.view-button{border:0;border-radius:999px;padding:10px 16px;color:var(--text-secondary);background:transparent;cursor:pointer}.view-button.active{color:var(--accent-strong);background:var(--accent);font-weight:700}.edit-mode-switcher{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:var(--panel-bg);border:1px solid var(--panel-border)}.edit-mode-button{border:0;border-radius:999px;padding:10px 14px;color:var(--text-secondary);background:transparent;cursor:pointer}.edit-mode-button.active{color:var(--accent-strong);background:var(--selection-accent);font-weight:700}.save-button{border:1px solid var(--panel-border);border-radius:999px;padding:10px 16px;color:var(--text-primary);background:var(--panel-bg);cursor:pointer}.save-button.dirty{border-color:color-mix(in srgb,var(--selection-accent) 75%,transparent);color:var(--selection-accent)}.canvas-root{position:relative;width:100%;height:100%;z-index:0}.app-shell-v2 .canvas-root{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 30px;background:color-mix(in srgb,var(--app-background) 86%,#000 14%)}.app-shell-v2.primary-panel-open .canvas-root{grid-template-columns:52px var(--mindfeel-primary-panel-width, 300px) minmax(360px,1fr)}.app-shell-v2.inspector-open .canvas-root{grid-template-columns:52px minmax(360px,1fr) var(--mindfeel-inspector-width, 340px)}.app-shell-v2.primary-panel-open.inspector-open .canvas-root{grid-template-columns:52px var(--mindfeel-primary-panel-width, 300px) minmax(360px,1fr) var(--mindfeel-inspector-width, 340px)}.canvas-area{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;border:0;border-radius:0;background:transparent}.app-shell-v2 .canvas-area{position:relative;grid-column:2;grid-row:1;min-width:0;min-height:0}.app-shell-v2.primary-panel-open .canvas-area{grid-column:3}.app-shell-v2.inspector-open:not(.primary-panel-open) .canvas-area{grid-column:2}.app-shell-v2.primary-panel-open.inspector-open .canvas-area{grid-column:3}.view-frame,.view-frame canvas{width:100%;height:100%;display:block}.view-frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;isolation:isolate}.view-frame canvas{position:relative;z-index:0}.scene-capture-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:18;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-primary);background:color-mix(in srgb,var(--panel-bg) 72%,transparent);font-size:13px;font-weight:700;pointer-events:auto}.scene-capture-spinner{width:18px;height:18px;border:2px solid color-mix(in srgb,var(--text-primary) 18%,transparent);border-top-color:var(--accent);border-radius:999px;animation:scene-capture-spin .78s linear infinite}@keyframes scene-capture-spin{to{transform:rotate(360deg)}}.summary-panel{padding:18px;border-radius:24px}.sidebar-stack{display:flex;flex-direction:column;gap:16px;min-width:0}.summary-panel h2{margin:0;font-size:1.35rem}.summary-panel p{color:var(--text-secondary)}.summary-label{margin:0 0 6px;color:var(--accent);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}.summary-panel dl{margin:16px 0 0;display:grid;gap:10px}.summary-panel dl div{display:flex;justify-content:space-between;gap:10px;color:var(--text-primary)}.summary-panel dt{color:var(--text-muted)}.inspector-panel{display:flex;flex-direction:column;gap:14px}.inspector-empty{margin:0;color:var(--text-secondary)}.inspector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.inspector-field{display:flex;flex-direction:column;gap:6px}.inspector-field span{color:var(--text-muted);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.inspector-field input,.inspector-field select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--panel-border);color:var(--field-text);background:var(--field-bg)}.inspector-inline-control{display:flex;align-items:center;gap:8px}.inspector-inline-control input{flex:1 1 auto;min-width:0}.inspector-inline-control .compact-button{flex:0 0 auto;min-height:38px;padding:8px 12px}.status-card{position:absolute;top:16px;left:76px;z-index:20;padding:12px 14px;border-radius:var(--ui-radius)}.status-card.error{border-color:#f8717166;color:#fecaca}.empty-view{height:100%;display:grid;place-items:center;color:var(--text-secondary)}.node-label{z-index:1;max-width:280px;padding:0;border:0;color:#fff;background:transparent;box-shadow:none;font-weight:600;text-shadow:-1px -1px 0 #000000,1px -1px 0 #000000,-1px 1px 0 #000000,1px 1px 0 #000000,0 1px 2px rgba(0,0,0,.6);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;text-align:center;line-height:1.12;pointer-events:none;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:6px}.node-label.selected{color:#fff;background:transparent;border-color:transparent;font-weight:700}.node-label-meta{font-size:.68em;opacity:.8;text-transform:uppercase;letter-spacing:.06em}.handle-tag{z-index:1;padding:3px 7px;border-radius:999px;border:1px solid var(--handle-tag-border);color:var(--handle-tag-text);background:var(--handle-tag-bg);font-size:10px;line-height:1;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.flow-label{z-index:1;padding:4px 8px;border-radius:999px;border:1px solid var(--node-label-border);color:var(--node-label-text);background:var(--node-label-bg);font-size:11px;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.menu-open .node-label,.menu-open .flow-label,.menu-open .handle-tag{opacity:.35}.overlay-button{border:1px solid var(--panel-border);color:var(--text-primary);background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer}.tool-rail{position:absolute;left:12px;top:16px;z-index:70;width:62px;display:flex;flex-direction:column;gap:6px;padding:8px 6px;border:1px solid var(--panel-border);border-radius:18px;background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-shell-v2 .tool-rail.activity-bar{position:relative;left:auto;top:auto;grid-column:1;grid-row:1;z-index:var(--z-panel);width:52px;height:100%;gap:6px;padding:8px 6px;border-width:0 1px 0 0;border-radius:0;background:var(--ui-panel-bg);box-shadow:none}.tool-rail-button{width:40px;min-height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:var(--ui-radius);color:var(--text-muted);background:transparent;cursor:pointer}.tool-rail-button:hover{color:var(--text-primary);background:var(--ui-row-hover)}.tool-rail-button.active{color:var(--accent);background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.tool-rail-button:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.app-shell-v2 .tool-rail-button{width:40px;min-height:40px}.app-shell-v2 .tool-rail-button.active{color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.tool-rail-icon,.tool-submenu-icon,.tool-action-icon{display:inline-flex;align-items:center;justify-content:center;color:currentColor}.tool-rail-icon{width:20px;height:20px}.tool-rail svg,.tool-submenu svg,.tool-action svg{width:100%;height:100%;display:block}.tool-rail path,.tool-rail circle,.tool-rail rect,.tool-rail ellipse,.tool-submenu path,.tool-submenu circle,.tool-submenu rect,.tool-submenu ellipse,.tool-action path,.tool-action circle,.tool-action rect,.tool-action ellipse{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.tool-submenu{position:absolute;left:84px;top:16px;z-index:70;width:max-content;min-width:0;max-width:min(300px,calc(100vw - 112px));max-height:calc(100vh - 32px);overflow:auto;padding:10px;border:1px solid var(--panel-border);border-radius:18px;color:var(--text-primary);background:var(--panel-bg);box-shadow:0 18px 44px #0000003d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell-v2 .tool-submenu.primary-side-panel{position:relative;left:auto;top:auto;grid-column:2;grid-row:1;z-index:var(--z-panel);width:100%;height:100%;max-width:none;max-height:none;display:flex;flex-direction:column;padding:10px 8px;border-color:var(--ui-panel-border);border-width:0 1px 0 0;border-radius:0;box-shadow:none;overscroll-behavior:contain;background:var(--ui-panel-bg);overflow:hidden}.tool-submenu-header{display:flex;align-items:center;gap:8px;padding:6px 6px 10px;color:var(--text-secondary);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.app-shell-v2 .tool-submenu-header{align-items:flex-start;justify-content:space-between;padding:6px 4px 10px;border-bottom:1px solid var(--ui-divider);letter-spacing:0;text-transform:none}.app-shell-v2 .tool-submenu-header>span:first-child{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-weight:700}.app-shell-v2 .tool-submenu-header p{margin:4px 0 0 28px;color:var(--text-muted);font-size:.76rem;line-height:1.35}.app-shell-v2 .tool-submenu-header small{display:block;margin-top:4px;color:var(--text-muted);font-size:.76rem;font-weight:400;line-height:1.35}.app-shell-v2 .tool-submenu-header .icon-button{flex:0 0 auto}.tool-submenu-icon{width:20px;height:20px}.tool-submenu-section{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;max-width:100%}.app-shell-v2 .tool-submenu-section{display:flex;flex:1 1 auto;width:100%;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:10px 0 4px}.app-shell-v2 .tool-submenu-section .tool-action,.app-shell-v2 .tool-submenu-section .tool-field{width:100%}.shell-disclosure{width:100%;border:0}.shell-disclosure summary{min-height:28px;display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 6px;border-radius:var(--ui-radius);color:var(--text-secondary);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.shell-disclosure summary::-webkit-details-marker{display:none}.shell-disclosure summary:hover,.shell-disclosure summary:focus-visible{color:var(--text-primary);background:var(--ui-row-hover);outline:none}.shell-disclosure summary:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.shell-disclosure summary span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.shell-disclosure summary small{color:var(--text-muted);font-size:.68rem}.shell-disclosure-chevron:before{content:"›";display:inline-block;transform:rotate(0);transition:transform .12s ease}.shell-disclosure[open] .shell-disclosure-chevron:before{transform:rotate(90deg)}.shell-disclosure-body{display:grid;gap:1px;min-width:0;padding:2px 0 4px 13px;border-left:1px solid var(--ui-divider);margin-left:12px}.shell-list-row{width:100%;min-width:0;min-height:28px;display:flex;align-items:center;gap:6px;padding:3px 8px;border:0;border-radius:var(--ui-radius);color:var(--field-text);background:transparent;cursor:pointer;text-align:left}.shell-list-row:hover{background:var(--ui-row-hover)}.shell-list-row.selected{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.shell-list-row:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.shell-list-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell-v2 .top-toolbar{position:absolute;top:10px;left:50%;z-index:var(--z-toolbar);display:inline-flex;align-items:center;gap:3px;max-width:calc(100% - 20px);padding:3px;border:0;border-radius:var(--ui-radius);color:var(--text-primary);background:var(--ui-toolbar-bg);box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translate(-50%)}.top-toolbar-button{width:38px;min-width:38px;flex:0 0 38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--ui-radius);color:var(--ui-toolbar-icon);background:transparent;cursor:pointer;white-space:nowrap}.top-toolbar-button:hover:not(:disabled){color:var(--text-primary);background:var(--ui-toolbar-hover)}.top-toolbar-button.active{color:var(--accent);background:var(--ui-toolbar-active);box-shadow:inset 0 -2px 0 var(--accent)}.top-toolbar-button:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.top-toolbar-button:disabled{cursor:not-allowed;opacity:.45}.top-toolbar-button svg{width:19px;height:19px;display:block}.top-toolbar-button path,.top-toolbar-button circle,.top-toolbar-button rect,.top-toolbar-button ellipse{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mindfeel-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center}.tool-rail .mindfeel-tooltip-trigger{width:40px;height:40px}.top-toolbar .mindfeel-tooltip-trigger,.top-toolbar-add .mindfeel-tooltip-trigger{flex:0 0 38px;width:38px;height:38px}.mindfeel-tooltip-trigger>button:disabled{pointer-events:none}.mindfeel-tooltip{position:fixed;z-index:var(--z-tooltip, 30);width:max-content;max-width:min(260px,calc(100vw - 16px));padding:6px 9px;border:1px solid var(--ui-tooltip-border, rgba(226, 232, 240, .18));border-radius:2px;color:var(--ui-tooltip-text, #f8fafc);background:var(--ui-tooltip-bg, rgba(15, 23, 42, .96));box-shadow:var(--ui-tooltip-shadow, 0 8px 20px rgba(0, 0, 0, .28));font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:1;animation:mindfeel-tooltip-in .12s ease-out}.mindfeel-tooltip-right:before,.mindfeel-tooltip-bottom:before{content:"";position:absolute;width:7px;height:7px;border-color:inherit;border-style:solid;background:inherit;transform:rotate(45deg)}.mindfeel-tooltip-right:before{left:-4px;top:calc(50% - 4px);border-width:0 0 1px 1px}.mindfeel-tooltip-bottom:before{left:calc(50% - 4px);top:-4px;border-width:1px 0 0 1px}@keyframes mindfeel-tooltip-in{0%{opacity:0;transform:translateY(-2px)}}@media (prefers-reduced-motion: reduce){.mindfeel-tooltip{animation:none}}.top-toolbar-separator{width:1px;height:22px;align-self:center;background:var(--ui-toolbar-divider)}.top-toolbar-add{position:relative;display:inline-flex}.top-toolbar-popover{position:absolute;top:calc(100% + 6px);left:50%;z-index:var(--z-dropdown);width:min(220px,calc(100vw - 32px));max-height:min(58vh,380px);overflow-y:auto;padding:6px;border:1px solid var(--ui-panel-border);border-radius:var(--ui-radius);color:var(--text-primary);background:var(--ui-menu-bg);box-shadow:0 14px 32px #0000002e;transform:translate(-50%)}.top-toolbar-popover-heading{display:block;padding:6px 8px 4px;color:var(--text-muted);font-size:.68rem;font-weight:650}.top-toolbar-popover button{width:100%;min-height:32px;display:flex;align-items:center;gap:8px;padding:5px 8px;border:0;border-radius:var(--ui-radius);color:var(--text-secondary);background:transparent;cursor:pointer;text-align:left}.top-toolbar-popover button:hover{color:var(--text-primary);background:var(--ui-row-hover)}.top-toolbar-popover button:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.top-toolbar-popover svg{width:18px;height:18px;flex:0 0 18px}.top-toolbar-popover span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-icon-button{width:30px;height:30px;display:inline-flex;flex:0 0 30px;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--ui-radius);color:var(--text-secondary);background:transparent;cursor:pointer}.panel-icon-button:hover{color:var(--text-primary);background:var(--ui-row-hover)}.panel-icon-button:focus-visible,.panel-resize-handle:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.panel-icon-button svg{width:18px;height:18px}.panel-icon-button path,.panel-icon-button circle,.panel-icon-button rect,.panel-icon-button ellipse{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.panel-resize-handle{position:absolute;top:0;bottom:0;z-index:calc(var(--z-panel) + 2);width:9px;padding:0;border:0;border-radius:0;background:transparent;cursor:col-resize;touch-action:none}.panel-resize-handle:after{content:"";position:absolute;top:0;bottom:0;width:1px;background:transparent}.panel-resize-handle:hover:after,.panel-resize-handle:focus-visible:after,.app-shell-v2.resizing-primary .primary-panel-resize-handle:after,.app-shell-v2.resizing-inspector .inspector-resize-handle:after{width:2px;background:var(--ui-resize-handle)}.primary-panel-resize-handle{right:-5px}.primary-panel-resize-handle:after{right:4px}.inspector-resize-handle{left:-5px}.inspector-resize-handle:after{left:4px}.mindfeel-panel-resizing,.mindfeel-panel-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.tool-field{width:100%;min-width:180px;display:flex;flex-direction:column;gap:6px;padding:2px 2px 6px}.tool-field span{color:var(--text-muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.tool-field select{min-height:38px;padding:8px 10px;border:1px solid var(--panel-border);border-radius:var(--ui-radius);color:var(--field-text);background:var(--field-bg)}.field-error{color:#dc2626;font-size:.72rem;line-height:1.3}.tool-action{width:fit-content;max-width:100%;min-height:42px;display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--panel-border);border-radius:var(--ui-radius);color:var(--field-text);background:var(--field-bg);cursor:pointer;text-align:left}.app-shell-v2 .tool-action{width:100%;min-height:32px;gap:8px;padding:5px 8px;border:0;border-radius:var(--ui-radius);background:transparent}.tool-action:hover:not(:disabled),.tool-action.active{border-color:color-mix(in srgb,var(--accent) 68%,transparent);background:color-mix(in srgb,var(--accent) 16%,var(--field-bg))}.app-shell-v2 .tool-action:hover:not(:disabled){background:var(--ui-row-hover)}.app-shell-v2 .tool-action.active{color:var(--text-primary);background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.app-shell-v2 .tool-action:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.tool-action.active{color:var(--accent);font-weight:700}.tool-action.dirty{border-color:color-mix(in srgb,var(--selection-accent) 72%,transparent);color:var(--selection-accent)}.tool-action:disabled{cursor:not-allowed;opacity:.45}.tool-action-icon{width:22px;height:22px;flex:0 0 22px}.tool-action span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-field{display:flex;flex-direction:column;gap:6px;width:min(248px,calc(100vw - 132px));max-width:100%;padding:8px 10px;border:1px solid var(--panel-border);border-radius:var(--ui-radius);background:color-mix(in srgb,var(--field-bg) 82%,transparent)}.app-shell-v2 .tool-field{width:100%;padding:4px 0;border:0;border-radius:0;background:transparent}.tool-field span{color:var(--text-muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.app-shell-v2 .tool-field span{letter-spacing:0;text-transform:none}.tool-field select,.tool-field input{width:100%;min-width:0;padding:8px 9px;border:1px solid var(--panel-border);border-radius:var(--ui-radius);color:var(--field-text);background:var(--field-bg)}.app-shell-v2 .tool-field select,.app-shell-v2 .tool-field input,.app-shell-v2 .tool-field textarea{min-height:32px;border-color:var(--ui-input-border);border-radius:var(--ui-radius);background-color:var(--ui-input-bg)}.app-shell-v2 .tool-field select,.app-shell-v2 .inspector-field select,.app-shell-v2 .overlay-select select{padding-right:30px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:var(--ui-input-bg);background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.app-shell-v2 .tool-field select:focus,.app-shell-v2 .tool-field input:focus,.app-shell-v2 .tool-field textarea:focus{border-color:var(--ui-input-focus);outline:2px solid color-mix(in srgb,var(--ui-input-focus) 28%,transparent);outline-offset:0}.tool-empty{margin:0;padding:9px 10px;border:1px solid var(--panel-border);border-radius:var(--ui-radius);color:var(--text-muted);background:color-mix(in srgb,var(--field-bg) 72%,transparent);font-size:.78rem}.app-shell-v2 .tool-empty{padding:6px 8px;border:0;border-radius:var(--ui-radius);background:transparent}.tool-empty.compact{padding:6px 8px;font-size:.72rem}.overlay-menu-button{position:absolute;top:16px;left:16px;z-index:50;min-width:52px;padding:10px 14px;border-radius:999px}.app-shell-v2 select,.app-shell-v2 option{max-width:100%}.app-shell-v2 :where(select,input,textarea){color:var(--ui-input-text);background-color:var(--ui-input-bg);border:1px solid var(--ui-input-border);border-radius:var(--ui-radius)}.app-shell-v2 select{min-height:32px;padding:6px 30px 6px 9px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.app-shell-v2 select:disabled,.app-shell-v2 input:disabled,.app-shell-v2 textarea:disabled{cursor:not-allowed;opacity:.56}.app-shell-v2 :where(select,input,textarea)::placeholder{color:var(--ui-input-placeholder)}.overlay-select{display:flex;flex-direction:column;gap:6px;min-width:min(280px,calc(100vw - 96px));padding:10px 12px;border-radius:16px}.overlay-select span{color:var(--text-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.overlay-select select{width:100%;padding:9px 12px;border-radius:var(--ui-radius);border:1px solid var(--panel-border);color:var(--field-text);background:var(--field-bg)}.overlay-panel{position:absolute;z-index:50;color:var(--text-primary)}.overlay-menu-panel{top:64px;left:16px;width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 80px);overflow:auto;padding:16px;border-radius:22px}.overlay-side-panel{top:64px;right:16px;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 80px);overflow:auto;padding:0;border-radius:22px}.overlay-panel .summary-panel{margin:0}.app-inspector{position:relative;grid-column:3;grid-row:1;min-width:0;min-height:0;display:flex;flex-direction:column;border-left:1px solid var(--ui-panel-border);color:var(--text-primary);background:var(--ui-panel-bg);overflow:hidden;z-index:var(--z-panel);isolation:isolate}.app-shell-v2.primary-panel-open.inspector-open .app-inspector{grid-column:4}.app-inspector-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 12px 10px;border-bottom:1px solid var(--ui-divider)}.app-inspector-header strong{display:block;color:var(--text-primary);font-size:.92rem}.app-inspector-header p{margin:2px 0 0;color:var(--text-muted);font-size:.76rem}.app-inspector>.summary-panel{flex:1 1 auto;min-height:0;margin:0;overflow-y:auto;overscroll-behavior:contain;border-radius:0;box-shadow:none;border:0;background:transparent}.app-inspector .inspector-panel{gap:10px;padding:12px}.app-inspector .summary-label{margin:2px 0;padding:4px 0;border-bottom:1px solid var(--ui-divider);color:var(--text-secondary);font-size:.78rem;font-weight:650;letter-spacing:0;text-transform:none}.app-inspector .containment-panel,.app-inspector .metadata-panel,.app-inspector .comments-panel,.app-inspector .change-history-panel{gap:8px;margin-top:4px;padding-top:8px;border-top:1px solid var(--ui-divider)}.app-inspector .inspector-field{gap:4px}.app-inspector .inspector-field span{letter-spacing:0;text-transform:none}.app-inspector .inspector-field input,.app-inspector .inspector-field select,.app-inspector .inspector-field textarea{min-height:32px;padding:7px 9px;border-color:var(--ui-input-border);border-radius:var(--ui-radius);color:var(--ui-input-text);background-color:var(--ui-input-bg)}.app-inspector .inspector-field input:focus,.app-inspector .inspector-field select:focus,.app-inspector .inspector-field textarea:focus{border-color:var(--ui-input-focus);outline:2px solid color-mix(in srgb,var(--ui-input-focus) 28%,transparent)}.app-status-bar{grid-column:1 / -1;grid-row:2;z-index:var(--z-presentation);min-width:0;display:flex;align-items:center;gap:10px;overflow-x:auto;padding:0 12px;border-top:1px solid var(--ui-panel-border);color:var(--text-secondary);background:var(--ui-panel-bg);font-size:.72rem;white-space:nowrap}.app-status-bar span{min-width:fit-content}.app-status-bar span:first-child{color:var(--accent);font-weight:700}.app-status-bar span+span{padding-left:10px;border-left:1px solid var(--panel-border)}.overlay-actions{display:flex;flex-direction:column;gap:12px;margin-top:14px}.overlay-actions .toolbar-field,.overlay-actions .view-switcher,.overlay-actions .edit-mode-switcher,.overlay-actions .save-button{width:100%}.overlay-actions .save-button{justify-content:center}.add-menu-wrap{position:relative;width:100%}.group-management-panel{display:flex;flex-direction:column;gap:12px;width:100%;padding:12px;border:1px solid var(--panel-border);border-radius:14px;background:#ffffff0a}.group-management-panel.compact{padding:10px;gap:10px;border-radius:12px}.group-management-header,.group-editor-actions{display:flex;align-items:center;gap:8px}.group-management-header{justify-content:space-between}.mini-action-button,.secondary-button,.danger-button{min-height:34px;padding:7px 10px;border:1px solid var(--panel-border);border-radius:10px;color:var(--text-primary);background:var(--field-bg);cursor:pointer}.mini-action-button{white-space:nowrap}.app-shell-v2 .mini-action-button{min-height:28px;padding:4px 7px;border-radius:6px}.mini-action-button:disabled{cursor:not-allowed;opacity:.5}.node-type-filter-panel{display:grid;gap:10px;padding-top:8px;border-top:1px solid var(--panel-border)}.node-type-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.relationship-type-filter-options,.group-filter-options{grid-template-columns:1fr}.filter-section-heading{margin-top:4px}.group-filter-name{min-width:0;overflow-wrap:anywhere;line-height:1.25}.node-type-filter-option{min-width:0;display:flex;align-items:center;gap:6px;padding:6px 7px;border:1px solid var(--panel-border);border-radius:8px;background:var(--field-bg);cursor:pointer}.app-shell-v2 .node-type-filter-options{grid-template-columns:1fr;gap:1px}.app-shell-v2 .node-type-filter-option{min-height:30px;padding:4px 8px;border:0;border-radius:4px;background:transparent}.app-shell-v2 .node-type-filter-option:hover:not(:has(input:disabled)){background:var(--ui-row-hover)}.app-shell-v2 .node-type-filter-option.checked{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.app-shell-v2 .node-type-filter-option:focus-within{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.node-type-filter-option.checked{border-color:color-mix(in srgb,var(--accent) 58%,var(--panel-border));background:color-mix(in srgb,var(--accent) 13%,var(--field-bg))}.node-type-filter-option input{width:14px;height:14px;margin:0;accent-color:var(--accent)}.node-type-filter-option:has(input:disabled){cursor:not-allowed;opacity:.56}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:3px;border:1px solid var(--panel-border);border-radius:8px;background:color-mix(in srgb,var(--field-bg) 70%,transparent)}.segmented-control button{min-width:0;height:30px;border:0;border-radius:6px;color:var(--text-secondary);background:transparent;cursor:pointer;font-weight:800}.segmented-control button.active{color:var(--field-text);background:var(--field-bg);box-shadow:0 4px 12px #02061729}.segmented-control button:disabled{cursor:not-allowed;opacity:.5}.filter-reset-button{width:100%}.saved-views-panel,.saved-view-list,.saved-view-editor{width:100%;display:grid;gap:8px}.saved-views-panel{padding-bottom:8px;border-bottom:1px solid var(--panel-border)}.app-shell-v2 .saved-views-panel{padding-bottom:8px;border-bottom:1px solid var(--ui-divider)}.presentation-panel{overflow:visible}.saved-view-editor textarea,.tool-field textarea{width:100%;min-height:74px;resize:vertical;border:1px solid var(--panel-border);border-radius:var(--ui-radius);padding:8px 10px;color:var(--field-text);background:var(--field-bg);font:inherit}.saved-view-item{width:100%;min-width:0;padding:8px;border:1px solid var(--panel-border);border-radius:10px;color:var(--field-text);background:var(--field-bg);text-align:left}.app-shell-v2 .saved-view-item{min-height:32px;padding:4px 6px;border:0;border-radius:4px;background:transparent}.app-shell-v2 .saved-view-item:hover,.app-shell-v2 .saved-view-item:focus-within{background:var(--ui-row-hover)}.saved-view-item.active{border-color:color-mix(in srgb,var(--accent) 62%,var(--panel-border));background:color-mix(in srgb,var(--accent) 16%,var(--field-bg))}.app-shell-v2 .saved-view-item.active{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.saved-view-item.saved{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:6px}.saved-view-apply{min-width:0;border:0;padding:0;color:inherit;background:transparent;cursor:pointer;text-align:left}.saved-view-item span,.saved-view-apply span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.saved-view-item small{color:var(--text-muted)}.saved-view-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;min-width:0}.app-shell-v2 .saved-view-actions{opacity:.38;transition:opacity .12s ease}.app-shell-v2 .saved-view-item:hover .saved-view-actions,.app-shell-v2 .saved-view-item:focus-within .saved-view-actions{opacity:1}.saved-view-actions .mini-action-button{min-height:28px;padding:5px 7px;font-size:.72rem}.presentation-editor,.presentation-scene-list{display:grid;gap:8px}.presentation-scene-item{display:grid;gap:8px;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 82%,transparent)}.presentation-scene-item.missing{border-color:color-mix(in srgb,#ef4444 58%,var(--panel-border))}.presentation-scene-main{display:grid;gap:3px;min-width:0}.presentation-scene-main strong,.presentation-scene-main p{margin:0;overflow-wrap:anywhere}.presentation-scene-main small{color:var(--text-muted)}.presentation-runtime-bar{position:absolute;left:50%;bottom:24px;z-index:15;display:flex;align-items:center;gap:14px;width:min(760px,calc(100vw - 180px));max-height:30vh;padding:12px 14px;border:1px solid var(--panel-border);border-radius:16px;color:var(--text-primary);background:color-mix(in srgb,var(--panel-bg) 88%,transparent);box-shadow:0 18px 44px #0f172a2e;transform:translate(-50%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.presentation-runtime-copy{display:grid;gap:3px;min-width:0;flex:1}.presentation-runtime-copy span,.presentation-runtime-copy small{color:var(--text-muted)}.presentation-runtime-copy strong,.presentation-runtime-copy p{margin:0;overflow-wrap:anywhere}.presentation-runtime-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.presentation-runtime-actions .save-button,.presentation-runtime-actions .secondary-button{min-height:34px;padding:7px 12px}.error-text{color:#ef4444}.saved-view-scroll-list{max-height:220px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:2px}.presentation-scroll-list{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:2px 2px 2px 0}.presentation-path-list.presentation-scroll-list{max-height:clamp(168px,22vh,220px);border-block:1px solid color-mix(in srgb,var(--panel-border) 72%,transparent)}.presentation-scene-scroll-list{max-height:clamp(220px,35vh,340px);border-block:1px solid color-mix(in srgb,var(--panel-border) 72%,transparent)}.saved-view-create-button{justify-self:start}.presentation-path-list{display:grid;gap:6px}.presentation-path-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:8px;border:1px solid var(--panel-border);border-radius:10px;color:var(--field-text);background:var(--field-bg);text-align:left}.presentation-path-item.active{border-color:color-mix(in srgb,var(--accent) 62%,var(--panel-border));background:color-mix(in srgb,var(--accent) 16%,var(--field-bg))}.presentation-path-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.presentation-path-item small{color:var(--text-muted);white-space:nowrap}.presentation-detail-header{display:grid;gap:6px;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 72%,transparent)}.presentation-detail-header strong,.presentation-detail-header p{min-width:0;margin:0;overflow-wrap:anywhere}.danger-button{color:#fecaca;border-color:#f8717173;background:#7f1d1d47}.secondary-button{color:var(--text-muted)}.group-editor,.group-node-picker,.group-node-list{display:flex;flex-direction:column;gap:8px}.group-editor{gap:12px}.group-name-field{width:100%}.group-node-list{max-height:280px;overflow:auto;padding-right:2px}.group-node-list.compact{max-height:240px}.group-edit-select,.group-node-row{width:100%}.app-shell-v2 .group-node-list{gap:1px}.app-shell-v2 .group-node-row{min-height:30px;padding:4px 8px;border:0;border-radius:4px;background:transparent}.app-shell-v2 .group-node-row:hover{background:var(--ui-row-hover)}.app-shell-v2 .group-node-row.checked{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.app-shell-v2 .group-node-row:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.group-node-row{width:100%;display:flex;gap:10px;padding:10px;border:1px solid var(--panel-border);border-radius:10px;color:var(--text-primary);background:var(--field-bg);cursor:pointer;text-align:left}.group-node-row.checked{border-color:var(--accent-strong);background:color-mix(in srgb,var(--accent-strong) 16%,var(--field-bg))}.group-node-row input{flex:0 0 auto;margin-top:3px}.group-node-copy{min-width:0}.group-node-copy{display:flex;flex-direction:column;gap:3px}.group-node-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-node-copy small{color:var(--text-muted);font-size:.74rem}.group-editor-actions{justify-content:flex-end;flex-wrap:wrap}.group-editor-actions .save-button,.group-editor-actions .secondary-button,.group-editor-actions .danger-button{width:auto;justify-content:center}.add-menu-popover{position:absolute;left:0;top:calc(100% + 8px);z-index:80;width:min(340px,calc(100vw - 64px));display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--panel-border);border-radius:14px;color:var(--text-primary);background:var(--panel-bg);box-shadow:0 18px 44px #0000004d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.add-menu-section{display:flex;flex-direction:column;gap:8px}.add-menu-section-title{color:var(--text-muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.add-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.add-menu-option{min-height:92px;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--panel-border);border-radius:8px;color:var(--field-text);background:var(--field-bg);cursor:pointer;text-align:left}.add-menu-option:hover{border-color:color-mix(in srgb,var(--accent) 70%,white 10%);background:color-mix(in srgb,var(--accent) 12%,var(--field-bg))}.add-menu-preview{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center}.add-preview-box,.add-preview-sphere,.add-preview-ellipse{display:block;border:2px solid color-mix(in srgb,var(--accent) 80%,white 12%);background:color-mix(in srgb,var(--accent) 26%,transparent)}.add-preview-box{width:30px;height:30px;border-radius:5px;box-shadow:5px 5px color-mix(in srgb,var(--accent) 18%,transparent)}.add-preview-sphere{width:32px;height:32px;border-radius:50%;box-shadow:inset -7px -7px color-mix(in srgb,#000000 18%,transparent)}.add-preview-ellipse{width:36px;height:24px;border-radius:50%}.add-preview-arrow{position:relative;width:42px;height:42px;display:block}.add-preview-arrow-line{position:absolute;left:19px;top:4px;width:4px;height:24px;border-radius:999px;background:#fef08a}.add-preview-arrow-head{position:absolute;left:11px;top:24px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid #fef08a}.add-preview-arrow small{position:absolute;left:50%;bottom:-8px;color:var(--text-muted);font-size:8px;line-height:1;transform:translate(-50%)}.add-menu-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.add-menu-copy strong{font-size:.84rem;line-height:1.15}.add-menu-copy small{color:var(--text-muted);font-size:.72rem;line-height:1.2}.direction-arrow-overlay{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none}.direction-arrow-svg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none}.direction-arrow-hit-line{cursor:grab;pointer-events:stroke;filter:drop-shadow(0 0 1px rgba(255,255,255,.75)) drop-shadow(0 2px 5px rgba(0,0,0,.42))}.direction-arrow-overlay.selected .direction-arrow-hit-line{cursor:grabbing;filter:drop-shadow(0 0 2px rgba(255,255,255,.95)) drop-shadow(0 0 8px rgba(56,189,248,.55)) drop-shadow(0 2px 6px rgba(0,0,0,.5))}.direction-arrow-handle{cursor:pointer;pointer-events:auto;stroke:var(--selection-accent);stroke-width:2;filter:drop-shadow(0 1px 4px rgba(0,0,0,.35))}.direction-arrow-label{position:absolute;transform:translate(-50%,-50%);padding:4px 8px;border:1px solid var(--node-label-border);border-radius:999px;color:var(--node-label-text);background:var(--node-label-bg);font-size:11px;font-weight:700;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer;pointer-events:auto}.direction-arrow-label.selected{border-color:var(--selection-accent);color:var(--selection-accent)}.direction-arrow-world-label{padding:4px 8px;border:1px solid var(--node-label-border);border-radius:999px;color:var(--node-label-text);background:var(--node-label-bg);font-size:11px;font-weight:700;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:grab;pointer-events:auto}.direction-arrow-world-label.selected{border-color:color-mix(in srgb,var(--selection-accent) 78%,transparent);color:var(--selection-accent);background:var(--node-label-selected-bg)}.arrow-align-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.arrow-align-actions .secondary-button{justify-content:center;align-items:center;display:inline-flex;gap:8px;min-height:42px;line-height:1.15}.align-button-icon{width:32px;height:28px;display:inline-flex;flex:0 0 32px;align-items:center;justify-content:center;color:currentColor}.align-button-icon svg{width:100%;height:100%;display:block;overflow:visible}.align-button-icon path,.align-button-icon circle{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.align-button-icon circle{fill:currentColor;stroke-width:0}.object-list{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:calc(100vh - 180px)}.object-item{width:100%;text-align:left;border:1px solid var(--panel-border);background:var(--field-bg);color:var(--field-text);border-radius:12px;padding:10px 12px;cursor:pointer}.app-shell-v2 .object-list{gap:1px}.app-shell-v2 .object-item{min-height:32px;padding:5px 8px;border:0;border-radius:4px;background:transparent}.app-shell-v2 .object-item:hover:not(.filtered-out){background:var(--ui-row-hover)}.object-item.active{border-color:color-mix(in srgb,var(--accent) 70%,white 20%);background:color-mix(in srgb,var(--accent) 18%,var(--field-bg))}.app-shell-v2 .object-item.active{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.object-item.dimmed,.object-item.filtered-out{opacity:.48}.object-item.filtered-out{cursor:not-allowed}.node-tree-list{display:flex;flex-direction:column;gap:3px;overflow:auto;max-height:calc(100vh - 180px)}.app-shell-v2 .node-tree-list{gap:1px}.node-tree-list.compact{max-height:none;overflow:visible;padding-top:4px}.node-tree-group{position:relative}.node-tree-children{position:relative;margin-left:16px;padding-left:8px;border-left:1px solid color-mix(in srgb,var(--text-muted) 34%,transparent)}.app-shell-v2 .node-tree-children{margin-left:12px;padding-left:6px;border-left:1px solid var(--ui-tree-guide)}.node-tree-item{position:relative;width:100%;min-height:32px;display:flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:0;color:var(--field-text);background:transparent;text-align:left}.app-shell-v2 .node-tree-item{min-height:30px;gap:4px;border:0;border-radius:0;padding-block:2px}.node-tree-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--panel-border) 72%,transparent)}.app-shell-v2 .node-tree-item:hover:not(:disabled){background:var(--ui-row-hover)}.node-tree-item.selected{border-color:color-mix(in srgb,var(--accent) 66%,white 10%);background:color-mix(in srgb,var(--accent) 22%,var(--field-bg))}.app-shell-v2 .node-tree-item.selected{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.app-shell-v2 .node-tree-main:focus-visible,.app-shell-v2 .node-tree-chevron:focus-visible{outline:2px solid var(--ui-row-focus);outline-offset:-2px}.node-tree-item.dimmed,.node-tree-item.filtered-out{opacity:.45}.node-tree-item.filtered-out{cursor:not-allowed}.node-tree-chevron{width:14px;height:24px;flex:0 0 14px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0;color:var(--text-muted);background:transparent;cursor:pointer;text-align:center}.node-tree-chevron.has-children{color:var(--accent)}.node-tree-chevron.has-children:before{content:"›";display:block;font-size:.88rem;line-height:1;transform:rotate(90deg)}.node-tree-chevron.has-children.collapsed:before{transform:rotate(0)}.node-tree-chevron:hover{color:var(--text-primary);background:var(--ui-row-hover)}.node-tree-chevron-spacer{width:14px;height:24px;flex:0 0 14px}.node-tree-branch{width:14px;flex:0 0 14px;color:var(--ui-tree-guide);font-size:.9rem;line-height:1}.node-tree-main{min-width:0;flex:1;display:flex;align-items:center;padding:0;border:0;border-radius:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.node-tree-main:disabled{cursor:not-allowed}.node-tree-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-tree-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.node-tree-metadata-row{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.node-tree-owner{max-width:100%;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.2}.node-tree-name.parent{font-weight:700}.node-tree-count{min-width:20px;padding:1px 5px;border-radius:0;color:var(--text-muted);background:transparent;font-size:.72rem;line-height:1.2;text-align:center}.node-type-badge{width:fit-content;max-width:100%;padding:2px 7px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:999px;color:#334155;background:#94a3b833;font-size:.66rem;font-weight:700;line-height:1.15;white-space:nowrap}.app-shell-v2 .node-type-badge,.app-shell-v2 .abstraction-level-badge,.app-shell-v2 .node-status-badge,.app-shell-v2 .relationship-type-badge{padding:0;border:0;border-radius:0;background:transparent;font-size:.64rem;font-weight:600}.app-shell-v2 .node-type-badge:before,.app-shell-v2 .abstraction-level-badge:before,.app-shell-v2 .node-status-badge:before,.app-shell-v2 .relationship-type-badge:before{content:"";display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:999px;background:currentColor;opacity:.58;vertical-align:1px}.abstraction-level-badge{width:fit-content;max-width:100%;padding:2px 7px;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:999px;color:#14532d;background:#22c55e1f;font-size:.64rem;font-weight:700;line-height:1.15;white-space:nowrap}.node-status-badge{width:fit-content;max-width:100%;padding:2px 7px;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:999px;color:#0f766e;background:#14b8a624;font-size:.64rem;font-weight:700;line-height:1.15;white-space:nowrap}.node-status-approved,.node-status-resolved{color:#166534;background:#22c55e24}.node-status-blocked{color:#991b1b;background:#ef444424}.node-status-deprecated{color:#57534e;background:#78716c26}.node-status-draft,.node-status-proposed{color:#4338ca;background:#6366f124}.metadata-panel{gap:10px}.metadata-panel textarea{min-height:62px}.change-history-panel{gap:8px}.change-history-list{display:grid;gap:8px;max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.change-history-item{display:grid;gap:4px;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 76%,transparent)}.app-shell-v2 .change-history-list,.app-shell-v2 .activity-list,.app-shell-v2 .version-snapshot-list{gap:1px}.app-shell-v2 .change-history-item,.app-shell-v2 .activity-item,.app-shell-v2 .version-snapshot-item{padding:5px 8px;border:0;border-radius:4px;background:transparent}.app-shell-v2 .change-history-item:hover,.app-shell-v2 .activity-item:hover,.app-shell-v2 .version-snapshot-item:hover{background:var(--ui-row-hover)}.app-shell-v2 .activity-item.selected,.app-shell-v2 .version-snapshot-item.selected{background:var(--ui-row-selected);box-shadow:inset 2px 0 0 var(--accent)}.change-history-item strong,.change-history-item p{min-width:0;margin:0}.change-history-item p{display:flex;gap:6px;color:var(--text-secondary);font-size:.76rem}.change-history-item p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.change-history-item small{color:var(--text-muted);font-size:.68rem}.activity-overlay-panel{width:min(430px,calc(100vw - 32px))}.activity-panel{gap:12px}.activity-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.activity-panel-header .summary-label{margin:0}.activity-filter-grid{display:grid;gap:10px}.activity-date-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.activity-count{margin:0;color:var(--text-muted);font-size:.72rem}.activity-list{display:grid;gap:8px;max-height:340px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.activity-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 76%,transparent)}.activity-item.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--field-bg))}.activity-item-main{display:grid;min-width:0;gap:4px;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.activity-item-main strong,.activity-item-main span,.activity-item-main small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-item-main>span{color:var(--text-primary)}.activity-item-main small{display:flex;gap:6px;color:var(--text-muted);font-size:.68rem}.activity-status{color:var(--accent)}.activity-detail{display:grid;gap:8px;padding:10px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 70%,transparent)}.activity-detail .summary-label{margin:0}.activity-detail dl,.activity-detail dl div{display:grid;gap:4px;margin:0}.activity-detail dl{gap:8px}.activity-detail dt{color:var(--text-muted);font-size:.68rem;text-transform:uppercase}.activity-detail dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--text-primary);font-size:.78rem}.activity-detail pre{max-height:170px;margin:0;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:inherit}.comments-panel{gap:10px}.comments-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.comments-panel textarea{min-height:74px;resize:vertical}.comments-list{display:grid;gap:8px;max-height:320px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.comment-item{display:grid;gap:8px;padding:9px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 76%,transparent)}.comment-body{margin:0;color:var(--text-primary);font-size:.8rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.comment-meta{display:flex;flex-wrap:wrap;gap:6px 10px;color:var(--text-muted)}.comment-meta small{font-size:.68rem}.comment-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.comment-actions .secondary-button,.comment-actions .save-button{width:auto}.comment-editor{display:grid;gap:8px}.versions-overlay-panel{width:min(470px,calc(100vw - 32px))}.data-overlay-panel{width:min(480px,calc(100vw - 32px))}.versions-panel,.version-create-panel,.version-list-panel,.version-detail-panel,.version-diff-panel,.data-panel,.data-transfer-section{display:grid;gap:12px}.data-transfer-section{padding-bottom:12px;border-bottom:1px solid var(--panel-border)}.data-transfer-section:last-child{padding-bottom:0;border-bottom:0}.data-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.html-report-section{align-content:start}.html-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.html-report-fieldset{display:grid;gap:10px;margin:0;padding:12px;border:1px solid var(--panel-border);border-radius:12px}.html-report-fieldset legend{padding:0 6px;color:var(--text-muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.html-report-fieldset label,.html-report-checkbox-grid label{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.9rem}.html-report-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.html-report-preview{display:grid;gap:10px;padding:12px;border:1px solid var(--panel-border);border-radius:12px;background:color-mix(in srgb,var(--panel-bg) 82%,var(--field-bg))}.scene-capture-options{padding:10px 0 2px}.scene-capture-target{align-items:start}.presentation-export-scene-preview{display:grid;gap:8px;max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.import-preview{max-height:clamp(260px,42vh,460px);overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.version-snapshot-list{display:grid;gap:8px;max-height:230px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.version-snapshot-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 76%,transparent)}.version-snapshot-item.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--field-bg))}.version-snapshot-main{display:grid;min-width:0;gap:4px;padding:0;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.version-snapshot-main strong,.version-snapshot-main span,.version-snapshot-main small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-snapshot-main span,.version-snapshot-main small{color:var(--text-muted)}.version-snapshot-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.version-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.version-stats-grid div{min-width:0;padding:7px;border:1px solid var(--panel-border);border-radius:8px;background:color-mix(in srgb,var(--field-bg) 70%,transparent)}.version-stats-grid dt{color:var(--text-muted);font-size:.66rem;text-transform:uppercase}.version-stats-grid dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--text-primary);font-size:.78rem}.version-diff-panel{max-height:clamp(260px,40vh,480px);overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.version-diff-category{border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 70%,transparent)}.version-diff-category summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;cursor:pointer}.version-diff-list{display:grid;gap:5px;padding:0 8px 8px}.version-diff-list p,.version-diff-count-row{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--text-secondary);font-size:.76rem}.version-diff-list small{display:block;color:var(--text-muted);font-size:.68rem}.version-diff-count-row{display:flex;justify-content:space-between;gap:8px;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 70%,transparent)}.add-metadata-panel{display:grid;padding:8px;border:1px solid var(--panel-border);border-radius:10px;background:color-mix(in srgb,var(--field-bg) 72%,transparent)}.abstraction-level-overview{color:#155e75;background:#06b6d424}.abstraction-level-area{color:#166534;background:#22c55e24}.abstraction-level-element{color:#7c2d12;background:#f9731624}.abstraction-level-detail{color:#831843;background:#ec489921}.abstraction-level-unspecified{color:#475569;background:#94a3b824}.node-type-business{color:#334155;background:#64748b2e}.node-type-system{color:#075985;background:#0ea5e929}.node-type-function{color:#065f46;background:#10b98129}.node-type-data{color:#3730a3;background:#6366f126}.node-type-issue{color:#9f1239;background:#f43f5e24}.node-type-decision{color:#6d28d9;background:#8b5cf629}.node-type-other{color:#475569;background:#94a3b829}.app-shell-v2 :where(.object-item,.saved-view-item,.activity-item,.change-history-item,.comment-item,.version-snapshot-item,.version-diff-category,.version-diff-count-row,.activity-detail,.html-report-fieldset,.html-report-preview,.add-metadata-panel,.version-stats-grid div,.flow-type-button,.flow-direction-button,.relationship-type-badge,.secondary-button,.save-button,.danger-button){border-radius:var(--ui-radius)}.app-shell-v2 :where(.activity-item,.change-history-item,.comment-item,.version-snapshot-item){border:0;background:transparent}.app-shell-v2 :where(.activity-detail,.html-report-preview,.version-diff-category,.version-diff-count-row,.version-stats-grid div){background:transparent}.theme-dark .node-type-badge,.theme-dark .abstraction-level-badge{color:#e2e8f0;border-color:#e2e8f02e}.flow-panel{gap:16px}.flow-section{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--panel-border)}.flow-type-switcher,.flow-direction-grid{display:grid;gap:6px}.flow-type-switcher,.flow-direction-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-type-button,.flow-direction-button{border:1px solid var(--panel-border);border-radius:10px;padding:8px 6px;color:var(--text-secondary);background:var(--field-bg);cursor:pointer}.flow-type-button.active,.flow-direction-button.active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent);font-weight:700}.flow-control-label,.flow-message{color:var(--text-muted);font-size:.78rem}.flow-list .object-item{display:flex;flex-direction:column;gap:2px}.flow-list small{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--text-muted)}.relationship-type-badge{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:2px 7px;border-radius:6px;border:1px solid rgba(100,116,139,.36);color:#334155;background:#e2e8f0cc;font-size:.7rem;line-height:1.4;text-transform:none}.theme-dark .relationship-type-badge{border-color:#94a3b857;color:#cbd5e1;background:#1e293bb8}.save-button.danger{border-color:#f8717180;color:#ef4444}.containment-panel{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-top:10px;border-top:1px solid var(--panel-border)}.containment-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 960px){.workspace{grid-template-columns:1fr}.sidebar-stack{order:-1}.inspector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.app-shell-v2 .canvas-root,.app-shell-v2.primary-panel-open .canvas-root,.app-shell-v2.inspector-open .canvas-root,.app-shell-v2.primary-panel-open.inspector-open .canvas-root{grid-template-columns:48px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 34px}.app-shell-v2 .tool-rail.activity-bar{width:48px;padding-inline:4px}.app-shell-v2 .tool-rail-button{width:40px;min-height:40px}.app-shell-v2 .tool-submenu.primary-side-panel{position:absolute;left:48px;top:0;bottom:34px;width:min(320px,calc(100vw - 48px));grid-column:1 / -1;border-right:1px solid var(--panel-border);box-shadow:12px 0 30px #00000038}.app-shell-v2 .panel-resize-handle{display:none}.app-shell-v2 .canvas-area,.app-shell-v2.primary-panel-open .canvas-area,.app-shell-v2.inspector-open:not(.primary-panel-open) .canvas-area,.app-shell-v2.primary-panel-open.inspector-open .canvas-area{grid-column:2}.app-shell-v2 .top-toolbar{top:10px;justify-content:flex-start;overflow-x:auto}.app-inspector,.app-shell-v2.primary-panel-open.inspector-open .app-inspector{position:absolute;right:0;top:0;bottom:34px;width:min(340px,calc(100vw - 48px));grid-column:auto;box-shadow:-12px 0 30px #00000038}.app-status-bar{font-size:.68rem}.topbar,.toolbar{flex-direction:column;align-items:stretch}.toolbar-field{min-width:0}.inspector-grid{grid-template-columns:1fr}.overlay-select{min-width:0;width:100%}.overlay-side-panel,.overlay-menu-panel{width:calc(100vw - 32px)}}
