:root{--bg:#050505;--sidebar:#080808;--panel:#0b0b0c;--panel2:#0f1012;--line:#202124;--line2:#292a2d;--text:#f2f2f3;--muted:#8d929a;--blue:#4b8cff;--blue2:#78a8ff;--green:#29d391;--red:#ff5968;--yellow:#f2b84b;--shadow:0 12px 30px rgba(0,0,0,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.app{min-height:100vh;display:flex;background:#050505}.sidebar{position:fixed;left:0;top:0;bottom:0;width:238px;background:var(--sidebar);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 22px}.brand img{width:42px;height:42px;object-fit:contain}.brand b{display:block;font-size:16px;line-height:1.2}.brand span{display:block;color:#737982;font-size:11px;margin-top:3px}.nav-title,.eyebrow{font-size:10px;letter-spacing:.17em;color:#70757d;font-weight:800}.nav-title{padding:8px 9px 9px}.sidebar nav{display:grid;gap:3px}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:10px 11px;border:1px solid transparent;border-radius:8px;color:#9ca2aa}.sidebar nav a i{width:17px;text-align:center;color:#747b84}.sidebar nav a:hover{background:#101114;color:#e7e8ea}.sidebar nav a.active{background:#111820;border-color:#1d2d40;color:#f3f5f7}.sidebar nav a.active i{color:#79a9ff}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:14px 8px 4px}.admin-state{display:flex;align-items:center;gap:8px;margin-bottom:12px}.admin-state small,.admin-state b{display:block}.admin-state small{font-size:10px;color:#676d75}.admin-state b{font-size:11px;color:#cfd2d7;overflow:hidden;text-overflow:ellipsis;max-width:175px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(41,211,145,.1)}.logout{width:100%;background:#0e0f11;border:1px solid var(--line);color:#a7acb4;border-radius:7px;padding:8px 10px;text-align:left}.logout:hover{color:#fff;border-color:#34363a}.main{margin-left:238px;width:calc(100% - 238px);padding:28px 34px 60px;max-width:1800px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding-bottom:22px;margin-bottom:18px;border-bottom:1px solid #18191b}.topbar h1{font-size:30px;line-height:1.05;letter-spacing:-.025em;margin:7px 0 5px}.topbar p{margin:0;color:#7e848d;font-size:13px}.top-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.btn,.small-btn,.icon-btn{border:1px solid var(--line2);background:#0d0e10;color:#d8dbe0;border-radius:8px;padding:9px 12px;transition:.15s}.btn:hover,.small-btn:hover,.icon-btn:hover{border-color:#3b3d42;background:#141518;color:#fff}.btn-primary,.btn.primary{background:#edf1f6;color:#0b0c0d;border-color:#edf1f6;font-weight:750}.btn-primary:hover,.btn.primary:hover{background:#fff}.btn-light{background:#0c0d0f}.stats-grid{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:9px;margin-bottom:18px}.stat-card{background:#0a0b0d;border:1px solid var(--line);border-radius:9px;padding:13px 14px;min-height:82px}.stat-card span{display:block;color:#777e87;font-size:11px}.stat-card strong{display:block;font-size:26px;line-height:1;margin-top:9px}.stat-card.online strong{color:var(--green)}.stat-card.offline strong{color:var(--red)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:18px;box-shadow:var(--shadow);overflow:hidden}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #191a1c}.panel-header h2{margin:0;font-size:18px}.panel-header p{margin:5px 0 0;color:#777e88;font-size:12px}.pool-grid{padding:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.pool-card{background:#090a0c;border:1px solid #202226;border-radius:9px;padding:15px}.pool-card:hover{border-color:#30343a}.pool-title{display:flex;justify-content:space-between;gap:12px}.pool-title h3{font-size:15px;margin:0 0 4px}.pool-cidr{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:#737983}.icon-btn{width:34px;height:34px;padding:0}.pool-meta{display:flex;gap:6px;flex-wrap:wrap;margin:13px 0}.pool-meta span{font-size:10px;color:#9ba0a8;background:#111317;border:1px solid #202328;border-radius:999px;padding:4px 7px}.util{height:5px;background:#17191c;border-radius:99px;overflow:hidden}.util span{display:block;height:100%;background:#4d8cff}.pool-bottom{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:#747b84;font-size:10px}.pool-bottom b{color:#cdd0d5}.pool-actions{display:flex;gap:6px;margin-top:13px;flex-wrap:wrap}.small-btn{font-size:11px;padding:7px 9px}.danger-btn{color:#ff7a84}.monitor-active{color:#72dcae!important;border-color:#245944!important;background:#0c1712!important}.filters{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.filters input,.filters select,.card input,.card select,.card textarea,.modal input,.modal select,.modal textarea,.login-form input{width:100%;background:#070809;border:1px solid #25272a;color:#e5e7ea;border-radius:7px;padding:9px 10px;outline:none}.filters input{min-width:260px}.filters input:focus,.filters select:focus,.card input:focus,.card select:focus,.card textarea:focus,.modal input:focus,.modal select:focus,.modal textarea:focus,.login-form input:focus{border-color:#4a76b8;box-shadow:0 0 0 2px rgba(74,118,184,.1)}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:1120px}.table-wrap th{padding:10px 12px;text-align:left;color:#686f78;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:750;background:#090a0b;border-bottom:1px solid #1c1d20;white-space:nowrap}.table-wrap td{padding:10px 12px;border-bottom:1px solid #17181a;color:#c4c8ce;font-size:12px;vertical-align:middle;white-space:nowrap}.table-wrap tbody tr:hover{background:#0e0f11}.ip{font:600 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:#f1f2f4}.badge{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;border:1px solid #2a2c30}.b-usable{color:#69d9a8}.b-assigned{color:#78a7ff}.b-reserved{color:#e7bc63}.b-unusable,.b-broadcast,.b-network{color:#ff7882}.ping{display:inline-flex;align-items:center;gap:6px;font-size:11px}.ping-dot{width:6px;height:6px;border-radius:50%;background:#747a82}.ping.online{color:var(--green)}.ping.online .ping-dot{background:var(--green)}.ping.offline{color:var(--red)}.ping.offline .ping-dot{background:var(--red)}.ping.unknown{color:#9aa0a8}.loss.good{color:var(--green)}.loss.warn{color:var(--yellow)}.loss.bad{color:var(--red)}.muted{color:#5f646b}.row-actions{display:flex;gap:5px}.monitor-on{color:#61d8a4;font-size:10px}.monitor-on i{font-size:6px;margin-right:4px}.empty{padding:28px;text-align:center;color:#70767e}.settings-grid,.tool-grid{padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{background:#090a0c;border:1px solid #202226;border-radius:9px;padding:15px}.card h3{margin:0 0 13px;font-size:14px}.card label,.modal label,.login-form label{display:block;color:#8d939c;font-size:11px;margin-bottom:11px}.card textarea,.modal textarea{min-height:80px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:9px}.card .btn{margin-top:3px}.hint{color:#666d76;font-size:10px;line-height:1.5}.hint a{color:#7ea6e8}.list-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 16px;border-bottom:1px solid #18191b}.list-row:last-child{border-bottom:0}.list-row b,.list-row span{display:block}.list-row span{color:#6f757e;font-size:10px;margin-top:3px}.tool-grid pre{margin:10px 0 0;background:#060708;border:1px solid #1d1f22;padding:10px;border-radius:7px;color:#aab0b7;min-height:55px;overflow:auto}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.75);display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:#0b0c0e;border:1px solid #2a2c30;border-radius:11px;padding:20px;box-shadow:0 25px 90px rgba(0,0,0,.6)}.modal h2{margin:0 0 7px;font-size:19px}.modal p{color:#777e87;font-size:12px;margin:0 0 15px}.modal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:17px}.toast{position:fixed;right:22px;bottom:22px;z-index:200;background:#f0f2f5;color:#08090a;padding:10px 14px;border-radius:8px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s;font-size:12px}.toast.show{opacity:1;transform:none}.toast.error{background:#ff5d6c;color:#180406}.login-page{min-height:100vh;background:#050505;display:grid;place-items:center;padding:30px}.login-shell{width:min(430px,100%)}.login-brand{display:flex;align-items:center;gap:11px;margin:0 0 18px 2px}.login-brand img{width:45px;height:45px}.login-brand strong{display:block;font-size:18px}.login-brand span{display:block;color:#737982;font-size:11px}.login-panel{background:#0a0b0c;border:1px solid #242528;border-radius:12px;padding:25px;box-shadow:0 25px 80px rgba(0,0,0,.45)}.login-panel h1{font-size:27px;margin:8px 0 4px}.login-sub{margin:0 0 21px;color:#777e88;font-size:12px}.login-form label{color:#b3b7be;margin-bottom:15px}.field-hint{display:block;color:#656b73;font-size:9px;margin:3px 0 7px}.input-icon{position:relative}.input-icon i{position:absolute;left:11px;top:11px;color:#60666f;font-size:12px}.input-icon input{padding-left:34px}.login-submit{width:100%;border:0;border-radius:8px;padding:11px 13px;background:#f0f2f5;color:#08090a;font-weight:800;margin-top:2px}.login-submit:hover{background:#fff}.back-public{display:flex;justify-content:center;gap:7px;color:#8291a5;font-size:11px;margin-top:17px}.form-error{display:flex;gap:8px;align-items:center;background:#1b0c0e;border:1px solid #4b2026;color:#ff8b95;border-radius:7px;padding:9px 10px;font-size:11px;margin-bottom:14px}.login-foot{text-align:center;color:#4f545b;font-size:9px;margin-top:13px}.public-body{min-height:100vh;background:#050505;color:#edf0f3}.public-top{height:70px;padding:0 34px;background:#080808;border-bottom:1px solid #202124;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20}.public-brand{padding:0}.public-brand img{width:40px;height:40px}.public-brand b{font-size:16px}.public-brand span{font-size:10px}.public-top-actions{display:flex;align-items:center;gap:10px}.public-live{font-size:10px;color:#747b84}.public-live>span{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:5px}.public-main{max-width:1420px;margin:auto;padding:30px 34px 30px}.public-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:18px}.public-hero h1{font-size:31px;line-height:1.05;margin:7px 0 5px}.public-hero p{color:#7c838c;margin:0;font-size:12px}.public-updated-card{min-width:180px;padding:10px 13px;border:1px solid #242528;background:#0a0b0c;border-radius:8px}.public-updated-card span,.public-updated-card small{display:block;color:#666c74;font-size:9px}.public-updated-card strong{display:block;font-size:12px;margin:2px 0}.public-updated-card small b{color:#b8bec6}.public-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:13px}.public-summary>div{background:#0a0b0c;border:1px solid #202124;border-radius:9px;padding:14px}.public-summary span{display:block;color:#6d737b;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.public-summary b{display:block;font-size:25px;margin-top:5px}.public-summary small{display:block;color:#50565e;font-size:9px;margin-top:2px}.public-summary .pub-online b{color:var(--green)}.public-summary .pub-offline b{color:var(--red)}.public-toolbar{padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.public-toolbar-title{display:flex;gap:9px;align-items:center}.public-toolbar-title>i{color:#78a8ff}.public-toolbar-title b{display:block;font-size:11px}.public-toolbar-title span{display:block;color:#666d76;font-size:9px;margin-top:2px}.public-filter{display:flex;gap:6px;flex:1;justify-content:flex-end}.search-wrap{position:relative;flex:1;max-width:390px}.search-wrap i{position:absolute;left:10px;top:10px;color:#5f656d;font-size:11px}.search-wrap input{width:100%;padding-left:30px;background:#070809;border:1px solid #242528;color:#e7e9eb;border-radius:7px;padding-top:8px;padding-bottom:8px}.public-filter select{min-width:130px;background:#070809;border:1px solid #242528;color:#e7e9eb;border-radius:7px;padding:8px}.public-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:10px}.public-ip-card{background:#0a0b0c;border:1px solid #202124;border-radius:9px;overflow:hidden}.public-ip-head{padding:14px 15px 11px;border-bottom:1px solid #191a1c;display:flex;justify-content:space-between;gap:12px}.public-ip-head b{font:600 16px ui-monospace,SFMono-Regular,Consolas,monospace}.public-ip-head span{display:block;color:#666d76;font-size:9px;margin-top:3px}.public-state{padding:5px 8px;border:1px solid currentColor;border-radius:99px;font-size:8px;font-weight:800;text-transform:uppercase;align-self:flex-start}.public-state.online{color:var(--green)}.public-state.offline{color:var(--red)}.public-state.unknown{color:#9ba1a9}.public-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:11px 14px;margin:0}.public-metrics div{background:#08090a;border:1px solid #191b1e;border-radius:6px;padding:7px}.public-metrics span{display:block;color:#565c64;font-size:7px;text-transform:uppercase}.public-metrics b{display:block;font-size:11px;margin-top:2px}.public-locations{padding:9px 14px 11px;border-top:1px solid #191a1c}.public-locations>div{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #151619;font-size:9px;color:#858b94}.public-locations>div:last-child{border-bottom:0}.public-location-name{display:flex;align-items:center;gap:6px}.public-location-name i{color:#6c91c9}.public-locations b{color:#b9bec5}.public-empty{margin-top:14px;padding:55px 20px;text-align:center;border:1px dashed #27292d;border-radius:9px;background:#090a0b}.public-empty i{font-size:24px;color:#59616b}.public-empty h3{margin:10px 0 3px}.public-empty p{color:#656b73;font-size:11px}.public-footer{display:flex;justify-content:center;gap:18px;padding:24px 0 4px;color:#4f555d;font-size:9px}.public-footer a{color:#7c9dd0}@media(max-width:1250px){.stats-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1000px){.sidebar{width:210px}.main{margin-left:210px;width:calc(100% - 210px);padding:22px}.settings-grid,.tool-grid{grid-template-columns:1fr}.topbar{display:block}.top-actions{justify-content:flex-start;margin-top:14px}}@media(max-width:760px){.sidebar{position:static;width:100%;height:auto}.app{display:block}.main{margin:0;width:100%;padding:18px}.sidebar nav{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.topbar h1{font-size:25px}.panel-header{display:block}.filters{margin-top:12px;justify-content:stretch}.filters input{min-width:0}.filters select{flex:1;min-width:120px}.public-top{padding:0 18px}.public-top-actions .public-live{display:none}.public-main{padding:24px 18px}.public-hero{display:block}.public-updated-card{margin-top:15px;width:max-content}.public-summary{grid-template-columns:repeat(2,1fr)}.public-toolbar{display:block}.public-filter{margin-top:10px;display:grid;grid-template-columns:1fr 1fr}.search-wrap{grid-column:1/-1;max-width:none}.public-grid{grid-template-columns:1fr}.two{grid-template-columns:1fr}.login-page{padding:18px}}