.ns-app{--bg:#f7f9fc;--paper:#fff;--ink:#172b45;--muted:#667892;--border:#e1e7f0;--soft:#f1f5fb;--accent:#2369da;--accent-soft:#e7f0ff;display:flex;flex-direction:column;height:calc(100dvh - 170px);min-height:590px;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-size:13px}.ns-app.ns-dark{--bg:#172130;--paper:#202e40;--ink:#f2f5fa;--muted:#afbdd1;--border:#394b63;--soft:#2b3c53;--accent:#79a9ff;--accent-soft:#253957}.ns-app *{box-sizing:border-box}.ns-app button,.ns-app input,.ns-app select,.ns-app textarea{font:inherit}.ns-app button{border:1px solid var(--border);background:var(--paper);color:var(--ink);padding:8px 11px;border-radius:8px;cursor:pointer;font-weight:570;white-space:nowrap}.ns-app button:hover:not(:disabled){background:var(--soft)}.ns-app button:disabled{opacity:.35;cursor:not-allowed}.ns-app a:focus-visible,.ns-app button:focus-visible,.ns-app input:focus-visible,.ns-app select:focus-visible,.ns-app textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ns-app a{color:var(--accent);text-decoration:none}.ns-app input,.ns-app select,.ns-app textarea{border:1px solid var(--border);background:var(--paper);color:var(--ink);border-radius:8px;padding:10px;width:100%;outline:0}.ns-app textarea{resize:vertical}.ns-app h3{font-size:15px;margin:0 0 14px}.ns-app h4{font-size:13px;margin:20px 0 8px}.ns-app .ns-primary{background:#2467dd;color:white;border-color:#2467dd}.ns-app .ns-primary:hover:not(:disabled){background:#1858c2}.ns-app .ns-danger-light{color:#b63d42;background:var(--paper)}.ns-header{height:58px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 18px;background:var(--paper);border-bottom:1px solid var(--border)}.ns-brand{font-size:18px;letter-spacing:.65px;font-weight:850;color:var(--ink)!important;white-space:nowrap}.ns-brand span{font-weight:520;font-size:15px;letter-spacing:1.6px}.ns-product-label{font-size:12px;font-weight:650;color:var(--muted);padding-left:14px;border-left:1px solid var(--border)}.ns-command-spacer,.ns-header-spacer{flex:1 1;min-width:8px}.ns-save-status{font-size:11px;color:var(--muted)}.ns-header select{width:125px;padding:8px}.ns-header .ns-soft{font-size:12px}.ns-commandbar{height:58px;flex-shrink:0;display:flex;gap:8px;align-items:center;padding:8px 18px;background:var(--paper);border-bottom:1px solid var(--border)}.ns-vertical-line{height:27px;border-left:1px solid var(--border);margin:0 5px}.ns-menu-anchor{position:relative}.ns-popover{position:absolute;top:calc(100% + 5px);left:0;z-index:15;min-width:196px;box-shadow:0 12px 30px #11213a1e;background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:6px;display:grid;grid-gap:3px;gap:3px}.ns-popover button{text-align:left;border:0;width:100%;padding:11px 10px}.ns-breadcrumb{color:var(--muted);font-size:11px;display:flex;align-items:center;gap:5px;max-width:32%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ns-breadcrumb>span:first-child{margin:0 4px}.ns-breadcrumb button{padding:4px 3px;border:0;color:var(--muted);font-size:11px}.ns-breadcrumb button:last-child{color:var(--ink);font-weight:700}.ns-mode{display:flex;gap:2px;padding:3px;background:var(--soft);border-radius:10px;border:1px solid var(--border)}.ns-mode button{border:0;background:transparent;border-radius:7px;padding:7px 12px;color:var(--muted)}.ns-mode button.active{background:var(--paper);color:var(--accent);box-shadow:0 1px 3px #1232}.ns-tabs{gap:0;overflow-x:auto;scrollbar-width:thin;flex-shrink:0;height:47px;min-height:47px;background:var(--paper);border-bottom:1px solid var(--border);padding:0 14px}.ns-tab,.ns-tabs{display:flex;align-items:stretch}.ns-tab{min-width:110px;max-width:230px;border-right:1px solid var(--border);border-bottom:3px solid transparent}.ns-tab.active{border-bottom-color:var(--accent);background:var(--accent-soft)}.ns-tab button{border:0!important;padding:0 15px!important;width:100%;text-align:left;background:transparent!important;overflow:hidden;text-overflow:ellipsis}.ns-tab.active button{color:var(--accent)}.ns-add-tab{align-self:center;border:0!important;padding:5px 13px!important;font-size:19px!important;background:transparent!important}.ns-main{display:flex;flex:1 1;min-height:0;overflow:hidden}.ns-left{width:220px;min-width:220px;padding:16px 12px;background:var(--paper);border-right:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column}.ns-panel-title{font-size:12px;font-weight:770;margin:6px 2px 11px}.ns-smalltext{font-size:11px;color:var(--muted);line-height:1.5;margin:0 2px 12px}.ns-shapes{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.ns-shapes button{height:75px;min-width:0;white-space:normal;flex-direction:column;gap:7px;font-size:11px;text-align:center}.ns-shapes button,.ns-shapes span{display:flex;align-items:center;justify-content:center}.ns-shapes span{width:29px;height:29px;border-radius:7px;font-size:18px;color:#243859}.ns-separated{border-top:1px solid var(--border);padding-top:18px;margin-top:20px}.ns-input-label{display:block;margin:10px 0 13px;font-size:11px;font-weight:670;color:var(--muted)}.ns-input-label input,.ns-input-label select,.ns-input-label textarea{margin-top:6px;font-size:13px;font-weight:400}.ns-tip{color:var(--muted);font-size:11px;line-height:1.65;padding:0 2px}.ns-button-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.ns-button-grid button{min-width:0}.ns-left-foot{display:grid;grid-gap:12px;gap:12px;margin-top:auto;padding:24px 3px 5px}.ns-canvas{position:relative;flex:1 1;min-width:220px;background:var(--bg)}.ns-canvas-info{position:absolute;z-index:5;left:16px;top:16px;background:var(--paper);border:1px solid var(--border);padding:10px 12px;border-radius:10px;box-shadow:0 2px 8px #122c4b0a;display:flex;gap:10px;align-items:center;pointer-events:none;max-width:75%}.ns-canvas-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ns-canvas-footer,.ns-canvas-info span{color:var(--muted);white-space:nowrap;font-size:11px}.ns-canvas-footer{bottom:12px;transform:translateX(-50%);pointer-events:none;border:1px solid var(--border);padding:8px 11px;border-radius:9px;box-shadow:0 2px 10px #0001;max-width:90%;overflow:hidden;text-overflow:ellipsis}.ns-canvas-footer,.ns-empty-message{position:absolute;left:50%;background:var(--paper)}.ns-empty-message{z-index:4;top:43%;transform:translate(-50%,-50%);text-align:center;width:min(350px,86%);border:1px dashed #aabbd3;border-radius:14px;padding:28px 23px;box-shadow:0 8px 30px #0c28580c}.ns-empty-message strong{font-size:18px}.ns-empty-message p{color:var(--muted);line-height:1.55}.ns-node{background:white;border:1px solid #c8d8e9;border-left:5px solid #8eafe0;border-radius:10px;box-shadow:0 5px 15px #172c4520;padding:12px 15px;min-width:155px;max-width:215px;color:#1c3552}.ns-node.ns-selected{outline:2px solid #2472ec;outline-offset:2px}.ns-node-kind{text-transform:uppercase;font-weight:780;font-size:10px;letter-spacing:.4px;opacity:.7;margin-bottom:8px}.ns-node-title{font-size:13px;line-height:1.4;font-weight:730;overflow-wrap:anywhere}.ns-node-note{font-size:11px;line-height:1.3;opacity:.72;margin-top:6px;max-height:30px;overflow:hidden}.ns-node-link{font-size:10px;margin-top:9px;color:#1b6ad3;background:#ebf3ff;border-radius:5px;padding:5px 7px;font-weight:700;display:flex;justify-content:space-between}.ns-node-link span{font-size:12px}.ns-handle{background:#4a81d5!important;width:9px!important;height:9px!important}.ns-right{width:270px;min-width:270px;background:var(--paper);border-left:1px solid var(--border);overflow-y:auto}.ns-right-tabs{display:flex;border-bottom:1px solid var(--border);padding:9px 10px 0;gap:5px}.ns-right-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;font-size:12px}.ns-right-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.ns-properties{padding:16px}.ns-properties .ns-info{color:var(--muted);line-height:1.6;font-size:12px}.ns-wide{width:100%}.ns-stack{display:grid;grid-gap:8px;gap:8px}.ns-page-list{margin-top:15px;display:grid;grid-gap:5px;gap:5px}.ns-page-row{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:8px;padding:5px;gap:4px}.ns-page-row.active{background:var(--accent-soft)}.ns-page-row .ns-page-link{min-width:0;flex:1 1;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.ns-page-row small{font-size:10px;color:var(--muted);display:block}.ns-page-row>div{display:flex}.ns-page-row>div button{padding:6px;border:0}.ns-toast{position:absolute;z-index:30;bottom:20px;left:50%;transform:translateX(-50%);color:white;background:#1c3a60;box-shadow:0 10px 28px #0003;border-radius:10px;padding:13px 17px;cursor:pointer;max-width:82vw}.ns-toast span{margin-left:10px}.ns-modal-cover{position:fixed;z-index:80;inset:0;background:#06162d88;display:flex;align-items:center;justify-content:center;padding:18px}.ns-modal{width:min(620px,96vw);max-height:80vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border-radius:16px;padding:21px;border:1px solid var(--border);box-shadow:0 18px 70px #0004}.ns-modal-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.ns-modal h2{font-size:19px;margin:0}.ns-modal p{font-size:12px;color:var(--muted);margin:6px 0 18px}.ns-modal-list{overflow-y:auto;margin-top:12px;display:grid;grid-gap:5px;gap:5px}.ns-modal-list>button{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;padding:13px}.ns-modal-list small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.ns-dark .react-flow__controls button{background:#24334a;color:#fff}.ns-dark .react-flow__minimap{background:#233249!important}@media(max-width:1150px){.ns-left{width:185px;min-width:185px}.ns-right{width:235px;min-width:235px}.ns-shapes{grid-template-columns:1fr 1fr}.ns-commandbar{padding:8px}.ns-breadcrumb,.ns-product-label{display:none}}@media(max-width:760px){.ns-header{gap:7px;padding:7px;height:auto;min-height:52px;flex-wrap:wrap}.ns-header .ns-soft,.ns-header select,.ns-save-status{display:none}.ns-commandbar{overflow-x:auto;flex-shrink:0}.ns-left,.ns-right{position:absolute;z-index:20;top:163px;bottom:0;box-shadow:0 10px 35px #0002}.ns-left{left:0}.ns-right{right:0}.ns-main{position:relative}.ns-canvas-footer{display:none}.ns-canvas-info{font-size:11px}.ns-mode{margin-left:auto}}