@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--bg: #101113;--panel: #0c0d0e;--card: #17191b;--raised: #202327;--raised-hover: #262a2e;--line: rgba(236, 237, 239, .08);--line-2: rgba(236, 237, 239, .14);--text: #ecedef;--text-2: #a6aab1;--text-3: #8a8f97;--accent: #d98a52;--accent-2: #f0b184;--on-accent: #14100c;--ok: #5fbb8e;--warn: #d9a34a;--err: #dd7272;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 14px;--r-xl: 18px;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}::selection{background:#d98a5247}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}h1,h2,h3,p{margin:0}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;font-weight:400;letter-spacing:0}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-3)}.secondary{color:var(--text-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.led{width:6px;height:6px;flex:none;align-self:center;border-radius:1px;background:var(--text-3);box-shadow:inset 0 0 0 1px #ffffff29}.led.ok{background:var(--ok)}.led.warn{background:var(--warn)}.led.err{background:var(--err)}.led.idle{background:#4a4f57}.state{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);white-space:nowrap}.tag{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-3);white-space:nowrap}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:20px 16px 16px;background:var(--panel);border-right:1px solid var(--line);z-index:40}.brand{display:flex;align-items:center;gap:10px;height:32px;padding:0 8px;margin-bottom:20px}.brand-mark{color:var(--accent);display:flex}.brand-name{font-size:15px;font-weight:600;letter-spacing:-.01em}.nav{display:flex;flex-direction:column;gap:2px}.nav-label{font-size:12px;color:var(--text-3);padding:0 10px;margin:8px 0;font-weight:500}.nav-link{position:relative;display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:var(--r-md);color:var(--text-2);font-size:13px;transition:background-color .14s var(--ease),color .14s var(--ease)}.nav-link:hover{background:#ecedef0a;color:var(--text);text-decoration:none}.nav-link.active{background:var(--raised);color:var(--text);box-shadow:inset 0 1px #ffffff0d}.nav-link.active:before{content:"";position:absolute;left:-16px;top:8px;bottom:8px;width:2px;border-radius:0 2px 2px 0;background:var(--accent)}.nav-link svg{color:var(--text-3)}.nav-link.active svg{color:var(--accent)}.sidebar-foot{margin-top:auto;display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.who{display:grid;gap:2px;padding:0 8px}.who-name{font-size:12px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.who-role{font-size:12px;color:var(--text-3)}.main{min-width:0;padding:32px 32px 96px}.content{width:100%;max-width:80rem;margin:0 auto}.nav-toggle,.sidebar .nav-close,.scrim{display:none}.shell>.nav-toggle{display:none}.sidebar .nav-close{display:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}.page-head>div:first-child{flex:1;min-width:0}.page-head h1{font-size:28px;font-weight:500;line-height:1.15;letter-spacing:-.015em}.page-head p{margin-top:8px;font-size:14px;color:var(--text-2);max-width:68ch}.page-actions{display:flex;align-items:center;gap:8px;flex:none;padding-top:4px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.card-title{font-size:14px;font-weight:500}.card-sub{font-size:12px;color:var(--text-3)}.stack{display:grid;gap:16px}.stack-lg{display:grid;gap:24px}.stats{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.3fr);gap:12px;margin-bottom:24px}.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 20px 20px;min-width:0}.stat-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-3);min-width:0}.stat-label .led{margin-top:0}.stat-value{display:flex;align-items:baseline;gap:6px;margin-top:8px;font-size:28px;font-weight:500;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-value small{font-size:14px;font-weight:400;color:var(--text-3);letter-spacing:0}.stat-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin-top:8px;font-size:12px;line-height:1.45;color:var(--text-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--raised);color:var(--text);font-family:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color .14s var(--ease),border-color .14s var(--ease),transform .12s var(--ease),color .14s var(--ease)}.btn:hover{background:var(--raised-hover);border-color:#ecedef38}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:active{transform:none}.btn-primary{background:var(--text);border-color:var(--text);color:var(--bg)}.btn-primary:hover{background:#fff;border-color:#fff}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-ghost:hover{background:#ecedef0d;border-color:transparent;color:var(--text)}.btn-danger{color:var(--err);border-color:#dd727247;background:#dd72720f}.btn-danger:hover{background:#dd72721f;border-color:#dd72726b}.btn-sm{height:28px;padding:0 10px;font-size:12px;border-radius:var(--r-sm)}.btn-icon{width:28px;height:28px;padding:0;border-radius:var(--r-sm);background:transparent;border-color:transparent;color:var(--text-3)}.btn-icon:hover{background:var(--raised);border-color:transparent;color:var(--text)}.btn-icon.danger:hover{color:var(--err);background:#dd72721a}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:separate;border-spacing:0}th{padding:10px 16px;text-align:left;font-size:12px;font-weight:500;color:var(--text-3);white-space:nowrap;border-bottom:1px solid var(--line);background:#ecedef04}td{padding:12px 16px;font-size:13px;color:var(--text-2);border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color .12s var(--ease)}tbody tr:hover td{background:#ecedef06}td strong,.cell-strong{color:var(--text);font-weight:500}th.num,td.num{text-align:right}td.actions{text-align:right;white-space:nowrap;width:1%}.cell-sub{display:block;margin-top:2px;font-size:12px;color:var(--text-3)}.row-actions{display:inline-flex;align-items:center;gap:4px;justify-content:flex-end}.route{display:inline-flex;align-items:center;gap:6px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-2)}.route .arrow{color:var(--text-3)}.table-wrap td input[type=number]{height:28px;padding:0 8px;text-align:right}.field{display:grid;gap:8px;min-width:0}.field>label,.field-label{font-size:12px;font-weight:500;color:var(--text-2)}input,select,textarea{width:100%;height:36px;padding:0 12px;background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-md);color:var(--text);font-family:inherit;font-size:13px;transition:border-color .14s var(--ease),background-color .14s var(--ease)}textarea{height:auto;padding:10px 12px;resize:vertical}input:hover,select:hover{border-color:#ecedef38}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);background:#131416;box-shadow:0 0 0 3px #d98a522e}input::placeholder{color:#5f646c}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 16px) 15px,calc(100% - 11px) 15px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);padding:0;flex:none}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hint{font-size:12px;line-height:1.55;color:var(--text-3)}.check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.check input{margin-top:3px}.check-body{display:grid;gap:2px;font-size:13px;color:var(--text-2)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:32px 24px;background:#060708b8;animation:fade .16s var(--ease)}.modal{width:min(600px,100%);background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-xl);box-shadow:0 24px 64px #0000008c;animation:rise .22s var(--ease);max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);overflow-y:auto;overscroll-behavior:contain}.modal.narrow{width:min(420px,100%)}.modal .table-wrap{border-radius:var(--r-md)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:16px;font-weight:500;letter-spacing:-.01em}.modal-body{display:grid;gap:20px;padding:24px}.modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--line)}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.toasts{position:fixed;right:24px;bottom:24px;z-index:80;display:grid;gap:8px;width:320px;max-width:calc(100vw - 48px)}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--raised);border:1px solid var(--line-2);border-radius:var(--r-md);box-shadow:0 12px 32px #00000073;font-size:13px;color:var(--text);animation:toast-in .2s var(--ease)}.toast .led{margin-top:6px}.toast-body{display:grid;gap:2px;min-width:0}.toast-title{font-weight:500}.toast-detail{color:var(--text-2);font-size:12px;word-break:break-word}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.empty{display:grid;justify-items:center;gap:8px;padding:48px 24px;text-align:center}.empty-icon{color:var(--text-3);margin-bottom:4px}.empty-title{font-size:14px;font-weight:500;color:var(--text)}.empty-body{font-size:13px;color:var(--text-3);max-width:44ch}.empty .btn{margin-top:8px}.skel{height:12px;border-radius:var(--r-xs);background:#ecedef0f}.loading-rows{display:grid;gap:12px;padding:20px 16px}.chart-card{display:grid;gap:16px}.chart{position:relative;width:100%}.chart svg{display:block;width:100%;height:auto;overflow:visible}.chart-grid{stroke:#ecedef12;stroke-width:1}.chart-axis{fill:var(--text-3);font-family:IBM Plex Mono,monospace;font-size:11px}.chart-crosshair{stroke:#ecedef38;stroke-width:1;stroke-dasharray:2 3}.chart-dot{fill:var(--card);stroke:var(--accent);stroke-width:2}.legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2)}.legend-swatch{width:10px;height:3px;border-radius:1px;background:var(--accent)}.legend-swatch.neutral{background:#4a5057}.chart-readout{display:flex;align-items:baseline;gap:12px;min-height:20px;font-size:12px;color:var(--text-3)}.chart-readout .mono{color:var(--text-2)}.overview-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px;align-items:start;margin-bottom:24px}.route-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;flex-wrap:wrap}.route-row:last-child{border-bottom:0;padding-bottom:0}.route-port{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--text);min-width:56px}.route-node{display:inline-flex;align-items:center;gap:8px;color:var(--text-2)}.route-node b{font-weight:500;color:var(--text)}.route-spacer{flex:1}.health-row{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 0;border-bottom:1px solid var(--line)}.health-row:first-of-type{padding-top:0}.health-row:last-of-type{border-bottom:0;padding-bottom:0}.health-name{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);min-width:0}.health-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-meta{display:flex;align-items:baseline;gap:8px;font-size:12px;color:var(--text-3)}.health-bar{grid-column:1 / -1;height:3px;border-radius:1px;background:#ecedef12;overflow:hidden}.health-bar>span{display:block;height:100%;background:var(--accent);transition:width .4s var(--ease)}.health-bar.dim>span{background:#4a5057}.switch{position:relative;width:32px;height:18px;flex:none;padding:0;border-radius:9px;border:1px solid var(--line-2);background:var(--raised);font-size:0;cursor:pointer;transition:background-color .14s var(--ease),border-color .14s var(--ease)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:6px;background:var(--text-3);transition:transform .16s var(--ease),background-color .14s var(--ease)}.switch[aria-checked=true]{background:#d98a522e;border-color:#d98a5273}.switch[aria-checked=true]:after{transform:translate(14px);background:var(--accent)}.switch:disabled{opacity:.45;cursor:not-allowed}.alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--r-md);border:1px solid rgba(221,114,114,.28);background:#dd727214;color:#f0c9c9;font-size:13px}.alert .led{margin-top:6px}.notice{display:flex;align-items:flex-start;gap:10px;padding:14px;border-radius:var(--r-md);border:1px solid rgba(217,163,74,.3);background:#d9a34a12;font-size:13px;line-height:1.55;color:var(--text-2)}.notice>:last-child{min-width:0;max-width:52ch}.notice .led{margin-top:6px}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.login-panel{position:relative;display:flex;flex-direction:column;padding:40px;background:var(--panel);border-right:1px solid var(--line);overflow:hidden}.login-panel .brand{margin:0;padding:0}.login-panel-body{margin:auto 0;display:grid;gap:40px;padding:48px 0;max-width:640px}.login-panel-copy{display:grid;gap:12px}.login-panel-copy h2{font-size:22px;font-weight:500;line-height:1.25;letter-spacing:-.015em}.login-panel-copy p{font-size:13px;line-height:1.65;color:var(--text-2)}.login-foot{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-3)}.login-form-wrap{display:grid;place-items:center;padding:40px 24px}.login-form{width:100%;max-width:360px;display:grid;gap:20px}.login-mobile-brand{display:none}.login-form h1{font-size:22px;font-weight:500;letter-spacing:-.015em}.login-form .sub{font-size:13px;color:var(--text-2);margin-top:8px}.login-form .btn{height:40px;margin-top:4px}.patch{width:100%;height:auto;color:var(--text-3)}.patch-label{fill:var(--text-3);font-family:IBM Plex Mono,monospace;font-size:11px}.patch-value{fill:var(--text);font-family:IBM Plex Mono,monospace;font-size:13px}@media(max-width:760px){.table-responsive,.table-responsive tbody{display:block}.table-responsive thead{display:none}.table-responsive tbody tr{display:grid;gap:8px;padding:16px;border-bottom:1px solid var(--line)}.table-responsive tbody tr:last-child{border-bottom:0}.table-responsive tbody td{display:flex;align-items:baseline;gap:12px;padding:0;border:0;min-width:0;font-size:13px}.table-responsive tbody td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:12px;color:var(--text-3)}.table-responsive tbody td.cell-title{display:block;font-size:14px;color:var(--text);font-weight:500}.table-responsive tbody td.cell-title:before{content:none}.table-responsive tbody td.actions{width:auto;justify-content:flex-start;padding-top:8px}.table-responsive tbody td.num,.table-responsive tbody th.num{text-align:left}.table-responsive tbody td.actions .row-actions{flex-wrap:wrap}.table-responsive tbody td.actions .row-actions{gap:8px}.table-responsive tbody td.actions .btn-icon{background:var(--raised);border-color:var(--line);color:var(--text-2)}}@media(max-width:1180px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:minmax(0,1fr)!important}}@media(max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:280px;height:100%;transform:translate(-100%);transition:transform .22s var(--ease);border-right:1px solid var(--line-2);box-shadow:24px 0 64px #0006}.sidebar.open{transform:none}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;background:#06070899;border:0;padding:0;animation:fade .16s var(--ease)}.main{padding:20px 16px 72px}.nav-toggle{display:inline-flex;position:fixed;top:16px;left:16px;z-index:30}.sidebar .nav-close{display:inline-flex;position:absolute;top:16px;right:12px}.shell>.nav-toggle{display:inline-flex}.topbar{display:flex;align-items:center;gap:10px;height:28px;margin-bottom:20px;padding-left:44px}.topbar .brand{margin:0;padding:0}.page-head{flex-direction:column;gap:16px}.page-head h1{font-size:24px}.page-actions{padding-top:0;width:100%}.field-grid{grid-template-columns:minmax(0,1fr)}.col-optional{display:none}.login{grid-template-columns:minmax(0,1fr)}.login-panel{display:none}.login-mobile-brand{display:flex}}@media(min-width:961px){.topbar{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.field-search{display:flex;align-items:center;gap:8px;flex:1 1 240px;min-width:0;height:36px;padding:0 12px;background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-md);color:var(--text-3);transition:border-color .14s var(--ease)}.field-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #d98a522e}.field-search input{flex:1;min-width:0;height:34px;padding:0;background:none;border:0;border-radius:0;box-shadow:none}.field-search input:focus{border:0;box-shadow:none;background:none}.filter-select{width:auto;min-width:136px;flex:0 0 auto;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237a8087' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.segmented{display:inline-flex;padding:2px;gap:2px;background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-md)}.seg{height:30px;padding:0 10px;border:0;border-radius:var(--r-sm);background:none;color:var(--text-3);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .14s var(--ease),color .14s var(--ease)}.seg:hover{color:var(--text-2)}.seg.active{background:var(--raised);color:var(--text)}.filter-tail{display:flex;align-items:center;gap:12px;margin-left:auto;min-height:36px;font-size:12px;color:var(--text-3)}.live-tag{display:inline-flex;align-items:center;gap:6px;color:var(--text-2)}.filter-count{font-size:12px;color:var(--text-3)}.filter-count.bad{color:var(--warn)}.new-rows{position:sticky;top:12px;z-index:4;display:flex;align-items:center;gap:8px;margin:0 auto 12px;padding:8px 14px;background:var(--raised);border:1px solid var(--line-2);border-radius:999px;color:var(--text);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;box-shadow:0 8px 24px #00000059}.new-rows svg{transform:rotate(-90deg)}.new-rows:hover{background:var(--raised-hover)}.access-wrap{max-height:calc(100vh - 264px);min-height:320px;overflow:auto}.access-wrap thead th{position:sticky;top:0;z-index:2;background:var(--card)}.access-table tbody tr.row-click{cursor:pointer}.access-table tbody tr.row-click:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.access-table tbody tr.row-bad td:first-child{box-shadow:inset 2px 0 0 var(--err)}.cell-muted{color:var(--text-3)!important}.cell-target{max-width:220px;min-width:0}.target-host{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.method{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--text-2)}.egress{display:inline-flex;align-items:center;gap:6px}.egress svg{color:var(--text-3)}.table-loading{display:grid;gap:16px;padding:24px 16px}.kv{display:grid;gap:2px}.kv-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--line);min-width:0}.kv-row:last-child{border-bottom:0}.kv-key{flex:none;font-size:12px;color:var(--text-3)}.kv-val{min-width:0;text-align:right;font-size:13px;color:var(--text)}.kv-val.mono{font-family:IBM Plex Mono,monospace;font-size:12px}.kv-val.wrap{text-align:left;overflow-wrap:anywhere;color:var(--text-2)}.kv-val.err{color:var(--err)}.mini-feed{display:grid;gap:2px}.mini-row{display:grid;grid-template-columns:84px 128px minmax(0,1fr) 110px 84px 104px;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px;min-width:0}.mini-row:last-child{border-bottom:0}.mini-row>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-feed.compact .mini-row{grid-template-columns:84px 120px minmax(0,1fr) 104px}.dot-sep{width:3px;height:3px;border-radius:50%;background:var(--text-3);flex:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stats-4{grid-template-columns:repeat(4,minmax(0,1fr))}.system-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.system-grid-bottom{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.chart-card{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.legend{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--text-3)}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:8px;height:8px;border-radius:2px;background:var(--text-3)}.swatch.allowed{background:var(--text-3);opacity:.7}.swatch.err{background:var(--err)}.bars{display:flex;align-items:flex-end;gap:3px;height:200px;padding:0 0 22px;position:relative;background:linear-gradient(var(--line),var(--line)) bottom left / 100% 1px no-repeat}.bar-slot{position:relative;flex:1 1 0;min-width:3px;height:100%;display:flex;align-items:flex-end}.bar-stack{width:100%;height:100%;display:flex;align-items:flex-end}.bars-wrap{position:relative}.bar{position:relative;display:flex;flex-direction:column;width:100%;border-radius:2px 2px 0 0;overflow:hidden;background:var(--raised);transition:background-color .12s var(--ease)}.bar-slot:hover .bar{background:var(--raised-hover)}.bar-ok{width:100%;background:var(--text-3);opacity:.7}.bar-fail{width:100%;background:var(--err)}.bars-empty{position:absolute;top:0;right:0;bottom:22px;left:0;display:grid;place-items:center;margin:0;font-size:12px;color:var(--text-3);pointer-events:none}.bar-label{position:absolute;bottom:-18px;left:0;font-size:11px;color:var(--text-3)}.chart-foot{display:flex;align-items:center;gap:16px;margin-top:8px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--text-3)}.chart-foot .mono:first-child{color:var(--text-2)}.inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}.fact{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);min-width:0}.fact-key{font-size:12px;color:var(--text-3)}.fact-val{font-size:14px;color:var(--text);font-variant-numeric:tabular-nums}.detail-block{display:grid;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.sample-strip{display:flex;align-items:flex-end;gap:2px;height:28px}.sample{flex:1;border-radius:1px;min-height:8px;height:100%;background:var(--raised)}.sample.ok{background:var(--ok);opacity:.55}.sample.err{background:var(--err)}.state-wrap{display:inline-grid;gap:2px}@media(max-width:1180px){.system-grid,.system-grid-bottom{grid-template-columns:minmax(0,1fr)}.stats-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.filter-bar{gap:8px}.filter-tail{margin-left:0;width:100%;justify-content:space-between}.access-wrap{max-height:none;min-height:0;overflow:visible}.mini-row{grid-template-columns:72px minmax(0,1fr) 92px;gap:8px}.mini-row>:nth-child(n+4){display:none}.mini-feed.compact .mini-row{grid-template-columns:72px minmax(0,1fr) 92px}.mini-feed.compact .mini-row>:nth-child(3){display:none}}@media(max-width:760px){.access-wrap{background:transparent;border:0}.access-table tbody tr{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:8px;background:var(--card)}.access-table tbody td[data-label]:before{flex:0 0 72px}.access-table tbody tr.row-bad td:first-child{box-shadow:none}.access-table tbody tr.row-bad{box-shadow:inset 0 2px 0 var(--err)}.cell-target{max-width:none}.stats-4{grid-template-columns:minmax(0,1fr)}.segmented{order:4;width:100%}.segmented .seg{flex:1}.filter-tail{order:3}.filter-select{flex:1 1 136px;min-width:0}.bars{height:148px}.chart-foot{flex-wrap:wrap;gap:8px 16px}.kv-row{align-items:flex-start}.kv-val{text-align:left;overflow-wrap:anywhere}}
