.lang-switcher-btn{font-size:12px;font-weight:600;letter-spacing:.04em;color:#9eb6d6}.lang-switcher-btn:hover{color:#64ffda!important}.lang-switcher-btn--floating{position:absolute;top:22px;right:26px;z-index:6;height:34px;padding:0 12px;border:1px solid rgba(100,255,218,.24);border-radius:8px;background:#0b25459e}.nb-app-layout{min-height:100vh;background:radial-gradient(1200px 800px at 12% -10%,rgba(2,132,199,.1),transparent 60%),radial-gradient(1000px 700px at 110% 10%,rgba(20,184,166,.08),transparent 55%),linear-gradient(180deg,#0a1929,#0f172a,#0a1929);color:#f8fafc}.nb-top-header{position:sticky;top:0;z-index:50;height:64px;padding:0;line-height:64px;background:linear-gradient(180deg,#0b1329fa,#0b1329e6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(2,132,199,.2);box-shadow:0 2px 16px #00000080}.nb-top-header-inner{height:100%;max-width:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.nb-brand{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}.nb-brand-btn{display:inline-flex;align-items:center;gap:12px;padding:4px 10px 4px 4px;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .12s ease,background .16s ease}.nb-brand-btn:hover{border-color:#14b8a659;background:linear-gradient(145deg,#0284c70f,#14b8a60a);box-shadow:0 2px 12px #00000073,0 0 18px #14b8a61a;transform:translateY(-1px)}.nb-brand-btn:active{transform:translateY(1px);box-shadow:0 0 6px #00000073,inset 0 1px 3px #0006}.nb-brand-logo{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;color:#14b8a6;background:linear-gradient(145deg,#0284c72e,#14b8a624);border:1px solid rgba(20,184,166,.38);border-radius:8px;box-shadow:0 0 14px #14b8a647,inset 0 0 10px #0284c71f;text-shadow:0 0 8px rgba(20,184,166,.55);flex:0 0 auto}.nb-brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}.nb-brand-title{font-family:JetBrains Mono,Consolas,monospace;font-size:17px;font-weight:700;letter-spacing:.14em;color:#e6f1ff;text-shadow:0 0 10px rgba(2,132,199,.25);white-space:nowrap}.nb-brand-divider{width:1px;height:28px;background:linear-gradient(180deg,transparent,rgba(2,132,199,.4),transparent);margin:0 4px;flex:0 0 auto}.nb-top-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:0}.nb-tech-specs{display:flex;align-items:center;gap:16px;font-size:12px;color:#94a3b8}.nb-tech-specs>span{display:inline-flex;align-items:center;gap:6px}.nb-tech-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.nb-tech-blue{background:#0284c7;box-shadow:0 0 8px #0284c799}.nb-tech-teal{background:#14b8a6;box-shadow:0 0 8px #14b8a699}.nb-top-lang{display:flex;align-items:center;padding-left:12px;border-left:1px solid rgba(2,132,199,.2)}.nb-user-menu{display:flex;align-items:center;gap:10px;padding:4px 8px;margin-left:12px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease}.nb-user-menu:hover,.nb-user-menu:focus-visible{background:#0284c71f;border-color:#0284c74d;outline:none}.nb-user-meta{display:flex;flex-direction:column;line-height:1.1;min-width:0}.nb-user-name{font-size:13px;font-weight:600;color:#e6f1ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-user-role{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0ea5e9;font-family:JetBrains Mono,Consolas,monospace;margin-top:3px;display:inline-flex;align-items:center;gap:5px}.nb-user-caret{font-size:10px;color:#64748b;margin-left:2px;transition:transform .15s ease}:global(.nb-user-dropdown .ant-dropdown-menu){background:#0f1a30fa;border:1px solid rgba(2,132,199,.28);border-radius:10px;padding:4px;box-shadow:0 12px 30px #00000073}:global(.nb-user-dropdown .ant-dropdown-menu-item){border-radius:6px;font-size:13px;color:#cbd5e1}:global(.nb-user-dropdown .ant-dropdown-menu-item:hover),:global(.nb-user-dropdown .ant-dropdown-menu-item-active){background:#0284c729!important;color:#e6f1ff!important}:global(.nb-user-dropdown .ant-dropdown-menu-item-danger){color:#ef4444!important}:global(.nb-user-dropdown .ant-dropdown-menu-item-danger:hover){background:#ef444424!important;color:#f87171!important}.nb-avatar{background:linear-gradient(145deg,#0284c7,#14b8a6)!important;color:#0b1c2e!important;font-weight:700!important;border:1.5px solid rgba(20,184,166,.5);box-shadow:0 0 10px #14b8a659}.nb-header-gridline{position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(2,132,199,.45) 20%,rgba(20,184,166,.4) 50%,rgba(2,132,199,.45) 80%,transparent 100%);filter:blur(.3px);pointer-events:none}.nb-action-btn{width:40px!important;height:40px!important;border-radius:8px!important;border:1px solid rgba(2,132,199,.24)!important;background:linear-gradient(145deg,#0f172ad9,#0b1329d9)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:17px!important;color:#94a3b8!important;transition:all .16s ease!important}.nb-action-btn:hover{color:#14b8a6!important;border-color:#14b8a67a!important;text-shadow:0 0 6px rgba(20,184,166,.45);box-shadow:0 0 14px #14b8a629!important;transform:translateY(-1px)!important}.nb-mobile-menu-btn{display:none!important}.nb-main-content{padding:18px 24px 24px;flex:1 1 auto;min-height:0;min-width:0;height:calc(100vh - 64px);display:flex;flex-direction:column;box-sizing:border-box;overflow:auto;position:relative}.nb-body-layout{display:flex;flex-direction:row;flex:1;min-height:0;background:transparent!important;transition:padding-left .18s ease}.nb-side-sider{background:linear-gradient(180deg,#0b1329fa,#080e1efa)!important;border-right:1px solid rgba(2,132,199,.16)!important;position:relative;display:flex!important;flex-direction:column;overflow:visible!important}.nb-side-sider:before{content:"";position:absolute;top:0;right:-1px;bottom:0;width:1px;background:linear-gradient(180deg,transparent,rgba(2,132,199,.35) 20%,rgba(20,184,166,.3) 50%,rgba(2,132,199,.35) 80%,transparent);filter:blur(.3px);pointer-events:none;transition:opacity .18s ease;z-index:2}.nb-side-sider.ant-layout-sider-collapsed:before{opacity:0}.nb-body-layout{transition:all .18s ease}.nb-side-menu{background:transparent!important;color:#d4e3f0!important;border-inline-end:none!important;padding:8px 10px 12px!important;flex:1 1 auto;min-height:0}:global(.nb-side-menu .ant-menu-item),:global(.nb-side-menu .ant-menu-submenu-title){margin:4px 0!important;border-radius:8px!important;height:42px!important;line-height:42px!important;font-size:13.5px!important;font-weight:500!important;color:#9eb6d6!important;transition:all .14s ease!important}:global(.nb-side-menu .ant-menu-item:hover),:global(.nb-side-menu .ant-menu-submenu-title:hover){background:#14b8a61a!important;color:#14b8a6!important}:global(.nb-side-menu .ant-menu-item-selected){background:linear-gradient(135deg,#0284c738,#14b8a638)!important;color:#f8fafc!important;font-weight:700!important;border:1px solid rgba(20,184,166,.3)!important;box-shadow:0 0 14px #14b8a638,inset 0 1px #ffffff0d!important}:global(.nb-side-menu .ant-menu-item-selected):before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:3px;height:22px;background:linear-gradient(180deg,#0284c7,#14b8a6);border-radius:2px;box-shadow:0 0 8px #14b8a6b3}:global(.nb-side-menu .ant-menu-item-selected .anticon),:global(.nb-side-menu .ant-menu-submenu-selected .ant-menu-submenu-title .anticon){color:#14b8a6!important}:global(.nb-side-menu.nb-side-menu-collapsed .ant-menu-item),:global(.nb-side-menu.nb-side-menu-collapsed .ant-menu-submenu-title){justify-content:center!important;padding-inline:0!important}:global(.nb-side-menu.nb-side-menu-collapsed .ant-menu-item:before){display:none}.nb-side-lang{display:flex;align-items:center;justify-content:center;padding:10px 16px 0}.nb-side-user-mobile{border-top:1px solid rgba(2,132,199,.14);padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:linear-gradient(0deg,rgba(2,132,199,.06),transparent)}.nb-side-user-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto}.nb-side-user-meta{display:flex;flex-direction:column;line-height:1.1;min-width:0}.nb-side-user-name{font-size:13px;font-weight:600;color:#e6f1ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-side-user-role{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0ea5e9;font-family:JetBrains Mono,Consolas,monospace;margin-top:3px;display:inline-flex;align-items:center;gap:5px}.nb-logout-btn{color:#ef4444!important;width:36px!important;height:36px!important;border-radius:6px!important;border:1px solid rgba(239,68,68,.22)!important;transition:all .15s ease!important;flex:0 0 auto}.nb-logout-btn:hover{background:#ef44441a!important;border-color:#ef44448c!important;box-shadow:0 0 12px #ef444438!important}.nb-mobile-drawer-brand{display:flex;align-items:center}:global(.nb-mobile-drawer .ant-drawer-content){background:linear-gradient(180deg,#0b1329fc,#080e1efc)!important;border-right:1px solid rgba(2,132,199,.22)}:global(.nb-mobile-drawer .ant-drawer-header){border-bottom:1px solid rgba(2,132,199,.16)!important;background:#0b1329fa!important;color:#e6f1ff!important}@media(min-width:1280px){.nb-app-layout.sider-collapsed .nb-side-sider{width:64px!important;flex:0 0 64px!important;min-width:64px!important;max-width:64px!important}}@media(min-width:768px)and (max-width:1279px){.nb-top-header-inner{padding:0 18px;gap:10px}.nb-tech-specs{display:none}.nb-main-content{padding:14px 18px 18px}}@media(max-width:767px){.nb-top-header-inner{padding:0 14px;gap:8px}.nb-brand-divider,.nb-tech-specs{display:none}.nb-main-content{padding:12px 14px 16px;height:calc(100vh - 64px)}.nb-mobile-menu-btn{display:inline-flex!important;color:#94a3b8!important;width:40px!important;height:40px!important}}@media(prefers-reduced-motion:reduce){.nb-brand-btn,.nb-action-btn,.nb-logout-btn,.nb-app-layout,.nb-body-layout,:global(.nb-side-menu .ant-menu-item),:global(.nb-side-menu .ant-menu-submenu-title){transition:none!important;animation:none!important}.nb-brand-logo,.nb-tech-dot{box-shadow:none!important}}.nexusbit-login-page{position:relative;min-height:100vh;width:100%;display:grid;grid-template-columns:1.05fr .95fr;color:#f8fafc;background:linear-gradient(135deg,#0f172a,#0b1329,#0a2540);overflow:hidden;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif}.nb-bg-stations{position:absolute;inset:0;pointer-events:none;z-index:1;background-image:radial-gradient(circle,rgba(20,184,166,.55) 0px,rgba(20,184,166,.55) 1.5px,transparent 2px,transparent 100%);background-size:60px 60px;mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,transparent 82%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,transparent 82%);opacity:.6;animation:nb-breathe 8s ease-in-out infinite}@keyframes nb-breathe{0%,to{opacity:.45}50%{opacity:.7}}.nb-bg-wave{position:absolute;left:0;right:0;bottom:0;width:200%;height:38%;pointer-events:none;z-index:1}.nb-bg-wave-1{opacity:.9;animation:nb-wave-move-1 15s linear infinite}.nb-bg-wave-2{opacity:.75;bottom:-2%;animation:nb-wave-move-2 20s linear infinite}@keyframes nb-wave-move-1{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes nb-wave-move-2{0%{transform:translate(-25%)}to{transform:translate(-75%)}}.nb-bg-dataflow{position:absolute;top:-30%;left:-20%;width:60%;height:160%;pointer-events:none;z-index:1;background:linear-gradient(120deg,transparent 0%,transparent 40%,rgba(20,184,166,.05) 48%,rgba(2,132,199,.08) 50%,rgba(20,184,166,.05) 52%,transparent 60%,transparent 100%);filter:blur(8px);animation:nb-data-flow 18s ease-in-out infinite}@keyframes nb-data-flow{0%,to{transform:translate(-10%) skew(-18deg);opacity:.6}50%{transform:translate(30%) skew(-18deg);opacity:.9}}@media(prefers-reduced-motion:reduce){.nb-bg-stations,.nb-bg-wave,.nb-bg-dataflow{animation:none!important}}.nb-login-left{position:relative;padding:48px 64px 40px;display:flex;flex-direction:column;justify-content:space-between;z-index:2}.nb-login-brand{display:flex;align-items:center;gap:14px}.nb-brand-logo{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;font-size:24px;color:#14b8a6;background:linear-gradient(145deg,#14b8a62e,#0284c724);border:1px solid rgba(20,184,166,.4);border-radius:8px;box-shadow:0 0 18px #14b8a638,inset 0 0 14px #14b8a61a;filter:drop-shadow(0 0 6px rgba(20,184,166,.45))}.nb-brand-text{display:flex;flex-direction:column;gap:4px}.nb-brand-title{font-size:22px;font-weight:800;letter-spacing:.14em;color:#f8fafc}.nb-brand-mono{font-size:11px;letter-spacing:.28em;color:#94a3b8;text-transform:uppercase;font-family:JetBrains Mono,Consolas,monospace}.nb-login-hero{max-width:580px}.nb-login-title{font-size:46px!important;line-height:1.05!important;letter-spacing:.04em!important;margin:0 0 14px!important;color:#f8fafc!important;font-weight:800!important}.nb-title-accent{background:linear-gradient(90deg,#14b8a6,#0284c7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 0 14px rgba(20,184,166,.25))}.nb-login-subtitle-main{font-size:18px!important;line-height:1.4!important;color:#cbd5e1!important;margin:0 0 6px!important;letter-spacing:.02em!important;font-weight:500!important}.nb-login-subtitle-sub{font-size:13px!important;line-height:1.5!important;color:#94a3b8!important;margin:0 0 32px!important;letter-spacing:.04em!important}.nb-login-features{display:flex;flex-direction:column;gap:12px}.nb-feature-block{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#0f172aa6;border:1px solid rgba(51,65,85,.8);border-radius:8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color .2s ease,transform .2s ease}.nb-feature-block:hover{border-color:#14b8a673;transform:translate(2px)}.nb-feature-icon{width:40px;height:40px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:18px;color:#f59e0b;background:#f59e0b1f;border:1px solid rgba(245,158,11,.3);border-radius:8px;filter:drop-shadow(0 0 4px rgba(245,158,11,.3))}.nb-feature-icon--teal{color:#14b8a6;background:#14b8a624;border-color:#14b8a661;filter:drop-shadow(0 0 4px rgba(20,184,166,.32))}.nb-feature-icon--blue{color:#0284c7;background:#0284c724;border-color:#0284c761;filter:drop-shadow(0 0 4px rgba(2,132,199,.32))}.nb-feature-info{display:flex;flex-direction:column;gap:4px;min-width:0}.nb-feature-label{font-family:JetBrains Mono,Consolas,monospace;font-size:11px;letter-spacing:.18em;color:#94a3b8;text-transform:uppercase}.nb-feature-desc{font-size:14px;font-weight:600;color:#f8fafc;letter-spacing:.02em}.nb-login-footer-text{font-size:12px!important;letter-spacing:.06em!important;color:#64748b!important}.nb-login-right{position:relative;padding:48px 64px;display:flex;align-items:center;justify-content:center;z-index:2}.nb-login-panel{width:100%;max-width:420px;padding:34px 30px 28px;background:#1e293bb8;border:1px solid rgba(51,65,85,.9);border-radius:10px;box-shadow:0 24px 64px #0000008c,0 0 40px #0284c714,inset 0 1px #ffffff0a;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);position:relative}.nb-panel-corner{position:absolute;width:14px;height:14px;border-color:#14b8a6;opacity:.55}.nb-corner-tl{top:8px;left:8px;border-top:2px solid;border-left:2px solid}.nb-corner-tr{top:8px;right:8px;border-top:2px solid;border-right:2px solid}.nb-corner-bl{bottom:8px;left:8px;border-bottom:2px solid;border-left:2px solid}.nb-corner-br{bottom:8px;right:8px;border-bottom:2px solid;border-right:2px solid}.nb-login-panel-header{display:flex;align-items:center;gap:14px;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid rgba(51,65,85,.9)}.nb-login-lock-badge{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:#14b8a6;font-size:20px;background:linear-gradient(145deg,#14b8a62e,#0284c71f);border:1px solid rgba(20,184,166,.42);border-radius:8px;box-shadow:0 0 14px #14b8a638;filter:drop-shadow(0 0 4px rgba(20,184,166,.35))}.nb-login-panel-title{margin:0!important;font-size:21px!important;font-weight:700!important;color:#f8fafc!important;letter-spacing:.04em!important;line-height:1.2!important}.nb-login-alert{margin-bottom:20px;border-radius:8px!important;background:#ef444414!important;border:1px solid rgba(239,68,68,.38)!important}.nb-login-alert :global(.ant-alert-message),.nb-login-alert :global(.ant-alert-description){color:#fca5a5!important}.nb-login-form :global(.ant-form-item-label>label){color:#94a3b8!important;font-size:12px!important;font-weight:600!important;letter-spacing:.08em!important}.nb-input-prefix{color:#14b8a6;filter:drop-shadow(0 0 3px rgba(20,184,166,.45))}.nb-login-input{background:#0f172acc!important;border:1px solid rgba(51,65,85,1)!important;border-radius:8px!important;color:#f8fafc!important;transition:border-color .16s ease,box-shadow .16s ease}.nb-login-input:hover{border-color:#14b8a68c!important}.nb-login-input:focus-within{border-color:#0284c7!important;box-shadow:0 0 0 3px #0284c72e!important}.nb-login-input :global(input),.nb-login-input :global(input.ant-input){background:transparent!important;color:#f8fafc!important;letter-spacing:.02em}.nb-login-input :global(input::placeholder){color:#94a3b88c!important}.nb-login-submit{height:48px!important;margin-top:8px;font-size:14px!important;font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;border-radius:8px!important;background:linear-gradient(100deg,#0284c7,#14b8a6)!important;border:none!important;color:#fff!important;box-shadow:0 6px 20px #0284c74d,0 0 24px #14b8a61f,inset 0 1px #ffffff38,inset 0 -2px #0a3c5a73;transition:transform .12s ease,box-shadow .16s ease,filter .12s ease;text-shadow:0 1px 0 rgba(0,0,0,.2)}.nb-login-submit:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 10px 28px #0284c761,0 0 30px #14b8a62e,inset 0 1px #ffffff47,inset 0 -2px #0a3c5a73}.nb-login-submit:active{transform:translateY(2px);filter:brightness(.96);box-shadow:0 3px 10px #0284c738,0 0 18px #14b8a61a,inset 0 1px #ffffff2e,inset 0 -1px #0a3c5a80}.nb-login-spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:10px;z-index:5}@media(max-width:1024px){.nexusbit-login-page{grid-template-columns:1fr}.nb-login-left{padding:36px 28px 16px;min-height:auto}.nb-login-hero{max-width:100%}.nb-login-title{font-size:34px!important}.nb-login-subtitle-main{font-size:16px!important}.nb-login-features{gap:10px}.nb-feature-block{padding:12px 14px}.nb-feature-icon{width:36px;height:36px;font-size:16px}.nb-feature-desc{font-size:13px}.nb-login-right{padding:16px 28px 48px}.nb-login-footer,.nb-bg-dataflow,.nb-bg-wave-2{display:none}}@media(max-width:480px){.nb-login-left{padding:28px 20px 12px}.nb-login-right{padding:12px 20px 40px}.nb-login-title{font-size:28px!important}.nb-login-panel{padding:28px 22px 22px}}.nb-dashboard-page{display:flex;flex-direction:column;gap:16px;width:100%}.nb-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.nb-dashboard-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.nb-station-select{width:360px;min-width:280px;min-height:48px}.nb-station-select .ant-select-selector{background:linear-gradient(135deg,#0f172ae6,#142d46d9)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border:1px solid rgba(20,184,166,.35)!important;border-radius:12px!important;box-shadow:0 0 0 1px #14b8a614,0 8px 28px #0284c72e,inset 0 1px #94a3b814!important;padding:4px 16px!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.nb-station-select:hover .ant-select-selector{border-color:#14b8a6b3!important;box-shadow:0 0 0 1px #14b8a62e,0 10px 32px #14b8a640,inset 0 1px #94a3b81a!important;transform:translateY(-1px)!important}.nb-station-select.ant-select-focused .ant-select-selector,.nb-station-select.ant-select-open .ant-select-selector{border-color:#14b8a6!important;box-shadow:0 0 0 2px #14b8a640,0 12px 36px #14b8a652,inset 0 1px #94a3b81f!important}.nb-station-select .ant-select-selection-item,.nb-station-select .ant-select-selection-placeholder{font-size:15px!important;font-weight:600!important;color:#f1f5f9!important;line-height:40px!important;letter-spacing:.01em!important}.nb-station-select .ant-select-selection-placeholder{color:#64748b!important;font-weight:400!important}.nb-station-select .ant-select-arrow{color:#14b8a6!important;font-size:14px!important;margin-right:4px!important}.nb-station-select .ant-select-clear{color:#64748b!important;background:#0f172a99!important;margin-right:4px!important}.nb-station-select .ant-select-clear:hover{color:#f8fafc!important}@media(max-width:768px){.nb-station-select{width:100%;min-width:100%}}@media(max-width:768px){.nb-dashboard-head{grid-template-columns:1fr}}.nb-dashboard-alarms{justify-self:end;width:100%;max-width:340px;display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#0f172a99;border:1px solid #334155;border-radius:10px}.nb-alarms-head{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:#f8fafc}.nb-alarms-head .anticon{color:#ef4444;font-size:20px}.nb-alarms-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef4444;color:#fff;font-size:.72rem;font-weight:700}.nb-alarms-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:168px;overflow-y:auto}.nb-alarm-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:8px}.nb-alarm-item-main{display:flex;flex-direction:column;gap:4px;min-width:0}.nb-alarm-item-type{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:#f8fafc}.nb-alarm-item-type .ant-tag{margin:0}.nb-alarm-item-sub{display:flex;gap:8px;font-size:.72rem;color:#94a3b8}@media(max-width:768px){.nb-dashboard-alarms{justify-self:stretch;max-width:100%}}.nb-metric-row{margin:0!important}.nb-metric-card{position:relative;overflow:hidden;border:1px solid #334155;background:#0f172a99;border-radius:10px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.nb-metric-card:hover{transform:translateY(-1px);border-color:#0284c773;box-shadow:0 6px 18px #0284c724}.nb-metric-card--admin{border-color:#f59e0b66;background:#f59e0b0d}.nb-metric-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.nb-metric-name{font-size:.85rem;color:#94a3b8}.nb-metric-value{font-size:1.8rem;font-weight:700;color:#f8fafc;line-height:1.2;letter-spacing:.02em}.nb-level-warn{color:#f59e0b}.nb-level-danger{color:#ef4444}.nb-metric-unit{font-size:.8rem;color:#94a3b8;margin-top:4px}.nb-metric-icon{font-size:18px}.nb-teal{color:#14b8a6}.nb-blue{color:#0284c7}.nb-amber{color:#f59e0b}.nb-danger{color:#ef4444}.nb-dashboard-card{border:1px solid #334155;background:#1e293bbf;border-radius:10px}.nb-dashboard-card .ant-card-body{padding:16px 20px}.nb-card-title-icon.nb-amber-icon{color:#f59e0b}.nb-live-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e26;animation:nb-live-pulse 2s ease-in-out infinite}.nb-live-dot--warn{background:#f59e0b;box-shadow:0 0 0 3px #f59e0b26}@keyframes nb-live-pulse{0%,to{opacity:1}50%{opacity:.45}}.nb-map-box{position:relative;height:380px;border:1px solid #334155;border-radius:8px;overflow:hidden}.nb-map-canvas{width:100%;height:100%}.nb-map-fallback{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:.85rem;background:#0f172a99}.nb-map-overlay{position:absolute;left:10px;bottom:10px;z-index:10;display:flex;flex-direction:column;gap:2px;background:#0f172ad9;border:1px solid rgba(51,65,85,.8);border-radius:6px;padding:8px 12px;font-size:.78rem;line-height:1.5;color:#94a3b8;pointer-events:none}.nb-map-overlay strong{color:#f8fafc;font-size:.82rem}.nb-map-overlay-status{display:inline-flex;align-items:center}.nb-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:991px){.nb-charts-row{grid-template-columns:1fr}}.nb-chart-box{position:relative;height:240px}.nb-chart-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;background:#0f172aa6;border-radius:6px;color:#94a3b8;font-size:.85rem}.nb-chart-banner{position:absolute;top:8px;left:50%;transform:translate(-50%);white-space:nowrap;background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);color:#fbbf24;font-size:.75rem;padding:4px 12px;border-radius:6px}@media(prefers-reduced-motion:reduce){.nb-metric-card,.nb-metric-card *{transition:none!important}.nb-live-dot{animation:none!important}}.nb-stations-page{display:flex;flex-direction:column;gap:16px}.nb-stations-page .nb-station-id{font-weight:600;color:#f8fafc}.nb-stations-page .nb-row-selected>td{background:#14b8a61a!important}.nb-station-info{position:absolute;left:16px;bottom:16px;z-index:2;width:280px;padding:14px 16px;border-radius:10px;background:#0f172aeb;border:1px solid rgba(20,184,166,.35);box-shadow:0 8px 24px #0206178c;display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:#cbd5e1;pointer-events:auto}.nb-station-info-head{display:flex;align-items:center;justify-content:space-between;color:#f8fafc}.nb-station-info-actions{display:flex;gap:8px;margin-top:6px}.nb-stations-page .nb-map-overlay{left:10px;top:10px;bottom:auto}.nb-th-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(148,163,184,.15);flex-wrap:nowrap}.nb-th-row:last-child{border-bottom:none}.nb-th-label{flex:1 1 auto;font-weight:600}.nb-th-pair{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.nb-th-cap{color:#94a3b8;font-size:.8rem;white-space:nowrap}.nb-station-map-picker{position:relative;margin-bottom:20px}.nb-station-map-canvas{width:100%;height:260px;border-radius:10px;overflow:hidden;cursor:crosshair}.nb-station-map-canvas [aria-label=Map]{cursor:crosshair!important}.nb-station-map-hint{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:8px;background:#0f172ad9;border:1px solid rgba(20,184,166,.35);color:#cbd5e1;font-size:.8rem;pointer-events:none}.nb-devices-page{display:flex;flex-direction:column;gap:16px}.nb-devices-page .nb-device-id{font-weight:600;color:#f8fafc}.nb-status-cell{display:inline-flex;align-items:center;gap:8px}.nb-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.nb-device-filters{row-gap:12px}.nb-filter-item{display:inline-flex;align-items:center;gap:8px}.nb-filter-label{color:#94a3b8;font-size:.85rem;white-space:nowrap}.nb-device-detail .ant-typography{margin-top:20px}.nb-device-detail .ant-typography:first-child{margin-top:4px}.nb-history-page{display:flex;flex-direction:column;gap:16px}.nb-history-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.nb-filter-item{display:flex;align-items:center;gap:8px}.nb-history-count{margin-bottom:8px;color:#94a3b8;font-size:12px}.nb-admin-tag{margin-left:4px;padding:1px 6px;border-radius:4px;background:#f59e0b26;color:#f59e0b;font-size:10px;font-weight:600}.nb-history-pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px}.nb-history-pageinfo{color:#94a3b8;font-size:12px}.nb-trend-page{display:flex;flex-direction:column;gap:16px;width:100%}.nb-trend-title-tag{font-size:.72rem;font-weight:600;letter-spacing:.02em;color:#f59e0b;vertical-align:middle}.nb-trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.nb-trend-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nb-trend-select{width:260px}.nb-trend-date{width:180px}@media(max-width:768px){.nb-trend-controls{width:100%}.nb-trend-select,.nb-trend-date{flex:1 1 160px;width:auto}}.nb-trend-card{border:1px solid #334155;background:#1e293bbf;border-radius:10px}.nb-card-title{display:flex;align-items:center;gap:10px;font-size:.95rem;font-weight:600;color:#f8fafc;margin-bottom:14px}.nb-card-title-icon{display:inline-flex;color:#14b8a6;font-size:16px}.nb-card-title-extra{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:400;color:#94a3b8}.nb-trend-mock-tag{margin:0;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}.nb-trend-section{--accent: #14b8a6;margin-top:18px}.nb-trend-section:first-of-type{margin-top:6px}.nb-trend-section-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.nb-trend-section-tick{width:4px;height:14px;border-radius:2px;background:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 45%,transparent)}.nb-trend-section-title{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8}.nb-trend-admin-badge{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;font-size:.68rem;color:#ec4899;border:1px solid rgba(236,72,153,.45);border-radius:999px}.nb-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nb-trend-tile{min-width:0;padding:12px 14px 10px;border:1px solid #334155;border-radius:8px;background:#0f172a8c}.nb-trend-tile:last-child:nth-child(odd){grid-column:1 / -1}.nb-trend-tile-head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.nb-trend-tile-dot{align-self:center;width:9px;height:9px;border-radius:50%;flex:none}.nb-trend-tile-name{color:#e2e8f0;font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-trend-tile-unit{color:#64748b;font-size:.72rem;white-space:nowrap}.nb-trend-tile-latest{margin-left:auto;display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}.nb-trend-tile-latest b{font-size:1.05rem;font-weight:700;color:#f8fafc;font-variant-numeric:tabular-nums}.nb-trend-tile-latest i{font-style:normal;font-size:.7rem;color:#94a3b8}.nb-trend-tile-chart{position:relative;height:280px}@media(max-width:1280px){.nb-trend-tile-chart{height:240px}}@media(max-width:768px){.nb-trend-grid{grid-template-columns:1fr}.nb-trend-tile:last-child:nth-child(odd){grid-column:auto}.nb-trend-tile-chart{height:240px}.nb-card-title-extra{display:none}}.nb-alerts-page{display:flex;flex-direction:column;gap:16px}.nb-alerts-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.nb-alert-threshold{color:#94a3b8;font-size:12px;white-space:nowrap;padding-top:6px}.nb-alerts-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px}.nb-filter-label{color:#94a3b8;font-size:12px}.nb-alert-no{font-weight:600}.nb-alert-type{display:inline-flex;align-items:center;gap:6px}.nb-alert-volt{color:#ef4444;font-weight:600}.nb-alert-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:999px;font-size:12px}.nb-alert-pill--pending{color:#f59e0b;background:#f59e0b1f}.nb-alert-pill--confirmed{color:#14b8a6;background:#14b8a61f}.nb-alert-confirmed-text{color:#64748b}.nb-users-page{display:flex;flex-direction:column;gap:16px;width:100%}.nb-users-page .nb-users-username{font-weight:600;color:#f8fafc}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;width:100%}body{font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#061220;color:#d4e3f0;font-size:14px;line-height:1.5;letter-spacing:.005em}h1,h2,h3,h4,h5,h6{font-family:Inter,Segoe UI,system-ui,sans-serif;letter-spacing:-.01em;color:#e6f1ff;margin:0}button{font-family:inherit}::selection{background:#ffb84a4d;color:#e6f1ff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#061220a6}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffb84a73,#4ac48166);border:2px solid rgba(6,18,32,.75);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ffb84a99,#4ac4818c)}:focus-visible{outline:2px solid rgba(255,184,74,.75);outline-offset:2px;border-radius:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
