.layout{display:grid;grid-template-columns:244px 1fr;height:100%;min-height:100%}.sidebar{display:flex;flex-direction:column;background:#141922;border-right:1px solid #212836;min-height:0}.sidebar__brand{display:flex;align-items:center;gap:10px;height:56px;padding:0 16px;border-bottom:1px solid #212836;flex:none}.sidebar__logo{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#3987e524;color:#3987e5;flex:none}.sidebar__brand-text{font-size:14px;line-height:1.1}.sidebar__brand-text b{font-weight:700;color:#e6ebf3}.sidebar__brand-text span{color:#6b7688;font-weight:400}.sidebar__close{display:none;margin-left:auto;color:#9aa7b8;padding:4px}.sidebar__close:hover{color:#e6ebf3}.sidebar__nav{display:flex;flex-direction:column;gap:2px;padding:12px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#2f3a49 transparent}.sidebar__nav::-webkit-scrollbar{width:10px;height:10px}.sidebar__nav::-webkit-scrollbar-thumb{background:#2f3a49;border-radius:999px;border:2px solid transparent;background-clip:content-box}.sidebar__nav::-webkit-scrollbar-thumb:hover{background:#435368;background-clip:content-box}.sidebar__link{display:flex;align-items:center;gap:12px;height:38px;padding:0 12px;border-radius:8px;color:#9aa7b8;font-size:14px;font-weight:500;transition:background .14s cubic-bezier(.4,0,.2,1),color .14s cubic-bezier(.4,0,.2,1)}.sidebar__link-icon{color:#6b7688;transition:color .14s cubic-bezier(.4,0,.2,1);flex:none}.sidebar__link:hover{background:#1c2431;color:#e6ebf3}.sidebar__link:hover .sidebar__link-icon{color:#9aa7b8}.sidebar__link.is-active{background:#3987e524;color:#5598e7}.sidebar__link.is-active .sidebar__link-icon{color:#3987e5}.sidebar__foot{flex:none;padding:12px;border-top:1px solid #212836;display:flex;flex-direction:column;gap:8px}.sidebar__user{display:flex;align-items:center;gap:10px;padding:4px}.sidebar__avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#3987e5;color:#fff;font-weight:700;font-size:14px;flex:none}.sidebar__user-meta{line-height:1.2;min-width:0}.sidebar__user-meta b{color:#e6ebf3;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__user-meta span{color:#6b7688;font-size:11px}.sidebar__logout{width:100%;justify-content:center}.main{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{display:flex;align-items:center;gap:12px;height:56px;flex:none;padding:0 20px;border-bottom:1px solid #212836;background:#0b0e14cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.topbar__menu{display:none;color:#9aa7b8;padding:4px}.topbar__menu:hover{color:#e6ebf3}.topbar__titles{min-width:0}.topbar__titles h1{font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__titles p{font-size:11px;color:#6b7688;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2f3a49 transparent}.content::-webkit-scrollbar{width:10px;height:10px}.content::-webkit-scrollbar-thumb{background:#2f3a49;border-radius:999px;border:2px solid transparent;background-clip:content-box}.content::-webkit-scrollbar-thumb:hover{background:#435368;background-clip:content-box}.content__inner{max-width:1600px;margin:0 auto;padding:24px 20px 40px}.layout__scrim{display:none}@media(max-width:899px){.layout{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(84vw,284px);z-index:40;transform:translate(-100%);transition:transform .2s cubic-bezier(.4,0,.2,1);box-shadow:0 12px 40px #0000008c}.layout--drawer .sidebar{transform:translate(0)}.sidebar__close,.topbar__menu{display:block}.layout--drawer .layout__scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0000008c}.content__inner{padding:16px 16px 32px}}.spinner{display:inline-block;border-radius:50%;border:2px solid #2f3a49;border-top-color:#3987e5;animation:spinner-rot .7s linear infinite}@keyframes spinner-rot{to{transform:rotate(360deg)}}.state-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;padding:32px 16px;text-align:center;color:#6b7688;font-size:12px}.state-block__icon{font-size:30px;line-height:1;color:#4a5361}.state-block__title{color:#9aa7b8;font-size:14px;font-weight:600}.state-block p{max-width:42ch}.state-block--error .state-block__icon{color:#d03b3b}.state-block .btn{margin-top:8px}.y2k{font-family:Comic Sans MS,Comic Sans,Chalkboard,cursive;min-height:100vh;width:100%;box-sizing:border-box;padding:24px 12px 48px;overflow-x:hidden;color:navy;text-align:center;background-color:teal;background-image:repeating-linear-gradient(45deg,#ff00ff40 0,#ff00ff40 20px,#00ffff40 20px,#00ffff40 40px),conic-gradient(from 0deg,#f0f,#0ff,#ff0,#0f0,red,#f0f),linear-gradient(#ffffff 25%,transparent 25%,transparent 75%,#ffffff 75%);background-size:56px 56px,220px 220px,40px 40px;background-blend-mode:overlay,normal,normal;animation:y2k-rainbow 8s linear infinite}.y2k *,.y2k *:before,.y2k *:after{box-sizing:border-box}@keyframes y2k-rainbow{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.y2k__marquee{max-width:100%;overflow:hidden;white-space:nowrap;background:#000;color:#0f0;border:4px ridge #ffff00;padding:6px 0;margin-bottom:20px;font-weight:700}.y2k__marquee-track{display:inline-block;padding-left:100%;animation:y2k-scroll 22s linear infinite}@keyframes y2k-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.y2k__card{max-width:560px;margin:0 auto;background:silver;border:6px outset #ffffff;border-radius:6px;padding:20px 18px 24px;box-shadow:0 0 0 4px #f0f,0 0 0 8px #0ff,8px 8px #00000080}.y2k__wordart{font-size:30px;line-height:1.15;font-weight:700;margin:4px 0 14px;letter-spacing:1px;transform:rotate(-2deg);background:linear-gradient(90deg,red,#ff8000,#ff0,#0f0,#0ff,#00f,#f0f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:2px 2px 0 #000000,-1px -1px 0 #ffffff;animation:y2k-wobble 3s ease-in-out infinite}@keyframes y2k-wobble{0%,to{transform:rotate(-2deg) scale(1)}50%{transform:rotate(2deg) scale(1.03)}}.y2k__blink{font-size:20px;font-weight:700;color:red;margin:8px 0;animation:y2k-blink 1s steps(1) infinite}@keyframes y2k-blink{50%{visibility:hidden}}.y2k__construction{margin:12px 0;padding:8px 4px;font-weight:700;font-size:15px;color:#000;text-shadow:1px 1px 0 #ffffff;border:3px dashed #000000;background:repeating-linear-gradient(45deg,#ff0 0,#ff0 18px,#000 18px,#000 36px);background-color:#ff0;background-blend-mode:normal}.y2k__tagline{font-size:15px;color:purple;margin:14px 6px;font-weight:700}.y2k__login{font-family:inherit;display:inline-block;width:100%;max-width:480px;margin:10px auto;padding:18px 16px;font-size:20px;font-weight:700;color:navy;cursor:pointer;background:linear-gradient(#ff6,#fc0);border:8px outset #ffff00;border-radius:4px;text-shadow:1px 1px 0 #ffffff;box-shadow:4px 4px #0006}.y2k__login:hover:not(:disabled){background:linear-gradient(#ffa,#fd3)}.y2k__login:active:not(:disabled){border-style:inset;box-shadow:none;transform:translate(2px,2px)}.y2k__login:focus-visible{outline:4px dashed #ff00ff;outline-offset:3px}.y2k__login:disabled{cursor:progress;color:#333;background:linear-gradient(#ddd,#aaa);border-color:#999}.y2k__login-busy{display:inline-block;animation:y2k-pulse .8s ease-in-out infinite}@keyframes y2k-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.6}}.y2k__nosupport{margin:12px 0;padding:12px;font-weight:700;color:navy;background:#ffc;border:4px ridge #ff00ff;border-radius:4px;line-height:1.6}.y2k__alert{margin:16px 0;padding:12px 14px;font-weight:700;font-size:16px;color:#fff;background:red;border:5px outset #ff6666;border-radius:4px;text-shadow:1px 1px 0 #660000;box-shadow:0 0 12px red}.y2k__alert-icon{margin-right:6px}.y2k__counter{margin:18px 0 8px;font-weight:700;color:navy}.y2k__counter-label{margin-right:8px}.y2k__odometer{display:inline-flex;gap:2px;vertical-align:middle}.y2k__digit{font-family:Courier New,monospace;display:inline-block;min-width:20px;padding:3px 4px;background:#000;color:#0f0;border:2px inset #444444;font-size:18px;font-weight:700}.y2k__webring{margin:14px 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-weight:700}.y2k__ring-link{display:inline-block;padding:4px 10px;background:#00f;color:#ff0;border:3px outset #6666ff;border-radius:3px;cursor:pointer}.y2k__ring-sep{color:purple}.y2k__stars{font-size:20px;margin:10px 0;letter-spacing:4px}.y2k__marquee--rev{margin-top:20px;margin-bottom:0;color:#f0f;border-color:#0ff}.y2k__marquee-track--rev{animation-direction:reverse;animation-duration:27s}.y2k__banner{max-width:760px;margin:0 auto 18px;padding:10px 12px;font-weight:700;font-size:15px;color:#ff0;text-shadow:1px 1px 0 #000000;border:4px ridge #ffff00;border-radius:4px;background:linear-gradient(90deg,red,#ff8000,red);background-size:200% 100%;animation:y2k-banner 3s linear infinite}@keyframes y2k-banner{to{background-position:200% 0}}.y2k__nowplaying{display:inline-flex;align-items:center;gap:8px;margin:16px auto 6px;padding:6px 12px;font-weight:700;font-size:13px;color:#0f6;background:#000;border:3px inset #006633;border-radius:3px}.y2k__eq{display:inline-flex;align-items:flex-end;gap:2px;height:14px}.y2k__eq i{display:block;width:3px;height:100%;background:#0f6;animation:y2k-eq .6s ease-in-out infinite}.y2k__eq i:nth-child(2){animation-delay:.15s}.y2k__eq i:nth-child(3){animation-delay:.3s}.y2k__eq i:nth-child(4){animation-delay:.45s}.y2k__eq i:nth-child(5){animation-delay:.1s}@keyframes y2k-eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.y2k__weather{margin:10px auto;padding:6px 12px;display:inline-block;font-size:13px;font-weight:700;color:#036;background:linear-gradient(#cfefff,#9cf);border:3px outset #99ccff;border-radius:4px}.y2k__weather i{color:#369;font-weight:400}.y2k__ticker{max-width:100%;overflow:hidden;white-space:nowrap;margin:12px 0;padding:5px 0;background:#1a0f00;border:3px ridge #ff9900;border-radius:3px;color:#ffb000;font-family:Courier New,monospace;font-weight:700;font-size:13px;text-shadow:0 0 4px #ff9900}.y2k__ticker-track{display:inline-block;padding-left:100%;animation:y2k-scroll 18s linear infinite}.y2k__awards{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:16px 0}.y2k__award{padding:4px 8px;font-size:11px;font-weight:700;border-radius:3px;border:2px outset;text-shadow:1px 1px 0 rgba(0,0,0,.4)}.y2k__award--ns{background:#006;color:#fff;border-color:#33a}.y2k__award--best{background:#fff;color:navy;border-color:#ccc}.y2k__award--y2k{background:red;color:#ff0;border-color:#f66}.y2k__award--np{background:silver;color:#000;border-color:#fff}.y2k__award--html{background:#fc0;color:#630;border-color:#fd6}.y2k__guestbook{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0}.y2k__gb-link{display:inline-block;padding:4px 10px;font-weight:700;font-size:12px;color:#fff;background:#c06;border:3px outset #ff3399;border-radius:3px;cursor:pointer}.y2k__gb-link:hover{background:#ff0080}.y2k__divider{margin:20px 0 12px;color:purple;font-weight:700;letter-spacing:2px}.y2k__toggle{font-family:inherit;display:inline-block;padding:8px 14px;font-size:15px;font-weight:700;color:#ff0;background:#00c;border:4px outset #6666ff;border-radius:3px;cursor:pointer;text-shadow:1px 1px 0 #000000}.y2k__toggle:hover{background:#00f}.y2k__toggle:active{border-style:inset;transform:translate(1px,1px)}.y2k__toggle:focus-visible{outline:3px dashed #ff00ff;outline-offset:2px}.y2k__register{margin:14px 0 6px;padding:16px 14px;text-align:left;background:#cfc;border:5px ridge #00cc00;border-radius:5px;box-shadow:inset 0 0 0 3px #fff}.y2k__reg-title{text-align:center;font-size:20px;font-weight:700;margin:0 0 10px;color:#c06;text-shadow:1px 1px 0 #ffffff;animation:y2k-blink 1.6s steps(1) infinite}.y2k__reg-intro{font-size:13px;line-height:1.5;color:#040;margin:0 0 14px}.y2k__field{display:block;margin:0 0 12px}.y2k__field-label{display:block;font-weight:700;color:navy;margin-bottom:4px}.y2k__input{font-family:Courier New,monospace;width:100%;padding:10px;font-size:16px;color:#000;background:#fff;border:3px inset #808080;border-radius:2px}.y2k__input:focus{outline:3px dashed #ff00ff;outline-offset:1px}.y2k__input:disabled{background:#ddd;color:#777}.y2k__login--reg{background:linear-gradient(#9f9,#3c3);border-color:#6f6;color:#030}.y2k__login--reg:hover:not(:disabled){background:linear-gradient(#bfb,#5d5)}.y2k__login--copy{background:linear-gradient(#9ff,#3cc);border-color:#6ff;color:#033;font-size:16px;padding:12px 14px}.y2k__login--copy:hover:not(:disabled){background:linear-gradient(#bff,#5dd)}.y2k__enroll{margin-top:14px}.y2k__enroll-ok{font-weight:700;color:#070;margin:0 0 8px;animation:y2k-pulse 1s ease-in-out infinite}.y2k__enrollment{font-family:Courier New,monospace;width:100%;padding:8px;font-size:11px;line-height:1.4;color:#0f0;background:#000;border:3px inset #444444;border-radius:2px;resize:vertical;word-break:break-all;white-space:pre-wrap}.y2k__reg-tip{margin:12px 0 0;padding:8px 10px;font-size:12px;line-height:1.5;color:#630;background:#ffc;border:2px dashed #cc9900;border-radius:3px}.y2k__footer{margin-top:16px;font-size:12px;color:navy;border-top:2px groove #808080;padding-top:8px}@media(prefers-reduced-motion:reduce){.y2k,.y2k__marquee-track,.y2k__wordart,.y2k__blink,.y2k__login-busy,.y2k__reg-title,.y2k__enroll-ok,.y2k__banner,.y2k__ticker-track,.y2k__eq i{animation:none}.y2k__blink,.y2k__reg-title{visibility:visible}}@media(max-width:600px){.y2k__wordart{font-size:22px}.y2k__login{font-size:16px;padding:14px 10px}}.card{background:#141922;border:1px solid #212836;border-radius:12px;display:flex;flex-direction:column;min-width:0;box-shadow:0 1px 2px #0006}.card--span{grid-column:1 / -1}.card__head{display:flex;align-items:center;gap:12px;padding:16px 16px 0}.card__titles{min-width:0;flex:1}.card__title{font-size:14px;font-weight:600;color:#e6ebf3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card__subtitle{font-size:11px;color:#6b7688;margin-top:2px}.card__actions{flex:none;display:flex;align-items:center;gap:8px}.card__body{padding:16px;flex:1;min-width:0}.card--flush .card__body{padding:0}.card__foot{padding:12px 16px;border-top:1px solid #212836;color:#6b7688;font-size:11px}.stat{background:#141922;border:1px solid #212836;border-radius:12px;position:relative;padding:16px;display:flex;flex-direction:column;gap:8px;min-width:0;overflow:hidden}.stat:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:transparent}.stat--good:before{background:#0ca30c}.stat--warning:before{background:#fab219}.stat--serious:before{background:#ec835a}.stat--critical:before{background:#d03b3b}.stat__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat__label{display:flex;align-items:center;gap:8px;color:#9aa7b8;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat__icon{color:#6b7688;font-size:12px}.stat__value{display:flex;align-items:baseline;gap:6px;font-size:26px;font-weight:600;color:#e6ebf3;line-height:1.1;font-variant-numeric:tabular-nums}.stat__unit{font-size:14px;font-weight:500;color:#6b7688}.stat__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;min-height:26px}.stat__hint{color:#6b7688;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat__spark{flex:none;margin-left:auto}.dtable-wrap{width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#2f3a49 transparent}.dtable-wrap::-webkit-scrollbar{width:10px;height:10px}.dtable-wrap::-webkit-scrollbar-thumb{background:#2f3a49;border-radius:999px;border:2px solid transparent;background-clip:content-box}.dtable-wrap::-webkit-scrollbar-thumb:hover{background:#435368;background-clip:content-box}.dtable{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.dtable thead th{position:sticky;top:0;background:#141922;z-index:1;color:#6b7688;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:12px;border-bottom:1px solid #2f3a49;white-space:nowrap;-webkit-user-select:none;user-select:none}.dtable thead:not(.dtable--sticky) th{position:static}.dtable__th-inner{display:inline-flex;align-items:center;gap:6px}.dtable__sortable{cursor:pointer}.dtable__sortable:hover,.dtable__sorted{color:#9aa7b8}.dtable__caret{font-size:9px;opacity:.7}.dtable tbody td{padding:12px;border-bottom:1px solid #212836;color:#e6ebf3;vertical-align:middle}.dtable tbody tr:last-child td{border-bottom:none}.dtable tbody tr[data-clickable]{cursor:pointer}.dtable tbody tr:hover{background:#1c2431}.dtable__mono{font-family:JetBrains Mono,SF Mono,Cascadia Code,ui-monospace,Consolas,Courier New,monospace;font-variant-numeric:tabular-nums;font-size:11px}.dtable--compact thead th,.dtable--compact tbody td{padding:8px 12px}.dtable__empty td{text-align:center;color:#6b7688;padding:32px 16px!important}.dtable tr.row-danger td{background:#d03b3b14}.dtable tr.row-warn td{background:#fab21912}.range-seg{display:inline-flex;padding:3px;gap:2px;background:#10151d;border:1px solid #212836;border-radius:8px}.range-seg__btn{height:26px;padding:0 12px;border-radius:5px;font-size:11px;font-weight:500;color:#9aa7b8;transition:background .14s cubic-bezier(.4,0,.2,1),color .14s cubic-bezier(.4,0,.2,1);font-variant-numeric:tabular-nums}.range-seg__btn:hover{color:#e6ebf3}.range-seg__btn.is-active{background:#3987e5;color:#fff;box-shadow:0 1px 2px #0006}.range-seg__btn:focus-visible{outline:none;box-shadow:0 0 0 2px #0b0e14,0 0 0 4px #3987e5}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.last-updated{color:#6b7688;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}@media(max-width:640px){.refresh-btn__label{display:none}}.live-dot{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:500;color:#0ca30c;text-transform:uppercase;letter-spacing:.04em}.live-dot__pulse{position:relative;width:8px;height:8px;border-radius:50%;background:#0ca30c}.live-dot__pulse:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#0ca30c;animation:live-pulse 1.8s cubic-bezier(.4,0,.2,1) infinite}@keyframes live-pulse{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(3);opacity:0}}.city-sel{display:inline-flex;align-items:center;gap:8px}.city-sel__label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#6b7688;font-weight:500}.city-sel__control{position:relative;display:inline-flex;align-items:center}.city-sel__control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:32px;padding:0 24px 0 12px;border-radius:8px;background:#10151d;border:1px solid #212836;color:#e6ebf3;font-size:12px;font-weight:500;cursor:pointer;transition:border-color .14s cubic-bezier(.4,0,.2,1)}.city-sel__control select:hover{border-color:#2f3a49}.city-sel__control select:focus-visible{outline:none;box-shadow:0 0 0 2px #0b0e14,0 0 0 4px #3987e5}.city-sel__control select:disabled{opacity:.5;cursor:default}.city-sel__control select option{background:#1c2431;color:#e6ebf3}.city-sel__caret{position:absolute;right:10px;pointer-events:none;font-size:10px;color:#6b7688}.feed-bar{position:relative;width:100%;height:8px;border-radius:999px;background:#10151d;overflow:hidden}.feed-bar__track,.feed-bar__fill{position:absolute;top:0;left:0;height:100%;width:var(--w, 0%);border-radius:999px}.feed-bar__track{background:#2f3a49}.feed-bar__fill{background:#3987e5}.row-warn td{background:#fab21929}.row-danger td{background:#d03b3b29}.odheat{display:flex;flex-direction:column;gap:12px;padding:16px}.odheat__canvas-wrap{width:100%}.odheat__canvas{display:block;width:100%;background:#0e131b;border:1px solid #212836;border-radius:8px}.odheat__legend{display:flex;align-items:center;gap:8px;font-size:11px;color:#6b7688}.odheat__bar{flex:1;height:8px;border-radius:999px;background:linear-gradient(90deg,#0d366b,#184f95,#256abf,#3987e5,#6da7ec,#9ec5f4,#7fdcff)}.odheat__caption{color:#6b7688;font-size:11px;font-variant-numeric:tabular-nums}.size-cell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:64px}.size-cell__val{font-variant-numeric:tabular-nums}.size-bar{display:block;width:100%;height:3px;border-radius:999px;background:#1c2431;overflow:hidden;position:relative}.size-bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w, 0%);background:#3987e5;border-radius:inherit}.compile-city__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compile-city__stat{display:flex;flex-direction:column;gap:2px}.compile-city__label{font-size:11px;color:#6b7688}.compile-city__num{font-size:16px;font-weight:600;color:#e6ebf3;font-variant-numeric:tabular-nums}.compile-city__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #212836}.workers__note{margin:8px 0 0;color:#6b7688;font-size:11px}:root{--surface-0: #0b0e14;--surface-1: #141922;--surface-2: #1c2431;--surface-3: #10151d;--border: #212836;--border-strong: #2f3a49;--text-primary: #e6ebf3;--text-secondary: #9aa7b8;--text-muted: #6b7688;--accent: #3987e5;--accent-hover: #5598e7;--accent-2: #199e70;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--grid: #212836;--axis: #2f3a49;--series-1: #3987e5;--series-2: #199e70;--series-3: #c98500;--series-4: #008300;--series-5: #9085e9;--series-6: #e66767;--series-7: #d55181;--series-8: #d95926;--font-sans: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", ui-monospace, "Consolas", "Courier New", monospace}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg,canvas,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}table{border-collapse:collapse;border-spacing:0}:focus-visible{outline:none}.uplot{font-family:Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;width:100%}.u-wrap{position:relative}.u-title{font-size:12px;font-weight:600;color:#9aa7b8}.u-cursor-x,.u-cursor-y{border-color:#2f3a49!important}.u-cursor-pt{box-shadow:0 0 0 2px #141922}.u-select{background:#3987e51f;border:1px solid rgba(57,135,229,.5)}.u-legend{font-size:11px;color:#9aa7b8;margin-top:8px;font-variant-numeric:tabular-nums}.u-legend .u-marker{border-radius:2px}.u-legend .u-label{color:#9aa7b8}.u-legend th,.u-legend td{padding:1px 6px}.u-legend .u-off{opacity:.35}.u-legend .u-value{color:#e6ebf3;font-weight:500}.uplot-tooltip{position:absolute;z-index:20;pointer-events:none;min-width:130px;padding:8px 12px;border-radius:8px;background:#0b0e14f5;border:1px solid #2f3a49;box-shadow:0 4px 16px #00000073;font-size:11px;color:#e6ebf3;transform:translate(12px,12px);transition:opacity .14s cubic-bezier(.4,0,.2,1);font-variant-numeric:tabular-nums}.uplot-tooltip__time{color:#6b7688;font-family:JetBrains Mono,SF Mono,Cascadia Code,ui-monospace,Consolas,Courier New,monospace;margin-bottom:6px;white-space:nowrap}.uplot-tooltip__row{display:flex;align-items:center;gap:8px;line-height:1.7}.uplot-tooltip__swatch{width:9px;height:9px;border-radius:2px;flex:none}.uplot-tooltip__label{color:#9aa7b8;margin-right:auto}.uplot-tooltip__val{font-weight:600}html{color-scheme:dark}body{font-family:Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;font-size:13px;line-height:1.5;color:#e6ebf3;background:#0b0e14;scrollbar-width:thin;scrollbar-color:#2f3a49 transparent}body::-webkit-scrollbar{width:10px;height:10px}body::-webkit-scrollbar-thumb{background:#2f3a49;border-radius:999px;border:2px solid transparent;background-clip:content-box}body::-webkit-scrollbar-thumb:hover{background:#435368;background-clip:content-box}h1,h2,h3,h4{font-weight:600;line-height:1.25;color:#e6ebf3}code,kbd,samp{font-family:JetBrains Mono,SF Mono,Cascadia Code,ui-monospace,Consolas,Courier New,monospace;font-size:.92em}::selection{background:#3987e524;color:#e6ebf3}.view-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.view-header h1{font-size:20px;letter-spacing:-.01em}.view-header p{color:#9aa7b8;font-size:12px;margin-top:2px}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(var(--min, 260px),1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 16px;border-radius:8px;border:1px solid #2f3a49;background:#1c2431;color:#e6ebf3;font-size:12px;font-weight:500;transition:background .14s cubic-bezier(.4,0,.2,1),border-color .14s cubic-bezier(.4,0,.2,1),color .14s cubic-bezier(.4,0,.2,1)}.btn:hover{background:#232e3e;border-color:#3f4e62}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px #0b0e14,0 0 0 4px #3987e5}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:#3987e5;border-color:#3987e5;color:#fff}.btn--primary:hover{background:#5598e7;border-color:#5598e7}.btn--ghost{background:transparent;border-color:transparent;color:#9aa7b8}.btn--ghost:hover{background:#1c2431;color:#e6ebf3}.btn--danger{color:#d03b3b}.btn--danger:hover{background:#d03b3b29;border-color:#d03b3b}.status-dot{width:8px;height:8px;border-radius:50%;flex:none;display:inline-block;background:#6b7688}.status-dot--good{background:#0ca30c;box-shadow:0 0 8px #0ca30c99}.status-dot--warning{background:#fab219}.status-dot--serious{background:#ec835a}.status-dot--critical{background:#d03b3b;box-shadow:0 0 8px #d03b3b99}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:500;background:#1c2431;border:1px solid #212836;color:#9aa7b8;font-variant-numeric:tabular-nums}.pill--good{color:#10dc10;border-color:#0ca30c66;background:#0ca30c29}.pill--warning{color:#fab219;border-color:#fab21966;background:#fab21929}.pill--critical{color:#da6464;border-color:#d03b3b73;background:#d03b3b29}.meta{color:#6b7688;font-size:11px;font-family:JetBrains Mono,SF Mono,Cascadia Code,ui-monospace,Consolas,Courier New,monospace;font-variant-numeric:tabular-nums}.view{min-width:0}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.toolbar__group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar__spacer{margin-left:auto}.updated{display:inline-flex;align-items:center;gap:8px;color:#6b7688;font-size:11px;font-variant-numeric:tabular-nums}.updated .btn{height:30px;padding:0 12px}.stack{display:flex;flex-direction:column;gap:16px}.chart{width:100%}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#6b7688;font-weight:600;margin:8px 0 4px}
