@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap");:root{--bg:#0A0A0A;--bg1:#0A0A0A;--bg2:#111111;--bg3:#161616;--bg4:#1a1a1a;--b1:#161616;--b2:#1e1e1e;--b3:#2a2a2a;--t1:#FFFFFF;--t2:#888888;--t3:#333333;--sh:0 1px 3px rgba(0,0,0,0.6);--shm:0 4px 20px rgba(0,0,0,0.7);--ac:#7c3aed;--ac2:#a855f7;--acbg:rgba(124,58,237,0.08);--gn:#22c55e;--gnbg:rgba(34,197,94,0.08);--am:#f59e0b;--ambg:rgba(245,158,11,0.08);--rd:#ef4444;--rdbg:rgba(239,68,68,0.08);--bl:#3b82f6;--ff:"Inter",system-ui,sans-serif;--fm:"JetBrains Mono",monospace;--r6:6px;--r8:8px;--r10:10px;--r12:12px}.light{--bg:#F7F5F2;--bg1:#FFFFFF;--bg2:#F2EFE8;--bg3:#EAE6DD;--bg4:#E0DDD6;--b1:#E0DDD6;--b2:#C8C3B6;--b3:#A8A29E;--t1:#1A1A1A;--t2:#6B6358;--t3:#9E9890;--sh:0 1px 3px rgba(0,0,0,0.1);--shm:0 4px 20px rgba(0,0,0,0.15)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased}html:not([class*=light]){color-scheme:dark}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--b2);border-radius:2px}:focus-visible{outline:2px solid var(--ac);outline-offset:2px;border-radius:4px}body{background:var(--bg);color:var(--t1);font-family:var(--ff);font-size:13px;line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:var(--ff)}.shell{display:flex;min-height:100vh}.main-area{flex-direction:column;flex:1 1;overflow:hidden;min-width:0}.main-area,.sidebar{display:flex;min-height:100vh}.sidebar{width:48px;background:var(--bg1);border-right:1px solid var(--b1);flex-direction:column;align-items:center;padding:12px 0;gap:3px;flex-shrink:0;position:relative;z-index:20}.sidebar--desktop,.topbar{display:flex}.topbar{height:44px;align-items:center;padding:0 16px;gap:10px;background:var(--bg1);border-bottom:1px solid var(--b1);flex-shrink:0}.canvas-area{flex:1 1;position:relative;overflow:hidden;cursor:-webkit-grab;cursor:grab;background-image:radial-gradient(circle,var(--b2) 1px,transparent 1px);background-size:24px 24px}.canvas-area:active{cursor:-webkit-grabbing;cursor:grabbing}.card{background:var(--bg2);border:1px solid var(--b1);border-radius:var(--r10);padding:14px 16px;transition:border-color .15s}.card:hover{border-color:var(--b3)}.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--ac);border:none;color:#fff;border-radius:var(--r8);padding:6px 14px;font-size:11px;font-weight:600;cursor:pointer;font-family:var(--ff);transition:opacity .15s}.btn-primary:hover{opacity:.85}.btn-outline{display:inline-flex;align-items:center;gap:6px;background:var(--bg2);border:1px solid var(--b1);color:var(--t2);border-radius:var(--r8);padding:6px 14px;font-size:11px;cursor:pointer;font-family:var(--ff);transition:all .15s}.btn-outline:hover{border-color:var(--b3);color:var(--t1)}.ic{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--t2);cursor:pointer;border-radius:var(--r6);padding:6px;transition:all .12s}.ic:hover{background:var(--bg3);color:var(--t1)}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:11px;font-weight:600;color:var(--t2);letter-spacing:.04em}.auth-input,.select-input,.text-input,.textarea-input{background:var(--bg2);border:1px solid var(--b1);border-radius:var(--r8);color:var(--t1);padding:8px 12px;font-size:13px;font-family:var(--ff);outline:none;transition:border-color .15s;width:100%}.auth-input:focus,.select-input:focus,.text-input:focus,.textarea-input:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acbg)}.auth-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);padding:24px;gap:0}.auth-brand{margin-bottom:32px}.auth-card{background:var(--bg2);border:1px solid var(--b1);border-radius:16px;padding:32px;width:100%;max-width:400px}.auth-title{font-size:20px;font-weight:700;color:var(--t1);margin-bottom:6px;letter-spacing:-.3px}.auth-subtitle{font-size:13px;color:var(--t2);margin-bottom:24px}.auth-footer{margin-top:20px;font-size:12px;color:var(--t3);text-align:center}.auth-footer a{color:var(--t2)}.auth-footer a:hover{color:var(--t1)}.auth-link{color:var(--ac);font-weight:500}.auth-link:hover{opacity:.8}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--bg3);border:1px solid var(--b1);border-radius:var(--r8);color:var(--t1);padding:10px;font-size:13px;font-weight:500;cursor:pointer;width:100%;transition:all .15s}.oauth-btn:hover{background:var(--bg4,var(--bg3));border-color:var(--b2)}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--t3);font-size:12px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--b1)}.submit-btn{width:100%;background:var(--ac);border:none;color:#fff;border-radius:var(--r8);padding:10px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:opacity .15s;margin-top:4px}.submit-btn:hover{opacity:.88}.submit-btn:disabled{opacity:.5;cursor:default}.field-error{font-size:11px;color:var(--rd)}.pw-wrap{position:relative}.pw-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--t3);cursor:pointer;padding:4px}.forgot-link{font-size:11px;color:var(--t3);float:right}.forgot-link:hover{color:var(--t1)}.page-content{padding:20px;flex:1 1;overflow-y:auto}.mobile-header{display:none;height:52px;padding:0 16px;align-items:center;justify-content:space-between;background:var(--bg1);border-bottom:1px solid var(--b1);position:-webkit-sticky;position:sticky;top:0;z-index:30}.mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:40}.mobile-drawer{position:fixed;left:-260px;top:0;bottom:0;width:260px;background:var(--bg1);z-index:50;transition:left .2s;box-shadow:var(--shm)}.mobile-drawer--open{left:0}@media (max-width:768px){.mobile-header{display:flex}.sidebar--desktop{display:none}.shell{display:block}.main-area{min-height:calc(100vh - 52px)}}@keyframes forge-blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes forge-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes forge-slide-in{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}@keyframes forge-pulse{0%,to{box-shadow:0 0 0 0 rgba(124,58,237,.3)}50%{box-shadow:0 0 0 4px transparent}}@keyframes forge-shimmer{0%{transform:translateX(-60px)}to{transform:translateX(200px)}}.badge{display:inline-flex;align-items:center;font-size:9px;font-weight:600;letter-spacing:.05em;padding:2px 7px;border-radius:4px;font-family:var(--fm)}.badge-green{color:var(--gn);background:var(--gnbg)}.badge-amber{color:var(--am);background:var(--ambg)}.badge-red{color:var(--rd);background:var(--rdbg)}.badge-purple{color:var(--ac);background:var(--acbg)}.progress-bar{height:2px;background:var(--b1);border-radius:1px;overflow:hidden}.progress-fill{height:100%;border-radius:1px;background:linear-gradient(90deg,var(--ac),var(--ac2))}.nav-section-label{font-size:9px;color:var(--t3);letter-spacing:.08em;font-weight:600;padding:8px 10px 4px;font-family:var(--fm)}.nav-item{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r8);color:var(--t3);cursor:pointer;transition:all .12s;position:relative;text-decoration:none;border:1px solid transparent}.nav-item:hover{background:var(--bg3);color:var(--t2)}.nav-item--active{background:var(--bg3);color:var(--t1);border-color:var(--b2)}.plan-gate-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:100;display:flex;align-items:center;justify-content:center}.plan-gate-card{background:var(--bg2);border:1px solid var(--b1);border-radius:16px;padding:32px;max-width:400px;width:100%;text-align:center}.topbar-tabs{display:flex;gap:2px}.topbar-tab{padding:5px 12px;border-radius:var(--r6);font-size:11px;font-weight:500;cursor:pointer;color:var(--t3);transition:all .12s;border:none;background:none;font-family:var(--ff)}.topbar-tab:hover{color:var(--t2);background:var(--bg3)}.topbar-tab--active{color:var(--t1);background:var(--bg3)}.topbar-search{background:var(--bg2);border:1px solid var(--b1);border-radius:var(--r8);padding:5px 10px;font-size:11px;color:var(--t3);display:flex;align-items:center;gap:6px;cursor:pointer}.topbar-kbd{font-size:9px;background:var(--bg3);border-radius:3px;padding:1px 4px;color:var(--t3)}.pricing-card{background:var(--bg2);border:1px solid var(--b1);border-radius:12px;padding:24px}.pricing-card--featured{border-color:var(--ac)}.dataset-guide-wrap{padding:24px}.prose{max-width:680px;margin:0 auto;padding:40px 24px;line-height:1.8}.prose h1{font-size:24px;font-weight:700;margin-bottom:8px}.prose h2{font-size:17px;font-weight:600;margin:24px 0 8px}.prose p{color:var(--t2);margin-bottom:14px}@keyframes forge-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes forge-node-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-sans:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}