.nexel-app-frame{--app-scale:1;width:calc(360px * var(--app-scale));height:calc(700px * var(--app-scale));border-radius:calc(14px * var(--app-scale));flex-shrink:0;position:relative;box-shadow:0 0 0 1px #272d33,0 20px 60px #0000004d}.nexel-app{--bg:#080a0b;--surface:#111416;--surface-secondary:#171b1e;--surface-elevated:#171b1e;--text:#f4f5f3;--text-muted:#8e969e;--accent:#c8ff00;--accent-text:#c8ff00;--divider:#ffffff14;--border:#272d33;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--ease:cubic-bezier(.22,.8,.24,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--motion-fast:.2s;--motion-surface:.32s;--motion-state:.36s;--motion-theme:.42s;--motion-press:.11s;--motion-activation:.65s;--motion-connection-sweep:.8s;--motion-deactivation:.35s;isolation:isolate;background:var(--bg);width:360px;height:700px;color:var(--text);font-synthesis:none;text-align:left;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;transform:scale(var(--app-scale));transform-origin:0 0;border-radius:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:normal;position:absolute;top:0;left:0;overflow:hidden}.nexel-app p{margin:0}.nexel-app .app-drag-area{height:32px}.nexel-app .app-content{flex-direction:column;height:calc(100% - 32px);display:flex}.nexel-app .app-header{flex-shrink:0;justify-content:center;align-items:center;height:72px;padding:0 26px;display:flex;position:relative}.nexel-app .app-brand{color:var(--text);align-items:center;gap:10px;display:flex}.nexel-app .app-brand svg{width:27px;height:27px}.nexel-app .app-brand-name{letter-spacing:.19em;font-size:15px;font-weight:650}.nexel-app .app-icon-button{width:44px;height:44px;color:var(--text-muted);border-radius:12px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:14px}.nexel-app .app-hide-button{left:18px}.nexel-app .app-settings-button{right:14px}.nexel-app .page-container{flex:1;min-height:0;position:relative;overflow:hidden}.nexel-app .vpn-screen{flex-direction:column;justify-content:space-between;gap:12px;height:100%;padding:6px 23px 0;display:flex}.nexel-app .vpn-instrument{flex-shrink:0;width:100%}.nexel-app .nexel-technical-label{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:550;line-height:14px}.nexel-app .main-server{width:100%;margin:0 0 16px}.nexel-app .location-label{margin:0 0 11px;display:block}.nexel-app .location-card{background:var(--surface);width:100%;min-height:82px;color:var(--text);border-radius:14px;grid-template-columns:40px minmax(0,1fr) auto 16px;align-items:center;gap:11px;padding:15px 14px;display:grid}.nexel-app .location-flag{background:var(--surface-elevated);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;overflow:hidden}.nexel-app .location-flag>svg{width:100%;height:100%;display:block}.nexel-app .location-description{flex-direction:column;gap:5px;min-width:0;display:flex}.nexel-app .location-description strong{color:var(--text);letter-spacing:-.15px;font-size:15px;font-weight:550;line-height:1.3}.nexel-app .location-description>span{color:var(--text-muted);font-size:12px;line-height:1.35}.nexel-app .location-ping{white-space:nowrap;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;transition:color var(--motion-theme) var(--ease-in-out);font-size:11px;font-weight:450}.nexel-app .location-ping small{font:inherit;font-size:10px}.nexel-app .location-ping.ping-good{color:var(--accent-text)}.nexel-app .location-chevron{color:var(--text-muted)}.nexel-app .nexel-connection-control{background:var(--surface);border:1px solid var(--border);width:100%;min-height:100px;transition:transform var(--motion-surface) var(--ease), border-color var(--motion-surface), background var(--motion-surface);border-radius:20px;justify-content:space-between;align-items:center;padding:20px;display:flex;position:relative;overflow:hidden}.nexel-app .nexel-control-copy,.nexel-app .nexel-control-power{pointer-events:none}.nexel-app .nexel-control-text{pointer-events:none;min-width:0;position:relative}.nexel-app .nexel-control-echo{pointer-events:none;animation:nexel-copy-out var(--motion-state) var(--ease) both;position:absolute;inset:0}.nexel-app .nexel-control-text.is-changing .nexel-control-copy{animation:nexel-copy-in var(--motion-state) var(--ease) both}.nexel-app .nexel-control-state{align-items:center;gap:9px;display:flex}.nexel-app .nexel-status-dot{background:var(--text-muted);opacity:.58;width:5px;height:5px;transition:background var(--motion-surface), opacity var(--motion-surface);border-radius:50%;flex-shrink:0}.nexel-app .connection-status,.nexel-app .nexel-control-title{color:var(--text);letter-spacing:-.45px;white-space:nowrap;transition:color var(--motion-theme) var(--ease-in-out);margin:0;font-size:21px;font-weight:550;line-height:28px}.nexel-app .nexel-control-copy p,.nexel-app .nexel-control-echo p{color:var(--text-muted);margin:7px 0 0 14px;font-size:11px;line-height:18px}.nexel-app .nexel-control-power{color:var(--text-muted);transition:color var(--motion-surface) var(--ease), transform var(--motion-surface) var(--ease);margin-left:18px}.nexel-app .nexel-connection-control[data-state=connecting] .nexel-control-power{transform:scale(.92)}.nexel-app .nexel-control-echo[data-state=connected] .nexel-control-title{color:var(--accent-text)}.nexel-app .nexel-control-echo[data-state=connected] .nexel-status-dot{background:var(--accent);opacity:1}.nexel-app .connection-action{border-radius:inherit;opacity:1;cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.nexel-app .connection-action:disabled{cursor:wait;opacity:1}.nexel-app .nexel-connection-control:has(.connection-action:focus-visible){outline:2px solid var(--accent);outline-offset:4px}.nexel-app .connection-action:focus-visible{outline:none}.nexel-app .nexel-connection-control:has(.connection-action:active){transition-duration:var(--motion-press);transform:scale(.98)}.nexel-app .nexel-connection-control[data-state=connected]{border-color:color-mix(in srgb, var(--accent) 26%, var(--border))}.nexel-app .nexel-connection-control[data-state=connected] .connection-status{color:var(--accent-text)}.nexel-app .nexel-connection-control[data-state=connected] .nexel-status-dot{background:var(--accent);opacity:1}.nexel-app .nexel-connection-control[data-state=connected] .nexel-control-power{color:var(--accent-text)}.nexel-app .nexel-activation-sweep{background:var(--accent);opacity:0;pointer-events:none;transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0}.nexel-app .nexel-connection-control[data-state=connected] .nexel-activation-sweep{opacity:.7;animation:nexel-edge-on var(--motion-activation) cubic-bezier(.2,.8,.2,1)}.nexel-app .nexel-connection-control[data-state=connecting] .nexel-activation-sweep{opacity:1;width:34%;animation:nexel-connection-sweep var(--motion-connection-sweep) linear infinite}.nexel-app .nexel-connection-control[data-state=disconnecting] .nexel-activation-sweep{opacity:.25;transition:transform var(--motion-deactivation) ease, opacity var(--motion-deactivation);transform:scaleX(0)}@media (hover:hover){.nexel-app .nexel-connection-control:has(.connection-action:hover){background:var(--surface-secondary)}}.nexel-app .session-row{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;margin-top:20px;padding:0 0 18px;display:flex}.nexel-app .session-row .connection-time{color:var(--text);font-family:var(--font-mono);letter-spacing:.3px;font-variant-numeric:tabular-nums;font-size:13px;line-height:18px}.nexel-app .traffic-stats{grid-template-columns:1fr 1fr;width:100%;min-height:63px;margin-top:16px;display:grid}.nexel-app .traffic-stat{flex-direction:column;align-items:flex-start;gap:11px;min-width:0;display:flex;position:relative}.nexel-app .traffic-stat+.traffic-stat{border-left:1px solid var(--divider);padding-left:21px}.nexel-app .nexel-metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:7px;font-size:10px;font-weight:500;line-height:14px;display:inline-flex}.nexel-app .traffic-stat strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.75px;white-space:nowrap;font-size:24px;font-weight:500;line-height:29px}.nexel-app .traffic-stat strong span{color:var(--text-muted);letter-spacing:0;margin-left:7px;font-size:11px;font-weight:400}.nexel-app .nexel-globe{--globe-inset:23px;min-height:205px;max-height:360px;width:calc(100% + var(--globe-inset) * 2);margin:0 calc(var(--globe-inset) * -1);isolation:isolate;flex:1;position:relative;overflow:hidden}.nexel-app .nexel-globe:before{content:"";background:radial-gradient(circle at 34% 12%,#101314,#0a0c0d 70%);border-radius:50%;width:475.2px;height:475.2px;position:absolute;top:17px;left:calc(50% - 237.6px)}.nexel-app .nexel-globe[data-ready]:before{display:none}.nexel-app .nexel-globe-canvas,.nexel-app .nexel-globe-fallback{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.nexel-app .nexel-globe[data-renderer=canvas2d] .nexel-globe-canvas,.nexel-app .nexel-globe[data-renderer=webgl] .nexel-globe-fallback{opacity:0}.nexel-app .nexel-globe-leader{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.nexel-app .nexel-globe-leader path{fill:none;stroke:var(--accent);stroke-width:.75px;opacity:0;transition:opacity var(--motion-fast) var(--ease)}.nexel-app .nexel-globe-label{pointer-events:none;opacity:0;transition:opacity var(--motion-state) var(--ease), transform var(--motion-state) var(--ease);flex-direction:column;gap:6px;display:flex;position:absolute;top:37px;left:23px;transform:translateY(4px)}.nexel-app .nexel-globe-label[data-active=true]{opacity:1;transform:translateY(0)}.nexel-app .nexel-globe-label-city{color:var(--text);align-items:center;gap:7px;font-size:12px;font-weight:500;line-height:17px;display:flex}.nexel-app .nexel-globe-label-city>span{background:var(--accent);border-radius:50%;width:4px;height:4px}.nexel-app .nexel-globe-label code{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.6px;margin-left:11px;font-size:9px}@keyframes nexel-copy-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes nexel-copy-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes nexel-connection-sweep{0%{transform:translate(-110%)}to{transform:translate(410%)}}@keyframes nexel-edge-on{0%{transform:scaleX(0)}to{transform:scaleX(1)}}
