:root{
  --bg:#eef1f3;--bg-2:#f6f7f8;--surface:#ffffff;--surface-2:#f8fafb;--surface-3:#f1f4f6;
  --ink:#11181d;--ink-2:#26323a;--muted:#6f7b84;--muted-2:#929da5;--line:#dde3e7;--line-strong:#cfd7dc;
  --nav:#081015;--nav-2:#0d171e;--nav-3:#13212a;--accent:#35d9ad;--accent-2:#69f0c7;--blue:#6f8cff;
  --danger:#e55b61;--warning:#e9a948;--success:#2ebc91;--shadow:0 18px 60px rgba(16,27,35,.08);
  --shadow-soft:0 8px 28px rgba(16,27,35,.06);--radius:18px;--radius-sm:12px;
  --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);background:var(--bg)}body{font-size:14px;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.mono{font-family:var(--mono);font-size:.95em}.strong{font-weight:760}.muted{color:var(--muted)}.tiny{font-size:11px}.right{text-align:right}
.esn-logo{color:var(--accent);display:block;flex:none;filter:drop-shadow(0 6px 14px rgba(53,217,173,.12))}

/* Shell */
.app{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,#081015 0%,#0a1218 100%);color:#dfe7ec;position:sticky;top:0;height:100vh;padding:22px 15px;display:flex;flex-direction:column;border-right:1px solid #17242c;box-shadow:14px 0 50px rgba(5,11,15,.06);z-index:30}
.brand{display:flex;align-items:center;gap:12px;padding:2px 9px 23px}.brand strong{display:block;color:#fff;letter-spacing:.11em;font-size:12px;font-weight:830}.brand span{display:block;color:#6e808b;font-size:10px;margin-top:4px;letter-spacing:.03em}
.nav-label{font-size:9px;letter-spacing:.18em;color:#52636f;padding:18px 10px 8px;font-weight:850}.nav{display:flex;flex-direction:column;gap:3px}.nav a{padding:10px 11px;border-radius:9px;color:#8999a4;display:flex;gap:10px;align-items:center;font-weight:690;font-size:12px;transition:.16s ease}.nav a:hover{background:#101b22;color:#eaf0f3}.nav a.active{background:#14222a;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.nav .dot{width:6px;height:6px;border-radius:50%;background:#40515d;transition:.18s}.nav a.active .dot{background:var(--accent);box-shadow:0 0 0 4px rgba(53,217,173,.09),0 0 18px rgba(53,217,173,.3)}
.sidebar-bottom{margin-top:auto;border-top:1px solid #18252d;padding:16px 9px 0}.sidebar-bottom .who{font-size:12px;color:#d4dde2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-bottom .role{font-size:9px;color:#627581;text-transform:uppercase;letter-spacing:.13em;margin-top:4px}.logout{display:inline-block;margin-top:13px;color:#788994;font-size:11px}.logout:hover{color:#fff}
.main{min-width:0}.topbar{height:70px;background:rgba(238,241,243,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(205,215,220,.75);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20}.crumb{font-size:11px;color:#65727b;font-weight:720;letter-spacing:.02em}.content{padding:28px 30px 54px;max-width:1600px;margin:0 auto}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:23px}.page-head h1{margin:0;font-size:29px;letter-spacing:-.045em;font-weight:790}.page-head p{margin:7px 0 0;color:var(--muted);max-width:720px;line-height:1.55}.actions{display:flex;gap:9px;flex-wrap:wrap}
.eyebrow,.section-kicker{font-size:9px;letter-spacing:.18em;font-weight:880;color:#71808a;text-transform:uppercase}

/* Buttons */
.btn{border:1px solid var(--line);background:#fff;color:#1d2930;border-radius:9px;padding:9px 13px;font-weight:730;transition:.16s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 1px 1px rgba(17,24,29,.02)}.btn:hover{border-color:#bcc7ce;transform:translateY(-1px);box-shadow:0 6px 18px rgba(17,24,29,.06)}.btn.primary{background:#0c151b;border-color:#0c151b;color:#fff}.btn.primary:hover{background:#111e26;border-color:#111e26}.btn.accent{background:var(--accent);border-color:var(--accent);color:#07251e}.btn.danger{background:#fff6f6;border-color:#f1c9cb;color:#a43f45}.btn.ghost{background:transparent;box-shadow:none}.btn.sm{padding:7px 9px;border-radius:8px;font-size:11px}.btn.wide{width:100%}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}

/* Generic panels */
.grid{display:grid;gap:16px}.grid.metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;min-height:108px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#dce3e7}.metric .k{font-size:9px;color:var(--muted);font-weight:820;text-transform:uppercase;letter-spacing:.12em}.metric .v{font-size:29px;font-weight:800;letter-spacing:-.045em;margin-top:14px}.metric .sub{font-size:10px;color:var(--muted);margin-top:5px}.metric.hot:after{background:var(--danger)}.metric.hot .v{color:#be4a50}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 1px rgba(16,24,32,.02);overflow:hidden}.panel-head{padding:17px 19px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-head h2,.panel-head h3{margin:0;font-size:14px;letter-spacing:-.015em}.panel-head .meta{font-size:10px;color:var(--muted)}.panel-body{padding:19px}.panel + .panel{margin-top:16px}
.two-col{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.62fr);gap:16px}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.split-line{height:1px;background:var(--line);margin:18px 0}.callout{padding:12px 13px;background:#f4f7f8;border:1px solid #e0e6e9;border-radius:10px;color:#5e6b74;font-size:11px;line-height:1.55}

/* Tables */
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:760px}.table th{text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:#7e8a92;font-weight:840;padding:11px 14px;background:#fafbfc;border-bottom:1px solid var(--line)}.table td{padding:13px 14px;border-bottom:1px solid #edf0f2;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#fbfcfd}.empty{padding:38px 20px;text-align:center;color:var(--muted);font-size:11px}.empty strong{display:block;color:#39464f;font-size:12px;margin-bottom:5px}.peer-address{display:flex;align-items:center;gap:9px}.peer-rank{width:21px;height:21px;border-radius:7px;background:#f0f3f5;display:grid;place-items:center;font-size:9px;color:#7b8790}.peer-meter{width:120px;height:3px;border-radius:5px;background:#edf1f3;margin-top:6px;overflow:hidden}.peer-meter i{display:block;height:100%;background:linear-gradient(90deg,#6d8cff,#35d9ad);border-radius:5px}.protocol-chip{display:inline-block;font-size:9px;background:#f1f4f6;border:1px solid #e1e7ea;color:#60707a;padding:3px 5px;border-radius:6px}.peer-actions{display:flex;justify-content:flex-end;gap:5px}.peer-hot td{background:#fffaf2!important}

/* Status */
.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:#eef2f4;color:#59666f;font-size:9px;font-weight:840;text-transform:uppercase;letter-spacing:.07em}.badge::before{content:"";width:5px;height:5px;border-radius:50%;background:#9ca8b0}.badge.assigned,.badge.active,.badge.synced{background:#e9f8f3;color:#246458}.badge.assigned::before,.badge.active::before,.badge.synced::before{background:var(--accent)}.badge.reserved,.badge.infrastructure{background:#edf2ff;color:#4c6090}.badge.reserved::before,.badge.infrastructure::before{background:#7592ee}.badge.suspended,.badge.error,.badge.danger{background:#fff0f0;color:#a33f45}.badge.suspended::before,.badge.error::before,.badge.danger::before{background:var(--danger)}.badge.pending,.badge.drift,.badge.warning{background:#fff7e9;color:#8f6b2c}.badge.pending::before,.badge.drift::before,.badge.warning::before{background:var(--warning)}
.live-pill{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:840;letter-spacing:.08em;color:#36554c;background:#e7f6f1;padding:7px 9px;border-radius:999px}.live-pill i{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(53,217,173,.1)}

/* Forms */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}label{display:block;font-size:10px;font-weight:780;color:#5e6b74;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #d5dde2;background:#fff;border-radius:9px;padding:10px 11px;color:#15212a;outline:none;transition:.15s ease}input:focus,select:focus,textarea:focus{border-color:#8d9ca7;box-shadow:0 0 0 3px rgba(67,93,110,.08)}textarea{resize:vertical;min-height:90px}.check{display:flex;align-items:flex-start;gap:9px;font-size:11px;color:#39464f}.check input{width:auto;margin-top:2px}.field-note{font-size:10px;color:#8a959d;margin-top:5px;line-height:1.45}.toolbar{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fafbfc}.toolbar input,.toolbar select{max-width:260px}.toolbar .grow{flex:1;max-width:none}
.permission-section{margin-top:2px}.preset-permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preset-permission{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fbfcfd;margin:0}.preset-permission input{width:auto;margin-top:2px}.preset-permission strong{display:block;font-size:10px;color:#29363e}.preset-permission small{display:block;color:#7b8790;line-height:1.35;margin-top:3px;font-weight:500;font-size:9px}

/* IPAM */
.ip-cell{display:flex;align-items:center;gap:10px}.ip-icon{width:32px;height:32px;border-radius:9px;background:#edf2f4;display:grid;place-items:center;font-size:9px;font-weight:850;color:#4e5e68}.ip-row.alerting td,.table tr.alerting td{background:#fff5f1!important}.traffic-hot{color:#c84d53;font-weight:820}

/* Traffic */
.chart-shell{height:280px;position:relative;padding:8px 2px 0}.chart-shell canvas{width:100%;height:100%;display:block}.traffic-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.traffic-kpi{padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;transition:.2s}.traffic-kpi span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-weight:820}.traffic-kpi strong{display:block;margin-top:7px;font-size:17px;letter-spacing:-.03em}.traffic-kpi.kpi-hot{background:#fff3ef;border-color:#efc5bb}.traffic-kpi.kpi-hot strong{color:#c44d4b}.traffic-alert{box-shadow:0 0 0 2px rgba(229,91,97,.28),var(--shadow)}.telemetry-offline{opacity:.8}

/* Security center */
.security-center{margin-top:18px;background:#0a1319;border:1px solid #172730;border-radius:22px;color:#e9f0f3;overflow:hidden;box-shadow:0 24px 70px rgba(7,15,20,.18);position:relative}.security-center:before{content:"";position:absolute;right:-160px;top:-180px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(53,217,173,.13),rgba(53,217,173,0) 68%);pointer-events:none}.security-center:after{content:"";position:absolute;left:18%;top:-240px;width:560px;height:360px;background:radial-gradient(ellipse,rgba(111,140,255,.09),transparent 68%);pointer-events:none}.security-center-head{padding:24px 24px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;border-bottom:1px solid #182831;position:relative;z-index:1}.security-center .section-kicker{color:#5f7683}.security-center-head h2{margin:7px 0 6px;font-size:22px;letter-spacing:-.035em;color:#fff}.security-center-head p{margin:0;color:#8396a1;line-height:1.55;max-width:760px;font-size:11px}.security-center-head .mono{color:#b9c8cf}.protection-health{display:flex;align-items:center;gap:8px;color:#81939e;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding-top:4px}.status-orb{width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px rgba(53,217,173,.08),0 0 20px rgba(53,217,173,.3)}
.protection-grid{padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;position:relative;z-index:1}.protection-card{background:#0f1a21;border:1px solid #1c2b34;border-radius:14px;padding:15px;min-height:184px;transition:.2s ease;position:relative;overflow:hidden}.protection-card:hover{border-color:#2a3b45;transform:translateY(-1px)}.protection-card.is-on{background:#10201f;border-color:#245746;box-shadow:inset 0 0 0 1px rgba(53,217,173,.04)}.protection-card.is-on:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--accent),rgba(53,217,173,.1))}.protection-card.risk-high{border-color:#503036}.protection-card.risk-high.is-on{background:#211618;border-color:#7a3940}.protection-card-top{display:flex;align-items:center;gap:10px}.protection-icon{width:31px;height:31px;border-radius:9px;background:#15252e;border:1px solid #20333e;display:grid;place-items:center}.protection-icon span{width:10px;height:12px;border:1.5px solid #6f8592;border-radius:4px 4px 6px 6px;position:relative}.protection-icon span:before{content:"";position:absolute;left:2px;right:2px;top:3px;height:1px;background:#6f8592;box-shadow:0 3px 0 #6f8592}.protection-card.is-on .protection-icon{background:#123029;border-color:#245847}.protection-card.is-on .protection-icon span{border-color:var(--accent)}.protection-card.is-on .protection-icon span:before{background:var(--accent);box-shadow:0 3px 0 var(--accent)}.protection-title{min-width:0;flex:1}.protection-title small{display:block;font-size:8px;letter-spacing:.13em;color:#607783;font-weight:820}.protection-title h3{font-size:12px;margin:4px 0 0;color:#e8eef1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.protection-card>p{color:#7e919c;font-size:10px;line-height:1.5;min-height:45px;margin:12px 0 10px}.protection-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;border-top:1px solid #1b2a33;padding-top:9px;color:#627782;font-size:9px}.protection-meta span:last-child{white-space:nowrap}.protection-meta b{color:#b6c6ce}.protection-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.protection-stats div{background:#0b151b;border:1px solid #17252d;border-radius:8px;padding:7px 8px}.protection-stats span{display:block;font-size:8px;color:#5e737f;text-transform:uppercase;letter-spacing:.08em}.protection-stats strong{display:block;font-size:11px;color:#b8c6cd;margin-top:4px;font-family:var(--mono)}
.security-center .toggle{margin-left:auto}.toggle{position:relative;width:40px;height:22px;border-radius:999px;background:#2b3942;border:0;padding:0;transition:.2s;flex:none}.toggle::after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#d9e1e5;left:3px;top:3px;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:.2s}.toggle.on{background:#2fcaa2}.toggle.on::after{left:21px;background:#06271f}.toggle:disabled{opacity:.42;cursor:not-allowed}
.protection-config{border-top:1px solid #1c2b34;margin-top:10px;padding-top:8px}.protection-config summary{font-size:9px;color:#81949f;cursor:pointer;user-select:none}.protection-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:9px 0}.protection-config label{font-size:8px;color:#748995}.protection-config input{background:#0a141a;border-color:#22333d;color:#dfe7eb;padding:7px 8px;font-size:10px}.security-center .btn{background:#14232c;border-color:#253741;color:#c9d5da}.security-center .btn:hover{border-color:#36505e;background:#192b35}.protection-empty{grid-column:1/-1;color:#718591;border:1px dashed #273843;border-radius:13px}.protection-empty strong{color:#b8c5cb}
.threat-strip{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-top:1px solid #182831;position:relative;z-index:1}.threat-strip h3{margin:4px 0 0;font-size:13px;color:#e8eef1}.security-center .live-pill{background:#102820;color:#74aa98}.threat-table-wrap{border-top:1px solid #17262f;position:relative;z-index:1}.security-center .table th{background:#0c171d;color:#60737e;border-color:#17262f}.security-center .table td{border-color:#15242c;color:#aebdc5;background:#0a141a}.security-center .table tr:hover td{background:#0c181f}.security-center .table .empty{color:#627783}.security-center .table .empty strong{color:#aebdc5}.quarantine-time{font-family:var(--mono);font-size:10px;color:#e6b46a}.protection-offline .status-orb{background:var(--danger);box-shadow:none}

/* Client scope */
.client-scope-panel .scope-ip{font-size:21px;font-weight:800;letter-spacing:-.035em}.scope-host{color:var(--muted);font-size:11px;margin-top:5px}.scope-list{margin-top:16px;border-top:1px solid var(--line)}.scope-list>div{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf0f2;font-size:10px;color:#76828b}.scope-list strong{font-size:10px;color:#26333b}

/* Alerts / modal */
.alert{padding:12px 14px;border-radius:10px;font-size:11px;margin-bottom:14px;border:1px solid}.alert.success{background:#ecfaf6;border-color:#c6ede2;color:#235a50}.alert.danger{background:#fff2f2;border-color:#f5c8c8;color:#8f3535}.alert.warning{background:#fff8e9;border-color:#f1deb0;color:#725820}.alert.info{background:#eef4ff;border-color:#cad9fa;color:#435c8b}.suspended-banner{border:1px solid #efc3c5;background:#fff3f3;border-radius:14px;padding:17px;margin-bottom:16px}.suspended-banner strong{display:block;color:#993d42}.suspended-banner p{margin:6px 0 0;color:#9c565a;font-size:11px}
.modal-backdrop{position:fixed;inset:0;background:rgba(4,10,15,.66);display:none;align-items:center;justify-content:center;padding:18px;z-index:100;backdrop-filter:blur(7px)}.modal-backdrop.open{display:flex}.modal{background:#fff;border-radius:18px;width:min(580px,100%);box-shadow:0 32px 100px rgba(0,0,0,.28);overflow:hidden;border:1px solid rgba(255,255,255,.2)}.modal .panel-head,.modal .panel-body{padding:18px 20px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.code-box{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0b141a;color:#fff;padding:15px 16px;border-radius:12px}.code-box code{font-size:15px;letter-spacing:.09em;color:#a9f6df}.code-box .btn{background:#16252e;color:#fff;border-color:#263a46}
.toast-host{position:fixed;right:18px;bottom:18px;z-index:500;display:grid;gap:8px}.toast-item{display:flex;align-items:center;gap:9px;min-width:260px;max-width:420px;padding:12px 14px;background:#101a21;color:#dfe8ec;border:1px solid #25333c;border-radius:11px;box-shadow:0 18px 55px rgba(0,0,0,.24);font-size:11px;opacity:0;transform:translateY(8px);transition:.22s}.toast-item.show{opacity:1;transform:none}.toast-item.danger{border-color:#60343a}.toast-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.toast-item.danger .toast-dot{background:var(--danger)}

/* Auth */
.auth-body{background:#081015;color:#fff;min-height:100vh}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr)}.auth-brand{padding:44px;display:flex;gap:13px;align-items:flex-start;background:#0a1319;border-right:1px solid #17242c;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;left:-260px;bottom:-310px;background:radial-gradient(circle,rgba(53,217,173,.16),rgba(53,217,173,0) 67%)}.auth-brand strong{display:block;letter-spacing:.12em;font-size:13px}.auth-brand span{display:block;color:#687b86;font-size:10px;margin-top:4px}.auth-panel{background:#f3f5f6;color:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:8vw;max-width:none}.auth-panel>form,.auth-panel>.auth-form{width:min(420px,100%)}.auth-panel h1{font-size:38px;letter-spacing:-.05em;margin:8px 0 10px}.auth-panel .muted{line-height:1.55}.auth-tabs{display:flex;gap:5px;margin:22px 0 20px;padding:4px;background:#e8ecef;border-radius:10px;width:max-content}.auth-tabs a{font-size:10px;font-weight:760;color:#71808a;padding:7px 9px;border-radius:7px}.auth-tabs a.active{background:#fff;color:#18232b;box-shadow:0 2px 8px rgba(16,24,32,.06)}.auth-panel label{margin-top:13px}.auth-panel .btn{margin-top:16px}.install-panel{padding:5vw}.install-panel>form{width:min(1040px,100%)}.install-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.install-grid section{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.install-grid h3{margin:0 0 14px;font-size:13px}.install-grid .wide{grid-column:1/-1}.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* Client */
.client-shell{min-height:100vh;background:#eef1f3}.client-top{height:70px;background:#091116;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-bottom:1px solid #17242c;position:sticky;top:0;z-index:20}.client-top .brand{padding:0}.client-main{max-width:1380px;margin:0 auto;padding:28px 24px 48px}.client-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.client-hero h1{margin:0;font-size:28px;letter-spacing:-.045em}.client-hero p{color:var(--muted);margin:7px 0 0}.policy-panel{box-shadow:var(--shadow-soft)}

/* small animation */
@keyframes softPulse{0%,100%{opacity:1}50%{opacity:.48}}.pulse{animation:softPulse 1s ease-in-out infinite}

@media(max-width:1280px){.protection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr)}}
@media(max-width:1100px){.grid.metrics{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.three-col{grid-template-columns:repeat(2,1fr)}.install-grid{grid-template-columns:1fr}.install-grid .wide{grid-column:auto}.protection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.app{grid-template-columns:1fr}.sidebar{display:none}.topbar{padding:0 15px}.content{padding:20px 13px 42px}.page-head{align-items:flex-start;flex-direction:column}.grid.metrics{grid-template-columns:1fr 1fr}.form-grid,.form-grid.three{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.traffic-kpis{grid-template-columns:1fr 1fr}.three-col,.protection-grid,.preset-permission-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-brand{padding:24px;border-right:0}.auth-panel{padding:32px 20px}.client-main{padding:18px 12px}.client-hero{align-items:flex-start;flex-direction:column}.security-center-head{flex-direction:column}.protection-grid{padding:12px}.security-center-head{padding:20px 18px}.peer-meter{width:80px}}
@media(max-width:520px){.grid.metrics{grid-template-columns:1fr}.traffic-kpis{grid-template-columns:1fr 1fr}.client-top{padding:0 14px}.client-top .tiny{display:none}.modal{border-radius:14px}.protection-card{min-height:auto}}

/* Address pool & delegated-access workspace */
.pool-bar{height:5px;border-radius:999px;background:#edf0f2;overflow:hidden;margin:17px 0 10px}.pool-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#263b47,#35d9ad)}.pool-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.row-actions form{margin:0}
.access-profile-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.55fr);gap:16px;margin-bottom:24px}.identity-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.identity-strip>div,.scope-stat{border:1px solid var(--line);background:#fafbfc;border-radius:11px;padding:11px 12px}.identity-strip span,.scope-stat span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:820}.identity-strip strong{display:block;font-size:10px;margin-top:6px}.access-summary .panel-body{display:grid;gap:8px}.scope-stat{display:flex;align-items:center;gap:11px}.scope-stat strong{font:800 24px/1 var(--mono);letter-spacing:-.06em}.scope-stat span{line-height:1.35}.section-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:24px 0 12px}.section-head-row h2{margin:5px 0 3px;font-size:18px;letter-spacing:-.035em}.section-head-row p{margin:0}.scope-editor-list{display:grid;gap:9px}.scope-editor{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft);overflow:hidden}.scope-editor>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;transition:.16s}.scope-editor>summary::-webkit-details-marker{display:none}.scope-editor>summary:hover{background:#fafbfc}.scope-editor[open]>summary{background:#f7f9fa;border-bottom:1px solid var(--line)}.scope-address{display:block;font-size:14px;font-weight:800;color:#1d2a32}.scope-caption{display:block;color:var(--muted);font-size:9px;margin-top:4px}.scope-summary-right{display:flex;align-items:center;gap:12px;font-size:9px;color:var(--muted)}.scope-summary-right b{color:#3c5964;text-transform:uppercase;letter-spacing:.07em;font-size:8px}.scope-editor-body{padding:18px}.scope-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.permission-stack{display:grid;gap:8px;margin-top:11px}.permission-stack label:not(.check){margin-top:6px}.preset-permission-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.preset-permission-grid.compact .preset-permission{padding:10px}.scope-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px}.scope-editor-actions form{margin:0}

/* Client overview */
.portal-hero{padding:5px 0 6px}.portal-live{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:#e2f5ef;color:#32685a;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.portal-live i,.mini-live i{width:6px;height:6px;background:#25bd91;border-radius:50%;box-shadow:0 0 0 4px rgba(37,189,145,.10)}.client-address-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.client-address-card{display:block;background:#fff;border:1px solid #dfe4e7;border-radius:17px;padding:18px;color:var(--ink);box-shadow:0 12px 34px rgba(22,34,42,.055);transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.client-address-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:#1e313a;opacity:.12;transition:.18s}.client-address-card:hover{transform:translateY(-2px);border-color:#cbd4d9;box-shadow:0 18px 44px rgba(22,34,42,.09)}.client-address-card:hover:before{opacity:.55;background:#35d9ad}.client-address-card.is-hot{border-color:#e7a59c;box-shadow:0 0 0 2px rgba(217,84,73,.09),0 18px 45px rgba(161,58,52,.10)}.client-address-card.is-hot:before{opacity:1;background:#dc5e56}.client-address-card.is-suspended{background:#fff8f8}.address-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.address-caption{display:block;color:#82909a;font-size:9px;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}.address-card-head strong{font-size:17px;letter-spacing:-.035em}.address-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.address-live-grid>div{border:1px solid #edf0f2;border-radius:10px;padding:9px 10px;background:#fbfcfc}.address-live-grid span{display:block;color:#8b979f;font-size:7px;text-transform:uppercase;font-weight:830;letter-spacing:.09em}.address-live-grid strong{display:block;margin-top:5px;font:760 11px/1.2 var(--mono);color:#2b3941}.address-card-foot{border-top:1px solid #edf0f2;margin-top:13px;padding-top:11px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#72818a}.address-card-foot b{font-size:13px;color:#526770}.mini-live{display:flex;align-items:center;gap:7px;color:#4b7b6f;font-size:8px;font-weight:850;letter-spacing:.08em}.client-address-card.is-hot .mini-live{color:#b64e49}.client-address-card.is-hot .mini-live i{background:#df635a;box-shadow:0 0 0 4px rgba(223,99,90,.10)}

@media(max-width:1100px){.access-profile-grid{grid-template-columns:1fr}.client-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preset-permission-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.identity-strip,.scope-form-grid{grid-template-columns:1fr}.scope-editor>summary{align-items:flex-start;flex-direction:column}.scope-summary-right{width:100%;justify-content:space-between}.client-address-grid{grid-template-columns:1fr}.preset-permission-grid.compact{grid-template-columns:1fr}.section-head-row{align-items:flex-start;flex-direction:column}}
.fasttrack-stats{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.fasttrack-stats span{border:1px solid var(--line);background:#fafbfc;border-radius:9px;padding:8px 10px;font-size:9px;color:#6e7b84}.fasttrack-stats b{font:800 12px/1 var(--mono);color:#28363e;margin-right:5px}

/* ---------- Release polish: navigation, sharing, DNS, mobile ---------- */
.ico{display:inline-block;vertical-align:-.18em;flex:none}
.icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#52616a;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:.16s ease;box-shadow:0 1px 1px rgba(16,24,32,.02)}
.icon-btn:hover{border-color:#b9c5cc;color:#142129;background:#fbfcfc;transform:translateY(-1px)}
.sidebar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.sidebar-header .brand{min-width:0}.sidebar-close{display:none;width:34px;height:34px;border-color:#1e303a;background:#0f1a21;color:#91a0aa;font-size:22px;line-height:1}
.sidebar-scrim{display:none;position:fixed;inset:0;border:0;background:rgba(4,10,14,.58);backdrop-filter:blur(3px);z-index:29;padding:0}
.mobile-menu{display:none}.topbar-left,.topbar-right{display:flex;align-items:center;gap:12px}.top-title{font-size:13px;font-weight:770;color:#1f2c34;margin-top:2px}.admin-chip{display:flex;align-items:center;gap:10px}.admin-avatar{width:30px;height:30px;border-radius:9px;background:#14242d;border:1px solid #20333d;color:#87e7cb;display:grid;place-items:center;font:800 11px/1 var(--mono)}

/* New authentication surface */
.auth-stage{position:relative;overflow:hidden;background:#071014;color:#fff;padding:38px 42px;display:flex;flex-direction:column;min-height:100vh;border-right:1px solid #15242c}
.auth-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(116,147,162,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(116,147,162,.055) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 86%);pointer-events:none}
.auth-stage:after{content:"";position:absolute;right:-180px;bottom:-180px;width:520px;height:520px;border:1px solid rgba(53,217,173,.13);border-radius:50%;box-shadow:0 0 0 70px rgba(53,217,173,.025),0 0 0 140px rgba(53,217,173,.018);pointer-events:none}
.auth-stage .auth-brand{position:relative;z-index:2;padding:0;background:none;border:0;display:flex;align-items:center;gap:12px}.auth-stage .auth-brand strong{display:block;font-size:12px;letter-spacing:.13em}.auth-stage .auth-brand span{display:block;color:#667a85;font-size:10px;margin-top:4px}
.auth-stage-copy{position:relative;z-index:2;margin:auto 0;max-width:560px;padding:70px 0}.auth-signal{display:inline-flex;align-items:center;gap:9px;color:#85a197;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.auth-signal i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(53,217,173,.08),0 0 22px rgba(53,217,173,.28)}.auth-stage-copy h2{font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.065em;margin:20px 0 22px;font-weight:760;max-width:700px}.auth-stage-copy p{color:#7f929d;max-width:430px;font-size:13px;line-height:1.65}
.auth-stage-grid{position:absolute;right:7%;top:23%;display:grid;grid-template-columns:repeat(3,8px);gap:12px;opacity:.55}.auth-stage-grid i{width:8px;height:8px;border:1px solid #37505d;border-radius:2px}.auth-stage-grid i:nth-child(2),.auth-stage-grid i:nth-child(5){border-color:#4e9d89;background:rgba(53,217,173,.08)}.auth-stage-foot{position:relative;z-index:2;display:flex;justify-content:space-between;color:#425760;font:700 8px/1 var(--mono);letter-spacing:.15em}
.auth-panel .auth-card{width:min(430px,100%)}.auth-help{margin-top:17px;padding-top:17px;border-top:1px solid #dfe4e7;color:#839098;font-size:10px;line-height:1.55}.auth-submit{min-height:44px}.input-with-icon{position:relative}.input-with-icon>.ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#87949c;pointer-events:none}.input-with-icon input{padding-left:39px}.remember-row{display:flex!important;align-items:flex-start;gap:10px;margin-top:15px!important;padding:11px 12px;background:#f8fafb;border:1px solid #e0e5e8;border-radius:10px;cursor:pointer}.remember-row input{width:auto;margin:2px 0 0}.remember-row span{display:block}.remember-row strong{display:block;font-size:10px;color:#34424a}.remember-row small{display:block;font-size:9px;color:#849199;margin-top:3px;line-height:1.4}

/* Client top bar */
.client-identity{display:flex;align-items:center;gap:17px}.client-identity>div{text-align:right}.client-identity span{display:block;color:#61747f;font-size:8px;text-transform:uppercase;letter-spacing:.11em}.client-identity strong{display:block;color:#e9eff2;font-size:11px;margin-top:4px}.client-signout{display:inline-flex;align-items:center;gap:7px;color:#8698a2;border-left:1px solid #1a2830;padding-left:16px;font-size:10px}.client-signout:hover{color:#fff}

/* Share / access delegation */
.share-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.share-overview>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px 16px;display:flex;align-items:baseline;gap:10px}.share-overview strong{font:800 22px/1 var(--mono);letter-spacing:-.05em}.share-overview span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:780}.toolbar-title{display:flex;align-items:center;gap:8px;font-weight:780;color:#33424b;font-size:11px;white-space:nowrap}.modal-lg{width:min(980px,calc(100vw - 30px))}
.share-ready{display:flex;gap:8px;align-items:center}.share-card{background:#071015;color:#eaf0f3;border:1px solid #172730;border-radius:20px;margin-bottom:17px;overflow:hidden;box-shadow:0 26px 80px rgba(8,17,22,.13);position:relative}.share-card:after{content:"";position:absolute;right:-120px;top:-200px;width:460px;height:460px;border:1px solid rgba(53,217,173,.08);border-radius:50%;box-shadow:0 0 0 65px rgba(53,217,173,.018),0 0 0 130px rgba(53,217,173,.012);pointer-events:none}.share-card-brand{position:relative;z-index:1;padding:20px 22px 18px;display:flex;align-items:center;gap:13px;border-bottom:1px solid #172730}.share-mark{width:42px;height:42px;border:1px solid #24404a;border-radius:12px;display:grid;place-items:center;background:#0d1a20}.share-mark .esn-logo{width:24px;height:24px}.share-card-brand span{display:block;color:#56707b;font-size:8px;font-weight:850;letter-spacing:.14em}.share-card-brand strong{display:block;color:#fff;font-size:14px;margin-top:4px}.share-card-brand small{display:block;color:#6f838d;font-size:9px;margin-top:3px}.share-fields{position:relative;z-index:1;padding:14px 22px;display:grid;gap:9px}.share-field{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:12px;background:#0c171d;border:1px solid #172a33;border-radius:11px;padding:10px 11px}.share-field>span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#667b86;font-weight:820}.share-field code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dce7eb;font:720 10px/1.4 var(--mono)}.share-field>div{display:flex;gap:5px}.share-field .icon-btn{background:#111f26;border-color:#21343e;color:#88a0aa;width:33px;height:33px}.share-field .icon-btn:hover{color:#fff;border-color:#35505c}.share-card-actions{position:relative;z-index:1;border-top:1px solid #172730;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.share-note{display:flex;align-items:center;gap:9px;color:#718691;font-size:9px}.share-note b{color:#b9c8ce}.share-card-actions .btn{background:#101c23;border-color:#21333d;color:#b4c2c8}.share-card-actions .btn:hover{color:#fff;border-color:#36505b}
.section-head-inline{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:10px}.section-head-inline h3{margin:5px 0 0;font-size:14px}.ip-scope-search{margin-bottom:10px}.ip-checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:290px;overflow:auto;padding:1px}.ip-check-card{position:relative;cursor:pointer}.ip-check-card>input{position:absolute;opacity:0;pointer-events:none}.ip-check-card>span{display:block;border:1px solid var(--line);border-radius:11px;background:#fafbfc;padding:11px 13px 10px;min-height:58px;transition:.15s ease}.ip-check-card strong{display:block;font-size:11px}.ip-check-card small{display:block;color:#87939b;font-size:8px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ip-check-card>i{position:absolute;right:10px;top:10px;width:15px;height:15px;border:1px solid #c8d2d8;border-radius:5px;background:#fff;transition:.15s}.ip-check-card>input:checked+span{border-color:#8db9ad;background:#f3fbf8;box-shadow:0 0 0 2px rgba(53,217,173,.08)}.ip-check-card>input:checked~i{background:#1e9c7c;border-color:#1e9c7c;box-shadow:inset 0 0 0 3px #fff}.permission-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.permission-tile{position:relative;margin:0;cursor:pointer}.permission-tile>input{position:absolute;opacity:0;pointer-events:none}.permission-tile>span{min-height:86px;display:block;border:1px solid var(--line);border-radius:12px;background:#fafbfc;padding:12px 13px;transition:.15s}.permission-tile .ico{color:#71818a;margin-bottom:8px}.permission-tile b{display:block;font-size:10px;color:#293840}.permission-tile small{display:block;font-size:8px;color:#87949c;line-height:1.4;margin-top:4px}.permission-tile>input:checked+span{background:#f3faf8;border-color:#a7ccc1;box-shadow:inset 0 0 0 1px rgba(45,174,139,.06)}.permission-tile>input:checked+span .ico{color:#208e72}.scope-main{display:flex;align-items:center;gap:11px;min-width:0}.scope-icon{width:34px;height:34px;border-radius:10px;border:1px solid #e0e6e9;background:#f8fafb;color:#60747f;display:grid;place-items:center;flex:none}

/* Security toolbar */
.protection-toolbar{position:relative;z-index:1;padding:13px 24px;border-bottom:1px solid #182831;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(10,20,25,.62)}.protection-toolbar>div:first-child>span{display:block;color:#b6c5cb;font-size:9px;font-weight:780}.protection-toolbar>div:first-child>small{display:block;color:#5f747f;font-size:8px;margin-top:3px}.protection-toolbar-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.security-chip{border:1px solid #263a44;background:#0e1b22;color:#9db0b9;border-radius:999px;padding:7px 10px;font-size:8px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.security-chip:hover{border-color:#3c5964;color:#e4ecef;background:#122129}.security-chip.danger{color:#d59195;border-color:#482b31}.security-chip.danger:hover{background:#211318;border-color:#694048;color:#f1b2b5}.security-chip:disabled{opacity:.45;cursor:not-allowed}.threat-table{min-width:560px}

/* Reverse DNS */
.rdns-panel{position:relative}.rdns-title{display:flex;align-items:center;gap:10px}.rdns-title>.ico{color:#4c6976}.rdns-title h2{margin:0}.rdns-title span{display:block;color:var(--muted);font-size:8px;margin-top:3px;text-transform:uppercase;letter-spacing:.09em}.rdns-current{padding:12px 13px;background:#f8fafb;border:1px solid #e2e7ea;border-radius:11px;margin-bottom:13px}.rdns-current>span{display:block;color:#829099;font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.rdns-current>strong{display:block;font-size:11px;margin-top:7px;overflow-wrap:anywhere}.rdns-current>small{display:block;color:#88949b;font-size:8px;margin-top:5px;line-height:1.45}.rdns-form{display:grid;gap:10px}.rdns-actions{display:flex;gap:7px}.rdns-readonly{display:flex;align-items:center;gap:8px;color:#77868f;background:#fafbfc;border:1px dashed #dbe2e6;border-radius:10px;padding:10px;font-size:9px}.rdns-admin-meta{border-top:1px solid #edf0f2;margin-top:13px;padding-top:10px;color:#8a969d;font:500 8px/1.45 var(--mono);overflow-wrap:anywhere}
.badge.synced{background:#e3f6f0;color:#2b715e}.badge.unmapped,.badge.unknown{background:#f0f2f3;color:#75828a}.badge.offline,.badge.error{background:#fff0f0;color:#a3484e}.badge.pending{background:#fff7e8;color:#9c6d22}

/* Authoritative DNS admin */
.dns-overview-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(460px,1.22fr);gap:16px}.dns-node-list,.zone-map-list{display:grid;gap:9px}.dns-node-card,.zone-map-card{border:1px solid var(--line);border-radius:13px;background:#fbfcfc;overflow:hidden}.dns-node-card>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px}.dns-node-card>summary::-webkit-details-marker{display:none}.dns-node-card>summary:hover{background:#f7f9fa}.dns-node-card>summary small{display:block;color:#85929a;font-size:8px;margin-top:4px}.dns-node-card[open]>summary{border-bottom:1px solid var(--line);background:#f7f9fa}.dns-node-body{padding:14px;display:grid;gap:10px}.dns-node-body form{margin:0}.dns-last{font-size:8px;color:#718189;padding:8px 0 0}.zone-map-card{padding:14px}.zone-map-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.zone-map-head strong{display:block}.zone-map-head span:not(.badge){display:block;color:var(--muted);font-size:8px;margin-top:4px}.zone-map-card form{margin:0}.zone-map-card .row-actions{margin-top:11px}.danger-text{color:#a94c52;margin-top:9px;line-height:1.45}

/* Advanced confirmation & generic mobile behavior */
.advanced-confirm{border:1px solid #f0d9bd;background:#fffaf2;border-radius:11px;padding:11px 12px}.advanced-confirm summary{cursor:pointer;color:#7e5c31;font-size:9px;font-weight:780}.toast-stack{position:fixed;inset:auto 0 0;pointer-events:none;z-index:600}.modal-backdrop{overflow:auto;padding:max(15px,env(safe-area-inset-top)) max(15px,env(safe-area-inset-right)) max(15px,env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left))}.modal{max-height:calc(100dvh - 30px);overflow:auto}.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}

@media(max-width:1100px){
  .auth-shell{grid-template-columns:minmax(340px,.9fr) minmax(430px,1.1fr)}
  .auth-stage{padding:32px}.auth-stage-copy h2{font-size:52px}
  .permission-tile-grid,.ip-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dns-overview-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
  .app{display:block}.sidebar{display:flex;position:fixed;left:0;top:0;bottom:0;width:min(286px,86vw);height:100dvh;transform:translateX(-105%);transition:transform .22s cubic-bezier(.2,.8,.2,1);box-shadow:20px 0 70px rgba(0,0,0,.24);z-index:80}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-open{overflow:hidden}.sidebar-scrim{display:block;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:70}.sidebar-open .sidebar-scrim{opacity:1;visibility:visible}.sidebar-close{display:inline-flex}.mobile-menu{display:inline-flex;border:0;background:#e5e9eb;width:38px;height:38px}.topbar{height:64px;z-index:40}.topbar .live-pill span{display:none}.topbar .live-pill{width:32px;height:32px;padding:0;justify-content:center}.topbar .live-pill i{margin:0}.content{padding-left:max(13px,env(safe-area-inset-left));padding-right:max(13px,env(safe-area-inset-right))}
  .auth-shell{display:block;min-height:100dvh}.auth-stage{min-height:230px;padding:24px 20px;border-right:0;border-bottom:1px solid #17242c}.auth-stage-copy{padding:34px 0 16px;margin:0}.auth-stage-copy h2{font-size:39px;margin:14px 0 12px}.auth-stage-copy p{font-size:11px;margin:0;max-width:360px}.auth-stage-grid{display:none}.auth-stage-foot{display:none}.auth-panel{min-height:calc(100dvh - 230px);padding:28px 20px 38px;justify-content:flex-start}.auth-panel h1{font-size:31px}.auth-panel .auth-card{margin:0 auto}
  .share-overview{grid-template-columns:1fr 1fr 1fr}.share-card-brand,.share-fields,.share-card-actions{padding-left:15px;padding-right:15px}.share-field{grid-template-columns:72px minmax(0,1fr) auto}.share-card-actions{align-items:flex-start;flex-direction:column}.share-card-actions form,.share-card-actions .btn{width:100%}.section-head-inline{align-items:flex-start;flex-direction:column}.permission-tile-grid,.ip-checkbox-grid{grid-template-columns:1fr 1fr}.protection-toolbar{padding:12px 18px;align-items:flex-start;flex-direction:column}.protection-toolbar-actions{justify-content:flex-start}.rdns-actions .btn{flex:1}.client-identity>div{display:none}.client-signout{border-left:0;padding-left:0}.client-top{height:64px}.client-top .brand span{display:none}
  .dns-overview-grid{grid-template-columns:1fr}.zone-map-card .row-actions{justify-content:stretch;flex-wrap:wrap}.zone-map-card .row-actions form,.zone-map-card .row-actions .btn{flex:1;width:100%}
}
@media(max-width:620px){
  body{font-size:13px}.top-title{font-size:12px}.page-head h1{font-size:25px}.page-head .actions{width:100%}.page-head .actions>.btn,.page-head .actions>form{flex:1}.page-head .actions>form .btn{width:100%}
  .share-overview{grid-template-columns:1fr}.share-overview>div{justify-content:space-between}.share-field{grid-template-columns:1fr auto;gap:7px}.share-field>span{grid-column:1/-1}.share-field code{font-size:9px}.permission-tile-grid,.ip-checkbox-grid{grid-template-columns:1fr}.permission-tile>span{min-height:72px}.scope-editor-actions{align-items:stretch;flex-direction:column}.scope-editor-actions form,.scope-editor-actions .btn{width:100%}
  .client-top .brand strong{font-size:10px}.client-signout span{display:none}.client-signout{width:38px;height:38px;justify-content:center;border:1px solid #1d2b33;border-radius:9px}.client-main{padding-bottom:max(36px,env(safe-area-inset-bottom))}.client-hero .btn{width:100%}.traffic-kpis{grid-template-columns:1fr 1fr}.traffic-kpi{min-width:0}.traffic-kpi strong{font-size:12px}.chart-shell{height:190px}.security-center{border-radius:16px}.security-center-head{padding:18px 14px}.protection-toolbar{padding:11px 14px}.protection-grid{padding:9px}.security-chip{padding:8px 10px}.threat-table-wrap{margin:0}
  .modal-backdrop{padding:0;align-items:flex-end}.modal,.modal-lg{width:100%;max-width:none;max-height:92dvh;border-radius:18px 18px 0 0;margin:0}.modal .panel-head{position:sticky;top:0;background:#fff;z-index:3}.modal-actions{position:sticky;bottom:-19px;background:#fff;padding-top:12px;padding-bottom:max(2px,env(safe-area-inset-bottom));margin-top:18px}.modal-actions .btn{min-height:44px}
  input,select,textarea{font-size:16px} /* prevents iOS focus zoom */
  .btn{min-height:42px}.btn.sm{min-height:36px}.icon-btn{min-width:40px;min-height:40px}
  .dns-node-card>summary{align-items:flex-start}.dns-node-body{padding:12px}.zone-map-card{padding:12px}
}
@media(max-width:390px){
  .traffic-kpis{grid-template-columns:1fr}.address-live-grid{grid-template-columns:1fr 1fr}.auth-stage-copy h2{font-size:34px}.auth-stage{min-height:215px}.auth-panel{min-height:calc(100dvh - 215px)}
}

/* Compact tables become native mobile records instead of horizontal spreadsheets. */
@media(max-width:620px){
  .table.responsive-table,
  #ip-table{min-width:0;width:100%}
  .table.responsive-table thead,
  #ip-table thead{display:none}
  .table.responsive-table tbody,
  .table.responsive-table tr,
  .table.responsive-table td,
  #ip-table tbody,
  #ip-table tr,
  #ip-table td{display:block;width:100%}
  .table.responsive-table tr,
  #ip-table tr{padding:11px 12px;border-bottom:1px solid var(--line);background:#fff}
  .table.responsive-table tr:last-child,
  #ip-table tr:last-child{border-bottom:0}
  .table.responsive-table td,
  #ip-table td{border:0!important;padding:6px 0!important;background:transparent!important;text-align:left!important;display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:start}
  .table.responsive-table td::before,
  #ip-table td::before{content:attr(data-label);font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#8a969e;padding-top:2px}
  .table.responsive-table td[data-label=""]::before,
  #ip-table td[data-label=""]::before{display:none}
  .table.responsive-table td[data-label=""],
  #ip-table td[data-label=""]{display:block;padding-top:9px!important}
  #ip-table td[data-label=""] .btn{width:100%}
  .table.responsive-table .empty{display:block!important;padding:24px 8px!important;text-align:center!important}
  .table.responsive-table .empty::before{display:none}
}

/* ---------- ESNETWORK v1 visual system ---------- */
:root{
  --bg:#f0f2f3;--bg-2:#f7f8f8;--surface:#fff;--surface-2:#f8f9f9;
  --nav:#071014;--nav-2:#0b151b;--accent:#31d6a8;--ink:#10171b;
  --line:#dce2e5;--radius:15px;--radius-sm:9px;
}
body{background:var(--bg)}
::selection{background:#bdf3e3;color:#09231c}
:focus-visible{outline:2px solid rgba(32,154,122,.58);outline-offset:2px}

.sidebar{background:#071014;box-shadow:10px 0 34px rgba(4,11,15,.045)}
.nav a{border-radius:8px;border:1px solid transparent}
.nav a:hover{background:#0c171d;border-color:#14242c}
.nav a.active{background:#101d24;border-color:#1a2c35;box-shadow:inset 2px 0 0 var(--accent)}
.nav a .ico{color:#536873;transition:.16s ease}
.nav a:hover .ico{color:#8ca0aa}.nav a.active .ico{color:var(--accent)}
.topbar{background:rgba(240,242,243,.94);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%)}
.content{padding-top:30px}.page-head{margin-bottom:25px}.page-head h1{font-weight:775}
.panel{border-radius:15px;box-shadow:0 8px 28px rgba(15,27,34,.035)}
.panel-head{min-height:54px}.metric{border-radius:12px;box-shadow:0 7px 24px rgba(15,27,34,.025)}
.metric:after{height:1px}.btn{border-radius:8px}.btn.primary{background:#0a1419;border-color:#0a1419}.btn.primary:hover{background:#102027;border-color:#102027}
.icon-btn{border-radius:8px}.table th{background:#fafbfb}.table tr:hover td{background:#fafcfc}

/* Authentication: asymmetric route-trace geometry instead of grids/radial art. */
.auth-stage{background:#071014;border-right-color:#15242c}
.auth-stage:before{content:"";position:absolute;inset:auto 42px 19% auto;width:148px;height:148px;background:none!important;mask-image:none!important;-webkit-mask-image:none!important;border:0;border-top:1px solid #1b343d;border-right:1px solid #1b343d;border-radius:0;box-shadow:none;opacity:.9;pointer-events:none}
.auth-stage:after{content:"";position:absolute;right:86px;bottom:calc(19% + 42px);width:66px;height:66px;background:none;border:0;border-left:1px solid rgba(49,214,168,.34);border-bottom:1px solid rgba(49,214,168,.34);border-radius:0;box-shadow:none;pointer-events:none}
.auth-stage-grid{display:none!important}
.auth-stage-copy:after{content:"";display:block;width:72px;height:1px;background:var(--accent);margin-top:34px;box-shadow:92px 0 0 #23414a,116px 0 0 #23414a}
.auth-signal i{border-radius:2px;box-shadow:none}
.auth-stage-copy h2{font-weight:735;letter-spacing:-.061em}
.auth-panel{background:#f2f4f4}.auth-card{position:relative}.auth-card:before{content:"";position:absolute;left:-26px;top:2px;width:2px;height:54px;background:#cfd8dc}.auth-card:after{content:"";position:absolute;left:-26px;top:2px;width:2px;height:18px;background:var(--accent)}
.auth-tabs{border-radius:8px}.auth-tabs a{border-radius:6px}.remember-row{border-radius:9px}

/* Delegation/share card: deliberately quiet and product-like. */
.share-card{border-radius:15px;background:#081116;box-shadow:0 20px 54px rgba(7,15,20,.11)}
.share-card:after{content:"";position:absolute;right:22px;top:22px;width:72px;height:8px;border:0;border-radius:0;box-shadow:none;background:repeating-linear-gradient(90deg,rgba(49,214,168,.36) 0 1px,transparent 1px 12px);opacity:.55}
.share-mark{border-radius:9px}.share-field{border-radius:8px}.share-overview>div{border-radius:10px}
.permission-tile>span,.ip-check-card>span,.preset-permission>span{border-radius:9px}

/* Security center: no decorative glow, only a restrained live accent. */
.security-center{border-radius:17px;background:#091318;box-shadow:0 20px 58px rgba(6,14,18,.15)}
.security-center:before{content:"";position:absolute;left:0;top:0;width:128px;height:2px;border-radius:0;background:var(--accent);opacity:.76}
.security-center:after{display:none}
.status-orb{border-radius:2px;box-shadow:0 0 0 4px rgba(49,214,168,.08)}
.toggle,.toggle::after{border-radius:5px}.security-chip{border-radius:7px;text-transform:none;letter-spacing:.025em;font-size:9px}
.protection-card{border-radius:11px}

/* Address cards are the client's primary navigation surface. */
.client-top{background:#071014}
.client-address-card{border-radius:13px;box-shadow:0 8px 28px rgba(16,28,35,.045)}
.client-address-card:before{inset:12px auto 12px 0;width:2px;height:auto;background:#cfd8dc;opacity:.7}
.client-address-card:hover:before{background:var(--accent);opacity:1}.client-address-card.is-hot:before{background:var(--danger);opacity:1}
.address-live-grid>div{border-radius:8px}.portal-live{border-radius:7px}.portal-live i,.mini-live i{border-radius:2px;box-shadow:none}
.live-pill{border-radius:7px}.live-pill i{border-radius:2px;box-shadow:none}

/* Strong responsive behavior across admin and client surfaces. */
@media(max-width:1100px){
  .two-col{grid-template-columns:1fr}
  .install-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .two-col{grid-template-columns:1fr}
  .install-grid{grid-template-columns:1fr}
  .auth-stage:before,.auth-stage:after{display:none}
  .auth-card:before,.auth-card:after{display:none}
  .content{padding-top:22px}
}
@media(max-width:620px){
  .panel,.client-address-card,.security-center,.share-card{border-radius:12px}
  .grid.metrics{gap:9px}.metric{padding:14px;min-height:96px}.metric .v{font-size:25px}
  .split{grid-template-columns:1fr}
  .toolbar{align-items:stretch;flex-direction:column}.toolbar input,.toolbar select{max-width:none;width:100%}
  .row-actions{width:100%;display:flex;gap:7px;flex-wrap:wrap}.row-actions>.btn,.row-actions>form{flex:1}.row-actions>form .btn{width:100%}
  .table.responsive-table td[data-label=""] .btn,.table.responsive-table td[data-label=""] form{width:100%}
  .table.responsive-table td[data-label=""] form .btn{width:100%}
  .auth-stage-copy:after{margin-top:24px}
}
@media(max-width:360px){
  .grid.metrics{grid-template-columns:1fr}
  .page-head h1{font-size:23px}.content{padding-left:10px;padding-right:10px}
}

/* ---------- ESNETWORK v1.1 premium scale & interaction pass ---------- */
@media(min-width:801px){
  .app{grid-template-columns:278px minmax(0,1fr)}
  .sidebar{padding:26px 18px}
  .topbar{height:78px;padding:0 40px}
  .content{max-width:1840px;padding:38px 40px 72px}
  .brand{padding-left:10px;padding-right:10px}.brand svg{width:38px;height:38px}
  .nav a{min-height:43px;padding:0 12px;font-size:12px;gap:11px}
  .nav-label{margin-top:26px;padding:0 12px}
}
body{font-size:14px;letter-spacing:-.006em}
.page-head{margin-bottom:30px;align-items:center}.page-head h1{font-size:36px;letter-spacing:-.052em}.page-head p{font-size:13px;max-width:820px}
.panel{border-radius:18px;border-color:#d9e0e3;box-shadow:0 10px 34px rgba(14,28,36,.045)}
.panel-head{min-height:64px;padding:19px 23px}.panel-head h2,.panel-head h3{font-size:16px}.panel-body{padding:23px}
.btn{min-height:40px;padding:0 15px;font-size:11px;font-weight:780;border-radius:10px}.btn.sm{min-height:34px;padding:0 11px}.btn.primary{box-shadow:0 8px 22px rgba(7,20,25,.10)}
input,select,textarea{padding:12px 13px;border-radius:11px;font-size:13px}label{font-size:11px}.field-note{font-size:10px}
.table th{height:43px;font-size:9px;letter-spacing:.08em}.table td{padding-top:14px;padding-bottom:14px;font-size:12px}.badge{font-size:9px;padding:5px 8px;border-radius:7px}
.metric{min-height:128px;padding:20px}.metric .k{font-size:10px}.metric .v{font-size:34px}.metric .sub{font-size:10px}
.three-col{gap:17px}.two-col{gap:18px}.grid.metrics{gap:17px}

/* Login becomes a product entry point, with Client Access first. */
.auth-shell{grid-template-columns:minmax(410px,.88fr) minmax(560px,1.12fr)}
.auth-stage{padding:54px 58px}.auth-stage-copy{max-width:520px}.auth-stage-copy h2{font-size:54px;line-height:.98}.auth-stage-copy p{font-size:13px;max-width:470px}
.auth-panel{padding:7vw}.auth-card{width:min(520px,100%)}.auth-panel h1{font-size:44px}.auth-tabs{padding:5px;gap:6px}.auth-tabs a{font-size:11px;padding:9px 13px}.auth-submit{min-height:48px;font-size:12px}
.auth-help{font-size:10px;line-height:1.6}

/* Integrated IP -> client -> share workflow */
.client-access-panel{overflow:visible}.client-access-panel .panel-head{background:linear-gradient(180deg,#fff,#fbfcfc)}
.access-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px;border:1px dashed #cad5da;border-radius:13px;background:#fafcfc}
.access-empty.compact{display:block;margin-top:12px;padding:13px 14px}.access-empty strong{display:block;font-size:12px}.access-empty p{margin:4px 0 0;color:#74818a;font-size:10px;line-height:1.55}.access-empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#0c171c;color:#38d5aa}
.assigned-client-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid #dbe3e6;border-radius:13px;background:#f8fafb}
.assigned-client-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#0b151a;color:#42dcaf;font-weight:850}.assigned-client-card span{display:block;color:#87929a;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.assigned-client-card strong{display:block;margin-top:3px;font-size:12px}
.access-profile-list{display:grid;gap:8px;margin-top:12px}.access-profile-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e0e6e8;border-radius:11px;background:#fff}.access-profile-row>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}.access-profile-row strong{font-size:11px}.access-profile-row small{grid-column:1/-1;color:#849099;margin-top:4px;font-size:9px}
.quick-share-hero{display:flex;align-items:center;gap:14px;padding:16px;margin-bottom:18px;border:1px solid #dbe4e6;border-radius:14px;background:#f8faf9}.quick-share-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#081318;color:#36d6a9}.quick-share-hero span,.quick-share-hero small{display:block;color:#819098;font-size:9px}.quick-share-hero strong{display:block;font-size:14px;margin:3px 0}
.quick-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.quick-permission-grid>label{margin:0;cursor:pointer}.quick-permission-grid>label>input{position:absolute;opacity:0;pointer-events:none}.quick-permission-grid>label>span{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;min-height:68px;padding:12px;border:1px solid #dce4e7;border-radius:12px;background:#fff;transition:.16s}.quick-permission-grid>label>span .ico{grid-row:1/3;color:#637781}.quick-permission-grid b{font-size:11px}.quick-permission-grid small{font-size:9px;color:#87949c;margin-top:3px}.quick-permission-grid input:checked+span{border-color:#8ad7c0;background:#f2fbf8;box-shadow:inset 0 0 0 1px rgba(49,214,168,.18)}.quick-permission-grid input:checked+span .ico{color:#15966f}

/* rDNS is presented as inventory data, not a server configuration detail. */
.rdns-current{padding:14px;border-radius:12px;background:#f8fafb;border:1px solid #e0e6e8}.rdns-current strong{font-size:12px}.rdns-actions{gap:8px}.rdns-panel .panel-head{background:#fbfcfc}

/* Stronger client portal presence */
.client-main{max-width:1560px;padding:34px 32px 64px}.client-hero h1{font-size:38px}.client-address-grid{gap:16px}.client-address-card{padding:20px;border-radius:16px}.address-card-head strong{font-size:20px}.address-live-grid>div{padding:13px}.address-live-grid strong{font-size:13px}.security-center{border-radius:20px}

@media(max-width:800px){
  body{font-size:14px}.content{padding:22px 16px 48px}.page-head h1{font-size:30px}.panel-head{padding:16px 17px;min-height:58px}.panel-body{padding:17px}
  .auth-stage{padding:28px 22px}.auth-stage-copy h2{font-size:38px}.auth-panel{padding:34px 22px}.auth-panel h1{font-size:34px}.auth-card{width:100%}
  .client-main{padding:20px 14px 48px}.client-hero h1{font-size:30px}
  .access-empty,.assigned-client-card{grid-template-columns:auto 1fr}.access-empty>.btn,.assigned-client-card>.btn{grid-column:1/-1;width:100%}.quick-permission-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .content{padding-left:12px;padding-right:12px}.page-head h1{font-size:28px}.page-head p{font-size:12px}
  .panel{border-radius:14px}.panel-head h2,.panel-head h3{font-size:15px}.panel-body{padding:14px}
  .client-main{padding-left:10px;padding-right:10px}.client-address-card{padding:16px}.address-card-head strong{font-size:18px}
  .auth-tabs{width:100%}.auth-tabs a{flex:1;text-align:center}.auth-stage-copy h2{font-size:35px}
  .access-profile-row{align-items:flex-start;flex-direction:column}.access-profile-row>.row-actions{width:100%}.access-profile-row>.row-actions .btn{flex:1}
}

/* ========================================================================== 
   ESNETWORK Control Center v1.2 — Cloud-grade product UI
   ========================================================================== */
:root{
  --bg:#f6f7f9;
  --bg-2:#fbfcfd;
  --surface:#ffffff;
  --surface-2:#f8fafb;
  --surface-3:#f1f4f6;
  --ink:#111827;
  --ink-2:#25313c;
  --muted:#66737f;
  --muted-2:#929ca5;
  --line:#e1e6ea;
  --line-strong:#cfd7de;
  --nav:#ffffff;
  --nav-2:#f8fafb;
  --nav-3:#edf7f5;
  --accent:#0ea58c;
  --accent-2:#11bfa1;
  --blue:#3b82f6;
  --danger:#dc4c55;
  --warning:#d89022;
  --success:#0e9f7d;
  --shadow:0 16px 42px rgba(20,31,42,.07);
  --shadow-soft:0 5px 18px rgba(20,31,42,.055);
  --radius:14px;
  --radius-sm:10px;
  --font:Inter,"Segoe UI Variable","SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"SFMono-Regular",Cascadia Code,Consolas,"Liberation Mono",Menlo,monospace;
}
html{background:var(--bg);overflow-x:hidden}
body{font-size:15px;line-height:1.45;background:var(--bg);overflow-x:hidden;color:var(--ink);letter-spacing:-.008em}
button,input,select,textarea{font-family:var(--font)}
.mono{font-size:.94em;letter-spacing:-.025em}
.tiny{font-size:12px}
.strong{font-weight:700}

/* Main shell */
.app{grid-template-columns:268px minmax(0,1fr);background:var(--bg)}
.sidebar{background:#fff;color:var(--ink);border-right:1px solid var(--line);box-shadow:none;padding:22px 15px;height:100dvh}
.sidebar-header{align-items:center}
.brand{gap:11px;padding:4px 10px 22px}
.brand .esn-logo{width:37px;height:37px;color:var(--accent);filter:none}
.brand strong{font-size:13px;letter-spacing:.095em;color:#111827;font-weight:800}
.brand span{font-size:10px;color:#89949d;letter-spacing:.015em;margin-top:3px}
.nav-label{font-size:10px;color:#a0a8af;letter-spacing:.115em;padding:22px 12px 8px}
.nav{gap:3px}
.nav a{min-height:42px;padding:0 12px;border-radius:9px;color:#5f6b75;font-size:13px;font-weight:590;gap:11px}
.nav a .ico{color:#7d8992}
.nav a:hover{background:#f4f6f8;color:#1e2933}
.nav a.active{background:#edf8f5;color:#087d6b;box-shadow:none;font-weight:680}
.nav a.active .ico{color:#0a9b84}
.sidebar-bottom{border-top:1px solid var(--line);padding:15px 9px 1px}
.admin-chip{display:flex;align-items:center;gap:10px}
.admin-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#eef7f5;color:#087d6b;font-weight:800;font-size:12px;border:1px solid #dcebe7}
.sidebar-bottom .who{font-size:12px;color:#25313c;font-weight:680}
.sidebar-bottom .role{font-size:9px;color:#9aa4ac;letter-spacing:.095em}
.logout{display:flex;align-items:center;gap:7px;color:#78848d;font-size:11px;margin-top:13px}
.logout:hover{color:#b33f47}
.main{width:100%;min-width:0}
.topbar{height:68px;padding:0 34px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(16,24,40,.015);backdrop-filter:blur(14px) saturate(140%)}
.topbar-left{display:flex;align-items:center;gap:12px}
.crumb{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#9aa3aa;font-weight:720}
.top-title{font-size:14px;font-weight:700;color:#1d2933;margin-top:2px}
.content{width:100%;max-width:1780px;padding:34px 36px 72px;margin:0 auto}
.page-head{align-items:center;margin-bottom:26px;gap:24px}
.page-head h1{font-size:34px;line-height:1.1;font-weight:720;letter-spacing:-.045em;color:#111827}
.page-head p{font-size:13px;color:#6e7a84;line-height:1.55;max-width:780px}
.eyebrow,.section-kicker{font-size:10px;letter-spacing:.11em;color:#85919a;font-weight:760}
.live-pill{border:1px solid #d9eee8;background:#eefaf6;color:#14745f;border-radius:8px;padding:7px 10px;font-size:10px;letter-spacing:.035em}
.live-pill i{width:6px;height:6px;border-radius:50%;box-shadow:none;background:#18b891}

/* Surfaces & actions */
.panel{border:1px solid var(--line);border-radius:13px;box-shadow:0 1px 2px rgba(16,24,40,.025);background:#fff;overflow:hidden;min-width:0}
.panel-head{min-height:62px;padding:17px 20px;background:#fff;border-bottom:1px solid var(--line)}
.panel-head h2,.panel-head h3{font-size:15px;font-weight:690;color:#17212b;letter-spacing:-.018em}
.panel-head .meta{font-size:11px;color:#8a949c}
.panel-body{padding:20px}
.panel + .panel{margin-top:18px}
.btn{min-height:39px;padding:0 14px;border-radius:9px;border-color:#d8dfe4;background:#fff;color:#26323d;font-size:12px;font-weight:650;box-shadow:0 1px 2px rgba(16,24,40,.025);transform:none}
.btn:hover{transform:none;border-color:#bec9d1;background:#fafbfc;box-shadow:0 3px 10px rgba(16,24,40,.055)}
.btn.primary{background:#111c25;border-color:#111c25;color:#fff;box-shadow:0 4px 12px rgba(17,28,37,.14)}
.btn.primary:hover{background:#172630;border-color:#172630}
.btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.danger{background:#fff;border-color:#e9c9cc;color:#b23f47}
.btn.sm{min-height:33px;padding:0 10px;border-radius:8px;font-size:11px}
.icon-btn{border-radius:9px}
.alert{font-size:12px;border-radius:10px;padding:12px 14px}
.callout{font-size:12px;border-radius:9px;background:#f8fafb;color:#61707b;border-color:#e4e9ec}
.badge{border-radius:7px;padding:5px 8px;font-size:9px;letter-spacing:.055em}

/* Inputs */
label{font-size:11px;color:#53616c;font-weight:650;margin-bottom:8px}
input,select,textarea{min-height:42px;padding:10px 12px;border-radius:9px;border-color:#d5dde3;background:#fff;color:#15212b;font-size:13px}
textarea{min-height:98px}
input:hover,select:hover,textarea:hover{border-color:#c4ced5}
input:focus,select:focus,textarea:focus{border-color:#74bdb1;box-shadow:0 0 0 3px rgba(14,165,140,.10)}
.field-note{font-size:10px;color:#89949c}
.form-grid{gap:15px}
.toolbar{padding:13px 16px;background:#fbfcfd;border-color:var(--line)}

/* Data density */
.grid.metrics{gap:14px;margin-bottom:18px}
.metric{min-height:118px;padding:18px 19px;border-radius:12px;border-color:var(--line);box-shadow:none}
.metric:after{height:1px;background:#e9edef}
.metric .k{font-size:10px;letter-spacing:.075em;color:#78858f}
.metric .v{font-size:31px;font-weight:720;margin-top:13px}
.metric .sub{font-size:11px;color:#89949d}
.two-col{grid-template-columns:minmax(0,1.65fr) minmax(360px,.75fr);gap:18px;align-items:start}
.two-col>*,.three-col>*{min-width:0}
.three-col{gap:14px}
.table-wrap{width:100%;max-width:100%;overflow:auto}
.table{min-width:760px}
.table th{height:42px;padding:10px 15px;background:#fafbfc;color:#87929a;font-size:9px;letter-spacing:.075em;border-bottom-color:var(--line)}
.table td{padding:14px 15px;font-size:12px;color:#2a3741;border-bottom-color:#edf0f2}
.table tr:hover td{background:#fafcfc}
.ip-icon{border-radius:7px}
.peer-rank{border-radius:6px}
.peer-meter{width:min(140px,100%);height:4px}
.protocol-chip{font-size:9px;border-radius:6px;padding:3px 6px}

/* Client Access — always usable inside narrow detail sidebars */
.client-access-panel{container-type:inline-size;overflow:hidden}
.client-access-panel .panel-head{background:#fff}
.access-empty{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:15px;background:#fbfcfd;border-color:#dce3e7;border-radius:11px}
.access-empty>.btn{grid-column:1/-1;width:100%;margin-top:1px}
.access-empty-icon{width:44px;height:44px;border-radius:10px;background:#edf8f5;color:#098570}
.access-empty strong{font-size:13px}
.access-empty p{font-size:11px;line-height:1.5;color:#74818a}
.assigned-client-card{grid-template-columns:42px minmax(0,1fr);padding:13px;background:#fbfcfd;border-radius:11px}
.assigned-client-card>.btn{grid-column:1/-1;width:100%}
.assigned-client-avatar{width:40px;height:40px;border-radius:10px;background:#edf8f5;color:#07816d}
.access-profile-row{border-radius:10px;background:#fff;padding:11px 12px;flex-wrap:wrap}
.quick-share-hero{border-radius:11px;background:#f8fbfa}
.quick-permission-grid>label>span{min-height:74px;border-radius:10px}
.permission-tile>span,.ip-check-card>span,.preset-permission{border-radius:10px}
.permission-tile b{font-size:11px}.permission-tile small{font-size:9px}

/* Reverse DNS */
.rdns-panel{container-type:inline-size}
.rdns-title span{font-size:9px;text-transform:none;letter-spacing:.01em}
.rdns-current{padding:14px;background:#f8fafb;border-color:#e2e7ea;border-radius:10px}
.rdns-current>span{font-size:9px;letter-spacing:.06em}
.rdns-current>strong{font-size:13px;margin-top:6px}
.rdns-current>small{font-size:10px;color:#7f8b94}
.rdns-actions{display:grid;grid-template-columns:1fr auto;gap:8px}
.rdns-admin-meta{font:500 10px/1.45 var(--font);color:#929ca4}
.dns-overview-grid{grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);gap:18px}
.dns-node-card,.zone-map-card{border-radius:11px;background:#fff}
.dns-node-card>summary{padding:14px 15px}
.dns-node-card>summary small{font-size:10px}
.dns-node-body{padding:15px}
.dns-last{font-size:10px}
.zone-map-head span:not(.badge){font-size:10px}

/* Security Center — light, cloud-console style */
.security-center{margin-top:20px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 2px rgba(16,24,40,.025);overflow:hidden}
.security-center:before,.security-center:after{display:none}
.security-center-head{padding:20px 22px 18px;border-bottom:1px solid var(--line);background:#fff}
.security-center .section-kicker{color:#82909a}
.security-center-head h2{font-size:20px;color:#111827;margin:5px 0 5px;font-weight:700}
.security-center-head p{font-size:12px;color:#6b7781;max-width:820px}
.protection-health{color:#6f7c85;font-size:9px;padding:7px 10px;border:1px solid #dcece7;background:#f1faf7;border-radius:8px;white-space:nowrap}
.status-orb{width:6px;height:6px;border-radius:50%;box-shadow:none;background:#12ae8e}
.protection-toolbar{padding:12px 20px;background:#fafbfc;border-bottom:1px solid var(--line)}
.protection-toolbar>div:first-child>span{color:#42515c;font-size:10px}
.protection-toolbar>div:first-child>small{color:#89949c;font-size:9px}
.security-chip{border:1px solid #d8e0e5;background:#fff;color:#4d5b66;border-radius:8px;padding:7px 10px;font-size:9px;text-transform:none;letter-spacing:.005em}
.security-chip:hover{border-color:#b7c5cd;background:#f8fafb;color:#1f2d37}
.security-chip.danger{color:#aa4249;border-color:#ebd1d3;background:#fff}
.protection-grid{padding:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;background:#f8fafb}
.protection-card{background:#fff;border:1px solid #e0e6ea;border-radius:11px;padding:15px;min-height:194px;color:#24313a;box-shadow:0 1px 1px rgba(16,24,40,.015)}
.protection-card:hover{border-color:#c9d3da;transform:none;box-shadow:0 5px 16px rgba(16,24,40,.05)}
.protection-card.is-on{background:#fbfffd;border-color:#9bd8ca;box-shadow:inset 3px 0 0 #12a98b}
.protection-card.risk-high,.protection-card.risk-high.is-on{background:#fff;border-color:#e4d7d9}
.protection-card.is-on:after{display:none}
.protection-icon{width:34px;height:34px;background:#f3f6f7;border-color:#e0e7ea;border-radius:9px}
.protection-icon span{border-color:#74838c}.protection-icon span:before{background:#74838c;box-shadow:0 3px 0 #74838c}
.protection-card.is-on .protection-icon{background:#edf9f6;border-color:#cdebe3}.protection-card.is-on .protection-icon span{border-color:#0e9e84}.protection-card.is-on .protection-icon span:before{background:#0e9e84;box-shadow:0 3px 0 #0e9e84}
.protection-title small{font-size:9px;color:#8a969e;letter-spacing:.085em}
.protection-title h3{font-size:14px;color:#18242e;margin-top:4px}
.protection-card>p{font-size:11px;line-height:1.5;color:#66747e;min-height:50px;margin:12px 0 10px}
.protection-meta{border-top-color:#edf0f2;color:#8a969e;font-size:9px;padding-top:9px}
.protection-meta b{color:#52616c}
.protection-stats{gap:8px}.protection-stats div{background:#f8fafb;border-color:#e7ebee;border-radius:8px;padding:8px 9px}
.protection-stats span{font-size:8px;color:#929ca4}.protection-stats strong{font-size:11px;color:#43515c}
.toggle{width:40px;height:23px;border-radius:12px;background:#d8e0e4}.toggle::after{width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.22)}.toggle.on{background:#10a88b}.toggle.on::after{left:20px;background:#fff}
.threat-strip{background:#fff;border-top:1px solid var(--line)}
.threat-strip h3{color:#1d2933}
.threat-table-wrap{background:#fff}

/* Traffic */
.traffic-kpis{gap:10px}
.traffic-kpi{border:1px solid #e3e8eb;background:#fafbfc;border-radius:10px;padding:12px}
.traffic-kpi span{font-size:9px;color:#82909a}.traffic-kpi strong{font-size:16px;color:#1b2933}
.chart-shell{border-radius:11px;background:#fbfcfd;border:1px solid #e7ebee}
.traffic-alert{box-shadow:inset 3px 0 0 var(--danger)}

/* Auth */
.auth-body{background:#f5f7f9}
.auth-shell{grid-template-columns:minmax(420px,.92fr) minmax(520px,1.08fr);background:#f5f7f9}
.auth-stage{background:#0c1720;border-right:0;padding:52px 58px;color:#fff}
.auth-brand strong{color:#fff}.auth-brand span{color:#82929d}.auth-brand .esn-logo{color:#22c6a7}
.auth-stage-copy h2{font-size:52px;line-height:1.02;font-weight:690;letter-spacing:-.055em}
.auth-stage-copy p{font-size:14px;color:#9babb5;line-height:1.6}
.auth-signal{font-size:10px;color:#9cb0ba;border-color:#263742;background:#111f29}
.auth-stage-foot{color:#637783}
.auth-panel{background:#f5f7f9;padding:clamp(36px,7vw,96px)}
.auth-card{width:min(520px,100%);background:#fff;border:1px solid #e0e5e9;border-radius:16px;padding:30px;box-shadow:0 22px 60px rgba(31,41,55,.08)}
.auth-panel h1{font-size:38px;font-weight:700;letter-spacing:-.045em;margin-bottom:8px}
.auth-tabs{background:#f2f4f6;border:1px solid #e5e9ec;border-radius:10px;padding:4px}
.auth-tabs a{border-radius:7px;padding:9px 12px;font-size:11px;color:#6f7c85}
.auth-tabs a.active{background:#fff;color:#17212b;box-shadow:0 1px 4px rgba(16,24,40,.08)}
.auth-form{gap:15px}.auth-submit{min-height:46px}
.remember-row{border-radius:9px;background:#f8fafb;border-color:#e4e9ec}
.auth-help{font-size:11px;color:#84909a}

/* Client portal */
.client-shell{background:#f6f7f9}
.client-top{height:68px;background:#fff;border-bottom:1px solid var(--line);padding:0 max(22px,calc((100vw - 1580px)/2))}
.client-top .brand{padding:0}.client-top .brand strong{color:#111827}.client-top .brand span{color:#88939b}
.client-main{max-width:1580px;width:100%;padding:30px 28px 64px}
.client-hero{align-items:center;margin-bottom:22px}.client-hero h1{font-size:35px;font-weight:700}
.client-address-grid{gap:14px}
.client-address-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 1px 2px rgba(16,24,40,.025)}
.client-address-card:hover{border-color:#bfcbd2;box-shadow:0 7px 20px rgba(16,24,40,.06);transform:none}
.address-live-grid>div{background:#f8fafb;border-color:#e7ebee;border-radius:8px;padding:12px}

/* Modal polish */
.modal-backdrop{background:rgba(15,23,32,.42);backdrop-filter:blur(5px)}
.modal{border-radius:14px;border:1px solid #e0e5e9;box-shadow:0 30px 80px rgba(16,24,40,.18)}
.modal .panel-head{position:sticky;top:0;z-index:2}
.modal-actions{gap:9px}

/* Critical responsive behavior. The navigation collapses before content gets cramped. */
@media(max-width:1450px){
  .two-col{grid-template-columns:1fr}
  .protection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dns-overview-grid{grid-template-columns:1fr}
}
@media(max-width:1120px){
  .app{display:block}
  .sidebar{display:flex;position:fixed;left:0;top:0;bottom:0;width:min(294px,88vw);height:100dvh;transform:translateX(-104%);transition:transform .2s ease;box-shadow:20px 0 55px rgba(15,23,32,.16);z-index:80}
  .sidebar-open .sidebar{transform:translateX(0)}
  .sidebar-open{overflow:hidden}
  .sidebar-scrim{display:block;opacity:0;visibility:hidden;transition:.18s;z-index:70}
  .sidebar-open .sidebar-scrim{opacity:1;visibility:visible}
  .sidebar-close{display:inline-flex;color:#66737d;background:#f4f6f8;border-color:#e0e5e9}
  .mobile-menu{display:inline-flex;width:38px;height:38px;background:#f3f5f7;border:1px solid #e1e6ea}
  .topbar{padding:0 20px}
  .content{max-width:none;padding:28px 20px 60px}
  .grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .three-col{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* Tables become readable cards before the viewport is too narrow. */
  .table.responsive-table{min-width:0;border-collapse:separate;border-spacing:0 9px;padding:0 10px 10px;background:#f8fafb}
  .table.responsive-table thead{display:none}
  .table.responsive-table tbody{display:block}
  .table.responsive-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;margin:0 0 9px;box-shadow:0 1px 1px rgba(16,24,40,.015)}
  .table.responsive-table td{display:block;border:0!important;padding:0!important;background:transparent!important;min-width:0;text-align:left}
  .table.responsive-table td::before{content:attr(data-label);display:block;margin-bottom:4px;color:#929ca4;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
  .table.responsive-table td[data-label=""]{grid-column:1/-1;margin-top:2px}
  .table.responsive-table td[data-label=""]::before{display:none}
  .table.responsive-table td[data-label=""] .row-actions,.table.responsive-table td[data-label=""] .peer-actions{justify-content:flex-start;flex-wrap:wrap}
  .peers-table .peer-meter{width:100%;max-width:240px}
}
@media(max-width:800px){
  .topbar{height:62px;padding:0 14px}
  .content{padding:22px 14px 50px}
  .page-head{align-items:flex-start;flex-direction:column;gap:14px}.page-head h1{font-size:29px}.page-head .actions{width:100%}
  .page-head .actions .btn,.page-head .actions form{flex:1}.page-head .actions form .btn{width:100%}
  .grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{min-height:104px;padding:15px}.metric .v{font-size:27px}
  .three-col,.protection-grid{grid-template-columns:1fr}
  .panel-head{padding:15px 16px;min-height:56px}.panel-body{padding:16px}
  .security-center-head{padding:17px;flex-direction:column;gap:12px}.security-center-head h2{font-size:18px}.protection-health{align-self:flex-start}
  .protection-toolbar{padding:12px 16px;align-items:flex-start;flex-direction:column}.protection-toolbar-actions{justify-content:flex-start}
  .protection-grid{padding:10px}.protection-card{min-height:0}
  .client-main{padding:20px 12px 48px}.client-hero{align-items:flex-start;flex-direction:column}.client-hero h1{font-size:29px}
  .auth-shell{display:block}.auth-stage{min-height:210px;padding:24px}.auth-stage-copy{padding:28px 0 8px}.auth-stage-copy h2{font-size:36px}.auth-stage-copy p{font-size:12px}.auth-stage-grid,.auth-stage-foot{display:none}.auth-panel{padding:24px 16px 36px;min-height:auto}.auth-card{padding:22px;border-radius:13px}.auth-panel h1{font-size:31px}
  .permission-tile-grid,.ip-checkbox-grid,.quick-permission-grid{grid-template-columns:1fr}
  .form-grid,.form-grid.three{grid-template-columns:1fr}.form-grid .full{grid-column:auto}
  .rdns-actions{grid-template-columns:1fr}.rdns-actions .btn{width:100%}
}
@media(max-width:560px){
  body{font-size:14px}.content{padding-left:10px;padding-right:10px}.page-head h1{font-size:27px}
  .grid.metrics{grid-template-columns:1fr 1fr}.metric{min-height:96px}.metric .k{font-size:9px}.metric .v{font-size:25px}
  .panel,.security-center,.client-address-card{border-radius:11px}
  .table.responsive-table tr{grid-template-columns:1fr;padding:13px}.table.responsive-table td[data-label=""]{grid-column:auto}
  .table.responsive-table td[data-label=""] .btn,.table.responsive-table td[data-label=""] form{width:100%}.table.responsive-table td[data-label=""] form .btn{width:100%}
  .auth-card{padding:19px}.auth-tabs{width:100%}.auth-tabs a{flex:1;text-align:center}.auth-panel h1{font-size:28px}
  .client-top{padding:0 12px}.client-top .brand span{display:none}.client-signout span{display:none}
  .security-chip{padding:7px 8px}
}
@media(max-width:380px){
  .grid.metrics{grid-template-columns:1fr}.page-head h1{font-size:25px}
}

/* Container-aware cards fix narrow sidebars regardless of viewport width. */
@container (max-width:520px){
  .access-empty,.assigned-client-card{grid-template-columns:1fr;text-align:left}
  .access-empty-icon,.assigned-client-avatar{margin-bottom:2px}
  .access-empty>.btn,.assigned-client-card>.btn{grid-column:auto;width:100%}
  .access-profile-row{display:grid;grid-template-columns:1fr;gap:9px}
  .access-profile-row>.row-actions{width:100%}.access-profile-row>.row-actions .btn{flex:1}
}
@container (max-width:430px){
  .rdns-actions{grid-template-columns:1fr}.rdns-actions .btn{width:100%}
}
.zone-primary-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 13px;background:#f8fafb;border:1px solid #e5eaed;border-radius:9px;margin-bottom:10px}.zone-primary-actions strong{display:block;font-size:11px;color:#34414b}.zone-primary-actions span{display:block;font-size:10px;color:#87929a;margin-top:3px}.zone-primary-actions form{margin:0;flex:none}.zone-advanced{border-top:1px solid #edf0f2;padding-top:9px;margin-top:4px}.zone-advanced>summary{cursor:pointer;color:#8a959d;font-size:10px;font-weight:650;list-style:none}.zone-advanced>summary::-webkit-details-marker{display:none}.zone-advanced>summary:after{content:'›';float:right;font-size:16px;line-height:10px;transform:rotate(90deg);transition:.15s}.zone-advanced[open]>summary:after{transform:rotate(-90deg)}.zone-advanced .zone-map-form{margin-top:12px}.zone-advanced .zone-map-form label{margin-top:8px}
@media(max-width:560px){.zone-primary-actions{align-items:flex-start;flex-direction:column}.zone-primary-actions form,.zone-primary-actions .btn{width:100%}}

/* v1.2.4 loader + health refresh */
.page-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(37,99,235,.16),transparent 30%),radial-gradient(circle at 80% 18%,rgba(16,185,129,.14),transparent 26%),linear-gradient(180deg,#07111d 0%,#0a1424 55%,#0b1220 100%);transition:opacity .28s ease,visibility .28s ease}
.page-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.page-loader-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(180deg,rgba(0,0,0,.8),rgba(0,0,0,.18));opacity:.35}
.page-loader-card{position:relative;z-index:1;width:min(92vw,520px);padding:28px;border-radius:28px;background:linear-gradient(180deg,rgba(9,18,32,.84),rgba(8,15,27,.92));border:1px solid rgba(148,163,184,.16);box-shadow:0 26px 90px rgba(2,8,23,.46),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(18px)}
.page-loader-visual{position:relative;height:140px;margin-bottom:14px;border-radius:20px;background:radial-gradient(circle at 50% 25%,rgba(125,211,252,.16),transparent 35%),linear-gradient(180deg,rgba(15,23,42,.65),rgba(15,23,42,.18));overflow:hidden}
.page-loader-visual .pl-cloud{position:absolute;left:50%;top:22px;transform:translateX(-50%);width:114px;height:56px;border-radius:999px;background:linear-gradient(180deg,rgba(96,165,250,.35),rgba(56,189,248,.18));box-shadow:0 0 0 1px rgba(125,211,252,.18),0 12px 35px rgba(59,130,246,.16)}
.page-loader-visual .pl-cloud:before,.page-loader-visual .pl-cloud:after{content:"";position:absolute;background:inherit;border-radius:50%}
.page-loader-visual .pl-cloud:before{width:56px;height:56px;left:12px;top:-18px}.page-loader-visual .pl-cloud:after{width:46px;height:46px;right:14px;top:-12px}
.page-loader-visual .pl-node,.page-loader-visual .pl-shield{position:absolute;width:18px;height:18px;border-radius:50%;background:linear-gradient(180deg,#7dd3fc,#22d3ee);box-shadow:0 0 0 6px rgba(34,211,238,.08)}
.page-loader-visual .pl-node-a{left:22%;bottom:26px;animation:floatNode 1.9s ease-in-out infinite}
.page-loader-visual .pl-node-b{left:50%;bottom:14px;transform:translateX(-50%);animation:floatNode 2.2s ease-in-out infinite .2s}
.page-loader-visual .pl-node-c{right:22%;bottom:26px;animation:floatNode 2s ease-in-out infinite .35s}
.page-loader-visual .pl-shield{right:26px;top:24px;border-radius:14px;width:22px;height:26px;background:linear-gradient(180deg,#34d399,#22c55e)}
.page-loader-visual .pl-shield:before{content:"";position:absolute;left:6px;top:7px;width:10px;height:6px;border:2px solid rgba(255,255,255,.9);border-top:none;border-right:none;transform:rotate(-45deg)}
.page-loader-visual .pl-link{position:absolute;height:2px;transform-origin:left center;background:linear-gradient(90deg,rgba(125,211,252,.2),rgba(125,211,252,.95),rgba(52,211,153,.3));animation:pulseLink 1.5s linear infinite}
.page-loader-visual .pl-link-a{left:29%;top:72px;width:94px;transform:rotate(-28deg)}
.page-loader-visual .pl-link-b{left:41%;bottom:36px;width:65px;transform:rotate(90deg)}
.page-loader-visual .pl-link-c{left:50%;top:88px;width:96px;transform:rotate(28deg)}
.page-loader-copy{display:flex;flex-direction:column;gap:6px}.page-loader-copy strong{font-size:16px;letter-spacing:.18em;color:#e2e8f0}.page-loader-copy span{font-size:14px;color:#94a3b8}
.page-loader-bar{height:10px;border-radius:999px;background:rgba(148,163,184,.12);margin-top:18px;overflow:hidden}.page-loader-bar i{display:block;height:100%;width:42%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#34d399,#60a5fa);background-size:200% 100%;animation:loaderSweep 1.35s linear infinite}
.inline-loader{display:flex;gap:8px;align-items:center}.inline-loader span{width:10px;height:10px;border-radius:50%;background:linear-gradient(180deg,#7dd3fc,#34d399);animation:inlinePulse 1s ease-in-out infinite}.inline-loader span:nth-child(2){animation-delay:.15s}.inline-loader span:nth-child(3){animation-delay:.3s}
.router-health-loading{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:20px;background:rgba(15,23,42,.42);border:1px solid rgba(148,163,184,.12);margin-bottom:18px}.router-health-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:18px}.health-card{padding:22px;border-radius:24px;border:1px solid rgba(148,163,184,.14);background:linear-gradient(180deg,rgba(8,15,27,.56),rgba(10,20,36,.88))}.health-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}.three-col.compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@keyframes loaderSweep{0%{transform:translateX(-28%);background-position:0 0}100%{transform:translateX(170%);background-position:200% 0}}
@keyframes floatNode{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pulseLink{0%{opacity:.35}50%{opacity:1}100%{opacity:.35}}
@keyframes inlinePulse{0%,100%{transform:scale(.7);opacity:.5}50%{transform:scale(1);opacity:1}}
@media (max-width: 980px){.router-health-grid,.three-col.compact{grid-template-columns:1fr}.page-loader-card{padding:22px;border-radius:24px}.page-loader-visual{height:126px}}
@media (max-width: 640px){.page-loader-card{width:min(94vw,420px);padding:18px}.page-loader-visual{height:112px}.page-loader-copy strong{font-size:14px}.page-loader-copy span{font-size:13px}.router-health-loading{flex-direction:column;align-items:flex-start}}

/* =========================================================
   ESNETWORK v1.3 — cloud console visual system
   ========================================================= */
[hidden]{display:none!important}
:root{
  --bg:#f6f8fb;--bg-2:#fbfcfe;--surface:#ffffff;--surface-2:#f8fafc;--surface-3:#f1f5f9;
  --ink:#0f172a;--ink-2:#243047;--muted:#64748b;--muted-2:#94a3b8;
  --line:#e2e8f0;--line-strong:#cbd5e1;--accent:#0ea5a4;--accent-2:#2dd4bf;--blue:#2563eb;
  --danger:#dc4c64;--warning:#d99118;--success:#0f9f7a;
  --shadow:0 1px 2px rgba(15,23,42,.025),0 12px 34px rgba(15,23,42,.035);
  --shadow-soft:0 8px 24px rgba(15,23,42,.035);--radius:16px;--radius-sm:10px;
  --font:"Inter","Segoe UI Variable","SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
html,body{background:var(--bg);color:var(--ink)}body{font-size:14px;letter-spacing:-.006em}
.app{grid-template-columns:264px minmax(0,1fr)}
.sidebar{background:#fff;color:var(--ink);border-right:1px solid var(--line);box-shadow:none;padding:20px 14px}
.sidebar .brand{padding:3px 10px 25px}.sidebar .brand strong{color:#0f172a;font-size:13px;letter-spacing:.09em}.sidebar .brand span{color:#94a3b8;font-size:10px}.sidebar .esn-logo{color:var(--accent)}
.nav-label{color:#94a3b8;font-size:9px;padding:18px 11px 8px;letter-spacing:.15em}.nav{gap:4px}.nav a{color:#5b687b;padding:10px 11px;border-radius:10px;font-size:12.5px;font-weight:650;border:1px solid transparent}.nav a .ico{color:#94a3b8}.nav a:hover{background:#f8fafc;color:#1e293b;border-color:#edf1f5}.nav a:hover .ico{color:#64748b}.nav a.active{background:#ecfdf8;color:#0f766e;border-color:#ccefe7;box-shadow:none}.nav a.active .ico{color:#0f9f8e}.sidebar-bottom{border-top:1px solid var(--line);padding:16px 8px 0}.sidebar-bottom .who{color:#172033}.sidebar-bottom .role,.logout{color:#94a3b8}.logout:hover{color:#0f172a}.admin-avatar{background:#ecfdf8!important;color:#0f766e!important;border-color:#d5f5ec!important}
.main{background:var(--bg)}.topbar{height:72px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);padding:0 34px;backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%)}.crumb{color:#94a3b8;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.top-title{font-weight:700;color:#172033}.content{max-width:1760px;padding:34px 36px 62px}
.page-head{align-items:center;margin-bottom:26px}.page-head h1{font-size:32px;font-weight:730;letter-spacing:-.045em;color:#0f172a}.page-head p{color:#66758b;font-size:13px;line-height:1.6;max-width:760px}.eyebrow,.section-kicker{color:#8b98aa;font-size:9px;letter-spacing:.15em}
.btn{min-height:40px;border-radius:10px;border-color:#d8e0e8;background:#fff;color:#26344a;font-weight:650;box-shadow:0 1px 2px rgba(15,23,42,.025);padding:9px 14px}.btn:hover{border-color:#b8c4d1;background:#fbfdff;box-shadow:0 5px 16px rgba(15,23,42,.055);transform:translateY(-1px)}.btn.primary{background:#111c2b;border-color:#111c2b;color:#fff;box-shadow:0 5px 14px rgba(15,23,42,.12)}.btn.primary:hover{background:#182638;border-color:#182638}.btn.accent{background:#0f9f8e;border-color:#0f9f8e;color:#fff}.btn.danger{background:#fff;border-color:#efcbd1;color:#b7374f}.btn.sm{min-height:34px;border-radius:9px;padding:7px 10px}
.panel{border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);background:#fff}.panel-head{min-height:60px;padding:18px 21px;border-bottom-color:#e9eef4}.panel-head h2,.panel-head h3{font-size:14px;font-weight:700;color:#172033}.panel-head .meta{font-size:10px;color:#8b98aa}.panel-body{padding:21px}.panel+.panel{margin-top:18px}
.grid.metrics{gap:14px;margin-bottom:20px}.metric{border-radius:14px;border-color:#e2e8f0;min-height:122px;padding:20px;box-shadow:0 1px 2px rgba(15,23,42,.02);background:#fff}.metric:after{display:none}.metric .k{color:#8390a2;letter-spacing:.11em}.metric .v{font-size:30px;color:#111827;margin-top:16px}.metric .sub{font-size:11px;color:#8b98aa}.metric.hot{border-color:#f1ccd2;background:#fffafb}
.two-col{grid-template-columns:minmax(0,1.55fr) minmax(340px,.7fr);gap:20px}.three-col{gap:18px}
.table-wrap{border-radius:0 0 16px 16px}.table th{background:#fafbfd;color:#8390a2;padding:12px 16px;border-bottom-color:#e6ebf1}.table td{padding:14px 16px;border-bottom-color:#edf1f5}.table tr:hover td{background:#fbfdff}.peer-rank{background:#f1f5f9;color:#64748b}.protocol-chip{background:#f8fafc;border-color:#e2e8f0;color:#64748b}.peer-meter{background:#edf2f7}.peer-meter i{background:linear-gradient(90deg,#2563eb,#14b8a6)}
.badge{border-radius:999px;padding:5px 8px;background:#f1f5f9;color:#64748b}.badge.active,.badge.assigned,.badge.synced{background:#eafaf5;color:#0f766e}.badge.warning,.badge.pending,.badge.drift{background:#fff7e8;color:#986a16}.badge.danger,.badge.error,.badge.suspended{background:#fff0f2;color:#b2374f}.live-pill{background:#eefbf7;color:#0b7568;border:1px solid #d6f4ea;border-radius:999px;padding:7px 10px}.live-pill i{border-radius:50%;box-shadow:0 0 0 3px rgba(20,184,166,.12)}
input,select,textarea{border-color:#dce4ec;border-radius:10px;background:#fff;color:#172033;min-height:42px;padding:10px 12px}.form-grid{gap:15px}.form-grid.three{gap:15px}label{font-size:10px;color:#65758a;font-weight:700}.field-note{color:#94a3b8}.callout{background:#f8fafc;border-color:#e6ebf1;color:#607086;border-radius:11px}
.toolbar{background:#fbfcfe;border-bottom-color:#e6ebf1;padding:15px 17px}.icon-btn{border-radius:9px}

/* Security center becomes a premium light workspace instead of a dark block. */
.security-center{position:relative;margin-top:20px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);overflow:hidden}.security-center:before{content:"";position:absolute;left:0;top:0;right:0;width:auto;height:3px;background:linear-gradient(90deg,#0ea5a4,#2563eb 55%,#8b5cf6);opacity:.9}.security-center-head{padding:24px 24px 20px;border-bottom:1px solid #e8edf3;background:linear-gradient(180deg,#fff,#fbfdff)}.security-center-head h2{color:#111827;font-size:20px;letter-spacing:-.03em}.security-center-head p{color:#69798e;max-width:800px}.protection-health{background:#ecfdf8!important;border:1px solid #d4f6eb!important;color:#0f766e!important;border-radius:999px!important}.status-orb{background:#14b8a6!important;border-radius:50%!important;box-shadow:0 0 0 3px rgba(20,184,166,.12)!important}.protection-toolbar{background:#f8fafc;border-bottom:1px solid #e8edf3;padding:15px 24px}.protection-toolbar>div>span{color:#334155}.protection-toolbar small{color:#8a98aa}.security-chip{background:#fff!important;border:1px solid #dce4ec!important;color:#334155!important;border-radius:9px!important;text-transform:none!important;letter-spacing:0!important;font-size:10px!important}.security-chip:hover{border-color:#aebdca!important;background:#fbfdff!important}.security-chip.danger{color:#b3374e!important;border-color:#f0cbd2!important}.protection-grid{padding:16px;background:#f8fafc;gap:12px}.protection-card{background:#fff!important;border:1px solid #e1e8ef!important;border-radius:14px!important;color:#172033!important;box-shadow:0 1px 2px rgba(15,23,42,.02)!important}.protection-card.is-on{border-color:#bfeade!important;box-shadow:0 0 0 1px rgba(15,159,142,.07),0 7px 22px rgba(15,23,42,.035)!important}.protection-title small,.protection-card p,.protection-meta{color:#7b899b!important}.protection-title h3{color:#172033!important}.protection-icon{background:#f3f8fa!important;border-color:#e2e8f0!important}.protection-stats>div{background:#f8fafc!important;border-color:#e6ebf1!important}.protection-stats span{color:#8a98aa!important}.protection-stats strong{color:#172033!important}.toggle{background:#dce5eb!important}.toggle.on{background:#0f9f8e!important}.toggle::after{background:#fff!important}.threat-strip{background:#fff!important;border-top:1px solid #e8edf3!important;border-bottom:1px solid #e8edf3!important}.threat-strip h3{color:#172033!important}.threat-table-wrap{background:#fff!important}.security-center .table th{background:#fafbfd!important}.security-center .table td{color:#334155!important}

/* Edge health */
.router-health-shell .panel-body{background:#fff}.router-health-loading{background:#f8fafc!important;border-color:#e3eaf1!important;color:#172033!important}.router-health-grid{gap:16px}.health-card{padding:22px;border-radius:15px;border:1px solid #e2e8f0;background:#fff;color:#172033;box-shadow:0 1px 2px rgba(15,23,42,.02)}.health-card h3{color:#172033}.health-card .muted{color:#738195}.health-card-head{margin-bottom:13px}.fasttrack-stats span{background:#f8fafc!important;border:1px solid #e2e8f0!important;color:#637287!important;border-radius:9px!important}.fasttrack-stats b{color:#172033!important}

/* Address/detail delegation */
.client-access-panel,.rdns-panel{box-shadow:var(--shadow-soft)}.assigned-client-card{border-radius:12px!important;background:#f8fafc!important;border:1px solid #e5ebf1!important}.assigned-client-card.direct{background:#f0fdfa!important;border-color:#d2f3e9!important}.assigned-client-avatar{background:#eafaf5!important;color:#0f766e!important}.access-empty{border-radius:13px!important;background:#fbfcfe!important;border-color:#dce4ec!important}.access-profile-row{border-radius:11px!important;border-color:#e5ebf1!important;background:#fff!important}.rdns-current{background:#f8fafc!important;border-color:#e4eaf0!important;border-radius:12px!important}

/* Client portal */
.client-shell{background:#f6f8fb}.client-top{background:#fff;border-bottom:1px solid var(--line);color:#172033}.client-top .brand strong{color:#172033}.client-top .brand span{color:#94a3b8}.client-signout{color:#64748b;border-color:#e2e8f0}.client-main{max-width:1480px}.client-hero h1{color:#111827}.client-address-card{background:#fff;border-color:#e2e8f0;border-radius:15px;box-shadow:var(--shadow-soft)}.client-address-card:hover{border-color:#c8d5e0;box-shadow:0 12px 32px rgba(15,23,42,.07)}.address-live-grid>div{background:#f8fafc;border-color:#e6ebf1}.portal-live{background:#eefbf7;color:#0f766e;border-color:#d6f4ea}

/* Share profile keeps one dark, intentional hero surface. */
.share-card{background:linear-gradient(135deg,#0d1827,#12233a);border:1px solid #20324a;border-radius:18px;box-shadow:0 20px 48px rgba(15,23,42,.16)}.share-card:after{opacity:.22}.share-field{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.1)!important}.share-overview>div{background:#fff;border-color:#e2e8f0}

/* Auth */
.auth-body{background:#f6f8fb}.auth-shell{background:#f6f8fb}.auth-stage{background:linear-gradient(155deg,#0b1626,#0e2233 65%,#0b2730);border-right:0}.auth-panel{background:#f6f8fb}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:28px;box-shadow:0 22px 60px rgba(15,23,42,.09)}.auth-card:before,.auth-card:after{display:none}.auth-tabs{background:#f1f5f9}.auth-tabs a.active{background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.06)}

/* Loader stays dark while the application itself remains light. */
.page-loader{background:radial-gradient(circle at 20% 20%,rgba(37,99,235,.18),transparent 32%),radial-gradient(circle at 80% 18%,rgba(20,184,166,.16),transparent 28%),linear-gradient(180deg,#07111f,#0b1626 55%,#0a1321)}

@media(max-width:1180px){.app{grid-template-columns:1fr}.sidebar{background:#fff}.two-col{grid-template-columns:1fr}.content{padding:28px 24px 52px}.topbar{padding:0 24px}}
@media(max-width:760px){.content{padding:22px 16px 42px}.page-head{align-items:flex-start}.page-head h1{font-size:28px}.grid.metrics{grid-template-columns:1fr 1fr}.panel-head{padding:16px}.panel-body{padding:16px}.protection-grid{padding:10px}.security-center-head{padding:20px 16px}.protection-toolbar{padding:13px 16px}.health-card{padding:17px}}
@media(max-width:520px){.grid.metrics{grid-template-columns:1fr}.page-head h1{font-size:25px}.topbar{height:64px;padding:0 14px}.content{padding-left:12px;padding-right:12px}.panel,.security-center{border-radius:14px}.auth-card{border-radius:18px;padding:22px 18px}.btn{min-height:42px}.page-loader-card{width:calc(100vw - 24px)}}

/* v1.3.1 live-state fixes */
.router-health-loading[hidden],.router-health-error[hidden],.router-health-warning[hidden]{display:none!important}
[data-live-grid-status],.live-pill{transition:background .2s ease,border-color .2s ease,color .2s ease}

/* v1.3.2 live sessions + premium polish */
[data-connections-ip]{display:flex;flex-direction:column;min-height:430px;max-height:560px;overflow:hidden}
[data-connections-ip] .panel-head{flex:0 0 auto;background:linear-gradient(180deg,#fff,#fbfdff)}
.connections-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:11px 15px;border-bottom:1px solid #e8edf3;background:#fbfcfe}
.connection-search{display:flex;align-items:center;gap:8px;min-width:0;flex:1;border:1px solid #dce4ec;background:#fff;border-radius:10px;padding:0 10px;box-shadow:0 1px 2px rgba(15,23,42,.02)}
.connection-search svg{width:16px;height:16px;fill:none;stroke:#94a3b8;stroke-width:1.8;flex:none}.connection-search input{border:0!important;box-shadow:none!important;background:transparent!important;padding:9px 2px!important;min-height:38px!important}
.connections-scroll{flex:1 1 auto;min-height:0;max-height:420px;overflow:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}
.connections-scroll .table{margin:0}.connections-scroll .table thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px 0 #e8edf3}
.peer-captured td{background:#effcf8!important}.peer-captured .peer-rank{background:#ccf5e8;color:#0f766e}.peer-captured .mono.strong{color:#0f766e}
.connections-offline .panel-head:after{content:'RECONNECTING';font-size:9px;font-weight:800;letter-spacing:.08em;color:#a16207;background:#fff7e8;border:1px solid #f5dfb4;padding:5px 8px;border-radius:999px}

/* Sharper cloud-console typography and surfaces */
:root{--font:"Segoe UI Variable",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--bg:#f4f7fb;--surface:#fff;--line:#e3e9f0;--ink:#101828;--muted:#667085;--accent:#12b89f;--blue:#2563eb;--shadow:0 1px 2px rgba(16,24,40,.025),0 8px 24px rgba(16,24,40,.035)}
body{font-size:14px;background:linear-gradient(180deg,#f7f9fc 0,#f3f6fa 100%);letter-spacing:-.004em}
.content{max-width:1720px}.topbar{background:rgba(255,255,255,.88);border-bottom-color:#e7ecf2}.page-head h1{font-size:34px;font-weight:750}.page-head p{font-size:13px}.panel{box-shadow:var(--shadow);border-color:#e3e9f0}.panel-head{background:linear-gradient(180deg,#fff,#fcfdff)}
.metric{box-shadow:var(--shadow);border-color:#e3e9f0}.metric .v{font-feature-settings:"tnum" 1,"ss01" 1}.btn.primary{background:#111827;border-color:#111827}.btn.accent{background:#0f9f8e;border-color:#0f9f8e}.live-pill{font-feature-settings:"tnum" 1}
.traffic-kpi strong,.mono{font-feature-settings:"tnum" 1,"zero" 1}.chart-shell{border:1px solid #edf1f5;border-radius:12px;background:linear-gradient(180deg,#fbfdff,#fff)}
.security-center{box-shadow:0 1px 2px rgba(16,24,40,.025),0 10px 32px rgba(16,24,40,.04)}

@media(max-width:760px){
  [data-connections-ip]{min-height:480px;max-height:620px}
  .connections-toolbar{padding:10px 12px;flex-wrap:wrap}.connection-search{width:100%;flex-basis:100%}
  .connections-scroll{max-height:470px}
  .peers-table .peer-actions{justify-content:flex-start;flex-wrap:wrap}.page-head h1{font-size:29px}
}
@media(max-width:520px){
  [data-connections-ip]{min-height:520px;max-height:680px}.connections-scroll{max-height:520px}
  .connections-scroll .responsive-table tr{margin-bottom:8px}.connection-search input{font-size:16px}
}

/* v1.4.0 — modular protection + edge repair workspace */
.security-center-v2{border-radius:22px;overflow:hidden;background:#fff;border:1px solid #e3eaf1;box-shadow:0 12px 34px rgba(15,23,42,.06)}
.security-center-v2:before{height:4px;background:linear-gradient(90deg,#0f9f8e,#2563eb 58%,#7c3aed)}
.security-center-v2 .security-center-head{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 26px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.security-heading{display:flex;align-items:flex-start;gap:14px}.security-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#eef9f7;color:#0f8f80;border:1px solid #d7f0ea;flex:0 0 auto}.security-heading h2{margin:1px 0 5px;font-size:22px}.security-heading p{margin:0;max-width:780px;line-height:1.55}
.security-center-v2 .protection-toolbar{padding:14px 26px;background:#f8fafc}.security-center-v2 .protection-toolbar-actions{gap:8px}.security-center-v2 .security-chip{padding:8px 11px;border-radius:10px}
.protection-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr));padding:14px;background:#f7f9fc;gap:12px}
.protection-card-v2{min-height:0!important;padding:17px!important;border-radius:15px!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.protection-card-v2:hover{transform:translateY(-1px)!important;box-shadow:0 10px 28px rgba(15,23,42,.06)!important}.protection-card-v2.is-on{background:#fcfffe!important;border-color:#bce8dd!important}
.protection-card-v2 .protection-card-top{align-items:center}.protection-card-v2 .protection-title small{font-size:10px;text-transform:none;letter-spacing:.02em;color:#8794a5!important}.protection-card-v2 .protection-title h3{font-size:15px;margin-top:3px}.protection-switch-wrap{display:flex;align-items:center;gap:9px}.protection-state{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:22px;padding:0 8px;border-radius:999px;background:#eef2f6;color:#718096;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.protection-state.on{background:#e5f8f2;color:#0b7f70}
.protection-card-v2>p{min-height:46px;margin:11px 0 12px;font-size:11px;line-height:1.55;color:#677789!important}.protection-summary{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px}.protection-summary span{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:8px;background:#f5f7fa;border:1px solid #e6ebf0;color:#667587;font-size:9px;line-height:1.3}.protection-summary span:first-child{font-weight:800;color:#425466}
.protection-card-v2 .protection-stats{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:7px}.protection-card-v2 .protection-stats>div{padding:8px;border-radius:9px}.protection-card-v2 .protection-stats strong{font-size:11px}.protection-card-v2 .protection-config{margin-top:11px}.security-center-v2.edge-paused{box-shadow:0 0 0 2px rgba(217,119,6,.12),0 12px 34px rgba(15,23,42,.06)}.security-center-v2.edge-paused .protection-health{background:#fff7ed!important;border-color:#fed7aa!important;color:#9a5413!important}.security-center-v2.edge-paused .status-orb{background:#f59e0b!important}

.edge-health-head{margin-bottom:18px}.edge-state-pill{display:inline-flex;align-items:center;gap:9px;height:38px;padding:0 14px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.07em;border:1px solid}.edge-state-pill i{width:8px;height:8px;border-radius:50%}.edge-state-pill.online{background:#ecfdf5;border-color:#ccefe2;color:#087a68}.edge-state-pill.online i{background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.12)}.edge-state-pill.paused{background:#fff7ed;border-color:#fed7aa;color:#9a5413}.edge-state-pill.paused i{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.edge-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.edge-action-card{display:flex;flex-direction:column;gap:12px;min-height:210px;padding:18px;border:1px solid #e2e8f0;border-radius:17px;background:#fff;box-shadow:0 4px 18px rgba(15,23,42,.035)}.edge-action-card>div:nth-child(2){flex:1}.edge-action-card h3{font-size:14px;margin:0 0 6px;color:#182333}.edge-action-card p{font-size:11px;line-height:1.55;color:#718096;margin:0}.edge-action-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#f4f7fa;border:1px solid #e5eaf0;color:#536273}.edge-action-card.primary-action{border-color:#cbe8e1;background:linear-gradient(180deg,#ffffff,#fbfffe)}.edge-action-card.primary-action .edge-action-icon{background:#edf9f6;color:#0f8f80;border-color:#d5eee8}.edge-action-card.danger-action{border-color:#f1d6dc}.edge-action-card.danger-action .edge-action-icon{background:#fff5f6;color:#b43d54;border-color:#f3d9de}.edge-action-card form,.edge-action-card>button{margin-top:auto}.edge-action-card .btn{width:100%;justify-content:center}
.managed-object-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:16px 0}.managed-object-strip>div{padding:12px 13px;border-radius:12px;background:#f8fafc;border:1px solid #e6ebf1}.managed-object-strip span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#8a98aa}.managed-object-strip strong{display:block;margin-top:5px;font-size:17px;color:#1d2939}.managed-object-strip .total{background:#eef9f7;border-color:#d7eee8}.saved-state-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.saved-state-kpis>div{padding:12px;border-radius:11px;background:#f8fafc;border:1px solid #e5ebf0}.saved-state-kpis span{display:block;font-size:9px;color:#8492a5;text-transform:uppercase;letter-spacing:.05em}.saved-state-kpis strong{display:block;margin-top:4px;font-size:18px;color:#182333}
.managed-router-details{margin-top:16px;border:1px solid #e3e9ef;border-radius:13px;overflow:hidden;background:#fff}.managed-router-details>summary{cursor:pointer;list-style:none;padding:13px 15px;font-size:11px;font-weight:800;color:#344054;background:#fafbfd}.managed-router-details>summary::-webkit-details-marker{display:none}.managed-router-details>summary span{display:inline-flex;min-width:24px;height:20px;align-items:center;justify-content:center;margin-left:6px;padding:0 6px;border-radius:999px;background:#eaf0f5;font-size:9px}.managed-router-details .toolbar{border-top:1px solid #edf0f3;border-bottom:1px solid #edf0f3}.saved-edge-state .panel-head{align-items:flex-start}.edge-row-actions{display:flex!important;gap:6px;justify-content:flex-end;flex-wrap:wrap}.edge-row-actions form{display:inline-flex;margin:0}.edge-row-actions .btn{white-space:nowrap}

@media(max-width:1180px){.edge-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.managed-object-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.protection-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.security-center-v2 .security-center-head{align-items:flex-start;flex-direction:column;padding:20px 16px}.security-heading{gap:10px}.security-mark{width:38px;height:38px}.security-center-v2 .protection-toolbar{padding:13px 16px}.protection-grid-v2{grid-template-columns:1fr;padding:10px}.edge-action-grid{grid-template-columns:1fr}.edge-action-card{min-height:0}.managed-object-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.saved-state-kpis{grid-template-columns:1fr}.edge-state-pill{align-self:flex-start}.edge-row-actions{justify-content:flex-start!important}}

/* v1.4 per-address repair controls */
.protection-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.protection-reload-btn{white-space:nowrap}
.security-center.edge-paused .protection-card{opacity:.78}
.security-center.edge-paused .protection-reload-btn{opacity:1}
@media(max-width:760px){.protection-head-actions{width:100%;justify-content:space-between}.protection-reload-btn{flex:1}}

/* v1.5.0 — filter-only security operations + persistent threat intelligence */
.security-center-v3{margin-top:22px;border:1px solid #dfe7ef;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 18px 46px rgba(15,23,42,.065);position:relative}
.security-center-v3:before{content:"";display:block!important;position:absolute;left:0;right:0;top:0;height:4px;width:auto;background:linear-gradient(90deg,#0ea58d 0%,#2563eb 55%,#7c3aed 100%);opacity:1;z-index:3}
.security-center-v3 .security-command-head{padding:27px 28px 23px;background:radial-gradient(circle at 85% 0,rgba(37,99,235,.055),transparent 34%),linear-gradient(180deg,#fff,#fbfdff)}
.security-center-v3 .security-heading h2{font-size:24px;color:#111827}.security-center-v3 .security-heading p{font-size:12px;color:#64748b;max-width:870px}.security-center-v3 .security-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#eafbf6,#eef4ff);border-color:#d9ebe8;color:#0f8f80;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}
.security-center-v3 .protection-health{padding:7px 10px;border:1px solid #d9ece7;border-radius:999px;background:#f3fbf8;color:#0f766e;font-weight:800}.security-center-v3 .status-orb{width:7px;height:7px;box-shadow:0 0 0 4px rgba(18,184,159,.1)}
.security-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 26px 16px;background:#f7f9fc;border-top:1px solid #edf1f5;border-bottom:1px solid #e7edf3}
.security-overview-card{display:flex;align-items:center;gap:12px;min-width:0;padding:13px 14px;background:#fff;border:1px solid #e3eaf1;border-radius:13px;box-shadow:0 1px 2px rgba(15,23,42,.02)}
.security-overview-card>div{min-width:0}.security-overview-card small{display:block;color:#8391a3;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.security-overview-card strong{display:block;margin-top:3px;color:#172033;font-size:15px;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.security-overview-card em{display:block;margin-top:2px;color:#98a3b1;font-size:9px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.soc-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;flex:0 0 auto;font-size:12px;font-weight:900}.soc-icon.filter{background:#eef4ff;color:#2859c5}.soc-icon.pulse{background:#ecfbf6;color:#0f8f80}.soc-icon.incident{background:#fff4e8;color:#b45309}.soc-icon.shield{background:#f2efff;color:#6d4bd2}
.security-center-v3 .protection-toolbar{padding:13px 26px;background:#fff;border-bottom:1px solid #e8edf3}.security-center-v3 .protection-toolbar>div:first-child>span{font-size:10px;color:#475569}.security-center-v3 .protection-toolbar>div:first-child>small{font-size:9px;color:#8996a6}.security-center-v3 .security-chip{border-radius:9px;padding:8px 11px;background:#f8fafc;border-color:#dde5ed;color:#475569}.security-center-v3 .security-chip:hover{background:#eef4ff;border-color:#cddbf3;color:#1d4ed8}.security-center-v3 .security-chip.danger{background:#fff8f8;border-color:#f0d8db;color:#b54750}
.protection-grid-v3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px 18px 18px;background:#f7f9fc}
.protection-card-v3{min-height:0!important;padding:17px!important;border-radius:15px!important;background:#fff!important;border:1px solid #e2e8ef!important;box-shadow:0 1px 2px rgba(15,23,42,.025);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.protection-card-v3:hover{transform:translateY(-2px)!important;border-color:#ccd7e2!important;box-shadow:0 12px 26px rgba(15,23,42,.06)!important}.protection-card-v3.is-on{border-color:#b9e6dc!important;background:linear-gradient(180deg,#fff,#fbfffe)!important;box-shadow:0 8px 24px rgba(15,118,110,.055)!important}.protection-card-v3.is-on:after{height:3px;background:linear-gradient(90deg,#12b89f,#3b82f6)}
.protection-card-v3 .protection-title small{font-size:9px!important;color:#8b98a7!important;letter-spacing:.035em}.protection-card-v3 .protection-title h3{font-size:15px!important;color:#172033!important}.protection-card-v3>p{font-size:11px!important;line-height:1.55!important;color:#68778a!important;min-height:51px!important}.protection-card-v3 .protection-summary{margin:0 0 9px;gap:5px}.protection-card-v3 .protection-summary span{font-size:8px;min-height:22px;padding:3px 7px;border-radius:7px;background:#f7f9fc;border-color:#e5eaf0}.protection-card-v3 .protection-summary .smart-tag{background:#eefbf7;border-color:#d7f1e9;color:#0f7f70;font-weight:800}
.protection-policy-line{min-height:34px;padding:8px 9px;margin-bottom:10px;border-radius:9px;background:#fbfcfe;border:1px solid #edf1f5;color:#6a788a;font-size:9px;line-height:1.45}.protection-card-v3.is-on .protection-policy-line{background:#f7fcfa;border-color:#e0f0eb}
.protection-card-v3 .protection-stats{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:7px}.protection-card-v3 .protection-stats>div{background:#f8fafc!important;border-color:#e7ecf2!important;border-radius:9px!important}.protection-card-v3 .protection-stats span{font-size:8px!important;color:#8a97a7!important}.protection-card-v3 .protection-stats strong{font-size:12px!important;color:#334155!important}.protection-card-v3 .protection-config{border-top-color:#e7edf3}.protection-card-v3 .protection-config summary{font-size:9px;color:#607086}.protection-card-v3 .protection-config input{background:#fff;border-color:#dbe4ec;color:#1f2937}
.security-ops-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:0;border-top:1px solid #e3eaf1;background:#fff}.threat-live-panel,.threat-history-panel{min-width:0}.threat-live-panel{border-right:1px solid #e3eaf1}.security-center-v3 .threat-strip{padding:18px 20px 14px;background:#fff;border-top:0;border-bottom:1px solid #edf1f5}.security-center-v3 .threat-strip h3{font-size:14px;color:#172033;margin:3px 0 2px}.security-center-v3 .threat-strip p{margin:0;color:#8996a6;font-size:9px;line-height:1.4}.security-center-v3 .section-kicker{font-size:8px;letter-spacing:.08em;color:#8b98a8}
.security-center-v3 .threat-table-wrap{border-top:0;max-height:420px;overflow:auto}.security-center-v3 .table th{background:#f8fafc;color:#7b8796;border-color:#e8edf2;font-size:8px}.security-center-v3 .table td{background:#fff;color:#526173;border-color:#edf1f5}.security-center-v3 .table tr:hover td{background:#fbfdff}.threat-cell-note{display:block;margin-top:2px;color:#97a3b1;font-size:8px;font-weight:500}.threat-severity{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:22px;padding:0 7px;border-radius:7px;font-size:8px;font-weight:900;letter-spacing:.04em}.severity-low{background:#f1f5f9;color:#64748b}.severity-medium{background:#fff7e8;color:#a16207}.severity-high{background:#fff0f1;color:#b4232c}.severity-critical{background:#feecee;color:#8f1620;box-shadow:inset 0 0 0 1px #f8cdd1}.quarantine-time{color:#a16207;font-weight:800}
.threat-history-count{display:inline-flex;align-items:center;padding:6px 9px;border-radius:8px;background:#f4f7fb;border:1px solid #e4eaf1;color:#64748b;font-size:9px;font-weight:800}.incident-feed{max-height:420px;overflow:auto;padding:10px 12px 14px;background:#fbfcfe}.incident-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:13px 13px 12px;margin-bottom:8px;background:#fff;border:1px solid #e4eaf0;border-left:3px solid #cbd5e1;border-radius:11px;box-shadow:0 1px 2px rgba(15,23,42,.02)}.incident-item.severity-medium{border-left-color:#f59e0b}.incident-item.severity-high{border-left-color:#ef4444}.incident-item.severity-critical{border-left-color:#b91c1c}.incident-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.incident-title-row>div{min-width:0}.incident-category{display:block;color:#909cac;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.incident-title-row strong{display:block;margin-top:2px;color:#172033;font-size:12px}.incident-source{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:7px;color:#8a97a7;font-size:8px}.incident-source b{color:#405166;font-size:9px}.incident-dot{color:#c1cad4}.incident-main p{margin:8px 0 0;color:#69788b;font-size:9px;line-height:1.45}.incident-action{display:flex;min-width:138px;flex-direction:column;align-items:flex-end;justify-content:center;text-align:right}.incident-action strong{margin-top:6px;max-width:180px;color:#46566a;font-size:9px;line-height:1.35}.incident-action small{margin-top:3px;color:#9aa6b4;font-size:8px}.incident-status{display:inline-flex;padding:5px 7px;border-radius:7px;font-size:7px;font-weight:900;letter-spacing:.065em}.incident-status.active{background:#fff0f1;color:#b4232c}.incident-status.resolved{background:#eefbf7;color:#0f7f70}.incident-empty{display:flex;min-height:150px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px;color:#8b98a8}.incident-empty strong{color:#546275;font-size:12px}.incident-empty span{margin-top:5px;max-width:320px;font-size:9px;line-height:1.45}
.security-center-v3.edge-paused .security-overview{opacity:.72}.security-center-v3.protection-offline .status-orb{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.09)}
@media(max-width:1280px){.security-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.protection-grid-v3{grid-template-columns:repeat(2,minmax(0,1fr))}.security-ops-grid{grid-template-columns:1fr}.threat-live-panel{border-right:0;border-bottom:1px solid #e3eaf1}}
@media(max-width:760px){.security-center-v3 .security-command-head{padding:22px 16px 18px}.security-overview{grid-template-columns:1fr 1fr;padding:11px 12px}.security-overview-card{padding:11px}.protection-grid-v3{grid-template-columns:1fr;padding:10px}.security-center-v3 .protection-toolbar{padding:12px 14px;align-items:flex-start;flex-direction:column}.security-center-v3 .protection-toolbar-actions{justify-content:flex-start}.security-ops-grid{display:block}.incident-item{grid-template-columns:1fr}.incident-action{align-items:flex-start;text-align:left}.security-center-v3 .threat-strip{padding:16px 14px}}
@media(max-width:520px){.security-overview{grid-template-columns:1fr}.security-overview-card strong{font-size:14px}.security-center-v3{border-radius:15px}.security-center-v3 .security-heading{gap:10px}.security-center-v3 .security-mark{width:40px;height:40px}.security-center-v3 .security-heading h2{font-size:21px}.protection-card-v3>p{min-height:0!important}.incident-feed{padding:8px}.threat-table{min-width:660px}}

/* v1.5.1 — Active Connections uses the full available column on desktop.
   Columns are allowed to size naturally; horizontal scrolling is reserved for
   genuinely small screens instead of being required in the normal desktop view. */
@media (min-width:1100px){
  [data-connections-ip]{width:100%;min-width:0;max-height:620px}
  [data-connections-ip] .connections-scroll{overflow-y:auto!important;overflow-x:hidden!important;max-width:100%}
  [data-connections-ip] .peers-table{width:100%;min-width:0;table-layout:auto}
  [data-connections-ip] .peers-table th,[data-connections-ip] .peers-table td{white-space:nowrap}
  [data-connections-ip] .peers-table th:first-child,[data-connections-ip] .peers-table td:first-child{width:34%}
  [data-connections-ip] .peers-table th:nth-child(2),[data-connections-ip] .peers-table td:nth-child(2){width:26%}
  [data-connections-ip] .peers-table th:nth-child(3),[data-connections-ip] .peers-table td:nth-child(3){width:12%}
  [data-connections-ip] .peers-table th:nth-child(4),[data-connections-ip] .peers-table td:nth-child(4){width:20%}
  [data-connections-ip] .peers-table th:last-child,[data-connections-ip] .peers-table td:last-child{width:8%}
}

@media (min-width:1181px){
  .live-connection-layout{grid-template-columns:minmax(0,2.35fr) minmax(300px,.55fr);gap:20px}
  .live-connection-layout>section{min-width:0}
  .live-connection-layout>aside{min-width:0}
}

/* =========================================================
   ESNETWORK v1.6.1 — low-noise premium responsive workspace
   ========================================================= */
:root{
  --bg:#f3f6fa;
  --bg-2:#f8fafc;
  --surface:#ffffff;
  --surface-2:#f8fafc;
  --surface-3:#f1f5f9;
  --ink:#101828;
  --ink-2:#344054;
  --muted:#667085;
  --muted-2:#98a2b3;
  --line:#e4e9f0;
  --line-strong:#d0d8e2;
  --accent:#0f9f8e;
  --accent-2:#24bfa9;
  --blue:#2f6fed;
  --danger:#d84f62;
  --warning:#d99526;
  --success:#0f9f7a;
  --radius:17px;
  --radius-sm:11px;
  --shadow:0 1px 2px rgba(16,24,40,.025),0 10px 30px rgba(16,24,40,.045);
  --shadow-soft:0 1px 2px rgba(16,24,40,.02),0 6px 18px rgba(16,24,40,.035);
  --font:"Segoe UI Variable","Inter","SF Pro Text","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
html{background:var(--bg);text-rendering:optimizeLegibility}
body{background:linear-gradient(180deg,#f8fafc 0,#f3f6fa 260px,#f3f6fa 100%);font-size:14px;line-height:1.45;letter-spacing:-.006em;color:var(--ink)}
body,input,select,textarea,button{font-family:var(--font)}
body,.mono,.metric .v,.traffic-kpi strong{font-variant-numeric:tabular-nums}
::selection{background:#c9f5ea;color:#0b3b32}

/* Shell & navigation */
.app{grid-template-columns:276px minmax(0,1fr)}
.sidebar{padding:22px 15px;background:rgba(255,255,255,.98);border-right:1px solid #e6ebf1;box-shadow:8px 0 30px rgba(16,24,40,.018)}
.sidebar .brand{padding:3px 11px 25px}
.sidebar .brand strong{font-size:13px;font-weight:800;letter-spacing:.105em;color:#111827}
.sidebar .brand span{margin-top:3px;font-size:10px;color:#98a2b3}
.nav-label{padding:20px 12px 8px;font-size:9px;font-weight:800;letter-spacing:.14em;color:#a0aab7}
.nav{gap:4px}
.nav a{min-height:42px;padding:10px 12px;border-radius:11px;font-size:12.5px;font-weight:680;color:#59677a;border:1px solid transparent;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.nav a:hover{background:#f7f9fc;border-color:#e9eef4;color:#202c3c;transform:translateX(1px)}
.nav a.active{background:linear-gradient(135deg,#ecfbf7,#f1f6ff);border-color:#d5ebe6;color:#0f766e;box-shadow:inset 3px 0 0 #14b8a6}
.nav a .ico{color:#98a2b3}.nav a.active .ico{color:#0f9f8e}
.sidebar-bottom{border-top-color:#edf1f5;padding:17px 10px 0}
.sidebar-bottom .who{font-size:12px;font-weight:700;color:#344054}.sidebar-bottom .role,.logout{color:#98a2b3}
.main{background:transparent}
.topbar{height:74px;padding:0 38px;background:rgba(255,255,255,.83);border-bottom:1px solid rgba(226,232,240,.92);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
.crumb{font-size:9px;font-weight:800;letter-spacing:.13em;color:#98a2b3;text-transform:uppercase}
.top-title{font-size:14px;font-weight:750;color:#1d2939;letter-spacing:-.02em}
.content{width:100%;max-width:1900px;padding:36px 42px 70px}
.page-head{margin-bottom:28px;align-items:center}
.page-head h1{font-size:36px;font-weight:760;line-height:1.08;letter-spacing:-.052em;color:#101828}
.page-head p{margin-top:9px;max-width:820px;font-size:13px;line-height:1.62;color:#667085}
.eyebrow,.section-kicker{font-size:9px;font-weight:850;letter-spacing:.135em;color:#98a2b3}

/* Surface system */
.panel{border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft);background:rgba(255,255,255,.98)}
.panel:hover{border-color:#dce3eb}
.panel-head{min-height:64px;padding:19px 22px;background:linear-gradient(180deg,#fff,#fcfdff);border-bottom-color:#edf1f5}
.panel-head h2,.panel-head h3{font-size:14px;font-weight:750;letter-spacing:-.02em;color:#1d2939}
.panel-head .meta{font-size:10px;color:#98a2b3}
.panel-body{padding:22px}
.panel+.panel{margin-top:20px}
.grid.metrics{gap:15px;margin-bottom:22px}
.metric{min-height:126px;padding:20px 21px;border-radius:16px;border-color:#e3e9ef;box-shadow:var(--shadow-soft);background:linear-gradient(180deg,#fff,#fcfdff)}
.metric .k{font-size:9px;font-weight:800;letter-spacing:.1em;color:#8a97a8}
.metric .v{margin-top:16px;font-size:31px;font-weight:760;letter-spacing:-.055em;color:#101828}
.metric .sub{font-size:10px;color:#98a2b3}
.two-col{gap:22px}
.three-col{gap:18px}

/* Controls */
.btn{min-height:41px;padding:9px 14px;border-radius:10px;border-color:#dce3ea;background:#fff;color:#344054;font-size:12px;font-weight:700;box-shadow:0 1px 2px rgba(16,24,40,.025);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}
.btn:hover{transform:translateY(-1px);border-color:#bcc8d5;box-shadow:0 7px 18px rgba(16,24,40,.07);background:#fff}
.btn.primary{background:linear-gradient(180deg,#182230,#111927);border-color:#111927;color:#fff;box-shadow:0 5px 14px rgba(17,25,39,.14)}
.btn.primary:hover{background:#1d2939;border-color:#1d2939}
.btn.accent{background:linear-gradient(180deg,#14ad99,#0f9786);border-color:#0f9786;color:#fff;box-shadow:0 5px 14px rgba(15,159,142,.15)}
.btn.danger{background:#fff;border-color:#efcfd5;color:#b53b50}
.btn.sm{min-height:35px;padding:7px 10px;border-radius:9px;font-size:10.5px}
input,select,textarea{min-height:43px;padding:10px 12px;border-radius:10px;border-color:#d9e1e9;background:#fff;color:#1d2939;box-shadow:0 1px 2px rgba(16,24,40,.015)}
input:hover,select:hover,textarea:hover{border-color:#c8d3df}
input:focus,select:focus,textarea:focus{border-color:#75b9ae;box-shadow:0 0 0 4px rgba(15,159,142,.09)}
label{font-size:10px;font-weight:750;color:#667085}
.field-note{font-size:9.5px;line-height:1.5;color:#98a2b3}
.toolbar{padding:14px 17px;background:#fbfcfe;border-bottom-color:#edf1f5}
.callout{padding:13px 14px;border-radius:11px;background:#f8fafc;border-color:#e8edf3;color:#667085}

/* Tables */
.table-wrap{max-width:100%}
.table{color:#344054}
.table th{padding:12px 16px;background:#fafbfd;border-bottom-color:#e8edf3;color:#8491a2;font-size:8.5px;font-weight:850;letter-spacing:.105em}
.table td{padding:14px 16px;border-bottom-color:#eef2f6;font-size:12px}
.table tr:hover td{background:#fbfdff}
.badge{font-size:8px;font-weight:850;letter-spacing:.055em}
.live-pill{padding:7px 10px;border-radius:999px;background:#eefbf7;border:1px solid #d9f2eb;color:#0b7769}

/* Live telemetry */
.traffic-kpis{gap:10px;margin-bottom:14px}
.traffic-kpi{padding:13px 14px;border-radius:11px;border-color:#e7ecf2;background:#fafbfd}
.traffic-kpi span{font-size:8.5px;letter-spacing:.085em;color:#8b98a8}
.traffic-kpi strong{margin-top:7px;font-size:17px;font-weight:750;color:#27364a}
.chart-shell{height:300px;padding:10px 4px 2px;border:1px solid #edf1f5;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#fff)}

/* Active Connections: desktop-first width with no horizontal scroll. */
.live-connection-layout{align-items:start}
.live-connection-layout>section,.live-connection-layout>aside{min-width:0}
[data-connections-ip]{width:100%;min-width:0;min-height:455px;max-height:650px;border-color:#dfe6ed}
[data-connections-ip] .panel-head{padding-left:22px;padding-right:22px}
.connections-toolbar{padding:12px 16px;background:#fbfcfe;border-bottom-color:#edf1f5}
.connection-search{height:42px;border-radius:11px;border-color:#dce4ec;box-shadow:0 1px 2px rgba(16,24,40,.02)}
.connections-scroll{max-height:500px;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}
[data-connections-ip] .peers-table{width:100%;min-width:0!important;table-layout:fixed}
[data-connections-ip] .peers-table th,[data-connections-ip] .peers-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-connections-ip] .peers-table th:first-child,[data-connections-ip] .peers-table td:first-child{width:31%}
[data-connections-ip] .peers-table th:nth-child(2),[data-connections-ip] .peers-table td:nth-child(2){width:27%}
[data-connections-ip] .peers-table th:nth-child(3),[data-connections-ip] .peers-table td:nth-child(3){width:12%}
[data-connections-ip] .peers-table th:nth-child(4),[data-connections-ip] .peers-table td:nth-child(4){width:19%}
[data-connections-ip] .peers-table th:last-child,[data-connections-ip] .peers-table td:last-child{width:11%}
[data-connections-ip] .peer-address{min-width:0}
[data-connections-ip] .peer-address .mono{min-width:0;overflow:hidden;text-overflow:ellipsis}
[data-connections-ip] .peer-meter{width:min(100%,240px);max-width:240px}
[data-connections-ip] .protocol-chip{font-size:8.5px}

/* Protection Center */
.security-center-v3{margin-top:24px;border-radius:22px;border-color:#dfe7ef;box-shadow:0 18px 48px rgba(16,24,40,.065);background:#fff}
.security-center-v3:before{height:3px;background:linear-gradient(90deg,#0f9f8e 0%,#2f6fed 58%,#7656d8 100%)}
.security-center-v3 .security-command-head{padding:29px 30px 24px;background:radial-gradient(circle at 90% -10%,rgba(47,111,237,.08),transparent 35%),linear-gradient(180deg,#fff,#fcfdff)}
.security-center-v3 .security-heading{gap:15px}
.security-center-v3 .security-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#eafbf6,#edf3ff);border-color:#d7e9e5;color:#0d8d7d;box-shadow:inset 0 1px 0 #fff}
.security-center-v3 .security-heading h2{font-size:25px;font-weight:760;letter-spacing:-.035em;color:#101828}
.security-center-v3 .security-heading p{max-width:900px;font-size:11.5px;line-height:1.6;color:#667085}
.security-center-v3 .protection-health{padding:8px 11px;background:#eefbf7!important;border-color:#d7efe8!important;color:#0b7769!important;font-size:9px;font-weight:850}
.security-overview{gap:11px;padding:15px 28px 17px;background:#f7f9fc;border-color:#e8edf3}
.security-overview-card{padding:14px 15px;border-radius:14px;border-color:#e3e9ef;box-shadow:0 1px 2px rgba(16,24,40,.018)}
.security-overview-card small{font-size:8px;letter-spacing:.075em;color:#8b98a8}
.security-overview-card strong{font-size:15px;font-weight:760;color:#1d2939}
.security-overview-card em{font-size:8.5px;color:#98a2b3}
.soc-icon{width:36px;height:36px;border-radius:11px}
.security-center-v3 .protection-toolbar{padding:14px 28px;background:#fff}
.security-center-v3 .security-chip{min-height:34px;padding:7px 11px;border-radius:9px;font-size:9px}
.protection-grid-v3{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:17px 20px 20px;background:#f7f9fc}
.protection-card-v3{padding:18px!important;border-radius:16px!important;border-color:#e2e8ef!important;box-shadow:0 1px 2px rgba(16,24,40,.018)!important}
.protection-card-v3:hover{transform:translateY(-2px)!important;border-color:#cbd6e1!important;box-shadow:0 12px 28px rgba(16,24,40,.065)!important}
.protection-card-v3.is-on{border-color:#b8e4d9!important;background:linear-gradient(180deg,#fff,#fbfffe)!important;box-shadow:0 9px 25px rgba(15,118,110,.055)!important}
.protection-card-v3 .protection-title h3{font-size:15.5px!important;font-weight:750!important;letter-spacing:-.02em}
.protection-card-v3 .protection-title small{font-size:8px!important;letter-spacing:.06em!important}
.protection-card-v3>p{margin:12px 0 13px!important;min-height:50px!important;font-size:10.5px!important;line-height:1.58!important;color:#69788b!important}
.protection-card-v3 .protection-summary{gap:6px;margin-bottom:10px}
.protection-card-v3 .protection-summary span{min-height:23px;padding:4px 7px;font-size:8px;border-radius:7px}
.protection-policy-line{min-height:36px;padding:9px 10px;border-radius:9px;font-size:8.5px;line-height:1.5}
.protection-card-v3 .protection-stats{gap:7px}
.protection-card-v3 .protection-stats>div{padding:9px!important;border-radius:9px!important}
.protection-card-v3 .protection-stats strong{font-size:11.5px!important}
.protection-switch-wrap{gap:8px}
.toggle{width:43px!important;height:25px!important;border-radius:999px!important;background:#d8e0e7!important;box-shadow:inset 0 1px 2px rgba(16,24,40,.07);transition:background .18s ease,box-shadow .18s ease}
.toggle::after{width:19px!important;height:19px!important;top:3px!important;left:3px!important;border-radius:50%!important;box-shadow:0 1px 3px rgba(16,24,40,.22)!important;transition:left .18s ease!important}
.toggle.on{background:#0f9f8e!important;box-shadow:inset 0 1px 2px rgba(5,95,83,.16),0 0 0 3px rgba(15,159,142,.06)}
.toggle.on::after{left:21px!important}
.protection-state{min-width:38px;height:23px;font-size:8px}
.security-ops-grid{grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr)}
.security-center-v3 .threat-strip{padding:19px 22px 15px}
.security-center-v3 .threat-strip h3{font-size:14px;font-weight:750}
.security-center-v3 .threat-table-wrap,.incident-feed{max-height:460px}
.incident-item{padding:14px;border-radius:12px}

/* Health / repair workspace */
.edge-action-grid{gap:14px;margin-bottom:20px}
.edge-action-card{min-height:216px;padding:19px;border-radius:17px;border-color:#e2e8ef;box-shadow:var(--shadow-soft)}
.edge-action-card h3{font-size:14px;font-weight:750;color:#1d2939}
.edge-action-card p{font-size:10.5px;line-height:1.58;color:#748196}
.edge-action-icon{width:40px;height:40px;border-radius:12px}
.managed-object-strip{gap:10px}
.managed-object-strip>div,.saved-state-kpis>div{border-radius:12px;background:#f8fafc;border-color:#e7ecf2}
.managed-router-details{border-radius:14px;border-color:#e4eaf0}

/* Client portal */
.client-shell{background:linear-gradient(180deg,#f8fafc,#f3f6fa 260px)}
.client-top{height:72px;padding:0 30px;background:rgba(255,255,255,.91);border-bottom-color:#e5eaf0;backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px)}
.client-main{max-width:1740px;padding:36px 34px 70px}
.client-hero{margin-bottom:25px;align-items:center}
.client-hero h1{font-size:38px;font-weight:760;letter-spacing:-.052em;color:#101828}
.client-hero p{font-size:12px;color:#667085}
.client-address-card{border-radius:17px;border-color:#e2e8ef;box-shadow:var(--shadow-soft)}
.client-address-card:hover{transform:translateY(-2px);border-color:#cad6e1;box-shadow:0 14px 34px rgba(16,24,40,.07)}

/* Large displays */
@media(min-width:1500px){
  .live-connection-layout{grid-template-columns:minmax(0,2.75fr) minmax(330px,.62fr);gap:24px}
  .protection-grid-v3{grid-template-columns:repeat(4,minmax(0,1fr))}
  .security-ops-grid{grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr)}
}
@media(min-width:1181px) and (max-width:1499px){
  .live-connection-layout{grid-template-columns:minmax(0,2.25fr) minmax(320px,.72fr);gap:20px}
}

/* Laptop / tablet */
@media(max-width:1280px){
  .content{padding:30px 28px 58px}
  .page-head h1{font-size:32px}
  .protection-grid-v3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .security-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .security-ops-grid{grid-template-columns:1fr}
  .threat-live-panel{border-right:0;border-bottom:1px solid #e3eaf1}
}
@media(max-width:1180px){
  .app{grid-template-columns:1fr}
  .content{padding:28px 22px 54px}
  .topbar{padding:0 22px}
  .live-connection-layout,.two-col{grid-template-columns:1fr}
  .live-connection-layout>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
  .live-connection-layout>aside>.panel{margin-top:0}
  [data-connections-ip]{max-height:630px}
  .edge-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .content{padding:23px 16px 48px}
  .topbar{height:66px;padding:0 16px}
  .page-head{align-items:flex-start;flex-direction:column;margin-bottom:22px}
  .page-head h1{font-size:29px}
  .page-head .actions{width:100%}
  .grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panel-head{padding:17px 17px;min-height:58px}
  .panel-body{padding:17px}
  .live-connection-layout>aside{grid-template-columns:1fr}
  .traffic-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chart-shell{height:240px}
  .security-center-v3{border-radius:18px}
  .security-center-v3 .security-command-head{padding:22px 18px 19px;align-items:flex-start;flex-direction:column}
  .security-overview{padding:12px 14px}
  .security-center-v3 .protection-toolbar{padding:12px 16px;align-items:flex-start;flex-direction:column}
  .protection-grid-v3{grid-template-columns:1fr;padding:12px}
  .protection-card-v3>p{min-height:0!important}
  .edge-action-grid{grid-template-columns:1fr}
  .edge-action-card{min-height:0}
  .client-main{padding:24px 15px 52px}
  .client-hero{align-items:flex-start;flex-direction:column}
  .client-hero h1{font-size:31px}
}

/* Mobile: Active Connections becomes native cards; no sideways scrolling. */
@media(max-width:620px){
  body{font-size:13px}
  .content{padding:19px 11px 42px}
  .topbar{padding:0 12px}
  .page-head h1{font-size:27px}
  .grid.metrics{grid-template-columns:1fr}
  .metric{min-height:108px;padding:17px}
  .metric .v{font-size:27px}
  .panel{border-radius:15px}
  .panel-head{padding:15px 14px}
  .panel-body{padding:14px}
  .traffic-kpis{grid-template-columns:1fr 1fr;gap:7px}
  .traffic-kpi{padding:10px}
  .traffic-kpi strong{font-size:13px}
  .chart-shell{height:195px}
  [data-connections-ip]{min-height:520px;max-height:690px}
  .connections-toolbar{padding:10px 11px;flex-wrap:wrap}
  .connection-search{flex-basis:100%;width:100%}
  .connections-scroll{max-height:540px;overflow-x:hidden!important}
  [data-connections-ip] .peers-table,[data-connections-ip] .peers-table tbody,[data-connections-ip] .peers-table tr,[data-connections-ip] .peers-table td{display:block;width:100%;table-layout:auto}
  [data-connections-ip] .peers-table thead{display:none}
  [data-connections-ip] .peers-table tr{margin:0;padding:12px 13px;border-bottom:1px solid #e9eef3;background:#fff}
  [data-connections-ip] .peers-table td{display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;gap:10px;width:100%!important;padding:5px 0!important;border:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;background:transparent!important;text-align:left!important}
  [data-connections-ip] .peers-table td::before{content:attr(data-label);font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#98a2b3;padding-top:2px}
  [data-connections-ip] .peers-table td[data-label=""]{display:block!important;padding-top:9px!important}
  [data-connections-ip] .peers-table td[data-label=""]::before{display:none}
  [data-connections-ip] .peer-meter{max-width:100%;width:100%}
  [data-connections-ip] .peer-actions{justify-content:flex-start}
  .security-overview{grid-template-columns:1fr}
  .security-center-v3 .security-heading h2{font-size:22px}
  .security-center-v3 .security-mark{width:42px;height:42px}
  .security-center-v3 .security-command-head{padding:19px 14px 16px}
  .security-center-v3 .protection-toolbar{padding:11px 13px}
  .protection-grid-v3{padding:9px;gap:9px}
  .protection-card-v3{padding:15px!important;border-radius:13px!important}
  .security-ops-grid{display:block}
  .incident-item{grid-template-columns:1fr}
  .incident-action{align-items:flex-start;text-align:left;min-width:0}
  .edge-action-card{padding:16px}
  .managed-object-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .client-main{padding:19px 10px 44px}
  .client-top{height:64px;padding:0 13px}
  .client-hero h1{font-size:28px}
  input,select,textarea{font-size:16px}
  .btn{min-height:42px}
}
@media(max-width:390px){
  .traffic-kpis{grid-template-columns:1fr}
  .managed-object-strip{grid-template-columns:1fr}
  .page-head h1,.client-hero h1{font-size:26px}
}


/* v1.6.1 — premium client polish + private SSH */
:root{--premium-ink:#111827;--premium-muted:#64748b;--premium-line:#e5eaf0;--premium-soft:#f7f9fc;--premium-teal:#0f9f8e;--premium-blue:#2563eb;--premium-violet:#7c3aed}
.client-main,.content{font-feature-settings:"ss01" 1,"cv02" 1;text-rendering:optimizeLegibility}
.client-main{max-width:1580px;margin-inline:auto}
.panel,.security-center,.ssh-private-card{box-shadow:0 10px 32px rgba(15,23,42,.045),0 1px 2px rgba(15,23,42,.025)}
.security-command-head{gap:28px}.security-heading{align-items:flex-start}.security-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#effcf8,#f3f7ff);border:1px solid #dcece8;box-shadow:inset 0 1px 0 #fff;color:#0f8f82}
.security-center-head h2{font-size:22px;line-height:1.12}.security-center-head p{font-size:12px;line-height:1.65;color:#718096}
.security-overview{gap:10px;padding:12px 16px;background:#fbfcfe}.security-overview-card{border-radius:13px;border:1px solid #e5ebf1;background:#fff;padding:13px 14px;min-height:76px}.security-overview-card strong{font-size:15px}.security-overview-card em{font-size:9px;color:#95a1b1}
.protection-grid{grid-template-columns:repeat(3,minmax(230px,1fr));gap:12px;padding:16px}.protection-card{padding:17px!important;min-height:205px!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}.protection-card:hover{transform:translateY(-1px)!important}.protection-card.is-changing{opacity:.72;pointer-events:none}.protection-card.is-changing .toggle{box-shadow:0 0 0 4px rgba(15,159,142,.1)}
.protection-title h3{font-size:14.5px!important;letter-spacing:-.015em}.protection-card>p{font-size:11.5px!important;line-height:1.58!important}.protection-policy-line{font-size:9.5px;line-height:1.45}.protection-stats strong{font-variant-numeric:tabular-nums}
.toggle{width:43px!important;height:24px!important;border-radius:999px!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.04);transition:background .17s ease,box-shadow .17s ease}.toggle::after{width:18px!important;height:18px!important;top:3px!important;left:3px!important;transition:left .17s cubic-bezier(.2,.8,.2,1)}.toggle.on::after{left:22px!important}

.ssh-private-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(360px,.8fr);gap:18px;align-items:center;margin:16px;border:1px solid #dfe8ee;border-radius:17px;padding:19px 20px;background:radial-gradient(circle at 8% 0%,rgba(15,159,142,.08),transparent 32%),linear-gradient(135deg,#fff 0%,#fbfdff 60%,#f7fbff 100%);overflow:hidden}
.ssh-private-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#10b981,#2563eb 60%,#8b5cf6);opacity:.8}.ssh-private-card.is-active{border-color:#b9e5da;background:radial-gradient(circle at 8% 0%,rgba(16,185,129,.12),transparent 32%),linear-gradient(135deg,#fff,#f7fffc 58%,#f8fbff)}
.ssh-private-visual{position:relative;align-self:flex-start}.ssh-lock-orb{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#fff;border:1px solid #dce8e8;color:#0f8e81;box-shadow:0 7px 18px rgba(15,23,42,.07)}.ssh-status-dot{position:absolute;right:-3px;bottom:-3px;width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:#94a3b8}.ssh-private-card.is-active .ssh-status-dot{background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.12)}
.ssh-private-copy h3{margin:3px 0 6px;font-size:17px;letter-spacing:-.025em;color:#13202c}.ssh-private-copy p{max-width:660px;margin:0;color:#6a7b8d;font-size:11.5px;line-height:1.58}.ssh-private-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.ssh-private-meta>span{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 9px;border:1px solid #e1e8ee;border-radius:8px;background:rgba(255,255,255,.82);color:#718096;font-size:9.5px}.ssh-private-meta strong{color:#243443;font-size:10px}.ssh-private-card.is-active .ssh-private-meta>span:last-child{color:#087a68;border-color:#cbeade;background:#f1fcf8}
.ssh-private-controls{display:grid;grid-template-columns:minmax(95px,.65fr) minmax(145px,1fr);gap:9px 10px;align-items:end}.ssh-private-controls label{display:grid;gap:6px;color:#718096;font-size:9px;font-weight:750;letter-spacing:.02em}.ssh-private-controls input,.ssh-private-controls select{width:100%;height:39px;border:1px solid #dce4eb;border-radius:9px;background:#fff;color:#1f2d3a;padding:0 10px;font-size:11px;outline:none;box-shadow:inset 0 1px 1px rgba(15,23,42,.02)}.ssh-private-controls input:focus,.ssh-private-controls select:focus{border-color:#8ccdc1;box-shadow:0 0 0 3px rgba(15,159,142,.08)}.ssh-private-actions{grid-column:1/-1;display:flex;gap:8px}.ssh-private-actions .btn{min-height:38px;border-radius:9px}.ssh-private-actions .ssh-enable{flex:1}.ssh-private-card.is-working{opacity:.72;pointer-events:none}

.connections-panel,.active-connections-panel,[data-connections-ip]{min-width:0}.connections-scroll{overflow-x:visible!important}.connections-scroll table{width:100%;table-layout:auto}.connections-scroll th:nth-child(1){width:28%}.connections-scroll th:nth-child(2){width:22%}.connections-scroll th:nth-child(3){width:12%}.connections-scroll th:nth-child(4){width:18%}.connections-scroll th:nth-child(5){width:20%}.peer-actions{justify-content:flex-end;flex-wrap:wrap}.connection-search input{min-width:240px}

@media(max-width:1180px){.protection-grid{grid-template-columns:repeat(2,minmax(230px,1fr))}.ssh-private-card{grid-template-columns:auto minmax(0,1fr)}.ssh-private-controls{grid-column:2;grid-template-columns:120px minmax(150px,1fr)}}
@media(max-width:820px){.security-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.protection-grid{grid-template-columns:1fr}.ssh-private-card{grid-template-columns:auto minmax(0,1fr);margin:12px;padding:17px}.ssh-private-controls{grid-column:1/-1;grid-template-columns:1fr 1fr}.connections-scroll{overflow:visible!important}.connections-scroll table,.connections-scroll thead,.connections-scroll tbody,.connections-scroll tr,.connections-scroll td{display:block}.connections-scroll thead{display:none}.connections-scroll tr{margin:10px 0;border:1px solid #e4eaf0;border-radius:13px;background:#fff;padding:12px}.connections-scroll td{display:flex!important;justify-content:space-between;align-items:center;gap:14px;width:100%!important;border:0!important;padding:6px 0!important;text-align:right!important}.connections-scroll td:before{content:attr(data-label);font-size:9px;font-weight:750;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.connections-scroll td[data-label=""]:before{display:none}.peer-actions{width:100%;justify-content:flex-end}.peer-meter{min-width:100px}.connection-search{flex:1}.connection-search input{min-width:0;width:100%}}
@media(max-width:540px){.security-overview{grid-template-columns:1fr}.security-center-head h2{font-size:20px}.ssh-private-card{grid-template-columns:1fr;gap:13px}.ssh-private-visual{display:flex}.ssh-private-controls{grid-column:auto;grid-template-columns:1fr}.ssh-private-actions{grid-column:auto;display:grid;grid-template-columns:1fr}.ssh-private-meta{display:grid;grid-template-columns:1fr}.ssh-private-meta>span{justify-content:space-between}.protection-grid{padding:9px}.protection-card{padding:15px!important}.client-main{padding-inline:10px}.connections-toolbar{flex-direction:column;align-items:stretch}.connection-search{width:100%}}


/* v1.6.1 — global visual refinement */
html{background:#f3f6f9}body{background:linear-gradient(180deg,#f6f8fb 0,#f2f5f8 100%);color:#17212b;letter-spacing:-.004em}
.app{grid-template-columns:272px minmax(0,1fr)}
.sidebar{padding:24px 17px;background:linear-gradient(180deg,#08131a 0%,#0a151d 56%,#091118 100%);border-right-color:#172832;box-shadow:18px 0 60px rgba(5,13,19,.08)}
.brand{padding-inline:8px}.brand strong{font-size:12.5px;letter-spacing:.12em}.nav{gap:4px}.nav a{min-height:42px;padding:10px 12px;border-radius:10px;font-size:12px}.nav a.active{background:linear-gradient(135deg,#13242d,#10202a);box-shadow:inset 0 0 0 1px rgba(255,255,255,.045),0 8px 20px rgba(0,0,0,.12)}
.topbar{height:72px;background:rgba(246,248,251,.86);border-bottom-color:rgba(210,220,228,.78);backdrop-filter:blur(20px) saturate(1.12)}
.content{max-width:1680px;padding:30px 34px 58px}.page-head{margin-bottom:25px}.page-head h1{font-size:31px;font-weight:790;letter-spacing:-.052em}.page-head p{font-size:12px;color:#748295}
.panel{border-color:#e1e7ed;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 10px 34px rgba(15,23,42,.045),0 1px 2px rgba(15,23,42,.02)}.panel-head{min-height:57px;padding:16px 19px}.panel-head h2,.panel-head h3{font-size:14.5px;color:#16222d}.panel-body{padding:20px}
.metric{border-color:#e1e7ed;border-radius:15px;box-shadow:0 7px 24px rgba(15,23,42,.035)}.metric .v{color:#16222d}.metric .k{color:#8491a0}
.btn{border-color:#dce3e9;border-radius:10px;min-height:38px;padding:9px 14px;font-size:11.5px;box-shadow:0 1px 2px rgba(15,23,42,.025)}.btn.primary{background:linear-gradient(180deg,#17232d,#0f1921);border-color:#101a22;box-shadow:0 7px 18px rgba(15,23,42,.12)}.btn.primary:hover{background:linear-gradient(180deg,#1d2c37,#14212a)}
input,select,textarea{border-color:#dce3e9;border-radius:10px;background:#fff;min-height:40px}.table th{background:#fafbfd;color:#8a96a4}.table td{color:#344250}.table tr:hover td{background:#fbfdff}
.badge{border:1px solid rgba(0,0,0,.025)}.live-pill{border:1px solid rgba(15,159,142,.1)}
.client-top{backdrop-filter:blur(20px) saturate(1.08)}.client-hero{margin-bottom:20px}.client-hero h1{letter-spacing:-.045em}.client-scope-panel .scope-ip{font-size:17px}.policy-panel{margin-top:20px!important}
@media(max-width:1180px){.app{grid-template-columns:1fr}.content{padding:27px 22px 52px}}
@media(max-width:760px){.content{padding:20px 13px 42px}.page-head h1{font-size:27px}.panel{border-radius:14px}.panel-head{padding:14px 15px}.panel-body{padding:15px}}

/* ========================================================================== */
/* ESNETWORK v1.7.0 — premium control-center visual system                    */
/* Final cascade: intentionally consolidated after earlier compatibility CSS. */
/* ========================================================================== */
:root{
  --bg:#f4f7fb;--bg-2:#f8fafc;--surface:#fff;--surface-2:#f8fafc;--surface-3:#eef4f7;
  --ink:#0f1b2d;--ink-2:#27364a;--muted:#64748b;--muted-2:#94a3b8;
  --line:#e1e8f0;--line-strong:#d3dde7;--nav:#061827;--nav-2:#0a2133;--nav-3:#102c40;
  --accent:#0da58f;--accent-2:#18bda5;--blue:#3b82f6;--danger:#ef5d6c;--warning:#f59e0b;--success:#0da58f;
  --shadow:0 12px 34px rgba(15,23,42,.055);--shadow-soft:0 5px 18px rgba(15,23,42,.045);
  --radius:16px;--radius-sm:11px;
}
html{scroll-behavior:smooth;background:var(--bg)}
body{background:var(--bg);color:var(--ink);font-size:14px;line-height:1.45;letter-spacing:-.004em}
::selection{background:rgba(13,165,143,.18);color:#08251f}

/* Admin shell */
.app{grid-template-columns:272px minmax(0,1fr)!important;background:var(--bg)!important}
.sidebar{background:linear-gradient(180deg,#061725 0%,#071b2b 58%,#061725 100%)!important;color:#d9e6ef!important;border-right:1px solid rgba(255,255,255,.055)!important;box-shadow:10px 0 38px rgba(4,15,25,.08)!important;padding:22px 13px 18px!important}
.sidebar-header{padding:0 5px 9px!important;align-items:center!important}.sidebar .brand{padding:0 8px 18px!important;gap:13px!important}
.sidebar .brand .esn-logo{width:38px!important;height:38px!important;color:#14d7c2!important;filter:drop-shadow(0 7px 16px rgba(20,215,194,.14))!important}
.sidebar .brand strong{font-size:14px!important;color:#17d4c1!important;letter-spacing:.12em!important;font-weight:850!important}.sidebar .brand span{font-size:10px!important;color:#c1cfda!important;margin-top:2px!important;letter-spacing:0!important}
.sidebar .nav-label{font-size:9px!important;color:#74899a!important;letter-spacing:.15em!important;padding:18px 13px 8px!important;font-weight:850!important}
.sidebar .nav{gap:5px!important}.sidebar .nav a{min-height:44px!important;padding:10px 13px!important;border-radius:10px!important;color:#b9c8d4!important;font-size:12.5px!important;font-weight:660!important;gap:11px!important;position:relative!important}
.sidebar .nav a .ico{color:#8fa4b4!important}.sidebar .nav a:hover{background:rgba(255,255,255,.055)!important;color:#fff!important}.sidebar .nav a:hover .ico{color:#dceaf2!important}
.sidebar .nav a.active{background:linear-gradient(90deg,rgba(13,165,143,.18),rgba(52,115,158,.18))!important;color:#fff!important;box-shadow:inset 3px 0 0 #18cdb6, inset 0 0 0 1px rgba(255,255,255,.025)!important}.sidebar .nav a.active .ico{color:#77e5d6!important}
.sidebar-bottom{border-top:1px solid rgba(255,255,255,.075)!important;padding:16px 10px 0!important}.sidebar-bottom .who{color:#f3f8fb!important;font-weight:720!important}.sidebar-bottom .role{color:#758a9b!important}.admin-avatar{background:#dffaf4!important;color:#087767!important;border:1px solid rgba(24,205,182,.22)!important;border-radius:50%!important;width:38px!important;height:38px!important}.logout{color:#8fa2b0!important}.logout:hover{color:#fff!important}
.main{background:var(--bg)!important}.topbar{height:76px!important;background:rgba(255,255,255,.92)!important;border-bottom:1px solid var(--line)!important;padding:0 clamp(22px,2.8vw,44px)!important;box-shadow:0 1px 0 rgba(15,23,42,.018)!important}.top-title{font-size:15px!important;font-weight:760!important;color:#172338!important}.crumb{font-size:9px!important;color:#91a0af!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:800!important}
.content{max-width:1640px!important;padding:34px clamp(22px,2.8vw,44px) 70px!important}.page-head{margin-bottom:24px!important;align-items:center!important}.page-head h1{font-size:clamp(28px,2.2vw,36px)!important;font-weight:820!important;letter-spacing:-.04em!important;color:#0f1b2d!important}.page-head p{font-size:13px!important;color:#64748b!important;line-height:1.6!important;margin-top:7px!important}.eyebrow,.section-kicker{font-size:9px!important;letter-spacing:.14em!important;color:#8090a2!important;font-weight:850!important}

/* Cards, controls and hierarchy */
.panel,.metric,.client-address-card,.security-center-premium{background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:var(--shadow-soft)!important}
.panel{overflow:hidden!important}.panel-head{min-height:61px!important;padding:16px 20px!important;background:#fff!important;border-bottom:1px solid #e8eef4!important}.panel-head h2,.panel-head h3{font-size:15px!important;font-weight:760!important;letter-spacing:-.02em!important;color:#122033!important}.panel-head .meta{font-size:10px!important;color:#91a0af!important}
.panel-body{padding:20px!important}.grid{gap:18px!important}.grid.metrics{gap:17px!important;margin-bottom:20px!important}.metric{padding:20px!important;min-height:122px!important}.metric .k{font-size:10px!important;color:#708197!important;letter-spacing:.08em!important}.metric .v{font-size:30px!important;color:#101c2f!important;font-weight:820!important}.metric .sub{font-size:11px!important;color:#748399!important}
.btn{min-height:39px!important;padding:9px 13px!important;border-radius:10px!important;border-color:#d8e2eb!important;color:#26364a!important;font-weight:720!important;background:#fff!important;box-shadow:none!important}.btn:hover{transform:none!important;border-color:#b9cad7!important;background:#f9fbfd!important;box-shadow:0 4px 12px rgba(15,23,42,.04)!important}.btn.primary,.btn.accent{background:linear-gradient(180deg,#13ad98,#079783)!important;border-color:#079783!important;color:#fff!important;box-shadow:0 5px 14px rgba(13,165,143,.17)!important}.btn.primary:hover,.btn.accent:hover{background:linear-gradient(180deg,#14bca4,#0a9f8a)!important;border-color:#0a9f8a!important}.btn.danger{background:#fff7f8!important;border-color:#f1d3d8!important;color:#bd4452!important}.btn.ghost{background:#fff!important}.btn.sm{min-height:34px!important;padding:7px 10px!important;font-size:10.5px!important}
input,select,textarea{min-height:42px!important;border-radius:10px!important;border:1px solid #d7e1eb!important;background:#fbfcfe!important;color:#152337!important;padding:10px 12px!important}input:focus,select:focus,textarea:focus{background:#fff!important;border-color:#7ccfbe!important;box-shadow:0 0 0 3px rgba(13,165,143,.10)!important}label{font-size:10.5px!important;color:#64748b!important;font-weight:720!important}
.badge{border-radius:7px!important;text-transform:none!important;letter-spacing:0!important;font-size:9.5px!important;padding:5px 8px!important}.live-pill{background:#e9f8f4!important;color:#087869!important;border:1px solid #d2efe7!important;letter-spacing:.04em!important}

/* Tables */
.table-wrap{overflow:auto!important;scrollbar-width:thin!important;scrollbar-color:#aab6c2 transparent!important}.table{color:#24344a!important}.table th{height:43px!important;padding:10px 14px!important;background:#f8fafc!important;color:#718095!important;font-size:9px!important;letter-spacing:.055em!important;border-bottom:1px solid #e5ebf1!important}.table td{padding:13px 14px!important;color:#2b3a4f!important;border-bottom:1px solid #edf1f5!important;font-size:11.5px!important}.table tr:hover td{background:#fbfdfd!important}.table .strong{color:#132035!important}.protocol-chip{background:#f1f5f8!important;border-color:#e1e8ef!important;color:#53657a!important}.peer-rank{background:#eaf8f5!important;color:#0d8172!important}.peer-meter{background:#edf2f5!important}.peer-meter i{background:linear-gradient(90deg,#16b9a2,#4b8ff7)!important}

/* Protection center: deliberately mirrors the approved mockup */
.security-center-premium{margin-top:22px!important;overflow:hidden!important;box-shadow:0 14px 40px rgba(15,23,42,.06)!important;position:relative!important}.security-center-premium:before{content:"";display:block!important;position:absolute!important;inset:0 0 auto 0!important;height:3px!important;background:linear-gradient(90deg,#13b8a1,#2a82e8 56%,#8b5cf6)!important;z-index:2!important}
.security-center-premium .security-center-head{padding:24px 25px 20px!important;background:#fff!important;border-bottom:1px solid #e7edf3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}.security-heading{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important}.security-mark{width:42px!important;height:42px!important;border-radius:12px!important;display:grid!important;place-items:center!important;color:#0d9c88!important;background:#e9f9f5!important;border:1px solid #d2eee7!important;flex:none!important}.security-heading h2{margin:2px 0 2px!important;font-size:20px!important;font-weight:800!important;letter-spacing:-.03em!important;color:#112036!important}.security-heading p{margin:0!important;color:#6b7c91!important;font-size:11.5px!important;line-height:1.5!important}.protection-head-actions{display:flex!important;align-items:center!important;gap:8px!important;flex:none!important}.protection-health{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:34px!important;padding:0 11px!important;border-radius:999px!important;background:#eaf8f4!important;color:#087a6b!important;border:1px solid #d3eee7!important;font-size:10px!important;font-weight:770!important}.status-orb{width:7px!important;height:7px!important;border-radius:50%!important;background:#12b99e!important;box-shadow:0 0 0 4px rgba(18,185,158,.1)!important}
.security-overview{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;padding:17px 20px!important;background:#f8fafc!important;border-bottom:1px solid #e6edf3!important}.security-overview-card{min-width:0!important;background:#fff!important;border:1px solid #e3eaf1!important;border-radius:13px!important;padding:13px 14px!important;display:flex!important;align-items:center!important;gap:11px!important;box-shadow:0 1px 2px rgba(15,23,42,.018)!important}.soc-icon{width:34px!important;height:34px!important;border-radius:10px!important;display:grid!important;place-items:center!important;flex:none!important}.soc-icon.filter,.soc-icon.shield{background:#e8f8f4!important;color:#0e947f!important}.soc-icon.pulse{background:#eaf1ff!important;color:#3677e4!important}.soc-icon.incident{background:#fff1e8!important;color:#f07a23!important}.security-overview-card small{display:block!important;color:#8492a4!important;font-size:8.5px!important;font-weight:760!important;text-transform:uppercase!important;letter-spacing:.07em!important}.security-overview-card strong{display:block!important;margin-top:2px!important;color:#142237!important;font-size:15px!important;font-weight:790!important}.security-overview-card em{display:block!important;margin-top:1px!important;color:#93a0af!important;font-size:8.5px!important;font-style:normal!important}
.protection-toolbar{padding:13px 20px!important;background:#fff!important;border-bottom:1px solid #e8eef4!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}.protection-toolbar>div:first-child span{display:block!important;color:#26364b!important;font-size:10.5px!important;font-weight:760!important}.protection-toolbar>div:first-child small{display:block!important;color:#8a98a9!important;font-size:9.5px!important;margin-top:1px!important}.protection-toolbar-actions{display:flex!important;gap:7px!important;flex-wrap:wrap!important;justify-content:flex-end!important}.security-chip{min-height:32px!important;padding:7px 10px!important;border:1px solid #dce5ed!important;background:#f9fbfd!important;color:#46586e!important;border-radius:9px!important;font-size:9.5px!important;font-weight:720!important}.security-chip:hover{background:#f0f8f6!important;border-color:#bfe2da!important;color:#087968!important}.security-chip.danger{background:#fff8f8!important;border-color:#f0d8db!important;color:#b84c59!important}
.protection-list{padding:0 20px 7px!important;background:#fff!important}.protection-row{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto 44px!important;align-items:center!important;column-gap:12px!important;min-height:76px!important;padding:13px 4px!important;border-bottom:1px solid #e8edf3!important;position:relative!important;transition:background .15s ease!important}.protection-row:last-child{border-bottom:0!important}.protection-row:hover{background:#fbfdfd!important}.protection-row.is-on{background:linear-gradient(90deg,rgba(13,165,143,.025),transparent 42%)!important}.protection-row-icon{width:36px!important;height:36px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:#f0f4f7!important;color:#6f8093!important;border:1px solid #e3e9ef!important}.protection-row.is-on .protection-row-icon{background:#e7f8f3!important;color:#0c9b85!important;border-color:#d2eee7!important}.protection-row-copy{min-width:0!important}.protection-row-copy h3{margin:0!important;color:#142136!important;font-size:13px!important;font-weight:780!important;letter-spacing:-.012em!important}.protection-row-copy p{margin:3px 0 0!important;color:#738296!important;font-size:10.5px!important;line-height:1.4!important;white-space:normal!important}.protection-row-tags{display:flex!important;gap:5px!important;margin-top:5px!important}.protection-row-tags span{padding:3px 6px!important;border-radius:6px!important;background:#f5f7fa!important;border:1px solid #e7ecf1!important;color:#8491a0!important;font-size:8px!important;font-weight:700!important}.protection-row-status{min-width:72px!important;text-align:right!important}.protection-row-status .protection-state{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:34px!important;height:22px!important;padding:0 8px!important;border-radius:7px!important;background:#eef2f6!important;color:#718096!important;font-size:9px!important;font-weight:820!important;text-transform:uppercase!important}.protection-row-status .protection-state.on{background:#e4f7f1!important;color:#07806f!important}.protection-row-status small{display:block!important;margin-top:3px!important;color:#9aa6b4!important;font-size:8.5px!important}.protection-row.is-on .protection-row-status small{color:#0e9a83!important}.protection-row .toggle{justify-self:end!important}
.toggle{width:39px!important;height:22px!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important;padding:2px!important;position:relative!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.04)!important;transition:background .16s ease!important}.toggle:before{content:""!important;position:absolute!important;top:3px!important;left:3px!important;width:16px!important;height:16px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 4px rgba(15,23,42,.18)!important;transition:transform .18s ease!important}.toggle.on{background:#0da58f!important}.toggle.on:before{transform:translateX(17px)!important}.toggle:disabled{opacity:.55!important}.protection-row.is-changing{background:#f7fbfa!important}.protection-row.is-changing .toggle{animation:esnTogglePulse 1s ease-in-out infinite!important}@keyframes esnTogglePulse{50%{box-shadow:0 0 0 5px rgba(13,165,143,.08)!important}}
.protection-row-config{grid-column:2/5!important;width:100%!important;margin:10px 0 2px!important;padding:11px 12px!important;background:#f8fafc!important;border:1px solid #e4ebf2!important;border-radius:10px!important}.protection-row-config summary{cursor:pointer!important;color:#617187!important;font-size:9.5px!important;font-weight:730!important}.protection-config-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;margin-top:10px!important}.protection-config-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-top:10px!important}.protection-config-foot>span{font-size:9px!important;color:#8290a2!important}

/* Private SSH */
.ssh-private-card{margin:18px 20px!important;padding:20px!important;border:1px solid #dfe7ef!important;border-radius:15px!important;background:linear-gradient(180deg,#fff,#fbfdfe)!important;box-shadow:0 5px 20px rgba(15,23,42,.04)!important}.ssh-private-title{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important}.ssh-lock-orb{width:40px!important;height:40px!important;border-radius:11px!important;display:grid!important;place-items:center!important;background:#eef3f7!important;color:#243b53!important;border:1px solid #dfe6ed!important}.ssh-private-card.is-active .ssh-lock-orb{background:#e8f8f4!important;color:#0c9681!important;border-color:#ceece5!important}.ssh-private-title h3{margin:1px 0 2px!important;font-size:16px!important;font-weight:790!important;color:#142136!important}.ssh-private-title p{margin:0!important;color:#718096!important;font-size:10.5px!important}.ssh-live-badge{min-width:68px!important;padding:6px 9px!important;border-radius:999px!important;text-align:center!important;background:#eef2f6!important;color:#6d7b8d!important;border:1px solid #e0e6ec!important;font-size:9px!important;font-weight:800!important}.ssh-private-card.is-active .ssh-live-badge{background:#e6f8f3!important;border-color:#d2eee7!important;color:#0a806f!important}.ssh-private-grid{display:grid!important;grid-template-columns:minmax(220px,1.2fr) 160px minmax(240px,1fr)!important;gap:12px!important;margin-top:17px!important}.ssh-field{margin:0!important;padding:10px 12px!important;min-height:63px!important;border:1px solid #e1e8ef!important;border-radius:10px!important;background:#f8fafc!important}.ssh-field>span{display:block!important;color:#8391a2!important;font-size:8.5px!important;font-weight:760!important;margin-bottom:5px!important}.ssh-field strong{display:block!important;color:#132238!important;font-size:13px!important}.ssh-field input,.ssh-field select{min-height:30px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-weight:730!important;color:#17263b!important}.ssh-private-actions{display:flex!important;gap:8px!important;margin-top:13px!important}.ssh-private-actions .ssh-enable{flex:1!important}.ssh-private-actions .ssh-disable{min-width:96px!important}

/* Security activity */
.security-ops-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;border-top:1px solid #e7edf3!important;background:#f8fafc!important}.threat-live-panel,.threat-history-panel{min-width:0!important;background:#fff!important}.threat-live-panel{border-right:1px solid #e7edf3!important}.threat-strip{min-height:69px!important;padding:15px 20px!important;background:#fff!important;border-bottom:1px solid #e8eef4!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}.threat-strip h3{margin:2px 0 1px!important;color:#142136!important;font-size:13px!important;font-weight:770!important}.threat-strip p{margin:0!important;color:#8391a2!important;font-size:9.5px!important}.threat-history-count{font-size:9px!important;color:#738197!important;background:#f3f6f9!important;border:1px solid #e3e9ef!important;border-radius:999px!important;padding:5px 8px!important}.incident-feed{padding:10px 14px 14px!important;max-height:370px!important;overflow:auto!important}.incident-item{border:1px solid #e5ebf1!important;background:#fff!important;border-radius:11px!important;padding:12px!important;margin-top:8px!important}.incident-empty{padding:28px 12px!important;color:#7c8a9c!important;text-align:center!important}.incident-empty strong{display:block!important;color:#33445a!important;margin-bottom:3px!important}

/* Client shell */
.client-shell{background:#f4f7fb!important}.client-top{height:76px!important;background:linear-gradient(90deg,#061827,#082137)!important;border-bottom:1px solid rgba(255,255,255,.06)!important;box-shadow:0 8px 24px rgba(4,15,25,.08)!important;padding:0 max(24px,calc((100vw - 1540px)/2))!important}.client-top .brand{padding:0!important}.client-top .brand .esn-logo{width:38px!important;height:38px!important;color:#1bd4bf!important}.client-top .brand strong{color:#1bd4bf!important;font-size:14px!important;letter-spacing:.12em!important}.client-top .brand span{color:#d1dbe3!important;font-size:10px!important}.client-identity span{color:#8195a7!important}.client-identity strong{color:#f3f8fb!important}.client-signout{color:#c1cfda!important;border-color:rgba(255,255,255,.13)!important;background:rgba(255,255,255,.04)!important;border-radius:9px!important;padding:8px 10px!important}.client-main{max-width:1540px!important;padding:34px 28px 84px!important}.client-hero{padding:3px 0 20px!important;align-items:center!important}.client-hero h1{font-size:clamp(30px,3vw,42px)!important;color:#101d31!important;font-weight:840!important;letter-spacing:-.045em!important}.client-hero p{font-size:12px!important;color:#748399!important}.client-hero .eyebrow{color:#0a8e7a!important}.live-connection-layout{grid-template-columns:minmax(0,1.8fr) minmax(320px,.62fr)!important;gap:18px!important}.live-connection-layout>section,.live-connection-layout>aside{min-width:0!important}.live-connection-layout .panel{box-shadow:var(--shadow-soft)!important}.peers-table{min-width:0!important;table-layout:fixed!important}.peers-table th:nth-child(1){width:31%!important}.peers-table th:nth-child(2){width:21%!important}.peers-table th:nth-child(3){width:12%!important}.peers-table th:nth-child(4){width:23%!important}.peers-table th:nth-child(5){width:13%!important}.peers-table td{overflow-wrap:anywhere!important}.client-scope-panel .scope-ip{font-size:22px!important;color:#142136!important}.client-scope-panel .scope-list>div{padding:11px 0!important}
.policy-panel{margin-top:20px!important}.client-rules-table{min-width:860px!important}

/* Mutation state subtly freezes live badges instead of creating extra requests. */
.router-mutating .live-pill{opacity:.62!important}.router-mutating [data-live-ip],.router-mutating [data-connections-ip]{transition:opacity .15s ease!important;opacity:.92!important}

/* Tablet */
@media(max-width:1180px){
  .app{display:block!important}.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(292px,88vw)!important;height:100dvh!important;transform:translateX(-105%)!important;z-index:90!important;box-shadow:24px 0 70px rgba(4,15,25,.28)!important}.sidebar-open .sidebar{transform:translateX(0)!important}.sidebar-scrim{z-index:80!important}.topbar{height:68px!important;padding:0 20px!important}.mobile-menu{display:inline-flex!important}.content{padding:26px 20px 58px!important}.live-connection-layout,.two-col{grid-template-columns:1fr!important}.security-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}.security-ops-grid{grid-template-columns:1fr!important}.threat-live-panel{border-right:0!important;border-bottom:1px solid #e7edf3!important}.ssh-private-grid{grid-template-columns:1fr 150px 1fr!important}.client-main{padding:28px 20px 86px!important}.peers-table{table-layout:auto!important}
}

/* Mobile: card-oriented and intentionally not a squeezed desktop table. */
@media(max-width:760px){
  body{font-size:13px!important}.topbar{height:62px!important;padding:0 13px!important}.top-title{font-size:13px!important}.content{padding:20px 13px 48px!important}.page-head{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}.page-head h1{font-size:27px!important}.page-head p{font-size:11.5px!important}.actions{width:100%!important}.actions .btn{flex:1!important}
  .panel,.metric,.client-address-card,.security-center-premium{border-radius:14px!important}.panel-head{min-height:55px!important;padding:14px 14px!important}.panel-body{padding:14px!important}.grid.metrics{grid-template-columns:1fr 1fr!important;gap:10px!important}.metric{min-height:105px!important;padding:15px!important}.metric .v{font-size:25px!important}
  .client-top{height:70px!important;padding:0 15px!important;position:sticky!important;top:0!important;z-index:60!important}.client-top .brand .esn-logo{width:36px!important;height:36px!important}.client-top .brand strong{font-size:12px!important}.client-top .brand span{display:block!important;font-size:8px!important}.client-identity>div{display:none!important}.client-signout span{display:none!important}.client-signout{width:36px!important;height:36px!important;padding:0!important;display:grid!important;place-items:center!important}
  .client-main{padding:22px 12px 94px!important}.client-hero{align-items:flex-start!important;gap:12px!important}.client-hero h1{font-size:30px!important}.client-hero .btn{width:auto!important;min-height:35px!important}
  .security-center-premium .security-center-head{padding:19px 14px 15px!important;align-items:flex-start!important;flex-direction:column!important}.security-heading{align-items:flex-start!important}.security-mark{width:38px!important;height:38px!important}.security-heading h2{font-size:18px!important}.security-heading p{font-size:10.5px!important}.protection-head-actions{width:100%!important;justify-content:space-between!important}.protection-reload-btn{flex:0!important}
  .security-overview{grid-template-columns:1fr 1fr!important;gap:8px!important;padding:11px!important}.security-overview-card{padding:10px!important;gap:8px!important}.soc-icon{width:30px!important;height:30px!important}.security-overview-card strong{font-size:13px!important}.security-overview-card em{display:none!important}
  .protection-toolbar{padding:12px 13px!important;align-items:flex-start!important;flex-direction:column!important}.protection-toolbar-actions{width:100%!important;justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:2px!important}.security-chip{white-space:nowrap!important;flex:none!important}
  .protection-list{padding:0 12px 5px!important}.protection-row{grid-template-columns:36px minmax(0,1fr) 42px!important;column-gap:10px!important;min-height:78px!important;padding:12px 2px!important}.protection-row-icon{width:34px!important;height:34px!important}.protection-row-copy h3{font-size:12.5px!important}.protection-row-copy p{font-size:9.5px!important;line-height:1.35!important}.protection-row-status{display:none!important}.protection-row .toggle{grid-column:3!important}.protection-row-config{grid-column:1/-1!important;margin-left:0!important}.protection-config-grid{grid-template-columns:1fr 1fr!important}.protection-config-foot{align-items:flex-start!important;flex-direction:column!important}
  .ssh-private-card{margin:14px 12px!important;padding:15px!important}.ssh-private-title{grid-template-columns:38px minmax(0,1fr)!important;align-items:start!important}.ssh-live-badge{grid-column:1/-1!important;width:max-content!important;margin-left:50px!important}.ssh-private-title h3{font-size:15px!important}.ssh-private-title p{font-size:9.5px!important}.ssh-private-grid{grid-template-columns:1fr 110px!important;gap:8px!important}.ssh-duration-field{grid-column:1/-1!important}.ssh-field{min-height:58px!important;padding:9px 10px!important}.ssh-private-actions{flex-direction:column!important}.ssh-private-actions .btn{width:100%!important}
  .security-ops-grid{display:block!important}.threat-strip{padding:13px 14px!important;min-height:62px!important}.threat-strip p{display:none!important}.incident-feed{padding:8px 10px 12px!important}
  .live-connection-layout{display:block!important}.live-connection-layout>section>.panel,.live-connection-layout>aside>.panel{margin-bottom:12px!important}.chart-shell{height:170px!important}.traffic-kpis{gap:8px!important}.traffic-kpi{padding:10px!important}.traffic-kpi span{font-size:8.5px!important}.traffic-kpi strong{font-size:12px!important}
  [data-connections-ip] .table-wrap{overflow:visible!important}[data-connections-ip] .peers-table{min-width:0!important;display:block!important}[data-connections-ip] .peers-table thead{display:none!important}[data-connections-ip] .peers-table tbody{display:grid!important;gap:8px!important;padding:10px!important}[data-connections-ip] .peers-table tr{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:4px 10px!important;padding:11px 12px!important;border:1px solid #e2e9f0!important;border-radius:11px!important;background:#fff!important;box-shadow:0 2px 8px rgba(15,23,42,.025)!important}[data-connections-ip] .peers-table td{display:block!important;padding:0!important;border:0!important;background:transparent!important;font-size:10px!important;text-align:left!important}[data-connections-ip] .peers-table td:before{display:none!important}[data-connections-ip] .peers-table td:first-child{grid-column:1!important;grid-row:1!important}[data-connections-ip] .peers-table td:nth-child(2){grid-column:1!important;grid-row:2!important;color:#6f8093!important}[data-connections-ip] .peers-table td:nth-child(3){grid-column:1!important;grid-row:3!important;color:#8593a3!important}[data-connections-ip] .peers-table td:nth-child(4){grid-column:1!important;grid-row:4!important}[data-connections-ip] .peers-table td:last-child{grid-column:2!important;grid-row:1/5!important;display:flex!important;align-items:center!important;justify-content:flex-end!important}[data-connections-ip] .peers-table .empty{grid-column:1/-1!important;text-align:center!important;padding:20px 8px!important}
  .table.responsive-table:not(.peers-table){min-width:0!important}.client-rules-table{min-width:0!important}
  .client-bottom-nav{display:grid!important;grid-template-columns:repeat(5,1fr)!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:70!important;min-height:66px!important;padding:6px max(5px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left))!important;background:rgba(6,24,39,.96)!important;border-top:1px solid rgba(255,255,255,.08)!important;box-shadow:0 -12px 32px rgba(4,15,25,.16)!important;backdrop-filter:blur(14px)!important}.client-bottom-nav a{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;color:#a9b9c6!important;font-size:8.5px!important;font-weight:680!important;min-width:0!important}.client-bottom-nav a .ico{width:18px!important;height:18px!important}.client-bottom-nav a:first-child{color:#36dac2!important}
}
@media(min-width:761px){.client-bottom-nav{display:none!important}}
@media(max-width:420px){.grid.metrics{grid-template-columns:1fr!important}.security-overview{grid-template-columns:1fr 1fr!important}.security-overview-card{min-height:64px!important}.protection-row-copy p{max-width:220px!important}.ssh-private-grid{grid-template-columns:1fr!important}.ssh-duration-field{grid-column:auto!important}.ssh-live-badge{margin-left:0!important}.client-main{padding-left:9px!important;padding-right:9px!important}}

/* ============================================================
   ESNETWORK v1.7.1 — approved premium workspace pass
   Final override layer. Keep this section last.
   ============================================================ */
:root{
  --bg:#f4f7fb!important;
  --bg-2:#f8fafc!important;
  --surface:#ffffff!important;
  --surface-2:#f8fbfd!important;
  --surface-3:#eef4f7!important;
  --ink:#0b1a2e!important;
  --ink-2:#263a51!important;
  --muted:#718399!important;
  --muted-2:#96a5b5!important;
  --line:#e1e8ef!important;
  --line-strong:#d3dee8!important;
  --nav:#061827!important;
  --nav-2:#082138!important;
  --nav-3:#0b2a43!important;
  --accent:#0faf9c!important;
  --accent-2:#18c7b2!important;
  --blue:#3979ed!important;
  --danger:#ff4d5e!important;
  --warning:#ff8a1f!important;
  --success:#0aa37f!important;
  --shadow:0 12px 34px rgba(24,45,70,.075)!important;
  --shadow-soft:0 6px 18px rgba(24,45,70,.055)!important;
  --radius:16px!important;
  --radius-sm:11px!important;
  --font:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif!important;
}
html{background:#f4f7fb!important;scrollbar-gutter:stable}
body{background:radial-gradient(circle at 72% -10%,rgba(46,188,176,.055),transparent 28%),#f4f7fb!important;color:var(--ink)!important;font-size:14px!important;line-height:1.45!important;letter-spacing:-.006em!important}
button,input,select,textarea{font-family:var(--font)!important}

/* Desktop shell — fixed, continuous sidebar with no white breaks. */
@media(min-width:1181px){
  .app{display:block!important;min-height:100dvh!important}
  .sidebar{position:fixed!important;inset:0 auto 0 0!important;width:268px!important;height:100dvh!important;min-height:100dvh!important;padding:20px 13px 18px!important;overflow-y:auto!important;overflow-x:hidden!important;background:linear-gradient(180deg,#061827 0%,#071d31 58%,#061827 100%)!important;border-right:1px solid rgba(255,255,255,.055)!important;box-shadow:18px 0 42px rgba(3,18,32,.06)!important;z-index:100!important}
  .main{margin-left:268px!important;min-width:0!important;width:calc(100% - 268px)!important}
}
.sidebar-header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:64px!important;padding:0 7px 10px!important}
.sidebar .brand{padding:0!important;gap:12px!important;min-width:0!important}
.sidebar .brand .esn-logo{width:40px!important;height:40px!important;color:#18d2be!important;filter:drop-shadow(0 8px 16px rgba(24,210,190,.13))!important}
.sidebar .brand strong{font-size:14px!important;letter-spacing:.13em!important;color:#19d5c0!important;font-weight:860!important}
.sidebar .brand span{margin-top:2px!important;font-size:10px!important;color:#d0dce6!important;font-weight:620!important;letter-spacing:0!important}
.nav-label{padding:19px 12px 8px!important;color:#6e8597!important;font-size:8.5px!important;letter-spacing:.16em!important;font-weight:860!important}
.nav{gap:5px!important}.nav a{position:relative!important;min-height:45px!important;padding:0 13px!important;border-radius:10px!important;color:#c0ced9!important;font-size:12.5px!important;font-weight:680!important;gap:12px!important;transition:background .16s ease,color .16s ease,transform .16s ease!important}
.nav a .ico{color:#aebfcc!important}.nav a:hover{background:rgba(255,255,255,.055)!important;color:#fff!important;transform:translateX(1px)!important}.nav a.active{background:linear-gradient(90deg,rgba(18,177,163,.23),rgba(35,113,168,.20))!important;color:#fff!important;box-shadow:inset 3px 0 0 #19c8b4,inset 0 0 0 1px rgba(255,255,255,.035)!important}.nav a.active .ico{color:#c9fff7!important}
.sidebar-bottom{margin-top:auto!important;padding:15px 8px 0!important;border-top:1px solid rgba(255,255,255,.075)!important;background:transparent!important}.admin-chip{display:flex!important;align-items:center!important;gap:10px!important}.admin-avatar{width:36px!important;height:36px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#e8fffa!important;color:#0a776d!important;font-weight:850!important;border:1px solid rgba(25,200,180,.25)!important}.sidebar-bottom .who{font-size:12px!important;color:#f3f7fa!important;font-weight:750!important}.sidebar-bottom .role{font-size:8.5px!important;color:#8097a9!important}.logout{display:flex!important;align-items:center!important;gap:7px!important;color:#8196a7!important;font-size:10px!important}

/* Header / workspace */
.topbar{height:72px!important;padding:0 28px!important;background:rgba(255,255,255,.91)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid #e6edf3!important;box-shadow:0 1px 0 rgba(15,23,42,.01)!important}.crumb{color:#8a9aab!important;font-size:9px!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:820!important}.top-title{color:#16263b!important;font-size:14px!important;font-weight:780!important}.topbar .live-pill{background:#ecfaf6!important;color:#087d70!important;border:1px solid #d3f1e9!important}
.content{max-width:1720px!important;margin:0 auto!important;padding:32px 30px 64px!important}.page-head{align-items:center!important;margin-bottom:24px!important}.page-head h1{font-size:clamp(30px,2.2vw,40px)!important;line-height:1.05!important;letter-spacing:-.045em!important;color:#0c1a2d!important;font-weight:850!important}.page-head p{margin-top:8px!important;color:#697c93!important;font-size:12.5px!important;max-width:780px!important}.eyebrow,.section-kicker{color:#7890a5!important;font-size:8.5px!important;letter-spacing:.14em!important;font-weight:860!important}

/* Cards and controls */
.panel,.metric,.security-center-premium,.client-address-card{background:#fff!important;border:1px solid #e1e8ef!important;border-radius:16px!important;box-shadow:var(--shadow-soft)!important;overflow:hidden!important}.panel-head{min-height:58px!important;padding:15px 20px!important;background:#fff!important;border-bottom:1px solid #e8eef4!important}.panel-head h2,.panel-head h3{color:#102037!important;font-size:14.5px!important;font-weight:800!important;letter-spacing:-.02em!important}.panel-head .meta{font-size:10px!important;color:#8999aa!important}.panel-body{padding:20px!important}.panel + .panel{margin-top:18px!important}
.btn{min-height:38px!important;padding:0 14px!important;border-radius:10px!important;border:1px solid #d7e1ea!important;background:#fff!important;color:#23364d!important;font-size:11px!important;font-weight:760!important;box-shadow:none!important;transform:none!important}.btn:hover{border-color:#b8c8d7!important;background:#fafdff!important;box-shadow:0 4px 12px rgba(20,42,66,.055)!important}.btn.primary,.btn.accent{background:linear-gradient(180deg,#10b5a2,#079987)!important;border-color:#079987!important;color:#fff!important;box-shadow:0 7px 16px rgba(8,155,136,.16)!important}.btn.primary:hover,.btn.accent:hover{background:linear-gradient(180deg,#12bfaa,#078f80)!important}.btn.danger{background:#fff!important;border-color:#ffd3d8!important;color:#e8344b!important}.btn.ghost{background:#fff!important}.btn.sm{min-height:34px!important;padding:0 11px!important;font-size:10px!important}
input,select,textarea{border:1px solid #d9e3ec!important;background:#fbfdff!important;border-radius:10px!important;color:#14263c!important;min-height:40px!important;padding:9px 11px!important;font-size:11.5px!important;box-shadow:inset 0 1px 0 rgba(15,23,42,.01)!important}input:focus,select:focus,textarea:focus{border-color:#54bfb2!important;box-shadow:0 0 0 3px rgba(15,175,156,.10)!important;background:#fff!important}label{color:#60748b!important;font-size:10px!important;font-weight:760!important}
.badge{border-radius:8px!important;padding:5px 8px!important;letter-spacing:.025em!important;font-size:8.5px!important}.badge::before{display:none!important}

/* IP detail top area remains two-column; connections is moved full width by JS. */
.live-connection-layout{display:grid!important;grid-template-columns:minmax(0,1.78fr) minmax(320px,.70fr)!important;gap:18px!important;align-items:start!important}.live-connection-layout>section,.live-connection-layout>aside{min-width:0!important}.live-connection-layout>section>.panel:first-child,.live-connection-layout>aside>.panel:first-child{margin-top:0!important}.connections-fullwidth{width:100%!important;margin-top:18px!important;min-height:0!important;max-height:none!important;overflow:visible!important}.connections-fullwidth .panel-head{padding-left:20px!important;padding-right:20px!important}.connections-fullwidth .connections-toolbar{padding:10px 18px!important;background:#fbfdff!important;border-bottom:1px solid #e9eff4!important}.connections-fullwidth .connections-scroll{max-height:none!important;overflow:visible!important}.connections-fullwidth .table-wrap{overflow-x:auto!important;overflow-y:visible!important}.connections-fullwidth .peers-table{min-width:980px!important;width:100%!important;table-layout:fixed!important}.connections-fullwidth .peers-table th:nth-child(1){width:24%!important}.connections-fullwidth .peers-table th:nth-child(2){width:19%!important}.connections-fullwidth .peers-table th:nth-child(3){width:9%!important}.connections-fullwidth .peers-table th:nth-child(4){width:14%!important}.connections-fullwidth .peers-table th:nth-child(5){width:34%!important}.connections-fullwidth .peer-actions{display:grid!important;grid-template-columns:repeat(3,minmax(88px,1fr))!important;gap:7px!important;justify-content:stretch!important;flex-wrap:nowrap!important}.connections-fullwidth .peer-actions .btn{width:100%!important;white-space:nowrap!important;min-height:34px!important}.connections-fullwidth .peer-meter{max-width:180px!important;width:100%!important}.connections-fullwidth .table td{height:56px!important}
.connection-search input{min-width:250px!important;background:#fff!important}.connections-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}

/* Access delegation — deliberately composed, no button pile-up. */
.client-access-panel .panel-head{align-items:flex-start!important;flex-direction:column!important}.client-access-panel .panel-head>div:first-child{width:100%!important}.client-access-panel .row-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important;margin-top:4px!important}.client-access-panel .row-actions .btn,.client-access-panel .row-actions a.btn{width:100%!important;justify-content:center!important;min-height:38px!important}.client-access-panel .row-actions .primary{order:-1!important}

/* Protection Center — approved light, premium composition. */
.security-center-premium{position:relative!important;margin-top:20px!important;color:#142238!important;background:#fff!important}.security-center-premium:before{display:none!important}.security-center-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:20px 22px!important;background:#fff!important;border-bottom:1px solid #e7edf3!important}.security-heading{display:flex!important;align-items:center!important;gap:12px!important}.security-mark{width:40px!important;height:40px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:#e9faf6!important;color:#099b89!important;border:1px solid #d6f2eb!important}.security-heading h2{margin:1px 0 2px!important;color:#102037!important;font-size:18px!important;font-weight:840!important;letter-spacing:-.03em!important}.security-heading p{margin:0!important;color:#7a8ca0!important;font-size:10.5px!important;line-height:1.45!important}.protection-head-actions{display:flex!important;align-items:center!important;gap:9px!important}.protection-health{height:32px!important;padding:0 11px!important;background:#eaf9f5!important;border:1px solid #d4efe8!important;color:#087e71!important;font-size:9.5px!important;font-weight:800!important}.security-overview{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;padding:16px 18px!important;background:#f8fbfd!important;border-bottom:1px solid #e8eef4!important}.security-overview-card{min-height:76px!important;padding:13px 14px!important;border:1px solid #e1e9f0!important;border-radius:13px!important;background:#fff!important;box-shadow:0 2px 8px rgba(24,45,70,.025)!important}.security-overview-card small{color:#8393a5!important;font-size:8.5px!important}.security-overview-card strong{color:#112139!important;font-size:17px!important;font-weight:850!important}.security-overview-card em{color:#99a6b4!important;font-size:8.5px!important}.soc-icon{width:34px!important;height:34px!important;border-radius:10px!important}
.protection-toolbar{padding:12px 17px!important;background:#fbfdff!important;border-bottom:1px solid #e8eef4!important}.protection-toolbar>div>span{color:#40536a!important;font-size:10px!important;font-weight:800!important}.protection-toolbar small{color:#91a0b0!important;font-size:9px!important}.protection-toolbar-actions{gap:7px!important}.security-chip{min-height:30px!important;padding:0 10px!important;border-radius:8px!important;background:#fff!important;border:1px solid #dce5ed!important;color:#53677d!important;font-size:9px!important;font-weight:750!important}.security-chip.danger{color:#d94b5d!important;border-color:#f2d0d6!important}
.protection-list{padding:0 17px 6px!important;background:#fff!important}.protection-row{display:grid!important;grid-template-columns:38px minmax(0,1fr) 76px 44px!important;gap:12px!important;align-items:center!important;min-height:68px!important;padding:10px 0!important;border-bottom:1px solid #e9eef3!important;background:#fff!important}.protection-row:last-child{border-bottom:0!important}.protection-row:hover{background:linear-gradient(90deg,transparent,#fbfdfd 38%,#fbfdfd)!important}.protection-row-icon{width:36px!important;height:36px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:#eaf9f5!important;color:#0a9c8a!important;border:1px solid #d9f0ea!important}.protection-row:not(.is-on) .protection-row-icon{background:#f4f7fa!important;color:#8293a5!important;border-color:#e3e9ef!important}.protection-row-copy h3{margin:0!important;color:#132138!important;font-size:12.5px!important;font-weight:800!important}.protection-row-copy p{margin:2px 0 0!important;color:#75869a!important;font-size:9.5px!important;line-height:1.4!important}.protection-row-tags{margin-top:4px!important}.protection-row-tags span{font-size:7.5px!important;border-radius:5px!important;background:#f5f8fa!important}.protection-row-status{text-align:right!important}.protection-state{height:22px!important;min-width:36px!important;border-radius:7px!important;background:#eef2f6!important;color:#64758a!important;font-size:8.5px!important;font-weight:880!important}.protection-state.on{background:#e5f8f2!important;color:#087e70!important}.protection-row-status small{margin-top:2px!important;color:#91a0af!important;font-size:8px!important}.toggle{width:40px!important;height:23px!important;border-radius:999px!important;background:#ccd7e3!important;box-shadow:none!important}.toggle:before{width:17px!important;height:17px!important;top:3px!important;left:3px!important}.toggle.on{background:#0da692!important}.toggle.on:before{transform:translateX(17px)!important}.protection-row.is-changing{background:#f5fbf9!important}.protection-row.is-changing .toggle{animation:none!important}.protection-row.is-changing .protection-state{background:#edf8f5!important;color:#0a8e7f!important}.protection-row-status small{white-space:nowrap!important}

/* Client: protection list and Private SSH mirror the approved two-column mockup. */
.client-shell .security-center-premium.has-private-ssh{display:grid!important;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr)!important;align-items:start!important}.client-shell .security-center-premium.has-private-ssh>.security-center-head,.client-shell .security-center-premium.has-private-ssh>.security-overview,.client-shell .security-center-premium.has-private-ssh>.security-ops-grid{grid-column:1/-1!important}.client-shell .security-center-premium.has-private-ssh>.protection-main-column{grid-column:1!important;min-width:0!important;border-right:1px solid #e8eef4!important}.client-shell .security-center-premium.has-private-ssh>.ssh-private-card{grid-column:2!important;margin:16px!important;align-self:start!important}.protection-main-column{min-width:0!important}
.ssh-private-card{border:1px solid #e1e9ef!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 20px rgba(24,45,70,.055)!important;padding:17px!important}.ssh-private-title{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}.ssh-lock-orb{width:36px!important;height:36px!important;border-radius:10px!important;background:#f2f6f9!important;color:#20364c!important;border:1px solid #e0e7ed!important}.ssh-private-title h3{margin:0!important;color:#122139!important;font-size:15px!important;font-weight:820!important}.ssh-private-title p{margin:2px 0 0!important;color:#7e8fa2!important;font-size:9.5px!important}.ssh-live-badge{height:25px!important;padding:0 9px!important;border-radius:8px!important;background:#eef2f6!important;color:#536579!important;font-size:8.5px!important;font-weight:800!important}.ssh-private-card.is-active .ssh-live-badge{background:#e7f9f3!important;color:#07806f!important}.ssh-private-grid{display:grid!important;grid-template-columns:minmax(0,1.2fr) 105px!important;gap:9px!important;margin-top:15px!important}.ssh-duration-field{grid-column:1/-1!important}.ssh-field{min-height:62px!important;padding:9px 11px!important;border:1px solid #e0e8ef!important;border-radius:10px!important;background:#fbfdff!important}.ssh-field>span{display:block!important;color:#7a8ca0!important;font-size:8.5px!important;font-weight:740!important;margin-bottom:5px!important}.ssh-field strong{font-size:13px!important;color:#14263c!important}.ssh-field input,.ssh-field select{min-height:34px!important;padding:5px 7px!important;background:#fff!important}.ssh-private-actions{display:flex!important;gap:8px!important;margin-top:12px!important}.ssh-enable{flex:1!important;min-height:42px!important}

/* Security activity and empty states: never dark, never clipped. */
.security-ops-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;border-top:1px solid #e8eef4!important;background:#fff!important}.threat-live-panel,.threat-history-panel{min-width:0!important;background:#fff!important}.threat-live-panel{border-right:1px solid #e8eef4!important}.threat-strip{min-height:66px!important;padding:13px 18px!important;background:#fff!important;border:0!important;border-bottom:1px solid #e8eef4!important}.threat-strip h3{margin:1px 0!important;color:#122139!important;font-size:13px!important;font-weight:800!important}.threat-strip p{margin:2px 0 0!important;color:#8a99aa!important;font-size:8.5px!important}.threat-table-wrap{max-height:none!important;overflow:visible!important;background:#fff!important}.security-center .threat-table{min-width:0!important;width:100%!important;table-layout:fixed!important}.security-center .table th{background:#f8fbfd!important;color:#78899c!important;border-color:#e7edf3!important}.security-center .table td{background:#fff!important;color:#40536a!important;border-color:#edf1f5!important}.security-center .table tr:hover td{background:#fbfdfd!important}.security-center .table .empty{height:126px!important;padding:30px 16px!important;background:#fff!important;color:#8b9aac!important}.security-center .table .empty strong{color:#24364c!important}.incident-feed{max-height:none!important;overflow:visible!important;padding:12px 14px 15px!important}.incident-empty{min-height:126px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;border:1px dashed #e1e8ef!important;border-radius:12px!important;background:#fbfdff!important;color:#8796a7!important}.incident-empty strong{color:#26394f!important}

/* Tables / Access Rules */
.table-wrap{max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important}.table{color:#26394f!important}.table th{height:43px!important;padding:10px 14px!important;background:#f8fbfd!important;color:#75869a!important;font-size:8.5px!important;letter-spacing:.06em!important}.table td{padding:13px 14px!important;color:#30445c!important;font-size:11px!important}.table tr:hover td{background:#fbfdfd!important}.policy-panel .table-wrap{overflow-x:auto!important}.policy-panel .empty{height:92px!important;background:#fff!important}.policy-panel .panel-head .btn{min-width:80px!important}

/* Client shell */
.client-shell{background:#f4f7fb!important}.client-top{height:76px!important;background:linear-gradient(90deg,#061827,#08233b)!important;border-bottom:1px solid rgba(255,255,255,.07)!important;box-shadow:0 8px 24px rgba(4,15,25,.08)!important}.client-top .brand strong{color:#1bd3bf!important}.client-top .brand span{color:#d5e0e8!important}.client-main{max-width:1640px!important;padding:32px 28px 90px!important}.client-hero{padding:4px 0 20px!important}.client-hero h1{font-size:clamp(30px,3vw,42px)!important;color:#0d1d31!important;font-weight:850!important}.client-hero p{color:#74869b!important;font-size:12px!important}.client-scope-panel .scope-ip{font-size:22px!important;color:#14263c!important}

/* Mutation feedback: clear, compact, never a long "Applying..." theatre. */
.router-mutating [data-toggle]{pointer-events:none!important}.router-mutating .live-pill{opacity:.72!important}.protection-row.is-changing .protection-row-status small:after{content:""!important;display:inline-block!important;width:6px!important;height:6px!important;margin-left:5px!important;border-radius:50%!important;background:#11aa97!important;animation:esnTinyPulse .7s ease-in-out infinite alternate!important}@keyframes esnTinyPulse{to{opacity:.25!important}}

@media(max-width:1180px){
  .app{display:block!important}.main{margin-left:0!important;width:100%!important}.sidebar{position:fixed!important;inset:0 auto 0 0!important;width:min(292px,88vw)!important;height:100dvh!important;min-height:100dvh!important;transform:translateX(-105%)!important;overflow-y:auto!important;background:linear-gradient(180deg,#061827,#071f34)!important}.sidebar-open .sidebar{transform:translateX(0)!important}.content{padding:26px 20px 58px!important}.live-connection-layout{grid-template-columns:1fr!important}.connections-fullwidth{margin-top:16px!important}.client-shell .security-center-premium.has-private-ssh{grid-template-columns:1fr!important}.client-shell .security-center-premium.has-private-ssh>.protection-main-column,.client-shell .security-center-premium.has-private-ssh>.ssh-private-card{grid-column:1!important}.client-shell .security-center-premium.has-private-ssh>.protection-main-column{border-right:0!important}.client-shell .security-center-premium.has-private-ssh>.ssh-private-card{margin:14px 16px!important}.security-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:760px){
  body{font-size:13px!important}.topbar{height:62px!important;padding:0 14px!important}.content{padding:18px 11px 46px!important}.page-head{align-items:flex-start!important}.page-head h1{font-size:28px!important}.panel,.security-center-premium{border-radius:14px!important}.panel-head{min-height:54px!important;padding:13px 14px!important}.panel-body{padding:14px!important}
  .client-main{padding:20px 10px 94px!important}.client-hero{align-items:flex-start!important}.client-hero h1{font-size:30px!important}
  .security-center-head{padding:16px 13px!important;align-items:flex-start!important;flex-direction:column!important}.protection-head-actions{width:100%!important;justify-content:space-between!important}.security-overview{gap:8px!important;padding:10px!important}.security-overview-card{min-height:70px!important;padding:10px!important}.security-overview-card em{display:none!important}.protection-toolbar{padding:10px 12px!important;align-items:flex-start!important;flex-direction:column!important}.protection-toolbar-actions{width:100%!important;overflow-x:auto!important;flex-wrap:nowrap!important}.protection-list{padding:0 12px 4px!important}.protection-row{grid-template-columns:36px minmax(0,1fr) 42px!important;gap:9px!important;min-height:72px!important;padding:10px 0!important}.protection-row-status{display:none!important}.protection-row .toggle{grid-column:3!important}.protection-row-copy h3{font-size:12px!important}.protection-row-copy p{font-size:9px!important}.protection-row-config{grid-column:1/-1!important}.ssh-private-card{margin:12px!important;padding:14px!important}.ssh-private-title{grid-template-columns:36px minmax(0,1fr)!important}.ssh-live-badge{grid-column:1/-1!important;width:max-content!important;margin-left:46px!important}.ssh-private-grid{grid-template-columns:1fr 96px!important}.ssh-duration-field{grid-column:1/-1!important}.security-ops-grid{grid-template-columns:1fr!important}.threat-live-panel{border-right:0!important;border-bottom:1px solid #e8eef4!important}.threat-strip{padding:12px 13px!important}.threat-strip p{display:none!important}
  .connections-fullwidth{overflow:hidden!important}.connections-fullwidth .connections-toolbar{padding:9px 11px!important;align-items:stretch!important;flex-direction:column!important}.connections-fullwidth .connection-search,.connections-fullwidth .connection-search input{width:100%!important;min-width:0!important}.connections-fullwidth .table-wrap{overflow:visible!important}.connections-fullwidth .peers-table{min-width:0!important;display:block!important}.connections-fullwidth .peers-table thead{display:none!important}.connections-fullwidth .peers-table tbody{display:grid!important;gap:8px!important;padding:9px!important}.connections-fullwidth .peers-table tr{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:7px!important;padding:12px!important;border:1px solid #e2e9ef!important;border-radius:12px!important;background:#fff!important}.connections-fullwidth .peers-table td{display:block!important;width:100%!important;height:auto!important;padding:0!important;border:0!important;white-space:normal!important;overflow:visible!important;background:transparent!important}.connections-fullwidth .peers-table td:before{display:none!important}.connections-fullwidth .peer-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin-top:4px!important}.connections-fullwidth .peer-actions .btn{min-width:0!important;padding:0 7px!important;font-size:9px!important}.connections-fullwidth .peer-meter{max-width:none!important}.policy-panel .table.responsive-table{min-width:0!important}
  .client-bottom-nav{background:rgba(5,24,40,.97)!important;border-top-color:rgba(255,255,255,.08)!important}.client-bottom-nav a:first-child{color:#20d1bd!important}
}

@media(max-width:430px){
  .security-overview{grid-template-columns:1fr 1fr!important}.security-overview-card{min-width:0!important}.ssh-private-grid{grid-template-columns:1fr!important}.ssh-duration-field{grid-column:auto!important}.ssh-live-badge{margin-left:0!important}.connections-fullwidth .peer-actions{grid-template-columns:1fr!important}.connections-fullwidth .peer-actions .btn{min-height:35px!important}
}

/* ========================================================================== 
   v1.7.2 — Premium readability + native page scrolling
   ========================================================================== */
:root{
  --premium-shadow:0 10px 30px rgba(24,45,70,.065),0 1px 2px rgba(24,45,70,.035)!important;
  --premium-shadow-hover:0 16px 42px rgba(24,45,70,.09),0 2px 4px rgba(24,45,70,.04)!important;
}
body{font-size:14.75px!important;line-height:1.5!important}
.content{padding-top:34px!important}

/* More readable navigation and page hierarchy. */
.sidebar .brand strong{font-size:15px!important}.sidebar .brand span{font-size:11px!important}
.nav-label{font-size:9px!important}.nav a{min-height:48px!important;padding:0 14px!important;font-size:13.5px!important;border-radius:12px!important}
.sidebar-bottom .who{font-size:13px!important}.sidebar-bottom .role,.logout{font-size:9.5px!important}
.topbar{height:74px!important}.top-title{font-size:15px!important}.crumb{font-size:9.5px!important}
.page-head{margin-bottom:28px!important}.page-head h1{font-size:clamp(32px,2.3vw,42px)!important}.page-head p{font-size:13.5px!important;line-height:1.6!important}
.eyebrow,.section-kicker{font-size:9px!important}

/* Cleaner cards with a slight premium lift and a controlled highlight. */
.panel,.metric,.security-center-premium,.client-address-card,.ssh-private-card{border-color:#dee7ef!important;border-radius:18px!important;box-shadow:var(--premium-shadow)!important}
.panel,.metric,.security-center-premium,.ssh-private-card{transition:box-shadow .18s ease,border-color .18s ease!important}
.panel-head{min-height:64px!important;padding:17px 22px!important}.panel-head h2,.panel-head h3{font-size:16px!important}.panel-head .meta{font-size:11px!important;line-height:1.4!important}.panel-body{padding:22px!important}

/* Buttons: larger targets, easier labels, less cramped actions. */
.btn{min-height:44px!important;padding:0 17px!important;border-radius:11px!important;font-size:12.5px!important;font-weight:760!important;gap:8px!important}
.btn.sm{min-height:38px!important;padding:0 13px!important;border-radius:10px!important;font-size:11.5px!important}
.btn.primary,.btn.accent{box-shadow:0 8px 20px rgba(8,155,136,.17)!important}
.btn:hover{box-shadow:0 7px 18px rgba(20,42,66,.07)!important}
.icon-btn{min-width:42px!important;min-height:42px!important}

/* Forms. */
label{font-size:11px!important;margin-bottom:8px!important}input,select,textarea{min-height:44px!important;padding:10px 12px!important;font-size:12.5px!important;border-radius:11px!important}.field-note{font-size:10.5px!important}.callout{font-size:12px!important;line-height:1.6!important}

/* Protection Center: stronger typography, larger switch, balanced row rhythm. */
.security-center-head{padding:22px 24px!important}.security-mark{width:44px!important;height:44px!important;border-radius:13px!important}.security-heading h2{font-size:20px!important}.security-heading p{font-size:11.5px!important;line-height:1.55!important}.protection-health{height:34px!important;font-size:10px!important}
.security-overview{padding:17px 20px!important;gap:13px!important}.security-overview-card{min-height:82px!important;padding:14px 15px!important;border-radius:14px!important}.security-overview-card small{font-size:9.5px!important}.security-overview-card strong{font-size:19px!important}.security-overview-card em{font-size:9px!important}
.protection-toolbar{padding:14px 20px!important}.protection-list{padding:0 20px 8px!important}.protection-row{min-height:82px!important;padding:13px 0!important;grid-template-columns:42px minmax(0,1fr) 92px 46px!important;gap:13px!important}.protection-row-icon{width:40px!important;height:40px!important;border-radius:11px!important}.protection-row-copy h3{font-size:14px!important;line-height:1.3!important}.protection-row-copy p{font-size:10.75px!important;line-height:1.45!important;margin-top:3px!important}.protection-row-tags span{font-size:8px!important;padding:3px 6px!important}.protection-state{height:25px!important;min-width:40px!important;font-size:9.5px!important}.protection-row-status small{font-size:9px!important}.toggle{width:44px!important;height:25px!important}.toggle:before{width:19px!important;height:19px!important;top:3px!important;left:3px!important}.toggle.on:before{transform:translateX(19px)!important}

/* Private SSH — readable and visually weighted as a first-class feature. */
.ssh-private-card{padding:20px!important}.ssh-private-title{grid-template-columns:42px minmax(0,1fr) auto!important;gap:12px!important}.ssh-lock-orb{width:40px!important;height:40px!important;border-radius:11px!important}.ssh-private-title h3{font-size:17px!important}.ssh-private-title p{font-size:10.5px!important;line-height:1.45!important}.ssh-live-badge{height:28px!important;font-size:9.5px!important}.ssh-private-grid{gap:11px!important;margin-top:17px!important}.ssh-field{min-height:70px!important;padding:11px 13px!important;border-radius:12px!important}.ssh-field>span{font-size:9.5px!important;margin-bottom:6px!important}.ssh-field strong{font-size:15px!important}.ssh-field input,.ssh-field select{min-height:38px!important;font-size:12px!important}.ssh-private-actions{margin-top:14px!important;gap:10px!important}.ssh-enable{min-height:46px!important}

/* Security activity / access rules. */
.threat-strip{min-height:72px!important;padding:15px 20px!important}.threat-strip h3{font-size:14px!important}.threat-strip p{font-size:9.75px!important}.incident-empty,.security-center .table .empty{min-height:138px!important;font-size:11px!important}.incident-empty strong,.security-center .table .empty strong{font-size:13px!important}

/* Tables globally: slightly larger and easier to scan. */
.table th{height:47px!important;padding:11px 15px!important;font-size:9.5px!important;letter-spacing:.055em!important}.table td{padding:14px 15px!important;font-size:12.25px!important;line-height:1.4!important}.empty{font-size:12px!important}.empty strong{font-size:13px!important}.badge{font-size:9.5px!important;padding:6px 9px!important}.protocol-chip{font-size:10px!important;padding:4px 7px!important;border-radius:7px!important}.peer-rank{width:24px!important;height:24px!important;font-size:10px!important}.peer-meter{height:4px!important;margin-top:7px!important}

/* Active Connections — never owns vertical scrolling on desktop. The page always scrolls. */
.connections-fullwidth{overflow:visible!important}
.connections-fullwidth .connections-scroll,
.connections-fullwidth .table-wrap{
  max-height:none!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
  scrollbar-gutter:auto!important;
  touch-action:auto!important;
}
.connections-fullwidth .peers-table{min-width:0!important;width:100%!important;table-layout:fixed!important}
.connections-fullwidth .peers-table th:nth-child(1){width:24%!important}.connections-fullwidth .peers-table th:nth-child(2){width:18%!important}.connections-fullwidth .peers-table th:nth-child(3){width:9%!important}.connections-fullwidth .peers-table th:nth-child(4){width:14%!important}.connections-fullwidth .peers-table th:nth-child(5){width:35%!important}
.connections-fullwidth .table td{height:64px!important}.connections-fullwidth .peer-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.connections-fullwidth .peer-actions .btn{min-height:38px!important;font-size:11.25px!important;padding:0 10px!important}.connections-fullwidth .connection-search input{min-height:40px!important;font-size:12px!important}.connections-fullwidth .connections-toolbar{padding:12px 20px!important}

/* Access delegation: roomier, no cramped action stack. */
.client-access-panel .panel-head{gap:12px!important}.client-access-panel .row-actions{gap:9px!important}.client-access-panel .row-actions .btn{min-height:40px!important;font-size:11.5px!important}.client-access-panel .panel-body{font-size:12px!important}

/* Desktop hover polish only where it doesn't move content. */
@media(hover:hover) and (pointer:fine){
  .metric:hover,.ssh-private-card:hover{border-color:#d2dfe9!important;box-shadow:var(--premium-shadow-hover)!important}
  .protection-row:hover{background:#fbfefd!important}
}

/* Tablet: preserve readability before changing to mobile cards. */
@media(max-width:1180px){
  body{font-size:14.25px!important}.content{padding-top:28px!important}.panel-head h2,.panel-head h3{font-size:15.5px!important}
  .btn{min-height:43px!important;font-size:12px!important}.btn.sm{min-height:38px!important;font-size:11px!important}
}

@media(max-width:900px){
  .connections-fullwidth .peers-table th:nth-child(1){width:25%!important}.connections-fullwidth .peers-table th:nth-child(2){width:18%!important}.connections-fullwidth .peers-table th:nth-child(3){width:9%!important}.connections-fullwidth .peers-table th:nth-child(4){width:13%!important}.connections-fullwidth .peers-table th:nth-child(5){width:35%!important}
  .connections-fullwidth .peer-actions{grid-template-columns:1fr!important}.connections-fullwidth .table td{height:auto!important;padding-top:12px!important;padding-bottom:12px!important}
}

@media(max-width:760px){
  body{font-size:13.75px!important;line-height:1.5!important}.content{padding:20px 12px 50px!important}.client-main{padding-left:12px!important;padding-right:12px!important}
  .page-head h1,.client-hero h1{font-size:30px!important}.page-head p,.client-hero p{font-size:12.5px!important}
  .panel,.security-center-premium,.ssh-private-card{border-radius:16px!important}.panel-head{min-height:58px!important;padding:14px 15px!important}.panel-head h2,.panel-head h3{font-size:15px!important}.panel-body{padding:15px!important}
  .btn{min-height:46px!important;font-size:12.5px!important}.btn.sm{min-height:40px!important;font-size:11.5px!important}
  input,select,textarea{min-height:46px!important;font-size:13px!important}
  .security-center-head{padding:17px 14px!important}.security-heading h2{font-size:18px!important}.security-heading p{font-size:10.5px!important}.security-overview-card strong{font-size:18px!important}
  .protection-list{padding:0 13px 5px!important}.protection-row{grid-template-columns:40px minmax(0,1fr) 44px!important;min-height:78px!important;padding:11px 0!important;gap:10px!important}.protection-row-icon{width:38px!important;height:38px!important}.protection-row-copy h3{font-size:13.5px!important}.protection-row-copy p{font-size:10.5px!important}.toggle{width:44px!important;height:25px!important}
  .ssh-private-card{padding:16px!important}.ssh-private-title h3{font-size:16px!important}.ssh-field>span{font-size:9.5px!important}.ssh-field strong{font-size:14px!important}
  .connections-fullwidth .table-wrap,.connections-fullwidth .connections-scroll{overflow:visible!important;max-height:none!important}.connections-fullwidth .peers-table tbody{padding:10px!important;gap:10px!important}.connections-fullwidth .peers-table tr{padding:14px!important;border-radius:14px!important;box-shadow:0 4px 14px rgba(24,45,70,.04)!important}.connections-fullwidth .peers-table td{font-size:12px!important}.connections-fullwidth .peer-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.connections-fullwidth .peer-actions .btn{min-height:40px!important;font-size:10.5px!important}
}

@media(max-width:430px){
  .connections-fullwidth .peer-actions{grid-template-columns:1fr!important}.connections-fullwidth .peer-actions .btn{min-height:42px!important;font-size:11.5px!important}
  .security-overview-card{padding:11px!important}.security-overview-card small{font-size:9px!important}.security-overview-card strong{font-size:17px!important}
}

/* ============================================================
   ESNETWORK v1.7.3 — stable Active Connections + traffic tiers
   ============================================================ */
.connections-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}
.connections-toolbar-right{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.connections-summary{display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:0 10px!important;border:1px solid #dce7ee!important;border-radius:999px!important;background:#f7fafc!important;color:#6a7d91!important;font-size:10px!important;font-weight:780!important;white-space:nowrap!important}
.connections-fullwidth .peer-actions{grid-template-columns:minmax(92px,.8fr) minmax(100px,.9fr)!important;justify-content:end!important}
.connections-fullwidth .peer-actions .btn{min-height:40px!important}
.btn.danger-soft{background:#fff8f8!important;border-color:#ffd7db!important;color:#e33b50!important;box-shadow:none!important}
.btn.danger-soft:hover{background:#fff2f4!important;border-color:#ffc3ca!important;color:#d7243c!important}
.peer-rate-line{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}
.peer-rate-line strong{font-size:12.5px!important;color:#14263a!important}
.peer-session-count{font-size:12.5px!important;color:#1e3349!important}
.traffic-level{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:22px!important;padding:0 8px!important;border-radius:999px!important;font-size:8.5px!important;font-weight:850!important;letter-spacing:.02em!important;border:1px solid transparent!important;white-space:nowrap!important}
.traffic-level.traffic-elevated{background:#edf9ff!important;border-color:#d1ecfb!important;color:#1677a6!important}
.traffic-level.traffic-high{background:#fff6e8!important;border-color:#ffe0ae!important;color:#a86505!important}
.traffic-level.traffic-heavy{background:#fff0f2!important;border-color:#ffcbd2!important;color:#c82f44!important}
.peers-table tr.traffic-elevated{background:linear-gradient(90deg,rgba(42,160,211,.045),#fff 16%)!important;box-shadow:inset 3px 0 0 #39a9d5!important}
.peers-table tr.traffic-high{background:linear-gradient(90deg,rgba(245,158,11,.055),#fff 16%)!important;box-shadow:inset 3px 0 0 #f1a523!important}
.peers-table tr.traffic-heavy{background:linear-gradient(90deg,rgba(239,68,68,.06),#fff 17%)!important;box-shadow:inset 3px 0 0 #ef4b5d!important}
.peer-meter.traffic-elevated{background:#e8f4fa!important}.peer-meter.traffic-elevated i{background:linear-gradient(90deg,#35a9d9,#6bc5ea)!important}
.peer-meter.traffic-high{background:#fff0d8!important}.peer-meter.traffic-high i{background:linear-gradient(90deg,#f2a319,#ffc45b)!important}
.peer-meter.traffic-heavy{background:#ffe3e7!important}.peer-meter.traffic-heavy i{background:linear-gradient(90deg,#ef4458,#ff7787)!important}

/* The main panel is intentionally capped by JS to Top 5 on desktop / Top 4 mobile.
   No vertical scrollbar is owned by the panel, so session growth cannot keep
   extending the page after the visible limit is reached. */
.connections-fullwidth .table-wrap{overflow:visible!important;max-height:none!important}
.connections-fullwidth .peers-table tbody tr{transition:background-color .18s ease,box-shadow .18s ease!important}

.connections-all-modal{z-index:650!important}
.connections-all-modal .connections-modal-card{width:min(920px,calc(100vw - 34px))!important;max-width:920px!important;max-height:min(82vh,760px)!important;overflow:hidden!important;padding:0!important;border-radius:20px!important}
.connections-all-list{display:grid!important;gap:8px!important;padding:14px!important;max-height:calc(min(82vh,760px) - 72px)!important;overflow:auto!important;background:#f7f9fc!important;overscroll-behavior:contain!important}
.connection-all-row{display:grid!important;grid-template-columns:minmax(0,1fr) 170px 220px!important;align-items:center!important;gap:14px!important;padding:13px 14px!important;border:1px solid #e1e9f0!important;border-radius:13px!important;background:#fff!important;box-shadow:0 3px 12px rgba(26,49,74,.035)!important}
.connection-all-row.traffic-elevated{border-left:4px solid #39a9d5!important}.connection-all-row.traffic-high{border-left:4px solid #f1a523!important}.connection-all-row.traffic-heavy{border-left:4px solid #ef4b5d!important}
.connection-all-main{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important}.connection-all-main>div{display:grid!important;gap:3px!important;min-width:0!important}.connection-all-main strong{font-size:12px!important;color:#12253a!important;overflow:hidden!important;text-overflow:ellipsis!important}.connection-all-main span{font-size:9.5px!important;color:#8796a7!important}
.connection-all-rate{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important}.connection-all-rate>strong{font-size:12px!important;color:#1d3045!important}
.connection-all-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.connections-modal-empty{padding:42px 20px!important;text-align:center!important;color:#7b8da1!important;font-size:12px!important}

@media(max-width:900px){
  .connections-toolbar{align-items:stretch!important;flex-direction:column!important}.connections-toolbar-right{justify-content:flex-start!important}
  .connection-all-row{grid-template-columns:minmax(0,1fr) auto!important}.connection-all-actions{grid-column:1/-1!important}.connection-all-rate{justify-content:flex-end!important}
}
@media(max-width:760px){
  .connections-summary{font-size:9.5px!important}.connections-fullwidth .peer-actions{grid-template-columns:1fr 1fr!important}.connections-fullwidth .peer-actions .btn{min-height:42px!important;font-size:11px!important}
  .peer-rate-line{gap:6px!important}.traffic-level{height:21px!important;padding:0 7px!important;font-size:8px!important}
  .connection-all-row{grid-template-columns:1fr!important;gap:9px!important}.connection-all-rate{justify-content:flex-start!important}.connection-all-actions{grid-template-columns:1fr 1fr!important}
}
@media(max-width:430px){
  .connections-fullwidth .peer-actions{grid-template-columns:1fr!important}.connection-all-actions{grid-template-columns:1fr!important}
}

/* ================================================================
   v1.7.4 — Threat Defense Command / premium IDS-IPS posture
   ================================================================ */
.threat-command{
  --tc-accent:#0b9f8f;--tc-soft:#e9faf6;--tc-ink:#102038;--tc-muted:#64768b;
  position:relative;display:grid;grid-template-columns:126px minmax(0,1fr) minmax(260px,330px);gap:22px;align-items:center;
  margin:0 20px 16px;padding:20px 22px;overflow:hidden;border:1px solid #dbe7ec;border-radius:18px;
  background:linear-gradient(120deg,#f8fffd 0%,#ffffff 54%,#f6fbff 100%);box-shadow:0 12px 32px rgba(17,39,61,.075);
  isolation:isolate;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.threat-command:before{content:"";position:absolute;inset:0;z-index:-2;background:
  radial-gradient(circle at 12% 50%,color-mix(in srgb,var(--tc-accent) 11%,transparent),transparent 28%),
  linear-gradient(90deg,transparent 0 66%,rgba(11,159,143,.025));pointer-events:none}
.threat-command:after{content:"";position:absolute;right:-70px;top:-100px;width:260px;height:260px;border-radius:50%;z-index:-1;border:1px solid color-mix(in srgb,var(--tc-accent) 12%,transparent);box-shadow:0 0 0 34px color-mix(in srgb,var(--tc-accent) 3%,transparent),0 0 0 70px color-mix(in srgb,var(--tc-accent) 2%,transparent);pointer-events:none}
.threat-command.mode-watch{--tc-accent:#079b86;--tc-soft:#e7f9f4}
.threat-command.mode-off{--tc-accent:#71869b;--tc-soft:#f0f4f7;background:linear-gradient(120deg,#fbfcfd,#fff 56%,#f8fbfd)}
.threat-command.mode-mitigating{--tc-accent:#ef6c32;--tc-soft:#fff2e9;border-color:#f3cbb8;box-shadow:0 15px 36px rgba(215,88,33,.12)}
.threat-command.mode-pending{filter:saturate(.78);opacity:.88}
.threat-radar{position:relative;width:108px;height:108px;display:grid;place-items:center;margin:auto;color:var(--tc-accent)}
.radar-orbit{position:absolute;border:1px solid color-mix(in srgb,var(--tc-accent) 24%,transparent);border-radius:50%}.orbit-a{inset:2px}.orbit-b{inset:20px}.orbit-c{inset:38px}
.threat-radar:before,.threat-radar:after{content:"";position:absolute;background:color-mix(in srgb,var(--tc-accent) 16%,transparent)}
.threat-radar:before{width:1px;height:100%;left:50%}.threat-radar:after{height:1px;width:100%;top:50%}
.radar-core{position:relative;z-index:4;width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#fff,var(--tc-soft));border:1px solid color-mix(in srgb,var(--tc-accent) 24%,transparent);box-shadow:0 8px 20px color-mix(in srgb,var(--tc-accent) 14%,transparent)}
.radar-sweep{position:absolute;inset:4px;border-radius:50%;overflow:hidden;animation:esnRadarSpin 3.5s linear infinite;transform-origin:center}
.radar-sweep:before{content:"";position:absolute;left:50%;top:50%;width:50%;height:50%;transform-origin:0 0;background:conic-gradient(from -6deg,color-mix(in srgb,var(--tc-accent) 28%,transparent),transparent 36deg);clip-path:polygon(0 0,100% 0,100% 100%)}
.radar-packet{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--tc-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--tc-accent) 12%,transparent);animation:esnPacketPulse 1.8s ease-in-out infinite}.packet-a{top:19px;right:23px}.packet-b{bottom:19px;left:18px;animation-delay:.55s}.packet-c{top:49px;left:8px;animation-delay:1.05s}
.mode-off .radar-sweep,.mode-off .radar-packet{animation-play-state:paused;opacity:.32}.mode-mitigating .radar-sweep{animation-duration:1.15s}.mode-mitigating .radar-packet{animation-duration:.75s}
@keyframes esnRadarSpin{to{transform:rotate(360deg)}}@keyframes esnPacketPulse{0%,100%{transform:scale(.72);opacity:.4}50%{transform:scale(1.14);opacity:1}}
.threat-command-copy{min-width:0}.threat-command-eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.13em;color:#62778b}.threat-command-eyebrow .soc-dot{width:7px;height:7px;border-radius:50%;background:var(--tc-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--tc-accent) 10%,transparent)}.threat-command-eyebrow b{margin-left:2px;padding:4px 7px;border-radius:999px;background:var(--tc-soft);color:var(--tc-accent);font-size:8px;letter-spacing:.08em}
.threat-command-copy h3{margin:0;color:var(--tc-ink);font-size:18px;line-height:1.22;font-weight:860;letter-spacing:-.025em}.threat-command-copy>p{max-width:720px;margin:7px 0 14px;color:var(--tc-muted);font-size:11px;line-height:1.55}
.threat-command-signals{display:flex;flex-wrap:wrap;gap:8px 18px}.threat-command-signals>span{display:grid;grid-template-columns:8px auto;grid-template-rows:auto auto;column-gap:7px;align-items:center}.threat-command-signals .signal-led{grid-row:1/3;width:7px;height:7px;border-radius:50%;background:var(--tc-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--tc-accent) 9%,transparent)}.threat-command-signals b{font-size:9px;color:#354a60}.threat-command-signals small{font-size:8.5px;color:#8190a0;margin-top:1px}
.threat-command-side{display:flex;flex-direction:column;gap:10px;justify-content:center;min-width:0}.threat-wave{position:relative;height:76px;padding:7px 10px 18px;border:1px solid #e3ebf1;border-radius:13px;background:rgba(255,255,255,.72);color:var(--tc-accent);overflow:hidden}.threat-wave svg{width:100%;height:100%;filter:drop-shadow(0 5px 7px color-mix(in srgb,var(--tc-accent) 13%,transparent))}.threat-wave span{position:absolute;left:11px;bottom:6px;color:#8a99a9;font-size:8px;font-weight:750;letter-spacing:.04em}.mode-mitigating .wave-line{stroke-dasharray:7 5;animation:esnWaveDash 1.1s linear infinite}@keyframes esnWaveDash{to{stroke-dashoffset:-24}}
.threat-command-cta{width:100%;min-height:40px;border-radius:11px!important}.threat-command-ok{display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--tc-accent) 18%,#dfe8ee);border-radius:11px;background:var(--tc-soft);color:var(--tc-accent)}.threat-command-ok>span{display:flex;flex-direction:column}.threat-command-ok strong{font-size:10px}.threat-command-ok small{font-size:8.5px;color:#718497;margin-top:1px}.mode-mitigating .threat-command-ok{background:#fff2e9;color:#d9541d;border-color:#f2c8b4}.mode-mitigating .threat-command-ok small{color:#9a6b55}

/* Make the lower security area feel like a single SOC surface, not two unrelated tables. */
.security-ops-grid{margin-top:0!important}.threat-live-panel,.threat-history-panel{position:relative}.threat-strip .section-kicker{letter-spacing:.12em!important}.threat-strip h3{font-size:14px!important;letter-spacing:-.015em}.threat-strip p{font-size:9.5px!important;line-height:1.45}.live-pill{box-shadow:0 0 0 5px rgba(11,159,143,.06)}
.incident-item{border-radius:13px!important;border-color:#e3eaf0!important;box-shadow:0 4px 14px rgba(18,42,65,.035)}

/* More decisive protection state during a mutation. */
.protection-row.is-changing{position:relative;overflow:hidden}.protection-row.is-changing:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:36%;border-radius:2px;background:linear-gradient(90deg,transparent,#13ac98,transparent);animation:esnApplyBar .85s ease-in-out infinite}.protection-row.is-changing .protection-row-status small{color:#168b7d!important}@keyframes esnApplyBar{0%{transform:translateX(-110%)}100%{transform:translateX(370%)}}

@media(max-width:1180px){.threat-command{grid-template-columns:104px minmax(0,1fr);gap:18px}.threat-command-side{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center}.threat-radar{width:92px;height:92px}.radar-core{width:40px;height:40px}}
@media(max-width:700px){.threat-command{grid-template-columns:72px minmax(0,1fr);margin:0 12px 12px;padding:15px 13px;gap:11px;border-radius:15px}.threat-radar{width:68px;height:68px}.orbit-b{inset:13px}.orbit-c{inset:26px}.radar-core{width:34px;height:34px;border-radius:10px}.radar-core .ico{width:18px;height:18px}.radar-packet{width:5px;height:5px}.packet-a{top:12px;right:14px}.packet-b{bottom:12px;left:12px}.packet-c{top:31px;left:5px}.threat-command-eyebrow{font-size:8px;gap:6px}.threat-command-copy h3{font-size:15px}.threat-command-copy>p{font-size:10px;margin:5px 0 10px}.threat-command-signals{gap:7px 12px}.threat-command-signals b{font-size:8.5px}.threat-command-signals small{font-size:8px}.threat-command-side{grid-template-columns:1fr;gap:8px}.threat-wave{height:58px}.threat-command-cta,.threat-command-ok{min-height:44px}}
@media(prefers-reduced-motion:reduce){.radar-sweep,.radar-packet,.mode-mitigating .wave-line,.protection-row.is-changing:after{animation:none!important}}
.protection-row.pending-enable .toggle,.protection-row.pending-disable .toggle{background:#d9e2e9!important;box-shadow:inset 0 0 0 1px #cbd8e1!important}.protection-row.pending-enable .toggle:after,.protection-row.pending-disable .toggle:after{content:"";position:absolute;inset:-4px;border-radius:999px;border:2px solid rgba(13,166,146,.12);border-top-color:#0da692;animation:esnToggleSpin .75s linear infinite}.protection-row.pending-disable .toggle:after{border-top-color:#74879b}@keyframes esnToggleSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.protection-row.pending-enable .toggle:after,.protection-row.pending-disable .toggle:after{animation:none!important}}
.threat-command [hidden]{display:none!important}

/* ============================================================
   ESNETWORK v1.7.5 — stable live viewport + Private SSH redesign
   Final override layer. Keep this section last.
   ============================================================ */

/* Active Connections: fixed visual footprint, native document scroll only. */
[data-connections-ip],
[data-connections-ip] .table-wrap,
[data-connections-ip] .peers-table,
[data-connections-ip] .peers-table tbody,
[data-connections-ip] .peers-table tr{
  overflow-anchor:none!important;
}
.connections-fullwidth .table-wrap{
  --connections-slots:5;
  min-height:calc(48px + (var(--connections-slots) * 64px))!important;
  contain:layout paint!important;
  overflow:visible!important;
}
.connections-fullwidth .peers-table{
  min-height:calc(48px + (var(--connections-slots) * 64px))!important;
}
.connections-fullwidth .connections-stable-empty td{
  height:calc(var(--connections-slots,5) * 64px)!important;
  vertical-align:middle!important;
}
.connections-fullwidth .connections-toolbar{
  min-height:62px!important;
  border-bottom:1px solid #e8eef4!important;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
}
.connections-fullwidth .connections-summary{
  min-height:34px!important;
  padding:0 12px!important;
  font-size:10.5px!important;
  background:#f2f7fa!important;
  border-color:#dce7ee!important;
  color:#526a80!important;
}
.connections-fullwidth .peer-rate-line strong{font-size:13.25px!important}
.connections-fullwidth .peer-session-count{font-size:13.25px!important}
.connections-fullwidth .protocol-chip{font-size:10.5px!important;padding:5px 8px!important}
.connections-fullwidth .peer-actions .btn{min-height:42px!important;font-size:11.5px!important;border-radius:10px!important}
.connections-fullwidth .peer-address .strong{font-size:13px!important}

/* Private SSH v2: premium access card with strong hierarchy. */
.ssh-private-v2{
  position:relative!important;
  overflow:hidden!important;
  padding:0!important;
  border:1px solid #dce7ed!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 92% 0%,rgba(20,184,166,.10),transparent 32%),
    linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  box-shadow:0 18px 48px rgba(16,38,60,.09)!important;
}
.ssh-private-v2:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:4px!important;
  background:linear-gradient(180deg,#10bba6,#0e8f86 72%,rgba(14,143,134,.15))!important;
}
.ssh-private-v2 .ssh-private-ambient{
  position:absolute!important;inset:0!important;pointer-events:none!important;overflow:hidden!important;
}
.ssh-private-v2 .ssh-private-ambient span{
  position:absolute!important;border:1px solid rgba(16,185,166,.10)!important;border-radius:999px!important;
}
.ssh-private-v2 .ssh-private-ambient span:nth-child(1){width:240px!important;height:240px!important;right:-135px!important;top:-160px!important}
.ssh-private-v2 .ssh-private-ambient span:nth-child(2){width:170px!important;height:170px!important;right:-95px!important;top:-110px!important}
.ssh-private-v2 .ssh-private-ambient span:nth-child(3){width:95px!important;height:95px!important;right:-52px!important;top:-57px!important;background:rgba(16,185,166,.025)!important}

.ssh-private-v2 .ssh-private-title{
  position:relative!important;
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:22px 22px 18px!important;
  border-bottom:1px solid #eaf0f4!important;
  background:rgba(255,255,255,.76)!important;
}
.ssh-private-v2 .ssh-lock-orb{
  width:48px!important;height:48px!important;border-radius:15px!important;
  display:grid!important;place-items:center!important;
  color:#087f76!important;
  background:linear-gradient(145deg,#e9fbf7,#f7fffd)!important;
  border:1px solid #ccefe7!important;
  box-shadow:inset 0 1px 0 #fff,0 7px 16px rgba(13,148,136,.10)!important;
}
.ssh-private-v2 .section-kicker{font-size:9.5px!important;letter-spacing:.13em!important;color:#0d9488!important;font-weight:850!important;margin-bottom:3px!important}
.ssh-private-v2 .ssh-private-title h3{font-size:20px!important;line-height:1.15!important;letter-spacing:-.02em!important;color:#10243a!important;font-weight:850!important}
.ssh-private-v2 .ssh-private-title p{max-width:590px!important;margin-top:5px!important;font-size:11.5px!important;line-height:1.55!important;color:#70849a!important}
.ssh-private-v2 .ssh-live-badge{
  align-self:start!important;
  min-width:76px!important;height:32px!important;padding:0 12px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:999px!important;
  font-size:9.5px!important;letter-spacing:.04em!important;font-weight:850!important;text-transform:uppercase!important;
  background:#f0f4f7!important;border:1px solid #dfe7ed!important;color:#617487!important;
}
.ssh-private-v2.is-active .ssh-live-badge{background:#e7faf5!important;border-color:#c4eee4!important;color:#087d70!important;box-shadow:0 0 0 4px rgba(16,185,166,.055)!important}

.ssh-private-v2 .ssh-private-body{position:relative!important;padding:18px 22px 8px!important}
.ssh-identity-card{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 36px!important;
  gap:13px!important;align-items:center!important;
  min-height:92px!important;padding:15px 16px!important;
  border:1px solid #dce8ed!important;border-radius:16px!important;
  background:linear-gradient(135deg,#f7fffd,#f8fbfd 75%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.ssh-identity-icon{width:40px!important;height:40px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:#e8f8f5!important;color:#0d8f83!important;border:1px solid #d0eee8!important}
.ssh-identity-copy{min-width:0!important;display:grid!important;gap:3px!important}
.ssh-identity-copy>span,.ssh-port-control>span,.ssh-duration-control>span{font-size:9.5px!important;font-weight:800!important;letter-spacing:.055em!important;text-transform:uppercase!important;color:#7c8ea1!important}
.ssh-identity-copy strong{font-size:18px!important;line-height:1.2!important;letter-spacing:.015em!important;color:#102a40!important;overflow:hidden!important;text-overflow:ellipsis!important}
.ssh-identity-copy small{font-size:10px!important;line-height:1.4!important;color:#8b9bad!important}
.ssh-copy-btn{width:36px!important;height:36px!important;border-radius:10px!important;border:1px solid #d9e5eb!important;background:#fff!important;color:#4e697e!important;display:grid!important;place-items:center!important;cursor:pointer!important;transition:.18s ease!important}
.ssh-copy-btn:hover{color:#0d8f83!important;border-color:#bfe7df!important;background:#f5fffc!important;transform:translateY(-1px)!important}

.ssh-controls-grid{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:14px!important;margin-top:15px!important;align-items:end!important}
.ssh-port-control,.ssh-duration-control{display:grid!important;gap:8px!important;margin:0!important}
.ssh-port-input{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;min-height:48px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 2px 8px rgba(18,45,66,.025)!important}
.ssh-port-input>span{height:100%!important;display:flex!important;align-items:center!important;padding:0 11px!important;border-right:1px solid #e5edf2!important;background:#f6f9fb!important;color:#7690a3!important;font-size:9px!important;font-weight:850!important;letter-spacing:.06em!important}
.ssh-port-input input{width:100%!important;min-height:46px!important;border:0!important;border-radius:0!important;background:transparent!important;padding:0 12px!important;font-size:14px!important;font-weight:780!important;color:#172d43!important;box-shadow:none!important}
.ssh-duration-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}
.ssh-duration-pills{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
.ssh-duration-pills button{min-height:48px!important;padding:0 8px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#fff!important;color:#5d7185!important;font-size:10.5px!important;font-weight:780!important;cursor:pointer!important;transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease!important}
.ssh-duration-pills button:hover{border-color:#bfded8!important;color:#117f76!important;background:#f6fffd!important;transform:translateY(-1px)!important}
.ssh-duration-pills button.active{background:linear-gradient(180deg,#e8faf6,#f5fffd)!important;color:#087e73!important;border-color:#9eddd2!important;box-shadow:0 0 0 3px rgba(16,185,166,.07)!important}

.ssh-private-note{display:flex!important;align-items:center!important;gap:10px!important;margin-top:14px!important;padding:11px 12px!important;border:1px solid #e5edf1!important;border-radius:12px!important;background:#f8fbfc!important;color:#4e687c!important}
.ssh-private-note>svg{flex:0 0 auto!important;color:#0d998b!important}.ssh-private-note>span{display:grid!important;gap:2px!important}.ssh-private-note strong{font-size:10.5px!important;color:#284359!important}.ssh-private-note small{font-size:9.5px!important;line-height:1.35!important;color:#8494a5!important}
.ssh-private-v2 .ssh-private-actions{position:relative!important;margin:0!important;padding:14px 22px 20px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
.ssh-private-v2 .ssh-enable{min-height:50px!important;border-radius:13px!important;font-size:12px!important;font-weight:820!important;box-shadow:0 8px 20px rgba(13,148,136,.16)!important}
.ssh-private-v2 .ssh-disable{min-height:50px!important;border-radius:13px!important;padding:0 18px!important;font-size:11.5px!important}
.ssh-private-v2.is-working{opacity:.93!important}.ssh-private-v2.is-working:after{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.36) 42%,transparent 58%)!important;transform:translateX(-100%)!important;animation:sshWorkSweep 1.2s linear infinite!important}@keyframes sshWorkSweep{to{transform:translateX(100%)!important}}

@media(max-width:1180px){
  .ssh-duration-pills{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .connections-fullwidth .table-wrap{--connections-slots:4;min-height:calc((var(--connections-slots) * 112px) + 20px)!important;contain:layout!important}
  .connections-fullwidth .peers-table{min-height:calc((var(--connections-slots) * 112px) + 20px)!important}
  .connections-fullwidth .connections-stable-empty{min-height:calc((var(--connections-slots,4) * 112px) + 8px)!important}
  .connections-fullwidth .connections-stable-empty td{height:auto!important;min-height:calc((var(--connections-slots,4) * 112px) + 8px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
  .ssh-private-v2{margin:14px 12px!important;border-radius:20px!important}
  .ssh-private-v2 .ssh-private-title{grid-template-columns:46px minmax(0,1fr)!important;padding:18px 16px 15px!important;gap:12px!important}
  .ssh-private-v2 .ssh-lock-orb{width:44px!important;height:44px!important}
  .ssh-private-v2 .ssh-private-title h3{font-size:18px!important}.ssh-private-v2 .ssh-private-title p{font-size:11px!important}
  .ssh-private-v2 .ssh-live-badge{grid-column:2!important;justify-self:start!important;align-self:auto!important;margin:2px 0 0!important;height:28px!important}
  .ssh-private-v2 .ssh-private-body{padding:14px 15px 7px!important}
  .ssh-identity-card{grid-template-columns:38px minmax(0,1fr) 34px!important;padding:13px!important;gap:10px!important}.ssh-identity-icon{width:36px!important;height:36px!important}.ssh-identity-copy strong{font-size:15.5px!important}.ssh-identity-copy small{font-size:9.5px!important}
  .ssh-controls-grid{grid-template-columns:1fr!important;gap:13px!important}.ssh-duration-pills{grid-template-columns:repeat(3,minmax(0,1fr))!important}.ssh-duration-pills button{min-height:44px!important;font-size:10.5px!important}
  .ssh-private-v2 .ssh-private-actions{grid-template-columns:1fr!important;padding:13px 15px 17px!important}.ssh-private-v2 .ssh-enable,.ssh-private-v2 .ssh-disable{width:100%!important;min-height:49px!important}
}
@media(max-width:390px){
  .ssh-duration-pills{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ssh-private-v2 .ssh-private-title{padding-left:14px!important;padding-right:14px!important}.ssh-private-v2 .ssh-private-body,.ssh-private-v2 .ssh-private-actions{padding-left:14px!important;padding-right:14px!important}
}

/* ============================================================
   ESNETWORK v1.7.6 — Private SSH source selector + live threat path
   Clean component layer. These components intentionally reset legacy grids.
   ============================================================ */

/* Keep Private SSH full-width until there is genuinely enough horizontal room. */
.client-shell .security-center-premium.has-private-ssh{grid-template-columns:1fr!important}
.client-shell .security-center-premium.has-private-ssh>.protection-main-column,
.client-shell .security-center-premium.has-private-ssh>.ssh-private-card{grid-column:1!important;border-right:0!important}
.client-shell .security-center-premium.has-private-ssh>.ssh-private-card{margin:18px 20px 20px!important}
@media(min-width:1600px){
  .client-shell .security-center-premium.has-private-ssh{grid-template-columns:minmax(0,1.3fr) minmax(440px,.7fr)!important}
  .client-shell .security-center-premium.has-private-ssh>.protection-main-column{grid-column:1!important;border-right:1px solid #e8eef4!important}
  .client-shell .security-center-premium.has-private-ssh>.ssh-private-card{grid-column:2!important;margin:18px!important}
}

/* SSH v3 resets every inherited grid rule from older versions. */
.ssh-private-card.ssh-private-v3{
  display:block!important;grid-template-columns:none!important;grid-template-rows:none!important;gap:0!important;
  position:relative!important;overflow:hidden!important;padding:0!important;
  border:1px solid #dce7ee!important;border-radius:22px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:0 18px 44px rgba(17,39,61,.08)!important;
  isolation:isolate!important;
}
.ssh-private-v3:before{content:""!important;position:absolute!important;inset:0 0 auto!important;height:3px!important;background:linear-gradient(90deg,#12b8a2,#2d7ff1 58%,#8b5cf6)!important;z-index:3!important}
.ssh-private-v3:after{content:""!important;position:absolute!important;width:290px!important;height:290px!important;border-radius:50%!important;right:-175px!important;top:-185px!important;background:radial-gradient(circle,rgba(18,184,162,.11),rgba(18,184,162,0) 68%)!important;pointer-events:none!important;z-index:-1!important}
.ssh3-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:22px 24px 18px!important;border-bottom:1px solid #e8eef3!important;background:rgba(255,255,255,.88)!important}
.ssh3-title-wrap{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}.ssh3-icon{width:48px!important;height:48px!important;border-radius:15px!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;color:#078b7e!important;background:linear-gradient(145deg,#e8faf6,#f8fffd)!important;border:1px solid #cdeee7!important;box-shadow:0 8px 18px rgba(13,148,136,.09)!important}
.ssh3-title-wrap .section-kicker{font-size:9.5px!important;letter-spacing:.14em!important;font-weight:900!important;color:#0b9485!important;margin:0 0 3px!important}.ssh3-title-wrap h3{margin:0!important;font-size:21px!important;line-height:1.15!important;font-weight:880!important;letter-spacing:-.03em!important;color:#0e2137!important}.ssh3-title-wrap p{margin:5px 0 0!important;font-size:12px!important;line-height:1.45!important;color:#71859a!important}
.ssh3-status{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:78px!important;height:34px!important;padding:0 12px!important;border-radius:999px!important;border:1px solid #dce5eb!important;background:#f1f4f7!important;color:#607386!important;font-size:10px!important;font-weight:850!important;letter-spacing:.045em!important;text-transform:uppercase!important;flex:0 0 auto!important}.ssh-private-v3.is-active .ssh3-status{background:#e7faf5!important;border-color:#c7eee4!important;color:#087e70!important;box-shadow:0 0 0 4px rgba(16,185,166,.055)!important}
.ssh3-body{display:block!important;padding:20px 24px 8px!important}.ssh3-section-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;margin-bottom:12px!important}.ssh3-section-head>div{display:grid!important;gap:3px!important}.ssh3-section-head strong{font-size:13.5px!important;color:#14283e!important;font-weight:850!important}.ssh3-section-head span{font-size:10.5px!important;color:#8292a4!important;line-height:1.4!important}.ssh3-safe-chip{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:30px!important;padding:0 10px!important;border-radius:999px!important;background:#eef9f6!important;border:1px solid #d7eee8!important;color:#0a8275!important;font-size:9.5px!important;font-weight:800!important;white-space:nowrap!important}
.ssh3-source-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-bottom:12px!important}.ssh3-source-tabs button{display:flex!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:10px 12px!important;border:1px solid #dce6ed!important;border-radius:13px!important;background:#fff!important;color:#40566c!important;text-align:left!important;cursor:pointer!important;transition:.16s ease!important}.ssh3-source-tabs button:hover{border-color:#bddfd8!important;background:#f9fffd!important;transform:translateY(-1px)!important}.ssh3-source-tabs button.active{border-color:#9bdacc!important;background:linear-gradient(180deg,#eafaf6,#f8fffd)!important;box-shadow:0 0 0 3px rgba(16,185,166,.065)!important}.ssh3-source-tabs button:disabled{opacity:.6!important;cursor:wait!important;transform:none!important}.ssh3-radio{width:16px!important;height:16px!important;border-radius:50%!important;border:1.5px solid #b8c7d4!important;background:#fff!important;box-shadow:inset 0 0 0 4px #fff!important;flex:none!important}.ssh3-source-tabs button.active .ssh3-radio{border-color:#0fac9a!important;background:#0fac9a!important}.ssh3-source-tabs button>span:last-child{display:grid!important;gap:1px!important}.ssh3-source-tabs b{font-size:11.5px!important;color:#1e3349!important}.ssh3-source-tabs small{font-size:9.5px!important;color:#8495a6!important}
.ssh3-source-card,.ssh3-custom-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;min-height:88px!important;padding:14px 15px!important;border:1px solid #dce8ee!important;border-radius:15px!important;background:linear-gradient(135deg,#f7fffd,#f8fbfd)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important}.ssh3-source-card>div{display:grid!important;gap:3px!important}.ssh3-source-card span,.ssh3-custom-card>span,.ssh3-port>span,.ssh3-duration>span{font-size:9.5px!important;font-weight:850!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#7c8fa2!important}.ssh3-source-card strong{font-size:19px!important;color:#0f2a40!important;line-height:1.15!important}.ssh3-source-card small,.ssh3-custom-card small{font-size:9.8px!important;line-height:1.4!important;color:#8999aa!important}.ssh3-copy{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;padding:0 12px!important;border:1px solid #d8e3ea!important;border-radius:10px!important;background:#fff!important;color:#4d667b!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important}.ssh3-copy:hover{border-color:#b9dfd7!important;background:#f7fffd!important;color:#0c877b!important}
.ssh3-custom-card{grid-template-columns:1fr!important}.ssh3-custom-card>div{position:relative!important}.ssh3-custom-card input{width:100%!important;min-height:48px!important;border:1px solid #d6e2e9!important;border-radius:11px!important;background:#fff!important;padding:0 42px 0 13px!important;font:780 14px/1 var(--font)!important;color:#142b41!important;outline:none!important;box-shadow:none!important}.ssh3-custom-card input:focus{border-color:#8fd4c8!important;box-shadow:0 0 0 4px rgba(16,185,166,.07)!important}.ssh3-valid-dot{position:absolute!important;right:15px!important;top:50%!important;transform:translateY(-50%)!important;width:9px!important;height:9px!important;border-radius:50%!important;background:#d2dce4!important}.ssh3-custom-card.looks-valid .ssh3-valid-dot{background:#10ae92!important;box-shadow:0 0 0 4px rgba(16,174,146,.09)!important}
.ssh3-config-grid{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:14px!important;margin-top:14px!important;align-items:end!important}.ssh3-port,.ssh3-duration{display:grid!important;gap:8px!important;margin:0!important}.ssh3-port>div{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;min-height:49px!important;border:1px solid #dce6ed!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important}.ssh3-port b{display:flex!important;align-items:center!important;padding:0 10px!important;border-right:1px solid #e7edf2!important;background:#f5f8fa!important;color:#7a8ea1!important;font-size:9.5px!important;letter-spacing:.06em!important}.ssh3-port input{width:100%!important;min-width:0!important;border:0!important;background:#fff!important;padding:0 12px!important;font-size:14px!important;font-weight:800!important;color:#132940!important;outline:none!important;box-shadow:none!important}.ssh3-duration-pills{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}.ssh3-duration-pills button{min-height:49px!important;padding:0 7px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#fff!important;color:#5b7186!important;font-size:10.5px!important;font-weight:800!important;cursor:pointer!important;transition:.15s ease!important}.ssh3-duration-pills button:hover{border-color:#bcded7!important;background:#f8fffd!important;color:#0d8278!important}.ssh3-duration-pills button.active{border-color:#96d9cd!important;background:linear-gradient(180deg,#e7faf5,#f7fffd)!important;color:#087e73!important;box-shadow:0 0 0 3px rgba(16,185,166,.065)!important}
.ssh3-assurance{display:flex!important;align-items:center!important;gap:10px!important;margin-top:14px!important;padding:11px 12px!important;border:1px solid #e4ecf1!important;border-radius:12px!important;background:#f8fbfc!important}.ssh3-assurance-icon{width:31px!important;height:31px!important;display:grid!important;place-items:center!important;border-radius:9px!important;background:#eaf9f5!important;color:#0b9486!important;flex:none!important}.ssh3-assurance>div{display:grid!important;gap:2px!important}.ssh3-assurance strong{font-size:10.5px!important;color:#294359!important}.ssh3-assurance small{font-size:9.5px!important;color:#8495a6!important;line-height:1.4!important}
.ssh3-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:14px 24px 22px!important}.ssh3-actions .btn{min-height:50px!important;border-radius:13px!important;font-size:12px!important;font-weight:850!important}.ssh3-actions .primary{box-shadow:0 9px 20px rgba(13,148,136,.16)!important}.ssh-private-v3.is-working{opacity:.92!important}.ssh-private-v3.is-working:after{content:""!important;position:absolute!important;inset:0!important;z-index:5!important;pointer-events:none!important;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.4) 44%,transparent 60%)!important;transform:translateX(-100%)!important;animation:ssh3Sweep 1.1s linear infinite!important}@keyframes ssh3Sweep{to{transform:translateX(100%)!important}}

/* Threat Defense v2 — actual traffic path, same component for admin and client. */
.threat-command.threat-command-v2{display:block!important;margin:16px 18px 0!important;padding:0!important;border:1px solid #dfe8ee!important;border-radius:18px!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;box-shadow:0 10px 28px rgba(20,43,65,.055)!important;overflow:hidden!important;--tc-accent:#71869b!important;--tc-soft:#f1f5f8!important;--traffic-intensity:.25!important}.threat-command-v2.mode-watch{--tc-accent:#079b86!important;--tc-soft:#e9f9f5!important}.threat-command-v2.mode-mitigating{--tc-accent:#e76328!important;--tc-soft:#fff1e9!important;border-color:#efc9b7!important;box-shadow:0 14px 34px rgba(205,79,28,.11)!important}.threat-command-v2:after{display:none!important}
.threat2-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:20px!important;padding:18px 20px 14px!important;border-bottom:1px solid #edf2f5!important}.threat2-head>div:first-child{min-width:0!important}.threat2-head h3{margin:0!important;font-size:18px!important;line-height:1.2!important;font-weight:870!important;letter-spacing:-.025em!important;color:#11263c!important}.threat2-head p{margin:6px 0 0!important;max-width:820px!important;font-size:10.7px!important;line-height:1.5!important;color:#74879a!important}.threat2-live{display:flex!important;align-items:center!important;gap:9px!important;min-width:132px!important;padding:8px 10px!important;border:1px solid #e2eaf0!important;border-radius:11px!important;background:#f8fbfd!important;flex:none!important}.threat2-live .live-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:var(--tc-accent)!important;box-shadow:0 0 0 5px color-mix(in srgb,var(--tc-accent) 10%,transparent)!important}.threat2-live>div{display:grid!important;gap:1px!important}.threat2-live small{font-size:7.8px!important;font-weight:900!important;letter-spacing:.08em!important;color:#8394a5!important}.threat2-live strong{font-size:12px!important;color:#20384e!important}
.threat2-flow{position:relative!important;display:grid!important;grid-template-columns:minmax(150px,.8fr) minmax(70px,.55fr) minmax(170px,1fr) minmax(70px,.55fr) minmax(160px,.85fr)!important;align-items:center!important;gap:10px!important;padding:18px 20px 28px!important;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--tc-accent) 5%,transparent),transparent 38%),linear-gradient(180deg,#fbfdff,#fff)!important}.threat2-node{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;gap:11px!important;min-height:72px!important;padding:12px!important;border:1px solid #dfe8ee!important;border-radius:14px!important;background:#fff!important;box-shadow:0 5px 16px rgba(22,45,68,.05)!important}.threat2-node .node-icon{width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border-radius:11px!important;background:#eef4f7!important;color:#536d82!important;flex:none!important}.threat2-node>div{display:grid!important;gap:2px!important;min-width:0!important}.threat2-node small{font-size:8px!important;font-weight:850!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#8a99a8!important}.threat2-node strong{font-size:11px!important;color:#1d3349!important;overflow:hidden!important;text-overflow:ellipsis!important}.threat2-node em{font-size:8.8px!important;color:#7e90a2!important;font-style:normal!important}.threat2-node.inspection{border-color:color-mix(in srgb,var(--tc-accent) 30%,#dfe8ee)!important;background:linear-gradient(145deg,var(--tc-soft),#fff)!important}.threat2-node.inspection .node-icon{background:color-mix(in srgb,var(--tc-accent) 10%,#fff)!important;color:var(--tc-accent)!important}.inspection-ring{position:absolute!important;inset:-5px!important;border:1px solid color-mix(in srgb,var(--tc-accent) 15%,transparent)!important;border-radius:18px!important;pointer-events:none!important}.is-protected .inspection-ring,.is-mitigating .inspection-ring{animation:threatPulse 2.2s ease-out infinite!important}@keyframes threatPulse{0%,100%{opacity:.45;transform:scale(.99)}50%{opacity:1;transform:scale(1.018)}}
.threat2-link{position:relative!important;height:28px!important;display:flex!important;align-items:center!important}.threat2-link>span{position:absolute!important;left:0!important;right:0!important;top:50%!important;height:2px!important;transform:translateY(-50%)!important;background:linear-gradient(90deg,#d9e4eb,var(--tc-accent),#d9e4eb)!important;opacity:.45!important}.threat2-link i{position:absolute!important;z-index:2!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--tc-accent)!important;top:50%!important;transform:translate(-50%,-50%)!important;opacity:.25!important}.threat2-link i:nth-child(1){animation-delay:0s!important}.threat2-link i:nth-child(2){animation-delay:.45s!important}.threat2-link i:nth-child(3){animation-delay:.9s!important}.threat2-link i:nth-child(4){animation-delay:1.35s!important}.is-protected .threat2-link i,.is-mitigating .threat2-link i{animation:packetFlow 1.8s linear infinite!important;opacity:.85!important}@keyframes packetFlow{0%{left:0%;opacity:0}14%{opacity:.9}86%{opacity:.9}100%{left:100%;opacity:0}}.is-direct .threat2-link i{animation:packetFlowDirect 2.1s linear infinite!important;opacity:.45!important}@keyframes packetFlowDirect{0%{left:0%;opacity:0}18%{opacity:.5}100%{left:100%;opacity:0}}
.threat2-drop{position:absolute!important;left:50%!important;bottom:6px!important;transform:translateX(-50%)!important;display:flex!important;align-items:center!important;gap:8px!important;opacity:.28!important;transition:.18s ease!important}.threat2-drop>div{display:flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;border-radius:999px!important;background:#f4f7f9!important;border:1px solid #e3eaf0!important;color:#8191a1!important}.threat2-drop b{font-size:8.5px!important}.threat2-drop small{font-size:8px!important}.drop-line{position:absolute!important;bottom:100%!important;left:50%!important;width:2px!important;height:24px!important;transform:translateX(-50%)!important;background:linear-gradient(var(--tc-accent),transparent)!important}.drop-line i{position:absolute!important;left:50%!important;width:5px!important;height:5px!important;border-radius:50%!important;background:var(--tc-accent)!important;transform:translateX(-50%)!important;opacity:0!important}.is-mitigating .threat2-drop{opacity:1!important}.is-mitigating .threat2-drop>div{background:#fff1e9!important;border-color:#f2c8b5!important;color:#d75d28!important}.is-mitigating .drop-line i{animation:packetDrop 1.2s linear infinite!important}.is-mitigating .drop-line i:nth-child(2){animation-delay:.4s!important}.is-mitigating .drop-line i:nth-child(3){animation-delay:.8s!important}@keyframes packetDrop{0%{top:0;opacity:0}20%{opacity:1}100%{top:20px;opacity:0}}
.threat2-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:12px 20px 16px!important;border-top:1px solid #edf2f5!important;background:#fff!important}.threat2-metrics{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}.threat2-metrics>span{display:grid!important;gap:1px!important;min-width:82px!important;padding:6px 9px!important;border:1px solid #e4ebf0!important;border-radius:9px!important;background:#f8fafc!important}.threat2-metrics small{font-size:7.5px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#91a0ae!important}.threat2-metrics strong{font-size:9.5px!important;color:#30485f!important}.threat-command-v2 .threat-command-cta{width:auto!important;min-width:210px!important;min-height:42px!important}.threat-command-v2 .threat-command-ok{min-width:210px!important;min-height:42px!important}

@media(max-width:1100px){.threat2-flow{grid-template-columns:minmax(130px,.8fr) minmax(42px,.4fr) minmax(150px,1fr) minmax(42px,.4fr) minmax(140px,.8fr)!important}.threat2-node{padding:10px!important}.threat2-node .node-icon{width:34px!important;height:34px!important}.ssh3-duration-pills{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){
  .client-shell .security-center-premium.has-private-ssh>.ssh-private-card{margin:14px 12px 16px!important}
  .ssh3-head{align-items:flex-start!important;padding:18px 16px 15px!important}.ssh3-title-wrap{gap:11px!important}.ssh3-icon{width:43px!important;height:43px!important;border-radius:13px!important}.ssh3-title-wrap h3{font-size:18px!important}.ssh3-title-wrap p{font-size:10.5px!important}.ssh3-status{height:29px!important;min-width:68px!important;font-size:8.8px!important;padding:0 9px!important}.ssh3-body{padding:16px 15px 7px!important}.ssh3-section-head{display:block!important}.ssh3-safe-chip{margin-top:8px!important}.ssh3-source-tabs{grid-template-columns:1fr!important}.ssh3-source-tabs button{min-height:54px!important}.ssh3-source-card{min-height:82px!important;grid-template-columns:minmax(0,1fr) auto!important}.ssh3-source-card strong{font-size:16px!important}.ssh3-copy span{display:none!important}.ssh3-copy{width:38px!important;padding:0!important;justify-content:center!important}.ssh3-config-grid{grid-template-columns:1fr!important}.ssh3-duration-pills{grid-template-columns:repeat(3,minmax(0,1fr))!important}.ssh3-duration-pills button{min-height:45px!important}.ssh3-actions{grid-template-columns:1fr!important;padding:13px 15px 17px!important}.ssh3-actions .btn{width:100%!important;min-height:49px!important}
  .threat-command.threat-command-v2{margin:12px!important;border-radius:15px!important}.threat2-head{padding:15px 14px 12px!important;display:block!important}.threat2-head h3{font-size:15.5px!important}.threat2-head p{font-size:9.8px!important}.threat2-live{margin-top:10px!important;width:max-content!important;min-width:120px!important}.threat2-flow{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:12px 14px 42px!important}.threat2-link{height:24px!important;width:2px!important;justify-self:center!important}.threat2-link>span{left:50%!important;right:auto!important;top:0!important;bottom:0!important;width:2px!important;height:100%!important;transform:translateX(-50%)!important;background:linear-gradient(180deg,#d9e4eb,var(--tc-accent),#d9e4eb)!important}.threat2-link i{left:50%!important;top:0!important}.is-protected .threat2-link i,.is-mitigating .threat2-link i{animation:packetFlowMobile 1.8s linear infinite!important}@keyframes packetFlowMobile{0%{top:0;opacity:0}15%{opacity:.9}100%{top:100%;opacity:0}}.is-direct .threat2-link i{animation:packetFlowMobile 2.1s linear infinite!important}.threat2-node{min-height:62px!important}.threat2-drop{bottom:8px!important}.threat2-foot{display:block!important;padding:11px 14px 14px!important}.threat2-metrics{display:grid!important;grid-template-columns:1fr 1fr!important;margin-bottom:10px!important}.threat2-metrics>span{min-width:0!important}.threat-command-v2 .threat-command-cta,.threat-command-v2 .threat-command-ok{width:100%!important;min-width:0!important}
}
@media(max-width:390px){.ssh3-source-card{grid-template-columns:1fr!important}.ssh3-copy{width:100%!important}.ssh3-copy span{display:inline!important}.ssh3-duration-pills{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ssh3-head{gap:10px!important}.ssh3-status{position:absolute!important;right:12px!important;top:12px!important}.ssh3-title-wrap{padding-right:60px!important}}

/* ======================================================================
   ESNETWORK v1.7.7 — final visual system + zero-shift Active Connections
   ====================================================================== */
:root{
  --bg:#f3f7fb!important;
  --bg-2:#f8fbfd!important;
  --surface:#ffffff!important;
  --ink:#102036!important;
  --ink-2:#2b4056!important;
  --muted:#6f8296!important;
  --muted-2:#94a3b2!important;
  --line:#dce6ee!important;
  --line-strong:#cedae4!important;
  --accent:#0fb5a2!important;
  --accent-2:#2ed0bd!important;
  --radius:20px!important;
  --radius-sm:12px!important;
  --shadow-soft:0 10px 30px rgba(22,47,74,.065)!important;
  --shadow:0 20px 58px rgba(22,47,74,.085)!important;
}
html{scroll-behavior:auto!important;scroll-padding-top:84px!important}
body{font-size:15px!important;line-height:1.45!important;letter-spacing:-.005em!important;background:linear-gradient(180deg,#f7faff 0,#f2f6fa 420px,#f4f7fb 100%)!important;color:var(--ink)!important}
.content{padding:32px 34px 64px!important}
.page-head{margin-bottom:26px!important;align-items:center!important}.page-head h1{font-size:34px!important;line-height:1.08!important;font-weight:850!important;letter-spacing:-.045em!important;color:#0e1d31!important}.page-head p{font-size:13.5px!important;line-height:1.6!important;color:#718298!important;margin-top:8px!important}
.eyebrow,.section-kicker{font-size:10px!important;letter-spacing:.15em!important;font-weight:900!important;color:#6f8297!important}

/* Navigation/readability */
.sidebar{width:270px!important;padding:24px 16px!important;background:linear-gradient(180deg,#061725 0%,#071d30 58%,#08243a 100%)!important;border-right:1px solid rgba(255,255,255,.045)!important;box-shadow:18px 0 50px rgba(7,24,39,.10)!important}
.app{grid-template-columns:270px minmax(0,1fr)!important}.brand{gap:13px!important;padding:4px 10px 25px!important}.brand strong{font-size:14px!important;letter-spacing:.13em!important;color:#25d0be!important}.brand span{font-size:11px!important;color:#a1b2c1!important;margin-top:3px!important}.nav-label{font-size:9.5px!important;color:#73889a!important;padding:20px 12px 9px!important}.nav{gap:5px!important}.nav a{min-height:46px!important;padding:0 13px!important;border-radius:12px!important;font-size:13.25px!important;font-weight:700!important;color:#a8b8c5!important}.nav a:hover{background:rgba(255,255,255,.055)!important;color:#f7fbfd!important}.nav a.active{background:linear-gradient(90deg,rgba(18,185,167,.19),rgba(31,107,144,.18))!important;color:#fff!important;box-shadow:inset 3px 0 0 #14c6b2,0 8px 22px rgba(0,0,0,.08)!important}.sidebar-bottom .who{font-size:13.5px!important}.sidebar-bottom .role{font-size:9.5px!important;color:#8095a6!important}.logout{font-size:12px!important}
.topbar{height:74px!important;padding:0 34px!important;background:rgba(247,250,253,.88)!important;border-bottom:1px solid rgba(213,224,233,.78)!important;box-shadow:0 5px 18px rgba(24,48,73,.025)!important}.crumb{font-size:12px!important;color:#6a7f92!important}

/* Panels, controls, typography */
.panel,.security-center-premium,.ssh-private-card,.metric{border:1px solid #dce6ee!important;border-radius:20px!important;background:rgba(255,255,255,.985)!important;box-shadow:0 10px 30px rgba(22,47,74,.055)!important}
.panel-head{min-height:64px!important;padding:16px 20px!important;border-bottom-color:#e7eef4!important}.panel-head h2,.panel-head h3{font-size:16px!important;font-weight:830!important;letter-spacing:-.025em!important;color:#13243a!important}.panel-head .meta{font-size:11.5px!important;color:#7b8ea1!important}.panel-body{padding:20px!important}
.btn{min-height:46px!important;padding:0 16px!important;border-radius:12px!important;font-size:13px!important;font-weight:760!important;border-color:#d4e0e8!important;color:#20354a!important;box-shadow:0 2px 6px rgba(22,45,67,.025)!important}.btn:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(22,45,67,.065)!important}.btn.sm{min-height:40px!important;padding:0 12px!important;border-radius:10px!important;font-size:11.75px!important}.btn.primary,.btn.accent{background:linear-gradient(180deg,#11b9a5,#0c9f90)!important;border-color:#0c9f90!important;color:#fff!important;box-shadow:0 8px 18px rgba(13,159,144,.16)!important}.btn.primary:hover,.btn.accent:hover{background:linear-gradient(180deg,#13c3ae,#0ba391)!important}
input,select,textarea{min-height:46px!important;border-radius:12px!important;padding:0 13px!important;border-color:#d6e1e9!important;font-size:13px!important;color:#172c42!important;background:#fff!important}textarea{padding:12px 13px!important}label{font-size:11.5px!important;color:#556b80!important;font-weight:750!important;margin-bottom:8px!important}.field-note{font-size:10.5px!important;color:#8192a3!important}
.badge{min-height:27px!important;padding:0 9px!important;font-size:9.5px!important}.live-pill{min-height:32px!important;padding:0 11px!important;font-size:9.5px!important}
.table th{height:46px!important;padding:0 16px!important;font-size:10px!important;letter-spacing:.09em!important;color:#71859a!important;background:#f8fafc!important}.table td{padding:14px 16px!important;font-size:13px!important;color:#294056!important}.empty{font-size:12px!important}.empty strong{font-size:13.5px!important;color:#344a5f!important}

/* Protection Center */
.protection-list{padding:0 20px 10px!important}.protection-row{min-height:88px!important;padding:14px 0!important;grid-template-columns:46px minmax(0,1fr) 100px 50px!important;gap:14px!important;border-bottom-color:#e8eef3!important}.protection-row-icon{width:44px!important;height:44px!important;border-radius:13px!important}.protection-row-copy h3{font-size:15px!important;line-height:1.28!important;font-weight:820!important;color:#14263b!important}.protection-row-copy p{font-size:11.5px!important;line-height:1.5!important;color:#718499!important;margin-top:4px!important}.protection-row-tags span{font-size:8.5px!important;padding:4px 7px!important}.protection-state{height:27px!important;min-width:44px!important;font-size:10px!important}.protection-row-status small{font-size:9.5px!important}.toggle{width:48px!important;height:28px!important}.toggle:before{width:20px!important;height:20px!important;top:4px!important;left:4px!important}.toggle.on:before{transform:translateX(20px)!important}

/* Active Connections: exact geometry, persistent rows, no nested scrolling. */
[data-connections-ip],
[data-connections-ip] *{scroll-margin:0!important}
[data-connections-ip]{overflow-anchor:none!important;contain:layout style!important}
.connections-fullwidth .table-wrap{
  --connections-slots:5;
  height:calc(46px + (var(--connections-slots) * 70px))!important;
  min-height:calc(46px + (var(--connections-slots) * 70px))!important;
  max-height:calc(46px + (var(--connections-slots) * 70px))!important;
  overflow:hidden!important;
  contain:layout size!important;
  overscroll-behavior:auto!important;
}
.connections-fullwidth .peers-table{height:100%!important;min-height:0!important;table-layout:fixed!important}
.connections-fullwidth .peers-table thead tr{height:46px!important}
.connections-fullwidth .peers-table tbody{height:calc(var(--connections-slots) * 70px)!important}
.connections-fullwidth .peers-table tr.connection-slot{height:70px!important;min-height:70px!important;max-height:70px!important;overflow:hidden!important}
.connections-fullwidth .peers-table tr.connection-slot>td{height:70px!important;min-height:70px!important;max-height:70px!important;padding-top:0!important;padding-bottom:0!important;vertical-align:middle!important;overflow:hidden!important}
.connections-fullwidth .connection-slot-placeholder{visibility:hidden!important;pointer-events:none!important}
.connections-fullwidth .connections-stable-empty td{height:70px!important;min-height:70px!important;max-height:70px!important;padding:0 20px!important}.connections-fullwidth .connections-stable-empty .empty{display:table-cell!important;text-align:center!important;vertical-align:middle!important}.connections-fullwidth .connections-stable-empty .empty span{display:block!important;margin-top:3px!important;color:#8394a5!important;font-size:11px!important}
.connections-fullwidth .connections-toolbar{min-height:66px!important;padding:12px 20px!important}.connections-fullwidth .connections-summary{min-height:36px!important;font-size:11px!important;padding:0 13px!important}
.connections-fullwidth .peer-address .strong,.connections-fullwidth .peer-rate-line strong,.connections-fullwidth .peer-session-count{font-size:13.5px!important}.connections-fullwidth .protocol-chip{font-size:10.5px!important;padding:5px 8px!important;border-radius:7px!important}.connections-fullwidth .peer-actions{grid-template-columns:minmax(96px,.85fr) minmax(104px,.95fr)!important;gap:8px!important}.connections-fullwidth .peer-actions .btn{min-height:42px!important;font-size:11.5px!important}.connections-fullwidth .peer-meter{height:5px!important;border-radius:999px!important;margin-top:7px!important}

/* Threat Defense readability */
.threat2-head h3{font-size:17px!important;letter-spacing:-.025em!important}.threat2-head p{font-size:11.5px!important;line-height:1.5!important}.threat2-live small{font-size:8.5px!important}.threat2-live strong{font-size:13px!important}.threat2-node{min-height:80px!important;padding:14px!important}.threat2-node small{font-size:8.5px!important}.threat2-node strong{font-size:12.5px!important}.threat2-node em{font-size:9.5px!important}.threat2-metrics small{font-size:8px!important}.threat2-metrics strong{font-size:10.5px!important}

/* SSH v3 readability */
.ssh3-title-wrap h3{font-size:21px!important;letter-spacing:-.025em!important}.ssh3-title-wrap p{font-size:12px!important;line-height:1.5!important}.ssh3-status{min-height:32px!important;font-size:9.5px!important}.ssh3-section-head strong{font-size:13px!important}.ssh3-section-head p{font-size:10.5px!important;line-height:1.45!important}.ssh3-source-tabs button{min-height:58px!important;font-size:12px!important}.ssh3-source-card{min-height:92px!important}.ssh3-source-card strong{font-size:18px!important}.ssh3-source-card small{font-size:10.5px!important;line-height:1.45!important}.ssh3-config-grid label,.ssh3-duration-label{font-size:10.5px!important}.ssh3-duration-pills button{min-height:48px!important;font-size:11.5px!important}.ssh3-actions .btn{min-height:50px!important;font-size:12.5px!important}

@media(max-width:1100px){
  .app{grid-template-columns:252px minmax(0,1fr)!important}.sidebar{width:252px!important}.content{padding:28px 24px 58px!important}.topbar{padding:0 24px!important}
  .page-head h1{font-size:31px!important}.protection-row{grid-template-columns:44px minmax(0,1fr) 92px 48px!important}
}
@media(max-width:800px){
  .app{display:block!important}.sidebar{width:min(300px,88vw)!important}.content{padding:24px 16px 92px!important}.topbar{height:66px!important;padding:0 16px!important}.page-head{align-items:flex-start!important}.page-head h1{font-size:29px!important}.page-head p{font-size:12.5px!important}.panel,.security-center-premium,.ssh-private-card{border-radius:17px!important}.panel-head{min-height:58px!important;padding:14px 15px!important}.panel-head h2,.panel-head h3{font-size:15px!important}.panel-body{padding:15px!important}
  .protection-list{padding:0 14px 6px!important}.protection-row{grid-template-columns:42px minmax(0,1fr) 48px!important;min-height:82px!important;padding:12px 0!important;gap:11px!important}.protection-row-status{display:none!important}.protection-row .toggle{grid-column:3!important}.protection-row-copy h3{font-size:14px!important}.protection-row-copy p{font-size:10.75px!important}
  .connections-fullwidth .table-wrap{--connections-slots:4;height:calc((var(--connections-slots) * 126px) + 30px)!important;min-height:calc((var(--connections-slots) * 126px) + 30px)!important;max-height:calc((var(--connections-slots) * 126px) + 30px)!important;contain:layout size!important;overflow:hidden!important}.connections-fullwidth .peers-table{height:100%!important}.connections-fullwidth .peers-table thead{display:none!important}.connections-fullwidth .peers-table tbody{display:grid!important;grid-template-rows:repeat(var(--connections-slots),126px)!important;gap:0!important;padding:15px 10px!important;height:100%!important}.connections-fullwidth .peers-table tr.connection-slot{height:126px!important;min-height:126px!important;max-height:126px!important;display:grid!important;overflow:hidden!important;margin:0!important;padding:12px 13px!important;border-bottom:1px solid #e8eef3!important;border-radius:0!important;box-shadow:none!important}.connections-fullwidth .peers-table tr.connection-slot:first-child{border-radius:12px 12px 0 0!important}.connections-fullwidth .peers-table tr.connection-slot:last-child{border-radius:0 0 12px 12px!important}.connections-fullwidth .peers-table tr.connection-slot>td{height:auto!important;min-height:0!important;max-height:none!important}.connections-fullwidth .connections-stable-empty{display:flex!important;align-items:center!important;justify-content:center!important}.connections-fullwidth .connections-stable-empty td{height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important}.connections-fullwidth .peer-actions{grid-template-columns:1fr 1fr!important}.connections-fullwidth .peer-actions .btn{min-height:40px!important}
  .btn{min-height:44px!important;font-size:12.5px!important}.btn.sm{min-height:38px!important;font-size:11.5px!important}
}
@media(max-width:430px){
  body{font-size:14px!important}.content{padding-left:11px!important;padding-right:11px!important}.page-head h1{font-size:27px!important}.connections-fullwidth .table-wrap{--connections-slots:4;height:calc((var(--connections-slots) * 148px) + 24px)!important;min-height:calc((var(--connections-slots) * 148px) + 24px)!important;max-height:calc((var(--connections-slots) * 148px) + 24px)!important}.connections-fullwidth .peers-table tbody{grid-template-rows:repeat(var(--connections-slots),148px)!important;padding:12px 8px!important}.connections-fullwidth .peers-table tr.connection-slot{height:148px!important;min-height:148px!important;max-height:148px!important;padding:12px!important}.connections-fullwidth .peer-actions{grid-template-columns:1fr!important}.connections-fullwidth .peer-actions .btn{min-height:39px!important}.ssh3-duration-pills{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* v1.7.8 — Threat Defense is a shared full-width admin/client component. */
.client-shell .security-center-premium.has-private-ssh > .threat-command,
.client-shell .security-center-premium > .threat-command{
  grid-column:1 / -1!important;
  width:auto!important;
  min-width:0!important;
}
.threat-command-readonly{
  display:flex;align-items:center;gap:10px;min-width:220px;min-height:42px;
  padding:8px 12px;border:1px solid #dfe8ef;border-radius:11px;
  background:#f7fafc;color:#456075
}
.threat-command-readonly>span{display:flex;flex-direction:column;min-width:0}
.threat-command-readonly strong{font-size:10px;font-weight:850;color:#30485f}
.threat-command-readonly small{margin-top:1px;font-size:8.5px;line-height:1.35;color:#7e91a3}
.threat-command-readonly .ico{flex:none;color:#0b9b88}
@media(max-width:700px){
  .threat-command-readonly{width:100%;min-width:0;min-height:44px}
}

/* v1.8.1 — Secured SSH: permanent deny-by-default + multi-source trusted access. */
.ssh-secured-card{position:relative;margin:18px 20px 20px;border:1px solid #dbe7ee;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 12px 34px rgba(19,42,64,.06);overflow:hidden;isolation:isolate}
.ssh-secured-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#10b7a1,#2387e8 58%,#7958e8);z-index:2}.ssh-secured-card:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-230px;top:-235px;background:radial-gradient(circle,rgba(14,170,153,.12),rgba(14,170,153,0) 69%);pointer-events:none;z-index:-1}
.ssh-secured-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid #eaf0f4}.ssh-secured-title{display:flex;align-items:flex-start;gap:14px;min-width:0}.ssh-secured-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:15px;border:1px solid #d8e8e5;background:linear-gradient(145deg,#e8fbf7,#fff);color:#078f80;box-shadow:0 8px 20px rgba(11,148,132,.09)}.ssh-secured-title h3{margin:2px 0 5px;font-size:20px;line-height:1.22;letter-spacing:-.025em;color:#10243a;font-weight:860}.ssh-secured-title p{margin:0;max-width:720px;font-size:12px;line-height:1.55;color:#6f8397}.ssh-secured-state{display:inline-flex;align-items:center;justify-content:center;min-width:82px;height:34px;padding:0 13px;border:1px solid #dce5ec;border-radius:999px;background:#f1f5f8;color:#607488;font-size:10px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.ssh-secured-card.is-active .ssh-secured-state{background:#e5faf4;border-color:#c5ede3;color:#087b6d;box-shadow:0 0 0 4px rgba(13,158,139,.055)}
.ssh-secured-overview{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(180px,.55fr) minmax(200px,.58fr);gap:14px;padding:18px 24px}.ssh-secured-mode{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:15px;min-height:110px;padding:16px 18px;border:1px solid #e1e9ef;border-radius:16px;background:linear-gradient(145deg,#f8fbfd,#fff)}.ssh-secured-mode-visual{position:relative;width:60px;height:60px;display:grid;place-items:center}.ssh-secured-shield{position:relative;z-index:2;width:44px;height:44px;display:grid;place-items:center;border:1px solid #d9e5eb;border-radius:14px;background:#fff;color:#70869a;box-shadow:0 6px 16px rgba(24,48,70,.06)}.ssh-secured-orbit{position:absolute;inset:0;border:1px dashed #cddce5;border-radius:50%;opacity:.8}.ssh-secured-mode.secured{border-color:#c9eae3;background:linear-gradient(145deg,#edfbf7,#fff)}.ssh-secured-mode.secured .ssh-secured-shield{color:#078e7e;border-color:#c7e9e2;background:#f4fffc;box-shadow:0 7px 18px rgba(12,155,136,.09)}.ssh-secured-mode.secured .ssh-secured-orbit{border-color:#77cfc0;animation:sshSecureOrbit 9s linear infinite}@keyframes sshSecureOrbit{to{transform:rotate(360deg)}}.ssh-secured-mode small{display:block;margin-bottom:4px;color:#8495a6;font-size:8.5px;font-weight:900;letter-spacing:.09em}.ssh-secured-mode strong{display:block;color:#163047;font-size:15px;font-weight:850}.ssh-secured-mode p{margin:5px 0 0;color:#72879a;font-size:10.5px;line-height:1.5}
.ssh-secured-port{display:grid;align-content:center;gap:7px;min-height:110px;padding:14px 15px;border:1px solid #e1e9ef;border-radius:16px;background:#fff}.ssh-secured-port>span{font-size:9px;font-weight:850;color:#8091a2;text-transform:uppercase;letter-spacing:.065em}.ssh-secured-port>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;height:44px;border:1px solid #dce6ed;border-radius:11px;background:#f9fbfc;overflow:hidden}.ssh-secured-port b{display:grid;place-items:center;height:100%;padding:0 11px;border-right:1px solid #e3ebf0;color:#6f8497;font-size:9px}.ssh-secured-port input{width:100%;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:0 12px!important;font-size:14px!important;font-weight:800;color:#183048}.ssh-secured-port small{font-size:9px;line-height:1.35;color:#8a99a8}.ssh-secured-mode-actions{display:grid;align-content:center;gap:9px}.ssh-secured-mode-actions .btn{width:100%;min-height:46px;border-radius:12px;font-size:11.5px;font-weight:850}
.ssh-trust-zone{margin:0 24px 22px;padding:18px;border:1px solid #e2eaf0;border-radius:17px;background:linear-gradient(180deg,#fbfdff,#f8fbfc)}.ssh-trust-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.ssh-trust-head h4{margin:2px 0 4px;color:#142b42;font-size:16px;font-weight:850;letter-spacing:-.015em}.ssh-trust-head p{margin:0;max-width:700px;color:#74889b;font-size:10.5px;line-height:1.48}.ssh-trust-count{display:inline-flex;align-items:center;justify-content:center;min-width:76px;height:30px;padding:0 10px;border:1px solid #dce6ec;border-radius:999px;background:#fff;color:#5f7589;font-size:9.5px;font-weight:850}
.ssh-detected-source{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:15px;padding:14px 15px;border:1px solid #dce8ed;border-radius:14px;background:#fff}.ssh-detected-source>div{display:grid;gap:2px;min-width:0}.ssh-detected-source span{font-size:8.5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:#8999a8}.ssh-detected-source strong{font-size:18px;color:#142b42;overflow:hidden;text-overflow:ellipsis}.ssh-detected-source small{font-size:9.5px;color:#8495a5}.ssh-detected-source .btn{min-width:140px;min-height:42px;border-radius:11px}
.ssh-add-source{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(370px,1.45fr) auto;gap:12px;align-items:end;margin-top:12px}.ssh-source-entry{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:end}.ssh-source-entry label{display:grid;gap:6px}.ssh-source-entry label>span,.ssh-grant-duration>span{font-size:9px;font-weight:850;color:#8192a3;text-transform:uppercase;letter-spacing:.055em}.ssh-source-entry input{height:44px!important;border:1px solid #dce6ed!important;border-radius:11px!important;background:#fff!important;padding:0 12px!important;font-size:12.5px!important;font-weight:720!important;color:#173049!important;box-shadow:none!important}.ssh-add-another{width:44px;height:44px;display:grid;place-items:center;border:1px solid #cde5e0;border-radius:11px;background:#edf9f6;color:#078c7d;cursor:pointer;transition:.16s ease}.ssh-add-another:hover{background:#e1f6f1;transform:translateY(-1px)}.ssh-grant-duration{display:grid;gap:6px}.ssh-grant-duration-pills{display:grid;grid-template-columns:repeat(6,minmax(54px,1fr));gap:6px}.ssh-grant-duration-pills button{min-height:44px;padding:0 8px;border:1px solid #dce6ed;border-radius:10px;background:#fff;color:#526a80;font-size:9.5px;font-weight:820;cursor:pointer;transition:.15s ease}.ssh-grant-duration-pills button:hover{border-color:#a9dcd3;color:#087e70}.ssh-grant-duration-pills button.active{border-color:#55beaD;background:#e9faf6;color:#087b6d;box-shadow:0 0 0 3px rgba(12,158,139,.055)}.ssh-add-custom{min-width:142px;min-height:44px;border-radius:11px!important}.ssh-duration-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.ssh-trusted-list{display:grid;gap:8px;margin-top:14px}.ssh-trusted-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:58px;padding:10px 11px;border:1px solid #e0e8ee;border-radius:12px;background:#fff}.ssh-trusted-dot{width:8px;height:8px;border-radius:50%;background:#11aa95;box-shadow:0 0 0 4px rgba(17,170,149,.09)}.ssh-trusted-address{display:grid;gap:2px;min-width:0}.ssh-trusted-address strong{font-size:12.5px;color:#183148;overflow:hidden;text-overflow:ellipsis}.ssh-trusted-address small{font-size:9.5px;color:#8092a3}.ssh-trusted-badge{display:inline-flex;align-items:center;justify-content:center;height:27px;padding:0 9px;border-radius:999px;border:1px solid #d8e6e2;background:#effaf7;color:#0b806f;font-size:8.5px;font-weight:850;text-transform:uppercase}.ssh-secured-card.is-open .ssh-trusted-badge{border-color:#e0e6eb;background:#f3f5f7;color:#758596}.ssh-trusted-item .btn{min-height:34px!important}.ssh-trusted-empty{display:flex;align-items:center;gap:11px;min-height:62px;padding:12px 14px;border:1px dashed #d7e2e9;border-radius:12px;background:rgba(255,255,255,.62)}.ssh-trusted-empty-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#eef7f5;color:#0c9585;font-size:19px}.ssh-trusted-empty>div{display:grid;gap:2px}.ssh-trusted-empty strong{font-size:11px;color:#3c5369}.ssh-trusted-empty small{font-size:9.5px;line-height:1.4;color:#8696a6}.ssh-trust-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:13px;padding-top:12px;border-top:1px solid #e5edf1}.ssh-trust-foot>span{font-size:9.5px;line-height:1.4;color:#7f91a2}.ssh-trust-foot .btn{flex:none}.ssh-secured-card.is-working{opacity:.9;pointer-events:none}.ssh-secured-card.is-working:after{content:"";position:absolute;inset:0;z-index:10;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.48) 45%,transparent 62%);transform:translateX(-100%);animation:sshSecuredSweep 1.15s linear infinite}@keyframes sshSecuredSweep{to{transform:translateX(100%)}}

@media(max-width:1180px){.ssh-secured-overview{grid-template-columns:minmax(0,1.3fr) minmax(170px,.55fr)}.ssh-secured-mode-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.ssh-add-source{grid-template-columns:minmax(210px,.85fr) minmax(0,1.4fr)}.ssh-add-custom{grid-column:1/-1;width:100%}.ssh-grant-duration-pills{grid-template-columns:repeat(3,minmax(70px,1fr))}}
@media(max-width:800px){.ssh-secured-card{margin:14px 12px 17px;border-radius:17px}.ssh-secured-head{padding:18px 16px 15px;gap:12px}.ssh-secured-title{gap:11px}.ssh-secured-icon{width:43px;height:43px;border-radius:13px}.ssh-secured-title h3{font-size:17px}.ssh-secured-title p{font-size:10.5px}.ssh-secured-state{min-width:68px;height:30px;padding:0 9px;font-size:8.5px}.ssh-secured-overview{grid-template-columns:1fr;padding:15px 15px 13px;gap:10px}.ssh-secured-mode{min-height:98px}.ssh-secured-mode-actions{grid-column:auto;grid-template-columns:1fr}.ssh-trust-zone{margin:0 15px 16px;padding:14px}.ssh-trust-head{display:block}.ssh-trust-count{margin-top:8px}.ssh-detected-source{grid-template-columns:1fr}.ssh-detected-source .btn{width:100%}.ssh-add-source{grid-template-columns:1fr}.ssh-add-custom{grid-column:auto}.ssh-grant-duration-pills{grid-template-columns:repeat(3,minmax(0,1fr))}.ssh-trusted-item{grid-template-columns:10px minmax(0,1fr) auto}.ssh-trusted-item .ssh-trusted-badge{grid-column:2}.ssh-trusted-item .btn{grid-column:3;grid-row:1/3}.ssh-trust-foot{align-items:flex-start;flex-direction:column}.ssh-trust-foot .btn{width:100%}}
@media(max-width:430px){.ssh-secured-title h3{font-size:16px}.ssh-secured-state{position:absolute;right:12px;top:12px}.ssh-secured-title>div{padding-right:54px}.ssh-secured-mode{grid-template-columns:52px minmax(0,1fr);padding:13px}.ssh-secured-mode-visual{width:50px;height:50px}.ssh-secured-shield{width:38px;height:38px}.ssh-detected-source strong{font-size:16px}.ssh-grant-duration-pills{grid-template-columns:repeat(2,minmax(0,1fr))}.ssh-trusted-item{grid-template-columns:10px minmax(0,1fr)}.ssh-trusted-item .ssh-trusted-badge{grid-column:2}.ssh-trusted-item .btn{grid-column:1/-1;grid-row:auto;width:100%}}

/* v1.8.5 — authentication surface rebuild */
.auth-card-v3{padding:34px 34px 30px!important;border-radius:24px!important;border:1px solid #dfe6ee!important;box-shadow:0 28px 80px rgba(15,23,42,.11),0 2px 8px rgba(15,23,42,.035)!important}
.auth-card-v3 .auth-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important;margin:0 0 28px!important;padding:5px!important;border-radius:12px!important;background:#f2f5f8!important;border:1px solid #e6ebf0!important}
.auth-card-v3 .auth-tabs a{display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px!important;border-radius:8px!important;font-size:12px!important;font-weight:750!important;letter-spacing:-.01em;color:#748292!important;text-decoration:none!important;transition:.18s ease}
.auth-card-v3 .auth-tabs a.active{background:#fff!important;color:#142033!important;box-shadow:0 2px 8px rgba(15,23,42,.07)!important}
.auth-intro{margin-bottom:24px}.auth-intro .eyebrow{margin-bottom:10px;color:#0f9f8e;font-size:10px;letter-spacing:.14em}.auth-intro h1{margin:0 0 9px!important;font-size:40px!important;line-height:1.04!important;font-weight:760!important;letter-spacing:-.05em!important;color:#0f172a!important}.auth-intro p{margin:0;color:#718096;font-size:13px;line-height:1.58;max-width:440px}
.auth-form-v3{display:grid!important;gap:18px!important;margin-top:2px}.auth-field{display:grid;gap:8px;min-width:0}.auth-field>label{display:block!important;margin:0!important;color:#334155!important;font-size:12px!important;line-height:1.2!important;font-weight:760!important;letter-spacing:-.008em}.auth-field>small{display:block;margin-top:-1px;color:#94a3b8;font-size:10px;line-height:1.45}
.auth-control{position:relative;display:flex;align-items:center;min-width:0;height:54px;border:1px solid #d8e0e8;border-radius:13px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.025),inset 0 0 0 1px rgba(255,255,255,.7);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.auth-control:focus-within{border-color:#3abfa9;background:#fff;box-shadow:0 0 0 4px rgba(18,184,159,.11),0 6px 18px rgba(15,23,42,.04)}
.auth-control-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;display:grid;place-items:center;color:#8b9aaa;pointer-events:none;z-index:2}.auth-control:focus-within .auth-control-icon{color:#0f9f8e}.auth-control-icon .ico{width:18px;height:18px}
.auth-input{display:block!important;width:100%!important;height:100%!important;min-height:52px!important;margin:0!important;padding:0 16px 0 48px!important;border:0!important;outline:0!important;border-radius:12px!important;background:transparent!important;color:#172033!important;box-shadow:none!important;font:650 14px/1.2 var(--font)!important;letter-spacing:-.01em!important;caret-color:#0f9f8e!important;appearance:none!important;-webkit-appearance:none!important}
.auth-input::placeholder{color:#a7b2bd!important;font-weight:560!important;opacity:1}.auth-code-input{font-family:var(--mono)!important;font-size:14px!important;letter-spacing:.035em!important;text-transform:uppercase}
.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus{-webkit-text-fill-color:#172033!important;-webkit-box-shadow:0 0 0 1000px #fff inset!important;box-shadow:0 0 0 1000px #fff inset!important;transition:background-color 9999s ease-out 0s!important;caret-color:#0f9f8e!important;border-radius:12px!important}
.auth-input:autofill{background:#fff!important;color:#172033!important;box-shadow:0 0 0 1000px #fff inset!important}
.remember-row-v3{display:flex!important;align-items:flex-start!important;gap:12px!important;margin:0!important;padding:14px 15px!important;border:1px solid #e1e7ed!important;border-radius:13px!important;background:#f8fafc!important;cursor:pointer;transition:.18s ease}.remember-row-v3:hover{border-color:#cbd6df!important;background:#fbfcfd!important}.remember-row-v3 input{flex:0 0 auto;width:17px!important;height:17px!important;margin:1px 0 0!important;accent-color:#0f9f8e}.remember-row-v3 strong{font-size:12px!important;color:#253244!important}.remember-row-v3 small{font-size:10.5px!important;color:#8492a3!important;line-height:1.45!important;margin-top:3px!important}
.auth-submit-v3{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:52px!important;margin-top:2px!important;border-radius:13px!important;background:linear-gradient(135deg,#0f9f8e,#0b8f83)!important;border-color:#0b8f83!important;box-shadow:0 12px 28px rgba(15,159,142,.2)!important;font-size:13px!important;font-weight:780!important;letter-spacing:-.01em!important}.auth-submit-v3:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(15,159,142,.24)!important}.auth-submit-v3 .ico{transition:transform .18s ease}.auth-submit-v3:hover .ico{transform:translateX(2px)}
.auth-trust-strip{display:flex;align-items:center;gap:8px;margin-top:20px;padding-top:18px;border-top:1px solid #e8edf2;color:#8795a5;font-size:10.5px;line-height:1.4}.auth-trust-strip .ico{flex:0 0 auto;color:#0f9f8e}.auth-card-v3 .alert{margin:0 0 18px;border-radius:12px;padding:12px 14px;font-size:11px;line-height:1.45}
@media(max-width:760px){.auth-card-v3{padding:25px 22px 24px!important;border-radius:20px!important}.auth-intro{margin-bottom:21px}.auth-intro h1{font-size:32px!important}.auth-intro p{font-size:12px}.auth-control{height:52px}.auth-card-v3 .auth-tabs{margin-bottom:23px!important}.auth-card-v3 .auth-tabs a{font-size:11px!important;min-height:38px}.auth-submit-v3{min-height:50px!important}}
@media(max-width:420px){.auth-card-v3{padding:21px 17px 22px!important}.auth-intro h1{font-size:29px!important}.auth-control-icon{left:14px}.auth-input{padding-left:44px!important;font-size:13px!important}.auth-code-input{font-size:12.5px!important;letter-spacing:.025em!important}.remember-row-v3{padding:13px!important}}

/* v2.0.0 — shared/global security policy */
.global-policy-note{grid-column:2 / -1;margin-top:6px;font-size:9.5px;line-height:1.4;color:#75899b}
.global-security-policy .callout{margin-bottom:16px}
.global-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.global-policy-module{border:1px solid #dfe8ee;border-radius:14px;background:#fbfdff;overflow:hidden}
.global-policy-module>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:13px 15px;cursor:pointer;list-style:none}
.global-policy-module>summary::-webkit-details-marker{display:none}.global-policy-module>summary>div{display:grid;gap:3px;min-width:0}.global-policy-module>summary strong{font-size:12px;color:#1a3248}.global-policy-module>summary small{font-size:9.5px;line-height:1.35;color:#8193a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-policy-module>summary>span{display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 9px;border-radius:999px;background:#eaf9f5;color:#087f70;font-size:8.5px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.global-policy-module[open]>summary{border-bottom:1px solid #e6edf2;background:#fff}.global-policy-module .protection-config-grid{padding:14px 15px 16px}
@media(max-width:900px){.global-policy-grid{grid-template-columns:1fr}.global-policy-note{grid-column:2 / -1}}
@media(max-width:800px){.global-policy-note{grid-column:2 / 3;font-size:9px}.global-policy-module>summary{min-height:62px;padding:12px 13px}}

/* ================================================================
   v2.0.11 — PTR-enriched peers + scoped rule builder
   ================================================================ */
.connections-panel-head{align-items:flex-end!important}
.connections-panel-head .section-kicker{margin-bottom:3px!important}
.connections-panel-head .meta{display:inline-flex!important;align-items:center!important;min-height:28px!important;padding:0 9px!important;border:1px solid #e0e9ef!important;border-radius:999px!important;background:#f8fbfc!important;color:#728497!important}
.connection-search{position:relative!important}.connection-search input{min-width:260px!important}
.peer-address-enriched{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
.peer-identity{display:grid!important;gap:2px!important;min-width:0!important;max-width:100%!important}
.peer-host{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#13283c!important;font-size:12.25px!important;font-weight:800!important;letter-spacing:-.01em!important}
.peer-host-ip{font-size:11.75px!important;letter-spacing:0!important}
.peer-ip{display:block!important;color:#7890a3!important;font-size:9.25px!important;white-space:nowrap!important}
.peer-ptr-state{display:block!important;color:#9aa8b5!important;font-size:8.75px!important;font-weight:650!important;white-space:nowrap!important}
.connection-all-host{font-size:12.25px!important;font-weight:820!important;color:#12253a!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.connection-all-ip{font-size:9.25px!important;color:#71869a!important}
.connections-fullwidth .peers-table th:nth-child(1){width:29%!important}.connections-fullwidth .peers-table th:nth-child(2){width:17%!important}.connections-fullwidth .peers-table th:nth-child(3){width:9%!important}.connections-fullwidth .peers-table th:nth-child(4){width:13%!important}.connections-fullwidth .peers-table th:nth-child(5){width:32%!important}

.client-policy-panel{overflow:hidden!important;border-color:#dbe5ea!important}
.rule-panel-head{padding:17px 20px!important;background:linear-gradient(135deg,#fbfdfd 0%,#f6fbfa 100%)!important;border-bottom:1px solid #e5ecef!important}
.rule-panel-head>div{min-width:0!important}.rule-panel-head h2{margin:2px 0 3px!important}.rule-panel-head .meta{display:block!important;color:#718491!important;font-size:9px!important}
.rule-scope-strip{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:13px 16px 3px!important;padding:11px 13px!important;border:1px solid #d8ede7!important;border-radius:12px!important;background:#f4fbf9!important;color:#315e53!important}
.rule-scope-strip>span{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;flex:none!important;border-radius:9px!important;background:#e0f5ef!important;color:#168a6e!important}
.rule-scope-strip strong{display:block!important;font-size:10.5px!important;color:#214f45!important}.rule-scope-strip small{display:block!important;margin-top:3px!important;color:#68877f!important;font-size:9px!important;line-height:1.45!important}
.client-rules-table .badge.active{text-transform:uppercase!important}.client-rules-table .badge.danger{text-transform:uppercase!important}

.client-rule-builder{width:min(760px,calc(100vw - 34px))!important;max-width:760px!important;border-radius:20px!important;overflow:hidden!important}
.client-rule-builder .panel-head{padding:18px 20px!important;background:linear-gradient(135deg,#f8fcfb,#f7faff)!important;border-bottom:1px solid #e2e9ee!important}
.client-rule-builder .panel-body{padding:18px 20px 20px!important}
.rule-builder-scope{display:flex!important;gap:11px!important;align-items:flex-start!important;padding:12px 13px!important;border-radius:13px!important;border:1px solid #cfe9e1!important;background:linear-gradient(135deg,#f2fbf8,#f8fdfc)!important;margin-bottom:15px!important}
.rule-builder-scope-icon{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;flex:none!important;border-radius:10px!important;background:#dcf5ed!important;color:#0e8d6d!important}
.rule-builder-scope strong{display:block!important;color:#214b41!important;font-size:11px!important}.rule-builder-scope small{display:block!important;margin-top:3px!important;color:#65837b!important;font-size:9.25px!important;line-height:1.5!important}
.rule-builder-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.rule-field{display:grid!important;gap:6px!important;margin:0!important;padding:12px!important;border:1px solid #e2e9ed!important;border-radius:13px!important;background:#fbfcfd!important}
.rule-field>span{font-size:8.5px!important;text-transform:uppercase!important;letter-spacing:.075em!important;font-weight:850!important;color:#657b89!important}
.rule-field input,.rule-field select{margin:0!important;background:#fff!important;border-color:#d7e1e6!important;min-height:40px!important}
.rule-field small{color:#8b9aa5!important;font-size:8.5px!important;line-height:1.4!important}
.rule-field-wide{grid-column:1/-1!important}
.rule-preview{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:3px 13px!important;margin-top:14px!important;padding:13px 14px!important;border:1px solid #f1d6d9!important;border-radius:13px!important;background:#fff8f9!important}
.rule-preview>span{grid-row:1/3!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;height:27px!important;padding:0 9px!important;border-radius:999px!important;background:#fbe4e7!important;color:#b93546!important;font-size:8px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.rule-preview strong{font-size:10.5px!important;color:#722d38!important}.rule-preview small{font-size:9px!important;color:#98707a!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.rule-preview.is-allow{border-color:#cfe9df!important;background:#f4fbf8!important}.rule-preview.is-allow>span{background:#dcf4eb!important;color:#168467!important}.rule-preview.is-allow strong{color:#245b4d!important}.rule-preview.is-allow small{color:#64867c!important}

@media(max-width:760px){
  .connections-panel-head{align-items:flex-start!important}.connections-panel-head .meta{margin-top:5px!important}.connection-search input{min-width:0!important}
  .rule-builder-grid{grid-template-columns:1fr!important}.rule-field-wide{grid-column:auto!important}.rule-preview{grid-template-columns:1fr!important}.rule-preview>span{grid-row:auto!important;width:max-content!important}.rule-preview small{white-space:normal!important}
  .rule-panel-head{align-items:flex-start!important;gap:12px!important}.rule-scope-strip{margin:10px!important}
}

/* v2.0.13 Country Access */
.geo-admin-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}.geo-admin-kpis article{background:linear-gradient(180deg,#fff,#fafcfd);border:1px solid #dfe6ea;border-radius:16px;padding:16px 18px;box-shadow:0 10px 28px rgba(20,35,45,.045)}.geo-admin-kpis span,.geo-admin-kpis small{display:block;color:#81909a;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.geo-admin-kpis strong{display:block;margin:7px 0 5px;font-size:22px;letter-spacing:-.04em;color:#1c2a32}.geo-admin-kpis small{text-transform:none;letter-spacing:0;font-size:9px}.geo-admin-panel .panel-head{gap:18px}.geo-search input{min-width:230px}.geo-country-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:16px}.geo-admin-country{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #e4e9ec;border-radius:13px;background:#fff;cursor:pointer;transition:.16s;min-width:0}.geo-admin-country:hover{border-color:#cad5da;box-shadow:0 7px 18px rgba(30,45,55,.05)}.geo-admin-country.is-deployed{background:#f4fbf8;border-color:#cbe8de}.geo-admin-country input{width:15px;height:15px;margin:0;accent-color:#1ca67c}.geo-flag{font-size:21px;line-height:1}.geo-admin-country-copy{min-width:0;flex:1}.geo-admin-country-copy strong,.geo-admin-country-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-admin-country-copy strong{font-size:10px;color:#26363f}.geo-admin-country-copy small{font-size:8px;color:#8a979f;margin-top:3px}.geo-deploy-state{font-size:8px;font-weight:850;color:#6d7c84;text-transform:uppercase;letter-spacing:.07em}.is-deployed .geo-deploy-state{color:#218d6c}.geo-admin-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-top:1px solid #edf0f2;color:#77868f;font-size:9px}.geo-deployed-row{display:flex;gap:8px;flex-wrap:wrap;padding:15px}.geo-deployed-chip{display:flex;align-items:center;gap:7px;border:1px solid #dfe6e9;background:#fff;border-radius:999px;padding:8px 10px;font-size:9px;cursor:pointer}.geo-deployed-chip input{margin:0}.geo-deployed-chip strong{font-size:9px}.geo-deployed-chip small{color:#85939c}
.geo-client-panel{margin-top:16px;overflow:hidden;background:linear-gradient(120deg,#0e171d 0%,#14262d 55%,#102028 100%);border-color:#20353e;color:#fff}.geo-client-main{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(360px,1.5fr) auto;align-items:center;gap:18px;padding:16px 18px}.geo-client-title{display:flex;align-items:center;gap:12px;min-width:0}.geo-client-title h2{margin:1px 0 3px;color:#fff;font-size:16px}.geo-client-title>div:last-child>span{font-size:8px;color:#8fa4ae}.geo-client-title .section-kicker{color:#58d9b2}.geo-orbit{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(63,222,177,.16),rgba(56,139,255,.13));border:1px solid rgba(116,213,185,.2);color:#67dfbd;box-shadow:inset 0 0 24px rgba(69,210,170,.05)}.geo-live-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;min-width:0}.geo-live-country{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:11px;padding:9px 9px 10px;min-width:0}.geo-live-flag{font-size:18px}.geo-live-copy{display:block;min-width:0;margin-top:5px}.geo-live-copy strong,.geo-live-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-live-copy strong{font-size:9px;color:#eef7f7}.geo-live-copy small{font-size:7px;color:#839aa4;margin-top:2px}.geo-live-bar{display:block;height:2px;background:rgba(255,255,255,.07);border-radius:999px;margin-top:7px;overflow:hidden}.geo-live-bar i{display:block;height:100%;background:linear-gradient(90deg,#36d2a4,#69aafa);border-radius:inherit;transition:width .45s ease}.geo-empty-mini{grid-column:1/-1;color:#8fa3ad;font-size:9px;padding:12px 4px}.geo-client-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end}.geo-block-count{white-space:nowrap;font-size:8px;color:#8da3ad;text-transform:uppercase;letter-spacing:.08em}.geo-block-count b{color:#fff;font-size:13px;margin-right:3px}.geo-country-modal{max-width:780px}.geo-modal-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#83919a;font-size:9px}.geo-modal-tools .connection-search{max-width:360px;flex:1}.geo-country-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:58vh;overflow:auto;padding-right:3px}.geo-country-row{display:flex;align-items:center;gap:10px;width:100%;border:1px solid #e4e9ec;background:#fff;border-radius:13px;padding:11px;text-align:left;cursor:pointer;transition:.15s;color:var(--ink)}.geo-country-row:hover{border-color:#cbd5da;transform:translateY(-1px)}.geo-country-row.is-blocked{border-color:#efb2ad;background:#fff8f7;box-shadow:inset 3px 0 0 #df665d}.geo-country-row.is-saving{opacity:.55;pointer-events:none}.geo-country-row:disabled{opacity:.5;cursor:not-allowed}.geo-country-flag{font-size:25px;line-height:1}.geo-country-copy{min-width:0;flex:1}.geo-country-copy strong,.geo-country-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-country-copy strong{font-size:10px}.geo-country-copy small{font-size:8px;color:#89969e;margin-top:4px}.geo-country-toggle{display:flex;align-items:center;gap:6px;font-size:8px;color:#74838c;text-transform:uppercase;font-weight:850}.geo-country-toggle i{width:29px;height:17px;border-radius:999px;background:#dce3e6;position:relative;transition:.16s}.geo-country-toggle i:after{content:"";position:absolute;width:11px;height:11px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:.16s}.geo-country-row.is-blocked .geo-country-toggle{color:#c45149}.geo-country-row.is-blocked .geo-country-toggle i{background:#df665d}.geo-country-row.is-blocked .geo-country-toggle i:after{transform:translateX(12px)}.geo-country-empty{grid-column:1/-1;padding:32px;border:1px dashed #dbe3e7;border-radius:14px;text-align:center;color:#7f8d95}.geo-country-empty strong,.geo-country-empty span{display:block}.geo-country-empty span{margin-top:5px;font-size:9px}.peer-country{display:block;margin-top:3px;color:#82939d;font-size:7px;font-weight:750;letter-spacing:.02em}
@media(max-width:1100px){.geo-country-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.geo-client-main{grid-template-columns:1fr}.geo-client-actions{justify-content:flex-start}.geo-live-strip{grid-template-columns:repeat(5,minmax(110px,1fr));overflow:auto;padding-bottom:2px}}
@media(max-width:760px){.geo-admin-kpis{grid-template-columns:1fr}.geo-country-admin-grid{grid-template-columns:1fr 1fr}.geo-country-list{grid-template-columns:1fr}.geo-live-strip{grid-template-columns:repeat(5,140px)}.geo-admin-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.geo-country-admin-grid{grid-template-columns:1fr}.geo-client-main{padding:14px}.geo-client-title>div:last-child>span{display:block}.geo-country-modal .panel-body{padding:12px}}

/* v2.0.14 — compact country UX + reliable flag visuals */
.country-flag-visual{width:28px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;overflow:hidden;background:#eef2f4;box-shadow:0 0 0 1px rgba(18,31,38,.08);flex:0 0 auto;vertical-align:middle}.country-flag-visual img{width:100%;height:100%;display:block;object-fit:cover}.country-flag-code{font-size:8px;font-weight:900;letter-spacing:.05em;color:#52636d}.country-flag-visual.is-fallback{background:#eef2f4}
.geo-admin-panel-head{gap:18px;align-items:flex-end}.geo-admin-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.geo-admin-toolbar .geo-search{min-width:220px}.geo-selection-summary{display:flex;align-items:center;gap:18px;min-height:42px;padding:9px 16px;border-top:1px solid #edf1f3;border-bottom:1px solid #edf1f3;background:linear-gradient(90deg,#fbfcfd,#f6f9fa);font-size:9px;color:#73828b}.geo-selection-summary b{font-size:12px;color:#253640;margin-right:3px}.geo-selection-hint{margin-left:auto;color:#91a0a8}.geo-country-admin-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:12px}.geo-admin-country{min-height:56px;border-radius:12px;padding:8px 9px;gap:9px;background:#fff}.geo-admin-country:hover{border-color:#bfcbd1;box-shadow:0 5px 18px rgba(25,47,58,.06)}.geo-admin-country input{flex:0 0 auto}.geo-admin-flag{width:27px;height:19px;border-radius:4px}.geo-admin-country-copy strong{font-size:9.5px}.geo-admin-country-copy small{font-size:7.5px}.geo-deploy-state{font-size:7.5px}.geo-admin-footer{position:sticky;bottom:0;z-index:3;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);box-shadow:0 -7px 18px rgba(29,49,59,.04)}.geo-deployed-row{gap:7px}.geo-deployed-chip{border-radius:11px;padding:7px 9px}.geo-deployed-chip>span:last-child{display:flex;flex-direction:column;min-width:0}.geo-deployed-chip strong{font-size:8.5px}.geo-deployed-chip small{font-size:7px}.geo-chip-flag{width:23px;height:16px;border-radius:4px}

.geo-country-widget{margin-top:14px;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:14px;padding:10px 12px;border:1px solid #dde5e9;background:linear-gradient(120deg,#ffffff 0%,#fbfcfd 58%,#f6faf9 100%);border-radius:15px;box-shadow:0 8px 28px rgba(23,44,54,.045)}.geo-widget-head{display:flex;align-items:center;gap:9px;min-width:0}.geo-widget-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#ecf8f4;color:#16876a;box-shadow:inset 0 0 0 1px #d7eee7}.geo-widget-title{display:flex;flex-direction:column;gap:2px;white-space:nowrap}.geo-widget-title>span{font-size:10px;font-weight:850;color:#24353e}.geo-widget-title small{font-size:8px;color:#84929b}.geo-live-rail{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.geo-live-chip{height:39px;min-width:0;flex:1 1 0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:1fr 3px;column-gap:7px;align-items:center;padding:6px 8px 5px;border:1px solid #e4e9ec;background:#fff;border-radius:10px}.geo-live-chip .country-flag-visual{width:25px;height:18px;grid-row:1}.geo-live-chip-copy{min-width:0;grid-row:1}.geo-live-chip-copy strong,.geo-live-chip-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-live-chip-copy strong{font-size:8.5px;color:#2b3a42}.geo-live-chip-copy small{font-size:7px;color:#7c8b94;margin-top:1px}.geo-live-pulse{grid-column:1/-1;height:2px;border-radius:999px;background:#edf1f3;overflow:hidden}.geo-live-pulse i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#29b78e,#5c9eff);transition:width .35s ease}.geo-empty-mini{font-size:8px;color:#87969e;padding:4px}.geo-widget-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.geo-block-pill{display:flex;align-items:baseline;gap:4px;border:1px solid #e4e9eb;background:#fff;border-radius:999px;padding:6px 9px;white-space:nowrap}.geo-block-pill b{font-size:11px;color:#24353e}.geo-block-pill span{font-size:7px;color:#8a979f;text-transform:uppercase;letter-spacing:.06em}

.geo-country-manager{max-width:900px;border-radius:18px;overflow:hidden}.geo-manager-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px 14px;border-bottom:1px solid #edf1f3;background:linear-gradient(120deg,#fff,#f9fbfc)}.geo-manager-head h3{margin:2px 0 3px}.geo-manager-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) auto auto;align-items:center;gap:10px;margin-bottom:12px}.geo-manager-filters{display:flex;align-items:center;padding:3px;border-radius:10px;background:#f1f4f6;border:1px solid #e6ebee}.geo-filter{border:0;background:transparent;padding:7px 9px;border-radius:7px;font-size:8px;font-weight:800;color:#74838c;cursor:pointer}.geo-filter.is-active{background:#fff;color:#24343d;box-shadow:0 2px 7px rgba(28,45,55,.08)}.geo-available-count{font-size:8px;color:#819098;white-space:nowrap}.geo-country-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:60vh;overflow:auto;padding:2px}.geo-country-row{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border-radius:12px;padding:8px 9px}.geo-country-row:hover{transform:none;box-shadow:0 4px 16px rgba(29,48,57,.055)}.geo-country-row.is-blocked{background:#fff7f6;border-color:#edc2bd;box-shadow:inset 3px 0 0 #d95f56}.geo-country-flag-img{width:29px;height:20px;border-radius:5px}.geo-country-copy strong{font-size:9px}.geo-country-copy small{font-size:7px;margin-top:3px}.geo-country-toggle{gap:5px;font-size:7px}.geo-country-toggle i{width:27px;height:16px}.geo-country-toggle i:after{width:10px;height:10px}.geo-country-row.is-blocked .geo-country-toggle i:after{transform:translateX(11px)}

@media(max-width:1300px){.geo-country-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.geo-country-list{grid-template-columns:repeat(2,minmax(0,1fr))}.geo-country-widget{grid-template-columns:auto minmax(220px,1fr) auto}.geo-live-chip:nth-child(n+4){display:none}}
@media(max-width:980px){.geo-country-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.geo-admin-panel-head{align-items:flex-start;flex-direction:column}.geo-admin-toolbar{width:100%;justify-content:flex-start}.geo-admin-toolbar .geo-search{flex:1}.geo-country-widget{grid-template-columns:auto 1fr}.geo-live-rail{grid-column:1/-1;order:3}.geo-widget-actions{grid-column:2;grid-row:1}.geo-live-chip{min-width:135px}.geo-live-rail{overflow-x:auto;padding-bottom:2px}.geo-live-chip:nth-child(n){display:grid;flex:0 0 145px}}
@media(max-width:700px){.geo-country-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geo-selection-summary{gap:9px;flex-wrap:wrap}.geo-selection-hint{width:100%;margin-left:0}.geo-manager-toolbar{grid-template-columns:1fr}.geo-manager-filters{justify-content:stretch}.geo-filter{flex:1}.geo-available-count{display:none}.geo-country-list{grid-template-columns:1fr}.geo-country-widget{grid-template-columns:1fr auto;padding:9px 10px}.geo-widget-head{min-width:0}.geo-widget-title small{max-width:160px;overflow:hidden;text-overflow:ellipsis}.geo-widget-actions{grid-column:2;grid-row:1}.geo-live-rail{grid-column:1/-1}.geo-block-pill span{display:none}}
@media(max-width:480px){.geo-country-admin-grid{grid-template-columns:1fr}.geo-admin-toolbar{display:grid;grid-template-columns:1fr 1fr 1fr}.geo-admin-toolbar .geo-search{grid-column:1/-1;min-width:0}.geo-country-widget{border-radius:12px}.geo-widget-icon{width:29px;height:29px}.geo-live-chip{flex-basis:130px}.geo-country-manager .panel-body{padding:10px}.geo-country-row{min-height:54px}.geo-country-toggle b{display:none}}
.geo-admin-country.is-unavailable{opacity:.5;background:#f8fafb;cursor:not-allowed}.geo-selection-hint.is-warning{color:#a7631c;font-weight:750}


/* v2.0.15 — local flags, compact premium country picker */
.country-flag-visual{background:#f4f6f7;box-shadow:0 0 0 1px rgba(18,31,38,.10),0 2px 6px rgba(18,31,38,.06)}
.country-flag-visual img{object-fit:contain;background:transparent}
.geo-country-widget{border-color:#dfe7ea;background:linear-gradient(115deg,#ffffff 0%,#fbfdfd 52%,#f4faf8 100%);box-shadow:0 10px 32px rgba(25,45,55,.055);padding:9px 11px}
.geo-widget-icon{background:linear-gradient(145deg,#e7f7f2,#f2fbf8);box-shadow:inset 0 0 0 1px #d4eee5,0 4px 12px rgba(25,136,105,.08)}
.geo-live-chip{height:38px;border-color:#e4ebee;box-shadow:0 2px 7px rgba(29,48,57,.035);transition:border-color .15s,transform .15s,box-shadow .15s}
.geo-live-chip:hover{border-color:#c9d6dc;transform:translateY(-1px);box-shadow:0 5px 14px rgba(29,48,57,.06)}
.geo-live-chip .country-flag-visual{width:27px;height:19px}
.geo-country-manager{max-width:980px}
.geo-manager-head{background:linear-gradient(120deg,#fff 0%,#fbfdfd 55%,#f5faf8 100%)}
.geo-manager-toolbar{position:sticky;top:0;z-index:4;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);padding:3px 0 7px}
.geo-alpha-nav{display:flex;align-items:center;gap:3px;overflow-x:auto;padding:2px 1px 9px;scrollbar-width:none}.geo-alpha-nav::-webkit-scrollbar{display:none}
.geo-alpha-nav button{flex:0 0 25px;height:25px;border:1px solid #e5ebee;background:#fff;border-radius:7px;font-size:7px;font-weight:850;color:#718089;cursor:pointer;transition:.15s}.geo-alpha-nav button:hover{background:#eef8f5;border-color:#c9e7dc;color:#16795f;transform:translateY(-1px)}
.geo-country-list{align-items:start}
.geo-list-section-label{grid-column:1/-1;display:flex;align-items:baseline;gap:7px;padding:4px 3px 1px;color:#2d3d45}.geo-list-section-label span{font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.geo-list-section-label small{font-size:7px;color:#8b989f}
.geo-country-row{position:relative;border:1px solid #e5ebee;background:linear-gradient(135deg,#fff,#fcfdfd);box-shadow:0 2px 8px rgba(30,49,59,.025)}
.geo-country-row .country-flag-visual{width:31px;height:22px;border-radius:6px}
.geo-country-row:hover{border-color:#c8d6dc;box-shadow:0 7px 20px rgba(29,48,57,.065)}
.geo-country-row.is-blocked{background:linear-gradient(135deg,#fff7f6,#fffdfd);border-color:#eec3bd}
.geo-focus-pulse{animation:geoFocusPulse .85s ease both}@keyframes geoFocusPulse{0%{box-shadow:0 0 0 0 rgba(29,163,126,.30)}45%{box-shadow:0 0 0 7px rgba(29,163,126,.08);border-color:#70c9ae}100%{box-shadow:0 2px 8px rgba(30,49,59,.025)}}
.geo-admin-country .country-flag-visual{width:30px;height:21px}
.geo-deployed-chip .country-flag-visual{width:25px;height:18px}
@media(max-width:700px){.geo-alpha-nav{margin-right:-2px}.geo-alpha-nav button{flex-basis:28px;height:27px}.geo-country-manager{border-radius:16px}.geo-country-list{max-height:58vh}.geo-list-section-label{padding-top:6px}.geo-country-row .country-flag-visual{width:30px;height:21px}}

.peer-country{display:inline-flex!important;align-items:center;gap:4px}.peer-country .country-flag-visual{width:18px;height:13px;border-radius:3px}.peer-country>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}


/* v2.0.16 — compact deployed-country selection */
.geo-deployed-panel{overflow:hidden}
.geo-deployed-head{align-items:center;gap:14px}
.geo-deployed-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.geo-deployed-count{display:inline-flex;align-items:baseline;gap:4px;min-height:30px;padding:6px 9px;border:1px solid #e4eaee;border-radius:9px;background:#f8fafb;color:#7d8a93;font-size:8px;font-weight:760;white-space:nowrap}
.geo-deployed-count b{font-size:10px;color:#263942}
.geo-deployed-row{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:7px!important;padding:13px 15px!important}
.geo-deployed-chip{position:relative;display:grid!important;grid-template-columns:16px 28px minmax(0,1fr)!important;align-items:center!important;gap:8px!important;min-height:52px;padding:8px 9px!important;border:1px solid #e1e8ec!important;border-radius:11px!important;background:linear-gradient(180deg,#fff,#fcfdfd)!important;box-shadow:0 2px 8px rgba(25,43,53,.025);cursor:pointer;transition:.15s ease;margin:0!important}
.geo-deployed-chip:hover{border-color:#c8d5db!important;box-shadow:0 6px 16px rgba(25,43,53,.055);transform:translateY(-1px)}
.geo-deployed-chip:has(.geo-deployed-check:checked){border-color:#99d7c6!important;background:linear-gradient(180deg,#f5fcfa,#fbfffd)!important;box-shadow:inset 0 0 0 1px rgba(24,158,122,.07),0 5px 15px rgba(22,125,98,.05)}
.geo-deployed-check{appearance:auto!important;-webkit-appearance:checkbox!important;display:block!important;position:static!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;margin:0!important;padding:0!important;border:0!important;border-radius:4px!important;background:transparent!important;box-shadow:none!important;accent-color:#139a78!important;flex:0 0 16px!important}
.geo-deployed-flag-wrap{display:grid;place-items:center;width:28px;height:22px}
.geo-deployed-chip .country-flag-visual,.geo-deployed-chip .geo-chip-flag{width:26px!important;height:18px!important;border-radius:4px!important}
.geo-deployed-copy{display:flex!important;flex-direction:column!important;min-width:0!important;gap:2px}
.geo-deployed-copy strong{display:block;font-size:9px!important;line-height:1.15;color:#263943;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.geo-deployed-copy small{display:block;font-size:7.5px!important;line-height:1.15;color:#89969e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.geo-deployed-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 15px;border-top:1px solid #edf1f3;background:#fbfcfd;color:#7b8992;font-size:8.5px}
.geo-deployed-footer .btn{min-width:132px}
.geo-deployed-footer .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:980px){.geo-deployed-head{align-items:flex-start;flex-direction:column}.geo-deployed-toolbar{width:100%;justify-content:flex-start}.geo-deployed-row{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
@media(max-width:640px){.geo-deployed-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px!important}.geo-deployed-chip{grid-template-columns:16px 26px minmax(0,1fr)!important;min-height:50px;padding:7px!important}.geo-deployed-footer{align-items:stretch;flex-direction:column}.geo-deployed-footer .btn{width:100%}}
@media(max-width:420px){.geo-deployed-row{grid-template-columns:1fr}.geo-deployed-toolbar{display:grid;grid-template-columns:1fr 1fr}.geo-deployed-count{grid-column:1/-1}}

/* v2.0.17 · background country deployment */
.geo-job-card{margin:0 0 16px;padding:14px 15px 12px;border:1px solid #dce6ea;border-radius:16px;background:linear-gradient(115deg,#fff 0%,#f9fcfd 55%,#f3faf7 100%);box-shadow:0 10px 30px rgba(24,46,57,.055)}
.geo-job-card[hidden]{display:none!important}.geo-job-top{display:flex;align-items:center;gap:11px}.geo-job-icon{width:35px;height:35px;flex:0 0 35px;border-radius:11px;display:grid;place-items:center;background:#eaf7f3;color:#16896b;box-shadow:inset 0 0 0 1px #d3ece4}.geo-job-copy{min-width:0;flex:1}.geo-job-eyebrow{font-size:7.5px;font-weight:850;letter-spacing:.12em;color:#8a989f}.geo-job-title-row{display:flex;align-items:center;gap:8px;margin:2px 0 2px}.geo-job-title-row strong{font-size:12px;color:#24353e}.geo-job-copy>span{display:block;font-size:8.5px;color:#788891;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-job-status{font-size:7.5px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;padding:4px 7px;border-radius:999px;background:#eef3f5;color:#65757e}.geo-job-card[data-status=running] .geo-job-status,.geo-job-card[data-status=queued] .geo-job-status{background:#eaf6ff;color:#2575a7}.geo-job-card[data-status=completed] .geo-job-status{background:#e9f8f2;color:#168662}.geo-job-card[data-status=failed] .geo-job-status{background:#fff0f0;color:#c43d3d}.geo-job-card[data-status=cancelling] .geo-job-status,.geo-job-card[data-status=cancelled] .geo-job-status{background:#fff5e8;color:#af6e17}.geo-job-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.geo-job-actions form{margin:0}.geo-job-progress{height:7px;margin-top:11px;border-radius:999px;background:#eaf0f2;overflow:hidden;box-shadow:inset 0 1px 2px rgba(35,52,61,.06)}.geo-job-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22a77e,#57a4f5);transition:width .3s ease;box-shadow:0 0 14px rgba(42,166,132,.25)}.geo-job-card[data-status=running] .geo-job-progress i{position:relative}.geo-job-card[data-status=running] .geo-job-progress i:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 15%,rgba(255,255,255,.45) 50%,transparent 85%);animation:geoJobSweep 1.4s linear infinite}@keyframes geoJobSweep{from{transform:translateX(-100%)}to{transform:translateX(100%)}}.geo-job-meta{display:flex;align-items:center;gap:16px;margin-top:8px;font-size:8px;color:#819099;min-width:0}.geo-job-meta b{font-size:9px;color:#2c3b43}.geo-job-current{margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34%}
@media(max-width:760px){.geo-job-top{align-items:flex-start;flex-wrap:wrap}.geo-job-actions{width:100%;justify-content:flex-start;padding-left:46px}.geo-job-meta{gap:8px;flex-wrap:wrap}.geo-job-current{width:100%;max-width:none;margin-left:0}.geo-job-copy>span{white-space:normal}}

/* v2.0.18 · Smart FastTrack administration */
.smart-fasttrack-panel{overflow:hidden}
.smart-ft-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:22px;align-items:stretch}
.smart-ft-copy{min-width:0;padding:2px 0}
.smart-ft-copy h3{margin:6px 0 8px;font-size:20px;letter-spacing:-.02em}
.smart-ft-copy p{margin:0;color:var(--muted);line-height:1.65;max-width:920px}
.compact-callout{margin-top:14px;padding:12px 14px;font-size:13px;line-height:1.55}
.smart-ft-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start}
.smart-ft-kpis>div{min-width:0;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));border-radius:15px;padding:14px 13px}
.smart-ft-kpis span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.055em;margin-bottom:7px}
.smart-ft-kpis strong{font-size:25px;line-height:1;font-variant-numeric:tabular-nums}
.smart-ft-reasons{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.smart-ft-reasons span{display:inline-flex;align-items:center;min-height:29px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.025);font-size:12px;color:var(--muted)}
.smart-ft-actions{justify-content:flex-end;gap:9px;margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}
.smart-ft-actions form{margin:0}
@media(max-width:860px){.smart-ft-grid{grid-template-columns:1fr}.smart-ft-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.smart-ft-kpis{grid-template-columns:1fr}.smart-ft-kpis>div{display:flex;align-items:center;justify-content:space-between;padding:11px 13px}.smart-ft-kpis span{margin:0}.smart-ft-kpis strong{font-size:20px}.smart-ft-actions{justify-content:stretch}.smart-ft-actions form,.smart-ft-actions .btn{width:100%}}

/* v2.0.19: persistent Geo catalog destructive action stays visually separate from normal runtime cleanup. */
.geo-purge-all{display:flex;justify-content:flex-end;align-items:center;padding:10px 15px 13px;border-top:1px solid #edf1f3;background:linear-gradient(180deg,#fff,#fcfdfd)}
.geo-purge-all form{margin:0}.geo-purge-all .btn{opacity:.88}
@media(max-width:640px){.geo-purge-all{justify-content:stretch}.geo-purge-all form,.geo-purge-all .btn{width:100%}}


/* v2.0.26 — clearer Country Access + high-visibility live peer IPs */
.geo-country-widget-v26{margin-top:18px!important;display:grid!important;grid-template-columns:minmax(300px,.95fr) minmax(420px,1.55fr) auto!important;gap:18px!important;padding:18px 19px!important;border:1px solid #dbe6ea!important;border-radius:20px!important;background:linear-gradient(125deg,#ffffff 0%,#f9fcfc 48%,#f2faf7 100%)!important;box-shadow:0 14px 40px rgba(17,39,49,.07)!important;position:relative;overflow:hidden}
.geo-country-widget-v26:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#19b98e,#3e8ff7)}
.geo-country-widget-v26 .geo-widget-head{align-items:flex-start!important;gap:12px!important}.geo-country-widget-v26 .geo-widget-icon{width:42px!important;height:42px!important;border-radius:13px!important;flex:0 0 auto;background:linear-gradient(145deg,#ddf8ef,#edf7ff)!important;color:#128a70!important;box-shadow:inset 0 0 0 1px #cdebe2,0 7px 18px rgba(18,138,112,.09)!important}
.geo-country-widget-v26 .geo-widget-title{white-space:normal!important;gap:2px!important}.geo-country-widget-v26 .geo-widget-title>span{font-size:9px!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#11816c!important}.geo-country-widget-v26 .geo-widget-title>strong{display:block;font-size:15px;line-height:1.25;color:#172b36;letter-spacing:-.015em}.geo-country-widget-v26 .geo-widget-title small{display:block;max-width:420px;font-size:8.5px!important;line-height:1.45;color:#75858e!important;margin-top:3px}.geo-country-widget-v26 .geo-widget-title small b{color:#b94842}
.geo-live-area{min-width:0;border-left:1px solid #e7edef;padding-left:17px}.geo-live-label{display:flex;align-items:center;justify-content:space-between;margin:0 1px 7px}.geo-live-label span{font-size:7.5px;font-weight:850;letter-spacing:.1em;color:#73848d}.geo-live-label small{font-size:7px;color:#9aa7ad}.geo-country-widget-v26 .geo-live-rail{gap:7px!important}.geo-country-widget-v26 .geo-live-chip{height:46px!important;border-radius:12px!important;padding:7px 9px 6px!important;border-color:#e1e9ec!important;box-shadow:0 3px 12px rgba(24,45,54,.035)}
.geo-country-widget-v26 .geo-widget-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:8px!important;min-width:178px}.geo-country-widget-v26 .geo-block-pill{justify-content:center!important;border-radius:11px!important;padding:8px 10px!important;background:#fff!important}.geo-country-widget-v26 .geo-block-pill b{font-size:15px!important;color:#bf4e47!important}.geo-country-widget-v26 .geo-block-pill span{font-size:7.5px!important}.geo-manage-btn{justify-content:center!important;min-height:36px!important;white-space:nowrap!important}
.geo-country-manager{box-shadow:0 28px 90px rgba(12,29,39,.22)!important}.geo-manager-head{padding:20px 21px 17px!important;background:linear-gradient(125deg,#fff,#f5faf9)!important}.geo-manager-head h3{font-size:19px!important;color:#172a35}.geo-manager-head .meta{display:block;max-width:620px;line-height:1.45!important}.geo-manager-head .meta b{color:#b84d46}
.geo-country-row{border-width:1px!important;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,background .12s ease!important}.geo-country-row:not(.is-blocked) .geo-country-toggle{color:#a3413c!important}.geo-country-row:not(.is-blocked) .geo-country-toggle i{background:#f4d7d4!important}.geo-country-row:not(.is-blocked) .geo-country-toggle b{background:#fff0ef;border:1px solid #f0cbc7;color:#ad433d}.geo-country-row.is-blocked .geo-country-toggle{color:#27735f!important}.geo-country-row.is-blocked .geo-country-toggle i{background:#50b996!important}.geo-country-row.is-blocked .geo-country-toggle b{background:#eaf8f3;border:1px solid #ccebdd;color:#26775f}.geo-country-toggle b{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:51px;padding:4px 6px;border-radius:7px;font-size:7px!important;letter-spacing:.045em}.geo-country-row:not(.is-blocked):hover{border-color:#e4aaa5!important;background:#fffafa!important}.geo-country-row.is-blocked:hover{border-color:#a8d8c8!important;background:#f6fcfa!important}

[data-connections-ip] .peer-address-enriched{gap:10px!important}.peer-identity{display:flex;flex-direction:column;min-width:0;gap:2px}.peer-ip-primary{display:block!important;font-size:12px!important;line-height:1.15!important;color:#122433!important;font-weight:850!important;letter-spacing:-.015em!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.peer-host-secondary{display:block!important;font-size:7.5px!important;color:#82919a!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}.peer-country{margin-top:2px!important}.peer-rank{background:#eaf0f4!important;color:#657784!important;font-weight:800!important}.peer-rate-line strong{font-size:11px!important;color:#142735!important}.peer-session-count{font-size:11px!important;color:#263d4a!important}.connections-summary{font-weight:800!important;color:#4a6876!important}.connection-all-ip-primary{display:block;font-size:12px;color:#132836}.connection-all-host-secondary{display:block;font-size:8px;color:#7d8d96;margin:2px 0 3px}

@media(max-width:1100px){.geo-country-widget-v26{grid-template-columns:1fr auto!important}.geo-country-widget-v26 .geo-live-area{grid-column:1/-1;border-left:0;border-top:1px solid #e7edef;padding:12px 0 0!important;order:3}.geo-country-widget-v26 .geo-widget-actions{grid-column:2;grid-row:1;min-width:170px}}
@media(max-width:700px){.geo-country-widget-v26{grid-template-columns:1fr!important;padding:15px!important}.geo-country-widget-v26 .geo-widget-actions{grid-column:1!important;grid-row:auto!important;display:grid!important;grid-template-columns:auto 1fr!important;min-width:0}.geo-country-widget-v26 .geo-live-area{grid-column:1!important}.geo-country-widget-v26 .geo-widget-title>strong{font-size:14px}.peer-ip-primary{font-size:11px!important}}


/* v2.0.27 — large Country Access controls + cleaner bulk protection action */
.protection-toolbar-single{justify-content:space-between!important}.protection-toolbar-single>div:first-child span{font-weight:800}.protection-toolbar-single>div:first-child small{max-width:520px}
.geo-country-manager{max-width:920px!important}.geo-country-list{gap:11px!important}.geo-country-row{min-height:70px!important;padding:13px 15px!important;border-radius:15px!important;gap:13px!important}.geo-country-row .country-flag-visual{width:38px!important;height:27px!important;border-radius:7px!important}.geo-country-copy strong{font-size:14px!important;line-height:1.2!important;font-weight:800!important}.geo-country-copy small{font-size:11px!important;line-height:1.3!important;margin-top:5px!important}.geo-country-toggle{gap:9px!important}.geo-country-toggle i{width:38px!important;height:22px!important}.geo-country-toggle i:after{width:16px!important;height:16px!important;left:3px!important;top:3px!important}.geo-country-row.is-blocked .geo-country-toggle i:after{transform:translateX(16px)!important}.geo-country-toggle b{min-width:78px!important;min-height:32px!important;padding:7px 12px!important;border-radius:9px!important;font-size:11px!important;letter-spacing:.03em!important}.geo-list-section-label span{font-size:11px!important}.geo-list-section-label small{font-size:10px!important}.geo-manager-head h3{font-size:22px!important}.geo-manager-head .meta{font-size:12px!important;line-height:1.55!important}.geo-manager-toolbar input{font-size:13px!important;min-height:40px!important}.geo-filter{font-size:11px!important;min-height:34px!important;padding:7px 11px!important}.geo-available-count{font-size:10px!important}.geo-alpha-nav button{font-size:10px!important;min-width:27px!important;height:29px!important}.geo-country-widget-v26 .geo-widget-title>span{font-size:11px!important}.geo-country-widget-v26 .geo-widget-title>strong{font-size:18px!important}.geo-country-widget-v26 .geo-widget-title small{font-size:11px!important;line-height:1.5!important}.geo-country-widget-v26 .geo-block-pill span{font-size:10px!important}.geo-country-widget-v26 .geo-block-pill b{font-size:20px!important}.geo-manage-btn{min-height:42px!important;font-size:12px!important}.geo-live-label span{font-size:9px!important}.geo-live-label small{font-size:9px!important}
[data-connections-ip] .peer-ip-primary{font-size:15px!important;line-height:1.15!important;font-weight:900!important}.peer-host-secondary{font-size:10px!important}.peer-rate-line strong{font-size:13px!important}.peer-session-count{font-size:13px!important}.connection-all-ip-primary{font-size:15px!important}.connection-all-host-secondary{font-size:10px!important}
@media(max-width:700px){.geo-country-row{min-height:66px!important;padding:12px!important}.geo-country-copy strong{font-size:13px!important}.geo-country-toggle b{min-width:70px!important}.geo-country-manager{max-width:96vw!important}}

/* v2.0.28 — Country Access full country names */
.geo-country-manager{
  width:min(1180px,calc(100vw - 40px))!important;
  max-width:1180px!important;
}
.geo-country-list{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.geo-country-row{
  grid-template-columns:auto minmax(135px,1fr) auto!important;
  min-height:76px!important;
}
.geo-country-copy{
  min-width:0!important;
  overflow:visible!important;
}
.geo-country-copy strong{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  max-width:none!important;
}
.geo-country-copy small{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(max-width:1080px){
  .geo-country-manager{width:min(900px,calc(100vw - 32px))!important;max-width:900px!important}
  .geo-country-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .geo-country-manager{width:96vw!important;max-width:96vw!important}
  .geo-country-list{grid-template-columns:1fr!important}
  .geo-country-row{grid-template-columns:auto minmax(0,1fr) auto!important;min-height:72px!important}
  .geo-country-copy strong{font-size:13px!important}
}

/* v2.0.29: Access Rules updates in-place after live source blocks and rule changes. */
.client-policy-panel{transition:box-shadow .18s ease,border-color .18s ease}.client-policy-panel.rules-live-pulse{border-color:rgba(53,217,173,.42);box-shadow:0 0 0 3px rgba(53,217,173,.08),0 18px 46px rgba(7,15,20,.08)}

/* v2.0.30 — responsive Active Connections + non-blocking queued protection switches */
/* A router mutation may quiet telemetry, but it must never make every protection
   switch on the page untouchable. Only a truly disabled (paused/suspended) switch
   is non-interactive. */
.router-mutating [data-toggle]{pointer-events:auto!important}
.protection-row.is-changing .toggle{opacity:1!important;cursor:pointer!important;filter:none!important}
.protection-row.is-changing .toggle:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(13,165,143,.22);border-radius:999px;animation:esnSwitchCommit .72s ease-in-out infinite alternate;pointer-events:none}
@keyframes esnSwitchCommit{from{opacity:.18;transform:scale(.96)}to{opacity:.8;transform:scale(1)}}
.toggle:disabled{pointer-events:none!important;cursor:not-allowed!important}

/* Country identity in the expanded Active Connections view. */
.connection-all-country{display:inline-flex;align-items:center;gap:7px;margin:5px 0 4px;padding:4px 8px 4px 5px;border:1px solid #e1e8ed;border-radius:999px;background:#f8fbfc;color:#5f7480;font-size:10.5px;font-weight:760;width:max-content;max-width:100%}
.connection-all-country .country-flag-visual{width:24px;height:17px;border-radius:4px}
.connection-all-country>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.connection-all-meta{display:block;color:#81909a;font-size:10px;margin-top:3px}

@media(max-width:760px){
  /* Protection rows: make the switch a deliberate touch target, without hiding
     the copy or freezing it while the previous RouterOS write is in flight. */
  .protection-row{grid-template-columns:42px minmax(0,1fr) 54px!important;gap:11px!important;min-height:88px!important;padding:13px 1px!important}
  .protection-row .toggle{width:50px!important;height:29px!important;justify-self:end!important;touch-action:manipulation!important}
  .protection-row .toggle:before{width:21px!important;height:21px!important;top:4px!important;left:4px!important}
  .protection-row .toggle.on:before{transform:translateX(21px)!important}
  .protection-row-copy h3{font-size:14px!important;line-height:1.25!important}
  .protection-row-copy p{font-size:10.5px!important;line-height:1.42!important;margin-top:4px!important}

  /* Active Connections becomes a real mobile card instead of a compressed table. */
  .connections-fullwidth{border-radius:15px!important;overflow:hidden!important}
  .connections-fullwidth .connections-toolbar{padding:11px 12px!important;gap:9px!important}
  .connections-fullwidth .connections-toolbar-right{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important}
  .connections-fullwidth .connections-summary{font-size:10.5px!important}
  .connections-fullwidth .peers-table tbody{display:grid!important;gap:11px!important;padding:11px!important}
  .connections-fullwidth .peers-table tr{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(86px,.42fr)!important;gap:10px 12px!important;padding:14px!important;border:1px solid #dde6ed!important;border-radius:15px!important;background:linear-gradient(180deg,#fff,#fbfdfe)!important;box-shadow:0 5px 16px rgba(24,45,70,.05)!important;overflow:hidden!important}
  .connections-fullwidth .peers-table td{display:block!important;width:100%!important;height:auto!important;padding:0!important;border:0!important;background:transparent!important;min-width:0!important}
  .connections-fullwidth .peers-table td:first-child{grid-column:1/-1!important;grid-row:1!important;padding-bottom:9px!important;border-bottom:1px solid #edf2f5!important}
  .connections-fullwidth .peers-table td:nth-child(2){grid-column:1!important;grid-row:2!important;align-self:center!important}
  .connections-fullwidth .peers-table td:nth-child(3){grid-column:2!important;grid-row:2!important;align-self:center!important;text-align:right!important}
  .connections-fullwidth .peers-table td:nth-child(4){grid-column:1/-1!important;grid-row:3!important}
  .connections-fullwidth .peers-table td:last-child{grid-column:1/-1!important;grid-row:4!important;margin-top:2px!important}

  .connections-fullwidth .peer-address-enriched{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:start!important;gap:11px!important;width:100%!important}
  .connections-fullwidth .peer-rank{width:34px!important;height:34px!important;border-radius:10px!important;font-size:11px!important;margin-top:1px!important}
  .connections-fullwidth .peer-identity{width:100%!important;min-width:0!important;gap:3px!important}
  .connections-fullwidth .peer-ip-primary{font-size:16px!important;line-height:1.22!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;color:#10253a!important}
  .connections-fullwidth .peer-host-secondary{font-size:10.5px!important;line-height:1.3!important;max-width:none!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;color:#7b8d9c!important}
  .connections-fullwidth .peer-country{display:inline-flex!important;align-items:center!important;gap:7px!important;width:max-content!important;max-width:100%!important;margin-top:6px!important;padding:4px 8px 4px 5px!important;border:1px solid #e0e8ed!important;border-radius:999px!important;background:#f7fafc!important;color:#4e6675!important;font-size:10.5px!important;font-weight:780!important;line-height:1.2!important}
  .connections-fullwidth .peer-country .country-flag-visual{display:inline-flex!important;width:28px!important;height:20px!important;min-width:28px!important;border-radius:5px!important;opacity:1!important;visibility:visible!important}
  .connections-fullwidth .peer-country>span:last-child{display:block!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  .connections-fullwidth .peer-rate-line{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
  .connections-fullwidth .peer-rate-line strong{font-size:14px!important}
  .connections-fullwidth .peer-meter{height:5px!important;width:100%!important;margin-top:7px!important;border-radius:999px!important}
  .connections-fullwidth .peer-session-count{display:block!important;font-size:18px!important;line-height:1!important;text-align:right!important;color:#173047!important}
  .connections-fullwidth .peers-table td:nth-child(3):after{content:"sessions";display:block;margin-top:4px;color:#8b9aa5;font-size:8.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:760}
  .connections-fullwidth .protocol-chip{font-size:10.5px!important;padding:5px 8px!important;margin-right:4px!important}
  .connections-fullwidth .peer-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;margin-top:2px!important}
  .connections-fullwidth .peer-actions .btn{width:100%!important;min-height:43px!important;font-size:11.5px!important;border-radius:10px!important;padding:0 9px!important}

  /* Expanded connection modal follows the same mobile hierarchy and shows GEO. */
  .connections-modal-card{width:min(96vw,620px)!important;max-height:90dvh!important}
  .connection-all-row{grid-template-columns:1fr!important;gap:9px!important;padding:13px!important}
  .connection-all-main{align-items:flex-start!important}
  .connection-all-ip-primary{font-size:15.5px!important;overflow-wrap:anywhere!important}
  .connection-all-host-secondary{font-size:10.5px!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .connection-all-country{font-size:10.5px!important;margin-top:6px!important}
  .connection-all-country .country-flag-visual{width:28px!important;height:20px!important}
  .connection-all-rate{justify-self:start!important;text-align:left!important}
  .connection-all-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  .connection-all-actions .btn{min-height:42px!important}
}

@media(max-width:430px){
  .connections-fullwidth .peers-table tbody{padding:8px!important;gap:9px!important}
  .connections-fullwidth .peers-table tr{padding:12px!important;grid-template-columns:minmax(0,1fr) 76px!important;gap:9px!important}
  .connections-fullwidth .peer-ip-primary{font-size:15px!important}
  .connections-fullwidth .peer-country{font-size:10px!important}
  .connections-fullwidth .peer-country .country-flag-visual{width:27px!important;height:19px!important;min-width:27px!important}
  .connections-fullwidth .peer-actions{grid-template-columns:1fr 1fr!important}
  .connections-fullwidth .peer-actions .btn{min-height:42px!important;font-size:11px!important}
  .connection-all-actions{grid-template-columns:1fr 1fr!important}
}
