@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/InterVariable.woff2)format("woff2")}.zoom-readout,.field input,.home-meta span,.board-meta span{font-variant-numeric:tabular-nums}:root{color:#101828;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#e7edf5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:1040px;min-height:100vh;margin:0;overflow:hidden}button,input,select{font:inherit}button{border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field input:focus-visible,.field select:focus-visible,.menu-field select:focus-visible,.layer-rename:focus-visible{outline:none}.loading-shell{color:#334155;background:#e7edf5;place-items:center;gap:14px;min-height:100vh;display:grid}.loading-mark,.brand-mark{border-radius:var(--r-lg);width:42px;height:42px;display:block;overflow:hidden}.loading-mark svg,.brand-mark svg{width:100%;height:100%;display:block}.app-shell{--left-panel-width:244px;--right-panel-width:276px;grid-template-areas:"topbar topbar topbar""left canvas right""status status status";grid-template-columns:var(--left-panel-width) minmax(0, 1fr) var(--right-panel-width);background:#dfe7f1;grid-template-rows:52px minmax(0,1fr) 30px;width:100vw;height:100vh;display:grid}.app-shell.left-pane-hidden{--left-panel-width:0px}.app-shell.right-pane-hidden{--right-panel-width:0px}.app-shell.home-mode{--left-panel-width:0px;--right-panel-width:0px}.topbar{background:#f8fafc;border-bottom:1px solid #cbd5e1;grid-area:topbar;align-items:center;gap:10px;min-width:0;padding:6px 12px;display:flex}.brand-block{align-items:center;gap:11px;width:224px;min-width:224px;display:flex}.brand-block h1{color:#0f172a;letter-spacing:0;margin:0;font-size:14px;font-weight:700}.brand-block p{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:185px;margin:2px 0 0;font-size:12px;overflow:hidden}.toolbar-group{border-radius:var(--r-md);height:40px;padding:var(--space-1);background:#fff;border:1px solid #d7dee8;align-items:center;gap:6px;display:inline-flex}.workspace-nav,.pane-controls{flex:none}.toolbar-spacer{flex:1;min-width:8px}.artboard-control{gap:var(--space-2);padding-left:10px}.artboard-control select{color:#334155;background:0 0;border:0;width:220px;max-width:24vw;font-size:13px}.icon-button,.text-button{border-radius:var(--r-sm);color:#475569;cursor:pointer;background:0 0;justify-content:center;align-items:center;height:30px;display:inline-flex}.icon-button{width:30px}.text-button{gap:6px;padding:0 9px;font-size:13px;font-weight:600}.nav-button{border-radius:var(--r-sm);color:#475569;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;height:30px;padding:0 10px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.icon-button:hover,.text-button:hover,.nav-button:hover{background:var(--control-bg-hover);color:var(--text-1)}.icon-button.active,.nav-button.active{background:var(--control-bg-active);color:var(--text-1)}.icon-button:disabled,.text-button:disabled,.wide-action:disabled,.segmented-row button:disabled{cursor:not-allowed;opacity:.42}.icon-button:disabled:hover,.text-button:disabled:hover,.wide-action:disabled:hover{color:#475569;background:0 0}.zoom-readout{color:#334155;text-align:center;width:45px;font-size:12px;font-weight:600}.home-view{background:#f4f7fb;border-left:1px solid #dbe3ee;border-right:1px solid #dbe3ee;grid-area:canvas;min-width:0;min-height:0;overflow:auto}.home-shell{max-width:1040px;margin:0 auto;padding:28px 24px 44px}.home-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:18px;display:flex}.home-header h2,.home-empty h3,.board-card h3{color:#0f172a;letter-spacing:0;margin:0}.home-header h2{font-size:22px;font-weight:700}.board-card-head p{color:var(--text-2);margin:4px 0 0;font-size:12px;font-weight:500}.home-meta{margin-top:var(--space-2);flex-wrap:wrap;gap:7px;display:flex}.home-meta span,.storage-pill{border-radius:var(--r-pill);background:var(--control-bg);color:var(--text-2);padding:5px 9px;font-size:11px;font-weight:600}.storage-pill.cloud{align-items:center;gap:6px;display:inline-flex}.storage-pill.cloud:before{content:"";background:#059669;border-radius:50%;width:6px;height:6px}.text-button.home-create,[data-theme=dark] .text-button.home-create{border-radius:var(--r-md);background:var(--accent);height:32px;color:var(--accent-fg);padding:0 12px}.text-button.home-create:hover,[data-theme=dark] .text-button.home-create:hover{background:var(--accent-hover);color:var(--accent-fg)}.home-header-actions{align-items:center;gap:var(--space-2);display:flex}.text-button.home-connect{border-radius:var(--r-md);background:var(--control-bg);height:32px;color:var(--text-2);padding:0 12px}.text-button.home-connect:hover{background:var(--accent-tint);color:var(--accent)}.home-connect-strip{border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:18px;padding:9px 12px;font-size:12px;display:flex}.home-connect-text strong{color:var(--text-1);font-weight:600}.home-connect-strip code{border-radius:var(--r-sm);background:var(--control-bg);color:var(--text-1);padding:3px 7px;font-size:11px}.home-connect-strip .copy-chip{margin-left:-2px}.home-connect-more{color:var(--accent);cursor:pointer;margin-left:auto;font-size:12px;font-weight:600}.home-connect-more:hover{text-decoration:underline}.connect-dot{border-radius:50%;flex:none;width:6px;height:6px}.connect-dot.ok{background:#059669}.connect-dot.down{background:#dc2626}.text-button.first-run-connect{color:var(--accent);margin-top:2px}.board-card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.board-card{border-radius:var(--r-md);min-width:0;min-height:168px;box-shadow:0 0 0 1px var(--hairline);cursor:pointer;background:#fff;flex-direction:column;padding:13px;transition:box-shadow .12s,transform .12s;display:flex}.board-card:hover,.board-card:focus-visible{box-shadow:0 0 0 1px var(--hairline), var(--shadow-2);transform:translateY(-1px)}.board-card-head{align-items:start;gap:var(--space-2);grid-template-columns:24px minmax(0,1fr) auto;display:grid}.board-card-head svg{color:var(--text-2);margin-top:1px}.board-card h3{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.card-open-button{border-radius:var(--r-sm);height:26px;color:var(--text-2);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.card-open-button:hover{background:var(--control-bg-hover);color:var(--text-1)}.card-head-actions{align-items:center;gap:6px;display:inline-flex}.card-delete-button{border-radius:var(--r-sm);color:#94a3b8;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:26px;height:26px;transition:color .12s,background .12s,border-color .12s;display:inline-flex}.card-delete-button svg{color:inherit;margin-top:0}.card-delete-button:hover{color:#dc2626;background:#dc26261a;border-color:#dc262647}.card-delete-button:focus-visible{color:#dc2626;box-shadow:var(--focus-ring);outline:none}.board-meta{gap:6px;margin:13px 0 8px;display:flex}.board-meta span{border-radius:var(--r-pill);background:var(--control-bg);color:var(--text-2);padding:5px 8px;font-size:11px;font-weight:600}.frame-chip-list{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:54px;display:flex}.frame-chip{border-radius:var(--r-sm);background:var(--control-bg);max-width:100%;min-height:26px;color:var(--text-2);align-items:center;gap:7px;padding:5px 7px;font-size:11px;font-weight:600;display:inline-flex}.frame-chip small{color:var(--text-2);font-size:11px;font-weight:600}.frame-chip.more,.frame-chip.empty{color:var(--text-2)}.home-empty{align-content:center;place-items:center;gap:var(--space-3);border-radius:var(--r-md);min-height:260px;box-shadow:0 0 0 1px var(--hairline);color:#64748b;background:#fff;display:grid}.home-empty h3{color:inherit;font-size:14px;font-weight:700}.home-empty .wide-action{width:auto;min-width:150px;margin-bottom:0;padding:0 14px}.home-empty p{text-align:center;max-width:42ch;color:inherit;opacity:.82;margin:0;font-size:13px;line-height:1.5}.home-empty small{color:inherit;opacity:.62;font-size:12px}.home-first-run{gap:var(--space-4);background:radial-gradient(120% 90% at 50% -10%, var(--accent-tint), transparent 60%), #fff;color:var(--ink-2,#475569)}.home-first-run .wide-action{background:var(--accent);color:var(--accent-fg);justify-content:center}.home-first-run .wide-action:hover{background:var(--accent-hover);color:var(--accent-fg)}.home-first-run .wide-action svg{color:inherit}.first-run-motif{border-radius:var(--r-lg);background:var(--accent-tint);width:56px;height:56px;color:var(--accent-strong);place-items:center;display:grid;position:relative}.first-run-spark{color:var(--accent);position:absolute;top:-6px;right:-6px}.home-first-run h3{font-size:17px}.home-error{color:#9f3f3f;background:#fdf5f5;box-shadow:0 0 0 1px #f0c9c9}.home-error h3{font-size:17px}.board-card-skeleton{cursor:default;gap:var(--space-4);pointer-events:none}.board-card-skeleton:hover{box-shadow:0 0 0 1px var(--hairline);transform:none}.skeleton-head{align-items:center;gap:var(--space-3);display:flex}.skeleton-lines{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.skeleton-glyph,.skeleton-line,.skeleton-chip{border-radius:var(--r-sm);background:linear-gradient(100deg,#eef2f7 30%,#f7fafc 50%,#eef2f7 70%) 0 0/220% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer}.skeleton-glyph{border-radius:var(--r-md);flex:none;width:30px;height:30px}.skeleton-line{height:11px}.skeleton-line.short{width:55%}.skeleton-chips{gap:var(--space-2);margin-top:auto;display:flex}.skeleton-chip{border-radius:var(--r-pill);width:72px;height:22px}@keyframes skeleton-shimmer{0%{background-position:220% 0}to{background-position:-20% 0}}@media (prefers-reduced-motion:reduce){.skeleton-glyph,.skeleton-line,.skeleton-chip{animation:none}}.dialog-backdrop{z-index:80;padding:var(--space-5);background:#0f172a42;place-items:center;display:grid;position:fixed;inset:0}.new-board-dialog{gap:var(--space-4);border-radius:var(--r-md);width:min(420px,100%);box-shadow:var(--shadow-3);background:#fff;border:1px solid #d7dee8;padding:18px;display:grid}.new-board-dialog h2{color:#0f172a;letter-spacing:0;margin:0;font-size:17px;font-weight:700}.new-board-dialog p{color:var(--text-2);margin:5px 0 0;font-size:12px;font-weight:500}.dialog-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.dialog-actions button{border-radius:var(--r-md);height:34px;color:var(--text-1);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.dialog-actions button:hover:not(:disabled){background:var(--control-bg-hover)}.dialog-actions button[type=submit]{background:var(--accent);color:var(--accent-fg)}.dialog-actions button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.dialog-actions button.danger{color:#fff;background:#dc2626}.dialog-actions button.danger:hover:not(:disabled){background:#c81e1e}.dialog-actions button:disabled{opacity:.6;cursor:not-allowed}.delete-board-dialog .dialog-head p strong{color:inherit;font-weight:600}.left-panel,.right-panel{overscroll-behavior:contain;background:#f8fafc;border-right:1px solid #cbd5e1;flex-direction:column;min-height:0;display:flex;overflow-y:auto}.left-panel{grid-area:left}.right-panel{border-left:1px solid #cbd5e1;border-right:0;grid-area:right}.panel-section{border-bottom:1px solid #dbe3ee;flex-direction:column;flex:none;min-height:0;padding:12px 10px;display:flex}.layers-section{flex:280px;min-height:240px;overflow:hidden}.panel-title{align-items:center;gap:var(--space-2);width:100%;min-height:30px;margin-bottom:var(--space-3);border-radius:var(--r-sm);color:#475569;cursor:pointer;text-align:left;background:0 0;padding:0;display:flex}.panel-title:hover{color:var(--text-1)}.panel-section.collapsed{flex:none;min-height:auto}.panel-section.collapsed .panel-title{margin-bottom:0}.panel-content{min-height:0}.layers-section .panel-content{flex-direction:column;flex:1;min-height:0;display:flex}.panel-heading{color:var(--text-1);letter-spacing:0;margin:0;font-size:12px;font-weight:600}.component-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.component-grid button,.wide-action{border-radius:var(--r-md);min-height:32px;color:var(--text-1);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:500}.component-grid button:hover,.wide-action:hover{background:var(--control-bg-hover);color:var(--text-1)}.wide-action{justify-content:flex-start;align-items:center;gap:var(--space-2);width:100%;margin-bottom:2px;padding:0 9px;display:flex}.wide-action svg{color:var(--text-2)}.asset-list,.flow-list,.layers-list{display:grid;overflow:auto}.asset-list,.flow-list{gap:7px}.layers-list{flex:1;align-content:start;gap:2px;min-height:0;padding-right:2px}.asset-row,.flow-row{align-items:center;gap:var(--space-2);border-radius:var(--r-md);min-width:0;color:var(--text-1);background:0 0;padding:5px 7px;font-size:12px;font-weight:500;display:flex}.flow-row:hover{background:var(--control-bg-hover);cursor:pointer}.flow-row.selected{background:var(--accent-soft);color:var(--accent)}.asset-row img{border-radius:var(--r-sm);object-fit:cover;width:30px;height:30px}.asset-row span,.flow-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-group{gap:1px;display:grid}.layer-row{border-radius:var(--r-sm);color:#475569;text-align:left;background:0 0;align-items:center;gap:5px;width:100%;min-width:0;min-height:22px;padding:2px 5px;font-size:11px;font-weight:600;line-height:1.15;display:flex}.layer-row svg{flex:none}.layer-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-row small,.artboard-label small,.element-name-badge small{color:currentColor;opacity:.52;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.layer-spacer{flex:none;width:11px;height:11px}.canvas-viewport{overscroll-behavior:contain;overflow-anchor:none;touch-action:none;background-color:#dfe7f1;grid-area:canvas;min-width:0;min-height:0;position:relative;overflow:hidden}.canvas-viewport.space-pan{cursor:grab}.canvas-viewport.panning{cursor:grabbing}.canvas-space{position:absolute;inset:0;overflow:hidden}.canvas-grid{pointer-events:none;background-image:linear-gradient(#64748b29 1px,#0000 1px),linear-gradient(90deg,#64748b29 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.canvas-plane{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.connector-layer{z-index:2;pointer-events:none;position:absolute;inset:0}.connector text{fill:#44403c;paint-order:stroke;stroke:#fff;stroke-width:5px;font-size:12px;font-weight:600}.connector.agent-active path{filter:drop-shadow(0 0 7px rgba(var(--accent-rgb), .36));animation:2.2s ease-out agentConnectorPulse}.artboard-frame{z-index:1;position:absolute}.artboard-label{border-radius:var(--r-sm);color:#334155;max-width:calc(100% - 20px);height:24px;box-shadow:var(--shadow-2);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;align-items:center;padding:0 9px;font-size:12px;font-weight:600;display:flex;position:absolute;top:-31px;left:10px;overflow:hidden}.artboard-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.artboard-label em{margin-left:var(--space-2);border-radius:var(--r-pill);color:#475569;white-space:nowrap;background:#0f172a14;padding:0 6px;font-size:11px;font-style:normal;font-weight:700;line-height:16px}.artboard-frame.selected .artboard-label{background:var(--accent);color:var(--accent-fg)}.artboard-frame.selected .artboard-label em{color:#fff;background:#ffffff2e}.artboard-surface{outline:1px solid #0f172a1a;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 24px 70px #0f172a33}.artboard-frame.selected .artboard-surface{outline:calc(2px / var(--zoom,1)) solid var(--accent);outline-offset:calc(1px / var(--zoom,1))}.artboard-frame.agent-active .artboard-surface{animation:2.4s ease-out agentFramePulse}.board-element{cursor:grab;-webkit-user-select:none;user-select:none;min-width:12px;min-height:12px;display:flex;position:absolute;overflow:hidden}.board-element.locked{cursor:default}.board-element.kind-image.locked,.board-element.kind-screenshotOverlay.locked{pointer-events:none}.board-element.selected{overflow:visible}.selection-ring{z-index:41;pointer-events:none;border:calc(1px / var(--zoom,1)) solid var(--accent);box-shadow:0 0 0 calc(1px / var(--zoom,1)) #fffc;position:absolute}.board-element.selected-ancestor{overflow:visible}.board-element.agent-active:not(.selected){outline:calc(1px / var(--zoom,1)) solid rgba(var(--accent-rgb), .86);outline-offset:calc(2px / var(--zoom,1))}.agent-pulse-layer{z-index:35;pointer-events:none;position:absolute;inset:0}.agent-reticle{z-index:36;pointer-events:none;background:rgba(var(--agent-rgb), .045);transition:left .42s cubic-bezier(.22,.68,.24,1),top .42s cubic-bezier(.22,.68,.24,1),width .42s cubic-bezier(.22,.68,.24,1),height .42s cubic-bezier(.22,.68,.24,1),background-color .26s ease-out;animation:.32s cubic-bezier(.16,1,.3,1) agentReticleIn;position:absolute}.agent-reticle.is-editing{background:rgba(var(--agent-rgb), .09)}.agent-reticle-corner{width:calc(14px / var(--zoom,1));height:calc(14px / var(--zoom,1));border:0 solid rgba(var(--agent-rgb), .92);animation:2.6s ease-in-out infinite agentReticleBreathe;position:absolute}.agent-reticle.is-editing .agent-reticle-corner{border-color:rgba(var(--agent-rgb), 1);filter:drop-shadow(0 0 calc(5px / var(--zoom,1)) rgba(var(--agent-rgb), .55));animation-duration:1.1s}.agent-reticle-corner.tl{border-left-width:calc(1.5px / var(--zoom,1));border-top-width:calc(1.5px / var(--zoom,1));--dx:-1;--dy:-1;top:0;left:0}.agent-reticle-corner.tr{border-right-width:calc(1.5px / var(--zoom,1));border-top-width:calc(1.5px / var(--zoom,1));--dx:1;--dy:-1;top:0;right:0}.agent-reticle-corner.bl{border-left-width:calc(1.5px / var(--zoom,1));border-bottom-width:calc(1.5px / var(--zoom,1));--dx:-1;--dy:1;bottom:0;left:0}.agent-reticle-corner.br{border-right-width:calc(1.5px / var(--zoom,1));border-bottom-width:calc(1.5px / var(--zoom,1));--dx:1;--dy:1;bottom:0;right:0}.agent-reticle-label{transform-origin:0 0;background:rgba(var(--agent-rgb), .92);color:var(--accent-fg);letter-spacing:.01em;white-space:nowrap;border-radius:5px;margin-top:5px;padding:0 6px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:100%;left:0}@keyframes agentReticleIn{0%{opacity:0}to{opacity:1}}@keyframes agentReticleBreathe{0%,to{opacity:.62;transform:translate(0)}50%{opacity:1;transform:translate(calc(var(--dx,0) * 2px / var(--zoom,1)), calc(var(--dy,0) * 2px / var(--zoom,1)))}}.agent-presence-veil{z-index:30;opacity:0;pointer-events:none;width:calc(100% - 6px);height:calc(100% - 6px);transition:opacity .46s ease-out;position:absolute;inset:3px;overflow:visible}.agent-presence-veil.is-live{opacity:1}.agent-presence-veil rect{fill:none}.agent-veil-base{stroke:rgba(var(--accent-rgb), .18);stroke-width:1px}.agent-veil-sheen{stroke:rgba(var(--accent-rgb), .85);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:15 85;filter:drop-shadow(0 0 6px rgba(var(--accent-rgb), .5));animation:5.6s linear infinite paused agentVeilSweep}.agent-presence-veil.is-live .agent-veil-sheen{animation-play-state:running}@keyframes agentVeilSweep{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100px}}.agent-pulse-outline{border:calc(1.5px / var(--zoom,1)) solid rgba(var(--accent-rgb), .92);box-shadow:0 0 0 0 rgba(var(--accent-rgb), .28);animation:2.4s ease-out agentElementPulse;position:absolute}.selection-badge-layer{z-index:40;pointer-events:none;position:absolute;inset:0}.element-name-badge{z-index:20;align-items:center;gap:var(--space-2);border-radius:var(--r-sm);background:color-mix(in srgb, var(--text-1) 88%, transparent);max-width:min(360px,100%);height:20px;color:var(--panel-bg);box-shadow:var(--shadow-1);pointer-events:none;white-space:nowrap;padding:0 7px;font-size:11px;font-weight:600;line-height:20px;display:inline-flex;position:absolute;top:-24px;left:-2px}.board-element.kind-button,.board-element.kind-badge,.board-element.kind-icon{justify-content:center;align-items:center;font-weight:700}.board-element.kind-line,.board-element.kind-sparkline{justify-content:stretch;align-items:stretch}.board-element.kind-text,.board-element.kind-sticky{align-items:flex-start}.material-icon-primitive,.line-primitive,.sparkline-primitive{width:100%;height:100%;display:block}.material-icon-primitive{fill:currentColor;padding:22%}.line-primitive{overflow:visible}.sparkline-primitive{fill:none;overflow:visible}.sparkline-primitive polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.board-element.kind-image img,.board-element.kind-screenshotOverlay img{object-fit:cover;width:100%;height:100%}.board-element.kind-screenshotOverlay img{object-fit:contain}.resize-handle{z-index:42;width:calc(var(--space-2) / var(--zoom,1));height:calc(var(--space-2) / var(--zoom,1));border:calc(1.5px / var(--zoom,1)) solid #fff;border-radius:var(--r-pill);background:var(--accent);box-shadow:0 0 0 calc(.5px / var(--zoom,1)) rgba(var(--accent-rgb), .55);padding:0;position:absolute}.resize-handle:before{content:"";inset:calc(-4px / var(--zoom,1));position:absolute}.resize-handle.nw{left:calc(var(--space-1) / var(--zoom,1) * -1);top:calc(var(--space-1) / var(--zoom,1) * -1);cursor:nwse-resize}.resize-handle.ne{right:calc(var(--space-1) / var(--zoom,1) * -1);top:calc(var(--space-1) / var(--zoom,1) * -1);cursor:nesw-resize}.resize-handle.sw{left:calc(var(--space-1) / var(--zoom,1) * -1);bottom:calc(var(--space-1) / var(--zoom,1) * -1);cursor:nesw-resize}.resize-handle.se{right:calc(var(--space-1) / var(--zoom,1) * -1);bottom:calc(var(--space-1) / var(--zoom,1) * -1);cursor:nwse-resize}.artboard-resize-handle{right:calc(var(--space-2) / var(--zoom,1) * -1);bottom:calc(var(--space-2) / var(--zoom,1) * -1);z-index:5;width:calc(var(--space-3) / var(--zoom,1));height:calc(var(--space-3) / var(--zoom,1));border:calc(2px / var(--zoom,1)) solid #fff;border-radius:var(--r-pill);background:var(--accent);box-shadow:0 0 0 calc(.5px / var(--zoom,1)) rgba(var(--accent-rgb), .55);cursor:nwse-resize;padding:0;position:absolute}.artboard-resize-handle:before{content:"";inset:calc(-5px / var(--zoom,1));position:absolute}.mock-card,.mock-dialog,.mock-list,.mock-table,.mock-paywall,.mock-empty,.mock-input,.mock-chart{width:100%;height:100%}.mock-card{flex-direction:column;justify-content:center;display:flex}.mock-card span,.mock-paywall span{color:#44403c;text-transform:uppercase;font-size:11px;font-weight:700}.mock-card strong{margin-top:7px;font-size:28px;line-height:1}.mock-card p,.mock-dialog p,.mock-empty p{color:inherit;opacity:.72;margin:7px 0 0;font-size:13px}.mock-dialog button,.mock-paywall button{border-radius:var(--r-lg);color:#fff;background:#111827;height:40px;padding:0 18px;font-size:13px;font-weight:700}.mock-dialog{flex-direction:column;display:flex}.mock-dialog strong,.mock-paywall strong,.mock-empty strong,.mock-list strong,.mock-table strong,.mock-chart strong{font-weight:700}.mock-dialog button{align-self:flex-start;margin-top:auto}.mock-input{flex-direction:column;justify-content:center;display:flex}.mock-input span{opacity:.65;font-size:11px;font-weight:700}.mock-input strong{margin-top:var(--space-1);opacity:.76;font-size:14px}.mock-nav{align-items:center;gap:14px;width:100%;display:flex}.mock-nav div{justify-content:flex-end;gap:var(--space-3);opacity:.72;flex:1;min-width:0;font-size:12px;display:flex;overflow:hidden}.mock-list{align-content:start;gap:var(--space-2);display:grid}.mock-list p{border-top:1px solid #94a3b859;margin:0;padding-top:9px;font-size:13px}.mock-chart{flex-direction:column;display:flex}.mock-chart div{padding-top:var(--space-4);flex:1;align-items:flex-end;gap:9px;display:flex}.mock-chart i{border-radius:var(--r-md) var(--r-md) 3px 3px;background:#44403c;flex:1}.mock-table-grid{margin-top:var(--space-3);border-radius:var(--r-lg);border:1px solid #e2e8f0;display:grid;overflow:hidden}.mock-table-grid b,.mock-table-grid span{text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #e2e8f0;min-width:0;padding:8px 9px;overflow:hidden}.mock-table-grid b{color:#64748b;text-transform:uppercase;background:#f8fafc;font-size:11px}.mock-table-grid span{font-size:12px}.mock-paywall{flex-direction:column;display:flex}.mock-paywall strong{margin-top:var(--space-2);font-size:28px;line-height:1}.mock-paywall p{margin:8px 0 0;font-size:17px;font-weight:700}.mock-paywall ul{gap:10px;margin:20px 0;padding:0;font-size:13px;list-style:none;display:grid}.mock-paywall li:before{content:"✓";margin-right:var(--space-2);color:#059669;font-weight:700}.mock-paywall button{width:100%;margin-top:auto}.mock-empty{text-align:center;place-content:center;height:100%;display:grid}.inspector-fields{gap:var(--space-3);display:grid}.field-grid{gap:var(--space-2);display:grid}.field-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.field{color:var(--text-2);letter-spacing:.005em;gap:5px;font-size:11px;font-weight:600;display:grid}.field input{border-radius:var(--r-md);color:#0f172a;text-transform:none;background:#fff;border:1px solid #d7dee8;min-width:0;height:30px;padding:0 9px;font-size:13px;font-weight:500}.field.compact{border-radius:var(--r-md);background:var(--control-bg);grid-template-columns:24px minmax(0,1fr);align-items:stretch;gap:0;height:30px;display:grid;overflow:hidden}.field.compact:focus-within{box-shadow:0 0 0 2px var(--accent)}.field.row{align-items:center;column-gap:var(--space-2);grid-template-columns:minmax(0,1fr) 114px;height:30px;display:grid}.field-row-label{cursor:ew-resize;text-overflow:ellipsis;white-space:nowrap;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}.field.is-derived{opacity:.62}.field.is-derived .field-glyph,.field.is-derived .field-row-label{cursor:default}.field.is-derived input{cursor:not-allowed}.field-hint{color:var(--text-2);margin:0;font-size:11px;line-height:1.45}.field-row-control{border-radius:var(--r-md);background:var(--control-bg);height:30px;display:grid;overflow:hidden}.field.row:focus-within .field-row-control,.field.compact:focus-within{box-shadow:0 0 0 2px var(--accent)}.field.row.scrubbing .field-row-control{background:var(--control-bg-active)}.field.row .field-row-label:hover,.field.row.scrubbing .field-row-label{color:var(--text-1)}.field-glyph{color:var(--text-2);cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none;place-content:center;font-size:10.5px;font-weight:600;display:grid}.field.compact:hover .field-glyph,.field.compact.scrubbing .field-glyph{color:var(--text-1)}.field.compact.scrubbing{background:var(--control-bg-active)}.field.compact input,.field.compact input:focus,.field.row .field-row-control input,.field.row .field-row-control input:focus{height:100%;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 8px 0 2px;font-size:12.5px}.field.row .field-row-control input{padding-left:9px}.field.compact input::-webkit-outer-spin-button{appearance:none;margin:0}.field.compact input::-webkit-inner-spin-button{appearance:none;margin:0}.field.row input::-webkit-outer-spin-button{appearance:none;margin:0}.field.row input::-webkit-inner-spin-button{appearance:none;margin:0}.field.compact input[type=number],.field.row input[type=number]{appearance:textfield}.inspector-group{gap:var(--space-2);border-top:1px solid var(--hairline);padding-top:var(--space-3);display:grid}.inspector-group.collapsed{gap:0}.inspector-group-title{border-radius:var(--r-sm);color:var(--text-2);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:600;display:flex}.inspector-group-title:hover{color:var(--text-1)}.inspector-group-title svg{flex:none}.inspector-group-body{gap:var(--space-2);display:grid}.readonly-field input{color:#475569;background:#eef2f7;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}.readonly-value-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.readonly-value-row button{border-radius:var(--r-md);background:var(--control-bg);height:30px;color:var(--text-1);cursor:pointer;text-transform:none;border:0;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.readonly-value-row button:hover{background:var(--control-bg-hover)}.field input[type=range]{padding:0}.color-field{align-items:center;column-gap:var(--space-2);grid-template-columns:minmax(0,1fr) 30px 84px;height:30px}.color-field>span{text-overflow:ellipsis;white-space:nowrap;align-self:center;overflow:hidden}.color-field input[type=color]{cursor:pointer;width:30px;height:30px;padding:3px}.color-field input:not([type=color]){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.segmented-row{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.segmented-row button{border-radius:var(--r-md);background:var(--control-bg);height:32px;color:var(--text-1);cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:500;display:flex}.segmented-row button:hover{background:var(--control-bg-hover)}.segmented-row button:disabled:hover{background:var(--control-bg)}.selection-list{gap:6px;display:grid}.selection-row{border-radius:var(--r-md);min-width:0;padding:var(--space-2);background:#fff;border:1px solid #e2e8f0;gap:2px;display:grid}.selection-row span,.selection-row small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.selection-row span{color:#334155;font-size:12px;font-weight:600}.selection-row small{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:600}.id-details{border-radius:var(--r-md);background:var(--control-bg);padding:var(--space-2)}.id-details summary{color:var(--text-2);cursor:pointer;font-size:11px;font-weight:600}.id-details .readonly-field{margin-top:var(--space-2)}.empty-inspector{color:#64748b;text-align:center;place-items:center;min-height:180px;display:grid}.document-head{gap:1px;display:grid}.document-head strong{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.document-head small{color:var(--text-2);font-size:11px}.document-stats{border-radius:var(--r-md);background:var(--hairline);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.document-stats>div{justify-content:space-between;align-items:baseline;gap:var(--space-2);background:var(--control-bg);padding:7px 9px;display:flex}.document-stats dt{color:var(--text-2);font-size:11px;font-weight:500}.document-stats dd{color:var(--text-1);font-variant-numeric:tabular-nums;margin:0;font-size:12px;font-weight:600}.muted{color:#64748b;margin:0;font-size:12px;line-height:1.45}.statusbar{color:#cbd5e1;background:#0f172a;border-top:1px solid #cbd5e1;grid-area:status;align-items:center;gap:14px;min-width:0;padding:0 14px;font-size:12px;display:flex;overflow:hidden}.status-message{align-items:center;gap:var(--space-2);text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-flex;overflow:hidden}.status-message svg{flex:none}.statusbar.has-error{color:#fecaca;background:#7f1d1d}.status-message.is-error{color:#fecaca;font-weight:600}.agent-edit-stamp{color:#94a3b8;white-space:nowrap;flex:none;margin-left:auto;font-size:11px;font-weight:600}@keyframes agentElementPulse{0%{border-color:rgba(var(--accent-rgb), 0);box-shadow:0 0 0 0 rgba(var(--accent-rgb), 0);opacity:0}12%{border-color:rgba(var(--accent-rgb), .92);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .18);opacity:1}56%{border-color:rgba(var(--accent-rgb), .72);box-shadow:0 0 0 12px rgba(var(--accent-rgb), .08);opacity:.92}to{border-color:rgba(var(--accent-rgb), 0);box-shadow:0 0 0 18px rgba(var(--accent-rgb), 0);opacity:0}}@keyframes agentFramePulse{0%{outline-color:rgba(var(--accent-rgb), 0);box-shadow:0 24px 70px #0f172a33, 0 0 0 0 rgba(var(--accent-rgb), 0)}16%{outline-color:rgba(var(--accent-rgb), .86);box-shadow:0 24px 70px #0f172a33, 0 0 0 5px rgba(var(--accent-rgb), .18)}to{box-shadow:0 24px 70px #0f172a33, 0 0 0 16px rgba(var(--accent-rgb), 0);outline-color:#0f172a1a}}@keyframes agentConnectorPulse{0%{stroke-width:2.5px;opacity:.35}18%{stroke-width:5px;opacity:1}to{stroke-width:2.5px;opacity:1}}:root{--accent:#5b62d6;--accent-hover:#4d55cc;--accent-strong:#3a41ad;--accent-fg:#fff;--accent-rgb:91, 98, 214;--accent-soft:rgba(var(--accent-rgb), .12);--accent-tint:#ecedfb;--accent-border:#b9bef0;--agent-lane-0:var(--accent-rgb);--agent-lane-1:15, 118, 110;--agent-lane-2:180, 83, 9;--agent-lane-3:190, 18, 60;--agent-lane-4:126, 34, 206;--agent-lane-5:21, 128, 61;--agent-rgb:var(--accent-rgb);--panel-bg:#f9fafc;--panel-border:#0f172a14;--surface-1:#fff;--surface-2:#eef1f6;--text-1:#0f172a;--text-2:#64748b;--hairline:#0f172a12;--control-bg:#0f172a0d;--control-bg-hover:#0f172a17;--control-bg-active:#0f172a21;--shadow-pop:var(--shadow-2);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--shadow-1:0 1px 2px #0f12220f, 0 1px 1px #0f12220a;--shadow-2:0 4px 12px #0f12221a, 0 1px 3px #0f12220f;--shadow-3:0 16px 40px #0f122229, 0 4px 12px #0f122214;--dur-fast:.12s;--dur-med:.2s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.45, 0, .25, 1);--focus-ring:0 0 0 2px #fff, 0 0 0 4px var(--accent)}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-med:0s}}.canvas-viewport.tool-connect,.canvas-viewport.tool-connect .artboard-surface,.canvas-viewport.connect-armed,.canvas-viewport.tool-ink,.canvas-viewport.tool-ink .artboard-surface{cursor:crosshair}.palette-mode-switch{gap:var(--space-1);border-radius:var(--r-md);background:var(--surface-2);grid-template-columns:1fr 1fr;margin:10px 12px 4px;padding:3px;display:grid}.palette-mode-switch button{border-radius:var(--r-md);color:var(--text-2);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:7px 8px;font-size:12px;font-weight:600;transition:background .14s,color .14s;display:inline-flex}.palette-mode-switch button.active{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-1)}.shape-grid{grid-template-columns:repeat(4,1fr);gap:2px;display:grid}.shape-tile{border-radius:var(--r-md);color:var(--text-2);cursor:pointer;background:0 0;place-items:center;padding:8px 4px;transition:background .14s,color .14s;display:grid}.shape-tile:hover{background:var(--control-bg-hover);color:var(--text-1)}.shape-tile svg{width:30px;height:24px}.board-element.kind-shape,.board-element.kind-ink{background:0 0}.shape-primitive{place-items:center;width:100%;height:100%;display:grid;position:relative}.shape-primitive svg{width:100%;height:100%;position:absolute;inset:0}.shape-text{z-index:1;text-align:center;pointer-events:none;flex-direction:column;align-items:center;gap:3px;padding:0 10px;display:flex;position:relative}.shape-label{font-size:inherit;font-weight:inherit;line-height:1.25}.shape-subtitle{opacity:.72;font-size:.78em;font-weight:500;line-height:1.3}.ink-primitive,.line-primitive,.sparkline-primitive{width:100%;height:100%}.ink-draft-layer{z-index:6;pointer-events:none;position:absolute;inset:0}.connector-spine{transition:stroke-width .12s}.connector.selected .connector-spine{filter:drop-shadow(0 0 2px rgba(var(--accent-rgb), .5))}.connector-waypoint-dot{fill:var(--accent);stroke:#fff}.connector-label rect{fill:var(--surface-1);stroke:var(--hairline)}.connector-label text{fill:var(--text-1);stroke:none;font-size:12px;font-weight:500}.snap-guide{z-index:7;pointer-events:none;background:var(--accent);position:absolute}.snap-guide.vertical{width:calc(1px / var(--zoom,1));height:100%;top:0}.snap-guide.horizontal{height:calc(1px / var(--zoom,1));width:100%;left:0}.marquee-box{z-index:7;pointer-events:none;border:calc(1px / var(--zoom,1)) solid var(--accent);background:var(--accent-soft);border-radius:calc(var(--r-xs) / var(--zoom,1));position:absolute}.artboard-frame.frameless .artboard-surface{box-shadow:none;border:1px dashed #64748b66}.artboard-frame.connect-source .artboard-surface,.board-element.connect-source{outline:calc(2px / var(--zoom,1)) solid var(--accent);outline-offset:calc(2px / var(--zoom,1))}.inline-text-editor{width:100%;height:100%;padding:inherit;outline:2px solid var(--accent);border-radius:inherit;color:inherit;font:inherit;resize:none;z-index:3;background:#fffffff5;border:0;margin:0;position:absolute;inset:0}.agent-feed{flex-direction:column;gap:3px;max-height:240px;display:flex;overflow-y:auto}.agent-feed-row{border-radius:var(--r-md);text-align:left;cursor:pointer;background:0 0;align-items:flex-start;gap:9px;padding:7px 8px;transition:background .12s;display:flex}.agent-feed-row:hover{background:var(--surface-2)}.agent-feed-dot{background:rgb(var(--agent-rgb));width:7px;height:7px;box-shadow:0 0 0 3px rgba(var(--agent-rgb), .16);border-radius:50%;flex:none;margin-top:5px}.agent-feed-body{flex-direction:column;gap:2px;min-width:0;display:flex}.agent-feed-message{color:var(--text-1);font-size:12px;font-weight:500;line-height:1.3}.agent-feed-meta{color:var(--text-2);font-size:11px}.agent-feed-empty{justify-items:start;gap:var(--space-2);color:var(--text-2);padding:2px 0 4px;display:grid}.agent-feed-empty-row{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;display:grid}.agent-feed-empty-body{gap:2px;display:grid}.agent-feed-empty p{color:var(--text-1);margin:0;font-size:12px;font-weight:500}.agent-feed-empty small{opacity:.85;font-size:11px;line-height:1.35}.agent-feed-empty .agent-empty-motif{width:32px;height:32px}@media (prefers-reduced-motion:reduce){.connector.agent-active path,.artboard-frame.agent-active .artboard-surface,.agent-pulse-outline,.agent-live-dot,.agent-empty-pulse,.agent-empty-pulse-ring,.agent-reticle,.agent-reticle-corner,.agent-veil-sheen,.comment-pin,.comment-popover,.canvas-context-menu{animation:none}.agent-reticle{transition:none}.agent-reticle-corner{opacity:1}.agent-veil-sheen{stroke-dasharray:none;stroke:rgba(var(--accent-rgb), .4)}}.agent-live-row{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.agent-live-badge{align-items:center;gap:var(--space-1);border-radius:var(--r-pill);background:rgba(var(--agent-rgb), .12);color:var(--accent-strong);padding:3px var(--space-2) 3px 6px;align-self:flex-start;font-size:11px;font-weight:600;display:inline-flex}.agent-live-dot{border-radius:var(--r-pill);background:rgb(var(--agent-rgb));width:6px;height:6px;animation:agentLivePulse 1.1s var(--ease-in-out) infinite}.agent-live-badge.is-reading .agent-live-dot{animation-duration:2.6s}@keyframes agentLivePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.6)}}.agent-empty-motif{color:var(--accent)}.agent-empty-pulse{transform-origin:20px 24px;animation:agentEmptyDot 2.6s var(--ease-in-out) infinite}.agent-empty-pulse-ring{transform-origin:20px 24px;animation:agentEmptyRing 2.6s var(--ease-out) infinite}@keyframes agentEmptyDot{0%,to{opacity:.7;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}@keyframes agentEmptyRing{0%{opacity:.22;transform:scale(.55)}70%,to{opacity:0;transform:scale(1.5)}}.agent-empty-connect{margin-top:var(--space-2);border-radius:var(--r-md);background:var(--control-bg);color:var(--text-1);cursor:pointer;padding:var(--space-2) var(--space-3);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.agent-empty-connect:hover{background:var(--control-bg-hover)}.align-grid{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.align-grid button{border-radius:var(--r-md);color:var(--text-1);cursor:pointer;background:0 0;place-items:center;padding:7px 0;display:grid}.align-grid button:hover:not(:disabled){background:var(--control-bg-hover)}.align-grid button:disabled{opacity:.4;cursor:default}.inspector-subhead{color:var(--text-2);letter-spacing:.04em;margin:4px 0 0;font-size:11px;font-weight:600}.toggle-row{gap:var(--space-2);color:var(--text-2);cursor:pointer;align-items:flex-start;font-size:12px;display:flex}.toggle-row input{margin-top:2px}.wide-action.danger{color:#e11d48}.wide-action.danger:hover{background:#e11d481a}.backup-panel{flex-direction:column;gap:9px;display:flex}.backup-status{border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;gap:2px;padding:9px 11px;display:flex}.backup-status.ok strong{color:#059669}.backup-status.failed{background:#e11d481a}.backup-status.failed strong{color:#e11d48}.backup-status small{color:var(--text-2);font-size:11px}.backup-dir{font-size:11px}.backup-badge{white-space:nowrap;flex:none;font-size:11px;font-weight:600}.backup-badge.ok{color:#6ee7b7}.backup-badge.failed{color:#fda4af}.statusbar-spacer{flex:auto}.status-hint{color:#94a3b8;white-space:nowrap;flex:none;font-size:11px;font-weight:500}.palette-backdrop{align-items:flex-start;padding-top:12vh}.command-palette{border-radius:var(--r-xl);background:var(--surface-1);width:min(560px,92vw);max-height:62vh;box-shadow:var(--shadow-3);border:1px solid var(--hairline);flex-direction:column;display:flex;overflow:hidden}.palette-input-row{border-bottom:1px solid var(--hairline);color:var(--text-2);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette-input-row input{color:var(--text-1);background:0 0;border:0;flex:1;font-size:14px}.palette-input-row kbd,.shortcut-row kbd,.palette-item kbd{border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);padding:2px 6px;font-family:inherit;font-size:11px}.palette-list{padding:6px;overflow-y:auto}.palette-section p{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin:8px 10px 3px;font-size:11px;font-weight:600}.palette-item{border-radius:var(--r-md);width:100%;color:var(--text-1);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:8px 10px;font-size:13px;display:flex}.palette-item.active{background:var(--control-bg-active);color:var(--text-1)}.palette-empty{text-align:center;color:var(--text-2);padding:20px;font-size:13px}.restore-dialog,.shortcut-overlay{border-radius:var(--r-xl);background:var(--surface-1);width:min(520px,92vw);max-height:76vh;box-shadow:var(--shadow-3);border:1px solid var(--hairline);padding:20px;overflow-y:auto}.restore-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.restore-head h2{align-items:center;gap:var(--space-2);color:var(--text-1);margin:0;font-size:17px;display:flex}.restore-list{flex-direction:column;gap:6px;margin:6px 0 12px;display:flex}.restore-row{border-radius:var(--r-md);background:var(--surface-2);justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.restore-row strong{color:var(--text-1);font-size:13px;display:block}.restore-row small{color:var(--text-2);font-size:11px}.restore-row button,.backup-panel .segmented-row button{border-radius:var(--r-md);background:var(--accent);color:#fff;cursor:pointer;padding:6px 12px;font-size:12px;font-weight:500}.backup-panel .segmented-row button{background:var(--surface-2);color:var(--text-1)}.restore-error{border-radius:var(--r-md);color:#e11d48;background:#e11d481a;padding:8px 12px;font-size:12px}.restore-footnote,.restore-dialog .muted{color:var(--text-2);font-size:11px}.shortcut-columns{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;display:grid}.shortcut-group p{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin:0 0 7px;font-size:11px;font-weight:600}.shortcut-row{color:var(--text-1);align-items:center;gap:10px;padding:4px 0;font-size:13px;display:flex}.shortcut-row kbd{flex:none;min-width:74px}.empty-inspector small{margin-top:var(--space-1);opacity:.8;font-size:11px;display:block}[data-theme=dark]{--accent:#8a93f0;--accent-hover:#9ba3f4;--accent-strong:#b3baf7;--accent-fg:#0b0d1e;--accent-rgb:138, 147, 240;--accent-soft:rgba(var(--accent-rgb), .18);--accent-tint:rgba(var(--accent-rgb), .14);--accent-border:rgba(var(--accent-rgb), .42);--agent-lane-1:45, 212, 191;--agent-lane-2:251, 191, 36;--agent-lane-3:251, 113, 133;--agent-lane-4:192, 132, 252;--agent-lane-5:74, 222, 128;--panel-bg:#131a26;--panel-border:#ffffff12;--surface-1:#1a2230;--surface-2:#202a3a;--text-1:#e5edf7;--text-2:#93a4bd;--hairline:#ffffff0f;--control-bg:#ffffff0f;--control-bg-hover:#ffffff1c;--control-bg-active:#ffffff29;--shadow-pop:var(--shadow-2);--shadow-1:0 1px 2px #0000004d, 0 1px 1px #00000038;--shadow-2:0 4px 12px #00000070, 0 1px 3px #00000052;--shadow-3:0 16px 40px #00000094, 0 4px 12px #0000006b;--focus-ring:0 0 0 2px #0c111b, 0 0 0 4px var(--accent);color:#e5edf7;background:#0c111b}[data-theme=dark] body,[data-theme=dark] .app-shell{background:#0c111b}[data-theme=dark] .topbar,[data-theme=dark] .left-panel,[data-theme=dark] .right-panel{background:#131a26;border-color:#263042}[data-theme=dark] .brand-block h1{color:#e5edf7}[data-theme=dark] .brand-block p,[data-theme=dark] .muted,[data-theme=dark] .panel-heading{color:#93a4bd}[data-theme=dark] .brand-mark,[data-theme=dark] .loading-mark{background:var(--accent);color:var(--accent-fg)}[data-theme=dark] .artboard-control select,[data-theme=dark] .field input,[data-theme=dark] .field select{color:#d7e2f0;background:#202a3a}[data-theme=dark] .icon-button,[data-theme=dark] .text-button,[data-theme=dark] .nav-button{color:#d7e2f0}[data-theme=dark] .icon-button.active,[data-theme=dark] .nav-button.active{background:var(--control-bg-active);color:var(--text-1)}[data-theme=dark] .panel-section{border-color:#263042}[data-theme=dark] .panel-title{color:#e5edf7}[data-theme=dark] .home-view,[data-theme=dark] .board-card{color:#e5edf7;background:#131a26}[data-theme=dark] .board-card{border-color:#263042}[data-theme=dark] .board-card h3,[data-theme=dark] .home-header h2{color:#e5edf7}[data-theme=dark] .home-empty{color:#93a4bd;background:#131a26;border-color:#2a3547}[data-theme=dark] .home-first-run{border-color:var(--accent-border);background:radial-gradient(120% 90% at 50% -10%, var(--accent-tint), transparent 60%), #131a26;color:#c3cfdf}[data-theme=dark] .home-error{color:#f0b4b4;background:#241315;border-color:#5b2a2a}[data-theme=dark] .skeleton-glyph,[data-theme=dark] .skeleton-line,[data-theme=dark] .skeleton-chip{background:linear-gradient(100deg,#1b2432 30%,#24303f 50%,#1b2432 70%) 0 0/220% 100%}[data-theme=dark] .board-card-skeleton:hover{border-color:#263042}[data-theme=dark] .new-board-dialog{color:#e5edf7;background:#1a2230}[data-theme=dark] .card-delete-button{color:#8a99ad}[data-theme=dark] .card-delete-button:hover{color:#ff8a7a;background:#ff8a7a24;border-color:#ff8a7a4d}[data-theme=dark] .field input,[data-theme=dark] .field select{border-color:#2a3547}[data-theme=dark] .empty-inspector{color:#93a4bd}[data-theme=dark] .inline-text-editor{background:#1a2230f5}[data-theme=dark] .dialog-backdrop{background:#04080f9e}.topbar{gap:var(--space-2);background:color-mix(in srgb, var(--panel-bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.15)blur(8px);backdrop-filter:saturate(1.15)blur(8px);border-bottom:1px solid var(--panel-border);padding:9px 14px}.topbar-left{flex:none;align-items:center;display:flex}.topbar-center{flex:0 auto;align-items:center;gap:7px;min-width:0;display:flex}.topbar-right{align-items:center;gap:var(--space-2);flex:none;display:flex}.brand-block{border-radius:var(--r-md);gap:10px;width:auto;min-width:0;max-width:260px;padding:3px 8px 3px 3px;text-decoration:none;transition:background .14s}.brand-block:hover{background:var(--control-bg-hover)}.brand-title{min-width:0}.brand-title h1{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;max-width:210px;margin:0;font-size:14px;font-weight:700;overflow:hidden}.brand-title p{align-items:center;gap:var(--space-1);max-width:210px;color:var(--text-2);margin:1px 0 0;font-size:12px;font-weight:500;display:flex}.brand-title.crumb{align-items:center;gap:5px;display:flex}.brand-title.crumb h1{max-width:190px}.brand-title.crumb>svg{color:var(--text-2);flex:none}.brand-crumb{align-items:center;gap:var(--space-1);color:var(--text-2);flex:none;font-size:12px;font-weight:500;display:inline-flex}.toolbar-group.segmented{background:0 0;gap:3px;height:38px}.tool-switcher .icon-button.active{background:var(--control-bg-active);color:var(--text-1)}.toolbar-menu{position:relative}.toolbar-menu-trigger{border-radius:var(--r-md);height:32px;color:var(--text-1);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;transition:background .14s;display:inline-flex}.toolbar-menu-trigger svg:first-child{color:var(--text-2)}.toolbar-menu-trigger:hover{background:var(--control-bg-hover)}.toolbar-menu-trigger.active{background:var(--control-bg-active)}.toolbar-menu-trigger .menu-caret{opacity:.6}.toolbar-menu-pop{z-index:70;border-radius:var(--r-lg);border:1px solid var(--panel-border);background:var(--surface-1);min-width:236px;box-shadow:var(--shadow-3);padding:7px;animation:.12s ease-out menuPop;position:absolute;top:calc(100% + 6px);left:0}@keyframes menuPop{0%{transform:translateY(-4px)}to{transform:translateY(0)}}.menu-item{border-radius:var(--r-md);width:100%;color:var(--text-1);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:9px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.menu-item svg{color:var(--text-2);flex:none}.menu-item:hover{background:var(--control-bg-hover)}.menu-item:hover svg{color:var(--text-1)}.menu-item:disabled{opacity:.4;cursor:not-allowed}.menu-item:disabled:hover{color:var(--text-1);background:0 0}.menu-heading{color:var(--text-2);letter-spacing:.06em;text-transform:uppercase;padding:6px 10px 3px;font-size:11px;font-weight:700}.menu-divider{background:var(--hairline);height:1px;margin:5px 6px}.menu-grid{grid-template-columns:repeat(6,1fr);gap:3px;padding:2px 4px 4px;display:grid}.menu-icon{border-radius:var(--r-sm);height:30px;color:var(--text-1);cursor:pointer;background:0 0;place-items:center;display:grid}.menu-icon:hover{background:var(--control-bg-hover)}.menu-icon:disabled{opacity:.4;cursor:not-allowed}.menu-field{gap:var(--space-1);padding:4px 8px 8px;display:grid}.menu-field span{color:var(--text-2);font-size:11px;font-weight:600}.menu-field select{border-radius:var(--r-md);border:1px solid var(--panel-border);background:var(--surface-2);height:32px;color:var(--text-1);padding:0 8px;font-size:13px}.connect-agent-button{border-radius:var(--r-md);background:var(--accent);height:32px;color:var(--accent-fg);cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:600;transition:background .12s;display:inline-flex}.connect-agent-button:hover{background:var(--accent-hover)}.app-shell.focus-mode{--left-panel-width:0px;--right-panel-width:0px;grid-template-rows:0 minmax(0,1fr) 30px}.app-shell.focus-mode .left-panel,.app-shell.focus-mode .right-panel{display:none}.app-shell.focus-mode .topbar{z-index:60;box-shadow:var(--shadow-3);transition:transform .2s;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.app-shell.focus-mode .topbar:hover,.focus-reveal-strip:hover+.topbar{transform:translateY(0)}.focus-reveal-strip{z-index:61;height:10px;position:fixed;top:0;left:0;right:0}.zoom-control{right:calc(var(--right-panel-width) + 18px);z-index:45;padding:var(--space-1);border-radius:var(--r-lg);border:1px solid var(--panel-border);background:color-mix(in srgb, var(--surface-1) 92%, transparent);-webkit-backdrop-filter:saturate(1.2)blur(10px);backdrop-filter:saturate(1.2)blur(10px);box-shadow:var(--shadow-3);align-items:center;gap:2px;transition:right .16s;display:inline-flex;position:fixed;bottom:44px}.zoom-seg{border-radius:var(--r-md);width:30px;height:30px;color:var(--text-2);cursor:pointer;background:0 0;place-items:center;display:grid}.zoom-seg:hover{background:var(--control-bg-hover);color:var(--text-1)}.zoom-seg.active{background:var(--control-bg-active);color:var(--text-1)}.zoom-seg:disabled{opacity:.4;cursor:not-allowed}.zoom-seg:disabled:hover{color:var(--text-2);background:0 0}.zoom-readout-button{border-radius:var(--r-md);min-width:52px;height:30px;color:var(--text-1);cursor:pointer;background:0 0;padding:0 8px;font-size:13px;font-weight:600}.zoom-readout-button:hover{background:var(--surface-2)}.zoom-divider{background:var(--hairline);width:1px;height:20px;margin:0 2px}.dialog-head{gap:3px;display:grid}.dialog-head h2{color:var(--text-1);margin:0;font-size:17px;font-weight:700}.dialog-head p{color:var(--text-2);margin:0;font-size:13px}.new-board-dialog{gap:var(--space-4);width:min(560px,92vw)}.template-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.template-card{border-radius:var(--r-lg);border:1.5px solid var(--panel-border);background:var(--surface-2);text-align:left;cursor:pointer;gap:5px;padding:14px 12px;transition:border-color .14s,transform .12s,background .14s;display:grid;position:relative}.template-card:hover{border-color:color-mix(in srgb, var(--text-2) 40%, var(--panel-border));transform:translateY(-2px)}.template-card.selected{border-color:var(--accent);background:var(--accent-soft)}.template-icon{border-radius:var(--r-md);background:var(--surface-1);width:34px;height:34px;color:var(--text-2);place-items:center;display:grid}.template-card.selected .template-icon{color:var(--accent)}.template-title{color:var(--text-1);font-size:14px;font-weight:600}.template-blurb{color:var(--text-2);font-size:12px;line-height:1.35}.template-check{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:10px;right:10px}[data-theme=dark] .template-check{color:#0c111b}.connect-dialog{gap:var(--space-4);border-radius:var(--r-xl);background:var(--surface-1);width:min(600px,94vw);color:var(--text-1);box-shadow:var(--shadow-3);padding:22px;display:grid}.connect-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.connect-title-row{gap:var(--space-3);display:flex}.connect-icon{border-radius:var(--r-md);background:var(--accent-soft);width:38px;height:38px;color:var(--accent);flex:none;place-items:center;display:grid}.connect-head h2{margin:0;font-size:17px;font-weight:700}.connect-head p{color:var(--text-2);max-width:380px;margin:3px 0 0;font-size:13px}.connect-health{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:600;display:inline-flex}.connect-health:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.connect-health.ok{color:#059669;background:#05966924}.connect-health.down{color:#dc2626;background:#dc262624}.connect-body{gap:var(--space-3);display:grid}.connect-row{gap:5px;display:grid}.connect-label{color:var(--text-2);font-size:11px;font-weight:600}.connect-value{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.connect-value strong{font-size:13px}.connect-value code,.connect-steps code{border-radius:var(--r-sm);background:var(--surface-2);padding:3px 7px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.copy-chip{border-radius:var(--r-sm);background:var(--control-bg);color:var(--text-1);cursor:pointer;border:0;align-items:center;gap:5px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-flex}.copy-chip:hover{background:var(--control-bg-hover)}.copy-chip.primary{background:var(--accent);color:#fff}.copy-chip.primary:hover{filter:brightness(1.06)}.connect-clients{border-radius:var(--r-md);background:var(--surface-2);gap:2px;padding:3px;display:flex}.connect-clients button{border-radius:var(--r-sm);color:var(--text-2);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:1;padding:6px 8px;font-size:12px;font-weight:600}.connect-clients button:hover{color:var(--text-1)}.connect-clients button.active{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-1)}.connect-paste{padding:var(--space-3);border-radius:var(--r-lg);border:1px solid var(--hairline);background:var(--surface-2);gap:9px;display:grid}.connect-paste-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.connect-paste-value{border-radius:var(--r-md);background:var(--surface-1);border:1px solid var(--hairline);color:var(--text-1);white-space:nowrap;padding:10px 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;display:block;overflow-x:auto}.connect-where{color:var(--text-2);margin:0;font-size:12.5px;line-height:1.45}.connect-board-note{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:7px;margin:0;font-size:12.5px;display:flex}.connect-board-note code{border-radius:var(--r-sm);background:var(--surface-2);padding:3px 7px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.link-button:hover{text-decoration:underline}.connect-paste pre{padding:var(--space-3);border-radius:var(--r-md);color:#cbd5f5;background:#0f172a;margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;line-height:1.5;overflow-x:auto}.connect-steps{color:var(--text-2);gap:7px;margin:0;padding-left:20px;font-size:13px;line-height:1.4;display:grid}.layer-row{gap:2px}.layer-row .layer-name{min-width:0;color:inherit;cursor:pointer;background:0 0;flex:1;align-items:center;gap:5px;padding:0;display:flex}.layer-actions{align-items:center;gap:1px;display:none}.layer-row:hover .layer-actions,.layer-row.selected .layer-actions{display:inline-flex}.layer-act{border-radius:var(--r-xs);width:19px;height:19px;color:inherit;opacity:.72;cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.layer-act:hover{background:var(--control-bg-hover);opacity:1}.layer-act.danger:hover{color:#dc2626;background:#dc262629}.layer-row.artboard-layer{color:var(--text-1);font-weight:600}.layer-row.hidden-layer .layer-name{opacity:.45}.canvas-grid{background-image:radial-gradient(circle,#64748b47 1.1px,#0000 1.3px);background-size:26px 26px}[data-theme=dark] .canvas-grid{background-image:radial-gradient(circle,#94a3b829 1.1px,#0000 1.3px)}.artboard-surface{box-shadow:0 28px 70px #0f172a2e,0 3px 10px #0f172a0f}.artboard-frame.selected .artboard-surface{outline:2.5px solid var(--accent)}.canvas-viewport{background-color:#e9eef6}[data-theme=dark] .canvas-viewport{background-color:#090d16}.app-shell{background:var(--surface-2);position:relative}.topbar{z-index:55;box-shadow:0 1px 0 var(--hairline);border-bottom:0;position:relative}.left-panel,.right-panel,[data-theme=dark] .left-panel,[data-theme=dark] .right-panel{background:var(--panel-bg);border-left:0;border-right:0}.left-panel{box-shadow:1px 0 0 var(--hairline)}.right-panel{box-shadow:-1px 0 0 var(--hairline)}.panel-section,[data-theme=dark] .panel-section{border-bottom:0;padding:10px 12px 14px}.panel-section+.panel-section{box-shadow:0 -1px 0 var(--hairline)}.panel-heading{color:var(--text-2);letter-spacing:.05em;font-size:11px}.toolbar-group,[data-theme=dark] .toolbar-group{background:0 0;border:0;padding:0}.icon-button,[data-theme=dark] .icon-button,.text-button,[data-theme=dark] .text-button{background:0 0}.icon-button:hover,.text-button:hover,[data-theme=dark] .icon-button:hover,[data-theme=dark] .text-button:hover{background:var(--control-bg-hover);color:var(--text-1)}.icon-button.active,[data-theme=dark] .icon-button.active{background:var(--control-bg-active);color:var(--text-1)}.segmented-row button:disabled:hover{background:var(--control-bg);color:var(--text-1)}.wide-action:disabled:hover{color:var(--text-1);background:0 0}.wide-action.danger:hover{color:#dc2626;background:#dc26261f}.wide-action.danger:hover svg{color:inherit}.field input,.field select,.menu-field select,[data-theme=dark] .field input,[data-theme=dark] .field select{background:var(--control-bg);color:var(--text-1);box-shadow:none;border:0}.field input:focus,.field select:focus,[data-theme=dark] .field input:focus,[data-theme=dark] .field select:focus{background:var(--surface-1);box-shadow:0 0 0 2px var(--accent);outline:none}.readonly-field input{background:var(--control-bg);color:var(--text-2)}.selection-row{background:var(--surface-1);box-shadow:0 0 0 1px var(--hairline);border:0}.toolbar-menu-pop,.new-board-dialog,.connect-dialog,.restore-dialog,.command-palette,.shortcut-overlay{box-shadow:var(--shadow-pop);border:0}.toolbar-menu-pop{max-height:min(64vh,560px);overflow-y:auto}.zoom-control{box-shadow:var(--shadow-pop);border:0}.statusbar{border-top:0}.pane-top{align-items:center;gap:var(--space-2);flex:none;padding:10px 10px 0;display:flex}.pane-top .palette-mode-switch{flex:1;margin:0}.pane-collapse{border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;flex:none;place-items:center;display:grid}.pane-collapse:hover{background:var(--control-bg-hover);color:var(--text-1)}.pane-top-label{min-width:0;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:600;overflow:hidden}.pane-resize-handle{z-index:46;cursor:col-resize;width:8px;position:absolute;top:64px;bottom:30px}.pane-resize-handle.left-handle{left:calc(var(--left-panel-width) - 4px)}.pane-resize-handle.right-handle{right:calc(var(--right-panel-width) - 4px)}.pane-resize-handle:after{content:"";border-radius:var(--r-xs);background:0 0;transition:background .12s;position:absolute;inset:0 3px}.pane-resize-handle:hover:after,.pane-resize-handle:active:after{background:var(--accent)}.pane-edge-tab{z-index:46;background:var(--surface-1);width:28px;height:40px;color:var(--text-2);box-shadow:var(--shadow-pop);cursor:pointer;place-items:center;display:grid;position:absolute;top:80px}.pane-edge-tab.left{border-radius:0 var(--r-md) var(--r-md) 0;left:0}.pane-edge-tab.right{border-radius:var(--r-md) 0 0 var(--r-md);right:0}.pane-edge-tab:hover{color:var(--text-1)}.layers-list{gap:1px}.layer-group{padding-bottom:var(--space-1);gap:1px;display:grid}.layer-row{min-height:28px;padding:1px 5px 1px calc(3px + var(--indent,0px));border-radius:var(--r-sm);color:var(--text-2);align-items:center;gap:3px;display:flex}.layer-row:hover{background:var(--control-bg)}.layer-row.selected{background:var(--accent-soft);color:var(--accent)}.layer-chevron{border-radius:var(--r-xs);width:18px;height:18px;color:inherit;opacity:.55;cursor:pointer;background:0 0;flex:none;place-items:center;padding:0;display:grid}.layer-chevron:hover{opacity:1;background:var(--control-bg-hover)}.layer-chevron:disabled{opacity:0;cursor:default}.layer-row .layer-name{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;flex:1;align-items:center;gap:7px;padding:3px 0;display:flex}.layer-icon{opacity:.7;flex:none;place-items:center;width:16px;display:grid}.layer-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.layer-row.artboard-layer .layer-label{color:var(--text-1);font-weight:600}.layer-row.artboard-layer.selected .layer-label{color:var(--accent)}.layer-count{border-radius:var(--r-pill);background:var(--control-bg);color:var(--text-2);font-variant-numeric:tabular-nums;flex:none;padding:1px 7px;font-size:11px;font-weight:600}.layer-row:hover .layer-count{display:none}.layer-rename{border-radius:var(--r-xs);background:var(--surface-1);min-width:0;height:22px;box-shadow:0 0 0 2px var(--accent);color:var(--text-1);border:0;outline:none;flex:1;padding:0 6px;font-size:13px;font-weight:500}.menu-item.preset-item{align-items:center;gap:9px;display:flex}.preset-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.preset-size{color:var(--text-2);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.canvas-viewport{position:relative}.mode-pill{z-index:60;align-items:center;gap:var(--space-2);border-radius:var(--r-pill);background:var(--text-1);color:var(--panel-bg);box-shadow:var(--shadow-2);padding:6px 7px 6px 14px;font-size:13px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.mode-pill strong{font-weight:700}.mode-pill>span{opacity:.88}.mode-pill button{border-radius:var(--r-pill);background:color-mix(in srgb, var(--panel-bg) 22%, transparent);color:inherit;cursor:pointer;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.mode-pill button:hover{background:color-mix(in srgb, var(--panel-bg) 34%, transparent)}.mode-pill kbd{border-radius:var(--r-xs);background:color-mix(in srgb, var(--panel-bg) 26%, transparent);text-transform:uppercase;padding:1px 5px;font-family:inherit;font-size:11px;font-weight:700}.canvas-viewport.tool-connect .board-element:hover{outline:2px dashed var(--accent);outline-offset:2px}.canvas-viewport.tool-connect .artboard-frame:hover>.artboard-surface{outline:2px dashed var(--accent)}.connect-draft-line{z-index:65;pointer-events:none;position:absolute;overflow:visible}.connect-draft-line line{stroke:var(--accent)}.connect-draft-line circle{fill:var(--accent)}.selection-actionbar-anchor{z-index:70;pointer-events:none;width:0;height:0;position:absolute}.selection-actionbar{border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--shadow-pop);padding:var(--space-1);pointer-events:auto;transform-origin:0 0;white-space:nowrap;align-items:center;gap:2px;display:inline-flex;position:absolute;top:0;left:0}.selection-actionbar button{border-radius:var(--r-sm);width:30px;height:30px;color:var(--text-1);cursor:pointer;background:0 0;place-items:center;display:grid}.selection-actionbar button:hover{background:var(--control-bg-hover)}.selection-actionbar button:disabled{opacity:.32;cursor:not-allowed}.selection-actionbar button:disabled:hover{background:0 0}.selection-actionbar button.danger:hover{color:#dc2626;background:#dc262624}.sel-count{color:var(--accent);font-variant-numeric:tabular-nums;padding:0 8px;font-size:12px;font-weight:700}.sel-divider{background:var(--hairline);width:1px;height:18px;margin:0 2px}.comment-pin-anchor{z-index:66;pointer-events:none;width:0;height:0;position:absolute}.comment-pin{transform-origin:0 0;border-radius:var(--r-pill) var(--r-pill) var(--r-pill) 4px;background:var(--surface-1);min-width:26px;height:26px;color:var(--text-1);box-shadow:var(--shadow-pop);pointer-events:auto;cursor:pointer;animation:comment-fade-in var(--dur-fast) var(--ease-out);align-items:center;gap:3px;padding:0 7px;display:inline-flex;position:absolute;top:0;left:0}.comment-pin:hover{background:var(--control-bg-hover)}.comment-pin.open{outline:1.5px solid var(--accent);outline-offset:0}.comment-pin.has-agent:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-2px}.comment-pin-count{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:11px;font-weight:600}.comment-popover-anchor{z-index:72;pointer-events:none;width:0;height:0;position:absolute}.comment-popover{transform-origin:0 0;border-radius:var(--r-md);background:var(--surface-1);width:300px;box-shadow:var(--shadow-3);pointer-events:auto;animation:comment-fade-in var(--dur-fast) var(--ease-out);flex-direction:column;display:flex;position:absolute;top:0;left:0;overflow:hidden}.comment-popover-head{color:var(--text-2);align-items:center;gap:4px;padding:8px 8px 8px 12px;display:flex}.comment-popover-title{min-width:0;color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:600;overflow:hidden}.comment-popover-head button{border-radius:var(--r-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;background:0 0;place-items:center;display:grid}.comment-popover-head button:hover{background:var(--control-bg-hover);color:var(--text-1)}.comment-popover-head button.comment-confirm-delete{color:#dc2626;background:#dc26261f;width:auto;padding:0 8px;font-size:12px;font-weight:600}.comment-resolved-note{color:var(--text-2);background:var(--control-bg);align-items:center;gap:6px;margin:0;padding:6px 12px;font-size:12px;display:flex}.comment-messages{flex-direction:column;gap:10px;max-height:260px;padding:4px 12px 10px;display:flex;overflow-y:auto}.comment-message-meta{color:var(--text-2);align-items:center;gap:6px;font-size:11px;display:flex}.comment-message-meta strong{color:var(--text-1);font-size:12px;font-weight:600}.comment-message-meta time{margin-left:auto}.comment-author-dot{background:rgb(var(--agent-rgb,var(--accent-rgb)));border-radius:50%;width:7px;height:7px}.comment-message p{color:var(--text-1);white-space:pre-wrap;word-break:break-word;margin:3px 0 0;font-size:13px;line-height:1.45}.comment-composer{border-top:1px solid var(--hairline);align-items:flex-end;gap:6px;padding:8px;display:flex}.comment-composer textarea{resize:none;border-radius:var(--r-sm);background:var(--control-bg);min-height:32px;max-height:120px;color:var(--text-1);font:inherit;border:none;flex:1;padding:7px 9px;font-size:13px;line-height:1.4}.comment-send{border-radius:var(--r-sm);background:var(--accent);width:30px;height:30px;color:var(--accent-fg);cursor:pointer;place-items:center;display:grid}.comment-send:hover{background:var(--accent-hover)}.comment-send:disabled{opacity:.35;cursor:not-allowed}.comment-popover [data-tip]:after{left:auto;right:0;transform:none}.context-menu-backdrop{z-index:84;position:fixed;inset:0}.canvas-context-menu{z-index:85;min-width:196px;padding:var(--space-1);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--shadow-3);transform-origin:0 0;animation:context-menu-in .12s var(--ease-out);position:fixed}.canvas-context-menu button{border-radius:var(--r-sm);width:100%;color:var(--text-1);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.canvas-context-menu button:hover{background:var(--control-bg-hover)}.canvas-context-menu button kbd{color:var(--text-2);background:0 0;border:none;margin-left:auto;font-size:11px}.canvas-context-menu button.danger:hover{color:#dc2626;background:#dc262624}.menu-divider{background:var(--hairline);height:1px;margin:4px 6px;display:block}.comment-list{flex-direction:column;gap:2px;display:flex}.comment-row{border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:2px;padding:7px 8px;display:flex}.comment-row:hover{background:var(--control-bg-hover)}.comment-row.resolved{opacity:.62}.comment-row-top{color:var(--text-2);align-items:center;gap:6px;font-size:12px;display:flex}.comment-row-top strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-1);font-weight:600;overflow:hidden}.comment-row-top time{flex-shrink:0;margin-left:auto;font-size:11px}.comment-row-snippet{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.comment-resolved-toggle{border-radius:var(--r-sm);color:var(--text-2);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:6px 8px;font-size:12px;display:flex}.comment-resolved-toggle:hover{background:var(--control-bg-hover)}@keyframes comment-fade-in{0%{opacity:0}}@keyframes context-menu-in{0%{opacity:0;transform:scale(.96)}}.connector-endpoints{align-items:center;gap:6px;display:flex}.endpoint-chip{border-radius:var(--r-md);background:var(--control-bg);min-width:0;color:var(--text-1);text-align:center;text-overflow:ellipsis;text-transform:none;white-space:nowrap;flex:1;padding:7px 9px;font-size:12px;font-weight:600;overflow:hidden}.endpoint-swap{border-radius:var(--r-md);background:var(--surface-1);width:28px;height:28px;box-shadow:0 0 0 1px var(--hairline);color:var(--text-2);cursor:pointer;flex:none;place-items:center;display:grid}.endpoint-swap:hover{background:var(--control-bg-hover);box-shadow:0 0 0 1px var(--hairline);color:var(--text-1)}.segmented-control{border-radius:var(--r-md);background:var(--control-bg);gap:2px;padding:2px;display:flex}.segment{border-radius:var(--r-sm);min-width:0;min-height:26px;color:var(--text-2);cursor:pointer;text-transform:none;white-space:nowrap;background:0 0;flex:1;place-items:center;padding:0 2px;font-size:11px;font-weight:600;display:grid;overflow:hidden}.inspector-fields,.inspector-fields>*,.panel-content{min-width:0}.segment:hover{color:var(--text-1)}.segment.active{background:var(--surface-1);box-shadow:var(--shadow-1);color:var(--text-1)}.arrow-glyph line,.arrow-glyph path,.arrow-glyph circle{stroke:currentColor;fill:none}.arrow-glyph .filled{fill:currentColor}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);z-index:95;border-radius:var(--r-sm);background:var(--text-1);color:var(--panel-bg);letter-spacing:0;text-transform:none;white-space:nowrap;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;padding:4px 8px;font-size:11px;font-weight:500;line-height:1.2;transition:opacity .1s;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%)}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;transition-delay:.4s}[data-tip][data-tip-pos=up]:after{top:auto;bottom:calc(100% + 7px)}.topbar-left [data-tip]:after{left:0;transform:none}.topbar-right [data-tip]:after{left:auto;right:0;transform:none}.zoom-control [data-tip]:after,.selection-actionbar [data-tip]:after{top:auto;bottom:calc(100% + 7px)}.layer-actions [data-tip]:after{left:auto;right:0;transform:none}.pane-edge-tab.left[data-tip]:after{top:50%;bottom:auto;left:calc(100% + 6px);transform:translateY(-50%)}.pane-edge-tab.right[data-tip]:after{inset:50% calc(100% + 6px) auto auto;transform:translateY(-50%)}.export-dialog{gap:var(--space-3);border-radius:var(--r-xl);background:var(--surface-1);width:min(520px,94vw);color:var(--text-1);box-shadow:var(--shadow-pop);padding:20px;display:grid}.export-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.export-head h2{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:650;display:flex}.export-row{align-items:center;gap:var(--space-3);grid-template-columns:68px minmax(0,1fr);display:grid}.export-row-label{color:var(--text-2);font-size:11px;font-weight:600}.export-choices{border-radius:var(--r-md);background:var(--control-bg);gap:4px;padding:3px;display:flex}.export-choice{border-radius:calc(var(--r-md) - 3px);min-width:0;height:28px;color:var(--text-2);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;flex:1 1 0;font-size:12px;font-weight:600;overflow:hidden}.export-choice:hover:not(:disabled):not(.is-active){color:var(--text-1)}.export-choice.is-active{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-1)}.export-choice:disabled{cursor:not-allowed;opacity:.4}.export-note{color:var(--text-2);margin:0;font-size:11px}.export-error{border-radius:var(--r-md);color:#dc2626;background:#dc26261a;margin:0;padding:8px 10px;font-size:11px;font-weight:600}.export-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--hairline);display:flex}.export-size{font-variant-numeric:tabular-nums;gap:2px;font-size:12px;font-weight:650;display:grid}.export-size small{color:var(--text-2);font-size:11px;font-weight:500}.export-foot .dialog-actions{flex:none}.menu-hint{color:var(--text-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px;font-weight:600}.menu-note{color:var(--text-2);margin:0 10px 4px;font-size:11px;line-height:1.4}
