:root{--bg-canvas:#f4f4f1;--bg-surface:#fff;--bg-raised:#f0f0ee;--bg-overlay:#ffffffe0;--text-primary:#111;--text-secondary:#555;--text-muted:#999;--text-inverse:#f5f5f3;--border-subtle:#00000012;--border-default:#00000024;--border-strong:#00000047;--accent-human:#111;--accent-ai:#666;--accent-active:#000;--accent-focus-ring:#00000080;--accent-signature:var(--selection-ring-sheen);--accent-signature-soft:color-mix(in srgb, var(--accent-signature) 24%, transparent);--accent-signature-glow:color-mix(in srgb, var(--accent-signature) 46%, transparent);--focus-ring-unified:color-mix(in srgb, var(--accent-signature) 68%, var(--accent-active));--tension-low:#00000008;--tension-mid:#00000014;--tension-high:#0000002e;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000d;--shadow-md:0 4px 12px #0000001a, 0 2px 4px #0000000f;--shadow-lg:0 12px 32px #0000001f, 0 4px 8px #00000014;--shadow-drag:0 16px 40px #0000002e, 0 6px 12px #0000001a;--font-ui:"Inter", system-ui, -apple-system, sans-serif;--font-content:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-fluid:clamp(10px, 1.25vw, 18px);--radius-full:9999px;--canvas-dots-rest:#48484675;--canvas-dots-hover:#3c3c3a94;--post-it-padding-y:.85rem;--post-it-padding-x:1.1rem;--selection-ring-sheen:#4a64c4;--selection-ring-accent:#2c3f68;--selection-ring-glow:color-mix(in srgb, var(--selection-ring-sheen) 42%, transparent);--canvas-selection-ring-inset:3px;--canvas-selection-ring-thickness:2px;--canvas-resize-handle-ink:var(--text-primary);--canvas-selection-soft-opacity:.38;--canvas-selection-multi-opacity:.55;--canvas-selection-bounds-shadow:0 0 0 1px color-mix(in srgb, var(--selection-ring-sheen) 28%, transparent), 0 0 14px -6px color-mix(in srgb, var(--selection-ring-glow) 80%, transparent);--magic-gradient-pink:#f472b6;--magic-gradient-violet:#a855f7;--magic-sheen-tint:#fff;--canvas-hover-outline:color-mix(in srgb, var(--selection-ring-sheen) 48%, transparent);--canvas-in-frame-outline:color-mix(in srgb, var(--selection-ring-sheen) 55%, var(--border-default));--tooltip-chrome-bg:#111;--tooltip-chrome-fg:#f5f5f3;--tooltip-chrome-muted:#f5f5f38c;--note-text:#202020;--note-sun:#e0af2f;--note-planet:#6d91e8;--note-neutral:#d7d7db;--note-cream:#ffeaa7;--note-pearl:#dfe6e9;--note-salmon:#fab1a0;--note-slate:#b2bec3;--note-ice:#81ecec;--color-highlight-purple:#a78bfa;--color-accent-indigo:#6366f1;--color-accent-indigo-bg:#6366f10f;--color-accent-link:#2563eb;--constellation-bubble-bg:#ece7db;--constellation-bubble-inner:#e9e0cd;--constellation-badge-bg:#1c1c1c;--constellation-badge-fg:#fff;--constellation-label-bg:#fffffff0;--constellation-label-fg:#1c1c1c;--control-track:#cfd2dc;--control-track-active:#2d7a46;--control-knob:#fff;--control-ok-bg:#c8eacc;--control-ok-fg:#1a4b1f;--control-stored-bg:#e8eaf0;--control-stored-fg:#3a3f4d;--control-missing-bg:#fde8c8;--control-missing-fg:#6b3200;--control-clear-bg:#f5ece8;--control-clear-fg:#8b2020;--control-save-bg:#2563eb;--control-save-fg:#fff;--control-saved-fg:#1a6b2a;--control-input-focus:#2563eb;--frame-toolbar-bg:#111;--frame-toolbar-fg:#fff;--frame-toolbar-border:#333;--modal-backdrop:#14161c73;--modal-swatch-active-border:#1a1a1a;--color-danger:#b42318;--color-danger-soft:color-mix(in srgb, var(--color-danger) 8%, var(--bg-raised));--color-danger-soft-hover:color-mix(in srgb, var(--color-danger) 14%, var(--bg-raised));--color-danger-border:color-mix(in srgb, var(--color-danger) 35%, var(--border-default));--color-danger-border-hover:color-mix(in srgb, var(--color-danger) 55%, var(--border-default));--canvas-toolbar-bg:#1f2230;--canvas-toolbar-bg-elevated:#2a2d3d;--canvas-toolbar-text:#f5f6fa;--canvas-toolbar-text-muted:#f5f6fa9e;--canvas-toolbar-border:#0000001f;--canvas-toolbar-divider:#ffffff14;--canvas-toolbar-hover-bg:#ffffff14;--canvas-toolbar-accent:#7c6bff;--canvas-toolbar-shadow:0 14px 32px #10132638;--canvas-swatch-1:#1c1f2e;--canvas-swatch-2:#6b7280;--canvas-swatch-3:#e66060;--canvas-swatch-4:#f08a3e;--canvas-swatch-5:#f2c744;--canvas-swatch-6:#3fb984;--canvas-swatch-7:#1ec8c8;--canvas-swatch-8:#4f7bff;--canvas-swatch-9:#8c5bff;--canvas-swatch-10:#ec5fb5;--canvas-swatch-11:#fff;--canvas-swatch-12:#b8bcd0;--canvas-swatch-13:#fbd6d6;--canvas-swatch-14:#fce6c8;--canvas-swatch-15:#fbf3c6;--canvas-swatch-16:#c8efd6;--canvas-swatch-17:#c4f1f1;--canvas-swatch-18:#d6e3ff;--canvas-swatch-19:#e0d3ff;--canvas-swatch-20:#fbd6ee;--canvas-swatch-21:#f0f0ee;--canvas-swatch-22:#ededeb;--canvas-status-todo-bg:#e3e6ed;--canvas-status-todo-text:#3b4253;--canvas-status-progress-bg:#d8e4ff;--canvas-status-progress-text:#1e3fa8;--canvas-status-done-bg:#c8efd6;--canvas-status-done-text:#1d6b3a;--canvas-status-freeze-bg:#d2eef5;--canvas-status-freeze-text:#185868;--canvas-status-blocked-bg:#fbd6d6;--canvas-status-blocked-text:#963131;--canvas-selection-stroke:#4f7bff;--canvas-selection-handle-bg:#fff;--canvas-selection-handle-border:#4f7bff}[data-theme=dark]{--bg-canvas:#1a1b1e;--bg-surface:#1a1a1a;--bg-raised:#242424;--bg-overlay:#1a1a1aeb;--text-primary:#f0f0ee;--text-secondary:#aaa;--text-muted:#666;--text-inverse:#111;--border-subtle:#ffffff0f;--border-default:#ffffff1f;--border-strong:#ffffff42;--accent-human:#f0f0ee;--accent-ai:#aaa;--accent-active:#fff;--accent-focus-ring:#ffffff80;--accent-signature:var(--selection-ring-sheen);--accent-signature-soft:color-mix(in srgb, var(--accent-signature) 30%, transparent);--accent-signature-glow:color-mix(in srgb, var(--accent-signature) 52%, transparent);--focus-ring-unified:color-mix(in srgb, var(--accent-signature) 72%, var(--accent-active));--tension-low:#ffffff08;--tension-mid:#ffffff12;--tension-high:#ffffff29;--shadow-sm:0 1px 3px #0000004d, 0 1px 2px #0003;--shadow-md:0 4px 12px #0006, 0 2px 4px #0000003d;--shadow-lg:0 12px 32px #00000080, 0 4px 8px #0000004d;--shadow-drag:0 16px 40px #0009, 0 6px 12px #0006;--canvas-dots-rest:#e1e1de3d;--canvas-dots-hover:#f0f0eb66;--selection-ring-sheen:#7ab8ff;--selection-ring-accent:color-mix(in srgb, #fff 93%, var(--selection-ring-sheen) 7%);--selection-ring-glow:color-mix(in srgb, var(--selection-ring-sheen) 36%, transparent);--canvas-resize-handle-ink:var(--text-primary);--canvas-selection-bounds-shadow:0 0 0 1px color-mix(in srgb, var(--selection-ring-sheen) 32%, transparent), 0 0 18px -8px color-mix(in srgb, var(--selection-ring-glow) 85%, transparent);--canvas-hover-outline:color-mix(in srgb, var(--selection-ring-sheen) 52%, transparent);--canvas-in-frame-outline:color-mix(in srgb, var(--selection-ring-sheen) 45%, var(--border-default));--tooltip-chrome-bg:#f0f0ee;--tooltip-chrome-fg:#111;--tooltip-chrome-muted:#1111117a;--constellation-bubble-bg:#ffffff0f;--constellation-bubble-inner:#ffffff0a;--constellation-badge-bg:#e8e8e6;--constellation-badge-fg:#111;--constellation-label-bg:#1e1e1ef0;--constellation-label-fg:#e8e8e6;--control-track:#484c58;--control-track-active:#3a9e5f;--control-saved-fg:#60c47a;--control-input-focus:#5a9fff;--frame-toolbar-bg:#fff;--frame-toolbar-fg:#111;--frame-toolbar-border:#e0e0e0;--modal-backdrop:#0009;--modal-swatch-active-border:#e8e8e6;--color-danger:#ff6b5f;--color-danger-soft:color-mix(in srgb, var(--color-danger) 8%, var(--bg-raised));--color-danger-soft-hover:color-mix(in srgb, var(--color-danger) 14%, var(--bg-raised));--color-danger-border:color-mix(in srgb, var(--color-danger) 35%, var(--border-default));--color-danger-border-hover:color-mix(in srgb, var(--color-danger) 55%, var(--border-default));--canvas-toolbar-bg:#2c3042;--canvas-toolbar-bg-elevated:#383d52;--canvas-toolbar-text:#e7e9f2;--canvas-toolbar-text-muted:#e7e9f29e;--canvas-toolbar-border:#ffffff1a;--canvas-toolbar-divider:#ffffff1a;--canvas-toolbar-hover-bg:#ffffff1a;--canvas-toolbar-accent:#8a7bff;--canvas-toolbar-shadow:0 14px 32px #00000073}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-canvas:#1a1b1e;--bg-surface:#1a1a1a;--bg-raised:#242424;--bg-overlay:#1a1a1aeb;--text-primary:#f0f0ee;--text-secondary:#aaa;--text-muted:#666;--text-inverse:#111;--border-subtle:#ffffff0f;--border-default:#ffffff1f;--border-strong:#ffffff42;--accent-human:#f0f0ee;--accent-ai:#aaa;--accent-active:#fff;--accent-focus-ring:#ffffff80;--accent-signature:var(--selection-ring-sheen);--accent-signature-soft:color-mix(in srgb, var(--accent-signature) 30%, transparent);--accent-signature-glow:color-mix(in srgb, var(--accent-signature) 52%, transparent);--focus-ring-unified:color-mix(in srgb, var(--accent-signature) 72%, var(--accent-active));--tension-low:#ffffff08;--tension-mid:#ffffff12;--tension-high:#ffffff29;--shadow-sm:0 1px 3px #0000004d, 0 1px 2px #0003;--shadow-md:0 4px 12px #0006, 0 2px 4px #0000003d;--shadow-lg:0 12px 32px #00000080, 0 4px 8px #0000004d;--shadow-drag:0 16px 40px #0009, 0 6px 12px #0006;--canvas-dots-rest:#e1e1de3d;--canvas-dots-hover:#f0f0eb66;--selection-ring-sheen:#7ab8ff;--selection-ring-accent:color-mix(in srgb, #fff 93%, var(--selection-ring-sheen) 7%);--selection-ring-glow:color-mix(in srgb, var(--selection-ring-sheen) 36%, transparent);--canvas-resize-handle-ink:var(--text-primary);--canvas-selection-bounds-shadow:0 0 0 1px color-mix(in srgb, var(--selection-ring-sheen) 32%, transparent), 0 0 18px -8px color-mix(in srgb, var(--selection-ring-glow) 85%, transparent);--canvas-hover-outline:color-mix(in srgb, var(--selection-ring-sheen) 52%, transparent);--canvas-in-frame-outline:color-mix(in srgb, var(--selection-ring-sheen) 45%, var(--border-default));--tooltip-chrome-bg:#f0f0ee;--tooltip-chrome-fg:#111;--tooltip-chrome-muted:#1111117a;--constellation-bubble-bg:#ffffff0f;--constellation-bubble-inner:#ffffff0a;--constellation-badge-bg:#e8e8e6;--constellation-badge-fg:#111;--constellation-label-bg:#1e1e1ef0;--constellation-label-fg:#e8e8e6;--control-track:#484c58;--control-track-active:#3a9e5f;--control-saved-fg:#60c47a;--control-input-focus:#5a9fff;--frame-toolbar-bg:#fff;--frame-toolbar-fg:#111;--frame-toolbar-border:#e0e0e0;--modal-backdrop:#0009;--modal-swatch-active-border:#e8e8e6;--color-danger:#ff6b5f;--color-danger-soft:color-mix(in srgb, var(--color-danger) 8%, var(--bg-raised));--color-danger-soft-hover:color-mix(in srgb, var(--color-danger) 14%, var(--bg-raised));--color-danger-border:color-mix(in srgb, var(--color-danger) 35%, var(--border-default));--color-danger-border-hover:color-mix(in srgb, var(--color-danger) 55%, var(--border-default));--canvas-toolbar-bg:#2c3042;--canvas-toolbar-bg-elevated:#383d52;--canvas-toolbar-text:#e7e9f2;--canvas-toolbar-text-muted:#e7e9f29e;--canvas-toolbar-border:#ffffff1a;--canvas-toolbar-divider:#ffffff1a;--canvas-toolbar-hover-bg:#ffffff1a;--canvas-toolbar-accent:#8a7bff;--canvas-toolbar-shadow:0 14px 32px #00000073}}@property --canvas-selection-ring-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes canvas-selection-ring-spin{to{--canvas-selection-ring-angle:360deg}}.canvas-selection-ring{box-sizing:border-box;pointer-events:none;z-index:-1;padding:var(--canvas-selection-ring-thickness);background:conic-gradient(from var(--canvas-selection-ring-angle), color-mix(in srgb, var(--selection-ring-accent) 38%, transparent), var(--selection-ring-accent), color-mix(in srgb, var(--selection-ring-sheen) 65%, var(--selection-ring-accent)), color-mix(in srgb, var(--selection-ring-accent) 50%, var(--accent-focus-ring)), var(--selection-ring-accent), color-mix(in srgb, var(--selection-ring-sheen) 72%, transparent), var(--selection-ring-accent), color-mix(in srgb, var(--selection-ring-accent) 38%, transparent));-webkit-mask-composite:xor;box-shadow:var(--canvas-selection-bounds-shadow);animation:2.6s linear infinite canvas-selection-ring-spin;position:absolute;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.canvas-selection-ring--static{--canvas-selection-ring-angle:140deg;animation:none}.canvas-selection-ring--fallback{border:2px solid var(--selection-ring-accent);box-shadow:0 0 10px -4px var(--selection-ring-glow);background:0 0;padding:0;-webkit-mask:none;mask:none}.canvas-selection-ring--primary{opacity:1}.canvas-selection-ring--secondary{opacity:var(--canvas-selection-soft-opacity);animation-duration:3.4s}.canvas-selection-ring--secondary.canvas-selection-ring--static{opacity:calc(var(--canvas-selection-soft-opacity) + .08)}.canvas-selection-ring--multi-member{opacity:var(--canvas-selection-multi-opacity);animation-duration:3.2s}.canvas-selection-ring--multi-member.canvas-selection-ring--static{opacity:calc(var(--canvas-selection-multi-opacity) + .06)}.canvas-selection-ring--editing-soft{opacity:.28}.canvas-selection-ring__shine{box-sizing:border-box;pointer-events:none;z-index:-2;padding:calc(var(--canvas-selection-ring-thickness) + 2px);background:conic-gradient(from var(--canvas-selection-ring-angle), color-mix(in srgb, var(--selection-shine-mix,var(--selection-ring-sheen)) 22%, transparent), color-mix(in srgb, var(--selection-shine-mix,var(--selection-ring-sheen)) 45%, var(--selection-ring-sheen)), color-mix(in srgb, var(--selection-ring-accent) 28%, transparent), color-mix(in srgb, var(--selection-shine-mix,var(--selection-ring-sheen)) 38%, var(--selection-ring-accent)), color-mix(in srgb, var(--selection-shine-mix,var(--selection-ring-sheen)) 22%, transparent));-webkit-mask-composite:xor;opacity:.72;animation:2.6s linear infinite canvas-selection-ring-spin;position:absolute;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.canvas-selection-ring__shine--secondary{opacity:.5;animation-duration:3.4s}.canvas-selection-ring__shine--multi-member{opacity:.58;animation-duration:3.2s}.canvas-selection-ring__shine--editing-soft{opacity:.2}.canvas-selection-ring__shine--static{--canvas-selection-ring-angle:140deg;animation:none}@media (prefers-reduced-motion:reduce){.canvas-selection-ring{--canvas-selection-ring-angle:0deg;background:var(--selection-ring-accent);box-shadow:0 0 8px -2px var(--selection-ring-glow);animation:none}.canvas-selection-ring__shine{--canvas-selection-ring-angle:0deg;background:color-mix(in srgb, var(--selection-shine-mix,var(--selection-ring-sheen)) 35%, transparent);opacity:.45;animation:none}}.canvas-selection-bounds{pointer-events:none;box-sizing:border-box;border-radius:var(--radius-md);border:2px dashed color-mix(in srgb, var(--selection-ring-accent) 18%, color-mix(in srgb, var(--selection-ring-sheen) 42%, transparent));box-shadow:var(--canvas-selection-bounds-shadow);background:0 0;padding:0;position:absolute}.canvas-selection-bounds--static{opacity:.92}.canvas-selection-bounds--fallback{border:2px dashed color-mix(in srgb, var(--selection-ring-accent) 22%, color-mix(in srgb, var(--selection-ring-sheen) 38%, transparent));background:0 0}@media (prefers-reduced-motion:reduce){.canvas-selection-bounds{border:2px dashed color-mix(in srgb, var(--selection-ring-sheen) 55%, var(--selection-ring-accent));background:0 0}}.canvas-resize-handle{--resize-zoom:1;--resize-corner-radius:12px;--resize-arc-size:24px;--resize-arc-thickness:3.5px;--resize-arc-gap:2px;--resize-arc-idle-opacity:.42;--resize-arc-hover-opacity:.96;--resize-arc-active-opacity:1;width:44px;height:44px;cursor:inherit;z-index:20;transform:scale(calc(1 / var(--resize-zoom)));pointer-events:auto;background:0 0;border:none;padding:0;position:absolute}.canvas-resize-handle--decorative{pointer-events:none}.canvas-resize-handle__hit{position:absolute;inset:0}.canvas-resize-handle__arc{width:var(--resize-arc-size);height:var(--resize-arc-size);color:var(--canvas-resize-handle-ink);filter:drop-shadow(0 0 1px color-mix(in srgb, var(--selection-ring-sheen) 42%, transparent));opacity:var(--resize-arc-idle-opacity);transition:opacity .13s var(--ease-out), filter .13s var(--ease-out), transform .13s var(--ease-out);pointer-events:none;position:absolute}.canvas-resize-handle__arc-svg{width:var(--resize-arc-size);height:var(--resize-arc-size);display:block}.canvas-resize-handle__arc-path{fill:none;stroke:currentColor;stroke-width:var(--resize-arc-thickness);stroke-linecap:round}.canvas-resize-handle__arc-path--sheen{stroke-width:calc(var(--resize-arc-thickness) * .44);stroke:color-mix(in srgb, var(--selection-ring-sheen) 68%, var(--canvas-resize-handle-ink));opacity:.65}.canvas-resize-handle:hover .canvas-resize-handle__arc,.canvas-resize-handle:focus-visible .canvas-resize-handle__arc{opacity:var(--resize-arc-hover-opacity);filter:drop-shadow(0 0 2px color-mix(in srgb, var(--selection-ring-sheen) 48%, transparent))}.canvas-resize-handle--active .canvas-resize-handle__arc{opacity:var(--resize-arc-active-opacity);filter:drop-shadow(0 0 3px color-mix(in srgb, var(--selection-ring-sheen) 55%, transparent));transform:translateZ(0)scale(1.03)}.canvas-resize-handle--nw{transform-origin:50%;transform:translate(-50%, -50%) scale(calc(1 / var(--resize-zoom)));cursor:nwse-resize;top:0;left:0}.canvas-resize-handle--nw .canvas-resize-handle__arc{top:var(--resize-arc-gap);left:var(--resize-arc-gap);transform:rotate(0)}.canvas-resize-handle--ne{transform-origin:50%;transform:translate(50%, -50%) scale(calc(1 / var(--resize-zoom)));cursor:nesw-resize;top:0;right:0}.canvas-resize-handle--ne .canvas-resize-handle__arc{top:var(--resize-arc-gap);right:var(--resize-arc-gap);transform:rotate(90deg)}.canvas-resize-handle--sw{transform-origin:50%;transform:translate(-50%, 50%) scale(calc(1 / var(--resize-zoom)));cursor:nesw-resize;bottom:0;left:0}.canvas-resize-handle--sw .canvas-resize-handle__arc{bottom:var(--resize-arc-gap);left:var(--resize-arc-gap);transform:rotate(-90deg)}.canvas-resize-handle--se{transform-origin:50%;transform:translate(50%, 50%) scale(calc(1 / var(--resize-zoom)));cursor:nwse-resize;bottom:0;right:0}.canvas-resize-handle--se .canvas-resize-handle__arc{bottom:var(--resize-arc-gap);right:var(--resize-arc-gap);transform:rotate(180deg)}.canvas-resize-handle:focus{outline:none}.canvas-resize-handle:focus-visible{outline:2px solid var(--focus-ring-unified);outline-offset:1px}@media (prefers-reduced-motion:reduce){.canvas-resize-handle__arc{opacity:1;transition:none}}@supports not ((-webkit-mask-composite:xor) or (mask-composite:exclude)){.canvas-selection-ring{border:2px solid var(--selection-ring-accent);box-shadow:0 0 10px -4px var(--selection-ring-glow);background:0 0;padding:0;animation:none;-webkit-mask:none!important;mask:none!important}.canvas-selection-ring__shine{display:none}.canvas-selection-bounds{border:2px dashed color-mix(in srgb, var(--selection-ring-accent) 22%, color-mix(in srgb, var(--selection-ring-sheen) 38%, transparent));background:0 0;padding:0;-webkit-mask:none!important;mask:none!important}}:root{font-family:var(--font-content);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-height:100svh;margin:0}#root{width:100%;min-height:100svh;margin:0}.canvas-root:focus{outline:none}.canvas-root:focus-visible{outline:2px solid var(--accent-focus-ring);outline-offset:2px}:where(button,a,input,textarea,select,[role=button],[tabindex]):focus-visible{outline:2px solid var(--focus-ring-unified);outline-offset:2px}.canvas-item-frame__border{border:1.5px dashed var(--canvas-toolbar-accent,#7c6bff);border-radius:var(--canvas-frame-radius,4px);pointer-events:none;position:absolute;inset:-1.5px}.canvas-item-frame__handle{width:calc(10px * var(--canvas-frame-inv-zoom,1));height:calc(10px * var(--canvas-frame-inv-zoom,1));background:var(--bg-surface,#fff);border:1.5px solid var(--canvas-toolbar-accent,#7c6bff);pointer-events:auto;z-index:2;border-radius:2px;position:absolute}.canvas-item-frame--decorative .canvas-item-frame__handle{cursor:default;pointer-events:none}.canvas-item-frame__handle--nw{top:calc(-5px * var(--canvas-frame-inv-zoom,1));left:calc(-5px * var(--canvas-frame-inv-zoom,1));cursor:nwse-resize}.canvas-item-frame__handle--ne{top:calc(-5px * var(--canvas-frame-inv-zoom,1));right:calc(-5px * var(--canvas-frame-inv-zoom,1));cursor:nesw-resize}.canvas-item-frame__handle--sw{bottom:calc(-5px * var(--canvas-frame-inv-zoom,1));left:calc(-5px * var(--canvas-frame-inv-zoom,1));cursor:nesw-resize}.canvas-item-frame__handle--se{bottom:calc(-5px * var(--canvas-frame-inv-zoom,1));right:calc(-5px * var(--canvas-frame-inv-zoom,1));cursor:nwse-resize}.canvas-item-frame__midpoint{width:calc(7px * var(--canvas-frame-inv-zoom,1));height:calc(7px * var(--canvas-frame-inv-zoom,1));background:var(--bg-surface,#fff);border:1.5px solid var(--canvas-toolbar-accent,#7c6bff);pointer-events:auto;z-index:1;border-radius:50%;position:absolute}.canvas-item-frame--decorative .canvas-item-frame__midpoint{pointer-events:none;cursor:default}.canvas-item-frame__midpoint--n,.canvas-item-frame__midpoint--s{cursor:ns-resize}.canvas-item-frame__midpoint--w,.canvas-item-frame__midpoint--e{cursor:ew-resize}.canvas-item-frame__midpoint--n{top:calc(-3.5px * var(--canvas-frame-inv-zoom,1));left:50%;transform:translate(-50%)}.canvas-item-frame__midpoint--s{bottom:calc(-3.5px * var(--canvas-frame-inv-zoom,1));left:50%;transform:translate(-50%)}.canvas-item-frame__midpoint--w{left:calc(-3.5px * var(--canvas-frame-inv-zoom,1));top:50%;transform:translateY(-50%)}.canvas-item-frame__midpoint--e{right:calc(-3.5px * var(--canvas-frame-inv-zoom,1));top:50%;transform:translateY(-50%)}.rich-text-editor__content{word-break:break-word;white-space:pre-wrap;outline:none;font-family:inherit;line-height:1.25}.rich-text-editor__content *{text-align:inherit!important}.rich-text-editor__content[data-empty=true]:before{content:attr(data-placeholder);color:var(--text-muted);font-style:normal;font-weight:inherit;pointer-events:none}.rich-text-editor__content :is(ul,ol){margin:.2em 0;padding-inline-start:0;list-style-position:inside}.rich-text-editor__content li{margin:.1em 0}.rich-text-editor__content a{color:var(--canvas-toolbar-accent,#7c6bff);cursor:pointer;text-decoration:underline}.canvas-items-layer{pointer-events:none;position:absolute;inset:0}.canvas-item{pointer-events:auto;box-sizing:border-box;-webkit-user-select:none;user-select:none;touch-action:none;transition:box-shadow .12s;cursor:default!important}.canvas-item--editing{cursor:text!important}.canvas-item:active:not(.canvas-item--editing){cursor:grabbing!important}.canvas-item textarea,.canvas-item input{cursor:text}.canvas-item:not(.canvas-item--selected):not(.canvas-item--editing) .editable-text-zone{pointer-events:none}.canvas-item--shape:not([data-canvas-selected=true]):not(.canvas-item--editing) .rich-text-editor__content[data-empty=true]:before{content:none}.canvas-item--text,.canvas-item--shape{background:0 0}.canvas-item__shape{width:100%;height:100%;position:relative}.canvas-item__shape-fill{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.canvas-item__shape-fill--css{box-sizing:border-box}.canvas-item__shape-label{cursor:text;background:0 0;border:none;outline:none;font-family:inherit;line-height:1.3}.canvas-item--card{background:0 0}.canvas-item__card{background:var(--bg-surface);border:1px solid var(--border-default);border-left:4px solid var(--card-accent,var(--accent-active));width:100%;height:100%;box-shadow:var(--shadow-sm);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex;position:relative;overflow:visible}.canvas-item__card-header{flex-shrink:0;align-items:center;gap:8px;font-size:11px;display:flex}.canvas-item__card-status{border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}.canvas-item__card-status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.canvas-item__card-tag{color:var(--text-primary);border-radius:999px;align-items:center;padding:2px 8px;display:inline-flex}.canvas-item__card-tag-input,.canvas-item__card-assignee-input{font:inherit;color:inherit;background:0 0;border:none;outline:none;min-width:30px;max-width:140px}.canvas-item__card-assignee{color:var(--text-secondary);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.canvas-item__card-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:inline-flex}.canvas-item__card-body{flex-direction:column;flex:auto;gap:6px;min-height:0;display:flex}.canvas-item__card-title{font:inherit;color:var(--text-primary);background:0 0;border:none;outline:none;padding:0;font-size:15px;font-weight:600}.canvas-item__card-title::placeholder,.canvas-item__card-description::placeholder,.canvas-item__card-tag-input::placeholder,.canvas-item__card-assignee-input::placeholder{color:var(--text-muted);font-style:italic}.canvas-item__card-description{resize:none;font:inherit;color:var(--text-secondary);background:0 0;border:none;outline:none;flex:auto;min-height:30px;padding:0;font-size:12.5px;line-height:1.45}.canvas-item-toolbar{background:var(--canvas-toolbar-bg,#1c1f2e);color:var(--canvas-toolbar-fg,#f4f6ff);box-shadow:var(--canvas-toolbar-shadow,0 14px 32px #10132638);-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:2px;padding:4px 6px;font-family:inherit;font-size:13px;display:inline-flex}.canvas-item-toolbar__btn{min-width:32px;height:34px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-family:inherit;font-size:14px;transition:background .12s;display:inline-flex}.canvas-item-toolbar__btn--wide{justify-content:space-between;min-width:110px;padding:0 10px}.canvas-item-toolbar__btn:hover{background:var(--canvas-toolbar-hover-bg,#ffffff14)}.canvas-item-toolbar__btn--active{background:var(--canvas-toolbar-accent,#7c6bff);color:#fff}.canvas-item-toolbar__btn--danger:hover{color:#ff8080;background:#ff50502e}.canvas-item-toolbar__divider{background:var(--canvas-toolbar-divider,#ffffff1f);width:1px;height:20px;margin:0 4px}.canvas-item-toolbar__chevron{opacity:.7;margin-left:2px;font-size:9px;line-height:1}.canvas-item-toolbar__color-circle{border:1px solid #ffffff40;border-radius:50%;width:18px;height:18px;display:inline-block}.canvas-item-toolbar__popover{background:var(--canvas-toolbar-bg,#1c1f2e);color:var(--canvas-toolbar-fg,#f4f6ff);border:1px solid var(--canvas-toolbar-divider,#ffffff1f);box-shadow:var(--canvas-toolbar-shadow,0 14px 32px #10132638);z-index:1;border-radius:12px;flex-direction:column;gap:2px;min-width:160px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.canvas-item-toolbar__popover--above{top:auto;bottom:calc(100% + 6px)}.canvas-item-toolbar__popover--row{flex-direction:row;gap:2px;min-width:0;padding:4px}.canvas-item-toolbar__popover--color{min-width:260px}.canvas-item-toolbar__popover-btn{color:inherit;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;font-size:13px;transition:background .12s;display:flex}.canvas-item-toolbar__popover-btn:hover{background:var(--canvas-toolbar-hover-bg,#ffffff14)}.canvas-item-toolbar__fill-glyph{border:1px solid #fff6;border-radius:4px;width:16px;height:16px;display:inline-block}.canvas-item-toolbar__stroke-glyph{box-sizing:border-box;background:0 0;border:3px solid #7c6bff;border-radius:4px;width:16px;height:16px;display:inline-block}.canvas-item-toolbar__link-input{border:1px solid var(--canvas-toolbar-divider,#ffffff1f);width:100%;color:inherit;background:#ffffff0f;border-radius:6px;outline:none;padding:6px 8px;font-family:inherit;font-size:13px}.canvas-item-toolbar__link-input:focus{border-color:var(--canvas-toolbar-accent,#7c6bff)}.canvas-item-toolbar__status-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 10px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.canvas-item-toolbar__status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.canvas-item-toolbar__shape-grid{grid-template-columns:repeat(5,1fr);gap:4px;min-width:180px;padding:2px;display:grid}.canvas-item-toolbar__shape-cell{width:32px;height:32px;color:var(--canvas-toolbar-fg,#f4f6ff);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .1s;display:inline-flex}.canvas-item-toolbar__shape-cell:hover{background:var(--canvas-toolbar-hover-bg,#ffffff14)}.canvas-item-toolbar__shape-cell--active{border-color:var(--canvas-toolbar-accent,#7c6bff);background:#7c6bff1f}.canvas-item-toolbar__stroke-width-row{border-top:1px solid var(--canvas-toolbar-divider,#ffffff1f);gap:4px;margin-top:10px;padding:4px 0 0;display:flex}.shape-picker{z-index:60;background:var(--canvas-toolbar-bg-elevated);border:1px solid var(--canvas-toolbar-border);box-shadow:var(--canvas-toolbar-shadow);width:280px;font-family:var(--font-ui);color:var(--canvas-toolbar-text);border-radius:14px;flex-direction:column;gap:10px;padding:10px;display:flex;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.shape-picker__search{align-items:center;display:flex;position:relative}.shape-picker__search-icon{color:var(--canvas-toolbar-text-muted);display:inline-flex;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.shape-picker__search-input{background:var(--canvas-toolbar-bg);width:100%;color:var(--canvas-toolbar-text);border:1px solid var(--canvas-toolbar-border);font:inherit;caret-color:var(--canvas-toolbar-accent);box-sizing:border-box;border-radius:8px;outline:none;padding:7px 10px 7px 30px;font-size:12px}.shape-picker__search-input:focus{border-color:var(--canvas-toolbar-accent)}.shape-picker__search-input::placeholder{color:var(--canvas-toolbar-text-muted)}.shape-picker__grid{grid-template-columns:repeat(5,1fr);gap:6px;min-height:60px;display:grid}.shape-picker__btn{aspect-ratio:1;cursor:pointer;width:100%;color:var(--canvas-toolbar-text);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:background .1s,border-color .1s;display:flex}.shape-picker__btn:hover{background:var(--canvas-toolbar-hover-bg)}.shape-picker__btn--active{background:var(--canvas-toolbar-accent);border-color:var(--canvas-toolbar-accent);color:#fff}.shape-picker__btn--active .shape-picker__glyph,.shape-picker__btn--active .shape-picker__glyph-svg{color:#fff}.shape-picker__glyph{background:0 0;border:1.5px solid;width:22px;height:16px}.shape-picker__glyph-svg{fill:#0000;stroke:currentColor;stroke-width:5px;stroke-linejoin:round;stroke-linecap:round;width:24px;height:22px}.shape-picker__empty{text-align:center;color:var(--canvas-toolbar-text-muted);grid-column:1/-1;padding:16px 0;font-size:12px}.author-pill{width:18px;height:18px;font-family:var(--font-ui);color:#fff;letter-spacing:.02em;-webkit-user-select:none;user-select:none;pointer-events:auto;box-shadow:0 0 0 2px var(--bg-surface), 0 2px 4px #0000002e;border-radius:999px;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:inline-flex}.author-pill--corner{z-index:3;position:absolute;bottom:6px;right:6px}.author-pill--inline{margin-left:4px;position:relative}@media (prefers-color-scheme:dark){.author-pill{box-shadow:0 0 0 2px var(--bg-surface), 0 2px 4px #0006}}.canvas-context-menu{z-index:9000;background:var(--canvas-toolbar-bg,#1f2232);min-width:220px;color:var(--canvas-toolbar-fg,#f3f4f6);border:1px solid var(--canvas-toolbar-border,#ffffff14);-webkit-user-select:none;user-select:none;border-radius:10px;padding:6px 0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.2;position:fixed;box-shadow:0 12px 32px #00000052,0 2px 8px #0000002e}.canvas-context-menu__group{flex-direction:column;display:flex}.canvas-context-menu__divider{background:var(--canvas-toolbar-divider,#ffffff14);height:1px;margin:4px 6px}.canvas-context-menu__item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;outline:none;justify-content:space-between;align-items:center;gap:16px;padding:7px 14px;display:flex}.canvas-context-menu__item:hover:not(.canvas-context-menu__item--disabled){background:var(--canvas-toolbar-hover,#ffffff0f)}.canvas-context-menu__item:focus-visible{box-shadow:inset 0 0 0 2px var(--canvas-toolbar-accent,#7c6bff)}.canvas-context-menu__item--disabled{opacity:.4;cursor:not-allowed}.canvas-context-menu__item--danger{color:#f87171}.canvas-context-menu__item--danger:hover:not(.canvas-context-menu__item--disabled){background:#f871711f}.canvas-context-menu__item-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.canvas-context-menu__item-shortcut{color:var(--canvas-toolbar-fg-muted,#ffffff73);flex-shrink:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.agent-side-panel{z-index:10000;width:360px;height:100vh;font-family:var(--font-ui,system-ui, sans-serif);pointer-events:none;flex-direction:row;transition:transform .22s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.agent-side-panel[data-open=true]{pointer-events:all;transform:translate(0)}.agent-side-panel__close-btn{width:32px;height:32px;color:var(--text-secondary,#0006);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:4px;font-size:20px;line-height:1;transition:background .12s,color .12s;display:flex}.agent-side-panel__close-btn:hover{background:var(--surface-hover,#00000012);color:var(--text-primary,#000c)}.agent-side-panel__rail{border-left:1px solid var(--border-default,#00000024);background:var(--bg-surface,#fff);overscroll-behavior:contain;flex-direction:column;flex-shrink:0;align-items:center;gap:8px;width:52px;padding:12px 0;display:flex;overflow-y:auto}.agent-avatar{color:#fff;cursor:pointer;border:none;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:14px;font-weight:700;transition:box-shadow .15s,opacity .15s;display:flex;position:relative}.agent-avatar:hover{opacity:.88}.agent-avatar--active{box-shadow:0 0 0 2px var(--bg-surface,#fff), 0 0 0 4px currentColor}.agent-avatar--streaming:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-radius:50%;animation:1s linear infinite agent-avatar-spin;position:absolute;inset:-3px}@keyframes agent-avatar-spin{to{transform:rotate(360deg)}}.agent-side-panel__add-btn{border:1.5px dashed var(--border-default,#00000024);width:36px;height:36px;color:var(--text-secondary,#555);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-top:4px;font-size:20px;line-height:1;transition:border-color .15s,color .15s,background .15s;display:flex}.agent-side-panel__add-btn:hover{border-color:var(--text-primary,#111);color:var(--text-primary,#111);background:var(--bg-raised,#f0f0ee)}.agent-chat-pane{border-left:1px solid var(--border-default,#00000024);background:var(--bg-surface,#fff);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.agent-chat-pane__header{border-bottom:1px solid var(--border-subtle,#00000012);flex-shrink:0;align-items:center;gap:8px;padding:10px 14px;display:flex}.agent-chat-pane__avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:flex}.agent-chat-pane__name{color:var(--text-primary,#111);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.agent-chat-pane__status{color:var(--text-secondary,#555);white-space:nowrap;font-size:11px;font-style:italic}.agent-chat-pane__stop-btn{cursor:pointer;color:var(--text-muted,#999);border-radius:var(--radius-sm,6px);background:0 0;border:none;flex-shrink:0;padding:2px 6px;font-size:11px;transition:color .12s,background .12s}.agent-chat-pane__stop-btn:hover{color:var(--text-primary,#111);background:var(--bg-raised,#f0f0ee)}.agent-chat-pane__role-badge{border-radius:var(--radius-sm,6px);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-raised,#f0f0ee);color:var(--text-secondary,#555);white-space:nowrap;margin-left:auto;padding:2px 8px;font-size:10px;font-weight:600}.agent-chat-pane__messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.agent-chat-pane__empty{text-align:center;color:var(--text-secondary,#555);padding:24px 8px;font-size:13px}.agent-chat-pane__empty-lead{color:var(--text-primary,#111);margin:0 0 6px;font-weight:500}.agent-chat-pane__empty-hint{color:var(--text-muted,#999);margin:0;font-size:12px;line-height:1.5}.agent-chat-pane__msg{border-radius:var(--radius-md,10px);word-break:break-word;white-space:pre-wrap;max-width:90%;padding:8px 12px;font-size:13px;line-height:1.45}.agent-chat-pane__msg--user{background:var(--accent-human,#111);color:var(--text-inverse,#f5f5f3);border-bottom-right-radius:4px;align-self:flex-end}.agent-chat-pane__msg--assistant{background:var(--bg-raised,#f0f0ee);color:var(--text-primary,#111);border-bottom-left-radius:4px;align-self:flex-start}.agent-chat-pane__msg-text{min-height:1em}.agent-chat-pane__msg-text strong{font-weight:700}.agent-chat-pane__error{border-radius:var(--radius-md,10px);color:#991b1b;background:#ef444414;margin-top:4px;padding:8px 10px}.agent-chat-pane__error-summary{font-size:12px;font-weight:600;line-height:1.4}.agent-chat-pane__error-details{margin-top:6px;font-size:11px}.agent-chat-pane__error-details summary{cursor:pointer;-webkit-user-select:none;user-select:none}.agent-chat-pane__error-detail-text{white-space:pre-wrap;opacity:.85;margin-top:6px}.agent-chat-pane__tools{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.agent-chat-pane__tool-badge{border-radius:var(--radius-sm,6px);color:#7c3aed;background:#a78bfa26;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.agent-chat-pane__tool-badge--pending{color:#b45309;background:#fbbf2429}.agent-chat-pane__tool-badge--error{color:#b91c1c;background:#ef444424}.agent-chat-pane__typing{align-self:flex-start;gap:4px;padding:8px 12px;display:flex}.agent-chat-pane__typing-dot{background:var(--text-muted,#999);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite agent-typing-bounce}.agent-chat-pane__typing-dot:nth-child(2){animation-delay:.15s}.agent-chat-pane__typing-dot:nth-child(3){animation-delay:.3s}@keyframes agent-typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.agent-chat-pane__input-bar{border-top:1px solid var(--border-subtle,#00000012);flex-shrink:0;align-items:flex-end;gap:8px;padding:8px 12px 10px;display:flex}.agent-chat-pane__input{resize:none;color:var(--text-primary,#111);background:0 0;border:none;outline:none;flex:1;max-height:80px;padding:4px 0;font-family:inherit;font-size:13px;line-height:1.45}.agent-chat-pane__input::placeholder{color:var(--text-muted,#999)}.agent-chat-pane__send{border-radius:var(--radius-sm,6px);background:var(--accent-human,#111);width:32px;height:32px;color:var(--text-inverse,#f5f5f3);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s;display:flex}.agent-chat-pane__send:disabled{opacity:.3;cursor:not-allowed}.agent-chat-pane__send:not(:disabled):hover{opacity:.8}.add-agent-modal-backdrop{z-index:20000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-agent-modal{background:var(--bg-surface,#fff);border:1px solid var(--border-default,#00000024);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-lg);width:440px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);font-family:var(--font-ui,system-ui, sans-serif);flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.add-agent-modal__title{color:var(--text-primary,#111);margin:0;font-size:16px;font-weight:700}.add-agent-modal__roles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.add-agent-modal__role-card{border-radius:var(--radius-md,10px);border:1.5px solid var(--border-default,#00000024);background:var(--bg-surface,#fff);cursor:pointer;text-align:left;flex-direction:column;gap:4px;padding:12px;transition:border-color .12s,background .12s;display:flex;position:relative}.add-agent-modal__role-card:hover{border-color:var(--border-strong,#00000047);background:var(--bg-raised,#f0f0ee)}.add-agent-modal__role-card--selected{border-color:var(--text-primary,#111);background:var(--bg-raised,#f0f0ee)}.add-agent-modal__role-swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-right:6px;display:inline-block}.add-agent-modal__role-label{color:var(--text-primary,#111);align-items:center;font-size:13px;font-weight:600;display:flex}.add-agent-modal__role-desc{color:var(--text-secondary,#555);font-size:11px;line-height:1.4}.add-agent-modal__custom-fields{flex-direction:column;gap:10px;display:flex}.add-agent-modal__label{color:var(--text-secondary,#555);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.add-agent-modal__input,.add-agent-modal__textarea{box-sizing:border-box;border:1.5px solid var(--border-default,#00000024);border-radius:var(--radius-sm,6px);width:100%;color:var(--text-primary,#111);background:var(--bg-surface,#fff);outline:none;padding:8px 10px;font-family:inherit;font-size:13px;transition:border-color .12s}.add-agent-modal__input:focus,.add-agent-modal__textarea:focus{border-color:var(--text-primary,#111)}.add-agent-modal__textarea{resize:vertical;min-height:80px}.add-agent-modal__actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.add-agent-modal__cancel-btn{border-radius:var(--radius-sm,6px);border:1.5px solid var(--border-default,#00000024);color:var(--text-secondary,#555);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px;font-weight:500;transition:border-color .12s,color .12s}.add-agent-modal__cancel-btn:hover{border-color:var(--border-strong,#00000047);color:var(--text-primary,#111)}.add-agent-modal__confirm-btn{border-radius:var(--radius-sm,6px);background:var(--accent-human,#111);color:var(--text-inverse,#f5f5f3);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .12s}.add-agent-modal__confirm-btn:hover{opacity:.85}.add-agent-modal__confirm-btn:disabled{opacity:.35;cursor:not-allowed}[data-theme=dark] .agent-chat-pane__msg--assistant{background:var(--bg-raised,#242424)}[data-theme=dark] .agent-chat-pane__error{color:#fecaca;background:#ef44441f}[data-theme=dark] .agent-chat-pane__tool-badge{color:#c4b5fd;background:#a78bfa33}[data-theme=dark] .agent-chat-pane__tool-badge--pending{color:#fbbf24;background:#fbbf2429}[data-theme=dark] .agent-chat-pane__tool-badge--error{color:#fca5a5;background:#ef44442e}[data-theme=dark] .add-agent-modal,[data-theme=dark] .add-agent-modal__role-card{background:var(--bg-surface,#1a1a1a);border-color:var(--border-default)}[data-theme=dark] .add-agent-modal__role-card:hover,[data-theme=dark] .add-agent-modal__role-card--selected{background:var(--bg-raised,#242424)}[data-theme=dark] .add-agent-modal__input,[data-theme=dark] .add-agent-modal__textarea{background:var(--bg-raised,#242424);color:var(--text-primary,#f0f0ee);border-color:var(--border-default)}.magic-demo{width:100%;min-height:100svh;color:var(--text-primary);padding:4rem 2rem;position:relative}.magic-demo__grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:1.25rem;max-width:1080px;margin:0 auto;display:grid}.magic-demo__cell{flex-direction:column;gap:.65rem;display:flex}.magic-demo__legend{color:var(--text-secondary);font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;margin:0;padding-left:.2rem;font-size:.75rem}@property --shine-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.magic-card{--mx:50%;--my:50%;--spotlight-r:360px;--card-base-bg:color-mix(in srgb, var(--bg-surface) 92%, transparent);--card-border-highlight:color-mix(in srgb, var(--accent-signature) 72%, transparent);--card-border-soft:color-mix(in srgb, var(--accent-signature) 20%, transparent);--card-spotlight:color-mix(in srgb, var(--accent-signature) 36%, transparent);isolation:isolate;border-radius:var(--radius-fluid);background:linear-gradient(var(--card-base-bg), var(--card-base-bg)) padding-box, conic-gradient(from 140deg at 50% 50%, color-mix(in srgb, var(--card-border-soft) 65%, transparent), var(--card-border-highlight), color-mix(in srgb, var(--card-border-soft) 65%, transparent)) border-box;box-shadow:var(--shadow-md), 0 0 0 1px color-mix(in srgb, var(--card-border-soft) 55%, transparent);transition:transform .18s var(--ease-out), box-shadow .17s var(--ease-out);border:1px solid #0000;position:relative;overflow:hidden}.magic-card:hover{box-shadow:var(--shadow-md), 0 0 0 1px color-mix(in srgb, var(--card-border-highlight) 60%, transparent), 0 0 18px -12px color-mix(in srgb, var(--card-border-highlight) 72%, transparent)}.magic-card--sheen{--card-border-highlight:color-mix(in srgb, var(--accent-signature) 84%, var(--magic-sheen-tint) 16%);--card-border-soft:color-mix(in srgb, var(--accent-signature) 24%, transparent);--card-spotlight:color-mix(in srgb, var(--accent-signature) 38%, transparent)}.magic-card--magicui{--card-border-highlight:color-mix(in srgb, var(--magic-gradient-pink) 66%, var(--magic-gradient-violet) 34%);--card-border-soft:color-mix(in srgb, var(--magic-gradient-pink) 22%, transparent);--card-spotlight:color-mix(in srgb, var(--magic-gradient-pink) 44%, transparent)}.magic-card__border,.magic-card__spotlight{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.magic-card__border{z-index:0;opacity:.42;background:conic-gradient(from 100deg at 40% 50%, transparent 0deg, color-mix(in srgb, var(--card-border-highlight) 72%, transparent) 90deg, transparent 220deg, color-mix(in srgb, var(--card-border-soft) 70%, transparent) 300deg, transparent 360deg)}.magic-card__spotlight{z-index:1;background:radial-gradient(var(--spotlight-r) circle at var(--mx) var(--my), var(--card-spotlight), transparent 72%);opacity:0;transition:opacity .14s var(--ease-out)}.magic-card:hover .magic-card__spotlight{opacity:.68}.magic-card__content{z-index:2;padding:1rem;position:relative}.shine-border{--shine-angle:0deg;--shine-inner-bg:color-mix(in srgb, var(--bg-surface) 92%, transparent);--shine-track:color-mix(in srgb, var(--accent-signature) 20%, transparent);--shine-core:color-mix(in srgb, var(--accent-signature) 76%, transparent);border-radius:var(--radius-fluid);background:linear-gradient(var(--shine-inner-bg), var(--shine-inner-bg)) padding-box, conic-gradient(from var(--shine-angle), var(--shine-track), var(--shine-core), var(--shine-track), var(--shine-track)) border-box;box-shadow:var(--shadow-md), 0 0 14px -12px color-mix(in srgb, var(--shine-core) 75%, transparent);border:1px solid #0000;animation:3.8s linear infinite shine-angle-spin;position:relative}.shine-border--sheen{--shine-track:color-mix(in srgb, var(--accent-signature) 20%, transparent);--shine-core:color-mix(in srgb, var(--accent-signature) 84%, var(--magic-sheen-tint) 16%)}.shine-border--magicui{--shine-track:color-mix(in srgb, var(--magic-gradient-pink) 25%, transparent);--shine-core:color-mix(in srgb, var(--magic-gradient-pink) 62%, var(--magic-gradient-violet) 38%)}.shine-border__inner{border-radius:inherit;position:relative}.magic-showcase-card{border-radius:calc(var(--radius-fluid) - 2px);border:1px solid var(--border-default);background:color-mix(in srgb, var(--bg-surface) 95%, transparent);flex-direction:column;gap:.8rem;min-height:250px;padding:1rem;display:flex}.magic-showcase-card__head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.magic-showcase-card__title{font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.84rem}.magic-showcase-card__avatars{align-items:center;display:flex}.magic-showcase-card__avatar{border:1px solid var(--border-default);background:color-mix(in srgb, var(--bg-surface) 80%, var(--bg-canvas));width:1.4rem;height:1.4rem;color:var(--text-secondary);font-family:var(--font-ui);border-radius:999px;place-items:center;margin-left:-.34rem;font-size:.64rem;font-weight:600;display:inline-grid}.magic-showcase-card__avatar:first-child{margin-left:0}.magic-showcase-card__label{color:var(--text-secondary);font-family:var(--font-ui);letter-spacing:.03em;margin:0;font-size:.76rem}.magic-showcase-card__notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.magic-showcase-card__note{border:1px solid color-mix(in srgb, var(--accent-signature) 24%, var(--border-default));background:linear-gradient(160deg, color-mix(in srgb, var(--bg-surface) 92%, var(--accent-signature-soft)), color-mix(in srgb, var(--bg-surface) 96%, transparent));border-radius:.72rem;flex-direction:column;gap:.45rem;min-height:96px;padding:.6rem .55rem;display:flex}.magic-showcase-card__noteTitle{color:var(--text-primary);font-family:var(--font-ui);letter-spacing:.03em;text-transform:uppercase;font-size:.7rem}.magic-showcase-card__noteText{color:var(--text-secondary);font-family:var(--font-ui);font-size:.73rem;line-height:1.3}@keyframes shine-angle-spin{to{--shine-angle:1turn}}@media (width<=940px){.magic-demo__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.magic-card__spotlight{opacity:0!important}.magic-card:hover{transform:none}.shine-border{background:linear-gradient(var(--shine-inner-bg), var(--shine-inner-bg)) padding-box, linear-gradient(var(--shine-track), var(--shine-track)) border-box;box-shadow:var(--shadow-md);animation:none}}.projects-home{background:var(--bg-canvas);min-height:100svh;color:var(--text-primary);font-family:var(--font-ui);padding:24px 20px 28px}.projects-home__inner{max-width:1120px;margin:0 auto}.projects-home__topbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.projects-home__wordmark{cursor:pointer;color:var(--text-primary);text-align:left;background:0 0;border:none;align-items:baseline;gap:.45rem;padding:0;display:inline-flex}.projects-home__wordmark-main{font-family:var(--font-ui);letter-spacing:-.02em;font-size:clamp(1.3rem,2vw,1.75rem);font-style:normal;font-weight:700}.projects-home__wordmark-sub{font-family:var(--font-ui);color:var(--text-secondary);letter-spacing:-.01em;font-size:clamp(1rem,1.3vw,1.125rem);font-style:normal;font-weight:600}.projects-home__cta{border:1px solid var(--accent-active);border-radius:var(--radius-full);background:var(--accent-active);min-height:40px;color:var(--text-inverse);font:inherit;letter-spacing:.02em;cursor:pointer;box-shadow:var(--shadow-sm);transition:opacity .16s var(--ease-out), border-color .16s var(--ease-out), background .16s var(--ease-out);justify-content:center;align-items:center;gap:.45rem;padding:.45rem 1rem .45rem .75rem;font-size:.82rem;font-weight:650;display:inline-flex}.projects-home__cta:hover{opacity:.92}.projects-home__cta-icon{justify-content:center;align-items:center;width:1.15rem;height:1.15rem;display:inline-flex}.projects-home__cta-icon svg{width:14px;height:14px}.projects-home__grid{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:.75rem;display:grid}.project-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out), transform .16s var(--ease-out);position:relative}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.project-card__hit{box-sizing:border-box;width:100%;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;padding:.8rem 2.8rem .8rem .8rem}.project-card__head{align-items:center;gap:.5rem;min-width:0;display:flex}.project-card__title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:.95rem;font-weight:650;line-height:1.25;overflow:hidden}.project-card__meta{color:var(--text-secondary);margin:.45rem 0 0;font-size:.74rem;font-weight:550;line-height:1.2}.project-card__icon{border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--bg-raised);width:1.5rem;height:1.5rem;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.project-card__icon svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.project-card__trash{border-radius:var(--radius-full);border:1px solid var(--color-danger-border);background:var(--color-danger-soft);width:1.9rem;height:1.9rem;color:var(--color-danger);cursor:pointer;transition:background .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:.55rem;right:.55rem}.project-card__trash:hover{background:var(--color-danger-soft-hover);border-color:var(--color-danger-border-hover)}.project-card__trash:active{transform:translateY(1px)}.project-card__trash svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.projects-home__empty{border:1px solid var(--border-default);border-radius:var(--radius-xl);background:var(--bg-surface);min-height:46svh;box-shadow:var(--shadow-sm);text-align:center;place-content:center;justify-items:center;gap:.7rem;padding:1.25rem;display:grid}.projects-home__empty-visual{color:var(--text-secondary)}.projects-home__empty-title{letter-spacing:-.01em;color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.projects-home__empty-desc{max-width:22rem;color:var(--text-secondary);margin:0;font-size:.84rem;line-height:1.45}.projects-home :where(button):focus-visible{outline:2px solid var(--focus-ring-unified);outline-offset:2px}@media (width<=767px){.projects-home{padding:16px}.projects-home__topbar{flex-direction:column;align-items:stretch}.projects-home__cta{justify-content:center;width:100%}.projects-home__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.project-card,.project-card__trash,.projects-home__cta{transition:none}.project-card:hover{transform:none}}.projects-home__topbar-right{align-items:center;gap:.85rem;display:flex}.projects-home__section{margin-top:1.75rem}.projects-home__section-title{letter-spacing:-.01em;color:var(--text-primary);align-items:baseline;gap:.6rem;margin:0 0 .85rem;font-size:1.05rem;font-weight:700;display:flex}.projects-home__section-count{color:var(--text-muted);font-size:.85rem;font-weight:600}.projects-home__section-empty{color:var(--text-muted);margin:0 0 .5rem;font-size:.92rem}.project-card__members{gap:4px;margin-top:.5rem;display:flex}.project-card__member{color:#fff;letter-spacing:0;border:2px solid var(--bg-surface);border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;margin-left:-6px;font-size:.65rem;font-weight:700;display:inline-flex}.project-card__member:first-child{margin-left:0}.project-card__member--rest{background:var(--bg-raised);color:var(--text-secondary);font-weight:600}.user-menu,.user-menu__details{position:relative}.user-menu__details>summary{list-style:none}.user-menu__details>summary::-webkit-details-marker{display:none}.user-menu__trigger{background:color-mix(in srgb, var(--bg-surface) 88%, transparent);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);cursor:pointer;color:var(--text-primary);transition:background .16s var(--ease-out), box-shadow .16s var(--ease-out);border-radius:999px;align-items:center;gap:.55rem;padding:.35rem .65rem .35rem .4rem;font-size:.92rem;display:inline-flex}.user-menu__trigger:hover{background:var(--bg-surface);box-shadow:var(--shadow-md)}.user-menu__pill{color:#fff;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.7rem;font-weight:700;display:inline-flex}.user-menu__name{white-space:nowrap;text-overflow:ellipsis;max-width:14ch;font-weight:500;overflow:hidden}.user-menu__dropdown{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:220px;box-shadow:var(--shadow-md);z-index:50;padding:.6rem;position:absolute;top:calc(100% + 6px);right:0}.user-menu__row{flex-direction:column;gap:2px;padding:.4rem .5rem;display:flex}.user-menu__row-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600}.user-menu__row-value{color:var(--text-primary);word-break:break-all;font-size:.9rem}.user-menu__logout{background:var(--bg-raised);width:100%;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;font:inherit;transition:background .16s var(--ease-out);border:none;margin-top:.4rem;padding:.55rem .75rem;font-weight:600}.user-menu__logout:hover{background:color-mix(in srgb, var(--bg-raised) 70%, var(--border-default))}.projects-home__migration{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);justify-content:space-between;align-items:center;gap:1rem;margin:.75rem 0 1.25rem;padding:.85rem 1rem;font-size:.93rem;line-height:1.45;display:flex}.projects-home__migration strong{font-weight:700}.projects-home__migration-dismiss{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;font:inherit;color:var(--text-primary);flex-shrink:0;padding:.45rem .85rem;font-weight:600}.projects-home__migration-dismiss:hover{background:var(--bg-raised)}.projects-home__empty-cta{border-radius:var(--radius-md);background:var(--accent-active);color:var(--text-inverse);font:inherit;cursor:pointer;border:none;margin-top:1rem;padding:.7rem 1.2rem;font-weight:600}.projects-home__empty-cta:hover{transform:translateY(-1px)}.share-settings__backdrop{z-index:200;-webkit-backdrop-filter:blur(4px);font-family:var(--font-ui);background:#00000052;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.share-settings{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:min(480px,100%);max-height:min(82vh,760px);box-shadow:var(--shadow-lg);color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.share-settings__header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.7rem;padding:16px 18px;display:flex}.share-settings__header-left{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.share-settings__header h2{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.05rem;font-weight:700;overflow:hidden}.share-settings__back{cursor:pointer;width:28px;height:28px;color:var(--text-secondary);background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:1.4rem;display:inline-flex}.share-settings__back:hover{background:var(--bg-raised);color:var(--text-primary)}.share-settings__close{cursor:pointer;width:28px;height:28px;color:var(--text-secondary);background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:inline-flex}.share-settings__close:hover{background:var(--bg-raised);color:var(--text-primary)}.share-settings__body{padding:16px 18px 20px;overflow-y:auto}.share-settings__error{color:#c53030;margin:0 0 .6rem;font-size:.88rem}.share-public{border-radius:var(--radius-lg);background:var(--bg-canvas);border:1px solid var(--border-subtle);transition:background .16s var(--ease-out);flex-direction:column;gap:.7rem;padding:.7rem .75rem;display:flex}.share-public--enabled{background:var(--bg-surface);border-color:var(--border-default)}.share-public--error{border-color:#c5303066}.share-public__row{align-items:center;gap:.7rem;display:flex}.share-public__icon{background:var(--bg-raised);width:34px;height:34px;color:var(--text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.share-public__icon svg{width:18px;height:18px}.share-public__body{flex-direction:column;flex:1;min-width:0;display:flex}.share-public__title{color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:600}.share-public__sub{color:var(--text-muted);font-size:.82rem}.share-public__retry{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.share-public__retry:hover{background:var(--bg-raised);color:var(--text-primary)}.share-public__retry svg{width:16px;height:16px}.share-public__expanded{flex-direction:column;gap:.65rem;padding-left:44px;display:flex}.share-public__role-group{background:var(--bg-raised);border-radius:999px;align-self:flex-start;gap:4px;padding:3px;display:inline-flex}.share-public__role-pill{font:inherit;color:var(--text-secondary);cursor:pointer;transition:background .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:none;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .85rem .35rem .65rem;font-size:.85rem;font-weight:500;display:inline-flex}.share-public__role-pill svg{flex-shrink:0;width:16px;height:16px}.share-public__role-pill:hover:not(:disabled):not(.is-active){color:var(--text-primary)}.share-public__role-pill.is-active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm,0 1px 2px #0000000f);font-weight:600}.share-public__role-pill:disabled{cursor:not-allowed;opacity:.55}.share-public__link{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.share-public__link input{border-radius:var(--radius-md);border:1px solid var(--border-default);min-width:200px;font:inherit;background:var(--bg-canvas);color:var(--text-secondary);flex:1;padding:.5rem .75rem;font-size:.85rem}.share-public__link-btn{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);font:inherit;cursor:pointer;transition:background .16s var(--ease-out);padding:.5rem .85rem;font-size:.85rem;font-weight:600}.share-public__link-btn:hover:not(:disabled){background:var(--bg-raised)}.share-public__link-btn:disabled{opacity:.55;cursor:not-allowed}.share-public__link-icon-btn{border:1px solid var(--border-default);background:var(--bg-surface);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:background .16s var(--ease-out), color .16s var(--ease-out), border-color .16s var(--ease-out);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.share-public__link-icon-btn:hover:not(:disabled){background:var(--bg-raised);color:var(--text-primary);border-color:var(--border-strong,var(--text-muted))}.share-public__link-icon-btn:disabled{opacity:.55;cursor:not-allowed}.share-public__link-icon-btn svg{width:16px;height:16px}.share-switch{--switch-w:38px;--switch-h:22px;--switch-pad:3px;--switch-thumb:calc(var(--switch-h) - var(--switch-pad) * 2);width:var(--switch-w);height:var(--switch-h);cursor:pointer;flex-shrink:0;display:inline-block;position:relative}.share-switch__input{opacity:0;cursor:inherit;margin:0;position:absolute;inset:0}.share-switch__track{background:var(--bg-raised);border:1px solid var(--border-default);width:100%;height:100%;transition:background .16s var(--ease-out);border-radius:999px;display:block}.share-switch__thumb{top:var(--switch-pad);left:var(--switch-pad);width:var(--switch-thumb);height:var(--switch-thumb);background:var(--text-secondary);transition:transform .18s var(--ease-spring), background .16s var(--ease-out);border-radius:999px;display:block;position:absolute}.share-switch__input:checked+.share-switch__track{background:var(--accent-active);border-color:var(--accent-active)}.share-switch__input:checked+.share-switch__track .share-switch__thumb{background:var(--text-inverse,#fff);transform:translateX(calc(var(--switch-w) - var(--switch-h)))}.share-switch__input:focus-visible+.share-switch__track{box-shadow:0 0 0 3px var(--accent-signature-soft)}.share-switch__input:disabled+.share-switch__track{opacity:.5;cursor:not-allowed}.share-main{flex-direction:column;gap:1.1rem;display:flex}.share-main__invite{flex-direction:column;gap:.5rem;display:flex}.share-main__invite-input{font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-canvas);color:var(--text-primary);resize:vertical;min-height:56px;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);padding:.65rem .8rem}.share-main__invite-input::placeholder{color:var(--text-muted)}.share-main__invite-input:hover:not(:focus):not(:disabled){border-color:var(--border-strong,var(--text-muted))}.share-main__invite-input:focus-visible{border-color:var(--accent-active);box-shadow:0 0 0 3px var(--accent-signature-soft);outline:none}.share-main__invite-input:disabled{opacity:.55;cursor:not-allowed}.share-main__invite-actions{justify-content:flex-end;align-items:stretch;gap:.5rem;display:flex}.share-main__invite-role{appearance:none;font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-default);background-color:var(--bg-canvas);height:38px;color:var(--text-primary);cursor:pointer;transition:border-color .16s var(--ease-out), background-color .16s var(--ease-out);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5l5 5 5-5' stroke='currentColor' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right .8rem center;background-repeat:no-repeat;padding:0 2.1rem 0 .85rem;font-weight:500;line-height:1}.share-main__invite-role:hover:not(:disabled){border-color:var(--border-strong,var(--text-muted));background-color:var(--bg-surface)}.share-main__invite-role:focus-visible{border-color:var(--border-strong,var(--text-muted));box-shadow:0 0 0 2px var(--accent-signature-soft);outline:none}.share-main__invite-role:disabled{opacity:.55;cursor:not-allowed}.share-main__invite-submit{font:inherit;border-radius:var(--radius-md);background:var(--accent-active);height:38px;color:var(--text-inverse);cursor:pointer;transition:transform .16s var(--ease-spring), background .16s var(--ease-out), opacity .16s var(--ease-out);border:none;padding:0 1.2rem;font-weight:600;line-height:1}.share-main__invite-submit:not(:disabled):hover{transform:translateY(-1px)}.share-main__invite-submit:disabled{background:var(--bg-raised);color:var(--text-muted);cursor:not-allowed}.share-main__hint{color:var(--text-muted);margin:0;font-size:.85rem}.share-main__heading{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-size:.78rem;font-weight:600}.share-main__list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.share-row{border-radius:var(--radius-md);transition:background .16s var(--ease-out);background:0 0;align-items:center;gap:.7rem;padding:.55rem .65rem;display:flex}.share-row:hover{background:var(--bg-canvas)}.share-row__icon{background:var(--bg-canvas);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.05rem;display:inline-flex}.share-row__pill{color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:700;display:inline-flex}.share-row__pill--pending{background:var(--bg-raised);color:var(--text-secondary)}.share-row__pill--pending svg{width:16px;height:16px}.share-row__body{flex-direction:column;flex:1;min-width:0;display:flex}.share-row__name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.share-row__you{color:var(--text-muted);font-weight:400}.share-row__sub{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.share-row__role{color:var(--text-secondary);margin-right:.4rem;font-size:.82rem;font-weight:600}.share-row__role--owner{color:var(--text-primary)}.share-row__chevron{cursor:pointer;width:26px;height:26px;color:var(--text-muted);background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;font-weight:500;display:inline-flex}.share-row__chevron:hover{background:var(--bg-raised);color:var(--text-primary)}.share-row__retry{cursor:pointer;width:28px;height:28px;color:var(--text-secondary);background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.share-row__retry:hover{background:var(--bg-raised);color:var(--text-primary)}.share-row__retry svg{width:15px;height:15px}.share-row--pending .share-row__name{color:var(--text-secondary)}.share-row--placeholder .share-row__name{color:var(--text-muted);font-style:italic}.share-row--error .share-row__pill--pending{color:#c53030;background:#c530301f;font-weight:700}.share-row--error .share-row__name{color:#c53030}.share-row--error .share-row__sub{color:var(--text-muted)}.share-detail{flex-direction:column;gap:.9rem;display:flex}.share-detail__row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.share-detail__label{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:600}.share-detail__email{color:var(--text-secondary);word-break:break-all;margin:0;font-size:.9rem}.share-detail__group{flex-direction:column;gap:.4rem;display:flex}.share-detail__group[aria-disabled=true]{opacity:.5;pointer-events:none}.share-detail__radio{cursor:pointer;align-items:center;gap:.55rem;font-size:.93rem;display:inline-flex}.share-detail__role-value{color:var(--text-primary);margin:0;font-size:.95rem}.share-detail__link{flex-wrap:wrap;gap:.5rem;display:flex}.share-detail__link input{border-radius:var(--radius-sm);border:1px solid var(--border-default);min-width:200px;font:inherit;background:var(--bg-canvas);color:var(--text-primary);flex:1;padding:.55rem .8rem}.share-detail__link button{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-raised);font:inherit;cursor:pointer;padding:.55rem .85rem;font-weight:600}.share-detail__link button:hover{background:var(--bg-surface)}.share-detail__actions{flex-wrap:wrap;gap:.5rem;display:flex}.share-detail__btn{font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-canvas);color:var(--text-primary);cursor:pointer;padding:.55rem .95rem;font-weight:600}.share-detail__btn:hover{background:var(--bg-raised)}.share-detail__btn--danger{color:#c53030;border-color:#c5303066}.share-detail__btn--danger:hover{background:#c5303014}.landing{background:var(--bg-canvas);min-height:100svh;color:var(--text-primary);font-family:var(--font-ui);flex-direction:column;display:flex}.landing__header{z-index:10;background:color-mix(in srgb, var(--bg-canvas) 88%, transparent);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:18px clamp(20px,4vw,56px);display:flex;position:sticky;top:0}.landing__brand{letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.landing__nav{align-items:center;gap:1.25rem;display:flex}.landing__nav-link{color:var(--text-secondary);transition:color .16s var(--ease-out);font-size:.95rem;text-decoration:none}.landing__nav-link:hover,.landing__nav-link:focus-visible{color:var(--text-primary)}.landing__main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}.landing-hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(24px,5vw,72px);padding:clamp(48px,8vw,96px) 0 clamp(56px,9vw,120px);display:grid}.landing-hero__eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin:0 0 .75rem;font-size:.78rem;font-weight:600}.landing-hero__title{letter-spacing:-.025em;margin:0 0 1.1rem;font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:700;line-height:1.05}.landing-hero__tagline{color:var(--text-secondary);max-width:36ch;margin:0 0 2rem;font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55}.landing-hero__ctas{flex-wrap:wrap;gap:.75rem;display:flex}.landing-hero__cta{border-radius:var(--radius-md);transition:transform .16s var(--ease-spring), box-shadow .2s var(--ease-out), background .18s var(--ease-out);cursor:pointer;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.landing-hero__cta--primary{background:var(--accent-active);color:var(--text-inverse);box-shadow:var(--shadow-md)}.landing-hero__cta--primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.landing-hero__cta--secondary{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-default)}.landing-hero__cta--secondary:hover{background:var(--bg-raised)}.landing-hero__visual{aspect-ratio:5/4;border-radius:var(--radius-xl);background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.landing-hero__frame{border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text-muted);align-items:flex-start;padding:8px 12px;font-size:.85rem;font-weight:600;display:flex;position:absolute;inset:18% 12%}.landing-hero__sticker{font-size:.95rem;font-weight:600;font-family:var(--font-content);box-shadow:var(--shadow-sm);color:var(--text-primary);border-radius:4px;padding:18px 16px;position:absolute}.landing-hero__sticker--a{background:#fdf3a4;top:8%;left:14%;transform:rotate(-3deg)}.landing-hero__sticker--b{background:#c5e8f7;top:36%;right:12%;transform:rotate(2.5deg)}.landing-hero__sticker--c{background:#ffd1d1;bottom:10%;left:24%;transform:rotate(-1.5deg)}.landing-values{border-top:1px solid var(--border-subtle);padding:clamp(40px,6vw,72px) 0}.landing-values__title{letter-spacing:-.02em;margin:0 0 2rem;font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:700}.landing-values__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.landing-values__card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:transform .22s var(--ease-spring), box-shadow .22s var(--ease-out);flex-direction:column;gap:.7rem;padding:1.5rem 1.4rem;display:flex}.landing-values__card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.landing-values__icon{color:var(--accent-active);font-size:1.8rem;font-weight:600;line-height:1}.landing-values__card-title{letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:700}.landing-values__card-body{color:var(--text-secondary);margin:0;font-size:.97rem;line-height:1.55}.landing-login{border-top:1px solid var(--border-subtle);justify-content:center;padding:clamp(48px,7vw,88px) 0 clamp(40px,6vw,72px);display:flex}.landing-login__card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:min(420px,100%);box-shadow:var(--shadow-md);padding:clamp(28px,4vw,40px)}.landing-login__title{letter-spacing:-.01em;margin:0 0 .4rem;font-size:1.4rem;font-weight:700}.landing-login__sub{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.login-form{flex-direction:column;gap:.6rem;display:flex}.login-form__label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.login-form__input{font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-canvas);color:var(--text-primary);transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);outline:none;padding:.75rem .9rem}.login-form__input:focus-visible{border-color:var(--accent-active);box-shadow:0 0 0 3px var(--accent-signature-soft)}.login-form__submit{border-radius:var(--radius-md);background:var(--accent-active);color:var(--text-inverse);font:inherit;cursor:pointer;transition:transform .16s var(--ease-spring), background .16s var(--ease-out);border:none;margin-top:.4rem;padding:.85rem 1rem;font-weight:600}.login-form__submit:disabled{opacity:.5;cursor:not-allowed}.login-form__submit:not(:disabled):hover{transform:translateY(-1px)}.login-form__error{color:#c53030;margin:0;font-size:.88rem}.login-form__hint{color:var(--text-muted);margin:.4rem 0 0;font-size:.85rem;line-height:1.5}.login-form__hint code{background:var(--bg-raised);border-radius:4px;padding:1px 6px;font-size:.82rem}.login-form--sent{text-align:center}.login-form__success-icon{margin-bottom:.5rem;font-size:2.2rem}.login-form__title{margin:0 0 .4rem;font-size:1.15rem}.login-form__sub{color:var(--text-secondary);margin:0 0 1rem;line-height:1.55}.login-form__link{font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.9rem;text-decoration:underline}.login-form__link:focus-visible{outline:2px solid var(--accent-active);outline-offset:2px;border-radius:var(--radius-sm,6px)}.login-form__link--alt{color:var(--text-secondary);margin-top:.6rem;text-decoration:none}.login-form__link--alt:hover{text-decoration:underline}.login-form__links{flex-direction:column;align-items:center;gap:.2rem;margin-top:.2rem;display:flex}.login-form__password-wrapper{align-items:stretch;display:flex;position:relative}.login-form__password-wrapper .login-form__input{flex:1;padding-right:2.75rem}.login-form__password-toggle{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:.4rem;font-size:1.1rem;line-height:1;position:absolute;top:50%;right:.4rem;transform:translateY(-50%)}.login-form__password-toggle:hover{color:var(--text-primary)}.login-form__password-toggle:focus-visible{outline:2px solid var(--accent-active);outline-offset:2px;border-radius:var(--radius-sm,6px)}.auth-callback{background:var(--bg-canvas);min-height:100svh;font-family:var(--font-ui);color:var(--text-primary);place-items:center;padding:24px;display:grid}.auth-callback__inner{text-align:center;max-width:420px}.auth-callback__title{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.4rem;font-weight:700}.auth-callback__sub{color:var(--text-secondary);margin:0 0 1rem}.auth-callback__link{color:var(--text-primary);margin-top:.5rem;text-decoration:underline;display:inline-block}.landing__footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border-subtle);justify-content:center;align-items:center;gap:.7rem;padding:28px 24px 36px;font-size:.85rem;display:flex}.landing__footer-dot{opacity:.5}.landing__footer-link{color:var(--text-secondary);text-decoration:none}.landing__footer-link:hover{color:var(--text-primary);text-decoration:underline}@media (width<=760px){.landing-hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:48px}.landing-hero__visual{aspect-ratio:4/3;order:-1}}.room-experimental-page{background:var(--bg-canvas);min-height:100vh;color:var(--text-primary);font-family:var(--font-ui);text-align:center;place-content:center;gap:.9rem;padding:2rem;display:grid}.room-experimental-page h1{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,5vw,4rem)}.room-experimental-page p{max-width:560px;color:var(--text-secondary);margin:0 auto;line-height:1.55}.room-experimental-page button{border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm);justify-self:center;padding:.7rem 1rem;font-weight:700}.room-experimental-eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:800}.room-presence-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);min-width:min(420px,90vw);box-shadow:var(--shadow-sm);gap:.65rem;padding:1rem;display:grid}.room-presence-list{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.room-presence-pill{border-radius:var(--radius-full);background:var(--bg-raised);color:var(--text-primary);align-items:center;gap:.4rem;padding:.38rem .55rem;font-size:.8rem;font-weight:700;display:inline-flex}.room-presence-pill span{border-radius:999px;width:.55rem;height:.55rem}.zoom-dropdown{z-index:55;font-family:var(--font-ui);position:fixed;bottom:1.1rem;right:1.1rem}.zoom-dropdown__trigger{border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--bg-surface);color:var(--text-primary);letter-spacing:.02em;cursor:pointer;box-shadow:var(--shadow-sm);align-items:center;gap:.35rem;padding:.38rem .65rem .38rem .75rem;font-size:.78rem;font-weight:650;transition:background .12s,border-color .12s;display:inline-flex}.zoom-dropdown__trigger:hover{background:var(--bg-raised);border-color:var(--border-strong)}.zoom-dropdown__chev{opacity:.55;margin-top:1px;font-size:.65rem;line-height:1}.zoom-dropdown__panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;padding:8px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0}.zoom-dropdown__input{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;font-size:.82rem;font-weight:600;font-family:var(--font-ui);background:var(--bg-raised);color:var(--text-primary);outline:none;padding:.45rem .55rem;transition:border-color .12s}.zoom-dropdown__input:focus{border-color:var(--accent-active)}.zoom-dropdown__sep{background:var(--border-subtle);border:none;height:1px;margin:4px 0}.zoom-dropdown__row{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem .5rem;font-size:.76rem;font-weight:560;transition:background .1s;display:flex}.zoom-dropdown__row:hover{background:var(--bg-raised)}.zoom-dropdown__shortcut{color:var(--text-muted);letter-spacing:.02em;flex-shrink:0;font-size:.68rem;font-weight:600}@media (width<=768px){.zoom-dropdown{bottom:5.25rem;right:.85rem}}.toolbar-root{z-index:50;font-family:var(--font-ui);position:fixed;top:50%;left:14px;transform:translateY(-50%)}.toolbar-inner{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-full);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:4px;padding:6px 5px;display:flex}.toolbar-divider{background:var(--border-default);border-radius:1px;flex-shrink:0;width:24px;height:1px;margin:2px 0}.toolbar-btn-wrap{flex-direction:column;align-items:center;display:flex;position:relative}.toolbar-btn{width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:flex}.toolbar-btn:hover{background:var(--bg-raised);color:var(--text-primary)}.toolbar-btn--active{background:var(--accent-active);color:var(--text-inverse)}.toolbar-btn--active:hover{background:var(--accent-active);color:var(--text-inverse);opacity:.94}.toolbar-btn__icon{justify-content:center;align-items:center;line-height:1;display:flex}.toolbar-tooltip{background:var(--tooltip-chrome-bg);border:1px solid color-mix(in srgb, var(--tooltip-chrome-fg) 18%, var(--tooltip-chrome-bg));border-radius:var(--radius-sm);box-shadow:var(--shadow-md);font-family:var(--font-ui);color:var(--tooltip-chrome-fg);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:120;align-items:center;gap:.35rem;padding:.32rem .55rem;font-size:.72rem;font-weight:650;transition:opacity .12s,transform .12s;display:flex;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)translate(-4px)}.toolbar-btn-wrap:hover .toolbar-tooltip,.toolbar-btn-wrap:focus-within .toolbar-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)translate(0)}.toolbar-tooltip__row{align-items:center;gap:.35rem;display:flex}.toolbar-tooltip--stacked{white-space:normal;flex-direction:column;align-items:flex-start;gap:.28rem;max-width:240px}.toolbar-tooltip__hint{color:var(--tooltip-chrome-muted);font-size:.64rem;font-weight:550;line-height:1.35}.toolbar-tooltip__kbd{color:var(--tooltip-chrome-muted);letter-spacing:.06em;font-size:.65rem;font-weight:700}@media (prefers-reduced-motion:reduce){.toolbar-tooltip{transition:none}}.brand-mark{z-index:50;font-family:var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);opacity:.65;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.72rem;font-weight:600;position:fixed;bottom:14px;left:18px;right:auto}.project-top-nav{z-index:112;max-width:min(58vw,560px);font-family:var(--font-ui);align-items:center;display:inline-flex;position:fixed;top:12px;left:14px}.project-top-nav__chip{border:1px solid var(--border-default);border-radius:var(--radius-full);background:color-mix(in srgb, var(--bg-surface) 88%, transparent);max-width:min(42vw,380px);min-height:28px;color:var(--text-primary);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);align-items:stretch;display:inline-flex;overflow:hidden}.project-top-nav__home,.project-top-nav__title{color:inherit;background:0 0;border:0;border-radius:0}.project-top-nav__home{cursor:pointer;flex:0 0 34px;justify-content:center;align-items:center;width:34px;padding:0;display:inline-flex;position:relative}.project-top-nav__home:after{content:"";background:var(--border-default);width:1px;position:absolute;top:6px;bottom:6px;right:0}.project-top-nav__home:hover{background:color-mix(in srgb, var(--bg-raised) 70%, transparent)}.project-top-nav__home:focus-visible,.project-top-nav__title:focus-visible{outline:2px solid color-mix(in srgb, var(--accent-active) 58%, transparent);outline-offset:-2px}.project-top-nav__home svg{flex:none;width:15px;height:15px}.project-top-nav__title{min-width:0;font-family:var(--font-ui);cursor:default;align-items:center;padding:.32rem .78rem .32rem .68rem;font-size:.72rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.project-top-nav__title:hover{background:color-mix(in srgb, var(--bg-surface) 94%, transparent)}.project-top-nav__title-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;text-decoration:none;display:block;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.project-share-btn{flex:none}.project-share-btn--error{color:#ef4444;border-color:color-mix(in srgb, #ef4444 55%, var(--border-default))}.project-share-btn svg{width:18px;height:18px}.project-share-wrap{position:relative}.project-share-popover{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:min(92vw,340px);box-shadow:var(--shadow-lg);font-family:var(--font-ui);z-index:200;padding:.9rem 1rem 1rem;position:absolute;top:calc(100% + 8px);right:0}.project-share-popover__title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);margin:0 0 .65rem;font-size:.82rem;font-weight:800}.project-share-popover__choices{flex-direction:column;gap:.5rem;display:flex}.project-share-popover__choice{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-raised);color:var(--text-primary);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.6rem .75rem;font-family:inherit;display:flex}.project-share-popover__choice:hover,.project-share-popover__choice:focus-visible{background:var(--bg-active,var(--bg-raised));border-color:var(--text-primary);outline:none}.project-share-popover__choice-label{font-size:.78rem;font-weight:700}.project-share-popover__choice-desc{color:var(--text-secondary);font-size:.7rem;font-weight:500}.project-share-popover__field-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:.6rem 0 .3rem;font-size:.68rem;font-weight:650}.project-share-popover__field{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-raised);align-items:center;gap:.4rem;padding:.45rem .55rem;display:flex}.project-share-popover__value{font-family:var(--font-mono,monospace);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.72rem;overflow:hidden}.project-share-popover__code{font-family:var(--font-mono,monospace);letter-spacing:.18em;color:var(--text-primary);text-align:center;flex:1;font-size:1.1rem;font-weight:700}.project-share-popover__copy{border:1px solid var(--border-default);border-radius:var(--radius-sm,6px);background:var(--bg-surface);width:28px;height:28px;color:var(--text-primary);cursor:pointer;flex:none;justify-content:center;align-items:center;display:inline-flex}.project-share-popover__copy:hover{background:var(--bg-active,var(--bg-raised))}.project-share-popover__copy svg{width:14px;height:14px}.project-share-popover__hint{color:var(--text-secondary);margin:.55rem 0 0;font-size:.7rem}.project-share-popover__error{color:#ef4444;margin:0;font-size:.72rem}.project-share-popover__back{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;margin-top:.7rem;padding:.3rem 0;font-family:inherit;font-size:.7rem}.project-share-popover__back:hover{color:var(--text-primary)}.room-access-gate{background:var(--bg-canvas,#f4f4f1);z-index:1000;font-family:var(--font-ui);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.room-access-gate__card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:min(92vw,360px);box-shadow:var(--shadow-lg);padding:1.4rem 1.4rem 1.2rem}.room-access-gate__title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);margin:0 0 .4rem;font-size:.82rem;font-weight:800}.room-access-gate__hint{color:var(--text-secondary);margin:0 0 .9rem;font-size:.78rem;line-height:1.45}.room-access-gate__input{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-raised);width:100%;color:var(--text-primary);font-family:var(--font-mono,monospace);letter-spacing:.3em;text-align:center;box-sizing:border-box;margin-bottom:.7rem;padding:.65rem .8rem;font-size:1.4rem;font-weight:700}.room-access-gate__input--name{letter-spacing:0;text-align:left;font-family:inherit;font-size:1rem;font-weight:600}.room-access-gate__input:focus{outline:2px solid var(--text-primary);outline-offset:1px}.room-access-gate__submit{border:1px solid var(--text-primary);border-radius:var(--radius-md);background:var(--text-primary);width:100%;color:var(--bg-surface);cursor:pointer;padding:.55rem .8rem;font-family:inherit;font-size:.82rem;font-weight:700}.room-access-gate__submit:disabled{opacity:.4;cursor:not-allowed}.project-name-chip-editor{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);width:min(86vw,280px);box-shadow:var(--shadow-lg);z-index:120;padding:.6rem;position:absolute;top:calc(100% + 8px);left:0}.project-name-chip-editor__input{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-raised);width:100%;color:var(--text-primary);font-family:var(--font-ui);outline:none;padding:.45rem .55rem;font-size:.8rem}.project-name-chip-editor__input:focus{border-color:var(--border-strong)}.project-name-chip-editor__actions{gap:.45rem;margin-top:.55rem;display:flex}.project-name-chip-editor__btn{border-radius:var(--radius-full);font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;flex:1;padding:.4rem .65rem;font-size:.74rem;font-weight:620}.project-name-chip-editor__btn--ghost{background:var(--bg-raised);color:var(--text-secondary);border-color:var(--border-default)}.project-name-chip-editor__btn--primary{background:var(--accent-active);color:var(--text-inverse)}.chrome-float-actions{z-index:110;background:color-mix(in srgb, var(--bg-surface) 88%, transparent);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);font-family:var(--font-ui);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex;position:fixed;top:56px;right:14px}.chrome-float-btn{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:flex}.chrome-float-btn:hover{background:var(--bg-raised);color:var(--text-primary)}.chrome-float-btn--active{background:var(--accent-active);color:var(--text-inverse)}.chrome-float-btn--active:hover{background:var(--accent-active);color:var(--text-inverse);opacity:.94}.chrome-proximity-wrap{top:max(12px, env(safe-area-inset-top));z-index:110;font-family:var(--font-ui);position:fixed;left:50%;transform:translate(-50%)}.chrome-proximity-btn-wrap{flex-direction:column;align-items:center;display:flex;position:relative}.chrome-proximity-tooltip{background:var(--tooltip-chrome-bg);border:1px solid color-mix(in srgb, var(--tooltip-chrome-fg) 18%, var(--tooltip-chrome-bg));border-radius:var(--radius-sm);min-width:11rem;max-width:min(17rem,100vw - 32px);box-shadow:var(--shadow-md);font-family:var(--font-ui);white-space:normal;text-align:center;opacity:0;visibility:hidden;pointer-events:none;z-index:120;flex-direction:column;gap:.28rem;padding:.45rem .62rem;transition:opacity .12s,transform .12s;display:flex;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.chrome-proximity-tooltip__title{color:var(--tooltip-chrome-fg);letter-spacing:.02em;font-size:.72rem;font-weight:750}.chrome-proximity-tooltip__desc{color:var(--tooltip-chrome-muted);font-size:.68rem;font-weight:520;line-height:1.35}.chrome-proximity-btn-wrap:hover .chrome-proximity-tooltip,.chrome-proximity-btn-wrap:focus-within .chrome-proximity-tooltip{opacity:1;visibility:visible;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.chrome-proximity-tooltip{transition:none}}.chrome-float-api-wrap{position:relative}.chrome-api-popover{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:min(92vw,300px);box-shadow:var(--shadow-lg);font-family:var(--font-ui);padding:.9rem 1rem 1rem;position:absolute;top:calc(100% + 8px);right:0}.chrome-api-popover__title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);margin:0 0 .65rem;font-size:.82rem;font-weight:800}.chrome-api-popover__tabs{flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem;display:flex}.chrome-api-popover__tab{min-width:0;font-family:var(--font-ui);border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--bg-raised);color:var(--text-secondary);cursor:pointer;flex:auto;padding:.35rem .45rem;font-size:.68rem;font-weight:650;transition:background .12s,color .12s,border-color .12s}.chrome-api-popover__tab:hover{border-color:var(--border-strong);color:var(--text-primary)}.chrome-api-popover__tab--active{background:var(--accent-active);color:var(--text-inverse);border-color:var(--accent-active)}.chrome-api-popover__tab--active:hover{color:var(--text-inverse);opacity:.94}.chrome-api-popover__field-label{color:var(--text-secondary);margin:.65rem 0 .35rem;font-size:.72rem}.chrome-api-popover__input{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-raised);width:100%;color:var(--text-primary);outline:none;padding:.5rem .6rem;font-family:ui-monospace,Cascadia Code,SF Mono,monospace;font-size:.82rem}.chrome-api-popover__input:focus{border-color:var(--accent-active)}.chrome-api-popover__actions{flex-wrap:wrap;gap:.45rem;margin-top:.65rem;display:flex}.chrome-api-popover__btn{font-family:var(--font-ui);border-radius:var(--radius-full);cursor:pointer;border:1px solid #0000;padding:.42rem .75rem;font-size:.78rem;font-weight:650}.chrome-api-popover__btn:disabled{opacity:.4;cursor:default}.chrome-api-popover__btn--secondary{box-sizing:border-box;background:var(--bg-raised);min-width:0;color:var(--text-secondary);border-color:var(--border-default);flex:1;justify-content:center;align-items:center;display:inline-flex}.chrome-api-popover__btn--secondary:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-primary)}.chrome-api-popover__btn--primary{box-sizing:border-box;background:var(--accent-active);min-width:0;color:var(--text-inverse);flex:1;justify-content:center;align-items:center;padding-left:1.1rem;padding-right:1.1rem;display:inline-flex}:is(.chrome-api-popover__actions:has(.chrome-api-popover__btn--primary:only-child) .chrome-api-popover__btn--primary,.chrome-api-popover__actions:has(.chrome-api-popover__btn--secondary:only-child) .chrome-api-popover__btn--secondary){flex:none;width:100%}.chrome-api-popover__btn--primary:hover:not(:disabled){opacity:.92}@media (width<=768px){.canvas-home-btn{top:auto;bottom:86px;left:12px}.project-name-chip-wrap{top:12px;left:12px}.project-name-chip{text-overflow:ellipsis;white-space:nowrap;max-width:min(58vw,260px);overflow:hidden}.brand-mark{bottom:5rem;left:12px}.toolbar-root{top:auto;bottom:20px;left:50%;transform:translate(-50%)}.toolbar-inner{border-radius:var(--radius-full);flex-direction:row;padding:5px 6px}.toolbar-divider{width:1px;height:24px;margin:0 3px}.toolbar-tooltip{top:auto;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.toolbar-btn-wrap:hover .toolbar-tooltip,.toolbar-btn-wrap:focus-within .toolbar-tooltip{transform:translate(-50%)}}.theme-fade{z-index:40;pointer-events:none;will-change:opacity;position:fixed;inset:0}.app-canvas{background:var(--bg-canvas);width:100%;min-height:100svh;color:var(--text-primary);position:relative;overflow:hidden}.app-header{z-index:20;text-align:center;max-width:42rem;margin:0 auto;padding:1.25rem 1rem 0;position:relative}.app-header__brand{letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 .35rem;font-size:.72rem;font-weight:600}.app-header h1{letter-spacing:-.01em;color:var(--text-primary);margin:0 0 .5rem;font-size:2rem;font-weight:700}.app-header p{opacity:.8;margin:0;font-size:1rem;line-height:1.45}.app-header__ai{opacity:.75!important;margin:0 0 .5rem!important;font-size:.85rem!important;line-height:1.35!important}.constellation-root{z-index:1;pointer-events:auto;min-width:100%;min-height:100%;position:absolute;inset:0}.constellation-root--tool-postit{cursor:crosshair}.constellation-bubble-hit{pointer-events:auto;cursor:grab;z-index:5;touch-action:none;background:0 0;position:absolute}.constellation-bubble-halo{will-change:width, height, margin-left, margin-top}.constellation-bubble{background:var(--constellation-bubble-bg);pointer-events:none;cursor:grab;touch-action:none;will-change:width, height, margin-left, margin-top;border-radius:50%;position:absolute;overflow:visible;box-shadow:inset 0 1px #fff6}.constellation-bubble-motion{pointer-events:none;width:100%;height:100%;position:relative}.constellation-bubble-inner{background:var(--constellation-bubble-inner);opacity:.9;border-radius:50%;width:60%;height:60%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.constellation-bubble--dragging{cursor:grabbing}.post-it{border:none;border-radius:0;width:106px;height:106px;padding:0;overflow:visible;box-shadow:0 3px 10px #00000029,0 1px 3px #00000014}.post-it--readonly .post-it__textarea{cursor:pointer;-webkit-user-select:none;user-select:none}.post-it--sun{background:var(--note-sun)}.post-it--planet{background:var(--note-planet)}.post-it--neutral{background:var(--note-neutral)}.post-it--cream{background:#ffeaa7}.post-it--pearl{background:#dfe6e9}.post-it--salmon{background:#fab1a0}.post-it--slate{background:#b2bec3}.post-it--ice{background:#81ecec}.post-it--thinking{box-shadow:0 0 0 2px #c8a05a59,0 8px 24px #3228191f}.post-it--outlier{box-shadow:0 0 0 2px #b43c3273,0 8px 24px #501e1433}.post-it__textarea{width:100%;height:100%;padding:var(--post-it-padding-y) var(--post-it-padding-x);text-align:left;color:var(--note-text);resize:none;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;-webkit-hyphens:none;hyphens:none;box-sizing:border-box;background:0 0;border:none;outline:none;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1.15rem;font-weight:500;line-height:1.2;display:block;overflow:hidden}.post-it--free .post-it__readonly{min-height:106px;padding:var(--post-it-padding-y) var(--post-it-padding-x);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;justify-content:flex-start;align-items:flex-start;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:2rem;line-height:1.35;display:flex}.free-post-it{z-index:10;cursor:grab;touch-action:none;position:absolute}.free-post-it--editing{cursor:text;touch-action:auto}.free-post-it--selected{border-radius:0;outline:none;position:relative}.free-post-it--selected .post-it{z-index:1;isolation:isolate;position:relative;transform:translateZ(0)}.constellation-spatial-hull{z-index:6;pointer-events:none;border:1.5px dashed color-mix(in srgb, var(--selection-ring-sheen) 28%, var(--border-strong));background:color-mix(in srgb, var(--accent-active) 7%, transparent);box-sizing:border-box;border-radius:14px;position:absolute}.constellation-marquee{z-index:200;pointer-events:none;border:1px dashed var(--accent-active);background:color-mix(in srgb, var(--accent-active) 11%, transparent);box-sizing:border-box;border-radius:4px;position:absolute}.free-post-it .post-it__textarea{touch-action:none}@keyframes highlight-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-highlight-purple) 70%, transparent)}50%{box-shadow:0 0 0 10px color-mix(in srgb, var(--color-highlight-purple) 20%, transparent)}to{box-shadow:0 0 0 6px color-mix(in srgb, var(--color-highlight-purple) 0%, transparent)}}.free-post-it--highlighted{outline:2px solid var(--color-highlight-purple);outline-offset:3px;border-radius:8px;animation:.7s ease-out forwards highlight-pulse}.free-post-it--grouped{cursor:pointer}.free-post-it--grouped:active,.free-post-it:active{cursor:grabbing}.free-post-it--dragging{z-index:40}.key-panel{z-index:100;font-family:Inter,system-ui,sans-serif;position:fixed;bottom:1.25rem;right:1.25rem}.key-panel__box{background:var(--bg-surface);border:1px solid var(--border-default);box-shadow:var(--shadow-md);border-radius:14px;flex-direction:column;gap:.55rem;min-width:240px;padding:.65rem .75rem .75rem;display:flex}.key-panel__switch{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.65rem;display:flex}.key-panel__switch-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.key-panel__switch-title{color:var(--text-primary);font-size:.8rem;font-weight:700}.key-panel__switch-sub{color:var(--text-muted);font-size:.68rem;line-height:1.25}.key-panel__switch-track{background:var(--control-track);border-radius:999px;flex-shrink:0;width:2.75rem;height:1.5rem;transition:background .2s;position:relative}.key-panel__switch:has(input:checked) .key-panel__switch-track{background:var(--control-track-active)}.key-panel__switch-track input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute;inset:0}.key-panel__switch-track:after{content:"";background:var(--control-knob);pointer-events:none;border-radius:50%;width:1.15rem;height:1.15rem;transition:transform .2s;position:absolute;top:.175rem;left:.175rem;box-shadow:0 1px 3px #0000002e}.key-panel__switch:has(input:checked) .key-panel__switch-track:after{transform:translate(1.2rem)}.key-btn{cursor:pointer;border:none;border-radius:999px;padding:.45rem 1rem;font-size:.85rem;font-weight:600;transition:opacity .15s;box-shadow:0 2px 10px #00000026}.key-btn--block{width:100%;box-shadow:0 1px 6px #0000001a}.key-btn:hover{opacity:.85}.key-btn--ok{background:var(--control-ok-bg);color:var(--control-ok-fg)}.key-btn--stored{background:var(--control-stored-bg);color:var(--control-stored-fg)}.key-btn--missing{background:var(--control-missing-bg);color:var(--control-missing-fg)}.key-modal{background:var(--bg-surface);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);border-radius:12px;min-width:280px;padding:1rem;position:absolute;bottom:calc(100% + .6rem);right:0}.key-modal__label{color:var(--text-secondary);margin:0 0 .6rem;font-size:.78rem}.key-modal__label a{color:var(--color-accent-link)}.key-modal__input{box-sizing:border-box;border:1px solid var(--border-default);border-radius:7px;outline:none;width:100%;padding:.45rem .6rem;font-family:monospace;font-size:.85rem}.key-modal__input:focus{border-color:var(--control-input-focus)}.key-modal__actions{gap:.5rem;margin-top:.55rem;display:flex}.key-modal__save{background:var(--control-save-bg);color:var(--control-save-fg);cursor:pointer;border:none;border-radius:7px;flex:1;padding:.42rem 0;font-size:.85rem;font-weight:600}.key-modal__save:disabled{opacity:.4;cursor:default}.key-modal__clear{background:var(--control-clear-bg);color:var(--control-clear-fg);cursor:pointer;border:none;border-radius:7px;padding:.42rem .7rem;font-size:.82rem;font-weight:600}.key-modal__saved{color:var(--control-saved-fg);text-align:center;margin:.4rem 0;font-size:.9rem;font-weight:600}.constellation-bubble__chrome{z-index:50;pointer-events:auto;cursor:pointer;flex-direction:row;justify-content:center;align-items:center;display:flex;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.constellation-bubble__chrome:focus-visible{outline:2px solid var(--accent-focus-ring);outline-offset:4px;border-radius:12px}.constellation-badge{min-width:1.65rem;height:1.65rem;color:var(--constellation-badge-fg);background:var(--constellation-badge-bg);border-radius:999px;justify-content:center;align-items:center;padding:0 .4rem;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 2px 8px #0000002e}.constellation-label{letter-spacing:.08em;color:var(--constellation-label-fg);background:var(--constellation-label-bg);border:1px solid color-mix(in srgb, var(--constellation-label-fg) 10%, transparent);white-space:nowrap;border-radius:999px;padding:.26rem .6rem;font-size:.82rem;font-weight:900;position:relative;box-shadow:0 6px 14px #00000014}.constellation-label--stacked{top:auto;left:auto;transform:none}.constellation-label--with-count{align-items:center;gap:.45rem;max-width:min(92vw,20rem);padding:.26rem .4rem .26rem .65rem;display:inline-flex}.constellation-label__count{min-width:1.5rem;height:1.5rem;color:var(--constellation-badge-fg);background:var(--constellation-badge-bg);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .35rem;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 2px 6px #0003}.constellation-label__text{text-overflow:ellipsis;min-width:0;overflow:hidden}.group-modal-backdrop{z-index:9999;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.group-modal{background:var(--bg-raised);width:min(92vw,720px);max-height:min(88vh,900px);box-shadow:var(--shadow-lg);border:1px solid var(--border-subtle);border-radius:16px;overflow:auto}.group-modal__header{border-bottom:1px solid var(--border-subtle);background:var(--bg-raised);z-index:2;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.1rem 1.25rem .75rem;display:flex;position:sticky;top:0}.group-modal__header-main{flex:1;min-width:0}.group-modal__title-row{flex-wrap:wrap;align-items:center;gap:.55rem 1rem;display:flex}.group-modal__color-swatches{flex-shrink:0;align-items:center;gap:.38rem;display:inline-flex}.group-modal__color-swatch{cursor:pointer;background-clip:padding-box;border:2px solid #0000001f;border-radius:50%;flex-shrink:0;width:1.375rem;height:1.375rem;padding:0;box-shadow:inset 0 0 0 1px #ffffff59}.group-modal__color-swatch:hover{transform:scale(1.08)}.group-modal__color-swatch--active{border-color:var(--modal-swatch-active-border);box-shadow:0 0 0 2px var(--bg-raised), 0 0 0 4px var(--modal-swatch-active-border)}.group-modal__title{letter-spacing:.06em;color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:800}.group-modal__title-inner{flex-wrap:wrap;align-items:center;gap:.55rem;display:inline-flex}.group-modal__title-count{min-width:1.65rem;height:1.65rem;color:var(--constellation-badge-fg);background:var(--constellation-badge-bg);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .45rem;font-size:.78rem;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 2px 8px #00000026}.group-modal__title-label{letter-spacing:.06em}.group-modal__close{background:var(--border-subtle);cursor:pointer;width:2.25rem;height:2.25rem;color:var(--text-primary);border:none;border-radius:10px;flex-shrink:0;font-size:1.5rem;line-height:1}.group-modal__close:hover{background:var(--border-default)}.group-modal__hint-extract{color:var(--text-secondary);font-size:.75rem;line-height:1.35;font-family:var(--font-ui);margin:0;padding:.5rem 1.25rem 0}.group-modal__grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));justify-items:center;gap:1rem;padding:1.25rem;display:grid}.group-modal__cell{justify-content:center;width:100%;max-width:130px;display:flex}.group-modal__cell--draggable{cursor:grab;touch-action:none;outline-offset:2px;border-radius:12px;outline:2px solid #0000;flex-shrink:0;width:106px;padding:0;transition:outline-color .12s}.group-modal__cell--draggable.group-modal__cell--selected:not(.group-modal__cell--editing){outline-color:#1a1a1a73}.group-modal__cell--draggable:active{cursor:grabbing}.group-modal__extract-ghost{opacity:.92;filter:drop-shadow(0 10px 20px #00000038)}.post-it-world-ghost{opacity:.55;filter:drop-shadow(0 8px 16px #0000002e)}.post-it-world-ghost .post-it{box-shadow:0 4px 14px #0000001f}.post-it-placement-preview-wrap{opacity:.55;filter:drop-shadow(0 8px 16px #0000002e)}.post-it-placement-preview-wrap .post-it{box-shadow:0 4px 14px #0000001f}.session-float-actions{z-index:110;font-family:var(--font-ui);align-items:center;gap:8px;display:flex;position:fixed;top:12px;right:108px}.transcript-toggle-wrap{font-family:var(--font-ui);position:relative}.transcript-panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:min(92vw,300px);max-height:420px;box-shadow:var(--shadow-lg);font-family:var(--font-ui);flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.transcript-panel__header{border-bottom:1px solid var(--border-default);flex-shrink:0;align-items:center;gap:6px;padding:.55rem .75rem .45rem;display:flex}.transcript-panel__title{color:var(--text-primary);flex:1;font-size:.78rem;font-weight:650}.transcript-panel__count{color:var(--text-secondary);background:var(--bg-raised);border-radius:var(--radius-full);padding:1px 7px;font-size:.7rem;font-weight:600}.transcript-panel__close{width:22px;height:22px;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;transition:background .1s,color .1s;display:flex}.transcript-panel__close:hover{background:var(--bg-raised);color:var(--text-primary)}.transcript-panel__empty{color:var(--text-muted,var(--text-secondary));text-align:center;margin:0;padding:1rem .75rem;font-size:.76rem}.transcript-panel__list{flex:1;min-height:0;margin:0;padding:.3rem 0;list-style:none;overflow:hidden auto}.transcript-entry{align-items:flex-start;gap:7px;padding:.28rem .75rem;font-size:.72rem;line-height:1.35;transition:background 80ms;display:flex}.transcript-entry:hover{background:var(--bg-raised)}.transcript-entry--summary{background:color-mix(in srgb, var(--accent-active) 6%, var(--bg-surface));border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default)}.transcript-entry__icon{color:var(--text-secondary);flex-shrink:0;align-items:center;margin-top:1px;display:flex}.transcript-entry--user_message .transcript-entry__icon{color:var(--accent-active)}.transcript-entry--agent_message .transcript-entry__icon{color:#8b5cf6}.transcript-entry--canvas_action .transcript-entry__icon{color:#10b981}.transcript-entry--session_summary .transcript-entry__icon{color:#f59e0b}.transcript-entry__body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.transcript-entry__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem;font-weight:650}.transcript-entry__text{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.transcript-entry__time{color:var(--text-secondary);flex-shrink:0;margin-top:2px;font-size:.64rem}.frame-card{box-sizing:border-box;pointer-events:all;border-radius:12px;transition:border-color .12s,box-shadow .16s;position:absolute;overflow:visible}.frame-card--selected{z-index:8}.constellation-root--select .frame-card:hover:not(.frame-card--selected){border-color:color-mix(in srgb, var(--frame-border) 100%, transparent);box-shadow:0 6px 20px -14px color-mix(in srgb, var(--frame-border) 80%, transparent)}.free-post-it--in-selected-frame .post-it{outline:1.5px solid var(--canvas-in-frame-outline);outline-offset:3px}.frame-card__header{--frame-control-size:28px;z-index:30;box-sizing:border-box;transform-origin:0 0;flex-direction:row;align-items:center;gap:6px;min-height:28px;padding-bottom:6px;display:flex;position:absolute;top:0;left:0;right:0;transform:translateY(-100%)}.frame-card__label{letter-spacing:-.01em;white-space:nowrap;-webkit-user-select:none;user-select:none;min-width:0;color:var(--text-primary);flex:auto;align-items:center;font-size:13px;font-weight:600;line-height:1;display:flex}.frame-card__label-badge{height:var(--frame-control-size);border:1px solid color-mix(in srgb, var(--frame-border) 40%, transparent);background:var(--bg-surface);cursor:text;border-radius:10px;align-items:center;gap:8px;padding:0 12px 0 10px;transition:border-color .12s,box-shadow .16s,transform .12s;display:inline-flex;box-shadow:0 1px 2px #0000000a,0 4px 16px -8px #0000001f}.frame-card__label-badge:hover{border-color:color-mix(in srgb, var(--frame-border) 70%, transparent);transform:translateY(-.5px);box-shadow:0 1px 2px #0000000d,0 6px 20px -8px #00000029}.frame-card__label-icon{width:14px;height:14px;color:color-mix(in srgb, var(--frame-label) 80%, var(--text-secondary));opacity:.85;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.frame-card__label-text{letter-spacing:-.005em;line-height:1;display:inline-block}.frame-card__label-badge .rich-text-editor__content{white-space:nowrap;line-height:1;font:inherit;color:inherit;letter-spacing:inherit;outline:none;display:inline-block}.frame-card__title-input{min-width:160px;height:var(--frame-control-size);border:1px solid var(--canvas-toolbar-accent,#7c6bff);letter-spacing:-.01em;color:inherit;background:var(--bg-surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--canvas-toolbar-accent,#7c6bff) 14%, transparent), 0 4px 16px -8px #00000029;border-radius:10px;align-items:center;padding:0 12px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.frame-card__title-input .rich-text-editor__content{min-width:0;font:inherit;color:inherit;letter-spacing:inherit;white-space:nowrap;text-overflow:ellipsis;min-width:0;font:inherit;white-space:nowrap;outline:none;flex:1;overflow:hidden}.frame-card[data-color=neutral]{--frame-bg:#00000008;--frame-border:#0000001f;--frame-label:#444}.frame-card[data-color=yellow]{--frame-bg:#ffdc501f;--frame-border:#c8a00059;--frame-label:#8a6a00}.frame-card[data-color=blue]{--frame-bg:#64a0ff1f;--frame-border:#3c78dc59;--frame-label:#1a4daa}.frame-card[data-color=green]{--frame-bg:#50c8781f;--frame-border:#28a05059;--frame-label:#1a7040}.frame-card[data-color=pink]{--frame-bg:#ff82a01f;--frame-border:#dc3c6459;--frame-label:#aa1a50}.frame-card[data-color=lavender]{--frame-bg:#a06eff1f;--frame-border:#783cdc59;--frame-label:#5a1acc}[data-theme=dark] .frame-card[data-color=neutral]{--frame-bg:#ffffff0a;--frame-border:#ffffff26;--frame-label:#ccc}[data-theme=dark] .frame-card[data-color=yellow]{--frame-bg:#ffdc501a;--frame-border:#ffdc5059;--frame-label:#ffd840}[data-theme=dark] .frame-card[data-color=blue]{--frame-bg:#64a0ff1a;--frame-border:#64a0ff59;--frame-label:#80b4ff}[data-theme=dark] .frame-card[data-color=green]{--frame-bg:#50c8781a;--frame-border:#50c87859;--frame-label:#60d490}[data-theme=dark] .frame-card[data-color=pink]{--frame-bg:#ff82a01a;--frame-border:#ff82a059;--frame-label:#ff80a0}[data-theme=dark] .frame-card[data-color=lavender]{--frame-bg:#a06eff1a;--frame-border:#a06eff59;--frame-label:#c080ff}.frame-card{background:var(--frame-bg);border:1.5px solid var(--frame-border)}@media (prefers-reduced-motion:reduce){.frame-card--selected{box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-signature) 24%, transparent)}.frame-card--selected:after{opacity:.35}}.frame-color-radial-root{z-index:200;pointer-events:none;width:0;height:0;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.frame-color-radial-root .frame-color-radial__swatch{pointer-events:auto}.frame-color-trigger{border:2px solid var(--bg-surface);width:24px;height:24px;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.frame-color-trigger__icon{width:14px;height:14px}.frame-color-radial__swatch{border:2px solid var(--bg-surface);width:22px;height:22px;box-shadow:var(--shadow-sm);cursor:pointer;z-index:201;border-radius:50%;padding:0;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.frame-color-radial__swatch--active{outline:2px solid var(--accent-active);outline-offset:1px}.frame-color-radial__backdrop{z-index:199;position:fixed;inset:0}.frame-draw-preview{pointer-events:none;border:2px dashed var(--color-accent-indigo);background:var(--color-accent-indigo-bg);z-index:1;border-radius:8px;position:absolute}.post-it--frame-capture-preview{outline:2px solid var(--color-accent-indigo);outline-offset:2px}.project-top-nav-user{z-index:112;font-family:var(--font-ui);align-items:center;gap:.5rem;display:inline-flex;position:fixed;top:12px;right:14px}.project-top-nav-user__share-btn{font:inherit;border:1px solid var(--border-default);background:color-mix(in srgb, var(--bg-surface) 88%, transparent);min-height:38px;color:var(--text-primary);cursor:pointer;transition:background .16s var(--ease-out), box-shadow .16s var(--ease-out);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);border-radius:999px;align-items:center;padding:0 1rem;font-size:.85rem;font-weight:600;display:inline-flex}.project-top-nav-user__share-btn:hover{background:var(--bg-surface);box-shadow:var(--shadow-md)}
