@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{color-scheme:dark;font-family:Inter,Noto Sans SC,system-ui,sans-serif;color:#ecf4ff;background:#060b14;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:1180px;min-height:100vh;background:radial-gradient(circle at 65% 0%,#0b2140 0,#07101e 34%,#050a12 72%);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}.boot,.login-shell{min-height:100vh;display:grid;place-items:center;position:relative;overflow:hidden}.boot{gap:12px;align-content:center;color:#8fa5be}.boot svg{width:44px;height:44px;color:#49a2ff}.login-glow{position:absolute;width:660px;height:660px;border-radius:50%;background:#1870dd29;filter:blur(90px)}.login-card{width:420px;padding:46px;border-radius:22px;background:#0a1320f0;border:1px solid #1c3958;box-shadow:0 28px 90px #0009,inset 0 1px #ffffff0b;position:relative}.brand-mark{width:62px;height:62px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#1682f5,#215de2);box-shadow:0 14px 40px #147ce755;margin-bottom:28px}.brand-mark svg{width:34px;height:34px}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:.18em;color:#4d9fff}.login-card h1{font-size:32px;margin:9px 0 8px;letter-spacing:-.04em}.login-card>p{margin:0 0 30px;color:#8496aa;line-height:1.7;font-size:14px}.login-card label{display:block;color:#c2d0df;font-size:13px;margin:0 0 9px}.password-field{height:52px;border:1px solid #263b54;border-radius:11px;display:flex;align-items:center;padding:0 14px;gap:10px;background:#080f1a;transition:.2s}.password-field:focus-within{border-color:#2e8dff;box-shadow:0 0 0 3px #2288ff1f}.password-field svg{color:#5e7896;width:20px}.password-field input{flex:1;border:0;outline:0;background:none;color:#fff}.login-card>button{width:100%;height:52px;margin-top:18px;border:0;border-radius:11px;color:#fff;font-weight:700;background:linear-gradient(135deg,#168cff,#2763e9);box-shadow:0 12px 28px #147ce72e}.login-card>button:disabled{opacity:.5;cursor:default}.login-error{margin-top:12px;display:flex;gap:7px;align-items:center;color:#ff7888;font-size:13px}.login-error svg{width:18px}.secure-note{margin-top:18px;display:flex;gap:6px;justify-content:center;align-items:center;color:#596f87;font-size:11px}.app-shell{min-height:100vh;display:grid;grid-template-columns:236px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:#060c15f5;border-right:1px solid #15263a;padding:26px 16px 20px;display:flex;flex-direction:column;z-index:10}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 10px 29px}.sidebar-brand>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#1682f5,#2054cc)}.sidebar-brand svg{width:22px;height:22px}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-size:17px}.sidebar-brand small{color:#647b92;font-size:11px;margin-top:3px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{height:43px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:9px;border:0;border-radius:9px;padding:0 12px;color:#7f92a8;background:transparent;text-align:left}.sidebar nav button:hover{color:#b9c9db;background:#0e1928}.sidebar nav button.active{color:#eaf4ff;background:linear-gradient(90deg,#132b49,#0d1929);box-shadow:inset 3px 0 #2790ff}.sidebar nav svg{width:19px;height:19px}.sidebar nav b{min-width:22px;padding:2px 6px;border-radius:10px;background:#17273a;font-size:10px;text-align:center}.route-card{margin-top:28px;padding:15px;border-radius:11px;border:1px solid #173555;background:linear-gradient(145deg,#0d1d30,#09131f)}.route-card>span{font-size:11px;color:#58aaff;font-weight:700}.route-card p{margin:11px 0 0;color:#72869d;font-size:11px;line-height:1.55}.route-card b{color:#b8d7fb;margin-right:5px}.sidebar-bottom{margin-top:auto;border-top:1px solid #152334;padding:18px 7px 0;display:flex;align-items:center;justify-content:space-between}.secure{color:#48d08c;display:flex;gap:6px;align-items:center;font-size:11px}.sidebar-bottom button{color:#6f8298;background:none;border:0;display:flex;gap:5px;align-items:center;font-size:11px}.workspace{grid-column:2;padding:28px 30px 48px;max-width:1700px;width:100%;margin:0 auto}.topbar{height:68px;display:flex;align-items:flex-start;justify-content:space-between}.topbar h1{font-size:25px;margin:4px 0 0;letter-spacing:-.025em}.top-actions{display:flex;gap:12px;align-items:center}.top-actions>span,.top-actions button{height:36px;border-radius:8px;border:1px solid #1a2b40;background:#0a1320;color:#8295aa;padding:0 12px;display:flex;align-items:center;gap:7px;font-size:11px}.top-actions svg{width:16px;height:16px}.top-actions button{color:#b9cadc}.live-dot i{width:7px;height:7px;border-radius:50%;background:#36d98c;box-shadow:0 0 0 4px #36d98c1a}.error-banner{margin:0 0 16px;padding:11px 14px;border:1px solid #71303e;color:#ff91a0;background:#25121b;display:flex;gap:8px;align-items:center;border-radius:9px;font-size:12px}.panel{background:linear-gradient(145deg,#0c1624f5,#08101bf5);border:1px solid #172b41;border-radius:13px;box-shadow:0 14px 40px #00000020,inset 0 1px #ffffff05}.status-hero{min-height:154px;display:grid;grid-template-columns:1.45fr repeat(4,1fr);align-items:center;overflow:hidden}.node-identity{height:100%;padding:27px 24px;display:flex;align-items:center;gap:17px;background:radial-gradient(circle at 10% 10%,#123a6630,transparent 70%)}.node-orb{width:65px;height:65px;flex:0 0 65px;border-radius:19px;display:grid;place-items:center;border:1px solid #1c568a;background:#0a2540;color:#44a6ff;position:relative}.node-orb:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;right:-2px;top:-2px;background:#ff6579;box-shadow:0 0 0 4px #07101e}.node-orb.online:after{background:#3de194}.node-orb svg{width:36px;height:36px}.node-identity h2{margin:5px 0;font-size:21px}.node-identity h2 em{margin-left:7px;font-size:10px;font-style:normal;color:#45df96;background:#15352b;padding:3px 7px;border-radius:9px;vertical-align:middle}.node-orb.offline+div h2 em{color:#ff7486;background:#351722}.node-identity p{margin:0;color:#668099;font-size:10px}.metric{height:86px;padding:0 19px;border-left:1px solid #172b41;display:flex;gap:11px;align-items:center}.metric-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;color:#55a8ff;background:#102943}.metric.green .metric-icon{color:#48d894;background:#103128}.metric.orange .metric-icon{color:#f2a95c;background:#352718}.metric.purple .metric-icon{color:#a58bff;background:#241d43}.metric svg{width:20px;height:20px}.metric span,.metric strong,.metric small{display:block}.metric span{color:#697f97;font-size:10px}.metric strong{margin:5px 0 4px;font-size:18px;white-space:nowrap}.metric small{color:#53687e;font-size:9px;white-space:nowrap}.overview-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:15px;margin-top:15px}.current-task,.chart-panel{min-height:230px;padding:21px 23px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start}.panel-heading h2{font-size:16px;margin:5px 0 0}.panel-heading>span{color:#60768e;font-size:10px}.status{display:inline-flex;align-items:center;gap:5px;width:fit-content;border-radius:12px;padding:4px 8px;font-size:10px;font-weight:600;white-space:nowrap}.status svg{width:11px;height:11px}.status.queued{color:#e9aa5f;background:#332614}.status.processing{color:#62afff;background:#102c4b}.status.completed{color:#4bd898;background:#103126}.status.failed{color:#ff7585;background:#351620}.current-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:18px 0 0;border:1px solid #182b40;border-radius:9px}.current-grid>div{padding:11px 13px;border-right:1px solid #182b40}.current-grid>div:last-child{border:0}.current-grid span,.current-grid strong{display:block}.current-grid span{color:#60768d;font-size:9px;margin-bottom:5px}.current-grid strong{font-size:12px}.task-content{min-height:32px;color:#a9bbcd;font-size:12px;line-height:1.6;margin:12px 0}.progress-row{display:flex;gap:12px;align-items:center}.progress-track{flex:1;height:5px;border-radius:5px;background:#142235;overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,#1979eb,#46b8ff);border-radius:inherit;box-shadow:0 0 12px #248fff}.progress-row b{font-size:10px;color:#69b6ff}.stage-row{display:flex;align-items:center;gap:7px;color:#6f8da9;font-size:10px;margin-top:12px}.stage-row svg{color:#3a98f3;width:12px}.stage-row small{margin-left:auto;color:#50647a}.empty-state{align-items:center;display:flex;gap:18px}.empty-state>svg{width:44px;height:44px;color:#3bd48e}.empty-state h2{font-size:15px;margin:0 0 6px}.empty-state p{color:#60758b;font-size:11px;margin:0}.chart-wrap{position:relative;height:155px;margin-top:9px}.chart-total{position:absolute;z-index:1;left:3px;top:9px}.chart-total strong,.chart-total span{display:block}.chart-total strong{font-size:28px}.chart-total span{color:#60778f;font-size:9px;margin-top:3px}.chart{width:100%;height:113px;margin-top:34px;overflow:visible}.chart-labels{display:flex;justify-content:space-between;color:#4e6379;font-size:9px}.jobs-panel{margin-top:15px;overflow:hidden}.table-heading{padding:20px 22px 14px;align-items:center}.table-tools{display:flex;gap:8px}.table-tools label{height:34px;width:244px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid #1b3047;border-radius:8px;background:#080f1a}.table-tools svg{width:15px;color:#5d748c}.table-tools input{border:0;outline:0;width:100%;background:none;color:#dceaff;font-size:10px}.table-tools select{height:34px;border:1px solid #1b3047;border-radius:8px;background:#080f1a;color:#8ca2b9;font-size:10px;padding:0 26px 0 10px}.summary-strip{height:35px;display:flex;align-items:center;gap:23px;padding:0 22px;background:#09131f;border-top:1px solid #14263a;border-bottom:1px solid #14263a;color:#60758b;font-size:9px}.summary-strip b{color:#a9bed4}.table-scroll{max-height:520px;overflow:auto}table{width:100%;border-collapse:collapse;table-layout:fixed}th{position:sticky;top:0;z-index:1;height:38px;background:#0b1624;color:#526a82;text-align:left;font-size:9px;font-weight:600}th,td{padding:0 15px}th:nth-child(1){width:92px}th:nth-child(2){width:135px}th:nth-child(3){width:34%}th:nth-child(4){width:115px}th:nth-child(5){width:155px}th:nth-child(6){width:150px}td{height:61px;border-top:1px solid #132337;color:#b8c8d9;font-size:10px}tbody tr:hover{background:#0d1a29}td strong,td small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td strong{font-weight:600}td small{color:#536a82;margin-top:5px;font-size:9px}.content-cell strong{color:#cbd8e7}.node-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:6px;font-weight:600}.node-chip svg{width:13px;height:13px}.node-chip.gpu{color:#58adff;background:#102b47}.node-chip.vps{color:#a999ff;background:#241f42}.empty-table{min-height:150px;display:grid;place-items:center;align-content:center;color:#536a82;gap:5px;font-size:11px}.empty-table svg{width:28px;height:28px}.bottom-grid{margin-top:15px;display:grid;grid-template-columns:.75fr 1.25fr;gap:15px}.sources,.events{padding:20px 22px;min-height:220px}.source-row{display:grid;grid-template-columns:23px 1fr auto;align-items:center;padding:13px 0;border-top:1px solid #142538}.source-row:first-of-type{margin-top:13px}.source-row>span svg{width:16px;height:16px}.source-row .ok{color:#45d895}.source-row .bad{color:#ff7083}.source-row strong,.source-row small{display:block}.source-row strong{font-size:11px}.source-row small{color:#566d84;margin-top:4px;font-size:9px}.source-row em{font-size:9px;font-style:normal;color:#668099}.event-row{min-height:36px;display:grid;grid-template-columns:8px 58px 1fr 70px;align-items:center;gap:8px;border-top:1px solid #142538;font-size:9px}.event-row:first-of-type{margin-top:13px}.event-row>i{width:6px;height:6px;border-radius:50%;background:#4d6176}.event-row>i.completed{background:#42d792}.event-row>i.processing{background:#399cfa}.event-row>i.failed{background:#ff687d}.event-row>i.queued{background:#e5a452}.event-row time,.event-row>span{color:#536a81}.event-row p{margin:0;color:#7f94aa}.event-row b{color:#bbccde}.event-row>span{text-align:right}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1280px){.workspace{padding-inline:20px}.status-hero{grid-template-columns:1.3fr repeat(4,.9fr)}.metric{padding-inline:12px}}
