:root{font-family:Inter,system-ui,sans-serif;color:#e8eef8;background:#07111f}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#102b4d,#07111f 45%);min-height:100vh;color:#e8eef8}a{color:#75b8ff;text-decoration:none}.nav{display:flex;justify-content:space-between;align-items:center;padding:20px 6%;border-bottom:1px solid #203652;background:#07111fcc;position:sticky;top:0;backdrop-filter:blur(16px)}.nav nav{display:flex;gap:18px;align-items:center}.brand{font-weight:800;font-size:22px}.btn{display:inline-block;border:0;border-radius:10px;background:#1e88ff;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}.btn.secondary{background:#16273c}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center;padding:90px 7%}.hero h1{font-size:clamp(38px,6vw,72px);line-height:1.02;margin:12px 0}.hero p{font-size:19px;color:#abc0d8;max-width:700px}.eyebrow{color:#62b0ff;font-weight:700}.panel,.card,article,.metric-card{background:#0c1b2dcc;border:1px solid #24415f;border-radius:18px;box-shadow:0 20px 70px #0005}.panel{padding:28px}.metric{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #203652}.section,.dash{padding:35px 7% 70px}.section h2,.dash h1{font-size:38px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}article{padding:24px}article p{color:#abc0d8}.actions{display:flex;gap:14px;margin-top:28px}.auth{display:grid;place-items:center;padding:30px}.card{width:min(460px,94vw);padding:30px;display:grid;gap:16px}.card.wide{width:min(700px,94vw)}label{display:grid;gap:7px;font-weight:600}input{width:100%;background:#081522;border:1px solid #2e4a68;color:#fff;padding:12px;border-radius:9px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.alert,.success{padding:12px;border-radius:9px}.alert{background:#5d1e2b}.success{background:#144b39}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0}.metric-card{padding:22px}.metric-card span{display:block;color:#9db4cc}.metric-card strong{display:block;font-size:27px;margin-top:8px}footer{text-align:center;padding:35px;color:#8095aa}@media(max-width:850px){.hero,.grid,.metrics{grid-template-columns:1fr}.nav{align-items:flex-start}.nav nav{flex-wrap:wrap;justify-content:flex-end}.two{grid-template-columns:1fr}}
.nav a.active{color:#fff;background:#163558;padding:9px 12px;border-radius:9px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.page-head h1{margin:5px 0}.page-head p{margin:0;color:#9db4cc}.table-card{background:#0c1b2dcc;border:1px solid #24415f;border-radius:18px;overflow:hidden;box-shadow:0 20px 70px #0005}.table-title{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid #203652}.table-title h2{margin:0}.table-title span{color:#8fa8c1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:15px 18px;border-bottom:1px solid #1d344d}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#87a1ba}td{color:#dbe7f5}.empty{text-align:center;color:#8fa8c1}.badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#24364a}.badge.active,.badge.online{background:#15533e;color:#82f0bf}.badge.trial{background:#544414;color:#ffe889}.badge.expired,.badge.suspended,.badge.inactive{background:#5d1e2b;color:#ff9aaa}.price{font-size:28px;font-weight:800;margin:12px 0}.price small{font-size:13px;color:#8fa8c1}.admin-columns{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:22px}.plan-form{width:100%;align-self:start}.plan-form textarea,.plan-form select{width:100%;background:#081522;border:1px solid #2e4a68;color:#fff;padding:12px;border-radius:9px}.actions-cell{display:flex;gap:8px;align-items:center}.actions-cell form{margin:0}.mini-btn{display:inline-block;border:0;border-radius:8px;background:#1e88ff;color:#fff;padding:8px 10px;font-size:12px;font-weight:700;cursor:pointer}.mini-btn.secondary{background:#263a50}.block{display:block;color:#8098b0;margin-top:4px}.page-alert{margin-bottom:18px}@media(max-width:1000px){.admin-columns{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}}
.filters{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto auto;gap:12px;margin-bottom:20px;align-items:center}.filters select,.plan-form select{width:100%;background:#081522;border:1px solid #2e4a68;color:#fff;padding:12px;border-radius:9px}.wide-card{width:100%}.compact-card{width:100%;padding:22px}.top-gap{margin-top:22px}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.btn.danger{background:#a72d3d}.metric-card{transition:transform .18s ease,border-color .18s ease}.metric-card:hover{transform:translateY(-2px);border-color:#3a6b96}.table-card a strong{color:#dcecff}.page-head .badge{vertical-align:middle}.card p{color:#9db4cc}@media(max-width:850px){.filters{grid-template-columns:1fr}.actions-cell{min-width:150px}}

.onboarding{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.onboarding>div{padding:24px;border-right:1px solid #203652}.onboarding>div:last-child{border-right:0}.onboarding p,.hint{color:#8fa8c1;margin-bottom:0}.secret-card{margin-bottom:20px;padding:22px;border:1px solid #2f956c;background:#103d31;border-radius:16px;display:grid;gap:10px}.secret-card code{display:block;padding:14px;background:#071b16;border-radius:9px;font-size:clamp(15px,2vw,22px);letter-spacing:.08em;overflow-wrap:anywhere;color:#8affca}.secret-card small{color:#b7dacc}.table-wrap td{white-space:nowrap}.table-wrap td:nth-child(3){white-space:normal;min-width:160px}@media(max-width:850px){.onboarding{grid-template-columns:1fr}.onboarding>div{border-right:0;border-bottom:1px solid #203652}.onboarding>div:last-child{border-bottom:0}}


/* v1.4 Billing Clients */
.filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 190px 170px auto auto;gap:10px;align-items:center;margin:0 0 16px;padding:14px;border:1px solid var(--line);background:var(--panel);border-radius:16px}.filter-bar input,.filter-bar select{margin:0}.client-form{max-width:920px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.form-grid label{margin:0}.span-2{grid-column:1/-1}.actions-cell .danger,.mini-btn.danger{border-color:rgba(239,68,68,.45);color:#fecaca;background:rgba(127,29,29,.25)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.client-metrics{margin-bottom:16px}@media(max-width:900px){.filter-bar{grid-template-columns:1fr 1fr}.filter-bar input{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}@media(max-width:560px){.filter-bar{grid-template-columns:1fr}.filter-bar input{grid-column:auto}}

/* v1.5 Monthly Billing */
.billing-filter{grid-template-columns:220px 180px auto auto}.badge.unpaid{background:#5d1e2b;color:#ffb3bd}.badge.partial{background:#5a4514;color:#ffe08a}.badge.paid{background:#15533e;color:#82f0bf}.badge.void{background:#29384a;color:#aab9c8}select,textarea{width:100%;background:#081522;border:1px solid #2e4a68;color:#fff;padding:12px;border-radius:9px}@media(max-width:700px){.billing-filter{grid-template-columns:1fr}}


/* v1.6 Operations Center */
.metric-card small{display:block;color:#8098b0;margin-top:7px}.metric-card.good{border-color:#236c52}.metric-card.warn{border-color:#745b22}.ops-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:20px;margin:20px 0}.chart-card{min-height:330px}.bar-chart{height:270px;display:flex;align-items:flex-end;gap:18px;padding:26px 24px 18px}.bar-item{height:100%;flex:1;min-width:38px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.bar-track{height:190px;width:min(54px,80%);background:#071522;border:1px solid #213a54;border-radius:10px 10px 5px 5px;display:flex;align-items:flex-end;overflow:hidden}.bar-fill{width:100%;background:linear-gradient(180deg,#55adff,#176bd0);border-radius:8px 8px 0 0}.bar-value{font-size:11px;color:#91a9c0;white-space:nowrap}.snapshot-list{display:grid}.snapshot-list>div{display:flex;justify-content:space-between;gap:14px;padding:19px 22px;border-bottom:1px solid #1d344d}.snapshot-list>div:last-child{border-bottom:0}.snapshot-list span{color:#98afc6}.feed{display:grid}.feed-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:16px 20px;border-bottom:1px solid #1d344d}.feed-item:last-child{border-bottom:0}.feed-item p{margin:5px 0 0;color:#89a1b8;font-size:13px}.feed-item time{color:#728aa1;font-size:11px;white-space:nowrap}.feed-dot{width:10px;height:10px;border-radius:50%;background:#438dd6;margin-top:5px}.feed-dot.payment{background:#39c98d}.feed-dot.invoice{background:#f2b84b}.alert-icon{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;font-weight:900;background:#1f4d77;color:#9dd1ff}.alert-icon.warning{background:#644d18;color:#ffe08b}.alert-icon.danger{background:#662334;color:#ffacb8}.alert-icon.success{background:#14513b;color:#83edbe}.empty-pad{padding:28px;color:#8098b0;text-align:center}.monitor-filter{grid-template-columns:200px 240px auto}.notification-list{display:grid}.notification-row{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:19px 22px;border-bottom:1px solid #1d344d;background:#0c1b2d}.notification-row.read{opacity:.62;background:#091624}.notification-row p{margin:5px 0;color:#9ab0c5}.notification-row small{color:#70889e}.report-filter{grid-template-columns:220px 220px auto}.report-filter label{font-size:12px;color:#8ca4bb}.ring-wrap{display:grid;place-items:center;padding:35px}.ring{--pct:0;width:180px;height:180px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2c9cff calc(var(--pct)*1%),#13273b 0);position:relative}.ring:before{content:'';position:absolute;inset:18px;background:#0c1b2d;border-radius:50%}.ring strong{position:relative;font-size:31px}.ops-metrics{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.ops-grid{grid-template-columns:1fr}.ops-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.ops-metrics{grid-template-columns:1fr}.bar-chart{gap:8px;padding-left:10px;padding-right:10px}.bar-value{display:none}.monitor-filter,.report-filter{grid-template-columns:1fr}.feed-item{grid-template-columns:auto 1fr}.feed-item time{grid-column:2}}

/* v2.5 Network Operations Center */
.noc-shell{display:grid;gap:20px}.noc-head{align-items:center}.noc-live{display:flex;align-items:center;gap:10px;color:#8fa8c1;font-size:13px}.live-dot{width:10px;height:10px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 6px rgba(61,220,151,.12),0 0 18px rgba(61,220,151,.65);animation:nocPulse 1.8s infinite}.noc-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.noc-kpi{padding:20px;border:1px solid #24415f;border-radius:16px;background:linear-gradient(145deg,rgba(14,32,52,.96),rgba(8,21,35,.92));box-shadow:0 18px 45px rgba(0,0,0,.22);min-width:0}.noc-kpi span{display:block;color:#8fa8c1;font-size:12px;text-transform:uppercase;letter-spacing:.07em}.noc-kpi strong{display:block;font-size:28px;margin:9px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.noc-kpi small{color:#718aa3}.noc-kpi small b{color:#d7e6f5}.noc-kpi.money{border-color:#236c52}.noc-kpi.danger{border-color:#7b3542}.noc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.noc-grid.wide-left{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr)}.noc-panel{border:1px solid #24415f;border-radius:18px;background:#0c1b2dcc;overflow:hidden;box-shadow:0 20px 70px #0004}.noc-title{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #203652}.noc-title h2{margin:0;font-size:19px}.noc-title p{margin:5px 0 0;color:#7890a8;font-size:12px}.site-health{display:grid}.site-health-row{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(90px,.65fr));align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #1b3148}.site-health-row:last-child{border-bottom:0}.site-health-row>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:10px}.site-health-row strong{align-self:end}.site-health-row small{grid-column:2;color:#718aa3}.site-health-row>div:not(:first-child){display:grid;gap:5px}.site-health-row>div:not(:first-child)>span{font-size:11px;color:#70889f;text-transform:uppercase}.status-light{width:10px;height:10px;border-radius:50%;grid-row:1/3;align-self:center}.status-light.up{background:#3ddc97;box-shadow:0 0 14px #3ddc97}.status-light.down{background:#ef6375;box-shadow:0 0 12px rgba(239,99,117,.6)}.state{text-transform:capitalize}.state.online{color:#70eeb6}.state.offline,.state.error{color:#ff8999}.state.unconfigured{color:#d8b765}.gauge-stack{padding:20px;display:grid;gap:22px}.gauge-row{display:grid;grid-template-columns:1fr auto;gap:8px}.gauge-row span{color:#8fa8c1}.meter{grid-column:1/-1;height:10px;border-radius:999px;background:#071522;overflow:hidden;border:1px solid #203954}.meter i{display:block;height:100%;background:linear-gradient(90deg,#1979df,#57b5ff);border-radius:inherit;transition:width .5s ease}.health-numbers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.health-numbers div{padding:15px;border:1px solid #203954;border-radius:12px;background:#091725}.health-numbers span{display:block;color:#7890a8;font-size:12px}.health-numbers b{font-size:24px}.noc-feed{display:grid}.noc-feed-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:15px 18px;border-bottom:1px solid #1b3148}.noc-feed-row:last-child{border-bottom:0}.noc-feed-row p{margin:4px 0 0;color:#7f97ae;font-size:12px}.noc-feed-row time{font-size:11px;color:#647d95;white-space:nowrap}.feed-pulse,.alert-pulse{width:10px;height:10px;border-radius:50%;margin-top:5px;background:#4aa7ff}.alert-pulse{width:24px;height:24px;margin:0;display:grid;place-items:center;border-radius:8px;font-style:normal;font-weight:800;background:#274b70}.alert-pulse.warning{background:#6b501a;color:#ffe087}.alert-pulse.danger{background:#702737;color:#ffadba}.alert-pulse.success{background:#15523c;color:#80efbb}.noc-empty{padding:30px;text-align:center;color:#728aa1}.good-empty{color:#6fd6a8}.quick-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick-strip a{padding:14px;text-align:center;border:1px solid #24415f;border-radius:12px;background:#0b1b2c;font-weight:700}.quick-strip a:hover{background:#12304d;border-color:#3e739f}@keyframes nocPulse{50%{opacity:.55;transform:scale(.85)}}@media(max-width:1250px){.noc-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.noc-grid,.noc-grid.wide-left{grid-template-columns:1fr}.site-health-row{grid-template-columns:1fr 1fr}.site-health-row>div:first-child{grid-column:1/-1}.quick-strip{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.noc-kpis{grid-template-columns:1fr 1fr}.site-health-row{grid-template-columns:1fr}.site-health-row>div:first-child{grid-column:auto}.noc-feed-row{grid-template-columns:auto 1fr}.noc-feed-row time{grid-column:2}.quick-strip{grid-template-columns:1fr}}@media(max-width:420px){.noc-kpis{grid-template-columns:1fr}}

/* v2.5.1 NOC top-priority layout patch */
.noc-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.noc-action{min-height:108px;padding:17px;border:1px solid #284866;border-radius:16px;background:linear-gradient(145deg,#10253b,#0a1929);display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center;box-shadow:0 14px 35px #0003;transition:.18s ease}.noc-action>span{grid-row:1/3;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#163c60;color:#8fd0ff;font-size:21px;font-weight:900}.noc-action strong{font-size:15px;align-self:end}.noc-action small{color:#7890a8;margin-top:3px}.noc-action:hover{transform:translateY(-2px);border-color:#4b86b7;background:linear-gradient(145deg,#15314d,#0b2035)}.noc-action.primary{border-color:#2878bd}.noc-action.success{border-color:#2a7659}.noc-action.success>span{background:#174c39;color:#86efbf}.noc-action.warning{border-color:#7c6227}.noc-action.warning>span{background:#554315;color:#ffe08a}.top-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.noc-kpi{display:block;color:inherit;transition:.18s ease}.noc-kpi:hover{transform:translateY(-2px);border-color:#4781b2}.noc-kpi.good{border-color:#236c52}.noc-kpi.warning{border-color:#7c6227}.noc-ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.noc-mini-kpi{padding:15px 17px;border:1px solid #24415f;border-radius:14px;background:#0a1929;display:grid;grid-template-columns:1fr auto;gap:5px;color:inherit}.noc-mini-kpi span{color:#8fa8c1;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.noc-mini-kpi strong{font-size:24px}.noc-mini-kpi small{grid-column:1/-1;color:#718aa3}.noc-mini-kpi:hover{background:#102943;border-color:#3d709b}@media(max-width:1250px){.noc-actions{grid-template-columns:repeat(3,1fr)}.top-kpis{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.top-kpis,.noc-ops-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.noc-actions,.top-kpis,.noc-ops-kpis{grid-template-columns:1fr}.noc-action{min-height:88px}}

/* v2.6 Live Metrics and Site Health */
.live-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.metric-canvas{display:block;width:100%;height:280px;padding:14px}.interface-list{display:grid}.interface-list>div{display:grid;grid-template-columns:1fr auto;gap:5px;padding:15px 20px;border-bottom:1px solid #1b3148}.interface-list>div:last-child{border-bottom:0}.interface-list span{color:#78dcae;text-transform:capitalize}.interface-list small{grid-column:1/-1;color:#718aa3}.site-health-row a{color:#e8eef8}.site-health-row a:hover{color:#75b8ff}.live-health-kpis{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.live-chart-grid{grid-template-columns:1fr}.live-health-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.live-health-kpis{grid-template-columns:1fr}}

.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.support-card{padding:20px}.support-form{display:grid;gap:14px}.support-form textarea{resize:vertical}.support-error{padding:14px;border-radius:12px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);white-space:pre-wrap}.agent-log-view{max-height:520px;overflow:auto;padding:8px 16px 18px}.agent-log-view>div{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid rgba(148,163,184,.14)}.agent-log-view time{font-size:12px;color:#94a3b8}.agent-log-view code{white-space:pre-wrap;word-break:break-word;color:#dbeafe}@media(max-width:850px){.support-grid{grid-template-columns:1fr}.agent-log-view>div{grid-template-columns:1fr}}

/* Owner portal brand. The legacy header prints a fixed "My Network" label;
   keep the route intact while presenting the requested GGEZ ISP identity. */
.nav .brand[href="/dashboard"]{font-size:22px!important}
.nav .brand[href="/dashboard"]::after{content:none!important}

/* Never pin the dashboard telemetry strip over the main navigation. */
html body #liveStatusBar.live-status-bar,
html body .live-status-bar.live-status-compact{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  z-index:1!important;
}

/* Super Admin navigation link for the owner network. */
.nav a[href="/admin/my-network"]{font-size:0!important}
.nav a[href="/admin/my-network"]::after{content:'GGEZ ISP';font-size:15px!important}
.nav{z-index:100!important}

/* Unified WenzOS logo for Super Admin and customer headers. */
.nav .brand{
  width:52px!important;
  min-width:52px!important;
  height:52px!important;
  display:block!important;
  padding:0!important;
  border-radius:50%!important;
  background:url('/assets/images/wenzos-logo.png') center/cover no-repeat!important;
  box-shadow:0 0 22px rgba(38,147,255,.30)!important;
  font-size:0!important;
  overflow:hidden!important;
}
.nav .brand::before,.nav .brand::after{content:none!important}

/* These internal tools remain reachable by URL but are hidden from navigation. */
.nav a[href="/admin/security"],
.nav a[href="/admin/developer"]{display:none!important}
