:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color-scheme:light;--bg: #f5f6f8;--surface: #ffffff;--sidebar: #eef0f4;--text: #1d2533;--secondary: #687282;--separator: #e1e5eb;--accent: #245edb;--accent-hover: #164ab6;--accent-soft: #dfe9ff;--control: #ffffff;--control-hover: #edf1f7;--danger: #b42636;--danger-bg: #fff0f1;--good: #16734f;--good-bg: #e6f4ed;--warning: #885609;--warning-bg: #fff2d7;--focus: #467df0;--shadow: 0 20px 70px #16203324;--radius: 14px;font-size:14px;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility}.nav-group+.nav-group{margin-top:18px}.nav-group-label{margin:0 12px 6px;color:var(--secondary);font-size:11px;font-weight:600}.workflow-guide{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:17px 20px;margin:0 0 24px;border:1px solid var(--separator);border-radius:12px;background:var(--surface)}.workflow-guide strong{font-size:14px;font-weight:600}.workflow-guide p{color:var(--secondary);font-size:12px;margin:4px 0 0;max-width:760px}.workflow-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 16px;min-width:170px;padding-top:2px}.workflow-links a{display:inline-flex;gap:6px;align-items:center;min-height:36px;white-space:nowrap;font-size:12px}.workflow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.workflow-steps>a{padding:20px;display:flex;align-items:center;gap:13px;color:var(--text);border-top:1px solid var(--separator)}.workflow-steps>a+a{border-left:1px solid var(--separator)}.workflow-steps>a:hover{background:var(--control-hover);text-decoration:none}.workflow-steps>a>span:nth-child(2){flex:1;min-width:0}.workflow-steps small{display:block;margin-top:5px;color:var(--secondary);font-size:11px}.step-number{flex-shrink:0;color:var(--secondary);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.creation-options{display:grid;gap:12px;margin:20px 0}.creation-options>button{width:100%;padding:20px;text-align:left;justify-content:flex-start;white-space:normal}.creation-options>button>span:nth-child(2){flex:1}.creation-options strong{display:block;font-size:15px}.creation-options small{display:block;margin-top:6px;color:var(--secondary);font-size:12px;font-weight:400}.creation-option-symbol{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;color:var(--accent);font-size:20px;margin-right:8px}.resource-detail-overview{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.resource-detail-overview h3{margin:2px 0;font-size:20px}.resource-detail-overview .eyebrow{margin:0}.resource-detail-state{display:grid;gap:6px;text-align:right}.resource-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.execution-explanation{padding:13px 16px;margin:14px 0;background:var(--control-hover);border-radius:9px;font-size:12px;line-height:1.7}.execution-explanation p:last-child{margin-bottom:0}.execution-section{border-top:1px solid var(--separator);padding-top:20px;margin-top:24px}.execution-section .section-heading{padding:0;margin-bottom:15px}.execution-section .section-heading p{color:var(--secondary);font-size:12px}.execution-section table{font-size:12px}.execution-empty{padding:20px;text-align:center;color:var(--secondary);background:var(--bg);border-radius:9px}.execution-empty strong{display:block;color:var(--text);font-size:13px}.execution-empty p{font-size:12px;margin:5px 0 0}.plain-fieldset{border:0;padding:0;margin:0;min-width:0}.plain-fieldset:disabled{opacity:.75}.inline-checks{display:flex;gap:20px}.inline-checks .check-field{margin:0}.forward-preview-path{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid var(--separator);border-radius:10px}.forward-preview-path>div{min-width:0;flex:1;display:grid;gap:5px}.forward-preview-path>div>span{font-size:11px;color:var(--secondary)}.forward-preview-path strong{overflow-wrap:anywhere}.forward-preview-path small{font-size:11px;color:var(--secondary);overflow-wrap:anywhere}.check-results{margin:10px 0 18px;padding-left:20px;font-size:13px}.check-results li+li{margin-top:7px}.ordered-resource-editor{display:grid;gap:10px}.ordered-resource-editor>button{justify-self:start}.ordered-resource-row{display:flex;align-items:center;gap:7px}.ordered-resource-row>select{flex:1;min-width:100px}.ordered-resource-row>button{padding-left:12px;padding-right:12px}.ordered-resource-row>.step-number{width:16px}.settings-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:20px}.setting-saved{color:var(--good)}.submission-results{margin-bottom:22px}.submission-results h2{font-size:16px}.submission-results p{font-size:12px;color:var(--secondary)}.submission-results td{font-size:12px}.resource-filter-token{display:inline-flex;align-items:center;gap:4px;padding-left:10px;border:1px solid var(--separator);border-radius:8px;font-size:12px}.quantity-input{display:flex;gap:8px}.quantity-input>input{flex:1;min-width:0}.field .quantity-input>select{width:auto;min-width:100px}@media(max-width:1100px){.workflow-guide{flex-direction:column;gap:8px}.workflow-links{justify-content:flex-start}}@media(max-width:780px){.workflow-steps{grid-template-columns:1fr}.workflow-steps>a+a{border-left:0}.workflow-steps>a{padding:15px 20px}.workflow-guide{margin-bottom:18px;padding:16px}.forward-preview-path{flex-direction:column;align-items:stretch;gap:12px}.forward-preview-path>span{transform:rotate(90deg);align-self:center}}@media(max-width:480px){.ordered-resource-row{flex-wrap:wrap}.ordered-resource-row>select{flex-basis:calc(100% - 28px)}.ordered-resource-row>button:first-of-type{margin-left:23px}.resource-detail-state{text-align:left}.resource-detail-overview{flex-direction:column;gap:8px}.settings-actions{flex-wrap:wrap}.settings-actions>button{width:100%}}:root[data-theme=dark]{color-scheme:dark;--bg: #141820;--surface: #1d232d;--sidebar: #181e27;--text: #e6ebf3;--secondary: #a4adbd;--separator: #343d4b;--accent: #8ab2ff;--accent-hover: #b0ccff;--accent-soft: #293d60;--control: #252d39;--control-hover: #323e4f;--danger: #ff9ca7;--danger-bg: #462b35;--good: #8ed8b4;--good-bg: #203e34;--warning: #f3cb85;--warning-bg: #443b29;--focus: #9ec0ff;--shadow: 0 20px 70px #0007}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #141820;--surface: #1d232d;--sidebar: #181e27;--text: #e6ebf3;--secondary: #a4adbd;--separator: #343d4b;--accent: #8ab2ff;--accent-hover: #b0ccff;--accent-soft: #293d60;--control: #252d39;--control-hover: #323e4f;--danger: #ff9ca7;--danger-bg: #462b35;--good: #8ed8b4;--good-bg: #203e34;--warning: #f3cb85;--warning-bg: #443b29;--focus: #9ec0ff;--shadow: 0 20px 70px #0007}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}button,input,textarea,select{font:inherit}button,.button{min-height:44px;padding:9px 15px;color:var(--text);background:var(--control);border:1px solid var(--separator);border-radius:9px;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;text-decoration:none;transition:background .12s ease}button:hover,.button:hover{background:var(--control-hover)}button:active,.button:active{filter:brightness(.96)}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--accent);border-color:transparent;color:var(--surface);font-weight:600}button.primary:hover{background:var(--accent-hover)}button.danger{color:var(--danger)}button.danger:hover{background:var(--danger-bg)}input,textarea,select{width:100%;min-height:44px;padding:9px 12px;border-radius:9px;border:1px solid var(--separator);color:var(--text);background:var(--control);outline:none}select{width:auto;max-width:100%}input::placeholder{color:var(--secondary)}input[type=checkbox]{accent-color:var(--accent);width:19px;min-height:19px;height:19px;padding:0;margin:0;flex:0 0 19px;cursor:pointer}textarea{resize:vertical;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;font-weight:650;line-height:1.3;margin-bottom:10px}h2{font-size:17px;font-weight:650;margin-bottom:0}h3{font-size:15px;font-weight:600;margin-bottom:12px}p{margin-bottom:14px}small{display:block;font-size:12px;color:var(--secondary);line-height:1.6}.muted,.footnote{color:var(--secondary)}.footnote{font-size:12px;margin:16px 0 0}.code,pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;overflow-wrap:anywhere}pre{white-space:pre-wrap;padding:16px;background:var(--bg);border-radius:9px;max-height:400px;overflow:auto}.error-text,.required{color:var(--danger)}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--sidebar);border-right:1px solid var(--separator);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:28px 22px 24px;color:var(--text);font-size:18px;font-weight:650}.brand:hover{text-decoration:none}.brand small{font-weight:400;font-size:11px;margin-top:2px}.brand-mark{width:36px;height:36px;flex-shrink:0;background:var(--text);color:var(--surface);border-radius:11px;display:grid;place-items:center;font-size:21px;font-weight:650}.sidebar nav{padding:0 12px 16px;overflow-y:auto;flex:1}.sidebar nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:9px 12px;border-radius:9px;color:var(--secondary);font-size:13px;font-weight:500}.sidebar nav a:hover{background:var(--control-hover);text-decoration:none;color:var(--text)}.sidebar nav a.selected{background:var(--accent-soft);color:var(--accent)}.sidebar nav a.nav-divider{margin-top:12px}.nav-symbol{display:grid;place-items:center;font-size:11px;border:1px solid currentColor;border-radius:5px;width:21px;height:21px;line-height:1;opacity:.8}.sidebar-footer{padding:15px 20px;border-top:1px solid var(--separator);font-size:11px;color:var(--secondary);display:flex;align-items:center;flex-wrap:wrap;gap:7px}.sidebar-footer button{padding:4px 0;background:transparent;border:0;min-height:44px;font-size:11px;margin-left:auto}.local-indicator{width:6px;height:6px;background:var(--secondary);border-radius:50%}.main-column{min-width:0;flex:1;margin-left:232px}.topbar{min-height:76px;border-bottom:1px solid var(--separator);display:flex;align-items:center;justify-content:space-between;padding:12px 36px;gap:20px;background:var(--bg)}.topbar>div,.topbar-actions{display:flex;align-items:center;gap:16px}.breadcrumb{font-size:12px;color:var(--secondary)}.breadcrumb>span{margin:0 9px;color:var(--separator)}.timezone{font-size:11px;color:var(--secondary)}.topbar-actions button{font-size:12px}main#main-content{padding:34px 36px 0;max-width:1680px;margin:0 auto;outline:none}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:24px}.page-heading p:not(.eyebrow){margin:0;color:var(--secondary);font-size:13px}.eyebrow{font-size:10px;font-weight:650;color:var(--secondary);letter-spacing:1.5px;margin-bottom:10px}.admin-label{font-size:12px;color:var(--secondary);border:1px solid var(--separator);padding:6px 10px;border-radius:7px}.surface{background:var(--surface);border:1px solid var(--separator);border-radius:var(--radius);margin:24px 0;overflow:hidden}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:23px 24px}.section-heading p{margin:5px 0 0;font-size:12px}.section-heading a{font-size:12px;white-space:nowrap;min-height:44px;display:flex;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--separator);border-radius:var(--radius)}.stat{padding:24px;display:flex;flex-direction:column;align-items:flex-start;border-right:1px solid var(--separator)}.stat:last-child{border-right:0}.stat>span{color:var(--secondary);font-size:12px}.stat>strong{font-size:34px;line-height:1.2;margin:14px 0 12px;font-weight:600;font-variant-numeric:tabular-nums}.stat>a{font-size:11px;min-height:28px;display:flex;align-items:center;gap:22px}.server-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;padding:18px 24px;border-top:1px solid var(--separator)}.server-row>div{display:flex;align-items:flex-start;flex-direction:column;gap:6px}.server-row>div>.muted{font-size:11px}.server-row strong{font-size:13px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;padding:3px 7px;border-radius:5px;line-height:1.6;color:var(--secondary);background:var(--bg);max-width:100%;overflow-wrap:anywhere}.badge>span{width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.badge.good{color:var(--good);background:var(--good-bg)}.badge.warning{color:var(--warning);background:var(--warning-bg)}.badge.bad{color:var(--danger);background:var(--danger-bg)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar-spacer{flex:1}.search-field{display:flex;align-items:center;min-height:44px;border:1px solid var(--separator);background:var(--control);border-radius:9px;padding-left:13px;width:min(350px,100%)}.search-field>span{font-size:23px;color:var(--secondary);line-height:1}.search-field>input{border:0;background:transparent;min-width:0}.search-field:focus-within{outline:3px solid var(--focus);outline-offset:3px}.search-field>input:focus-visible{outline:0}.filter-row{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}.filter-row select{font-size:12px;max-width:190px}.port-filters select{flex:1 1 145px;max-width:220px;min-width:0}.port-filters input{width:120px;min-width:0}.selection-bar{margin:18px 0 0;border:1px solid var(--separator);background:var(--accent-soft);padding:10px 14px;border-radius:10px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.selection-bar strong{font-size:12px;margin-right:8px}.selection-bar button{font-size:12px}.resource-surface{margin-top:20px}.list-caption{display:flex;justify-content:space-between;gap:12px;padding:15px 20px;font-size:11px;color:var(--secondary);border-bottom:1px solid var(--separator)}.table-scroll{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-weight:500;color:var(--secondary);font-size:11px;padding:13px 18px;background:var(--bg);white-space:nowrap}td{padding:15px 18px;border-top:1px solid var(--separator);vertical-align:middle;min-width:100px}tbody tr:hover{background:color-mix(in srgb,var(--bg) 60%,transparent)}th.selection-cell,td.selection-cell{width:48px;min-width:48px;padding-right:0}.selection-cell input{position:relative}.selection-cell input:before{content:"";position:absolute;inset:-12px}.action-cell{text-align:right}.name-button{background:transparent;border:0;padding:0;min-height:36px;color:var(--text);font-weight:600;text-align:left;white-space:normal;justify-content:flex-start;overflow-wrap:anywhere}.name-button:hover{color:var(--accent);background:transparent}td>small.code{font-size:10px;white-space:nowrap}.cell-stack,.state-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.cell-stack strong{font-size:12px;font-weight:500}.cell-stack small{font-size:11px;min-width:140px}.state-stack>.muted{font-size:10px;white-space:nowrap}.state-stack small{max-width:180px;overflow-wrap:anywhere}.row-actions{display:flex;gap:5px;justify-content:flex-end}.row-actions button{padding:6px 8px;min-height:44px;font-size:11px;background:transparent;border-color:transparent}.row-actions button:hover{background:var(--control-hover)}.empty{padding:52px 24px 58px;display:flex;flex-direction:column;align-items:center;text-align:center}.empty-symbol{font-size:32px;color:var(--secondary);margin-bottom:15px;line-height:1.2}.empty h3{margin-bottom:9px;font-weight:550}.empty p{margin:0;max-width:400px;font-size:12px;color:var(--secondary)}.loading{color:var(--secondary);padding:35px 24px;text-align:center;font-size:13px}.notice,.error-box,.warning-box{display:flex;gap:12px;align-items:center;background:var(--accent-soft);color:var(--text);border:1px solid var(--separator);padding:12px 15px;border-radius:10px;margin:16px 0;font-size:12px}.notice>span{flex:1}.error-box{background:var(--danger-bg);color:var(--danger);display:block;overflow-wrap:anywhere}.notice.error-box{display:flex}.warning-box{background:var(--warning-bg);color:var(--warning);display:block}.warning-box p{margin:0 0 12px}.icon-button{background:transparent;border:0;font-size:21px;width:44px;height:44px;padding:0;flex-shrink:0}.notice .icon-button{min-height:28px;height:28px;width:28px;font-size:18px}.page-footer{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--secondary);border-top:1px solid var(--separator);padding:20px 0;margin-top:40px;gap:20px}dialog{width:calc(100% - 32px);max-width:600px;max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--separator);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);overflow:auto}dialog.wide{max-width:800px}dialog::backdrop{background:#0b132c66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{position:sticky;top:0;background:var(--surface);z-index:1;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--separator);padding:12px 20px 12px 24px}.dialog-header h2{margin:0;font-size:17px}html:has(dialog[open]),body:has(dialog[open]){overflow:hidden}.dialog-body{padding:24px}.installation-dialog>p:first-child{margin-top:0}.installation-command{width:100%;min-height:150px;overflow-wrap:anywhere;word-break:break-all}.installation-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.installation-actions>button{min-height:44px}.dialog-footer .button-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid var(--separator);border-radius:8px;color:var(--accent);background:var(--control);text-decoration:none}.dialog-footer .button-link:hover{background:var(--control-hover)}.installation-issues{border-radius:10px;background:var(--warning-bg);color:var(--warning);padding:14px 16px;margin:16px 0}.installation-issues ul{margin:8px 0 0;padding-left:20px}.installation-observation{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:16px;border-top:1px solid var(--separator)}.installation-settings>p,.installation-settings>form,.installation-settings>[role=status]{margin-left:24px;margin-right:24px}.installation-settings>form{padding-bottom:24px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--separator);background:var(--surface);position:sticky;bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:18px}.field{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:12px}.field>span:first-child{font-weight:550}.field select{width:100%}.field>small{font-size:11px;line-height:1.65}.field.span-two{grid-column:span 2}.node-path-form>h3{margin:28px 0 16px;font-size:15px}.node-path-fields{padding:0;margin:0;border:0;min-width:0}.node-path-servers,.node-path-preview{margin:0 0 16px;padding:0;list-style:none}.node-path-servers>li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:end;padding:12px 0;border-bottom:1px solid var(--separator)}.node-path-position{display:inline-flex;justify-content:center;align-items:center;width:32px;height:44px;font-weight:650;color:var(--accent)}.node-path-order{display:flex;gap:4px}.node-path-order>button{min-width:44px;padding-inline:10px}.node-path-section{margin-top:20px}.node-path-carriers{margin:0 0 20px;padding:12px 0;border:0;display:flex;flex-wrap:wrap;gap:8px 20px}.node-path-carriers legend{font-size:12px;font-weight:550}.node-path-carriers label,.node-path-users label{display:flex;align-items:center;gap:8px;min-height:44px}.node-path-users{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:240px;overflow:auto;margin-top:12px}.node-path-preview>li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:0 12px;padding:12px 0 0}.node-path-preview strong,.node-path-preview small{display:block;overflow-wrap:anywhere}.node-path-preview small,.node-path-link{color:var(--secondary);font-size:12px}.node-path-link{grid-column:2;padding:12px 0 4px;overflow-wrap:anywhere}@media(max-width:540px){.node-path-servers>li{grid-template-columns:32px minmax(0,1fr);gap:8px}.node-path-order{grid-column:2}}.check-field{display:flex;gap:9px;align-items:center;min-height:44px;padding:22px 0 0;font-size:12px}.boolean-control{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:400}.advanced{border-top:1px solid var(--separator);margin-top:24px;padding-top:16px}summary{cursor:pointer;font-size:12px;min-height:44px;display:list-item;align-content:center}.advanced p{font-size:11px;margin:0 0 12px}.member-editor{margin-top:24px;border-top:1px solid var(--separator)}.member-editor .section-heading{padding:20px 0}.member-editor h3{margin:0}.member-row{display:grid;grid-template-columns:1.2fr 1.5fr 70px 70px auto auto;gap:8px;margin-bottom:14px;align-items:end}.member-row label{display:flex;flex-direction:column;gap:5px;font-size:11px}.member-row input,.member-row select{min-width:0;width:100%}.member-security{grid-column:1 / -1;padding:12px 0;border-bottom:1px solid var(--separator)}.member-security summary{cursor:pointer;color:var(--secondary);margin-bottom:12px}.assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.assignment-grid fieldset{min-width:0;border:1px solid var(--separator);border-radius:10px;padding:12px;max-height:360px;overflow:auto}.assignment-grid legend{padding:0 6px;font-size:12px;font-weight:550}.check-row{display:flex;gap:10px;align-items:center;min-height:56px;padding:8px;cursor:pointer;font-size:12px;border-radius:7px}.check-row:hover{background:var(--control-hover)}.check-row small{font-size:10px}.detail-list{display:grid;grid-template-columns:110px 1fr;margin:0 0 24px;gap:16px;font-size:12px}.detail-list dt{color:var(--secondary)}.detail-list dd{margin:0;overflow-wrap:anywhere}.button-row{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap}.qr-wrap{display:flex;flex-direction:column;align-items:center;padding:24px;gap:10px}.qr{border-radius:8px;background:#fff}.segments{background:var(--sidebar);padding:4px;border:1px solid var(--separator);border-radius:10px;display:flex}.segments button{border:0;background:transparent;font-size:12px}.segments button[aria-pressed=true]{background:var(--surface)}.log-search{margin-left:auto;max-width:300px}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;gap:20px;border-top:1px solid var(--separator);font-size:12px}.setting-row p{margin:5px 0 0;font-size:12px}.settings-endpoints{margin-top:24px}.carrier-order{display:flex;align-items:center;gap:6px}.settings-endpoint-value{display:flex;align-items:center;gap:12px;min-width:0}.settings-endpoint-value code{overflow-wrap:anywhere}.settings-endpoint-value>button{flex-shrink:0}.server-group-member{grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(80px,1fr) auto auto}@media(max-width:760px){.server-group-member{grid-template-columns:repeat(2,minmax(0,1fr))}.server-group-member>label:first-child{grid-column:1 / -1}}.capability-map{margin:0;padding:0 24px 24px}.capability-map>div{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);padding:14px 0;border-top:1px solid var(--separator);gap:16px;font-size:12px}.capability-map dt{color:var(--secondary);overflow-wrap:anywhere}.capability-map dd{margin:0;overflow-wrap:anywhere}.capability-map .capability-map{padding:0}.capability-map .capability-map>div{grid-template-columns:1fr;gap:5px}.capability-list{display:flex;flex-direction:column;gap:12px}.login-page{min-height:100dvh;display:grid;place-items:center;padding:28px}.login-form{width:100%;max-width:400px}.login-form>.brand-mark{margin-bottom:28px;width:44px;height:44px}.login-form h1{font-size:29px;margin-bottom:14px}.login-form>p.muted{margin-bottom:32px;font-size:13px}.login-form .field{margin-bottom:20px}.login-form>button{width:100%;margin-bottom:20px}.login-form>small{font-size:11px;line-height:1.8}.login-notice{position:fixed;inset:auto 24px 24px;background:var(--danger-bg);color:var(--danger);padding:12px 20px;border-radius:9px;font-size:12px}.mobile-menu,.sidebar-backdrop{display:none}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--surface);padding:14px;border-radius:9px}.skip-link:focus{top:16px}@media(min-width:1600px){.sidebar{width:248px}.main-column{margin-left:248px}main#main-content{padding-left:48px;padding-right:48px}}@media(max-width:1100px){.sidebar{width:205px}.main-column{margin-left:205px}main#main-content{padding:28px 24px 0}.topbar{padding-left:24px;padding-right:24px}.brand{padding-left:18px;gap:10px;font-size:16px}.stat{padding:20px}td,th{padding-left:14px;padding-right:14px}.admin-label,.timezone{display:none}}@media(max-width:780px){.sidebar{visibility:hidden;transform:translate(-100%);width:250px;transition:transform .16s ease}.sidebar.open{visibility:visible;transform:none}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:15;border:0;border-radius:0;background:#0b132c66}.sidebar-backdrop:hover{background:#0b132c66}.main-column{margin-left:0}.mobile-menu{display:inline-flex;font-size:20px}.topbar{padding:8px 16px;min-height:65px}.topbar>div{gap:10px}main#main-content{padding:28px 20px 0}.page-heading{margin-bottom:24px}h1{font-size:27px}.toolbar-spacer{display:none}.toolbar .primary{margin-left:auto}.toolbar>select{flex:1}.search-field{width:100%;flex:1 0 100%}.filter-row select{max-width:none;flex:1 0 calc(50% - 10px);min-width:0}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:20px}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--separator)}.section-heading{padding:20px}.server-row{grid-template-columns:1fr 1fr;gap:18px;padding:20px}.server-row>div:first-child{grid-column:span 2}.section-heading p{max-width:230px}.selection-bar{gap:7px;padding:10px}.selection-bar button{padding:7px 9px}.selection-bar strong{width:100%;margin-bottom:4px}.form-grid{column-gap:16px}.member-row{grid-template-columns:1fr 1fr}.member-row>button{justify-self:end}.capability-map>div{grid-template-columns:1fr;gap:8px}.setting-row{align-items:flex-start}.setting-row>span{overflow-wrap:anywhere}}@media(max-width:480px){.port-filters select{max-width:none}main#main-content{padding:24px 16px 0}.form-grid,.assignment-grid{grid-template-columns:1fr}.field.span-two{grid-column:auto}.check-field{padding-top:0}dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.dialog-body{padding:20px}.dialog-footer{padding:14px 20px}.assignment-grid fieldset{max-height:220px}.log-search{width:100%;max-width:none}.toolbar{gap:10px}.page-footer{flex-direction:column;align-items:flex-start;gap:5px}.setting-row{flex-direction:column;gap:14px}.detail-list{grid-template-columns:88px 1fr;gap:15px}.section-heading{padding:18px}.section-heading a{min-width:50px}}.carrier-card{margin:16px 0;padding:20px;border:1px solid var(--separator);border-radius:12px;min-width:0}dialog.wide[open]:has(.topology-body){max-width:1280px;height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden}dialog:has(.topology-body)>.dialog-header{flex:0 0 auto}.topology-body{padding:16px;display:flex;flex-direction:column;flex:1;gap:10px;min-height:0;min-width:0;overflow:hidden}.topology-body>.error-box{flex:0 0 auto;max-height:16dvh;overflow:auto;margin:0}.topology-toolbar,.topology-view-controls,.topology-summary,.topology-auto,.topology-zoom,.topology-legend,.topology-legend>span{display:flex;align-items:center;gap:12px}.topology-toolbar,.topology-view-controls{justify-content:space-between;flex-wrap:wrap;flex:0 0 auto;gap:8px 12px;margin:0}.topology-toolbar>div:first-child{margin-right:auto}.topology-toolbar small,.topology-observation small{display:block}.topology-auto{min-height:44px;font-size:12px;white-space:nowrap}.topology-summary{flex-wrap:wrap;gap:16px 24px;flex:0 0 auto;margin:0;font-size:13px}.topology-summary>span{display:flex;gap:8px;align-items:center}.topology-notices{flex:0 0 auto;min-height:36px;max-height:20dvh;overflow:auto;padding:8px 12px;border-left:3px solid var(--separator);background:var(--bg);border-radius:0 8px 8px 0;font-size:12px;overflow-wrap:anywhere}.topology-notices>p,.topology-notices>.error-box{margin:0}.topology-notices>p+p{margin-top:6px}.topology-observation{line-height:1.5}.topology-reason{overflow-wrap:anywhere;white-space:pre-wrap}.topology-issues{margin-top:6px}.topology-issues ul{padding-left:20px;margin:0}.topology-issues li{margin-top:4px;overflow-wrap:anywhere}.topology-issue-error strong{color:var(--danger)}.topology-issue-warning strong{color:var(--warning)}.topology-view-controls .segmented button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.topology-navigation{display:flex;align-items:center;gap:8px}.topology-view-controls .topology-pane-controls{display:none}.topology-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;border:1px solid var(--separator);border-radius:12px;flex:1;min-height:0;min-width:0;overflow:hidden}.topology-visual{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.topology-legend{padding:10px 12px;flex:0 0 auto;flex-wrap:wrap;gap:8px 20px;font-size:11px;color:var(--secondary)}.topology-legend>span{gap:6px}.topology-legend i{display:inline-block;width:24px;border-top:2px solid var(--secondary)}.topology-legend i.candidate{border-top-style:dashed}.topology-legend i.observed{border-color:var(--accent);border-width:3px}.topology-scroll{overflow:auto;min-height:0;min-width:0;flex:1;overscroll-behavior:contain}.topology-canvas-size{margin:0 auto;position:relative}.topology-canvas{position:relative;transform-origin:top left}.topology-canvas svg{position:absolute;inset:0;overflow:visible;pointer-events:none}.topology-site rect{fill:var(--surface);fill-opacity:.45;stroke:var(--separator);stroke-width:1}.topology-site text{fill:var(--secondary);font-size:12px;font-weight:600}.topology-site-transport rect{fill:var(--accent-soft);stroke:var(--accent);stroke-dasharray:6 5}.topology-site-transport text{fill:var(--accent)}.topology-location{color:var(--secondary);font-size:10px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.topology-tunnel-summary>summary{grid-column:1 / -1}.topology-tunnel-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,1.2fr) minmax(0,1fr);align-items:center;gap:8px 16px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--separator)}.topology-tunnel-summary button{text-align:left;padding:8px;min-height:64px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;overflow-wrap:anywhere;white-space:normal}.topology-tunnel-summary small,.topology-tunnel-summary span{color:var(--secondary);font-size:11px}.topology-tunnel-payload{display:flex;flex-direction:column;gap:4px;text-align:center}.topology-tunnel-payload strong{color:var(--accent);font-size:12px}.topology-tunnel-placement{grid-column:1 / -1;margin:0;color:var(--secondary)}@media(max-width:680px){.topology-tunnel-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.topology-tunnel-summary>button:last-of-type{grid-column:2;grid-row:1}.topology-tunnel-payload{padding:4px;grid-column:1 / -1;grid-row:2}}.topology-edge{fill:none;stroke:var(--secondary);stroke-width:1.5;opacity:.7}.topology-edge.candidate{stroke-dasharray:5 4}.topology-edge.observed{stroke:var(--accent);stroke-width:3;opacity:1;stroke-dasharray:none}.topology-edge-label{fill:var(--secondary);font-size:10px;paint-order:stroke;stroke:var(--bg);stroke-width:5px;stroke-linejoin:round}button.topology-vertex{position:absolute;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;padding:12px;text-align:left;white-space:normal;border-radius:10px;background:var(--surface);overflow:hidden}button.topology-vertex:hover{border-color:var(--secondary);background:var(--control-hover)}button.topology-vertex.selected{border:2px solid var(--accent);padding:11px;box-shadow:0 0 0 3px var(--accent-soft)}button.topology-vertex.has-failure:not(.selected){border-color:var(--danger)}.topology-kind{font-size:10px;font-weight:500;color:var(--secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topology-vertex strong{font-size:13px}.topology-vertex strong,.topology-vertex>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topology-vertex>small{font-size:11px;font-weight:400;color:var(--secondary)}.topology-vertex-state{margin-top:auto;font-size:10px;display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--secondary)}.topology-health.healthy{color:var(--good)}.topology-health.unhealthy{color:var(--danger)}.topology-health.unknown{color:var(--warning)}.topology-inspector{border-left:1px solid var(--separator);min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}.topology-evidence{padding:16px;min-width:0}.topology-reading{border-bottom:1px solid var(--separator);padding:0 16px;font-size:12px}.topology-reading summary{min-height:44px;align-content:center;cursor:pointer;color:var(--secondary)}.topology-reading p{margin:0 0 10px;overflow-wrap:anywhere}.topology-evidence-heading{margin-bottom:20px}.topology-evidence-heading h3{margin:4px 0;overflow-wrap:anywhere}.topology-evidence-heading .eyebrow{font-size:11px;color:var(--secondary)}.topology-evidence-heading p{font-size:12px;margin-bottom:0;overflow-wrap:anywhere}.topology-evidence .detail-list{grid-template-columns:76px minmax(0,1fr);font-size:12px;gap:10px}.topology-evidence pre{font-size:11px;max-height:300px}.topology-traffic-evidence{border-top:1px solid var(--separator);margin-top:20px;padding-top:16px}.topology-traffic-evidence h4{margin:0 0 14px;font-size:13px}.topology-traffic-evidence>p{font-size:11px;margin-bottom:8px}.topology-connection-list{padding:8px 16px;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain}.topology-connection-list>div{padding:12px 0;border-bottom:1px solid var(--separator)}.topology-connection-list>div:last-child{border-bottom:0}.topology-connection-list small{display:block;color:var(--secondary)}.topology-connection-list .topology-probe-evidence,.topology-connection-list .topology-recovery-evidence{margin-top:4px;color:var(--text)}.topology-connection-pair{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.topology-connection-pair button{white-space:normal;overflow-wrap:anywhere}@media(max-width:900px){.topology-workspace{grid-template-columns:minmax(0,1fr)}.topology-inspector{border-left:0}.topology-workspace[data-pane=map] .topology-inspector,.topology-workspace[data-pane=evidence] .topology-visual{display:none}.topology-view-controls .topology-pane-controls{display:inline-flex}.topology-view-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}.topology-view-controls>.segmented,.topology-zoom,.topology-navigation{width:max-content;max-width:100%}.topology-zoom,.topology-pane-controls{justify-self:end}.topology-view-controls button{padding-inline:10px;font-size:12px}.topology-zoom{gap:4px}.topology-zoom button{min-width:44px}.topology-zoom>span{min-width:38px;text-align:center}}@media(max-width:480px){.topology-body{padding:12px;gap:8px}.topology-toolbar>div:first-child{width:100%}.topology-toolbar{gap:8px}.topology-auto{margin-right:auto}.topology-toolbar>button{padding-inline:10px}.topology-legend{padding-inline:12px}.topology-summary{gap:8px 16px;font-size:12px}.topology-evidence{padding:16px}}.carrier-card legend{padding:0 6px;font-weight:600}.carrier-actions{align-self:center;justify-self:end}.segmented{display:inline-flex;padding:4px;gap:4px;background:var(--surface);border:1px solid var(--separator);border-radius:12px}.segmented button{background:transparent;border:0;color:var(--secondary)}.segmented button[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(forced-colors:active){.badge{border:1px solid CanvasText}.sidebar nav a.selected{outline:2px solid Highlight}}
