@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_ba5569{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_ba5569{--font-nunito:"Nunito","Nunito Fallback"}:root{--bg:#e8e8ea;--panel:#ffffff;--panel-2:#f3f3f5;--panel-3:#eaeaee;--border:#d9d9de;--border-soft:#e7e7ec;--accent:#cf9f27;--accent-strong:#b3861a;--accent-2:#8f7016;--nub-ring-rgb:179,134,26;--on-accent:#241f08;--on-accent-2:#ffffff;--text:#1e1f22;--muted:#64656d;--danger:#e5484d;--danger-bg:rgba(229,72,77,0.1);--ok:#14804a;--bad:#e5484d;--warn:#c67e00;--good:#14804a;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-pill:999px;--shadow:0 1px 2px rgba(20,22,30,0.06),0 6px 20px rgba(20,22,30,0.09);--ring:0 0 0 3px rgba(207,159,39,0.32);--glass-bg:rgba(255,255,255,0.7);--glass-bg-strong:rgba(255,255,255,0.9);--glass-border:rgba(20,24,40,0.08);--glass-blur:blur(30px) saturate(135%);--glass-shadow:0 1px 2px rgba(20,22,30,0.05),0 12px 40px rgba(20,22,30,0.1);--glass-highlight:inset 0 1px 0 rgba(255,255,255,0.65);--canvas-bg:radial-gradient(1200px 700px at 50% 0%,#f1f1f4 0%,#e8e8ec 62%),#e5e5e9;--faceplate-hi:#fcfcfd;--faceplate-lo:#ececf0;--workspace-bg:#e9e9ed;--workspace-grad:linear-gradient(150deg,#f1f1f4,#e9e9ed 55%,#e2e2e7);--workspace-wash-1-rgb:170,150,95;--workspace-wash-2-rgb:140,138,150;--dot-grid:rgba(28,30,40,0.1);--heading-grad:linear-gradient(180deg,#b3861a,#8a6a12);--brand-grad:linear-gradient(135deg,#d9a92e,#b3861a);--cable-rim:rgba(0,0,0,0.3);--cable-temp:#b3861a;--export-bg:#ffffff;--page-glow:#fbfaf6;--tip-bg:#23242b;--tip-fg:#ffffff;--scrollbar:#d0d0d7;--scrollbar-hover:#b6b6bf;color-scheme:light}:root[data-theme=dark]{--bg:#0e1218;--panel:#171c24;--panel-2:#1e242e;--panel-3:#283039;--border:#2c333f;--border-soft:#232a34;--accent:#12b8d6;--accent-strong:#34cbe6;--accent-2:#4dd2ea;--nub-ring-rgb:52,203,230;--on-accent:#ffffff;--on-accent-2:#04121b;--text:#e7ebf1;--muted:#9aa5b4;--danger:#ff5c60;--danger-bg:rgba(255,92,96,0.14);--ok:#2bb6cf;--bad:#ff5c60;--warn:#f0a63a;--good:#35c46f;--shadow:0 1px 2px rgba(0,0,0,0.45),0 10px 30px rgba(0,0,0,0.55);--ring:0 0 0 3px rgba(52,203,230,0.4);--glass-bg:rgba(26,31,40,0.62);--glass-bg-strong:rgba(22,27,35,0.86);--glass-border:rgba(255,255,255,0.09);--glass-shadow:0 1px 2px rgba(0,0,0,0.5),0 16px 48px rgba(0,0,0,0.6);--glass-highlight:inset 0 1px 0 rgba(255,255,255,0.07);--canvas-bg:radial-gradient(1200px 700px at 50% 0%,#1a212b 0%,#12171f 62%),#0d1117;--faceplate-hi:#2b323d;--faceplate-lo:#1d232c;--workspace-bg:#0c1015;--workspace-grad:linear-gradient(150deg,#161b23,#11161d 55%,#0d1116);--workspace-wash-1-rgb:70,110,170;--workspace-wash-2-rgb:120,140,175;--dot-grid:rgba(255,255,255,0.06);--heading-grad:linear-gradient(180deg,#f2f6fc,#aebccf);--brand-grad:linear-gradient(135deg,#34cbe6,#12b8d6);--cable-rim:rgba(0,0,0,0.55);--cable-temp:#93a6c8;--export-bg:#0d1117;--page-glow:#1b2431;--tip-bg:#e7ebf1;--tip-fg:#12161d;--scrollbar:#39414d;--scrollbar-hover:#4b5563;color-scheme:dark}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),var(--glass-highlight);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.glass{background:var(--panel)}}*{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(1300px 860px at 50% -12%,var(--page-glow) 0,rgba(255,255,255,0) 60%),var(--bg);background-attachment:fixed;color:var(--text);font-family:var(--font-nunito),"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{line-height:1.25;font-weight:700}.app-hdr{margin:2px auto 18px}.workspace-shell{display:flex;align-items:flex-start;gap:20px}.ai-rail{flex:0 0 360px;width:360px;display:flex;flex-direction:column;gap:79px;margin-top:2.5vh}.canvas-col{flex:1 1;min-width:0}@media (max-width:980px){.workspace-shell{flex-direction:column}.ai-rail{flex:none;width:auto;position:static;max-height:none;overflow:visible;margin-top:0}}@media (max-width:680px){.app-hdr{margin-top:56px}}.app-toolbar{display:flex;align-items:flex-start;gap:20px;margin-bottom:12px}.app-toolbar__railspace{flex:0 0 360px}.app-toolbar__canvas{flex:1 1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.app-toolbar__switch{flex:none}.app-toolbar__status{flex:1 1 auto;min-width:0;text-align:center}.app-toolbar__right{flex:none;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}@media (max-width:980px){.app-toolbar__railspace{display:none}}@media (max-width:820px){.app-toolbar__canvas{flex-direction:column;align-items:center;row-gap:10px}.app-toolbar__right{justify-content:center}}a{color:var(--accent-2)}button{font-family:inherit;cursor:pointer;transition:filter .15s ease,box-shadow .15s ease,transform .06s ease,border-color .15s ease,background .15s ease}button:not(:disabled):hover{filter:brightness(.96)}button:not(:disabled):active{transform:translateY(1px)}button:disabled{cursor:default}a:focus-visible,button:focus-visible{outline:none;box-shadow:var(--ring)}input,select,textarea{font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)!important;box-shadow:var(--ring)}select{cursor:pointer}::selection{background:rgba(0,180,209,.22)}.move-grip{flex:none;width:16px;height:12px;background:linear-gradient(currentColor,currentColor) top /100% 2px no-repeat,linear-gradient(currentColor,currentColor) 50% /100% 2px no-repeat,linear-gradient(currentColor,currentColor) bottom /100% 2px no-repeat;opacity:.4;transition:opacity .15s ease,filter .15s ease}.win-grip-area:hover .move-grip{opacity:1;filter:drop-shadow(0 0 3px currentColor)}.tip{position:relative;cursor:default}.tip:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);right:0;background:var(--tip-bg);color:var(--tip-fg);border:1px solid var(--tip-bg);border-radius:var(--r-sm);padding:5px 8px;font-size:11px;font-weight:600;line-height:1.35;letter-spacing:0;text-shadow:none;white-space:normal;width:max-content;max-width:220px;box-shadow:var(--shadow);z-index:1000;pointer-events:none;opacity:0;transform:translateY(-2px);transition:opacity .12s ease,transform .12s ease}.tip:hover:after{opacity:1;transform:translateY(0)}.io-spin{width:13px;height:13px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);display:inline-block;flex-shrink:0;animation:io-spin .8s linear infinite}@keyframes io-spin{to{transform:rotate(1turn)}}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--r-pill);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover);background-clip:padding-box}.connect-nub{position:absolute;display:flex;align-items:center;gap:6px;cursor:crosshair;touch-action:none;z-index:6}.connect-nub .nub-dot{width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--panel);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;line-height:1;flex-shrink:0}.connect-nub.hint .nub-dot{animation:nub-pulse 1.5s ease-in-out infinite}.connect-nub .nub-label{background:var(--accent);color:var(--on-accent);font-size:10.5px;font-weight:700;letter-spacing:.2px;white-space:nowrap;padding:3px 8px;border-radius:var(--r-pill);opacity:0;transform:translateX(-6px);transition:opacity .12s ease,transform .12s ease;pointer-events:none;box-shadow:var(--shadow)}.connect-nub:hover .nub-label{opacity:1;transform:translateX(0)}.connect-nub:hover .nub-dot{animation:none;transform:scale(1.12);box-shadow:0 0 0 5px rgba(var(--nub-ring-rgb),.4)}@keyframes nub-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--nub-ring-rgb),.9)}55%{transform:scale(1.32);box-shadow:0 0 0 10px rgba(var(--nub-ring-rgb),0)}to{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--nub-ring-rgb),0)}}@media (prefers-reduced-motion:reduce){.connect-nub.hint .nub-dot{animation:none}}.name-paste-target{animation:name-paste-pulse 2s ease-in-out infinite}.name-paste-target:focus{animation:none}@keyframes name-paste-pulse{0%,to{box-shadow:0 0 0 0 rgba(var(--nub-ring-rgb),0)}50%{box-shadow:0 0 0 4px rgba(var(--nub-ring-rgb),.45)}}@media (prefers-reduced-motion:reduce){.name-paste-target{animation:none}}.paste-url-hint{margin-top:3px;font-size:10.5px;font-weight:700;letter-spacing:.2px;line-height:1.2;color:var(--accent-2);pointer-events:none;animation:paste-url-hint-bob 2s ease-in-out infinite}@keyframes paste-url-hint-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@media (prefers-reduced-motion:reduce){.paste-url-hint{animation:none}}