.nx-ws{position:relative;padding:14px;max-width:1800px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.nx-ws-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(16,185,129,.08),rgba(34,211,238,.06) 50%,rgba(139,92,246,.06));border:1px solid rgba(255,255,255,.07)}
.nx-ws-title{display:flex;align-items:center;gap:12px}
.nx-ws-title .ic{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#10b981 0%,#06b6d4 50%,#8b5cf6 100%);display:inline-flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 10px 30px -10px rgba(16,185,129,.5)}
.nx-ws-title h1{margin:0;font-size:22px;font-weight:980;letter-spacing:.2px;background:linear-gradient(90deg,#fff,#a5f3fc);-webkit-background-clip:text;background-clip:text;color:transparent}
.nx-ws-title p{margin:2px 0 0 0;color:#94a3b8;font-size:12.5px;font-weight:700}
.nx-ws-pills{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nx-ws-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;font-weight:850;font-size:11.5px;letter-spacing:.3px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#cbd5e1}
.nx-ws-pill.green{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.35);color:#86efac}
.nx-ws-pill.red{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.35);color:#fca5a5}
.nx-ws-pill.orange{background:rgba(251,146,60,.12);border-color:rgba(251,146,60,.35);color:#fdba74}
.nx-ws-pill .dot{width:7px;height:7px;border-radius:50%;background:currentColor}
@keyframes nxPulse{0%{opacity:1}50%{opacity:.35}100%{opacity:1}}
.nx-ws-pill.green .dot{animation:nxPulse 1.6s infinite}
.nx-ws-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:11px;font-weight:850;font-size:12.5px;cursor:pointer;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);color:#e2e8f0;transition:all .15s ease}
.nx-ws-btn:hover{background:rgba(255,255,255,.08);transform:translateY(-1px)}
.nx-ws-btn.primary{background:linear-gradient(135deg,#10b981,#06b6d4 55%,#8b5cf6);color:#fff;border:0;box-shadow:0 10px 26px -10px rgba(16,185,129,.55)}
.nx-ws-btn.danger{background:rgba(239,68,68,.1);color:#fca5a5;border-color:rgba(239,68,68,.3)}
.nx-ws-btn.orange{background:linear-gradient(135deg,#f59e0b,#fb923c);color:#fff;border:0}
.nx-ws-panels{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch}
@media (max-width:1100px){.nx-ws-panels{grid-template-columns:1fr}}
.nx-ws-panel{display:flex;flex-direction:column;background:linear-gradient(165deg,rgba(14,12,28,.9),rgba(10,9,22,.86));border:1px solid rgba(255,255,255,.07);border-radius:18px;overflow:hidden;min-height:520px;backdrop-filter:blur(10px)}
.nx-ws-panel-head{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}
.nx-ws-panel-title{display:flex;align-items:center;gap:10px}
.nx-ws-panel-title .lbl{font-size:11.5px;letter-spacing:2px;font-weight:900;color:#94a3b8;text-transform:uppercase}
.nx-ws-panel-title h2{margin:0;font-size:17px;font-weight:950;letter-spacing:.2px}
.nx-ws-panel[data-side="left"] h2{background:linear-gradient(90deg,#818cf8,#c4b5fd);-webkit-background-clip:text;background-clip:text;color:transparent}
.nx-ws-panel[data-side="right"] h2{background:linear-gradient(90deg,#10b981,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}
.nx-ws-panel-scope{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:850;padding:6px 10px;border-radius:999px;color:#94a3b8;border:1px solid rgba(255,255,255,.08);background:rgba(10,10,22,.5)}
.nx-ws-scope-sel{border:0;outline:0;background:rgba(34,211,238,.06);color:#e2e8f0;border-radius:8px;padding:5px 8px;font-weight:800;font-size:12px}
.nx-ws-panel-toolbar{display:flex;align-items:center;gap:7px;padding:10px 14px;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.05)}
.nx-ws-tbtn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03);color:#cbd5e1;transition:all .15s ease}
.nx-ws-tbtn:hover{background:rgba(255,255,255,.07)}
.nx-ws-tbtn:disabled{opacity:.35;cursor:not-allowed}
.nx-ws-tbtn.primary{background:linear-gradient(135deg,#10b981,#22d3ee);color:#0b0719;border:0}
.nx-ws-tbtn.danger{color:#fca5a5;border-color:rgba(239,68,68,.3);background:rgba(239,68,68,.08)}
.nx-ws-tbtn.orange{background:linear-gradient(135deg,#f59e0b,#ea580c);color:#fff;border:0}
.nx-ws-bc{padding:8px 14px 0 14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:#94a3b8;font-size:12.5px;font-weight:800;min-height:32px}
.nx-ws-bc span.cr{padding:4px 9px;border-radius:8px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);cursor:pointer;color:#e2e8f0}
.nx-ws-bc span.cr:hover{background:rgba(139,92,246,.12);border-color:rgba(139,92,246,.3)}
.nx-ws-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:18px 8px}
.nx-ws-arrow-col{display:flex;flex-direction:column;gap:10px}
.nx-ws-arrow{width:48px;height:48px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;border:1.3px solid rgba(255,255,255,.09);transition:transform .15s ease,background .15s ease,filter .15s ease}
.nx-ws-arrow.l2r{background:linear-gradient(135deg,#6366f1,#22d3ee);color:#fff;box-shadow:0 10px 26px -10px rgba(99,102,241,.55);border:0}
.nx-ws-arrow.r2l{background:linear-gradient(135deg,#10b981,#f59e0b);color:#fff;box-shadow:0 10px 26px -10px rgba(16,185,129,.5);border:0}
.nx-ws-arrow:hover{transform:translateY(-2px);filter:brightness(1.08)}
.nx-ws-arrow:disabled{opacity:.35;filter:grayscale(.5);cursor:not-allowed;transform:none!important}
.nx-ws-table{flex:1;overflow:auto}
.nx-ws-table table{width:100%;border-collapse:collapse}
.nx-ws-table th,.nx-ws-table td{text-align:left;padding:9px 14px;font-size:12.8px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.04)}
.nx-ws-table th{position:sticky;top:0;background:rgba(8,8,18,.9);backdrop-filter:blur(6px);color:#94a3b8;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;font-weight:950}
.nx-ws-table tr.item{cursor:pointer;transition:background .1s ease}
.nx-ws-table tr.item.sel{background:rgba(34,211,238,.09)}
.nx-ws-table tr.item:hover{background:rgba(255,255,255,.04)}
.nx-ws-table tr.item.sel:hover{background:rgba(34,211,238,.15)}
.nx-ws-empty{padding:40px 16px;text-align:center;color:#64748b;font-weight:750}
.nx-ws-log{padding:14px 18px;border-radius:16px;background:rgba(6,6,14,.82);border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:8px;min-height:160px}
.nx-ws-log h3{margin:0 0 4px 0;font-size:13px;letter-spacing:2px;font-weight:950;color:#cbd5e1;text-transform:uppercase}
.nx-ws-log .lines{flex:1;overflow:auto;max-height:180px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11.8px;color:#94a3b8;font-weight:650;line-height:1.55;padding:6px 2px}
.nx-ws-log .lines .t{color:#86efac}
.nx-ws-log .lines .e{color:#fca5a5}
.nx-ws-log .lines .w{color:#fdba74}
.nx-ws-row-ic{display:inline-flex;align-items:center;justify-content:center;width:22px;margin-right:8px}
