.esh-shell{--esh-bg:var(--ui-bg-0,var(--bg-primary));--esh-panel:var(--ui-bg-panel,var(--bg-secondary));--esh-elev:var(--ui-bg-elev,var(--bg-tertiary));--esh-line:var(--ui-line,#ffffff14);--esh-line-2:var(--ui-line-strong,#ffffff24);--esh-text:var(--ui-text,var(--text-primary));--esh-mut:var(--ui-muted,var(--text-secondary));--esh-dim:var(--ui-dim,var(--text-tertiary));--esh-accent:var(--ui-violet,var(--accent));--esh-accent-rgb:var(--ui-violet-rgb,var(--accent-rgb));background:var(--esh-bg);height:100%;min-height:0;color:var(--esh-text);font-family:var(--ui-font-sans,var(--font-sans,system-ui));font-size:var(--text-sm,12px);grid-template-rows:44px minmax(0,1fr);display:grid}.esh-shell .esh-bar{border-bottom:.5px solid var(--esh-line);background:rgba(var(--ui-bg-0-rgb,var(--bg-primary-rgb)), .7);backdrop-filter:blur(14px);z-index:50;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px;display:grid;position:relative}.esh-shell .esh-bar-l{align-items:center;gap:8px;display:flex}.esh-shell .esh-bar-c{justify-self:center;align-items:center;gap:8px;min-width:0;display:flex}.esh-shell .esh-bar-r{justify-self:end;align-items:center;gap:8px;display:flex}.esh-shell .esh-history{border-radius:var(--radius-sm,6px);border:.5px solid var(--esh-line);background:var(--esh-panel);align-items:center;gap:2px;padding:2px;display:flex}.esh-shell .esh-icon-btn{border-radius:calc(var(--radius-sm,6px) - 2px);width:24px;height:24px;color:var(--esh-mut);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:color .12s,background .12s;display:inline-grid}.esh-shell .esh-icon-btn:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-icon-btn:disabled{color:var(--esh-dim);opacity:.55;cursor:default}.esh-shell .esh-save-hint{max-width:170px;color:rgba(var(--warning-rgb), .9);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.2;overflow:hidden}.esh-shell .esh-dirty-dot{background:var(--ui-amber,var(--warning));width:6px;height:6px;box-shadow:0 0 6px rgba(var(--warning-rgb), .7);border-radius:50%}.esh-shell .esh-save{align-items:stretch;display:flex}.esh-shell .esh-save-btn{border:.5px solid var(--esh-line-2);border-radius:var(--radius-sm,6px);background:var(--esh-accent);height:26px;color:var(--ink-text-on-accent,var(--bg-primary));font-size:var(--text-sm,12px);font-weight:var(--weight-semibold,600);cursor:pointer;padding:0 12px;transition:filter .12s,opacity .12s}.esh-shell .esh-save-btn:hover:not(:disabled){background:var(--esh-accent);color:var(--ink-text-on-accent,var(--bg-primary));box-shadow:none;filter:brightness(1.08)}.esh-shell .esh-save-btn:disabled{opacity:.45;cursor:default}.esh-shell .esh-save-more{display:flex;position:relative}.esh-shell .esh-save-caret{border:.5px solid var(--esh-line-2);border-radius:var(--radius-sm,6px);background:rgba(var(--esh-accent-rgb), .25);width:20px;height:26px;color:var(--esh-text);cursor:pointer;place-items:center;margin-left:2px;padding:0;display:inline-grid}.esh-shell .esh-save-caret:hover:not(:disabled){background:rgba(var(--esh-accent-rgb), .4);color:var(--esh-text);box-shadow:none}.esh-shell .esh-save-caret:disabled{opacity:.45;cursor:default}.esh-shell .esh-menu{border:.5px solid var(--esh-line-2);border-radius:var(--radius-md,8px);background:var(--esh-elev);min-width:180px;box-shadow:var(--shadow-md,0 8px 24px #00000059);z-index:60;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.esh-shell .esh-menu-item{color:var(--esh-text);font-size:var(--text-sm,12px);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:6px 8px}.esh-shell .esh-menu-item:hover:not(:disabled){background:rgba(var(--esh-accent-rgb), .16);color:var(--esh-text);box-shadow:none}.esh-shell .esh-menu-item:disabled{color:var(--esh-dim);cursor:default}.esh-shell .esh-menu-item.esh-on{color:var(--esh-accent);font-weight:var(--weight-semibold,600)}.esh-shell .esh-bar-menu-wrap{display:inline-flex;position:relative}.esh-shell .esh-bar-btn{border-radius:var(--radius-sm,6px);height:26px;color:var(--esh-text);font-size:var(--text-sm,12px);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0 8px;transition:color .12s,background .12s;display:inline-flex}.esh-shell .esh-bar-btn:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-bar-btn:disabled{color:var(--esh-dim);opacity:.55;cursor:default}.esh-shell .esh-bar-btn.esh-on,.esh-shell .esh-bar-btn.esh-on:hover:not(:disabled){color:var(--esh-accent);box-shadow:none;background:0 0}.esh-shell .esh-bar-menu{border:.5px solid var(--esh-line-2);border-radius:var(--radius-md,8px);background:var(--esh-elev);min-width:200px;box-shadow:var(--shadow-md,0 8px 24px #00000059);z-index:60;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 4px)}.esh-shell .esh-bar-menu-left{left:0}.esh-shell .esh-bar-menu-right{right:0}.esh-shell .esh-bar-menu-head{border-bottom:.5px solid var(--esh-line);justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;padding:2px 4px 6px;display:flex}.esh-shell .esh-bar-menu-head-title{font-size:var(--text-xs,11px);font-weight:var(--weight-semibold,600);letter-spacing:.04em;text-transform:uppercase;color:var(--esh-dim)}.esh-shell .esh-bar-menu-body{flex-direction:column;gap:2px;max-height:60vh;display:flex;overflow-y:auto}.esh-shell .esh-bar-menu-note{border-top:.5px solid var(--esh-line);font-size:var(--text-xs,11px);color:var(--esh-dim);margin-top:2px;padding:6px 8px}.esh-shell .esh-bar-sep{background:var(--esh-line);width:.5px;height:18px;margin:0 2px}.esh-shell .esh-idmenu{flex-direction:column;gap:8px;min-width:200px;display:flex}.esh-shell .esh-idmenu-brand{align-items:center;gap:6px;display:flex}.esh-shell .esh-idmenu-swatches{flex:none;gap:3px;display:inline-flex}.esh-shell .esh-idmenu-swatch{border-radius:3px;width:10px;height:10px;box-shadow:inset 0 0 0 .5px #ffffff24}.esh-shell .esh-idmenu-sel{border:.5px solid var(--esh-line);border-radius:var(--radius-sm,6px);background:var(--esh-panel);min-width:0;color:var(--esh-text);font-family:inherit;font-size:var(--text-sm,12px);cursor:pointer;flex:auto;padding:4px 8px}.esh-shell .esh-idmenu-theme{border-radius:var(--radius-sm,6px);color:var(--esh-text);font-size:var(--text-sm,12px);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px 8px;display:inline-flex}.esh-shell .esh-idmenu-theme:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-body{min-height:0;position:relative}.esh-shell .esh-canvas{min-width:0;min-height:0;position:absolute;inset:0;overflow:hidden}.esh-shell .esh-canvas-overlay{pointer-events:none;z-index:30;position:absolute;inset:0}.esh-shell .esh-canvas-overlay>*{pointer-events:auto}.esh-shell .esh-viewport-slot{align-items:center;min-width:0;display:flex}.esh-shell .esh-rail{z-index:40;min-height:0;display:flex;position:absolute;top:0;bottom:0}.esh-shell .esh-rail-l{left:0}.esh-shell .esh-rail-r{flex-direction:row-reverse;right:0}.esh-shell .esh-tabs{background:var(--ui-bg-0,var(--bg-primary));flex-direction:column;flex:none;align-items:center;gap:4px;width:48px;padding:8px 6px;display:flex}.esh-shell .esh-rail-l:not(.esh-rail-open) .esh-tabs{border-right:.5px solid var(--esh-line)}.esh-shell .esh-rail-r:not(.esh-rail-open) .esh-tabs{border-left:.5px solid var(--esh-line)}.esh-shell .esh-tab{border-radius:var(--radius-sm,6px);width:36px;height:36px;color:var(--esh-mut);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;transition:color .12s,background .12s;display:inline-grid}.esh-shell .esh-tab:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-tab:disabled{opacity:.4;cursor:default}.esh-shell .esh-tab.esh-on,.esh-shell .esh-tab.esh-on:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-accent);box-shadow:inset 0 0 0 .5px var(--esh-line-2)}.esh-shell .esh-panel{gap:var(--space-2,8px);background:var(--ui-bg-0,var(--bg-primary));flex-direction:column;flex:none;width:320px;min-height:0;padding:10px;display:flex;overflow-y:auto;box-shadow:0 1px 6px #0000001f}.esh-shell .esh-rail-l .esh-panel{border-right:.5px solid var(--esh-line)}.esh-shell .esh-rail-r .esh-panel{border-left:.5px solid var(--esh-line)}.esh-shell .esh-panel[data-tab=ai]{gap:0;width:min(440px,92vw);padding:0;overflow:hidden}.esh-shell .esh-panel[data-tab=ai] .esh-panel-title{padding:10px 12px 8px}.esh-shell .esh-panel-title{font-size:var(--text-xs,11px);font-weight:var(--weight-semibold,600);letter-spacing:.04em;text-transform:uppercase;color:var(--esh-dim)}.esh-shell .esh-panel-empty{color:var(--esh-dim);font-size:var(--text-xs,11px)}.esh-shell .esh-panel-filled{flex-direction:column;flex:1;min-height:0;display:flex}.esh-shell .esh-hover-outline{outline:2px solid var(--esh-accent);outline-offset:-1px}.esh-shell .esh-nav{flex-direction:column;gap:1px;min-height:0;display:flex}.esh-shell .esh-nav-toolbar{flex:none;justify-content:flex-end;margin-bottom:2px;display:flex}.esh-shell .esh-nav-collapse-all{width:22px;height:22px;color:var(--esh-dim);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;transition:color .12s,background .12s;display:inline-grid}.esh-shell .esh-nav-collapse-all:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-node-acts{z-index:20;background:rgba(var(--esh-accent-rgb), .95);border-radius:8px;align-items:center;gap:4px;padding:5px 8px;display:inline-flex;position:absolute;bottom:70px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.esh-shell .esh-node-acts-l{color:var(--ink-text-on-brand,#fff);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:0 6px 0 2px;font-family:ui-monospace,monospace;font-size:10px}.esh-shell .esh-node-acts .esh-node-act{width:22px;height:22px;color:var(--ink-text-on-brand,#fff);cursor:pointer;background:#ffffff2e;border:0;border-radius:4px;place-items:center;padding:0;transition:background .12s,color .12s;display:inline-grid}.esh-shell .esh-node-acts .esh-node-act:hover:not(:disabled){box-shadow:none;background:#ffffff52}.esh-shell .esh-node-acts .esh-node-act.esh-act-del{background:rgba(var(--error-rgb), .55)}.esh-shell .esh-node-acts .esh-node-act.esh-act-del:hover:not(:disabled){background:rgba(var(--error-rgb), .85)}.esh-shell .esh-nav-row{align-items:center;gap:2px;min-width:0;display:flex}.esh-shell .esh-nav-caret,.esh-shell .esh-nav-caret-spacer{flex:none;width:16px;height:22px}.esh-shell .esh-nav-caret{color:var(--esh-dim);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;transition:color .12s,background .12s;display:inline-grid}.esh-shell .esh-nav-caret:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-nav-caret:disabled{opacity:.4;cursor:default}.esh-shell .esh-nav-item{min-width:0;height:22px;color:var(--esh-mut);font-size:var(--text-sm,12px);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:auto;justify-content:flex-start;align-items:center;gap:6px;padding:0 6px;transition:color .12s,background .12s;display:flex}.esh-shell .esh-nav-item:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-nav-item.esh-nav-sel,.esh-shell .esh-nav-item.esh-nav-sel:hover:not(:disabled){background:rgba(var(--esh-accent-rgb), .16);color:var(--esh-text);box-shadow:inset 0 0 0 .5px rgba(var(--esh-accent-rgb), .4)}.esh-shell .esh-nav-item.esh-nav-ancestor:not(.esh-nav-sel){color:var(--esh-text)}.esh-shell .esh-nav-icon{color:var(--esh-dim);flex:none}.esh-shell .esh-nav-item.esh-nav-sel .esh-nav-icon{color:var(--esh-accent)}.esh-shell .esh-nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.esh-shell .esh-nav-deep-group{border-left:.5px solid var(--esh-line);margin-left:8px}.esh-shell .esh-nav-item.esh-nav-deep{color:var(--esh-mut)}.esh-shell .esh-nav-item.esh-nav-deep .esh-nav-icon{color:var(--esh-accent)}.esh-shell .esh-nav-chrome-item{color:var(--esh-dim);opacity:.7;cursor:default}.esh-shell .esh-nav-item.esh-nav-chrome-item:hover:not(:disabled){color:var(--esh-dim);box-shadow:none;background:0 0}.esh-shell .esh-nav-page{border-bottom:.5px solid var(--esh-line);margin-bottom:4px;padding-bottom:4px}.esh-shell .esh-nav-page-item{font-weight:var(--weight-semibold,600)}.esh-shell .esh-nav-page-item .esh-nav-icon{color:var(--esh-accent)}.esh-shell .esh-nav-note,.esh-shell .esh-nav-empty{color:var(--esh-dim);font-size:var(--text-xs,11px);padding:4px 6px}.esh-shell .esh-comp{flex-direction:column;gap:3px;min-height:0;display:flex}.esh-shell .esh-comp-item{border:.5px solid var(--esh-line);border-radius:var(--radius-sm,6px);background:var(--esh-bg);align-items:center;gap:2px;display:flex}.esh-shell .esh-comp-item:hover{border-color:var(--esh-line-2)}.esh-shell .esh-comp-main{border-radius:var(--radius-sm,6px);min-width:0;color:var(--esh-text);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:8px;padding:7px 8px;transition:background .12s;display:flex}.esh-shell .esh-comp-main:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-comp-main:disabled{cursor:default}.esh-shell .esh-comp-icon{color:var(--esh-accent);flex:none}.esh-shell .esh-comp-text{flex-direction:column;gap:1px;min-width:0;display:flex}.esh-shell .esh-comp-label{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm,12px);overflow:hidden}.esh-shell .esh-comp-meta{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs,11px);color:var(--esh-dim);overflow:hidden}.esh-shell .esh-comp-actions{flex:none;align-items:center;gap:2px;padding-right:4px;display:flex}.esh-shell .esh-comp-action{border-radius:calc(var(--radius-sm,6px) - 2px);width:24px;height:24px;color:var(--esh-mut);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:color .12s,background .12s;display:inline-grid}.esh-shell .esh-comp-action:hover:not(:disabled){background:var(--esh-elev);color:var(--esh-text);box-shadow:none}.esh-shell .esh-comp-action:disabled{color:var(--esh-dim);opacity:.5;cursor:default}.esh-shell .esh-comp-action .esh-comp-icon{color:inherit}.esh-shell .esh-comp-empty{color:var(--esh-dim);font-size:var(--text-xs,11px);padding:4px 6px}
