@font-face{font-family:Space Grotesk;src:url(/assets/SpaceGrotesk-Variable-Dcw4Q7AU.ttf)format("truetype");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Hanken Grotesk;src:url(/assets/HankenGrotesk-Variable-2z-3qhAN.ttf)format("truetype");font-weight:300 800;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-Variable--VKQJH3W.ttf)format("truetype");font-weight:400 700;font-style:normal;font-display:swap}:root{--graphite-950:#090b0f;--graphite-900:#0d1015;--graphite-850:#10131a;--graphite-800:#15181f;--graphite-750:#1a1e27;--graphite-700:#20242f;--graphite-650:#272c38;--graphite-600:#313747;--graphite-500:#3d4454;--graphite-400:#4e5666;--white:#fff;--text-strong:#f3f5f9;--text-default:#d3d8e2;--text-muted:#969dad;--text-faint:#626a7a;--text-disabled:#464d5c;--border-subtle:#ffffff0e;--border-default:#ffffff1a;--border-strong:#ffffff29;--border-interactive:#ffffff3d;--blue-300:#7fb0ff;--blue-400:#5695fb;--blue-500:#3d7df6;--blue-600:#2c63da;--blue-700:#2450b4;--blue-tint:#3d7df624;--blue-tint-strong:#3d7df63d;--cyan-300:#6ee7fb;--cyan-400:#34d6f0;--cyan-500:#16bedc;--cyan-glow:#34d6f059;--green-400:#52dea4;--green-500:#33d391;--green-tint:#33d39124;--amber-400:#fbb84c;--amber-500:#f5a524;--amber-tint:#f5a52424;--rose-400:#fd7288;--rose-500:#fb5570;--rose-tint:#fb557024;--slate-500:#6b7484;--kind-service:#4c8dff;--kind-gateway:#2bc4de;--kind-database:#a78bfa;--kind-cache:#f472b6;--kind-queue:#f59e42;--kind-bucket:#8bd64f;--kind-function:#ebcb3e;--kind-loadbalancer:#58b0f0;--kind-external:#9aa4b6;--kind-user:#34d9ae;--kind-frontend:#fb7a5c;--kind-cdn:#7ec8ff;--kind-auth:#8b8ef9;--kind-search:#caa53d;--kind-scheduler:#f0abfc;--kind-observability:#6ee7b7;--kind-warehouse:#c084fc;--kind-ml:#67e8f9;--edge-line:#4a5162;--edge-hover:var(--blue-500);--edge-label:var(--text-muted);--edge-label-bg:var(--graphite-900);--canvas:var(--graphite-950);--bg-app:var(--graphite-900);--surface:var(--graphite-800);--surface-sunken:var(--graphite-850);--surface-raised:var(--graphite-700);--surface-overlay:#15181ff5;--surface-input:#00000047;--surface-hover:#ffffff0f;--surface-active:#ffffff1a;--text-body:var(--text-default);--text-heading:var(--text-strong);--accent:var(--blue-500);--accent-hover:var(--blue-400);--accent-press:var(--blue-600);--accent-text:var(--blue-300);--accent-tint:var(--blue-tint);--accent-tint-strong:var(--blue-tint-strong);--live:var(--cyan-400);--focus-ring-color:var(--cyan-400);--status-ok:var(--green-500);--status-drift:var(--amber-500);--status-unbound:var(--slate-500);--danger:var(--rose-500);--font-display:"Space Grotesk", system-ui, sans-serif;--font-ui:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", "Menlo", monospace;--text-3xs:9px;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:15px;--text-xl:17px;--text-2xl:20px;--text-3xl:24px;--text-4xl:30px;--text-5xl:40px;--text-6xl:56px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-none:1;--lh-tight:1.1;--lh-snug:1.3;--lh-normal:1.5;--lh-relaxed:1.65;--ls-tighter:-.03em;--ls-tight:-.02em;--ls-normal:0;--ls-wide:.06em;--ls-wider:.09em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--topbar-height:48px;--tray-height:44px;--panel-pad:var(--space-3);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:14px;--radius-3xl:18px;--radius-full:999px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 12px 32px #00000080;--shadow-xl:0 24px 60px #0009;--shadow-panel:0 8px 24px #0006;--highlight-top:inset 0 1px 0 #ffffff0d;--ring-focus:0 0 0 2px #34d6f08c;--ring-accent:0 0 0 2px #3d7df6b3;--ring-selected:0 0 0 2px #3d7df6b3, 0 8px 24px #00000073;--glow-live:0 0 12px #34d6f073;--glow-drift:0 0 8px #f5a524b3;--glow-ok:0 0 8px #33d39173;--blur-panel:8px;--glass-blur:26px;--glass-saturate:1.7;--glass-bg:color-mix(in srgb, var(--graphite-800) 94%, transparent);--glass-sheen:linear-gradient(160deg, #ffffff14, #ffffff05 34%, #fff0 60%, #ffffff0b);--glass-border:#ffffff24;--glass-highlight:inset 0 1px 0 #ffffff1a, inset 0 -1px 0 #0003;--glass-shadow:0 10px 30px #04060a80;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--dur-instant:80ms;--dur-fast:.12s;--dur-base:.16s;--dur-slow:.24s;--dur-slower:.36s;--transition-colors:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--canvas-bg:var(--graphite-950);--canvas-dot:#ffffff24;--canvas-card:#171b23;--canvas-card-border:#ffffff1a;--canvas-card-border-hover:#ffffff2e;--canvas-card-shadow:var(--shadow-md);--canvas-card-shadow-hover:var(--shadow-lg);--canvas-ring-selected:var(--ring-selected);--canvas-text:var(--text-strong);--canvas-text-muted:var(--text-muted);--canvas-input-bg:var(--surface-input);--canvas-port:var(--graphite-500);--canvas-port-ring:var(--graphite-850);--canvas-edge:#7a8396;--canvas-edge-accent:var(--blue-500);--canvas-edge-pulse:#fff;--canvas-plug-ring:#0d1015;--canvas-key-pk:var(--amber-400);--canvas-key-fk:var(--blue-300);--canvas-minimap-bg:#0d1015;--canvas-minimap-mask:#090b0fb8;--canvas-icon-tint:16%;--canvas-name-size:14px;--canvas-sub-size:11px;--canvas-edge-width:1.75px;--canvas-edge-width-active:2.25px;--canvas-edge-dash:6 5;--canvas-edge-label-size:11px;--canvas-boundary-stroke:1.5px;--canvas-boundary-label-size:13px;--canvas-boundary-drop-tint:10%}[data-canvas-theme=paper]{--canvas-bg:#fff;--canvas-dot:#1016221a;--canvas-card:#fff;--canvas-card-border:#10162229;--canvas-card-border-hover:#10162247;--canvas-card-shadow:0 1px 2px #10162214;--canvas-card-shadow-hover:0 2px 8px #1016221f;--canvas-ring-selected:0 0 0 2px #2c63da, 0 2px 8px #1016221f;--canvas-text:#11141a;--canvas-text-muted:#5b6372;--canvas-input-bg:#fff;--canvas-port:#868e9d;--canvas-port-ring:#fff;--canvas-edge:#7d8596;--canvas-edge-accent:#2c63da;--canvas-edge-pulse:#2c63da;--canvas-plug-ring:#fff;--canvas-minimap-bg:#fff;--canvas-minimap-mask:#1016220f;--canvas-key-pk:#9a6700;--canvas-key-fk:#1f5fc4}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg-app);color:var(--text-body);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--lh-normal);font-weight:var(--fw-regular);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-heading);letter-spacing:var(--ls-tight);font-weight:var(--fw-bold);text-wrap:balance;margin:0}p{text-wrap:pretty}code,kbd,samp{font-family:var(--font-mono);font-size:.92em}a{color:var(--accent-text);text-decoration:none}::selection{background:var(--blue-tint-strong);color:var(--text-strong)}.ic{vertical-align:middle;fill:none;flex:none;width:18px;height:18px;display:inline-block}:focus-visible{box-shadow:var(--ring-focus);outline:none}*{scrollbar-width:thin;scrollbar-color:var(--graphite-600) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--graphite-600);border-radius:var(--radius-full);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--graphite-500);background-clip:padding-box}.btn{--btn-bg:var(--surface-raised);--btn-fg:var(--text-default);--btn-bd:var(--border-default);justify-content:center;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:.005em;color:var(--btn-fg);background:var(--btn-bg);border:1px solid var(--btn-bd);border-radius:var(--radius-md);box-shadow:var(--highlight-top);cursor:pointer;white-space:nowrap;transition:var(--transition-colors), transform var(--dur-instant) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);display:inline-flex}.btn:hover{background:color-mix(in oklab, var(--btn-bg) 82%, white);border-color:var(--border-strong)}.btn:active{transform:translateY(.5px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn .ic{flex:none;width:16px;height:16px}.btn--primary{--btn-bg:var(--accent-press);--btn-fg:#eaf1ff;--btn-bd:transparent;box-shadow:0 1px 0 #ffffff24 inset, 0 4px 14px -4px var(--accent)}.btn--primary:hover{background:var(--accent)}.btn--primary:active{background:var(--blue-700)}.btn--ghost{--btn-bg:transparent;--btn-bd:transparent;box-shadow:none}.btn--ghost:hover{background:var(--surface-hover);border-color:#0000}.btn--danger{--btn-bg:transparent;--btn-fg:var(--rose-400);--btn-bd:var(--rose-tint)}.btn--danger:hover{background:var(--rose-tint);border-color:var(--rose-500)}.btn--sm{height:26px;padding:0 var(--space-2-5);font-size:var(--text-xs)}.btn--lg{height:38px;padding:0 var(--space-4);font-size:var(--text-base)}.icon-btn{width:32px;height:32px;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colors);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{color:var(--text-strong);background:var(--surface-hover)}.icon-btn[aria-pressed=true],.icon-btn.is-active{color:var(--accent-text);background:var(--accent-tint)}.icon-btn .ic{width:18px;height:18px}.field{align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);display:inline-flex}.field:focus-within{border-color:var(--accent);box-shadow:var(--ring-focus)}.field .ic{width:15px;height:15px;color:var(--text-faint);flex:none}.field input{all:unset;min-width:0;color:inherit;font:inherit;flex:1}.field input::placeholder{color:var(--text-faint)}.field--block{width:100%;display:flex}.label{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);margin-bottom:var(--space-1-5);letter-spacing:.01em;display:block}.toggle{border-radius:var(--radius-full);background:var(--graphite-600);border:1px solid var(--border-default);cursor:pointer;width:34px;height:20px;transition:background var(--dur-fast) var(--ease-out);flex:none;position:relative}.toggle:after{content:"";border-radius:var(--radius-full);background:var(--text-default);width:14px;height:14px;transition:transform var(--dur-base) var(--ease-out), background var(--dur-fast) var(--ease-out);position:absolute;top:2px;left:2px}.toggle.is-on{background:var(--accent);border-color:#0000}.toggle.is-on:after{background:#fff;transform:translate(14px)}.segmented{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);gap:2px;padding:3px;display:inline-flex}.segmented button{all:unset;align-items:center;gap:var(--space-1-5);height:24px;padding:0 var(--space-2-5);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--text-muted);border-radius:var(--radius-xs);cursor:pointer;transition:var(--transition-colors);display:inline-flex}.segmented button:hover{color:var(--text-strong)}.segmented button.is-active{color:var(--text-strong);background:var(--surface-raised);box-shadow:var(--shadow-sm)}.segmented .ic{width:15px;height:15px}.status{align-items:center;gap:var(--space-1-5);height:22px;padding:0 var(--space-2) 0 var(--space-1-5);font-size:var(--text-xs);font-weight:var(--fw-semibold);border-radius:var(--radius-full);white-space:nowrap;border:1px solid #0000;display:inline-flex}.status .dot{border-radius:var(--radius-full);flex:none;width:7px;height:7px}.status--ok{color:var(--green-400);background:var(--green-tint);border-color:#33d39140}.status--ok .dot{background:var(--green-500);box-shadow:var(--glow-ok)}.status--drift{color:var(--amber-400);background:var(--amber-tint);border-color:#f5a52447}.status--drift .dot{background:var(--amber-500);box-shadow:var(--glow-drift)}.status--error{color:var(--rose-400);background:var(--rose-tint);border-color:#fb557047}.status--error .dot{background:var(--rose-500)}.status--unbound{color:var(--text-muted);border-color:var(--border-default);background:#ffffff0a}.status--unbound .dot{background:var(--slate-500)}.type-tag{align-items:center;gap:var(--space-1);height:16px;padding:0 var(--space-1-5);font-family:var(--font-mono);font-size:var(--text-3xs);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:#ffffff0a;display:inline-flex}.chip{align-items:center;gap:var(--space-1-5);height:26px;padding:0 var(--space-2-5);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--text-default);background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-colors);display:inline-flex}.chip:hover{border-color:var(--border-strong)}.chip.is-active{color:var(--accent-text);background:var(--accent-tint);border-color:var(--blue-tint-strong)}.chip .ic{width:14px;height:14px}.kbd{min-width:20px;height:20px;padding:0 var(--space-1-5);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--fw-medium);color:var(--text-muted);background:var(--graphite-750);border:1px solid var(--border-default);border-radius:var(--radius-xs);border-bottom-width:2px;justify-content:center;align-items:center;display:inline-flex}.tabs{align-items:center;gap:2px;display:flex}.tab{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-3);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;max-width:200px;transition:var(--transition-colors);background:0 0;border:1px solid #0000;display:inline-flex}.tab:hover{color:var(--text-default);background:var(--surface-hover)}.tab.is-active{color:var(--text-strong);background:var(--surface-raised);border-color:var(--border-default);box-shadow:var(--highlight-top)}.tab .tab-dot{border-radius:var(--radius-full);flex:none;width:6px;height:6px}.tab .label{text-overflow:ellipsis;white-space:nowrap;font-weight:inherit;color:inherit;margin:0;overflow:hidden}.tray{align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--surface-overlay);-webkit-backdrop-filter:blur(var(--blur-panel));backdrop-filter:blur(var(--blur-panel));border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg), var(--highlight-top);display:inline-flex}.tray .sep{background:var(--border-default);width:1px;height:20px;margin:0 var(--space-1)}.tray .icon-btn{border-radius:var(--radius-md);width:34px;height:34px}.panel{background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-panel);overflow:hidden}.panel__head{align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);border-bottom:1px solid var(--border-subtle);display:flex}.panel__title{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-strong);letter-spacing:var(--ls-tight)}.panel__body{padding:var(--space-3)}.glass,.panel--glass,.menu{background:var(--glass-sheen), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow), var(--glass-highlight)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass,.panel--glass,.menu{background:var(--surface-raised)}}@media (prefers-reduced-transparency:reduce){.glass,.panel--glass,.menu{background:var(--surface-raised);-webkit-backdrop-filter:none}}@media (prefers-contrast:more){.glass,.panel--glass,.menu{background:var(--graphite-850);-webkit-backdrop-filter:none;border-color:var(--border-interactive)}}.row-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-1);display:flex}.row-item+.row-item{border-top:1px solid var(--border-subtle)}.row-item__label{font-size:var(--text-sm);color:var(--text-muted)}.row-item__text{flex-direction:column;gap:2px;min-width:0;display:flex}.row-item__hint{font-size:var(--text-xs);line-height:var(--lh-normal);color:var(--text-faint)}.row-item__value{font-size:var(--text-sm);color:var(--text-default);font-variant-numeric:tabular-nums}.menu{min-width:200px;padding:var(--space-1);border-radius:var(--radius-lg)}.menu__item{align-items:center;gap:var(--space-2-5);height:30px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-default);cursor:pointer;display:flex}.menu__item:hover{background:var(--accent);color:#eaf1ff}.menu__item:hover .ic{color:#eaf1ff}.menu__item .ic{width:16px;height:16px;color:var(--text-muted)}.menu__item .kbd{margin-left:auto}.menu__sep{background:var(--border-default);height:1px;margin:var(--space-1) 0}.tooltip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--graphite-700);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-strong);box-shadow:var(--shadow-md);white-space:nowrap;display:inline-flex}.tooltip .kbd{background:var(--graphite-850)}.sutra-entity,.sutra-mind{--node-border:color-mix(in oklab, var(--node-accent) 52%, var(--border-default));--node-border-hover:color-mix(in oklab, var(--node-accent) 68%, var(--border-default));--node-halo:0 0 12px -4px color-mix(in oklab, var(--node-accent) 30%, transparent);--node-halo-hover:0 0 20px -4px color-mix(in oklab, var(--node-accent) 45%, transparent)}.node{--node-accent:var(--kind-service);align-items:center;gap:var(--space-3);width:max-content;min-width:180px;max-width:260px;min-height:56px;padding:var(--space-3) 14px var(--space-3) var(--space-3);background:var(--canvas-card);border:1px solid var(--canvas-card-border);border-radius:var(--radius-2xl);box-shadow:var(--canvas-card-shadow);transition:box-shadow var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);display:flex;position:relative}.node:hover{border-color:var(--canvas-card-border-hover);box-shadow:var(--canvas-card-shadow-hover)}.node.is-selected{box-shadow:var(--canvas-ring-selected);border-color:#0000}.node__glyph{border-radius:var(--radius-md);background:color-mix(in oklab, var(--node-accent) var(--canvas-icon-tint), var(--canvas-card));width:32px;height:32px;color:var(--node-accent);flex:none;justify-content:center;align-items:center;display:flex}.node__glyph .ic{width:20px;height:20px}.node__name{font-family:var(--font-display);font-size:var(--canvas-name-size);font-weight:var(--fw-semibold);color:var(--canvas-text);letter-spacing:-.01em;overflow-wrap:anywhere;line-height:1.25}.node__sub{font-family:var(--font-mono);font-size:var(--canvas-sub-size);color:var(--canvas-text-muted);overflow-wrap:anywhere;margin-top:2px;line-height:1.35}.edge-label{align-items:center;gap:var(--space-1);padding:2px var(--space-1-5);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--edge-label);background:var(--edge-label-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);display:inline-flex}.minimap{background:var(--surface-overlay);width:180px;height:120px;-webkit-backdrop-filter:blur(var(--blur-panel));backdrop-filter:blur(var(--blur-panel));border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.dialog{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-3xl);width:440px;box-shadow:var(--shadow-xl);overflow:hidden}.dialog__head{padding:var(--space-5) var(--space-5) var(--space-3)}.dialog__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-bold);color:var(--text-strong);letter-spacing:var(--ls-tight)}.dialog__desc{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-1-5);line-height:var(--lh-normal)}.dialog__body{padding:0 var(--space-5)}.dialog__foot{justify-content:flex-end;gap:var(--space-2);padding:var(--space-5);display:flex}html,body{width:100%;height:100%;position:fixed;inset:0;overflow:hidden}#root{width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.sutra-app{background:var(--bg-app);flex-direction:column;width:100%;height:100%;display:flex}.sutra-topbar{align-items:center;gap:var(--space-3);height:var(--topbar-height);padding:0 var(--space-3) 0 var(--space-4);background:var(--bg-app);border-bottom:1px solid var(--border-subtle);scrollbar-width:none;flex-shrink:0;display:flex;overflow:auto hidden}.sutra-topbar::-webkit-scrollbar{display:none}.sutra-topbar__spacer{flex:1}.sutra-main{flex:1;min-width:0;min-height:0;position:relative}.sutra-brand{align-items:center;gap:var(--space-2-5);-webkit-user-select:none;user-select:none;flex-shrink:0;display:flex}.sutra-brand--home{padding:var(--space-1) var(--space-1-5);margin-left:calc(var(--space-1-5) * -1);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colors);background:0 0;border:none}.sutra-brand--home:hover{background:var(--surface-hover)}.sutra-brand--home:hover .sutra-brand__name{color:var(--accent-text)}.sutra-brand__mark{width:24px;height:24px;display:block}.sutra-brand__name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong)}.sutra-tabs{min-width:0}.sutra-tabs__list{scrollbar-width:none;align-items:center;gap:2px;min-width:0;display:flex;overflow-x:auto}.sutra-tabs__list::-webkit-scrollbar{display:none}.tab .sutra-tab__type{color:var(--text-faint);flex:none}.tab.is-active .sutra-tab__type{color:var(--accent-text)}.sutra-tab__rename{width:140px;padding:2px var(--space-1-5);background:var(--surface-input);border:1px solid var(--accent);border-radius:var(--radius-xs);color:var(--text-default);font:inherit;font-size:var(--text-sm)}.sutra-tab__close{border-radius:var(--radius-xs);width:16px;height:16px;color:var(--text-faint);opacity:0;cursor:pointer;transition:var(--transition-colors);justify-content:center;align-items:center;display:inline-flex}.tab:hover .sutra-tab__close,.tab.is-active .sutra-tab__close{opacity:1}.sutra-tab__close:hover{background:var(--surface-active);color:var(--text-strong)}.sutra-tabs__new{width:28px;height:28px;margin-left:var(--space-1);flex-shrink:0}.icon-btn--xs{border-radius:var(--radius-xs);width:22px;height:22px}.sutra-icon-danger:hover{color:var(--rose-400);background:var(--rose-tint)}.sutra-share{position:relative}.sutra-share__menu{z-index:950;width:280px;position:fixed}.sutra-share__menu .sutra-open__item:disabled{opacity:.5;cursor:default}.sutra-share__spinner{border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:12px;height:12px;animation:.7s linear infinite sutra-share-spin}@keyframes sutra-share-spin{to{transform:rotate(360deg)}}.sutra-open{position:relative}.sutra-open__menu{overscroll-behavior:contain;z-index:950;width:380px;position:fixed;overflow-y:auto}.sutra-menu__title{font-size:var(--text-2xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-faint);padding:var(--space-2) var(--space-2) var(--space-1)}.sutra-open__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sutra-open__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1-5) var(--space-2);border-radius:var(--radius-sm);color:var(--text-default);font:inherit;text-align:left;cursor:pointer;transition:var(--transition-colors);background:0 0;border:none;display:flex}.sutra-open__item:hover{background:var(--surface-hover)}.sutra-open__item.is-open .sutra-open__name{color:var(--accent-text)}.sutra-open__glyph{color:var(--text-muted);flex:none}.sutra-open__name{min-width:0;font-size:var(--text-base);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sutra-open__time{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);white-space:nowrap}.sutra-open__actions{gap:2px;display:flex}.sutra-open__empty{padding:var(--space-2);font-size:var(--text-sm);color:var(--text-faint)}.sutra-open__foot{margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--border-subtle)}.sutra-open__import .sutra-open__glyph,.sutra-open__import .sutra-open__name{color:var(--accent-text)}.sutra-help{position:relative}.sutra-help__btn{border:1px solid var(--border-default);border-radius:var(--radius-full);width:28px;height:28px;font-weight:var(--fw-bold);font-size:var(--text-sm)}.sutra-help__pop{z-index:950;flex-direction:column;width:400px;display:flex;position:fixed}.sutra-help__pop .panel__head,.sutra-help__foot{flex:none}.sutra-help__tour{margin-left:auto}.sutra-help__list{overscroll-behavior:contain;gap:var(--space-1-5);flex-direction:column;min-height:0;margin:0;display:flex;overflow-y:auto}.sutra-help__row{gap:var(--space-2-5);align-items:baseline;display:flex}.sutra-help__row dt{width:105px;font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--accent-text);flex-shrink:0}.sutra-help__row dd{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);margin:0}.sutra-tab__save{border-radius:var(--radius-full);background:var(--green-500);opacity:.85;cursor:help;flex:none;width:6px;height:6px;margin-left:-2px}.sutra-tab__save.is-saving{animation:sutra-beat .7s var(--ease-in-out) 1}.sutra-tab__save.is-failed{background:var(--amber-500);box-shadow:var(--glow-drift);opacity:1}.sutra-save-failed{align-items:center;gap:var(--space-1-5);height:28px;padding:0 var(--space-2-5);border-radius:var(--radius-full);color:var(--amber-400);font-size:var(--text-xs);font-weight:var(--fw-bold);white-space:nowrap;cursor:help;background:#f5a5241f;border:1px solid #f5a52473;display:inline-flex}@keyframes sutra-beat{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}.sutra-modal__backdrop{z-index:900;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#04060a99;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sutra-dialog{flex-direction:column;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex}.sutra-dialog .dialog__body{gap:var(--space-3);flex-direction:column;display:flex;overflow-y:auto}.sutra-form-row{gap:var(--space-3);display:flex}.sutra-form-row--glyph-color>.sutra-field{flex:none}.sutra-form-row--glyph-color>.sutra-field:last-child{flex:0 0 72px;width:72px}.sutra-field__hint{color:var(--text-faint);letter-spacing:0;margin-left:.45em;font-weight:400}.sutra-field{flex:1;min-width:0;display:block}.sutra-hint{font-size:var(--text-2xs);color:var(--text-faint);line-height:var(--lh-snug);margin-top:var(--space-1)}.sutra-btn-row{gap:var(--space-1-5);display:flex}.sutra-btn-row .btn{flex:1}.btn.is-active{color:var(--accent-text);background:var(--accent-tint);border-color:var(--blue-tint-strong)}.sutra-select{width:100%;height:32px;padding:0 var(--space-2-5);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);transition:var(--transition-colors)}.sutra-select:focus-visible{border-color:var(--accent);box-shadow:var(--ring-focus);outline:none}.sutra-color-input{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;width:100%;height:36px;padding:2px 4px}.sutra-color-input--swatch{padding:3px}.field input:focus-visible{box-shadow:none}.field--mono input{font-family:var(--font-mono);font-size:var(--text-xs)}button.toggle{padding:0}.sutra-choice-row{gap:var(--space-1-5);display:flex}.sutra-choice{padding:var(--space-2) var(--space-1-5);border-radius:var(--radius-md);border:1px solid var(--border-default);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-colors);background:0 0;flex-direction:column;flex:1;align-items:center;gap:1px;display:flex}.sutra-choice:hover{background:var(--surface-hover)}.sutra-choice.is-active{border-color:var(--accent);background:var(--accent-tint)}.sutra-choice__label{font-weight:var(--fw-semibold)}.sutra-choice .sutra-hint{margin-top:0}.sutra-typepicker{gap:var(--space-2-5);grid-template-columns:repeat(4,minmax(150px,1fr));display:grid}.sutra-typepicker__card{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);border-radius:var(--radius-xl);border:1px solid var(--border-default);color:var(--text-default);font-family:var(--font-ui);cursor:pointer;text-align:center;transition:var(--transition-colors);background:0 0;flex-direction:column;flex:1;display:flex}.sutra-typepicker__card:hover{border-color:var(--accent);background:var(--accent-tint)}.sutra-typepicker__glyph{color:var(--accent-text)}.sutra-typepicker__label{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-md);letter-spacing:var(--ls-tight);color:var(--text-strong)}.sutra-export__error{font-size:var(--text-xs);color:var(--rose-400)}.sutra-editor{flex-direction:column;height:100%;min-height:0;display:flex}.sutra-tray{align-items:center;gap:var(--space-2-5);height:var(--tray-height);padding:0 var(--space-3);background:var(--bg-app);border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex}.sutra-tray__scroll{align-items:center;gap:var(--space-1);scrollbar-width:thin;flex:1;min-width:0;display:flex;overflow-x:auto}.sutra-tray__chip{align-items:center;gap:var(--space-1-5);height:30px;padding:0 var(--space-2-5);border-radius:var(--radius-md);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--fw-medium);cursor:grab;white-space:nowrap;transition:var(--transition-colors);background:0 0;border:1px solid #0000;display:inline-flex}.sutra-tray__chip:hover{background:var(--surface-hover);border-color:var(--border-default)}.sutra-tray__chip:active{cursor:grabbing}.sutra-tray__chip--new{color:var(--text-muted);border:1px dashed var(--border-default);cursor:pointer}.sutra-tray__chip--new:hover{color:var(--text-strong);border-color:var(--border-interactive)}.sutra-dock{left:var(--space-3);top:var(--space-3);bottom:var(--space-3);z-index:350;width:196px;min-height:0;padding:var(--space-2);border-radius:var(--radius-lg);flex-direction:column;display:flex;position:absolute}.sutra-editor--ink .react-flow__panel.top.left{margin-left:212px}.sutra-dock__title{padding:var(--space-1) var(--space-2) var(--space-1-5);flex:none}.sutra-dock__group{margin-bottom:var(--space-2);flex-direction:column;gap:2px;display:flex}.sutra-dock__group-label{padding:var(--space-2) var(--space-2) var(--space-1);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.sutra-dock__scroll{scrollbar-width:thin;scrollbar-color:var(--graphite-500) transparent;scrollbar-gutter:stable;min-height:0;padding-right:var(--space-1);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.sutra-dock .sutra-tray__chip{flex-shrink:0;justify-content:flex-start;width:100%}.sutra-tray__glyph{flex:none;display:inline-flex}.sutra-tray__glyph .glyph-char{font-size:15px;line-height:1}.sutra-tray__row{flex:none;display:flex;position:relative}.sutra-tray__row .sutra-tray__chip{padding-right:46px}.sutra-tray__label{text-overflow:ellipsis;min-width:0;overflow:hidden}.sutra-tray__actions{right:var(--space-1-5);align-items:center;gap:1px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.sutra-tray__action{border-radius:var(--radius-xs);width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:0;transition:var(--transition-colors);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.sutra-tray__row:hover .sutra-tray__action,.sutra-tray__action:focus-visible{opacity:1}.sutra-tray__action:hover{background:var(--surface-hover);color:var(--text-strong)}.sutra-tray__action--remove:hover{background:var(--rose-tint);color:var(--rose-400)}.sutra-tray--swim .sutra-hint{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;overflow:hidden}.sutra-canvas{flex:1;min-height:0;position:relative}.sutra-editor--arch{flex-direction:row;position:relative}.sutra-editor--arch>.sutra-canvas{min-width:0}.sutra-rail{z-index:450;align-items:center;gap:var(--space-1);width:48px;padding:var(--space-2) 0;background:var(--bg-app);border-right:1px solid var(--border-subtle);flex-direction:column;flex:none;display:flex;position:relative}.sutra-rail__btn{width:36px;height:36px;position:relative}.sutra-rail__btn.is-active{color:var(--accent-text);background:var(--surface-active)}.sutra-rail__btn.is-pinned:after{content:"";border-radius:var(--radius-full);background:var(--accent);width:5px;height:5px;position:absolute;bottom:5px;right:5px}.sutra-rail__btn[data-tip]:hover:before,.sutra-rail__btn[data-tip]:focus-visible:before{content:attr(data-tip);padding:var(--space-1) var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:var(--shadow-md);color:var(--text-default);font-size:var(--text-xs);white-space:nowrap;pointer-events:none;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.sutra-flyout{z-index:400;width:280px;min-height:0;box-shadow:none;border-width:0 1px 0 0;border-radius:0;flex-direction:column;flex:none;display:flex}@media (width<=1099px){.sutra-flyout{box-shadow:var(--shadow-lg,var(--shadow-md));position:absolute;top:0;bottom:0;left:48px}}.sutra-flyout__head{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-2) var(--space-1) var(--space-3);display:flex}.sutra-flyout__title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-strong);flex:1}.sutra-flyout__pin.is-active{color:var(--accent-text)}.sutra-flyout__search{width:auto;margin:0 var(--space-2) var(--space-2);flex:none}.sutra-flyout__search input{flex:1;min-width:0}.sutra-flyout__list{overscroll-behavior:contain;min-height:0;padding:0 var(--space-2) var(--space-2);scrollbar-width:thin;scrollbar-color:var(--graphite-500) transparent;flex:1;overflow-y:auto}.sutra-flyout__group-label{padding:var(--space-2) var(--space-2) var(--space-1);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.sutra-flyout__row{align-items:center;gap:var(--space-2);width:100%;height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-default);font:inherit;font-size:var(--text-sm);text-align:left;cursor:grab;transition:var(--transition-colors);background:0 0;border:none;display:flex}.sutra-flyout__row:hover,.sutra-flyout__row.is-active{background:var(--surface-hover)}.sutra-flyout__row.is-active{box-shadow:inset 0 0 0 1px var(--border-default)}.sutra-flyout__row--new{color:var(--text-muted);cursor:pointer}.sutra-flyout__glyph{flex:none;justify-content:center;width:18px;display:inline-flex}.sutra-flyout__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sutra-flyout__custom .sutra-flyout__row{flex:1;min-width:0;padding-right:48px}.sutra-flyout__empty{padding:var(--space-4) var(--space-2);text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.react-flow__panel.sutra-tooldock-wrap{align-items:center;gap:var(--space-2);flex-direction:column;margin:0 0 16px;display:flex}.sutra-tooldock{border-radius:var(--radius-lg);align-items:center;gap:2px;height:40px;padding:4px;display:flex}.sutra-tooldock .btn--sm{height:32px}.sutra-tooldock .icon-btn:disabled{opacity:.35;cursor:default}.sutra-tooldock__sep{width:1px;height:20px;margin:0 var(--space-1);background:var(--border-default);flex:none}.sutra-tooldock__hint{padding:var(--space-1) var(--space-2-5);border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--surface-raised);box-shadow:var(--shadow-md);font-size:var(--text-xs);color:var(--text-default);white-space:nowrap}.react-flow__panel.sutra-zoompill-wrap{margin:0 16px 16px 0}.sutra-zoompill{position:relative}.sutra-zoompill__btn{min-width:64px;height:32px;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--text-default);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer}.sutra-zoompill__btn.is-active{color:var(--accent-text)}.sutra-zoompill__btn.is-locked{color:var(--amber-400)}.sutra-zoompill__menu{width:220px;position:absolute;bottom:calc(100% + 8px);right:0}.sutra-zoompill__item{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-default);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.sutra-zoompill__item:hover,.sutra-zoompill__item:focus-visible{background:var(--surface-hover)}.sutra-zoompill__kbd{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-faint)}.sutra-zoompill__check{border:1px solid var(--border-default);border-radius:4px;width:14px;height:14px}.sutra-zoompill__check.is-on{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--surface)}.sutra-zoompill__label{padding:var(--space-1) var(--space-2) 2px;font-size:var(--text-2xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-faint)}.sutra-zoompill__radio{border:1px solid var(--border-default);border-radius:50%;width:14px;height:14px}.sutra-zoompill__radio.is-on{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 3px var(--surface)}.sutra-editor--v2 .react-flow__minimap{border-color:var(--canvas-card-border);box-shadow:var(--canvas-card-shadow);margin:0 16px 56px 0}.sutra-canvas.is-connecting .react-flow__pane,.sutra-canvas.is-connecting .react-flow__node{cursor:crosshair}.sutra-quickadd{z-index:960;gap:var(--space-1);flex-direction:column;width:320px;display:flex;position:fixed}.sutra-quickadd__context{padding:var(--space-1) var(--space-2) 0;font-size:var(--text-2xs);color:var(--text-muted)}.sutra-quickadd__input{height:36px;padding:0 var(--space-2-5);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-input);color:var(--text-default);font:inherit;font-size:var(--text-sm)}.sutra-quickadd__input:focus-visible{border-color:var(--accent);box-shadow:var(--ring-focus);outline:none}.sutra-quickadd__list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.sutra-quickadd__row{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;display:flex}.sutra-quickadd__row.is-active{background:var(--surface-hover);box-shadow:inset 0 0 0 1px var(--border-default)}.sutra-quickadd__glyph{flex:none;justify-content:center;width:18px;display:inline-flex}.sutra-quickadd__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-strong);flex:1;overflow:hidden}.sutra-quickadd__kind{font-size:var(--text-xs);color:var(--text-muted);flex:none}.sutra-quickadd__empty{padding:var(--space-1-5) 0;font-size:var(--text-xs);line-height:var(--lh-normal);color:var(--text-muted)}.sutra-node__rename{width:100%;min-width:0;padding:0 var(--space-1);border:1px solid var(--canvas-edge-accent);border-radius:var(--radius-xs);background:var(--canvas-input-bg);color:var(--canvas-text);font:inherit;outline:none;margin:0}.sutra-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}.react-flow__panel.sutra-inspector-panel{margin-top:var(--space-3)}.sutra-inspector-panel--swim{top:var(--space-3);right:var(--space-3);z-index:300;position:absolute}.sutra-inspector{gap:var(--space-3);width:264px;padding:var(--space-3);flex-direction:column;display:flex}.sutra-inspector__head{align-items:center;gap:var(--space-2-5);display:flex}.sutra-inspector__head .node__glyph{width:32px;height:32px}.sutra-inspector__glyph{font-size:20px;line-height:1;display:inline-flex}.sutra-inspector__edge-ic{color:var(--accent-text)}.sutra-inspector__title{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-lg);letter-spacing:var(--ls-tight);color:var(--text-strong)}.sutra-inspector__statuses{gap:var(--space-1-5);grid-template-columns:1fr 1fr;display:grid}.sutra-status-choice{cursor:pointer;opacity:.55;transition:var(--transition-colors), opacity var(--dur-fast) var(--ease-out);justify-content:center}.sutra-status-choice:hover{opacity:.85}.sutra-status-choice.is-active{opacity:1;border-color:currentColor}.sutra-node__text{flex:1;min-width:0}.node__glyph .glyph-char{line-height:1}.sutra-node.is-drift{box-shadow:var(--shadow-md), var(--highlight-top), var(--glow-drift)}.sutra-node.is-error{box-shadow:var(--shadow-md), var(--highlight-top), 0 0 10px #fb55708c}.sutra-node.is-selected{box-shadow:var(--canvas-ring-selected)}.react-flow__node-boundary{pointer-events:none!important}.react-flow__node-boundary .sutra-boundary__head,.react-flow__node-boundary .sutra-boundary__grab rect,.react-flow__node-boundary .react-flow__resize-control{pointer-events:auto}.sutra-boundary{--boundary-accent:var(--kind-external);font-family:var(--font-ui);position:relative}.sutra-boundary__frame{pointer-events:none;position:absolute;inset:0;overflow:visible}.sutra-boundary__outline,.sutra-boundary__halo{transition:stroke-width var(--dur-fast) var(--ease-out), stroke var(--dur-fast) var(--ease-out)}.sutra-boundary:hover .sutra-boundary__outline,.sutra-boundary.is-selected .sutra-boundary__outline{stroke-width:2px}.sutra-boundary.is-selected .sutra-boundary__halo,.sutra-boundary.is-drop-target .sutra-boundary__halo{stroke:color-mix(in oklab, var(--boundary-accent) 30%, transparent);stroke-width:8px}.sutra-boundary.is-drop-target .sutra-boundary__outline{stroke-width:2px;stroke-dasharray:none}.sutra-boundary.is-drop-target .sutra-boundary__fill{fill:color-mix(in oklab, var(--boundary-accent) var(--canvas-boundary-drop-tint), transparent)}.sutra-boundary__grab{pointer-events:none;position:absolute;inset:0;overflow:visible}.sutra-boundary__grab rect{cursor:move}.sutra-boundary__head{max-width:calc(100% - 32px);height:24px;color:var(--boundary-accent);font-size:var(--canvas-boundary-label-size);font-weight:var(--fw-semibold);white-space:nowrap;cursor:move;align-items:center;gap:6px;line-height:1;display:inline-flex;position:absolute;top:-12px;left:16px}.sutra-boundary__icon{flex:none;display:inline-flex}.sutra-boundary__label{text-overflow:ellipsis;min-width:0;overflow:hidden}.sutra-boundary__arrange{background:color-mix(in oklab, var(--boundary-accent) 22%, transparent);height:18px;color:var(--canvas-text-muted);font:inherit;font-size:var(--text-2xs);cursor:pointer;border:0;border-radius:5px;flex:none;align-items:center;gap:4px;margin-left:4px;padding:0 6px;display:inline-flex}.sutra-boundary__arrange:hover{color:var(--canvas-text);background:color-mix(in oklab, var(--boundary-accent) 34%, transparent)}.sutra-inspector__path{font-family:var(--font-mono);color:var(--text-muted);margin-top:0}.sutra-check{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;display:flex}.sutra-dock__section{margin-top:var(--space-2);border-top:1px solid var(--border-subtle,#ffffff0f);padding-top:var(--space-3);flex:none}.sutra-flownode{font-family:var(--font-ui);position:relative}.sutra-flownode__shape{position:absolute;inset:0;overflow:visible}.sutra-flownode__outline{transition:stroke var(--dur-fast) var(--ease-out), stroke-width var(--dur-fast) var(--ease-out)}.sutra-flownode:hover .sutra-flownode__outline{stroke:var(--canvas-text-muted)}.sutra-flownode.is-selected .sutra-flownode__outline{stroke:var(--canvas-edge-accent);stroke-width:2px}.sutra-flownode__label{text-align:center;width:max-content;font-size:var(--canvas-name-size);font-weight:var(--fw-semibold);color:var(--canvas-text);overflow-wrap:anywhere;pointer-events:none;line-height:1.3;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sutra-flownode .sutra-handle.react-flow__handle{background:var(--canvas-port);border-color:var(--canvas-port-ring)}.sutra-flownode:hover .sutra-handle.react-flow__handle,.sutra-flownode.is-selected .sutra-handle.react-flow__handle{background:var(--canvas-edge-accent)}.sutra-ink{font-family:var(--font-ui);position:relative}.sutra-ink__shape{pointer-events:none;position:absolute;inset:0;overflow:visible}.react-flow__node:has(>.sutra-ink.is-boundary){pointer-events:none!important}.react-flow__node:has(>.sutra-ink.is-boundary) .sutra-ink__grab{pointer-events:auto}.react-flow__node:has(>.sutra-ink.is-boundary) .react-flow__resize-control{pointer-events:auto}.react-flow__node:has(>.sutra-ink.is-boundary) .sutra-handle.react-flow__handle{pointer-events:auto}.sutra-ink.is-boundary .sutra-ink__body:not(:empty){pointer-events:auto}.sutra-ink.is-selected .sutra-ink__shape{filter:drop-shadow(0 0 4px var(--canvas-edge-accent))}.sutra-ink.is-text.is-selected{box-shadow:var(--canvas-ring-selected);border-radius:var(--radius-md)}.sutra-ink__editor{resize:none;width:100%;height:100%;color:var(--canvas-text);font-family:var(--font-ui);text-align:center;background:0 0;border:0;outline:none;font-size:13px;line-height:18px}.sutra-ink:hover .sutra-handle.react-flow__handle{opacity:1}.sutra-dock--ink{width:232px}.sutra-ink-search{align-items:center;gap:var(--space-2);height:30px;margin:0 var(--space-1) var(--space-2);padding:0 var(--space-2-5);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);flex:none;display:flex}.sutra-ink-search:focus-within{border-color:var(--accent);box-shadow:var(--ring-focus)}.sutra-ink-search__icon{color:var(--text-faint);flex:none}.sutra-ink-search__input{all:unset;min-width:0;color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);flex:1}.sutra-ink-search__input::placeholder{color:var(--text-faint)}.sutra-ink-search__input::-webkit-search-cancel-button{appearance:none}.sutra-ink-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.sutra-ink-grid--tight{margin-bottom:var(--space-2);grid-template-columns:repeat(5,1fr)}.sutra-ink-chip{padding:var(--space-2) 2px var(--space-1-5);border-radius:var(--radius-sm);min-height:58px;color:var(--text-muted);cursor:grab;transition:var(--transition-colors);background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.sutra-ink-grid--tight .sutra-ink-chip{min-height:34px;padding:var(--space-1-5) 0}.sutra-ink-chip:hover{background:var(--surface-raised);border-color:var(--border-default);color:var(--text-strong)}.sutra-ink-chip:active{cursor:grabbing}.sutra-ink-chip.is-active{color:var(--accent-text);background:var(--accent-tint);border-color:var(--blue-tint-strong)}.sutra-ink-chip:focus-visible{box-shadow:var(--ring-focus);outline:none}.sutra-ink-chip__label{letter-spacing:.01em;text-align:center;color:var(--text-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:9.5px;line-height:1.15;display:-webkit-box;overflow:hidden}.sutra-ink-chip:hover .sutra-ink-chip__label{color:var(--text-muted)}.sutra-ink-empty{padding:var(--space-3) var(--space-2);text-align:center}.sutra-ink-format{width:272px}.sutra-ink-format__glyph{flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.sutra-ink-tabs{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.sutra-ink-tab{border-radius:calc(var(--radius-sm) - 2px);height:26px;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:var(--transition-colors);background:0 0;border:0;flex:1}.sutra-ink-tab:hover:not(:disabled){color:var(--text-strong)}.sutra-ink-tab.is-active{background:var(--surface-raised);color:var(--text-strong);box-shadow:var(--elev-1)}.sutra-ink-tab:disabled{opacity:.4;cursor:not-allowed}.sutra-ink-pane{gap:var(--space-3);scrollbar-width:thin;scrollbar-color:var(--graphite-500) transparent;flex-direction:column;max-height:52vh;padding-right:2px;display:flex;overflow-y:auto}.sutra-ink-shape-trigger{align-items:center;gap:var(--space-2);width:100%;height:34px;padding:0 var(--space-2);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-colors);display:flex}.sutra-ink-shape-trigger:hover{border-color:var(--border-strong)}.sutra-ink-shape-trigger__name{text-align:left;flex:1}.sutra-ink-shape-picker{margin-top:var(--space-2);padding:var(--space-2);background:var(--surface-sunken);border:1px solid var(--border-default);border-radius:var(--radius-sm);scrollbar-width:thin;scrollbar-color:var(--graphite-500) transparent;max-height:210px;overflow-y:auto}.sutra-ink-weight{border-radius:2px;width:16px;display:block}.sutra-ink-arrange-grid{gap:var(--space-1-5);grid-template-columns:repeat(3,1fr);display:grid}.sutra-ink-arrange-grid .btn{padding:0}.sutra-ink-ends{gap:var(--space-1-5);flex-direction:column;display:flex}.sutra-swatch--none{background:linear-gradient(to bottom right, transparent calc(50% - 1px), var(--danger,#fb5570) calc(50% - 1px), var(--danger,#fb5570) calc(50% + 1px), transparent calc(50% + 1px)), var(--surface-input)}.sutra-swatch--tint{background:linear-gradient(var(--swatch), var(--swatch)) padding-box, var(--surface-input);opacity:calc(.35 + var(--tint,.14) * 2)}.sutra-range{appearance:none;cursor:pointer;background:0 0;width:100%;height:18px}.sutra-range::-webkit-slider-runnable-track{background:var(--surface-input);border:1px solid var(--border-default);border-radius:2px;height:4px}.sutra-range::-moz-range-track{background:var(--surface-input);border:1px solid var(--border-default);border-radius:2px;height:4px}.sutra-range::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--bg-app);border-radius:50%;width:13px;height:13px;margin-top:-5.5px}.sutra-range::-moz-range-thumb{background:var(--accent);border:2px solid var(--bg-app);border-radius:50%;width:13px;height:13px}.sutra-range:focus-visible{outline:none}.sutra-range:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring-focus)}.sutra-textarea{width:100%;min-height:84px;padding:var(--space-2) var(--space-2-5);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--lh-snug);resize:vertical;transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out)}.sutra-textarea::placeholder{color:var(--text-faint)}.sutra-swatches{flex-wrap:wrap;gap:6px;display:flex}.sutra-swatch{border:2px solid var(--border-default);background:var(--swatch);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0}.sutra-swatch.is-active{border-color:var(--text-strong);box-shadow:0 0 0 2px var(--bg-app), 0 0 0 3px var(--swatch)}.sutra-present-name{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-lg);color:var(--text-strong);letter-spacing:var(--ls-tight);white-space:nowrap;text-overflow:ellipsis;max-width:48vw;overflow:hidden}.sutra-app.is-presenting .react-flow__handle,.sutra-app.is-presenting .sutra-edge-handle,.sutra-app.is-presenting .react-flow__edgeupdater,.sutra-app.is-presenting .react-flow__resize-control{display:none!important}.sutra-app.is-presenting .react-flow__node{cursor:default}.react-flow{background:var(--canvas-bg);font-family:var(--font-ui)}.sutra-handle.react-flow__handle{background:var(--graphite-600);border:2px solid var(--graphite-850);opacity:0;width:9px;height:9px;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.node:hover .sutra-handle.react-flow__handle,.sutra-flownode:hover .sutra-handle.react-flow__handle,.sutra-entity:hover .sutra-handle.react-flow__handle,.sutra-mind:hover .sutra-handle.react-flow__handle,.react-flow__node.selected .sutra-handle.react-flow__handle,.react-flow.connecting .sutra-handle.react-flow__handle,.react-flow.reconnecting .sutra-handle.react-flow__handle{opacity:1}.react-flow__node.selected .sutra-handle.react-flow__handle,.react-flow.connecting .sutra-handle.react-flow__handle.valid,.react-flow.reconnecting .sutra-handle.react-flow__handle.valid{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 28%, transparent)}.sutra-node .sutra-handle.react-flow__handle{background:var(--canvas-port);border-color:var(--canvas-port-ring)}.sutra-node:hover .sutra-handle.react-flow__handle,.sutra-node.is-selected .sutra-handle.react-flow__handle{background:var(--canvas-edge-accent)}.react-flow__edge:hover .sutra-edge-bloom{stroke-opacity:.32}.react-flow__edge:hover .react-flow__edge-path{stroke-opacity:1}.react-flow__edge:hover .sutra-arch-cable{stroke:var(--canvas-edge-accent)!important;stroke-width:var(--canvas-edge-width-active)!important}.react-flow__edge:hover .sutra-arch-arrow{fill:var(--canvas-edge-accent)}.sutra-canvas .react-flow__edgelabel-renderer{z-index:0}.react-flow__edge{pointer-events:stroke}.react-flow__edge .react-flow__edge-path{pointer-events:none}.react-flow__edge .react-flow__edge-interaction,.react-flow__edge .sutra-edge-hit{pointer-events:stroke}.sutra-edge-flow{animation:1.15s linear infinite sutra-edge-flow}.react-flow__edge.animated .react-flow__edge-path,.react-flow__edge.animated .react-flow__edge-interaction,.react-flow__edge.animated .sutra-edge-hit{stroke-dasharray:none;animation:none}@keyframes sutra-edge-flow{to{stroke-dashoffset:-28px}}.sutra-export-freeze .sutra-edge-flow,.sutra-canvas.is-exporting .sutra-edge-flow{animation:none!important}.sutra-export-freeze .sutra-handle.react-flow__handle{opacity:0!important}.react-flow__connection-path{stroke:var(--accent);stroke-width:2px}.react-flow__edgeupdater{pointer-events:none;opacity:0}.react-flow__edgelabel-renderer{z-index:1000}.react-flow__controls,.react-flow__minimap{border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-md);overflow:hidden}.sutra-swim{background-color:var(--canvas);background-image:radial-gradient(circle at 1px 1px,#ffffff0d 1px,#0000 0);background-size:26px 26px}.sutra-swim--v2{background-color:var(--canvas-bg);background-image:radial-gradient(circle at 1px 1px, var(--canvas-dot) 1px, transparent 0)}.sutra-swim__scroll{padding:var(--space-6);display:flex;position:absolute;inset:0;overflow:auto}.sutra-swim__sheet{margin:auto;display:inline-block}.sutra-swim--v2 .sutra-swim__sheet{color:var(--canvas-text-muted)}.sutra-swim__zoom{flex:none;margin:auto;position:relative}.sutra-swim__zoominner{transform-origin:0 0;position:absolute;top:0;left:0}.sutra-swim__zoominner>.sutra-swim__sheet{margin:0;display:block}.sutra-sheetpill{z-index:5;position:absolute;bottom:16px;right:16px}.sutra-swim__lane,.sutra-swim__msg{cursor:pointer}.sutra-swim__lane:not(.is-selected):hover rect{stroke:var(--canvas-text-muted)}.sutra-swim__msg:not(.is-selected):hover .sutra-swim__line{stroke:var(--canvas-edge-accent)}.sutra-edge-handle{border-radius:var(--radius-full);background:var(--accent);border:2px solid var(--graphite-850);width:13px;height:13px;box-shadow:var(--shadow-sm);cursor:grab;pointer-events:all;z-index:2;position:absolute}.sutra-edge-handle:active{cursor:grabbing}.sutra-edge-handle--ghost{background:var(--graphite-850);border:2px solid var(--accent);opacity:.85;width:11px;height:11px}.sutra-edge-reconnect{border-radius:var(--radius-full);border:2px solid var(--graphite-850);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 30%, transparent), var(--shadow-sm);cursor:grab;pointer-events:all;z-index:0;position:absolute}.sutra-edge-reconnect:active{cursor:grabbing}.sutra-edge-hit{pointer-events:stroke}.sutra-link-toolbar{z-index:3;border-radius:var(--radius-md);background:var(--graphite-850);border:1px solid var(--border-default);box-shadow:var(--shadow-md);pointer-events:all;align-items:center;gap:2px;padding:3px;display:flex;position:absolute}.sutra-link-toolbar__btn{height:22px;padding:0 var(--space-1-5);border-radius:var(--radius-xs);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;transition:var(--transition-colors);background:0 0;border:none;align-items:center;gap:4px;display:inline-flex}.sutra-link-toolbar__btn:hover{background:var(--surface-hover);color:var(--text-strong)}.sutra-link-toolbar__btn.is-active{color:var(--accent-text);background:color-mix(in oklab, var(--accent) 18%, transparent)}.sutra-link-toolbar__btn--danger:hover{background:var(--rose-tint);color:var(--rose-400)}.sutra-edge-label{z-index:1;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:180px;line-height:1.25;font-family:var(--font-mono);color:#969dad;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);pointer-events:all;cursor:text;background:#0d1015;padding:3px 6px;font-size:11px;position:absolute}[data-canvas-theme=paper] .sutra-edge-label{color:var(--canvas-text-muted);background:var(--canvas-bg);border-color:var(--canvas-card-border)}.sutra-edge-label__input{resize:none;width:168px;max-width:100%;color:inherit;font:inherit;text-align:center;line-height:inherit;background:0 0;border:none;outline:none;margin:0;padding:0;display:block}.sutra-glyph-pick{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:36px;height:36px;min-height:36px;color:var(--text-strong);cursor:pointer;justify-content:center;align-items:center;padding:0;display:flex}.sutra-glyph-pick span:first-child{font-size:18px;line-height:1}.sutra-entity{background:var(--canvas-card);border:1px solid var(--canvas-card-border);border-radius:var(--radius-lg);width:max-content;min-width:220px;max-width:360px;box-shadow:var(--canvas-card-shadow);font-family:var(--font-ui);transition:box-shadow var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);overflow:hidden}.sutra-entity:hover{border-color:var(--canvas-card-border-hover);box-shadow:var(--canvas-card-shadow-hover)}.sutra-entity.is-selected{box-shadow:var(--canvas-ring-selected);border-color:#0000}.sutra-entity__name{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--canvas-card-border);font-family:var(--font-mono);font-size:var(--canvas-name-size);font-weight:var(--fw-semibold);color:var(--canvas-text);overflow-wrap:anywhere;line-height:1.3}.sutra-entity__rows{padding:var(--space-1-5) 0}.sutra-entity__empty{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--canvas-text-muted)}.sutra-entity__row{align-items:baseline;gap:var(--space-2);padding:3px var(--space-3);display:flex}.sutra-entity__key{width:22px;font-family:var(--font-mono);font-size:var(--text-3xs);font-weight:var(--fw-bold);color:#0000;flex:none}.sutra-entity__key.is-pk{color:var(--canvas-key-pk)}.sutra-entity__key.is-fk{color:var(--canvas-key-fk)}.sutra-entity__attr{min-width:0;font-family:var(--font-mono);color:var(--canvas-text);overflow-wrap:anywhere;flex:1;font-size:12px;line-height:1.35}.sutra-entity__type{font-family:var(--font-mono);color:var(--canvas-text-muted);white-space:nowrap;flex:none;font-size:11px}.sutra-entity .sutra-handle.react-flow__handle{background:var(--canvas-port);border-color:var(--canvas-port-ring)}.sutra-entity:hover .sutra-handle.react-flow__handle,.sutra-entity.is-selected .sutra-handle.react-flow__handle{background:var(--canvas-edge-accent)}.sutra-inspector--wide{width:320px}.sutra-attr-list{gap:var(--space-1-5);flex-direction:column;display:flex}.sutra-attr-row{align-items:center;gap:var(--space-1);display:flex}.sutra-attr-row__key{width:56px;height:28px;padding:0 var(--space-1);flex:none}.sutra-attr-row input{min-width:0;height:28px;padding:0 var(--space-2);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-mono);font-size:var(--text-xs)}.sutra-attr-row__name{flex:1.2}.sutra-attr-row__type{flex:1}.sutra-mind{text-align:center;padding:var(--space-2) var(--space-3-5,14px);background:var(--canvas-card);border:1.5px solid var(--node-accent);border-radius:var(--radius-full);font-family:var(--font-ui);font-size:var(--canvas-name-size);font-weight:var(--fw-semibold);color:var(--canvas-text);box-shadow:var(--canvas-card-shadow);overflow-wrap:anywhere;justify-content:center;align-items:center;max-width:260px;display:flex}.sutra-mind:hover{box-shadow:var(--canvas-card-shadow-hover)}.sutra-mind--root{padding:var(--space-3) var(--space-5);font-family:var(--font-display);font-size:16px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);background:color-mix(in oklab, var(--node-accent) 10%, var(--canvas-card));border-width:2px}.sutra-mind--leaf{font-size:13px;font-weight:var(--fw-medium,500);background:var(--canvas-bg);box-shadow:none;border-style:dashed}.sutra-mind.is-selected{box-shadow:var(--canvas-ring-selected);border-color:#0000}.sutra-mind .sutra-handle.react-flow__handle{background:var(--canvas-port);border-color:var(--canvas-port-ring)}.sutra-mind:hover .sutra-handle.react-flow__handle,.sutra-mind.is-selected .sutra-handle.react-flow__handle{background:var(--canvas-edge-accent)}.sutra-journey__persona{gap:var(--space-2);flex:none;width:280px;height:30px}.sutra-journey__persona-label{font-size:var(--text-2xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:var(--ls-wide);white-space:nowrap}.sutra-emotion-row{gap:var(--space-1);display:flex}.sutra-emotion{border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;opacity:.5;height:34px;transition:var(--transition-colors), opacity var(--dur-fast) var(--ease-out);background:0 0;flex:1;font-size:17px}.sutra-emotion:hover{opacity:.85;background:var(--surface-hover)}.sutra-emotion.is-active{opacity:1;border-color:var(--accent);background:var(--accent-tint)}.sutra-emoji-current{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1-5) var(--space-2);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition-colors);display:flex}.sutra-emoji-current:hover{background:var(--surface-hover)}.sutra-emoji-current.is-open{border-color:var(--accent)}.sutra-emoji-current__face{font-size:18px;line-height:1}.sutra-emoji-current__hint{font-size:var(--text-2xs);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sutra-emoji-tray{margin-top:var(--space-2);padding:var(--space-2);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);max-height:224px;overflow-y:auto}.sutra-emoji-tray__group{font-size:var(--text-2xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:var(--ls-wide);margin:var(--space-1) 0}.sutra-emoji-tray__grid{grid-template-columns:repeat(6,1fr);gap:2px;display:grid}.sutra-emoji-tray__item{border-radius:var(--radius-sm);cursor:pointer;opacity:.85;height:30px;transition:var(--transition-colors), opacity var(--dur-fast) var(--ease-out);background:0 0;border:none;font-size:16px}.sutra-emoji-tray__item:hover{background:var(--surface-hover);opacity:1}.sutra-emoji-tray__item.is-active{background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent);opacity:1}.sutra-emoji-tray__reset{width:100%;margin-top:var(--space-2)}.sutra-gantt__start{gap:var(--space-2);flex:none;height:30px}.sutra-gantt__start-label{font-size:var(--text-2xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:var(--ls-wide);white-space:nowrap}.sutra-gantt__start input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.sutra-textarea{width:100%;padding:var(--space-2) var(--space-2-5);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--lh-normal);resize:vertical;min-height:64px}.sutra-textarea:focus-visible{border-color:var(--accent);box-shadow:var(--ring-focus);outline:none}.sutra-linkish{font:inherit;color:var(--accent-text);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.sutra-linkish:hover{color:var(--text-strong)}.sutra-rel-list{flex-direction:column;gap:3px;display:flex}.sutra-rel-item{align-items:baseline;gap:var(--space-2);font-size:var(--text-xs);display:flex}.sutra-rel-item__verb{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--accent-text);white-space:nowrap}.sutra-rel-item__other{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sutra-help__foot{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-subtle);font-size:var(--text-2xs);color:var(--text-faint);display:flex}.sutra-help__links{gap:var(--space-3);flex:none;display:inline-flex}.sutra-footer{justify-content:flex-start;align-items:center;gap:var(--space-4);height:26px;padding:0 var(--space-4);border-top:1px solid var(--border-subtle);background:var(--bg-app);font-size:var(--text-2xs);color:var(--text-muted);white-space:nowrap;scrollbar-width:none;flex-shrink:0;display:flex;overflow:auto hidden}.sutra-footer::-webkit-scrollbar{display:none}.sutra-footer__group{align-items:center;gap:var(--space-2);flex-shrink:0;min-width:0;display:inline-flex}.sutra-footer__group+.sutra-footer__group{margin-left:auto}.sutra-footer .sutra-linkish{font-size:inherit}.sutra-footer a{color:var(--text-muted);text-underline-offset:2px;text-decoration:underline}.sutra-footer a:hover{color:var(--accent-text)}.sutra-footer__heart{color:var(--rose-400)}.sutra-footer__sep{color:var(--border-default)}.sutra-bmc{right:var(--space-3);bottom:var(--space-3);z-index:350;height:34px;padding:0 var(--space-3-5,14px);border-radius:var(--radius-full);color:#16181d;font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--fw-bold);box-shadow:var(--shadow-md);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fd0;align-items:center;gap:7px;text-decoration:none;display:inline-flex;position:absolute}.sutra-bmc:hover{box-shadow:var(--shadow-lg,var(--shadow-md));transform:translateY(-2px)}.sutra-swim__scroll{padding-bottom:72px}.sutra-welcome{background:radial-gradient(60% 50% at 50% 0%, #3d7df614, transparent 70%), var(--canvas);position:absolute;inset:0;overflow:hidden}.sutra-welcome__scroll{z-index:1;justify-content:center;display:flex;position:absolute;inset:0;overflow-y:auto}.sutra-welcome__inner{width:min(880px,100vw - 48px);padding:var(--space-10,56px) 0 var(--space-8,40px);gap:var(--space-3);flex-direction:column;margin:auto 0;display:flex}.sutra-welcome__title{font-family:var(--font-display);font-size:var(--text-3xl,28px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin:0}.sutra-welcome__sub{margin:0 0 var(--space-3);color:var(--text-muted);font-size:var(--text-base)}.sutra-welcome__grid{gap:var(--space-2-5);grid-template-columns:repeat(auto-fill,minmax(196px,1fr));display:grid}.sutra-welcome__back{top:var(--space-3);right:var(--space-3);z-index:10;position:absolute}.sutra-welcome__inner--split{gap:var(--space-6);grid-template-columns:minmax(230px,25%) minmax(0,1fr);align-items:start;width:min(1180px,100vw - 48px);display:grid}.sutra-welcome__main{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.sutra-welcome__side{top:var(--space-4);max-height:calc(100vh - var(--topbar-height) - 120px);scrollbar-width:thin;background:linear-gradient(180deg, #ffffff05, transparent 55%), var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-3);box-shadow:var(--shadow-md), var(--highlight-top);position:sticky;overflow-y:auto}.sutra-welcome__recent-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.sutra-welcome__side-empty{border:1px dashed var(--border-default);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal)}@media (width<=960px){.sutra-welcome__inner--split{grid-template-columns:1fr}.sutra-welcome__side{order:2;max-height:none;position:static}.sutra-welcome__side:has(.sutra-welcome__side-empty){display:none}.sutra-welcome__main{order:1}}.sutra-welcome__eyebrow{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted)}.sutra-welcome__open{align-items:stretch;gap:var(--space-1);width:100%;font:inherit;color:var(--text-default);text-align:left;border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-2) var(--space-2-5);background:0 0;flex-direction:column;display:flex}.sutra-welcome__open:hover{border-color:var(--accent);background:var(--accent-tint)}.sutra-welcome__open-top{align-items:center;gap:var(--space-2);min-width:0;display:flex}.sutra-welcome__open-meta{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.sutra-privacy{width:min(560px,100vw - 32px)}.sutra-privacy section h3{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong)}.sutra-privacy section p{font-size:var(--text-sm);line-height:var(--lh-normal);color:var(--text-muted);margin:0}.sutra-privacy code{font-family:var(--font-mono);color:var(--accent-text);font-size:.9em}.sutra-crash{justify-content:center;align-items:center;gap:var(--space-2-5);text-align:center;height:100%;padding:var(--space-6);flex-direction:column;display:flex}.sutra-crash p{color:var(--text-muted)}.sutra-crash pre{max-width:640px;color:var(--text-faint);font-family:var(--font-mono);font-size:var(--text-sm);overflow:auto}.sutra-insights{width:340px;max-height:min(70vh,640px);overflow-y:auto}.sutra-insights__ic{color:var(--accent-text)}.sutra-insights__close{margin-left:auto}.sutra-insights__summary{gap:var(--space-1-5);font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;display:grid}.sutra-insights__summary p{margin:0}.sutra-insights__list{gap:var(--space-1-5);display:grid}.sutra-insight{gap:var(--space-2);text-align:left;padding:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface) 60%, transparent);color:inherit;cursor:pointer;font:inherit;align-items:flex-start;display:flex}.sutra-insight:disabled{cursor:default}.sutra-insight:not(:disabled):hover{border-color:var(--border-strong);background:var(--surface)}.sutra-insight__badge{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.sutra-insight.is-warn .sutra-insight__badge{color:#f5a524;background:#f5a5241f}.sutra-insight.is-info .sutra-insight__badge{color:var(--accent-text);background:#4c8dff1f}.sutra-insight__text{gap:2px;display:grid}.sutra-insight__title{font-weight:600;font-size:var(--text-sm)}.sutra-insight__detail{font-size:var(--text-xs);color:var(--text-muted);line-height:1.45}.sutra-ai-card{gap:var(--space-2-5);width:100%;margin:0 0 var(--space-6);padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-xl,14px);background:radial-gradient(120% 160% at 0% 0%, #4c8dff17, transparent 55%), var(--surface);box-shadow:var(--shadow-panel);text-align:left;display:grid}.sutra-ai-card__head{align-items:center;gap:var(--space-2);display:flex}.sutra-ai-card__spark{border-radius:var(--radius-md);width:28px;height:28px;color:var(--accent-text);background:#4c8dff1f;place-items:center;display:grid}.sutra-ai-card__title{font-weight:650;font-size:var(--text-md,14px)}.sutra-ai-card__example{margin-left:auto}.sutra-ai-card__input{resize:vertical;width:100%;min-height:76px;padding:var(--space-2-5);border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface) 40%, transparent);color:inherit;font:inherit;font-size:var(--text-sm);line-height:1.5}.sutra-ai-card__input:focus-visible{border-color:var(--accent-text);outline:none}.sutra-ai-card__input::placeholder{color:var(--text-faint)}.sutra-ai-card__progress{gap:var(--space-1);display:grid}.sutra-ai-card__bar{background:var(--border-subtle);border-radius:2px;height:4px;overflow:hidden}.sutra-ai-card__bar-fill{background:var(--accent-text);border-radius:2px;height:100%;transition:width .3s}.sutra-ai-card__notice{padding:var(--space-2);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);background:#f5a52414;border:1px solid #f5a52440;line-height:1.5}.sutra-ai-card__foot{align-items:center;gap:var(--space-3);display:flex}.sutra-ai-card__engine{align-items:center;gap:var(--space-2);min-width:0;margin-right:auto;display:flex}.sutra-ai-card__enhanced{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);cursor:default;display:flex}.sutra-ai-card__switcher{width:auto;height:26px;padding:0 var(--space-2);font-size:var(--text-xs)}@media (width>=1280px){.sutra-welcome__grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}}.sutra-welcome__more{align-self:flex-start;align-items:center;gap:var(--space-1-5);width:fit-content;margin:var(--space-3) 0 var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--fw-medium,500);cursor:pointer;transition:var(--transition-colors);background:0 0;border:0;display:inline-flex}.sutra-welcome__more:hover{color:var(--text-strong);background:var(--surface-hover,#ffffff0a)}.sutra-welcome__more:focus-visible{box-shadow:var(--ring-focus,var(--ring-selected));outline:none}.sutra-welcome__more-chevron{transition:transform var(--duration-fast,.12s) var(--ease-out,ease-out)}.sutra-welcome__more[aria-expanded=true] .sutra-welcome__more-chevron{transform:rotate(180deg)}.sutra-palette{border-radius:var(--radius-lg);flex-direction:column;width:min(560px,100vw - 32px);max-height:min(60vh,480px);margin-top:-18vh;display:flex;overflow:hidden}.sutra-palette__field{margin:var(--space-2)}.sutra-palette__list{padding:0 var(--space-2) var(--space-2);margin:0;list-style:none;overflow-y:auto}.sutra-palette__empty{padding:var(--space-3);color:var(--text-faint);font-size:var(--text-sm)}.sutra-palette__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2-5);border-radius:var(--radius-md);color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.sutra-palette__item.is-active{background:#4c8dff24}.sutra-palette__item .ic{color:var(--text-muted);flex:none}.sutra-palette__title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sutra-palette__hint{color:var(--text-faint);font-size:var(--text-xs);flex:none;margin-left:auto}.sutra-mobile-gate{padding:var(--space-6);background:radial-gradient(90% 60% at 50% 0%, #4c8dff1a, transparent 60%), var(--bg,#0d1015);text-align:center;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.sutra-mobile-gate__inner{justify-items:center;gap:var(--space-3);max-width:420px;display:grid}.sutra-mobile-gate h1{margin:0;font-size:24px;line-height:1.2}.sutra-mobile-gate p{color:var(--text-muted);margin:0;line-height:1.55}.sutra-mobile-gate__cta strong{color:var(--text,#e8ebf1)}.sutra-mobile-gate__art{margin:var(--space-4) 0 var(--space-2);align-items:center;display:flex}.sutra-mobile-gate__node{background:#4c8dff1f;border:1.5px solid #4c8dff;border-radius:6px;width:34px;height:24px}.sutra-mobile-gate__node--b{background:#34d9ae1f;border-color:#34d9ae}.sutra-mobile-gate__node--c{background:#a78bfa1f;border-color:#a78bfa}.sutra-mobile-gate__wire{background:#4a5162;width:36px;height:1.5px}.sutra-canvas-loading{height:100%;color:var(--text-faint);font-size:var(--text-sm);place-items:center;display:grid}.sutra-ai-card__status{margin-left:var(--space-1-5);font-size:var(--text-xs);color:var(--text-muted);align-items:center;gap:5px;display:inline-flex}.sutra-ai-card__status-dot{background:var(--text-faint);border-radius:50%;width:7px;height:7px}.sutra-ai-card__status.is-ok .sutra-ai-card__status-dot{background:#33d391;box-shadow:0 0 6px #33d39199}.sutra-ai-card__status.is-warm .sutra-ai-card__status-dot{background:#f5a524}.sutra-ai-card__settings{gap:var(--space-2-5);padding:var(--space-3);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);flex-direction:column;display:flex}.sutra-ai-card__settings-row{gap:var(--space-2-5);display:flex}.sutra-ai-card__settings-field{flex:1;min-width:0}.sutra-ai-card__settings-label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px;display:block}.sutra-ai-card__field{width:100%;height:32px;padding:0 var(--space-2-5);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-default);font-family:var(--font-ui);font-size:var(--text-sm);transition:var(--transition-colors)}.sutra-ai-card__field:focus-visible{border-color:var(--accent);box-shadow:var(--ring-focus);outline:none}.sutra-ai-card__settings-link{color:var(--accent-text);text-decoration:none}.sutra-ai-card__settings-link:hover{text-decoration:underline}.sutra-ai-card__settings-steps{padding-left:var(--space-4);font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;gap:3px;margin:0;display:flex}.sutra-ai-card__settings-warn{font-size:var(--text-xs);color:#f5a524;margin-top:4px;display:block}.sutra-ai-card__settings-remember{align-items:baseline;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;display:flex}.sutra-ai-card__keytest{padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-sm);font-size:var(--text-xs)}.sutra-ai-card__keytest.is-ok{color:#33d391;background:#33d39114}.sutra-ai-card__keytest.is-err{color:#fb5570;background:#fb557014}.sutra-ai-card__settings-foot{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.sutra-ai-card__bar-fill.is-indeterminate{width:35%;animation:1.2s ease-in-out infinite sutra-indeterminate}.sutra-ai-card__progress-text{animation:sutra-text-in var(--dur-slow) var(--ease-out), sutra-think 2.2s var(--ease-in-out,ease-in-out) infinite}@keyframes sutra-think{0%,to{opacity:.55}50%{opacity:1}}@keyframes sutra-indeterminate{0%{margin-left:0}50%{margin-left:65%}to{margin-left:0}}@keyframes sutra-slide-in-right{0%{opacity:0;transform:translate(12px)}}@keyframes sutra-pop-in{0%{opacity:0;transform:scale(.97)translateY(-4px)}}@keyframes sutra-fade-in{0%{opacity:0}}@keyframes sutra-toast-in{0%{opacity:0;transform:translate(-50%,12px)}}@keyframes sutra-nudge{15%,85%{transform:translate(-2px)}30%,70%{transform:translate(3px)}45%,55%{transform:translate(-3px)}}@keyframes sutra-text-in{0%{opacity:0;transform:translateY(4px)}}.sutra-inspector{animation:sutra-slide-in-right var(--dur-slow) var(--ease-out) both}.menu,.sutra-help__pop{animation:sutra-pop-in var(--dur-base) var(--ease-out) both}.sutra-modal__backdrop{animation:sutra-fade-in var(--dur-fast) var(--ease-out) both}.dialog,.sutra-palette{animation:sutra-pop-in var(--dur-base) var(--ease-out) both}.sutra-ai-card__notice{animation:sutra-nudge var(--dur-slower) var(--ease-out)}.sutra-toast{z-index:60;max-width:min(560px,100vw - 32px);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;animation:sutra-toast-in var(--dur-slow) var(--ease-out) both;border-color:#f5a5244d;line-height:1.5;position:fixed;bottom:76px;left:50%;transform:translate(-50%)}.sutra-toast.is-ok{color:var(--text-default);border-color:#33d39159}.sutra-welcome__open{cursor:pointer}.sutra-welcome__open .sutra-open__actions{opacity:.55;transition:opacity var(--dur-fast) var(--ease-out);display:inline-flex}.sutra-welcome__open:hover .sutra-open__actions,.sutra-welcome__open:focus-within .sutra-open__actions{opacity:1}.sutra-weave{pointer-events:none;z-index:0;position:absolute;inset:0}.sutra-welcome__inner{z-index:1;position:relative}.sutra-path{min-width:0}.sutra-welcome__or{align-items:center;gap:var(--space-3);color:var(--text-faint);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--ls-wide);text-transform:uppercase;margin:var(--space-1) 0;display:flex}.sutra-welcome__or:before,.sutra-welcome__or:after{content:"";background:var(--border-default);flex:1;height:1px}.sutra-path--scratch{background:linear-gradient(180deg, #ffffff05, transparent 55%), var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-4);gap:var(--space-3);box-shadow:var(--highlight-top);flex-direction:column;display:flex}.sutra-path__head{align-items:flex-start;gap:var(--space-2-5);display:flex}.sutra-path__glyph{border-radius:var(--radius-md);background:var(--accent-tint);width:32px;height:32px;color:var(--accent-text);flex:none;justify-content:center;align-items:center;display:flex}.sutra-path__title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin:0}.sutra-path__sub{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);margin:2px 0 0}.sutra-ai-card__connect{align-items:flex-start;gap:var(--space-2-5);padding:var(--space-2) var(--space-1) var(--space-1);flex-direction:column;display:flex}.sutra-ai-card__connect-lead{font-size:var(--text-sm);color:var(--text-default);line-height:var(--lh-normal);margin:0}.sutra-ai-card__connect-points{padding-left:var(--space-4);gap:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);line-height:var(--lh-normal);margin:0;display:grid}.sutra-chat{top:var(--space-3);right:var(--space-3);bottom:calc(var(--space-3) + 34px);z-index:40;border-radius:var(--radius-xl);flex-direction:column;width:min(360px,100vw - 24px);display:flex;position:absolute;overflow:hidden}.sutra-chat__head{align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);border-bottom:1px solid var(--border-subtle);flex:none;display:flex}.sutra-chat__title{min-width:0;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-strong);flex-direction:column;flex:1;line-height:1.25;display:flex}.sutra-chat__provider{font-family:var(--font-mono);font-size:var(--text-3xs);font-weight:var(--fw-medium);color:var(--text-faint);text-transform:none;letter-spacing:.01em}.sutra-chat__body{min-height:0;padding:var(--space-3);gap:var(--space-2);scrollbar-width:thin;flex-direction:column;flex:1;display:flex;overflow-y:auto}.sutra-chat__empty{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--lh-normal);gap:var(--space-2-5);display:grid}.sutra-chat__empty p{margin:0}.sutra-chat__suggestions{gap:var(--space-1-5);flex-direction:column;align-items:stretch;display:flex}.sutra-chat__suggestion{text-align:left;font:inherit;font-size:var(--text-xs);color:var(--text-default);background:var(--surface-raised);border:1px dashed var(--border-default);border-radius:var(--radius-md);padding:var(--space-1-5) var(--space-2-5);cursor:pointer;transition:var(--transition-colors)}.sutra-chat__suggestion:hover{border-color:var(--accent);background:var(--accent-tint)}.sutra-chat__msg{max-width:92%;font-size:var(--text-sm);line-height:var(--lh-normal);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-2-5);gap:var(--space-1-5);flex-direction:column;display:flex}.sutra-chat__msg.is-user{background:var(--accent-press);color:#eaf1ff;border-bottom-right-radius:var(--radius-xs);align-self:flex-end}.sutra-chat__msg.is-assistant{background:var(--surface-raised);border:1px solid var(--border-subtle);color:var(--text-default);border-bottom-left-radius:var(--radius-xs);align-self:flex-start}.sutra-chat__msg.is-error{color:var(--rose-400);border-color:#fb557059}.sutra-chat__revert{align-self:flex-start}.sutra-chat__thinking{color:var(--text-muted);font-size:var(--text-xs);animation:sutra-think-in var(--dur-slow) var(--ease-out) both}@keyframes sutra-think-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.sutra-chat__composer{align-items:flex-end;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);border-top:1px solid var(--border-subtle);flex:none;display:flex}.sutra-chat__input{resize:none;background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:0;color:var(--text-default);font:inherit;font-size:var(--text-sm);padding:var(--space-2) var(--space-2-5);flex:1;line-height:1.45}.sutra-chat__input:focus-visible{border-color:var(--accent);box-shadow:var(--ring-focus);outline:none}.sutra-chat__input::placeholder{color:var(--text-faint)}.sutra-app.is-presenting .sutra-topbar,.sutra-app.is-presenting .sutra-footer,.sutra-app.is-presenting .sutra-bmc{display:none}.sutra-app.is-presenting .sutra-tray,.sutra-app.is-presenting .sutra-dock,.sutra-app.is-presenting .react-flow__panel,.sutra-app.is-presenting .sutra-inspector-panel--swim{display:none!important}.sutra-present-hint{left:50%;bottom:var(--space-6);z-index:50;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--glass-sheen), var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));pointer-events:none;animation:sutra-present-hint 4s var(--ease-out) both;display:flex;position:absolute;transform:translate(-50%)}.sutra-present-hint__name{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.sutra-present-hint__esc{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted)}@keyframes sutra-present-hint{0%{opacity:0;transform:translate(-50%)translateY(8px)}10%,70%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(0)}}@media (prefers-reduced-motion:reduce){.sutra-present-hint{opacity:.85;animation:none}}.sutra-tour{z-index:200;position:fixed;inset:0}.sutra-tour__spot{border-radius:var(--radius-xl);border:1.5px solid color-mix(in oklab, var(--accent) 70%, white);transition:left var(--dur-slow) var(--ease-out), top var(--dur-slow) var(--ease-out), width var(--dur-slow) var(--ease-out), height var(--dur-slow) var(--ease-out);pointer-events:none;animation:2.4s ease-in-out infinite sutra-tour-pulse;position:fixed;box-shadow:0 0 0 9999px #06080cb8}@keyframes sutra-tour-pulse{0%,to{border-color:color-mix(in oklab, var(--accent) 70%, white)}50%{border-color:var(--accent)}}.sutra-tour__veil{background:#06080cb8;position:fixed;inset:0}.sutra-tour__card{z-index:1;border-radius:var(--radius-xl);width:340px;max-width:calc(100vw - 24px);padding:var(--space-4);gap:var(--space-2-5);animation:sutra-tour-card-in var(--dur-slow) var(--ease-out) both;flex-direction:column;display:flex;position:fixed}@keyframes sutra-tour-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sutra-tour__card[style*="translate(-50%"]{animation:sutra-tour-fade-in var(--dur-slow) var(--ease-out) both}@keyframes sutra-tour-fade-in{0%{opacity:0}to{opacity:1}}.sutra-tour__step-no{font-family:var(--font-mono);font-size:var(--text-3xs);letter-spacing:var(--ls-wide);color:var(--text-faint)}.sutra-tour__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin:0}.sutra-tour__body{font-size:var(--text-sm);color:var(--text-default);line-height:var(--lh-normal)}.sutra-tour__dots{gap:var(--space-1-5);display:flex}.sutra-tour__dot{border-radius:var(--radius-full);background:var(--border-strong);width:6px;height:6px;transition:var(--transition-colors)}.sutra-tour__dot.is-active{background:var(--accent)}.sutra-tour__actions{align-items:center;gap:var(--space-2);display:flex}.sutra-tour__actions-spacer{flex:1}@media (prefers-reduced-motion:reduce){.sutra-tour__spot,.sutra-tour__card{transition:none;animation:none}}.sutra-ai-card__model-ok{font-size:var(--text-xs);color:var(--green-400)}.sutra-chat__msg{min-width:0}.sutra-chat__msg-text{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;min-width:0}.sutra-chat__switcher{max-width:220px;font-size:var(--text-xs);height:24px;margin-top:2px}.sutra-ai-dialog{flex-direction:column;width:min(620px,100vw - 32px);max-height:calc(100vh - 64px);display:flex}.sutra-ai-dialog__body{padding-bottom:var(--space-5);scrollbar-width:thin;overflow-y:auto}.sutra-ai-dialog .sutra-ai-card__settings{background:0 0;border:none;padding:0}
