@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/console/hanken-grotesk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/console/jetbrains-mono.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/console/material-symbols.ttf)format("truetype")}.console-shell,.network-detail{--console-bg:#fff;--console-surface:#eff4ff;--console-high:#dee9fc;--console-tint:#e6eeff;--console-border:#d9e3f6;--console-text:#121c2a;--console-muted:#474557;--console-outline:#787589;--console-primary:#3600d0;--console-accent:#4c22ff;--console-teal:#004a43;--console-orange:#ffb158;--console-error:#ba1a1a;--console-error-bg:#ffdad6;--console-header-height:40px;--console-sidebar-width:248px;--console-chat-width:288px}.console-header,.console-sidebar{color:var(--console-text);-webkit-font-smoothing:antialiased;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px;line-height:24px}.console-header button,.console-sidebar button{text-transform:none;font-family:inherit}.console-footer{border-top:1px solid var(--console-tint);text-align:center;min-width:0;color:var(--console-muted);overflow-wrap:anywhere;padding:12px 24px;font:16px/24px Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif}.console-footer>span{color:var(--console-outline);font-size:11px;display:block}.console-header :focus-visible,.console-sidebar :focus-visible{outline:2px solid var(--console-accent);outline-offset:2px}.console-shell :is(input[type=search],[data-console-search]):focus-within{outline:2px solid var(--console-accent);outline-offset:-2px}.console-icon{letter-spacing:normal;text-transform:none;white-space:nowrap;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;flex-shrink:0;font-family:Material Symbols Outlined,sans-serif;font-size:18px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.console-header{border-bottom:1px solid color-mix(in srgb, var(--console-border) 60%, transparent);background:var(--console-bg);z-index:30;justify-content:space-between;align-items:center;height:40px;padding:0 24px;display:flex;position:sticky;top:0}.console-brand-group,.console-account{align-items:center;gap:12px;display:flex}.console-brand-group{gap:16px}.console-brand{white-space:nowrap;align-items:baseline;gap:4px;display:flex}.console-brand>span{color:var(--console-muted);font-size:16px}.console-icon-button{width:28px;height:28px;color:var(--console-outline);background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.console-icon-button:hover{background:var(--console-tint);color:var(--console-primary)}.console-account{font-size:16px;line-height:20px}.console-account-name{text-align:right;flex-direction:column;line-height:18px;display:flex}.console-account-name>span{color:var(--console-outline)}.console-theme{background:var(--console-tint);color:var(--console-accent);border:0;border-radius:999px;padding:2px 8px;font-size:16px;font-weight:600;line-height:24px}.console-avatar{color:#fff;background:var(--console-primary);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.console-body{min-width:0;display:flex}.console-sidebar-slot{flex-shrink:0;width:0}.console-sidebar-slot.is-open{width:var(--console-sidebar-width)}.console-sidebar-slot:not(.is-open){visibility:hidden;pointer-events:none}.console-sidebar{top:var(--console-header-height);width:var(--console-sidebar-width);height:calc(100dvh - var(--console-header-height));background:color-mix(in srgb, var(--console-surface) 70%, var(--console-bg));border-right:1px solid color-mix(in srgb, var(--console-border) 60%, transparent);box-shadow:none;z-index:25;margin-top:0;position:fixed;bottom:0;overflow-y:auto}.console-main{flex:1;min-width:0}.console-main-content{flex-grow:1;min-width:0}.console-main.has-chat{margin-right:var(--console-chat-width)}.console-chat-aside{top:var(--console-header-height);height:calc(100dvh - var(--console-header-height));z-index:20}.console-chat-aside[aria-hidden=true]{visibility:hidden;pointer-events:none}.console-logs-panel{z-index:15;position:fixed;bottom:0;left:0;right:0}.console-logs-panel.has-sidebar{left:var(--console-sidebar-width)}.console-logs-panel.has-chat{right:var(--console-chat-width)}.console-logs-panel[aria-hidden=true]{visibility:hidden;pointer-events:none}.console-logs-toggle{z-index:16;position:fixed;bottom:0;right:16px}.console-logs-toggle.has-chat{right:calc(var(--console-chat-width) + 16px)}.console-logs-toggle.is-open{bottom:208px}.console-nav{flex-direction:column;gap:16px;padding:0 12px 12px;display:flex}.console-nav-section>h2{color:var(--console-outline);letter-spacing:.05em;padding:0 8px 4px;font-size:16px;font-weight:600;line-height:24px}.console-nav-section>a,.console-nav-section>button{width:100%;color:var(--console-muted);border-radius:4px;align-items:center;gap:12px;margin-top:2px;padding:4px 8px;font-size:16px;line-height:24px;display:flex}.console-nav-section>a:hover,.console-nav-section>button:hover{background:var(--console-tint)}.console-nav-section>a[aria-current=page]{border-left:2px solid var(--console-accent);background:var(--console-tint);color:var(--console-accent);font-weight:600}.console-nav-section .console-icon{font-size:18px}.console-nav-unread{background:var(--console-accent);border-radius:50%;width:6px;height:6px}.console-header .console-icon-button .console-icon{font-size:20px}.console-nav-section>a:first-of-type{margin-top:0}:root[data-theme=dark] .console-shell,:root[data-theme=dark] .network-detail,:root[data-theme=night] .console-shell,:root[data-theme=night] .network-detail,:root[data-theme=black] .console-shell,:root[data-theme=black] .network-detail,:root[data-theme=business] .console-shell,:root[data-theme=business] .network-detail,:root[data-theme=luxury] .console-shell,:root[data-theme=luxury] .network-detail,:root[data-theme=forest] .console-shell,:root[data-theme=forest] .network-detail,:root[data-theme=sunset] .console-shell,:root[data-theme=sunset] .network-detail,:root[data-theme=dim] .console-shell,:root[data-theme=dim] .network-detail{--console-bg:#151923;--console-surface:#202735;--console-high:#303b50;--console-tint:#2b3450;--console-border:#3b455b;--console-text:#eef2ff;--console-muted:#c6cbd8;--console-outline:#a1a6ba;--console-primary:#865fff;--console-accent:#ad96ff;--console-teal:#75e2d4;--console-error:#ffb4ab;--console-error-bg:#5a2525}@media (max-width:767px){.console-header{padding:0 12px}.console-brand-group{gap:8px}.console-account-name{display:none}.console-account{gap:4px}.console-account>.console-icon-button{display:none}.console-sidebar-slot.is-open{width:0}.console-main.has-chat{margin-right:0}.console-logs-panel.has-sidebar{left:0}.console-logs-panel.has-chat{right:0}.console-logs-toggle.has-chat{right:16px}}.console-chat-aside{width:var(--console-chat-width)}.console-chat-aside>div{width:100%}.console-logs-panel[aria-hidden=false]{height:208px}
.network-console-shell,.network-detail{color:var(--console-text);background:var(--console-bg);-webkit-font-smoothing:antialiased;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px;line-height:24px}.network-console-shell button,.network-console-shell input,.network-console-shell select{font-family:inherit}.network-console-shell button{text-transform:none}.network-console-shell :focus-visible{outline:2px solid var(--console-accent);outline-offset:2px}.console-page{flex-direction:column;gap:12px;padding:0 24px 16px;display:flex}.console-breadcrumb{color:var(--console-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-bottom:4px;font-size:16px;display:flex}.console-card{background:var(--console-bg);border-radius:12px;min-width:0;box-shadow:0 1px 2px #0000000d}.console-overview{flex-direction:column;gap:12px;padding:12px;display:flex}.console-network-heading{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.console-network-identity{align-items:center;gap:4px;min-width:0;display:flex}.console-network-tags{flex-wrap:wrap;align-items:center;gap:4px;font-family:JetBrains Mono,monospace;display:flex}.console-network-heading h1{color:var(--console-text);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:28px}.network-detail-name>span:last-child{gap:4px}.network-detail-name button{width:18px;height:18px;min-height:0;color:var(--console-outline);background:0 0;border:0;padding:0}.network-detail-name button svg{width:18px;height:18px}.console-network-identity h1{min-width:0}.network-identity-heading{white-space:nowrap;vertical-align:middle;align-items:center;gap:4px;min-width:0;max-width:100%;display:inline-flex}.network-identity-text{align-items:baseline;gap:6px;min-width:0;max-width:min(52vw,640px);display:inline-flex}.network-identity-name,.network-identity-description{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.network-identity-name{max-width:320px}.network-identity-description{max-width:400px;color:var(--console-outline,#787589);font-weight:400}.network-identity-heading>button{flex:0 0 18px;justify-content:center;align-items:center;display:inline-flex}.network-identity-dialog{color:#121c2a;background:#fff;border:1px solid #d9e3f6;border-radius:12px;width:calc(100% - 32px);max-width:480px;max-height:calc(100dvh - 48px);padding:0;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px;line-height:18px;overflow-y:auto;box-shadow:0 20px 60px #121c2a33}.network-identity-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#121c2a66}.network-identity-dialog header{background:#eff4ff80;border-bottom:1px solid #d9e3f6;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.network-identity-dialog h2{font-size:18px;font-weight:700;line-height:24px}.network-identity-close{color:#787589;border-radius:6px;padding:4px}.network-identity-close svg{width:18px;height:18px}.network-identity-fields{flex-direction:column;gap:8px;padding:24px;display:flex}.network-identity-fields label{font-weight:600}.network-identity-fields label:not(:first-child){margin-top:8px}.network-identity-fields label>span,.network-identity-error{color:#ba1a1a}.network-identity-fields small{color:#787589;font-weight:400}.network-identity-fields input,.network-identity-fields textarea{width:100%;font:inherit;background:#eff4ff;border:1px solid #d9e3f6;border-radius:8px;padding:10px 12px}.network-identity-fields textarea{resize:vertical;min-height:76px}.network-identity-dialog footer{border-top:1px solid #d9e3f6;justify-content:flex-end;gap:8px;padding:16px 24px;display:flex}.network-identity-dialog footer button{background:#fff;border:1px solid #d9e3f6;border-radius:8px;padding:8px 16px}.network-identity-dialog footer .primary{color:#fff;background:#3600d0;border-color:#3600d0}.network-identity-dialog :focus-visible{outline-offset:2px;outline:2px solid #4c22ff}.network-identity-dialog button:disabled,.network-identity-dialog input:disabled,.network-identity-dialog textarea:disabled{opacity:.5;cursor:not-allowed}.console-tag{background:var(--console-surface);color:var(--console-muted);white-space:nowrap;border:0;border-radius:4px;padding:2px 8px;font-size:16px;line-height:24px}.console-private{background:var(--console-tint);color:var(--console-accent);border-radius:999px;font-weight:600}.console-broadcast{color:var(--console-teal)}.console-network-id{background:var(--console-surface);border-radius:8px;align-items:center;gap:4px;max-width:100%;padding:2px 10px;display:flex}.console-network-id>span{color:var(--console-outline);font-family:JetBrains Mono,monospace;font-weight:600}.console-network-id strong{color:var(--console-primary);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:16px;font-weight:600;line-height:24px}.console-network-id .console-icon-button{flex-shrink:0;width:24px;height:24px;padding:4px}.console-network-id .console-icon{font-size:16px}.console-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.console-stat{background:var(--console-surface);border-radius:8px;min-width:0;min-height:53px;padding:8px}.console-stat p{color:var(--console-outline);justify-content:space-between;align-items:center;font-size:11px;line-height:14px;display:flex}.console-stat .console-icon{font-size:15px}.console-stat>strong{margin-top:4px;font-size:12px;font-weight:600;line-height:16px;display:block}.console-stat .console-range{white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.console-online{color:var(--console-outline);align-items:baseline;gap:4px;margin-top:4px;font-size:11px;line-height:16px;display:flex}.console-online strong{color:var(--console-teal);font-size:13px}.console-configuration{overflow:hidden}.console-tabs{background:var(--console-surface);align-items:stretch;gap:4px;padding:0 12px;display:flex;overflow-x:auto}.console-tabs>button{white-space:nowrap;color:var(--console-muted);border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 12px;font-size:13px;line-height:18px;display:flex}.console-tabs>button[aria-selected=true]{color:var(--console-primary);border-color:var(--console-primary);font-weight:600}.console-count{background:var(--console-tint);border-radius:999px;padding:0 6px;font-size:11px}.console-tab-panel{padding:12px}.console-ip-summary,.console-ip-modes{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.console-ip-summary{justify-content:space-between}.console-ip-modes{gap:8px;font-size:16px}.console-ip-modes code{color:var(--console-muted);font-family:JetBrains Mono,monospace;font-size:16px}.console-label{color:var(--console-outline);font-weight:600}.console-auto-assign{background:var(--console-tint);color:var(--console-accent);font-weight:600}.console-ipv6{background:var(--console-high);color:var(--console-outline)}.console-button{white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:16px;font-weight:600;line-height:24px;display:inline-flex}.console-button-primary{background:var(--console-primary);color:#fff;box-shadow:0 1px 2px #0000000d}.console-button-primary:hover{background:var(--console-accent)}.console-button-soft{background:var(--console-tint);color:var(--console-accent)}.console-button-soft:hover{background:var(--console-high)}.console-button-danger{background:var(--console-high);color:var(--console-error);border-radius:4px}.console-pool-edit{border-radius:4px;padding:4px 8px;font-size:16px;line-height:24px}.console-pool-edit .console-icon{font-size:16px}.console-pool-usage{background:var(--console-surface);color:var(--console-muted);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:8px;font-size:16px;line-height:24px;display:flex}.console-pool-usage strong{color:var(--console-teal);white-space:nowrap}.console-settings-editor{border-top:1px solid var(--console-border);margin-top:12px;padding-top:16px}.console-member-card{padding:12px}.console-member-toolbar,.console-member-filters,.console-member-actions{align-items:center;gap:8px;display:flex}.console-member-toolbar{scrollbar-width:thin;flex-wrap:nowrap;justify-content:space-between;gap:12px;width:100%;min-width:0;margin-bottom:12px;overflow:auto hidden}.console-member-filters{flex-wrap:nowrap;flex:auto;min-width:430px}.console-member-actions{flex-wrap:nowrap;flex:none}.console-member-actions .console-button{height:32px;padding:0 10px;font-size:13px;line-height:30px}.console-member-search{flex:200px;width:200px;min-width:140px;max-width:256px;position:relative}.console-member-search>.console-icon{color:var(--console-outline);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.console-member-search input{background:var(--console-surface);width:100%;height:32px;min-height:32px;color:var(--console-text);border:0;border-radius:8px;padding:6px 12px 6px 32px;font-size:13px;line-height:18px}.console-member-search input::placeholder{color:var(--console-outline)}.console-status-select{background-color:var(--console-surface);border:0;border-radius:8px;flex:0 0 168px;width:168px;min-width:168px;max-width:100%;height:32px;min-height:32px;padding:0 32px 0 12px;font-size:13px;font-weight:500;line-height:30px}.console-hidden-toggle{color:var(--console-outline);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:6px;font-size:12px;line-height:16px;display:flex}.console-hidden-toggle input,.console-authorized-checkbox{appearance:auto;width:13px;height:13px;accent-color:var(--console-primary);border-radius:2px}.console-table-scroll{overflow-x:auto}.console-members-table{border-collapse:collapse;text-align:left;table-layout:auto;width:100%;min-width:1080px;font-size:16px}.console-members-table th{background:var(--console-surface);letter-spacing:.04em;white-space:nowrap;color:var(--console-outline);padding:4px 12px;font-size:16px;font-weight:500;line-height:24px}.console-members-table th>button{align-items:center;gap:4px;display:flex}.console-members-table tbody tr{height:40px}.console-members-table .console-member-row{cursor:pointer}.console-members-table .console-member-row:focus-visible{outline:2px solid var(--console-primary);outline-offset:-2px}.console-members-table .console-member-row>[data-column=authorized],.console-members-table .console-member-row>[data-column=action]{cursor:default}.console-member-name-actions{align-items:center;gap:4px;display:flex}.console-member-name-actions .console-name-display{min-width:0}.console-member-rename{width:16px;height:18px;color:var(--console-outline);opacity:0;flex:0 0 16px;justify-content:center;align-items:center;display:flex}.console-member-rename .console-icon{font-size:13px}.console-member-row:hover .console-member-rename,.console-member-row:focus-within .console-member-rename{opacity:1}@media (hover:none){.console-member-rename{opacity:1}}.console-members-table td{vertical-align:middle;border-bottom:1px solid color-mix(in srgb, var(--console-high) 30%, transparent);white-space:nowrap;padding:1px 12px;line-height:24px}.console-members-table [data-column=authorized]{text-align:center;width:48px;padding-left:8px;padding-right:8px}.console-members-table [data-column=name]{min-width:180px}.console-members-table [data-column=id]{color:var(--console-muted);font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600}.console-members-table [data-column=id]>span{font-size:16px}.console-members-table [data-column=physicalAddress]{color:var(--console-muted);font-family:JetBrains Mono,monospace;font-size:16px}.console-members-table th[data-column=id],.console-members-table th[data-column=physicalAddress]{color:var(--console-outline);font-family:inherit;font-size:16px;font-weight:500}.console-members-table [data-column=action]{text-align:right}.console-members-table tbody tr:hover{background:color-mix(in srgb, var(--console-surface) 40%, transparent)}.console-members-table tr[data-status=unauthorized]{background:color-mix(in srgb, var(--console-error-bg) 20%, transparent)}.console-members-table tr[data-status=unauthorized] [data-column=id],.console-members-table tr[data-status=unauthorized] .console-member-version,.console-members-table tr[data-status=unauthorized] .console-member-name>.console-icon{color:var(--console-error)}.console-members-table tr[data-status=offline]{opacity:.75}.console-member-name{align-items:center;gap:8px;min-width:160px;display:flex}.console-member-name>.console-icon{color:var(--console-muted);font-size:20px}.console-member-name input{height:18px;min-height:18px;color:var(--console-text);border-radius:2px;font-size:16px;font-weight:600;line-height:18px;display:block}.console-member-name form{line-height:18px}.console-member-name .tooltip{display:block}.console-member-version{color:var(--console-outline);font-size:16px;line-height:18px;display:block}.console-addresses{flex-direction:column;gap:4px;display:flex}.console-addresses.is-stacked{scrollbar-width:thin;max-height:36px;padding-right:14px;overflow:auto}.console-addresses.is-stacked>*{flex-shrink:0}.console-address-line{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.console-address-line>*{flex-shrink:0}.console-ip{color:var(--console-teal);background:#00645b26;border-radius:4px;padding:2px 8px;font-size:16px;font-weight:600;line-height:24px}.console-latency{color:var(--console-teal);align-items:center;gap:2px;font-size:16px;font-weight:600;display:inline-flex}.console-latency>i,.console-connection>i{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.console-latency.is-relayed{color:#895200}.console-latency.is-relayed>i{background:var(--console-orange)}.console-unassigned{background:var(--console-tint);color:var(--console-outline);border-radius:4px;padding:2px 8px;font-size:16px;font-style:italic}.console-connection{background:var(--console-tint);color:var(--console-teal);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:16px;font-weight:600;line-height:16px;display:inline-flex}.console-connection.is-relayed,.console-connection.is-controller{color:#895200}.console-connection.is-relayed>i,.console-connection.is-controller>i{background:var(--console-orange)}.console-connection.is-offline,.console-connection.is-unknown{color:var(--console-outline);background:var(--console-high);font-weight:400}.console-connection.is-unauthorized{color:var(--console-error);background:var(--console-error-bg)}.console-row-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.console-member-options,.console-authorize-button{white-space:nowrap;background:var(--console-primary);color:#fff;border:0;border-radius:4px;min-width:52px;padding:4px 10px;font-size:16px;font-weight:500;line-height:24px}.console-authorize-button{background:var(--console-teal)}.console-row-actions>.console-icon-button{width:26px;height:26px}.console-members-table tr[data-status=offline] .console-member-options{background:var(--console-tint);color:var(--console-text)}.console-table-controls{white-space:nowrap;flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.console-table-controls>div,.console-table-controls>div>div{flex-wrap:nowrap;gap:4px}.console-table-controls{border-left:1px solid var(--console-border);padding-left:10px}.console-table-controls .btn{width:24px;min-width:24px;padding:0}.console-table-controls select{padding-left:8px;padding-right:24px}.console-table-controls .btn,.console-table-controls select{height:28px;min-height:28px;padding-top:0;padding-bottom:0;font-size:11px;line-height:26px}.console-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.console-join-card,.console-danger-card{padding:12px}.console-card-title{align-items:center;gap:8px;display:flex}.console-card-title>.console-icon{color:var(--console-primary);font-size:20px}.console-card-title h2{font-size:16px;font-weight:600;line-height:24px}.console-card-title p{color:var(--console-muted);font-size:16px;line-height:24px}.console-join-command{background:var(--console-surface);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:8px;display:flex}.console-join-command code{word-break:break-all;font-family:JetBrains Mono,monospace;font-size:16px;line-height:24px}.console-join-command .console-icon-button{color:var(--console-primary)}.console-help-button{color:var(--console-primary);align-items:center;gap:4px;margin-top:12px;font-size:16px;display:flex}.console-help-button .console-icon{font-size:16px}.console-danger-card .console-card-title,.console-danger-card .console-card-title>.console-icon{color:var(--console-error)}.console-danger-card .console-card-title>span:last-child{background:var(--console-error-bg);white-space:nowrap;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:16px;line-height:24px}.console-danger-card>p{color:var(--console-muted);margin:8px 0 12px;font-size:12px;line-height:18px}.console-empty-members{text-align:center;color:var(--console-outline);padding:32px 12px}.console-empty-members>.console-icon{margin-bottom:12px;font-size:28px}.console-empty-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.console-empty-toolbar>div{gap:8px;display:flex}.console-hidden-members{border-top:1px solid var(--console-border);margin-top:12px;padding-top:12px}.console-hidden-members h3{margin-bottom:8px;font-size:13px;font-weight:600}.console-empty-results{color:var(--console-outline);text-align:center!important;padding:32px!important}.network-detail-form .join{width:100%;display:flex}.network-detail-form .join input{width:100%;min-width:0}@media (min-width:1600px){.console-members-table [data-column=name]{width:22%}}@media (max-width:1023px){.console-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.console-bottom-grid{grid-template-columns:1fr}}@media (max-width:767px){.console-page{padding:0 12px 12px}.console-ip-modes{gap:6px}.console-pool-usage{flex-direction:column;align-items:flex-start}.console-footer{padding:12px;font-size:11px}}.console-members-table .console-connection{white-space:nowrap;max-width:100%;line-height:24px}.console-members-table .console-connection>span{text-overflow:ellipsis;overflow:hidden}.console-members-table th[data-column=authorized]{white-space:nowrap;letter-spacing:0}.console-members-table [data-column=conStatus]{min-width:160px}.console-member-name .console-member-version{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.console-reject-button{color:var(--console-error);background:var(--console-high);white-space:nowrap;border:0;border-radius:4px;padding:4px 8px}.console-member-options.is-icon{width:26px;min-width:26px;color:var(--console-outline);background:0 0;padding:4px 0}.console-row-actions>[hidden]{display:none}.console-members-table:not(.is-extended){table-layout:fixed;min-width:1168px}.console-members-table:not(.is-extended) th[data-column=authorized]{width:48px}.console-members-table:not(.is-extended) th[data-column=name]{width:184px}.console-members-table:not(.is-extended) th[data-column=id]{width:120px}.console-members-table:not(.is-extended) th[data-column=ipAssignments]{width:172px}.console-members-table:not(.is-extended) th[data-column=physicalAddress]{width:256px}.console-members-table:not(.is-extended) th[data-column=conStatus]{width:200px}.console-members-table:not(.is-extended) th[data-column=action]{width:188px}.console-member-name input{width:100%;min-width:0!important}.console-member-name>div,.console-member-name form>div>div{min-width:0}.console-address-line{position:relative}.console-stat:last-child>strong{font-size:11px;font-weight:500}.console-name-display{text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:16px;font-weight:600;line-height:18px;display:block;overflow:hidden}.console-label{text-transform:uppercase}.console-members-table tr[data-status=offline] .console-ip{background:var(--console-tint);color:var(--console-outline);font-weight:400}.console-members-table tr[data-status=offline] .console-latency{color:var(--console-outline)}.network-console-shell .console-main-content,.console-page,.network-detail{min-width:0}.network-console-shell .console-main{height:auto;min-height:calc(100dvh - var(--console-header-height));grid-template-columns:minmax(0,1fr);overflow:visible}.managed-routes{--route-surface:var(--console-surface,#eff4ff);--route-border:var(--console-border,#d9e3f6);--route-bg:var(--console-bg,#fff);--route-text:var(--console-text,#121c2a);--route-muted:var(--console-muted,#6b7280);--route-accent:var(--console-accent,#4c22ff);--route-primary:var(--console-primary,#3600d0);color:var(--route-text);width:100%;min-width:0}.managed-routes-toolbar{white-space:nowrap;align-items:center;gap:12px;margin-bottom:12px;padding:2px;display:flex;overflow-x:auto}.managed-routes-toolbar h2{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.managed-routes-count{background:var(--route-surface);color:var(--route-accent);border:1px solid var(--route-border);border-radius:999px;padding:0 8px;font-size:12px;font-weight:500;line-height:22px}.managed-routes-search{flex:0 340px;min-width:180px;position:relative}.managed-routes-search input{border:1px solid var(--route-border);background:var(--route-surface);width:100%;height:32px;color:var(--route-text);border-radius:8px;padding:0 28px 0 32px;font-size:13px;line-height:30px}.managed-routes-search>.console-icon,.managed-routes-search>button{color:var(--route-muted);position:absolute;top:50%;transform:translateY(-50%)}.managed-routes-search>.console-icon{font-size:16px;left:10px}.managed-routes-search>button{display:flex;right:6px}.managed-routes-search>button .console-icon{font-size:16px}.managed-routes-search input::-webkit-search-cancel-button{display:none}.managed-routes-match,.managed-routes-edit-hint{color:var(--route-muted);font-size:13px}.managed-routes-add{flex-shrink:0;margin-left:auto}.managed-route-primary,.managed-route-secondary,.managed-route-danger{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:4px;height:32px;padding:0 12px;font-size:13px;font-weight:500;line-height:30px;display:inline-flex}.managed-route-primary{background:var(--route-primary,#3600d0);color:#fff}.managed-route-primary:hover{background:var(--route-accent,#4c22ff)}.managed-route-secondary{background:var(--route-bg,#fff);border-color:var(--route-border,#d9e3f6);color:var(--route-muted,#6b7280)}.managed-route-danger{color:#fff;background:#ba1a1a}.managed-routes button:disabled{opacity:.45;cursor:not-allowed}.managed-routes-scroll{border:1px solid var(--route-border);border-radius:8px}.managed-routes-table{text-align:left;min-width:880px;font-size:14px}.managed-routes-table th{background:var(--route-surface);height:40px;color:var(--route-muted);white-space:nowrap;padding:0 16px;font-size:12px;font-weight:700}.managed-routes-table td{border-top:1px solid var(--route-border);vertical-align:middle;height:40px;padding:3px 16px;line-height:24px}.managed-routes-table th:last-child,.managed-routes-table td:last-child{text-align:right}.managed-routes-table tbody tr:hover{background:var(--route-surface)}.managed-routes-table code,.managed-route-address{font-family:JetBrains Mono,monospace;font-size:13px}.managed-route-target{font-weight:700}.managed-route-endpoint{vertical-align:middle;white-space:nowrap;align-items:center;gap:6px;max-width:100%;display:inline-flex}.managed-route-member-name{text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.managed-route-separator{color:var(--route-muted);opacity:.6;flex-shrink:0}.managed-route-endpoint .managed-route-address{text-overflow:ellipsis;flex-shrink:0;max-width:100%;overflow:hidden}.managed-route-direct{background:var(--route-surface);color:var(--route-muted);border:1px solid var(--route-border);border-radius:4px;padding:2px 6px;font-size:12px}.managed-route-link{color:var(--route-accent);font-size:13px;font-weight:500}.managed-route-link:hover{text-decoration:underline}.managed-route-delete{color:#ba1a1a;margin-left:12px}.managed-routes-table .managed-routes-empty{text-align:center;height:80px;color:var(--route-muted)}.managed-routes-table .managed-route-draft{background:var(--route-surface)}.managed-route-draft input{border:1px solid var(--route-border,#d9e3f6);background:var(--route-bg,#fff);width:100%;height:30px;min-height:30px;color:var(--route-text,#121c2a);border-radius:6px;padding:0 6px;font-size:13px;line-height:28px}.managed-route-draft .managed-route-combobox{width:100%}.managed-route-draft .managed-route-primary,.managed-route-draft .managed-route-secondary{height:28px;padding:0 6px;font-size:12px}.managed-route-modal.modal-box{border:1px solid var(--route-border);background:var(--route-bg);width:min(620px,100vw - 32px);max-width:620px;max-height:calc(100dvh - 32px);color:var(--route-text);border-radius:16px;padding:0}.managed-route-modal-heading{border-bottom:1px solid var(--route-border);align-items:center;gap:10px;padding:16px 24px;display:flex}.managed-route-modal-heading>.console-icon{color:#ba1a1a;background:#ffdad6;border-radius:50%;padding:7px;font-size:18px}.managed-route-modal-heading h3{font-size:16px;font-weight:700}.managed-route-modal-heading p{color:var(--route-muted);font-size:12px}.managed-route-modal-body{padding:20px 24px;font-size:13px}.managed-route-details{border:1px solid var(--route-border);background:var(--route-surface);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:12px;display:grid}.managed-route-details dt{color:var(--route-muted);font-size:12px}.managed-route-details dd{overflow-wrap:anywhere;font-family:JetBrains Mono,monospace}.managed-route-scopes{margin-top:16px}.managed-route-scopes legend{margin-bottom:8px;font-weight:700}.managed-route-scopes label{border:1px solid var(--route-border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:10px;display:flex}.managed-route-scopes input{accent-color:var(--route-accent);margin-top:4px}.managed-route-scopes label.is-selected{background:var(--route-surface);border-color:var(--route-accent)}.managed-route-scopes small{color:var(--route-muted);font-size:12px;line-height:18px;display:block}.managed-route-impact{border:1px solid var(--route-border);background:var(--route-surface);overflow-wrap:anywhere;border-radius:8px;margin-top:16px;padding:12px;font-size:12px;line-height:22px}.managed-route-impact [data-testid=route-cleanup-overall]{color:var(--route-accent);font-weight:700}.managed-route-error{color:#ba1a1a;overflow-wrap:anywhere}.managed-route-modal-actions{border-top:1px solid var(--route-border);background:var(--route-surface);justify-content:flex-end;gap:12px;padding:14px 24px;display:flex}.managed-route-options{color:#121c2a;background:#fff;border-color:#d9e3f6;border-radius:8px;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif}.managed-route-options [role=option]:hover,.managed-route-options [role=option][aria-selected=true]{color:#4c22ff;background:#eff4ff}.managed-route-details>div{align-items:baseline;gap:6px;display:flex}.managed-route-details dt{flex-shrink:0}.managed-route-details dd{font-size:13px}.managed-route-impact h4{align-items:center;gap:4px;margin-bottom:8px;font-weight:600;display:flex}.managed-route-impact h4 .console-icon{color:var(--route-accent);font-size:16px}.managed-route-impact-counts{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.managed-route-impact-counts>p{background:var(--route-bg);border:1px solid var(--route-border);border-radius:4px;padding:8px}.managed-route-impact-counts>p:first-child{color:#ba1a1a}.managed-route-impact [data-result=SUCCESS]{color:var(--console-teal,#00645b)}.managed-route-impact [data-result=PARTIAL],.managed-route-impact [data-result=FAILED]{color:#ba1a1a}@media (max-width:600px){.managed-route-details,.managed-route-impact-counts{grid-template-columns:1fr}.managed-route-modal-body{padding:16px}}.console-members-table .member-physical-endpoint{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.console-shell .console-members-table [data-column=physicalAddress] .member-relay-migration-badge{color:#92400e;white-space:nowrap;background:#fef3c7;border-radius:4px;flex:none;padding:2px 6px;font-family:inherit;font-size:11px;font-weight:600;line-height:16px;display:inline-flex}
.modal-box.member-options-dialog{color:#182232;background:#fff;border:1px solid #d8e2ff;border-radius:14px;width:min(1120px,100vw - 32px);max-width:none;max-height:calc(100dvh - 96px);padding:0;overflow:hidden;box-shadow:0 24px 64px #17203338}.member-options-dialog>h3:empty{display:none}.member-options{--member-primary:#4f24ff;--member-line:#d9e3ff;flex-direction:column;height:min(824px,100dvh - 98px);font-size:13px;line-height:1.45;display:flex;position:relative}.member-options *,.member-options :before,.member-options :after{box-sizing:border-box}.member-options button,.member-options input,.member-options select{font:inherit}.member-options button{cursor:pointer;white-space:nowrap}.member-options button:disabled,.member-options input:disabled,.member-options select:disabled{cursor:not-allowed;opacity:.48}.member-options button:focus-visible,.member-options input:focus-visible,.member-options select:focus-visible{outline-offset:2px;outline:2px solid #6847ff}.member-options input:not([type=checkbox]),.member-options select{border:1px solid var(--member-line);color:#182232;background-color:#fff;border-radius:6px;width:100%;min-width:0;height:36px;min-height:36px;padding:5px 10px}.member-options input[type=checkbox]{width:16px;height:16px;accent-color:var(--member-primary);cursor:pointer;flex:none}.member-options input[type=number]{appearance:textfield}.member-options input::-webkit-inner-spin-button{appearance:none}.member-options input::placeholder{color:#8f99aa}.member-options-header{flex:none;justify-content:space-between;align-items:center;gap:12px;height:52px;padding:0 20px;display:flex}.member-options-header>div{align-items:center;gap:10px;min-width:0;display:flex}.member-options-header h2{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:700;overflow:hidden}.member-options-header .console-icon{color:var(--member-primary);font-size:22px}.member-options-header>button{padding:6px}.member-options-header>button .console-icon{color:#647084}.member-badge{color:#536078;white-space:nowrap;vertical-align:middle;background:#edf2ff;border-radius:5px;align-items:center;padding:2px 7px;font-size:11px;display:inline-flex}.member-summary{color:#788397;background:#eef3ff;flex-wrap:wrap;flex:none;align-items:center;gap:6px 16px;padding:9px 20px;font-size:11px;display:flex}.member-summary>span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.member-summary code{color:#313d53}.member-summary button{color:var(--member-primary);display:inline-flex}.member-summary .console-icon{font-size:14px}.member-summary-end{margin-left:auto}.member-options-layout{flex:1;grid-template-columns:188px minmax(0,1fr);min-height:0;display:grid}.member-options-nav{border-right:1px solid #edf1fb;flex-direction:column;padding:12px 9px;display:flex;overflow:auto}.member-options-nav nav{flex-direction:column;gap:3px;display:flex}.member-options-nav nav button{text-align:left;color:#5c6579;border-radius:6px;align-items:center;gap:9px;width:100%;height:38px;padding:0 10px;font-size:12px;display:flex}.member-options-nav nav button[aria-selected=true]{background:var(--member-primary);color:#fff;font-weight:600}.member-options-nav nav button:hover:not([aria-selected=true]){background:#f1f4ff}.member-options-nav .console-icon{font-size:17px}.member-nav-dot{margin-left:auto;font-size:8px}.member-scope{color:#858b9a;background:#f8faff;border-radius:5px;margin-top:auto;padding:10px;font-size:10px;line-height:1.6}.member-scope strong{color:#4c5569}.member-options-content{min-width:0;padding:18px;overflow-y:auto}.member-section-heading{align-items:center;gap:8px;margin-bottom:16px;display:flex}.member-section-heading h3{font-size:16px;font-weight:700}.member-section-heading>.member-muted{margin-left:auto;font-size:11px}.member-section-heading>button{margin-left:auto}.member-card{background:#f9fbff;border:1px solid #eaf0ff;border-radius:9px;margin-bottom:14px;padding:14px}.member-card h4{align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:650;display:flex}.member-card h4 small{color:#8b92a1;font-size:10px;font-weight:400}.member-card .member-section-heading{margin-bottom:12px}.member-card .member-section-heading h4{margin-bottom:0}.member-eyebrow{color:#8b92a1;margin-bottom:10px;font-size:11px}.member-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.member-info-grid>div{background:#fff;border-radius:4px;min-width:0;padding:8px}.member-info-grid dt{color:#8a92a2;margin-bottom:4px;font-size:11px}.member-info-grid dd{overflow-wrap:anywhere;font-size:12px}.member-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.member-fields-grid label{flex-direction:column;gap:7px;font-size:12px;font-weight:500;display:flex}.member-fields-grid small,.member-muted{color:#8490a4;font-size:12px;font-weight:400}.member-fields-grid small{font-size:11px}.member-fields-three{grid-template-columns:repeat(3,minmax(0,1fr))}.member-options .member-primary{background:var(--member-primary);border:1px solid var(--member-primary);color:#fff;border-radius:6px;padding:7px 12px}.member-options .member-danger{color:#d64141}.member-success-text{color:#087b64}.member-warning-text{color:#a46b13}.member-notice,.member-warning,.member-error{border-radius:7px;margin-bottom:12px;padding:10px 12px;font-size:12px}.member-notice{color:#647391;background:#eff4ff;border:1px solid #e2eaff}.member-warning{color:#91600c;background:#fff8e8;border:1px solid #f3dfa5}.member-error{color:#bd3434;background:#fff1f1;border:1px solid #f9d6d6}.member-notice button,.member-warning button,.member-error button{color:var(--member-primary);margin-left:8px;text-decoration:underline}.member-empty{color:#8993a5;text-align:center;padding:24px 12px!important}.member-switch{justify-content:space-between;align-items:center;gap:20px;padding:12px 0;display:flex}.member-switch+.member-switch{border-top:1px solid #e7edfc}.member-switch strong{font-size:13px;font-weight:600;display:block}.member-switch small{color:#8490a4;margin-top:5px;font-size:11px;display:block}.member-switch input[role=switch]{appearance:none;background:#c6cddd;border-radius:20px;width:34px;height:20px;transition:background .15s;position:relative}.member-switch input[role=switch]:checked{background:var(--member-primary)}.member-switch input[role=switch]:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;display:block;position:absolute;top:2px;left:2px}.member-switch input[role=switch]:checked:before{transform:translate(14px)}.member-limit-field{justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.member-limit-field>span{align-items:center;gap:10px;display:flex}.member-limit-field input{max-width:150px}.member-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.member-service-card{border:1px solid var(--member-line);background:#fff;border-radius:8px;flex-direction:column;min-width:0;padding:16px;display:flex}.member-service-card>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.member-service-card>header h4{align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.member-service-card input[role=switch]{appearance:none;background:#c6cddd;border-radius:20px;flex:none;width:34px;height:20px;position:relative}.member-service-card input[role=switch]:checked{background:var(--member-primary)}.member-service-card input[role=switch]:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;position:absolute;top:2px;left:2px}.member-service-card input[role=switch]:checked:before{transform:translate(14px)}.member-service-description{color:#8490a4;margin:8px 0 20px;font-size:11px}.member-service-card label{color:#718098;flex-direction:column;gap:8px;min-width:0;font-size:11px;display:flex}.member-service-card .member-service-speed>span{align-items:center;gap:8px;display:flex}.member-service-speed>span>span{font-size:13px}.member-service-card input:not([type=checkbox]){font-size:13px;background:#fff!important}.member-service-card input:not([type=checkbox]):disabled,.member-service-card fieldset:disabled input{color:#94a0b2;background:#f1f3f7!important}.member-service-fields{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:12px;display:grid}.member-service-hint{color:#8490a4;white-space:nowrap;scrollbar-width:thin;margin:10px 0 0;font-size:11px;overflow-x:auto}.member-service-independent{color:var(--member-primary);margin-top:auto;font-size:11px}.member-service-platform{color:#8490a4;margin:10px 0 0;font-size:11px}@media (max-width:760px){.member-service-grid{grid-template-columns:minmax(0,1fr)}}.member-ip-settings-scroll{margin:12px 0;overflow-x:auto}.member-ip-settings{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:20px;min-width:820px;display:grid}.member-ip-list{grid-template-columns:repeat(2,minmax(max-content,1fr));align-items:start;gap:8px;display:grid;overflow-x:auto}.member-ip-list>div{border:1px solid var(--member-line);background:#fff;border-radius:6px;align-items:center;gap:6px;min-width:0;padding:7px 10px;display:flex}.member-options .member-ip-list code{white-space:nowrap;flex-shrink:0;font-size:13px}.member-ip-list button{flex-shrink:0}.member-ip-list .console-icon{color:var(--member-primary);font-size:15px}.member-name-field{align-items:center;gap:4px;min-height:24px;display:flex}.member-name-display{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.member-name-field .console-member-rename{opacity:1;color:#79798c}.member-options .member-name-field input{background:0 0;border:0;border-radius:0;height:24px;min-height:24px;padding:0}.member-ip-add{color:var(--member-primary);align-items:center;gap:3px;display:inline-flex}.member-ip-form>input{flex:1}.member-network-switches{grid-template-columns:repeat(2,max-content);gap:20px;display:grid}.member-network-switches>.member-switch{border-top:0;gap:8px;min-width:0;min-height:36px;padding:0}.member-network-switches .member-switch>span{min-width:0}.member-network-switches .member-switch strong{white-space:nowrap}.member-network-switches input[role=switch]{flex-shrink:0}.member-inline-form,.member-route-toolbar{align-items:center;gap:10px;margin:12px 0;display:flex}.member-inline-form input{max-width:360px}.member-route-toolbar input{max-width:360px;background-color:#f1f5ff!important}.member-route-toolbar .member-muted{white-space:nowrap}.member-route-toolbar>button{margin-left:auto}.member-table-scroll{border:1px solid var(--member-line);border-radius:8px;width:100%;overflow-x:auto}.member-table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.member-table th{color:#59657a;white-space:nowrap;background:#eef3ff;font-weight:600}.member-table th,.member-table td{border-bottom:1px solid var(--member-line);vertical-align:middle;height:40px;padding:6px 10px}.member-table tr:last-child td{border-bottom:0}.member-table td{background:#fff}.member-table td code{font-size:11px}.member-relay-candidates{margin:18px 0 14px;font-size:13px}.member-relay-candidates-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.member-options .member-relay-candidates-heading h4{font-size:13px;font-weight:650}.member-relay-candidates-heading>span,.member-relay-candidates-help{color:#8490a4;font-size:11px}.member-table.member-relay-table{white-space:nowrap;min-width:720px;font-size:13px}.member-relay-table th:first-child{width:48px}.member-relay-table th:nth-child(2){width:142px}.member-relay-table th:nth-child(3){width:154px}.member-relay-table td code{font-size:13px}.member-relay-node-name,.member-relay-score-button,.member-relay-score-chip,.member-relay-candidates-help{align-items:center;gap:6px;display:inline-flex}.member-relay-node-name i{background:#cbd5e1;border-radius:50%;flex:none;width:7px;height:7px}.member-relay-node-name i.member-relay-node-available{background:#10b981}.member-relay-score-button{white-space:nowrap;background:0 0;border:0;padding:0}.member-relay-score-chip{border:1px solid;border-radius:4px;padding:2px 7px;line-height:20px}.member-relay-score-candidate{color:#1d4ed8;background:#eff6ff;border-color:#dbeafe}.member-relay-score-button:hover .member-relay-score-candidate{background:#dbeafe}.member-relay-score-current{color:#fff;background:#15803d;border-color:#166534}.member-relay-score-muted{color:#64748b;background:#f1f5f9;border-color:#e2e8f0}.member-options .member-relay-table .member-relay-score-chip small{font-size:11px;font-weight:500}.member-relay-score-current small{background:#166534;border-radius:3px;padding:0 4px}.member-relay-candidates-help{margin-top:10px}.member-relay-candidates-help .console-icon{font-size:15px}.member-relay-score-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18223255;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.member-relay-score-dialog{color:#334155;background:#fff;border:1px solid #d9e3f6;border-radius:10px;flex-direction:column;width:min(880px,100vw - 48px);max-height:calc(100dvh - 64px);font-size:13px;line-height:1.45;display:flex;overflow:hidden;box-shadow:0 24px 70px #17203340}.member-relay-score-dialog *,.member-relay-score-dialog :before,.member-relay-score-dialog :after{box-sizing:border-box}.member-relay-score-dialog button,.member-relay-score-dialog input,.member-relay-score-dialog select{font:inherit}.member-relay-score-dialog button{cursor:pointer}.member-relay-score-dialog button:focus-visible,.member-relay-score-dialog input:focus-visible,.member-relay-score-dialog select:focus-visible{outline-offset:2px;outline:2px solid #6847ff}.member-relay-score-dialog>header,.member-relay-score-dialog>footer{flex:none;justify-content:space-between;align-items:center;gap:14px;padding:14px 20px;display:flex}.member-relay-score-dialog>header{border-bottom:1px solid #d9e3f6}.member-relay-score-dialog>header button{color:#94a3b8;background:0 0;border:0;padding:4px}.member-relay-score-heading{align-items:center;gap:12px;display:flex}.member-relay-score-heading h3{color:#1e293b;margin:0 0 3px;font-size:16px;font-weight:650}.member-relay-score-heading p{color:#64748b;margin:0;font-size:11px}.member-relay-score-icon{color:#4f24ff;background:#eff4ff;border:1px solid #d9e3f6;border-radius:5px;place-items:center;width:34px;height:34px;display:grid}.member-relay-score-summary{background:#f8faff;border-bottom:1px solid #d9e3f6;flex:none;align-items:center;gap:18px;padding:11px 20px;display:flex}.member-relay-score-summary .member-relay-latest-report{color:#64748b;margin-left:auto;font-size:11px}.member-relay-current-label,.member-relay-stale-label,.member-relay-port-state{color:#4f24ff;white-space:nowrap;background:#eff4ff;border:1px solid #d9e3f6;border-radius:4px;padding:2px 7px;font-size:11px;display:inline-block}.member-relay-current-label{color:#15803d;background:#dcfce7;border-color:#bbf7d0}.member-relay-stale-label{color:#64748b;background:#f1f5f9;border-color:#e2e8f0}.member-relay-score-toolbar{flex:none;align-items:center;gap:12px;padding:12px 20px;display:flex}.member-relay-port-search{border:1px solid #d9e3f6;border-radius:5px;align-items:center;gap:8px;width:min(300px,42%);padding:0 10px;display:flex}.member-relay-port-search:focus-within{outline-offset:1px;outline:2px solid #6847ff}.member-relay-port-search .console-icon{color:#94a3b8;font-size:17px}.member-relay-port-search input{color:#1e293b;background:0 0;border:0;width:100%;min-width:0;height:34px;outline:none!important}.member-relay-score-toolbar>span{color:#94a3b8;white-space:nowrap;font-size:11px}.member-relay-score-toolbar>label:last-child{white-space:nowrap;color:#64748b;align-items:center;gap:8px;margin-left:auto;font-size:11px;display:flex}.member-relay-score-toolbar select{color:#1e293b;background:#fff;border:1px solid #d9e3f6;border-radius:5px;height:34px;padding:4px 9px}.member-relay-score-table-scroll{overscroll-behavior:contain;min-height:0;overflow:auto}.member-relay-score-dialog table{border-collapse:collapse;text-align:left;width:100%;min-width:640px;font-size:13px}.member-relay-score-dialog th,.member-relay-score-dialog td{white-space:nowrap;border-bottom:1px solid #d9e3f6;height:40px;padding:6px 20px}.member-relay-score-dialog th{z-index:1;color:#59657a;background:#eef3ff;font-weight:500;position:sticky;top:0}.member-relay-score-dialog tbody tr:last-child td{border-bottom:0}.member-relay-score-dialog .member-relay-port-current td{color:#15803d;background:#f0fdf4}.member-relay-port-current .member-relay-port-state{color:#fff;background:#15803d;border-color:#15803d}.member-relay-data-muted,.member-relay-report-time{color:#94a3b8}.member-relay-report-time{font-family:ui-monospace,monospace;font-size:11px}.member-relay-data-status{font-size:11px}.member-relay-data-fresh{color:#15803d}.member-relay-data-stale,.member-relay-data-unreachable{color:#d97706}.member-relay-data-unreported,.member-relay-data-unknown_timestamp,.member-relay-data-client_offline{color:#94a3b8}.member-relay-no-ports{text-align:center;color:#94a3b8}.member-relay-score-dialog>footer{background:#f8faff;border-top:1px solid #d9e3f6}.member-relay-score-dialog>footer p{color:#64748b;align-items:center;gap:8px;margin:0;font-size:11px;display:flex}.member-relay-score-dialog>footer .console-icon{color:#4f24ff;font-size:16px}.member-relay-score-dialog>footer button{color:#334155;background:#fff;border:1px solid #d9e3f6;border-radius:5px;padding:6px 15px}@media (max-width:640px){.member-relay-candidates-heading{flex-direction:column;align-items:flex-start;gap:6px}.member-relay-score-backdrop{padding:12px}.member-relay-score-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 32px)}.member-relay-score-summary,.member-relay-score-toolbar{flex-wrap:wrap}.member-relay-score-summary .member-relay-latest-report{margin-left:0}.member-relay-port-search{width:100%}}.member-route-table{table-layout:fixed;min-width:850px}.member-route-table td{overflow-wrap:anywhere;padding:6px 8px}.member-route-table .member-route-actions{white-space:nowrap}.member-route-actions button{color:var(--member-primary);padding:3px;font-size:11px}.member-route-endpoint{font-size:11px}.member-route-endpoint strong{font-weight:600}.member-route-endpoint code{white-space:nowrap}.member-route-group th{color:#5f6d86;background:#f8faff;height:32px;font-size:11px}.member-route-group span{margin-left:8px;font-size:10px;font-weight:400}.member-route-table input{font-size:13px;height:32px!important;min-height:32px!important;padding:4px 6px!important}.member-route-table .managed-route-primary,.member-route-table .managed-route-secondary{min-height:30px;padding:4px 6px;font-size:11px}.member-acl-table{table-layout:fixed;min-width:650px}.member-acl-table th:first-child{width:56px}.member-acl-table th:nth-child(2){width:90px}.member-acl-table th:nth-child(3){width:38%}.member-acl-table th:last-child{width:58px}.member-acl-table input:not([type=checkbox]),.member-acl-table select{height:32px;min-height:32px;font-size:12px}.member-options-footer{background:#f4f7ff;border-top:1px solid #e6edff;flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 18px;display:flex}.member-options-footer>span{font-size:11px}.member-options-footer>button{border:1px solid var(--member-line);background:#fff;border-radius:5px;padding:5px 14px}.member-confirm-backdrop{z-index:30;background:#24304755;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.member-confirm{background:#fff;border-radius:12px;width:440px;max-width:100%;padding:24px;box-shadow:0 16px 50px #202e3d44}.member-confirm h3{margin-bottom:12px;font-size:17px;font-weight:650}.member-confirm p{color:#657187;margin-bottom:14px;line-height:1.7}.member-confirm>div:last-child{justify-content:flex-end;gap:18px;margin-top:24px;display:flex}@media (max-width:760px){.modal-box.member-options-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 96px)}.member-options{height:calc(100dvh - 98px)}.member-options-layout{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.member-options-nav{border-bottom:1px solid var(--member-line);padding:6px;overflow-x:auto}.member-options-nav nav{flex-direction:row}.member-options-nav nav button{flex:none;width:auto}.member-scope,.member-nav-dot,.member-section-heading>.member-muted{display:none!important}.member-options-content{padding:12px}.member-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-fields-grid{grid-template-columns:minmax(0,1fr)}.member-route-toolbar{flex-wrap:wrap}.member-route-toolbar input{max-width:none}.member-options-header{padding:0 12px}.member-options-header h2{font-size:15px}}.member-annotation-form{align-items:center;gap:8px;display:flex}.member-annotation-form>div{flex:1;min-width:0}.member-annotation-form>button{flex:none}.member-options code{font-family:JetBrains Mono,monospace}.member-acl-table td,.member-route-table .managed-route-draft td{padding-top:3px;padding-bottom:3px}.member-route-via{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.member-route-current{color:#006b5d;background:#e4f7f0;border-radius:5px;padding:2px 5px;font-size:11px}.member-route-report-status{color:#748198;margin:-4px 0 10px;font-size:11px}.member-route-report-status button{color:var(--member-primary);margin-left:8px}.member-route-targets{cursor:pointer;font-size:13px}.member-policy-target-dialog{color:#1f2937;background:#fff;border:1px solid #d7e1ff;border-radius:14px;width:min(760px,100vw - 48px);max-width:none;max-height:80vh;padding:20px;font-size:13px}.member-policy-target-dialog::backdrop{background:#0f172a59}.member-policy-target-dialog header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.member-policy-target-dialog h3{font-size:15px;font-weight:600}.member-policy-target-dialog header button{font-size:22px}.member-policy-target-dialog footer{justify-content:flex-end;margin-top:16px;display:flex}.member-policy-target-dialog footer button{border:1px solid #d7e1ff;border-radius:6px;padding:6px 16px}.member-policy-target-list{max-height:52vh;margin-top:12px;overflow:auto}.member-policy-target-list li{border-bottom:1px solid #eef2ff;align-items:baseline;gap:12px;padding:7px 0;display:flex}.member-policy-target-list .member-badge{flex-shrink:0;font-size:11px}.member-policy-target-list code{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;font-size:13px}.member-relay-score-migrating,.member-relay-migrating-label{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.member-relay-score-dialog .member-relay-port-migrating td{color:#92400e;background:#fffbeb}.member-relay-score-migrating small,.member-relay-port-migrating .member-relay-port-state{color:#92400e;background:#fef3c7}.member-relay-table th:last-child{width:178px}.member-relay-usage-time{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.member-relay-used-ports{align-items:center;gap:6px;display:inline-flex}.member-relay-usage-history{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}
.network-list-page,.network-create-dialog,.network-list-row-menu{color:#121c2a;-webkit-font-smoothing:antialiased;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px;line-height:18px}.network-list-page{flex-direction:column;gap:16px;width:100%;max-width:1648px;margin:0 auto;padding:16px 24px 32px;display:flex}.console-main:has(.network-list-page){background:#fff}.network-list-page button,.network-create-dialog button,.network-list-row-menu button{font:inherit;text-transform:none}.network-list-page :focus-visible,.network-create-dialog :focus-visible,.network-list-row-menu :focus-visible{outline-offset:2px;outline:2px solid #4c22ff}.network-list-page input,.network-list-page select,.network-create-dialog input,.network-create-dialog textarea{accent-color:#4c22ff}.network-list-breadcrumb{color:#787589;align-items:center;gap:8px;font-size:11px;line-height:14px;display:flex}.network-list-breadcrumb>span:last-child{color:#121c2a;font-weight:600}.network-list-breadcrumb .console-icon{font-size:14px}.network-list-breadcrumb a:hover{color:#4c22ff}.network-list-intro,.network-list-toolbar,.network-list-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #121c2a0d}.network-list-intro{justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.network-list-intro h1{margin:0;font-size:24px;font-weight:700;line-height:32px}.network-list-intro h1>span{color:#787589;font-size:16px;font-weight:400}.network-list-intro p{color:#474557;margin-top:4px}.network-list-stats{background:#eff4ff66;border:0;border-radius:8px;flex-shrink:0;align-items:center;gap:16px;padding:8px 16px;display:flex}.network-list-stats>div{flex-direction:row;align-items:baseline;gap:4px;display:flex}.network-list-stats>div>span{color:#787589;font-size:11px}.network-list-stats strong{font-size:16px;font-weight:700;line-height:24px}.network-list-stats .teal{color:#00645b}.network-list-stats small{color:#787589;font-size:11px;font-weight:400}.network-list-divider{background:#d9e3f6;flex-shrink:0;width:1px;height:24px}.network-list-content{flex-direction:column;gap:16px;min-width:0;display:flex}.network-list-toolbar{align-items:center;gap:8px;padding:8px;display:flex}.network-list-search{color:#787589;background:#f8f9ff;border:1px solid #0000;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:180px;max-width:420px;height:36px;padding:0 12px;display:flex}.network-list-search:focus-within{border-color:#4c22ff}.network-list-search input{width:100%;min-width:0;height:100%;font:inherit;color:#121c2a;box-shadow:none;background:0 0;border:0;outline:none}.network-list-search input::placeholder{color:#787589;opacity:.8}.network-list-search input:focus-visible{outline:none}.network-list-search kbd{font:inherit;white-space:nowrap;border:1px solid #d9e3f6;border-radius:4px;padding:0 4px;font-size:10px;line-height:16px}.network-list-search button{display:inline-flex}.network-list-tools{align-items:center;gap:8px;margin-left:auto;display:flex}.network-list-button,.network-list-icon-button{white-space:nowrap;cursor:pointer;color:#474557;background:#fff;border:1px solid #d9e3f6;border-radius:6px;justify-content:center;align-items:center;gap:4px;height:36px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.network-list-button:hover,.network-list-icon-button:hover{color:#3600d0;background:#eff4ff}.network-list-button.primary{color:#fff;background:#4c22ff;border-color:#4c22ff;font-weight:600}.network-list-button.primary:hover{background:#3600d0}.network-list-button.selected{color:#3600d0;background:#e6eeff}.network-list-icon-button{color:#787589;border-color:#0000;flex-shrink:0;width:32px;padding:0}.network-list-button:disabled,.network-list-icon-button:disabled{opacity:.45;cursor:default}.network-list-dropdown{position:relative}.network-list-dropdown summary{list-style:none}.network-list-dropdown summary::-webkit-details-marker{display:none}.network-list-popover,.network-list-row-menu{z-index:60;background:#fff;border:1px solid #d9e3f6;border-radius:8px;min-width:190px;padding:8px;box-shadow:0 8px 24px #121c2a1a}.network-list-popover{position:absolute;top:calc(100% + 6px);left:0}.network-list-popover-right{left:auto;right:0}.network-list-popover legend{float:left;color:#787589;width:100%;padding:4px 8px;font-size:11px}.network-list-popover label{clear:both;white-space:nowrap;cursor:pointer;align-items:center;gap:8px;padding:8px;display:flex}.network-list-popover label:hover{background:#eff4ff;border-radius:4px}.network-list-row-menu{min-width:168px;position:fixed}.network-list-row-menu a,.network-list-row-menu button{border-radius:4px;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.network-list-row-menu a:hover,.network-list-row-menu button:hover{background:#eff4ff}.network-list-row-menu .danger{color:#ba1a1a;border-top:1px solid #d9e3f6;border-radius:0 0 4px 4px}.network-list-card{min-width:0}.network-list-table-scroll{border-radius:12px 12px 0 0;overflow-x:auto}.network-list-table{border-collapse:collapse;text-align:left;table-layout:fixed;width:100%;min-width:840px}.network-list-table thead{background:#eff4ff99}.network-list-table th{color:#474557;border-bottom:1px solid #d9e3f680;padding:8px 12px;font-size:11px;font-weight:600;line-height:14px}.network-list-table th button{white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:flex}.network-list-table th .console-icon{color:#787589;font-size:14px}.network-list-table td{vertical-align:middle;border-bottom:1px solid #d9e3f680;height:40px;padding:3px 16px}.network-list-table tbody tr{isolation:isolate;height:40px;position:relative}.network-list-table tbody tr:hover{background:#eff4ff66}.network-list-table tbody tr:last-child td{border-bottom:none}.network-list-col-name{width:20%}.network-list-col-description{width:24%}.network-list-col-nwid{width:232px}.network-list-col-members{width:160px}.network-list-col-actions{text-align:right;width:148px}.network-list-name{color:#121c2a;align-items:center;gap:6px;font-size:16px;font-weight:600;line-height:18px;display:flex}.network-list-name-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.network-list-name:after{content:"";cursor:pointer;position:absolute;inset:0}.network-list-name:focus-visible{outline:none}.network-list-name:focus-visible:after{outline-offset:-2px;outline:2px solid #4c22ff}.network-list-id button,.network-list-actions>a,.network-list-actions>button{z-index:1;position:relative}.network-list-actions>.network-list-icon-button{height:28px}.network-list-name .console-icon{opacity:0;flex-shrink:0;font-size:16px}.network-list-name:hover{color:#3600d0}.network-list-name:hover .console-icon,.network-list-name:focus-visible .console-icon{opacity:1}.network-list-cidr{color:#787589;white-space:nowrap;text-overflow:ellipsis;font:11px/14px JetBrains Mono,monospace;overflow:hidden}.network-list-description{color:#474557;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.network-list-id{background:#eff4ff;border:1px solid #d9e3f680;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.network-list-id code{color:#474557;font:12px/16px JetBrains Mono,monospace}.network-list-id button{color:#787589;display:flex}.network-list-id button:hover{color:#4c22ff}.network-list-id .console-icon{font-size:15px}.network-list-dot{background:#a4a3ad;border-radius:50%;width:6px;height:6px}.network-list-dot.active{background:#22c55e}.network-list-members{align-items:center;gap:8px;display:flex}.network-list-members>span:first-child{white-space:nowrap;background:#e6eeff;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;line-height:14px}.network-list-members>span.active{color:#004a43;background:#e6eeff}.network-list-members>span:first-child>span{opacity:.65}.network-list-progress{background:#eff4ff;border-radius:10px;width:64px;height:6px;overflow:hidden}.network-list-progress i{border-radius:inherit;background:#00645b;height:100%;display:block}.network-list-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.network-list-button.manage{color:#4c22ff;background:#eff4ff;border-color:#0000;height:28px;padding:0 8px;font-size:13px;font-weight:600}.network-list-button.manage:hover{color:#fff;background:#4c22ff;border-color:#4c22ff}.network-list-pagination{color:#787589;border-top:1px solid #d9e3f680;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-size:11px;display:flex}.network-list-pagination>div{align-items:center;gap:4px;display:flex}.network-list-pagination button{color:#474557;border-radius:4px;justify-content:center;align-items:center;min-width:28px;height:28px;display:inline-flex}.network-list-pagination button:hover{background:#eff4ff}.network-list-pagination button[aria-current]{color:#fff;background:#4c22ff}.network-list-pagination button:disabled{opacity:.35;cursor:default}.network-list-pagination select{color:#474557;background:#eff4ff;border-radius:4px;margin-right:8px;padding:4px}.network-list-empty{text-align:center;padding:64px 16px}.network-list-empty>.console-icon{color:#4c22ff;background:#eff4ff;border-radius:50%;padding:16px;font-size:44px}.network-list-empty h2{margin:16px 0 8px;font-size:18px;font-weight:700;line-height:24px}.network-list-empty p{color:#787589;margin-bottom:20px}.network-list-notice,.network-list-error{background:#eff4ff;border-radius:8px;align-items:center;gap:8px;padding:12px 16px;display:flex}.network-list-notice a{color:#3600d0;margin-left:auto;text-decoration:underline}.network-list-error{color:#ba1a1a;background:#fff0ee}.network-list-status-note{color:#787589;font-size:12px}.network-create-dialog{background:#fff;border:1px solid #d9e3f6;border-radius:12px;width:calc(100% - 32px);max-width:512px;max-height:calc(100dvh - 64px);padding:0;overflow-y:auto;box-shadow:0 20px 60px #121c2a33}.network-create-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#121c2a66}.network-create-dialog header{background:#eff4ff80;border-bottom:1px solid #d9e3f680;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.network-create-dialog h2{align-items:center;gap:8px;font-size:18px;font-weight:700;line-height:24px;display:flex}.network-create-dialog h2 .console-icon{color:#4c22ff}.network-create-fields{flex-direction:column;gap:8px;padding:24px;display:flex}.network-create-fields>label,.network-create-fields legend{font-weight:600}.network-create-fields>label:not(:first-child),.network-create-fields fieldset{margin-top:12px}.network-create-fields label>span{color:#ba1a1a}.network-create-fields small{color:#787589;font-weight:400}.network-create-fields>input,.network-create-fields>textarea{font:inherit;background:#eff4ff;border:1px solid #d9e3f6;border-radius:8px;width:100%;padding:10px 12px}.network-create-fields>textarea{resize:vertical;min-height:76px}.network-create-presets{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.network-create-tabs{background:#eff4ff;border-radius:8px;gap:8px;margin-bottom:12px;padding:4px;display:flex}.network-create-tabs button{background:#fff;border:1px solid #d9e3f6;border-radius:6px;flex:1;min-height:32px;font-size:13px}.network-create-tabs button[aria-selected=true]{color:#fff;background:#4c22ff;border-color:#4c22ff}.network-create-hint{color:#787589;margin:8px 0;font-size:13px}.network-create-pools{flex-direction:column;gap:12px;display:flex}.network-create-pool{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px;align-items:end;gap:8px;display:grid}.network-create-pool label{flex-direction:column;gap:6px;min-width:0;font-size:13px;display:flex}.network-create-pool input{background:#eff4ff;border:1px solid #d9e3f6;border-radius:6px;width:100%;min-width:0;padding:8px;font-size:13px}.network-create-pool .network-list-icon-button{margin-bottom:3px}.network-create-presets label{cursor:pointer;color:#474557;border:1px solid #d9e3f6;border-radius:6px;padding:7px 8px;font-size:13px;position:relative}.network-create-presets label.selected{color:#3600d0;background:#eff4ff;border-color:#4c22ff}.network-create-presets input{opacity:0;position:absolute}.network-create-presets label:focus-within{outline-offset:2px;outline:2px solid #4c22ff}.network-create-presets code{font-family:JetBrains Mono,monospace}.network-create-private{color:#474557;align-items:center;gap:8px;display:flex;font-weight:400!important}.network-create-dialog footer{border-top:1px solid #d9e3f680;justify-content:flex-end;gap:8px;padding:16px 24px;display:flex}@media (max-width:1000px){.network-list-page{padding:16px}.network-list-search kbd{display:none}}@media (max-width:640px){.network-list-intro{flex-direction:column;align-items:flex-start}.network-list-stats{justify-content:space-around;width:100%}.network-list-toolbar{flex-wrap:wrap}.network-list-search{flex-basis:calc(100% - 112px);max-width:none}.network-list-tools{justify-content:flex-end;width:100%}.network-list-pagination{flex-wrap:wrap}}.network-list-page svg.console-icon,.network-create-dialog svg.console-icon,.network-list-row-menu svg.console-icon{width:1em;height:1em}
.admin-console-shell .console-main{background:#fff}.admin-page{--admin-bg:#fff;--admin-card:#fff;background:var(--admin-bg);min-height:calc(100dvh - 80px);color:var(--console-text);font:var(--admin-font-body)/1.5 "Hanken Grotesk", "PingFang SC", "Microsoft YaHei", sans-serif;flex-direction:column;gap:24px;min-width:0;padding:24px;display:flex}.admin-page [hidden]{display:none!important}.admin-page-heading{justify-content:space-between;align-items:center;gap:20px;padding-bottom:0;display:flex}.admin-page-heading nav{font-size:var(--admin-font-body);color:var(--console-muted);margin-bottom:4px}.admin-page-heading nav span{color:var(--console-outline);padding:0 10px}.admin-page h1{font-size:var(--admin-font-title);letter-spacing:0;font-weight:700;line-height:28px}.admin-heading-actions,.admin-toolbar,.admin-actions{align-items:center;gap:12px;display:flex}.admin-toolbar{flex-wrap:wrap;margin-bottom:20px}.admin-toolbar .admin-search{flex:1;min-width:180px;max-width:400px}.admin-toolbar>.admin-actions{margin-left:auto}.admin-card,.admin-page .menu-section{background:var(--admin-card);border:1px solid var(--console-border);border-radius:12px;min-width:0;padding:24px;box-shadow:0 1px 2px #121c2a06}.admin-card-heading{border-bottom:1px solid var(--console-border);margin-bottom:20px;padding-bottom:16px}.admin-page :is(h2,h3,h4),.admin-card-heading h2{font-size:var(--admin-font-body);font-weight:650;line-height:24px}.admin-card-heading p,.admin-muted{color:var(--console-outline);font-size:13px}.admin-page .menu-section>.menu-section-heading>p{text-transform:none;letter-spacing:0;color:var(--console-text);font-size:16px;font-weight:650;line-height:24px}.admin-page .menu-section .divider{height:16px;margin:0 0 16px}.admin-page .menu-section .divider:before,.admin-page .menu-section .divider:after{background:var(--console-border);height:1px}.admin-tabs{border-bottom:1px solid var(--console-border);flex:none;align-items:center;gap:28px;display:flex;overflow-x:auto}.admin-tabs button{white-space:nowrap;min-height:40px;color:var(--console-muted);border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 4px 14px;display:inline-flex}.admin-tabs button[aria-selected=true]{color:var(--console-accent);border-bottom-color:var(--console-accent);font-weight:650}.admin-tab-count{background:var(--console-surface);font-size:var(--admin-font-tag);border-radius:4px;padding:0 6px}.admin-page [role=tabpanel]{min-width:0}.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.admin-stat{border:1px solid var(--console-border);background:var(--console-surface);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.admin-stat>div{flex-direction:column;gap:3px;display:flex}.admin-stat span,.admin-stat small{color:var(--console-outline);font-size:var(--admin-font-tag)}.admin-stat strong{font-size:20px;font-weight:700;line-height:26px}.admin-stat>.console-icon{background:var(--console-surface);color:var(--console-accent);border-radius:8px;padding:8px;font-size:20px}.admin-two-column{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);align-items:start;gap:24px;display:grid}.admin-stack{flex-direction:column;gap:24px;min-width:0;display:flex}.admin-page .admin-form{flex-direction:column;gap:18px;display:flex}.admin-page .admin-field{flex-direction:column;gap:7px;font-weight:500;display:flex}.admin-field small{font-size:var(--admin-font-tag);color:var(--console-outline);font-weight:400}.admin-field-count{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-welcome-preview{border:1px solid var(--console-border);background:var(--console-surface);border-radius:8px;overflow:hidden}.admin-welcome-preview>div:first-child{color:var(--console-outline);border-bottom:1px solid var(--console-border);padding:9px 14px;font-size:11px}.admin-welcome-preview>div:last-child{background:var(--admin-bg);min-height:260px;padding:32px 24px}.admin-page .admin-welcome-preview>div h3{font-size:var(--admin-font-title);margin:16px 0 12px;font-weight:700;line-height:28px}.admin-welcome-preview p{color:var(--console-muted);white-space:pre-wrap;overflow-wrap:anywhere}:is(.admin-page,.admin-console-shell>.modal) :is(input,select,textarea,button){font:inherit}.admin-page .admin-tabs button,:is(.admin-page,.admin-console-shell>.modal) :is(.text-sm,.label-text-alt){font-size:var(--admin-font-compact)}:is(.admin-page,.admin-console-shell>.modal) .text-xs{font-size:var(--admin-font-tag)}:is(.admin-page,.admin-console-shell>.modal) .label-text,:is(.admin-page,.admin-console-shell>.modal) :is(h3,h4){font-size:var(--admin-font-body);line-height:24px}:is(.admin-page,.admin-console-shell>.modal) :is(.input,.select,.textarea){background-color:var(--console-surface);border:1px solid var(--console-border);color:var(--console-text);outline-offset:2px;box-shadow:none;border-radius:7px}:is(.admin-page,.admin-console-shell>.modal) :is(.input,.select){height:36px;min-height:36px;padding:0 12px;font-size:13px;line-height:normal}:is(.admin-page,.admin-console-shell>.modal) .select{padding-right:32px}:is(.admin-page,.admin-console-shell>.modal) .textarea{min-height:100px;font-size:var(--admin-font-compact);padding:10px 12px}:is(.admin-page,.admin-console-shell>.modal) :focus-visible{outline:2px solid var(--console-accent);outline-offset:2px}:is(.admin-page,.admin-console-shell>.modal) .btn{border:1px solid var(--console-border);background:var(--console-surface);height:34px;min-height:34px;color:var(--console-muted);box-shadow:none;text-transform:none;white-space:nowrap;border-radius:6px;gap:6px;padding:0 14px;font-size:13px;font-weight:600}:is(.admin-page,.admin-console-shell>.modal) .btn-primary{background:var(--console-primary);color:#fff;border-color:var(--console-primary)}:is(.admin-page,.admin-console-shell>.modal) .btn-outline{background:0 0}:is(.admin-page,.admin-console-shell>.modal) .btn-success{color:var(--console-teal);background:#e9f8f3;border-color:#cae8df}:is(.admin-page,.admin-console-shell>.modal) .btn-error{color:var(--console-error);background:#fff0ef;border-color:#f3d1cd}:is(.admin-page,.admin-console-shell>.modal) .btn-xs{height:26px;min-height:26px;font-size:var(--admin-font-compact);padding:0 8px}:is(.admin-page,.admin-console-shell>.modal) .btn:disabled{opacity:.42;pointer-events:none}:is(.admin-page,.admin-console-shell>.modal) .checkbox{border-color:var(--console-border);--chkbg:60% .2 285;width:16px;height:16px;accent-color:var(--console-accent);border-radius:4px}:is(.admin-page,.admin-console-shell>.modal) .checkbox:checked{background-color:var(--console-accent);border-color:var(--console-accent)}:is(.admin-page,.admin-console-shell>.modal) .toggle{color:var(--console-accent);border-color:var(--console-border)}:is(.admin-page,.admin-console-shell>.modal) .badge{white-space:nowrap;border:1px solid var(--console-border);background:var(--console-surface);height:22px;color:var(--console-muted);font-size:11px}:is(.admin-page,.admin-console-shell>.modal) .badge-success{color:#067257;background:#e9faf3;border-color:#c6eddd}:is(.admin-page,.admin-console-shell>.modal) .badge-error{color:var(--console-error);background:#fff0ef;border-color:#f3d1cd}:is(.admin-page,.admin-console-shell>.modal) .badge-warning{color:#935c0c;background:#fff7e8;border-color:#f4dfb9}:is(.admin-page,.admin-console-shell>.modal) .font-mono{font-family:JetBrains Mono,monospace}.admin-page .overflow-x-auto{border-color:var(--console-border);border-radius:8px;max-width:100%}.admin-page table{border-collapse:collapse;width:100%;font-size:var(--admin-font-compact)}:is(.admin-page,.admin-console-shell>.modal) table :is(th,td,.text-xs,.text-sm,.admin-muted,.btn-xs){font-size:var(--admin-font-compact)}:is(.admin-page,.admin-console-shell>.modal) table .badge{font-size:var(--admin-font-tag)}.admin-page thead{background:var(--console-surface);color:var(--console-muted)}.admin-page th{text-align:left;white-space:nowrap;border-bottom:1px solid var(--console-border);height:40px;padding:8px 14px;font-weight:600}.admin-page td{border-bottom:1px solid var(--console-border);vertical-align:middle;height:40px;padding:7px 14px}.admin-page tbody tr{background:var(--admin-card)}.admin-page tbody tr:nth-child(2n){background:color-mix(in srgb,var(--console-surface) 25%,var(--admin-card))}.admin-page tbody tr:last-child td{border-bottom:0}.admin-page td .flex-wrap{flex-wrap:nowrap}.admin-page .admin-table-card{padding:20px}.admin-page .admin-table-card table{min-width:780px}.admin-page .admin-data-section{border:1px solid var(--console-border);background:var(--admin-card);border-radius:12px;padding:20px}.admin-page .admin-data-section>:first-child{margin-bottom:18px}.admin-relay-section-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-page .admin-template-layout{grid-template-columns:220px minmax(0,1fr);gap:24px;display:grid}.admin-template-list{border-right:1px solid var(--console-border);flex-direction:column;gap:6px;padding-right:16px;display:flex}.admin-template-list button{text-align:left;color:var(--console-muted);border-radius:6px;padding:12px}.admin-template-list button[aria-selected=true]{background:var(--console-tint);color:var(--console-accent);font-weight:600}.admin-template-body{min-width:0}.admin-template-body>div{max-width:none}.admin-page .admin-mail-smtp .menu-section{box-shadow:none;border:0;border-radius:0;padding:0 0 20px}.admin-page .admin-mail-smtp .menu-section+.menu-section{border-top:1px solid var(--console-border);padding-top:20px}.admin-page .admin-mail-smtp .menu-section-heading{display:none}.admin-page .admin-mail-smtp .label{padding-left:0}.admin-notification-card{max-width:880px}.admin-notification-setting{justify-content:space-between;align-items:center;gap:24px;display:flex}.admin-controller-status{background:var(--admin-card);border:1px solid var(--console-border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:14px 24px;padding:16px 20px;display:flex}.admin-definition-list{grid-template-columns:minmax(140px,1fr) 2fr;gap:16px 24px;display:grid}.admin-definition-list dt{color:var(--console-outline)}.admin-definition-list dd{overflow-wrap:anywhere}.admin-console-shell>.modal,.admin-page .modal{z-index:60;background:#121c2a50}.admin-console-shell>.modal:not(.modal-open){background:0 0}:is(.admin-page,.admin-console-shell>.modal) .modal-box{color:var(--console-text);background:var(--console-bg);border:1px solid var(--console-border);font:var(--admin-font-body)/1.5 "Hanken Grotesk", "PingFang SC", "Microsoft YaHei", sans-serif;border-radius:12px;padding:24px}:is(.admin-page,.admin-console-shell>.modal) .modal-action{border-top:1px solid var(--console-border);padding-top:16px}.admin-page .admin-drawer{border-radius:12px 0 0 12px;justify-self:end;width:min(780px,95vw);max-width:95vw;height:100dvh;max-height:100dvh}.admin-page .admin-backup-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.admin-page .admin-backup-list{grid-column:1/-1}@media (max-width:1100px){.admin-two-column{grid-template-columns:minmax(0,1fr)}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.admin-page{gap:18px;padding:16px}.admin-page-heading{align-items:flex-start}.admin-page h1{font-size:20px}.admin-card,.admin-page .menu-section,.admin-page .admin-data-section{padding:16px}.admin-page .admin-template-layout,.admin-page .admin-backup-grid{grid-template-columns:minmax(0,1fr)}.admin-template-list{border-right:0;border-bottom:1px solid var(--console-border);flex-direction:row;padding:0 0 12px;overflow:auto}.admin-template-list button{white-space:nowrap}.admin-stats{gap:10px}.admin-stat{padding:12px}.admin-tabs{gap:20px}}.admin-count{border:1px solid var(--console-border);color:var(--console-muted);font-size:var(--admin-font-tag);white-space:nowrap;background:#fff;border-radius:7px;padding:7px 12px}.admin-count b{color:var(--console-text);margin-left:6px}.admin-notice{border:1px solid var(--console-border);background:var(--console-surface);color:var(--console-muted);border-radius:10px;padding:16px 18px;font-size:13px;line-height:1.7}.admin-table-frame{border:1px solid var(--console-border);background:#fff;border-radius:12px;overflow:hidden}.admin-table-footer{background:var(--admin-bg);border-top:1px solid var(--console-border);color:var(--console-outline);font-size:var(--admin-font-compact);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.admin-node-toolbar{flex-wrap:nowrap;margin:0;padding:16px}.admin-node-toolbar>div{flex:1;max-width:360px}.admin-node-table{min-width:1050px}.admin-page .admin-node-table td{height:40px}.admin-disabled-row{color:var(--console-outline)}.admin-delete{color:var(--console-error);white-space:nowrap}.admin-delete:disabled{color:var(--console-outline);opacity:.45;cursor:not-allowed}.admin-avatar{background:var(--console-tint);width:26px;height:26px;color:var(--console-accent);border-radius:5px;place-items:center;margin-right:10px;display:inline-grid}.admin-empty{text-align:center;color:var(--console-outline);padding:40px 20px}.admin-three-stats .admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-three-stats .admin-stat:last-child strong{font-size:18px}.admin-dialog-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.admin-page .modal-box .menu-section{box-shadow:none;border:0;padding:0}.admin-page .modal-box .menu-section-heading{display:none}:is(.admin-page,.admin-console-shell>.modal) .modal-box h2,.admin-console-shell>.modal .modal-box>h3{font-size:var(--admin-font-title);font-weight:700;line-height:28px}.admin-page .menu-section>.menu-section-heading{margin-bottom:16px}.admin-page .menu-section>.menu-section-heading>.divider{display:none}.admin-page .admin-mail-smtp fieldset{min-width:0}.admin-page .modal-box.route-policy-dialog{background:#fff;border-radius:8px;flex-direction:column;width:min(1180px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);padding:0;font-size:13px;display:flex;overflow:hidden}.route-policy-dialog .admin-dialog-heading{border-bottom:1px solid var(--console-border);flex:none;min-height:48px;margin:0;padding:0 16px}.admin-page .route-policy-dialog .admin-dialog-heading h2{align-items:center;gap:10px;font-size:18px;line-height:24px;display:flex}.route-policy-dialog .admin-dialog-heading h2:before{content:"";background:var(--console-accent);border-radius:50%;width:8px;height:8px}.route-policy-body{flex-direction:column;gap:14px;min-height:0;padding:16px;display:flex;overflow:hidden auto}.route-policy-name{border-bottom:1px solid var(--console-border);align-items:center;gap:16px;padding-bottom:14px;display:flex}.admin-page .route-policy-dialog .route-policy-name>span{flex:none;font-size:13px;font-weight:600}.route-policy-name>input{width:min(420px,100%);min-width:0}.route-section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.route-section-heading>div{align-items:center;gap:8px;display:flex}.route-section-heading :is(strong,label){font-size:13px;font-weight:600}.route-policy-dialog small,.route-target-count{color:var(--console-outline);font-size:11px}.route-candidate-grid,.route-candidate-headings{grid-template-columns:minmax(0,1fr);gap:8px 12px;display:grid}.route-candidate-columns,.route-candidate{grid-template-columns:124px minmax(0,1fr) 60px 58px;align-items:start;gap:6px;min-width:0;padding:5px 6px;display:grid}.route-candidate-headings{color:var(--console-outline);margin-bottom:3px}.route-candidate-headings>:nth-child(2){display:none}.route-candidate-columns{padding-top:0;padding-bottom:0}.route-candidate{border:1px solid var(--console-border);background:#fff;border-radius:5px}.route-candidate>label{min-width:0}.route-candidate-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.admin-page .route-policy-dialog :is(.input,.select){background-color:#eef2ff;border-radius:4px;height:32px;min-height:32px;padding:0 8px;font-size:13px}.admin-page .route-policy-dialog .select{appearance:none;background-position:right 12px center,right 8px center;background-size:4px 4px,4px 4px;padding-right:24px}.admin-page .route-policy-dialog :is(.input,.select,.textarea):focus{outline:2px solid var(--console-accent);outline-offset:1px}.route-candidate-exit select,.route-candidate input,.route-targets{font-variant-numeric:tabular-nums}.route-candidate input{text-align:center}.route-candidate-actions{align-items:center;gap:4px;height:32px;display:flex}.admin-page .route-candidate-actions .btn{width:27px;height:28px;min-height:28px;color:var(--console-accent);background:#fff;padding:0;font-size:15px;font-weight:500}.admin-page .route-candidate-actions .btn:last-child{color:var(--console-error)}.route-candidate-warning{color:#935c0c;overflow-wrap:anywhere;font-size:11px}.route-candidate-disabled{color:var(--console-error);grid-column:1/-1}.route-targets-section{border-top:1px solid var(--console-border);padding-top:14px}.route-target-count{color:var(--console-accent);border:1px solid var(--console-border);white-space:nowrap;background:#eef2ff;border-radius:4px;padding:2px 8px}.admin-page .route-policy-dialog .route-targets{resize:none;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:#eef2ff;width:100%;min-height:88px;max-height:none;padding:10px;font:13px/22px JetBrains Mono,monospace;display:block;overflow:hidden}.route-parse-preview{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:4px;align-items:center;gap:12px;min-height:32px;padding:5px 10px;display:flex}.route-parse-preview strong{flex:none;font-weight:600}.route-parse-preview small{color:inherit;white-space:nowrap;margin-left:auto}.route-parse-preview.has-errors{color:var(--console-error);background:#fff0ef;border-color:#f3d1cd;align-items:flex-start}.route-parse-preview ul{overflow-wrap:anywhere;min-width:0}.admin-page .route-policy-dialog .route-policy-actions{border-top:1px solid var(--console-border);flex:none;align-items:center;min-height:50px;margin:0;padding:8px 16px}.admin-page .route-policy-actions .btn{height:32px;min-height:32px}@media (min-width:1200px){.route-candidate-grid,.route-candidate-headings{grid-template-columns:repeat(2,minmax(0,1fr))}.route-candidate-headings>:nth-child(2){display:grid}}@media (max-width:600px){.admin-page .modal-box.route-policy-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.route-policy-body{padding:12px}.route-candidate-headings{display:none}.route-candidate{grid-template-columns:minmax(0,1fr) 60px 58px;gap:6px}.route-candidate-exit{grid-area:2/1/auto/-1}.route-candidate-label{clip-path:none;width:auto;height:auto;color:var(--console-outline);margin:0 0 3px;font-size:11px;position:static}.route-candidate-actions{align-self:end}.route-section-heading>div{flex-wrap:wrap;gap:4px}.route-parse-preview{flex-wrap:wrap;gap:6px}}.admin-page .admin-relay-management>.admin-data-section>.overflow-x-auto{border:1px solid var(--console-border)}.admin-page [role=tabpanel]:not([hidden])>.admin-card{width:100%}@media (max-width:850px){.admin-heading-actions{flex-wrap:wrap;justify-content:flex-end}.admin-node-toolbar{flex-wrap:wrap}.admin-three-stats .admin-stats{grid-template-columns:1fr}}.admin-app-routes-table{min-width:1050px}.admin-route-candidates{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.admin-route-candidate{white-space:nowrap;font-size:var(--admin-font-compact)}.admin-route-candidate+.admin-route-candidate:before{content:"/";color:var(--console-outline);margin-right:14px}.admin-welcome-preview>div:last-child{background:#fff}.admin-welcome-preview>div:last-child>.console-icon{width:40px;height:40px;color:var(--console-accent);background:var(--console-surface);border-radius:8px;place-items:center;display:inline-grid}.admin-page [role=tabpanel] .admin-accounts{min-width:0}.admin-page .admin-accounts table{min-width:1300px}.admin-page .admin-accounts table td{white-space:nowrap}.admin-policy-panel{min-width:0}.admin-policy-table{min-width:1500px}.admin-policy-table td{white-space:nowrap}.admin-policy-inline{align-items:center;gap:10px;display:flex}.admin-policy-inline .admin-muted{font-size:var(--admin-font-compact)}.admin-policy-actions{white-space:nowrap;gap:12px}.admin-policy-actions button+button{border-left:1px solid var(--console-border);padding-left:12px}.admin-policy-actions button:disabled{opacity:.4;cursor:not-allowed}:is(.admin-page,.admin-console-shell>.modal) .toggle{appearance:none;background:#c5c9d5;border:0;border-radius:20px;flex-shrink:0;width:36px;height:20px;min-height:20px;transition:background .15s;position:relative;box-shadow:none!important}:is(.admin-page,.admin-console-shell>.modal) .toggle:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px}:is(.admin-page,.admin-console-shell>.modal) .toggle:checked{background:var(--console-accent)}:is(.admin-page,.admin-console-shell>.modal) .toggle:checked:before{transform:translate(16px)}:is(.admin-page,.admin-console-shell>.modal) .toggle:disabled{opacity:.5;cursor:wait}.admin-relay-management .admin-toolbar{margin-bottom:0}.admin-mail-smtp .menu-section>.menu-section-heading+*{margin-top:0}.admin-mail-smtp .menu-section>*+*{margin-top:14px}:is(.admin-page,.admin-console-shell>.modal) .checkbox{appearance:auto;box-shadow:none;accent-color:var(--console-accent);background-image:none}.admin-app-routes-table td,.admin-app-routes-table th{padding-left:10px;padding-right:10px}.admin-app-routes-table td:nth-child(2){max-width:220px}.admin-app-routes-table td:nth-child(5)>span{max-width:120px}.admin-card>.admin-toolbar:last-child{margin-bottom:0}.admin-invitation-layout{grid-template-columns:minmax(250px,1fr) minmax(0,2fr);gap:24px;margin-top:24px;display:grid}.admin-group-table{min-width:700px}.admin-invitation-table{min-width:680px}@media (max-width:1100px){.admin-invitation-layout{grid-template-columns:minmax(0,1fr)}}.admin-table-footer>div{white-space:nowrap}.admin-relay-nodes .admin-node-table{min-width:1040px}.admin-relay-nodes .admin-node-toolbar{flex-wrap:nowrap;padding:0 0 16px}.admin-relay-nodes .admin-node-toolbar>.admin-muted{white-space:nowrap}.admin-relay-nodes .admin-node-toolbar>.max-w-sm{min-width:220px}.admin-relay-nodes .admin-node-table td{height:40px;padding-top:5px;padding-bottom:5px}.admin-relay-nodes .admin-actions{white-space:nowrap;gap:8px}.admin-relay-nodes button:disabled{opacity:.4;cursor:not-allowed}.relay-node-button-icon,.relay-node-footer-help>svg{flex:none;width:17px;height:17px}.relay-node-search{position:relative}.relay-node-search>svg{width:16px;height:16px;color:var(--console-outline);pointer-events:none;position:absolute;top:10px;left:11px}.admin-page .admin-relay-nodes .relay-node-search>.input{max-width:none;padding-left:34px}.relay-node-dot{vertical-align:middle;background:#cbd5e1;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.relay-node-dot.is-enabled{background:#10b981}.relay-node-footer-help{align-items:center;gap:7px;display:flex}.relay-node-ports{border:1px solid var(--console-border);background:var(--console-surface);color:var(--console-accent);white-space:nowrap;border-radius:4px;padding:2px 7px;font:13px/18px JetBrains Mono,monospace;display:inline-block}.admin-page .admin-relay-nodes .admin-node-table .relay-node-state{font-size:11px}.relay-node-state.is-mixed,.relay-node-state.is-legacy{color:#935c0c;background:#fff7e8;border-radius:4px;padding:1px 5px;display:inline-block}.relay-node-state.is-legacy{background:var(--console-surface);color:var(--console-outline);margin-left:5px}.relay-node-notice{border-top:1px solid var(--console-border);background:var(--console-surface);color:var(--console-muted);padding:9px 16px;font-size:13px}.relay-node-notice.has-error,.relay-node-form-error{color:var(--console-error);background:#fff0ef}:is(.admin-page,.admin-console-shell>.modal) .modal-box.relay-node-dialog{background:#fff;width:min(660px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);padding:0;font-size:13px}.relay-node-dialog>h3{display:none}.relay-node-form{font-size:13px}.relay-node-form-heading{border-bottom:1px solid var(--console-border);align-items:center;gap:9px;min-height:48px;padding:12px 20px;display:flex}.relay-node-form-heading>svg{width:20px;height:20px;color:var(--console-accent);flex:none}.relay-node-dialog .relay-node-form .relay-node-form-heading h2{font-size:16px;font-weight:700;line-height:24px}.relay-node-form-heading>span{border:1px solid var(--console-border);color:var(--console-accent);background:var(--console-surface);border-radius:4px;padding:1px 6px;font-size:11px}.relay-node-form>fieldset,.relay-node-form label{flex-direction:column;gap:7px;min-width:0;display:flex}.relay-node-form>fieldset{gap:18px;padding:20px}.relay-node-form label>span{font-weight:600}.relay-node-form .input,.relay-node-form .textarea{width:100%;font-size:13px}.relay-node-form .textarea{min-height:76px}.relay-node-form small{color:var(--console-outline);font-size:11px;font-weight:400}.relay-node-form small.text-error{color:var(--console-error)}.relay-node-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.relay-node-field-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.relay-node-port-preview{border:1px solid var(--console-border);background:var(--console-surface);border-radius:5px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.relay-node-port-preview>span{overflow-wrap:anywhere;min-width:0}.relay-node-port-preview code{color:var(--console-accent);font:13px/20px JetBrains Mono,monospace}.relay-node-port-preview small{white-space:nowrap;flex:none}.relay-node-port-valid{align-items:center;gap:9px;display:flex}.relay-node-port-valid>span{color:#067257;white-space:nowrap;background:#e9faf3;border:1px solid #c6eddd;border-radius:4px;align-items:center;gap:4px;padding:1px 5px;font-size:11px;display:flex}.relay-node-port-valid svg{width:13px;height:13px}.relay-node-port-preview.has-error{color:var(--console-error);background:#fff0ef;border-color:#f3d1cd}.relay-node-form-error{border-radius:5px;margin:0 20px 14px;padding:8px 10px}.relay-node-close{width:22px;height:22px;color:var(--console-outline);margin-left:auto}.relay-node-form-hint{border:1px solid var(--console-border);color:var(--console-muted);background:#f8faff;border-radius:5px;align-items:center;gap:8px;padding:9px 10px;font-size:11px;display:flex}.relay-node-form-hint>svg{color:#10b981;flex:none;width:16px;height:16px}.relay-node-form .relay-node-form-actions{border-top:1px solid var(--console-border);margin:0;padding:12px 20px}@media (max-width:700px){.admin-relay-nodes .admin-node-toolbar{flex-wrap:wrap}.relay-node-form-grid{grid-template-columns:minmax(0,1fr)}.relay-node-port-preview{flex-direction:column;align-items:flex-start;gap:5px}}.service-scope-controls{flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:13px;display:flex}.service-scope-controls>label{white-space:nowrap;align-items:center;gap:8px;display:flex}.service-scope-controls select{max-width:260px;font-size:13px}.service-scope-controls select.select:disabled{color:#9299a6;cursor:not-allowed;opacity:1;background:#f1f3f7}.service-scope-editor{min-width:340px;max-width:400px}.service-scope-editor .service-scope-controls{flex-wrap:nowrap;gap:8px}.service-scope-editor .service-scope-controls select{max-width:144px}.service-scope-actions{gap:6px;margin-top:4px;display:flex}
.organization-console-shell{--org-accent:#4c22ff;--org-border:#e5e7eb;--org-muted:#788190;--console-chat-width:320px;color:#182130;background:#fff}.organization-console-shell .console-sidebar{border-color:var(--org-border);background:#fff}.organization-console-shell .console-main,.organization-console-shell .console-main-content{background:#fff}.organization-console-shell .console-main.has-chat{margin-right:0}.organization-console{color:#182130;background:#fff;min-height:calc(100dvh - 40px);padding:24px;font-family:Hanken Grotesk,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5}.organization-console *,.org-modal *{box-sizing:border-box}.organization-console.organization-console--network{padding:0}.organization-console--network>.org-logs-launch{margin:0 24px 24px}@media (max-width:767px){.organization-console--network>.org-logs-launch{margin:0 12px 16px}}.org-header{margin-bottom:24px}.org-breadcrumb{color:var(--org-muted);gap:12px;margin-bottom:24px;font-size:13px;display:flex}.org-breadcrumb strong{color:#374151;font-weight:500}.org-heading,.org-heading-main,.org-title-line{align-items:center;gap:12px;min-width:0;display:flex}.org-heading{border-bottom:1px solid var(--org-border);justify-content:space-between;padding-bottom:20px}.org-heading h1{overflow-wrap:anywhere;font-size:22px;font-weight:700;line-height:1.3}.org-heading p{color:var(--org-muted);white-space:pre-line;margin-top:4px;font-size:13px}.org-logo{width:40px;height:40px;color:var(--org-accent);background:#fff;border:1px solid #e2e5f0;border-radius:6px;flex:none;place-items:center;display:grid}.org-logo .console-icon{font-size:26px}.org-badge,.org-count{color:#586174;white-space:nowrap;background:#fff;border:1px solid #e5e7eb;border-radius:4px;align-items:center;padding:2px 7px;font-size:11px;display:inline-flex}.org-count{border-radius:999px}.org-tabs{border-bottom:1px solid var(--org-border);white-space:nowrap;gap:28px;display:flex;overflow-x:auto}.org-tabs a{color:#727a89;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:18px 0 14px;display:flex}.org-tabs a.is-active{color:var(--org-accent);border-color:var(--org-accent);font-weight:700}.org-page-title{margin-bottom:24px}.org-page-title h2{margin-bottom:6px;font-size:20px;font-weight:700}.org-page-title p,.org-muted{color:var(--org-muted)}.org-card{border:1px solid var(--org-border);background:#fff;border-radius:8px;min-width:0;box-shadow:0 1px 2px #14213808}.org-card-heading{justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.org-card-heading h3,.org-card h3{font-size:16px;font-weight:650}.org-card-heading p{color:var(--org-muted);margin-top:3px;font-size:13px}.org-card-body{padding:0 24px 24px}.org-stack{flex-direction:column;gap:24px;display:flex}.org-settings-width{max-width:800px}.org-button{color:#465064;min-height:34px;font:inherit;white-space:nowrap;cursor:pointer;text-transform:none;background:#fff;border:1px solid #dfe3ea;border-radius:5px;justify-content:center;align-items:center;gap:7px;padding:6px 12px;font-size:13px;display:inline-flex}.org-button:hover{color:var(--org-accent);border-color:#b9a8fc}.org-button-primary{background:var(--org-accent);color:#fff;border-color:var(--org-accent)}.org-button-primary:hover{color:#fff;background:#3e14e8}.org-button-danger{color:#dc2626;border-color:#fecaca}.org-button:disabled{opacity:.45;cursor:not-allowed}.org-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.org-link{color:var(--org-accent);white-space:nowrap;align-items:center;gap:4px;font-size:13px;display:inline-flex}.org-link:disabled{opacity:.4;cursor:not-allowed}.org-error{color:#dc2626}.org-input,.org-select{color:#182130;width:100%;min-height:38px;font:inherit;background:#fff;border:1px solid #dfe3ea;border-radius:6px;padding:8px 12px;font-size:14px}.org-input::placeholder{color:#9ca3af}textarea.org-input{resize:vertical;min-height:86px}.organization-console :focus-visible,.org-modal :focus-visible{outline-offset:2px;outline:2px solid #4c22ff}.org-field{flex-direction:column;gap:8px;min-width:0;display:flex}.org-field>span{font-size:13px;font-weight:600}.org-field small,.org-help{color:var(--org-muted);font-size:12px}.org-edit-field{border-top:1px solid var(--org-border);padding:24px 0}.org-edit-field:last-child{padding-bottom:0}.org-edit-field .org-field{margin-bottom:12px}.org-edit-field input{max-width:450px}.org-edit-field textarea{max-width:580px}.org-edit-field .org-help{margin-top:8px}.org-danger-card{border-color:#fecaca}.org-danger-card .org-card-heading h3{color:#dc2626}.org-warning{color:#b66b0b;border:1px solid #fde1a0;border-radius:4px;padding:5px 8px;font-size:12px}.org-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.org-stat{padding:18px}.org-stat-top{color:var(--org-muted);justify-content:space-between;display:flex}.org-stat strong{margin-top:14px;font-size:28px;line-height:1.4;display:block}.org-stat p{color:var(--org-muted);font-size:13px}.org-overview-grid{grid-template-columns:minmax(0,2.1fr) minmax(240px,1fr);align-items:start;gap:24px;display:grid}.org-member-list{max-height:370px;padding:0 18px;overflow-y:auto}.org-member{text-align:left;border-top:1px solid #f0f1f4;align-items:center;gap:10px;width:100%;padding:12px 0;display:flex}.org-member>div{flex:1;min-width:0}.org-member strong,.org-member small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.org-member small{color:var(--org-muted);font-size:12px}.org-avatar{color:#485469;background:#fff;border:1px solid #e3e7ef;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:600;display:grid}.org-member-note{color:#9ba3af;padding:12px 18px 18px;font-size:12px}.org-info{padding:0 18px 18px}.org-info>div{border-top:1px solid var(--org-border);justify-content:space-between;gap:12px;padding:12px 0;display:flex}.org-info dt{color:var(--org-muted)}.org-info dd{overflow-wrap:anywhere;text-align:right}.org-table-wrap{overflow-x:auto}.org-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.org-table th{color:#788190;white-space:nowrap;background:#fff;font-weight:500}.org-table th,.org-table td{border-top:1px solid var(--org-border);vertical-align:middle;padding:12px 16px}.org-table td:last-child,.org-table th:last-child{text-align:right}.org-table tbody tr:hover{background:#faf9ff}.org-mono{font-family:JetBrains Mono,monospace;font-size:12px}.org-network-toolbar{align-items:center;gap:12px;padding:16px;display:flex}.org-network-toolbar h3{white-space:nowrap;margin-right:auto}.org-network-search{flex:1;min-width:120px;max-width:320px}.org-network-table table{min-width:620px}.org-network-table .org-table td{cursor:pointer}.org-network-table .org-table td:nth-child(3),.org-network-table .org-table td:nth-child(4){white-space:nowrap}.org-network-footer{border-top:1px solid var(--org-border);color:var(--org-muted);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:12px;display:flex}.org-empty{text-align:center;color:var(--org-muted);padding:28px}.org-form-grid{grid-template-columns:1.4fr 1fr;gap:24px;margin-bottom:18px;display:grid}.org-segmented{border-bottom:1px solid var(--org-border);gap:24px;margin-bottom:24px;display:flex}.org-segmented button{color:var(--org-muted);border-bottom:2px solid #0000;padding:12px 0}.org-segmented button[aria-selected=true]{color:var(--org-accent);border-color:var(--org-accent);font-weight:600}.org-toggle{appearance:none;cursor:pointer;background:#d1d5db;border:1px solid #d1d5db;border-radius:99px;flex:none;width:32px;height:18px;position:relative}.org-toggle:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .1s;display:block;position:absolute;top:1px;left:1px}.org-toggle:checked{background:var(--org-accent);border-color:var(--org-accent)}.org-toggle:checked:before{transform:translate(14px)}.org-toggle:disabled{opacity:.5;cursor:not-allowed}.org-toggle-row{justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.org-toggle-row p{color:var(--org-muted);margin-top:6px;font-size:13px}.org-scope-note{border-top:1px solid var(--org-border);padding:20px 24px;font-size:13px}.org-scope-note ul{color:#6b7280;margin-top:10px;padding-left:20px;line-height:2;list-style:outside}.org-card-footer{border-top:1px solid var(--org-border);color:var(--org-muted);justify-content:space-between;padding:12px 24px;font-size:12px;display:flex}.org-notification-table{min-width:670px}.org-events-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.org-event-option{border:1px solid var(--org-border);border-radius:5px;align-items:flex-start;gap:8px;padding:12px;display:flex}.org-event-option input{accent-color:var(--org-accent);margin-top:4px}.org-event-option span{min-width:0;font-size:13px}.org-event-option small{color:var(--org-muted);overflow-wrap:anywhere;font-size:10px;display:block}.org-webhook-form{flex-direction:column;gap:22px;display:flex}.org-webhook-url{max-width:680px}.org-webhook-table{min-width:850px}.org-webhook-table td:nth-child(2){overflow-wrap:anywhere;max-width:270px}.org-webhook-table td:nth-child(4){max-width:240px}.org-event-tags{flex-wrap:wrap;gap:4px;display:flex}.org-user-results{border:1px solid var(--org-border);border-radius:5px;max-height:200px;overflow-y:auto}.org-user-results button{text-align:left;justify-content:space-between;gap:12px;width:100%;padding:8px 10px;display:flex}.org-user-results button:hover{background:#f5f2ff}.org-user-results small{color:var(--org-muted)}.org-unread{background:var(--org-accent);border-radius:50%;width:7px;height:7px}.org-modal{--org-accent:#4c22ff;--org-border:#e5e7eb;--org-muted:#788190;color:#182130;border-radius:8px;max-width:520px;padding:24px;background:#fff!important}.org-modal h3{border-bottom:1px solid var(--org-border);padding-bottom:16px;font-size:17px}.org-modal-body{flex-direction:column;gap:20px;padding-top:18px;display:flex}.org-modal-footer{border-top:1px solid var(--org-border);justify-content:flex-end;align-items:center;gap:8px;padding-top:16px;display:flex}.org-modal-wide{width:800px;max-width:calc(100vw - 32px)}.org-template-vars{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.org-template-vars button{color:#6f5cad;border:1px solid var(--org-border);background:#fff;border-radius:4px;padding:3px 6px;font-size:11px}.org-template-body{height:240px;font-family:monospace;font-size:12px}.org-dirty{color:#bf790b;margin-right:auto;font-size:12px}.organization-console-shell .modal{z-index:50}.organization-console-shell .console-chat-aside{border-left:1px solid var(--org-border);z-index:35;background:#fff;width:320px;max-width:100vw;box-shadow:-4px 0 12px #14213808}.org-chat{background:#fff;flex-direction:column;height:100%;display:flex}.org-chat-heading{border-bottom:1px solid var(--org-border);justify-content:space-between;align-items:center;padding:18px;display:flex}.org-chat-heading h2{font-weight:600}.org-chat-list{flex:1;min-height:0;overflow-y:auto}.org-chat-message{align-items:flex-start;gap:10px;padding:16px;display:flex}.org-chat-message-content{flex:1;min-width:0}.org-chat-message-meta{justify-content:space-between;gap:6px;font-size:12px;display:flex}.org-chat-message-meta time{color:var(--org-muted);font-size:11px}.org-chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:6px;font-size:13px}.org-chat-composer{border-top:1px solid var(--org-border);padding:16px}.org-chat-composer .org-actions{justify-content:space-between;margin-top:10px}.org-logs-launch{border-top:1px solid var(--org-border);margin-top:40px;padding:24px 0 0}.organization-console-shell .console-logs-panel{border-top:1px solid var(--org-border);background:#fff;height:210px;box-shadow:0 -4px 12px #14213806}.organization-console-shell .console-logs-panel[aria-hidden=true]{display:none}.org-logs-heading{border-bottom:1px solid var(--org-border);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.org-logs-heading h3{font-size:13px;font-weight:600}.org-logs-heading small{color:var(--org-muted);margin-left:8px;font-weight:400}.org-logs-content{height:160px;overflow:auto}.org-logs-content table{min-width:650px}.org-logs-content .org-table td,.org-logs-content .org-table th{padding:5px 16px;font-size:11px}@media (min-width:1600px){.organization-console{padding:28px 32px}}@media (max-width:1280px){.org-overview-grid{grid-template-columns:minmax(0,1fr)}.org-overview-aside{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (max-width:760px){.organization-console{padding:16px}.org-heading{align-items:flex-start;gap:8px}.org-heading h1{font-size:18px}.org-heading>.org-button{padding:6px;font-size:12px}.org-logo{display:none}.org-tabs{gap:20px}.org-stats{gap:8px}.org-stat{padding:12px}.org-stat strong{font-size:24px}.org-stat-top .console-icon{display:none}.org-stat-top{font-size:12px}.org-overview-aside,.org-form-grid{grid-template-columns:1fr}.org-card-heading,.org-card-body{padding-left:16px;padding-right:16px}.org-network-toolbar{flex-wrap:wrap}.org-network-toolbar h3{width:100%}.org-events-grid{grid-template-columns:1fr}.org-modal{padding:18px}.org-modal-footer{flex-wrap:wrap}.org-dirty{width:100%}}.org-svg-icon{flex:none;width:18px;height:18px}.org-logo .org-svg-icon{width:26px;height:26px}.organization-console-shell .console-chat-aside{position:fixed;right:0}.organization-console-shell .console-nav-section>a[aria-current=page]{background:#f6f3ff}:root .organization-console-shell{--console-bg:#fff;--console-surface:#fff;--console-text:#182130;--console-muted:#474557;--console-outline:#787589;--console-border:#e5e7eb;--console-tint:#f6f3ff;--console-accent:#4c22ff;--console-primary:#3600d0}@media (max-width:760px){.org-stat-top{display:block}.org-stat-top .org-svg-icon,.org-stat-top .org-link{display:none}.org-network-footer{flex-direction:column;align-items:flex-start}.org-network-footer>span{white-space:nowrap}.org-network-footer .org-actions{flex-wrap:nowrap;gap:6px}.org-network-footer .org-button{padding:4px 9px}}
.console-shell{--console-font-title:20px;--console-font-body:16px;--console-font-compact:13px;--console-font-tag:11px;--admin-font-title:var(--console-font-title);--admin-font-body:var(--console-font-body);--admin-font-compact:var(--console-font-compact);--admin-font-tag:var(--console-font-tag)}.console-shell :is(.console-main-content,.modal-box,.network-list-page,.organization-console,.admin-page,.member-options){font-size:var(--console-font-body);line-height:1.5}.console-shell :is(.console-main-content,.modal-box) :where(h1,.text-2xl,.text-3xl){font-size:var(--console-font-title);line-height:28px}.console-shell :is(.console-main-content,.modal-box) :where(h2,h3,h4,.text-base,.text-lg,.label-text){font-size:var(--console-font-body);line-height:24px}.console-shell :is(.org-page-title h2,.modal-box>h3,.admin-dialog-heading h2,.org-modal-heading h3,.member-options-header h2,.network-create-heading h2,.admin-welcome-preview h3){font-size:var(--console-font-title);line-height:28px}.console-shell .menu-section-heading>p{font-size:var(--console-font-body);line-height:24px}.console-shell :is(.console-main-content,.modal-box) :is(.text-sm,.label-text-alt){font-size:var(--console-font-compact)}.console-shell :is(.console-main-content,.modal-box) .text-xs{font-size:var(--console-font-tag)}.console-shell :is(.console-main-content,.modal-box) :is(button,input,select,textarea,.btn,.tab,.org-search),.console-shell .org-tabs a{font-size:var(--console-font-compact)}.console-shell :is(.org-breadcrumb,.network-list-breadcrumb){font-size:var(--console-font-body);line-height:24px}.console-shell :is(.admin-stat,.org-stat) strong{font-size:var(--console-font-title);line-height:28px}.console-shell :is(.console-main-content,.modal-box) :is(table,[role=table]),.console-shell :is(.console-main-content,.modal-box) :is(table,[role=table]) :where(th,td,a,button,input,select,textarea,label,div,span,p,strong,b,small,code,kbd):where(:not(.console-icon):not([aria-hidden=true])){font-size:var(--console-font-compact)}.console-shell :is(.console-main-content,.modal-box) :is(.badge,.org-badge,.org-count,.admin-count,.admin-tab-count,.member-badge,.console-tag,.console-network-id,.console-connection,.console-count,.managed-routes-count),.console-shell .network-list-members>span:first-child{font-size:var(--console-font-tag)}.console-shell :is(.console-main-content,.modal-box) :is(.badge,.org-badge,.org-count,.admin-count,.admin-tab-count,.member-badge,.console-tag,.console-network-id,.console-connection,.console-count,.managed-routes-count) :where(span,strong,b,small,code):not(.console-icon),.console-shell .network-list-members>span:first-child>span{font-size:inherit}.console-shell .console-members-table .console-member-version{font-size:var(--console-font-tag)}.console-shell .network-detail :is(.console-network-identity,.console-network-identity h1,.console-ip-modes .console-label,.console-ip-modes code,.console-pool-usage>span,.console-pool-usage>strong,.console-member-actions .console-button,.console-member-options){font-size:var(--console-font-compact)}
