@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&family=VT323&display=swap";.uplot,.uplot *,.uplot :before,.uplot :after{box-sizing:border-box}.uplot{width:min-content;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}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{-webkit-user-select:none;user-select:none;position:relative}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{width:100%;height:100%;display:block;position:relative}.u-axis{position:absolute}.u-legend{text-align:center;margin:auto;font-size:14px}.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{pointer-events:none;background:#00000012;position:absolute}.u-cursor-x,.u-cursor-y{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.u-hz .u-cursor-x,.u-vt .u-cursor-y{border-right:1px dashed #607d8b;height:100%}.u-hz .u-cursor-y,.u-vt .u-cursor-x{border-bottom:1px dashed #607d8b;width:100%}.u-cursor-pt{pointer-events:none;will-change:transform;border:0 solid;border-radius:50%;position:absolute;top:0;left:0;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}:root{color:#202735;font-synthesis:none;background:#f7f8fa;font-family:DM Sans,Noto Sans SC,sans-serif}*{box-sizing:border-box}.app-icon{vertical-align:-.16em;flex:none;display:inline-block}body{color:#18181b;background:#f4f4f5;margin:0}.monitor-app{--page-gutter:max(20px, calc((100vw - 1600px) / 2));min-height:100vh;padding:0 var(--page-gutter) 40px;background:#f4f4f5}.header{height:58px;margin:0 calc(-1 * var(--page-gutter));padding:0 var(--page-gutter);background:#fff;border-bottom:1px solid #e4e7eb;justify-content:space-between;align-items:center;display:flex;box-shadow:0 2px 12px #24334a0a}.header h1{letter-spacing:-.6px;margin:0;font-size:21px;font-weight:750}.site-brand{align-items:center;gap:9px;display:flex}.site-icon{object-fit:contain;width:32px;height:32px;display:block}.toolbar{align-items:center;gap:8px;display:flex}.toolbar button,.toolbar a{color:#5f636b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;width:35px;height:35px;padding:0;font:16px/1 inherit;display:inline-flex;box-shadow:0 1px 2px #00000005}.toolbar button:hover,.toolbar a:hover{color:#18181b;background:#e8edf0;border-color:#0000}.toolbar button:focus-visible,.toolbar a:focus-visible{outline-offset:2px;outline:2px solid #9bb4e8}.data-error,.empty-state{border:1px solid var(--border-color,#e5e7eb);color:#7d8791;text-align:center;border-radius:12px;margin:18px 0;padding:14px 18px}.data-error{color:#c24141}.toolbar button:disabled{cursor:wait;opacity:.65}.is-spinning{animation:.9s linear infinite refresh-spin}@keyframes refresh-spin{to{transform:rotate(360deg)}}.overview-grid{background:#fff;border:1px solid #e6e6e8;border-radius:16px;grid-template-columns:repeat(4,1fr);margin-top:20px;display:grid;overflow:hidden;box-shadow:0 2px 10px #00000003}.overview-card{background:0 0;min-height:114px;padding:18px 20px 14px;position:relative}.overview-card>span{color:#686b72;justify-content:space-between;font-size:11px;font-weight:600;display:flex}.overview-card>span i{color:#777b83;font-size:15px;font-style:normal}.overview-card>b{letter-spacing:-.7px;margin-top:13px;font-size:28px;line-height:1;display:block}.overview-card>b small{color:#727680;letter-spacing:0;margin-left:4px;font-size:12px;font-weight:600}.overview-card p{color:#656a73;margin:8px 0 0;font-size:11px}.orange-text{color:#d8782b}.overview-label{color:#50545c;font-size:12px;font-weight:600}.overview-value{color:#18181b;letter-spacing:-.4px;margin-top:13px;font-size:22px;font-weight:600}.overview-value small{color:#6b7079;letter-spacing:0;margin-left:5px;font-size:12px;font-weight:500}.overview-card .traffic-summary{white-space:nowrap;align-items:center;gap:10px;display:flex}.traffic-upload{color:#0f9f72}.traffic-download{color:#3467bd}.bandwidth-upload{color:#5a7fbd}.bandwidth-download{color:#456da9}.overview-card .overview-status{color:#626872;align-items:center;gap:7px;display:flex}.overview-status b{background:#16a34a;border-radius:50%;width:8px;height:8px}.overview-card .overview-icon{color:#078b83;background:#e7f2f1;border:1px solid #cfe4e4;border-radius:8px;justify-content:center;place-items:center;width:30px;height:30px;line-height:0;display:grid;position:absolute;top:18px;right:20px}.overview-card .overview-icon .app-icon{vertical-align:middle;margin:0;display:block}.traffic-summary .app-icon,.overview-card p .app-icon{width:12px;height:12px}.monitor-app .overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.node-filters{align-items:center;margin-top:18px;display:flex}.group-bar{background:#fff;border:1px solid #e8e8ea;border-radius:16px;align-items:center;gap:6px;width:100%;height:53px;padding:0 25px;display:flex}.group-bar button{color:#545861;cursor:pointer;background:0 0;border:0;align-items:center;padding:5px 8px;font:600 12px inherit;display:inline-flex}.group-bar button.active{color:#18181b;background:#f1f2f4;border-radius:7px}.group-bar button .flag-icon,.group-bar button .flag-fallback{margin-right:8px}.group-code{color:#3f4b58;align-items:center;min-height:18px;font-size:14px;font-weight:900;line-height:1;display:inline-flex;position:relative;top:-1px}.group-bar button i{color:#8b8e95;background:#f5f5f6;border-radius:7px;margin-left:5px;padding:3px 6px;font-size:10px;font-style:normal}.node-grid{grid-template-columns:repeat(4,minmax(280px,1fr));gap:12px;padding-top:18px;display:grid}.node-card{cursor:pointer;background:#fff;border:1px solid #e6e6e8;border-radius:16px;min-width:0;padding:19px 18px 14px;transition:border-color .16s,transform .16s;box-shadow:0 2px 9px #00000003}.node-card:hover{border-color:#b9c7e7;transform:translateY(-1px)}.node-head{justify-content:space-between;align-items:center;display:flex}.node-title{align-items:center;gap:10px;min-width:0;display:flex}.node-title>span{padding-top:2px;font-size:13px}.system-icon{place-items:center;display:inline-grid}.system-brand-icon{object-fit:contain;display:block}.debian-icon{color:#a80030}.ubuntu-icon{color:#dd4814}.node-status-dot{background:#2f9e65;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #2f9e6524}.node-status-dot.offline{background:#dc2626;box-shadow:0 0 0 4px #dc262624}.node-status-dot.warning{background:#d39424}.node-status-dot.unknown{background:#e9a23b;box-shadow:0 0 0 4px #e9a23b2e}.node-meta .app-icon,.io-grid .app-icon,.latency-grid .app-icon,.metric-label .app-icon,.traffic>div span .app-icon{vertical-align:-.2em;width:13px;height:13px}.node-title h2{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.3px;min-width:0;margin:0;font-size:16px;overflow:hidden}.node-actions{align-items:center;gap:10px;display:flex}.node-meta{color:#676c75;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px;font-size:11px;display:grid}.node-meta span{white-space:nowrap;align-items:center;gap:4px;display:flex}.node-meta span:nth-child(2){justify-self:center}.node-meta span:nth-child(3){justify-content:flex-end;justify-self:end}.node-meta b{color:#4d83e6;font-size:11px;font-weight:600}.node-meta .expire{color:#45ad6e}.node-meta .cost{color:#3d9d69}.node-actions button{color:#767b84;cursor:pointer;background:0 0;border:0;font-size:15px}.node-flag{flex:none;width:18px;height:12px}.flag-icon{box-sizing:border-box;object-fit:cover;width:18px;height:12px;display:block;overflow:hidden}.flag-fallback{color:#69717c;justify-content:center;align-items:center;width:18px;height:12px;font-size:8px;font-weight:700;display:inline-flex}.metric-grid{grid-template-columns:1fr 1fr;gap:13px 20px;margin-top:16px;display:grid}.metric{min-width:0;display:block}.metric-label{color:#646973;justify-content:space-between;align-items:baseline;font-size:13px;display:flex}.metric-label>span,.traffic>div span,.io-grid span,.latency-grid span{align-items:center;gap:4px;display:inline-flex}.metric-label b{white-space:nowrap;color:#292c32;font-size:13px;font-weight:600}.metric-label b.metric-value-traffic{color:#1677ff;font-size:14px;font-weight:700}.metric small{color:#858a93;text-overflow:ellipsis;white-space:nowrap;min-height:14px;margin-top:5px;font-size:11px;display:block;overflow:hidden}.metric>i,.traffic>i{background:#ebebed;border-radius:4px;width:100%;height:4px;margin-top:5px;display:block;overflow:hidden}.metric>i b{border-radius:3px;height:100%;display:block}.metric>i b.blue{background:#5684e8}.metric>i b.purple{background:#935be2}.metric>i b.orange{background:#e9822e}.metric>i b.pink{background:#df5f9f}.metric>i b.green{background:#58b27f}.traffic-grid{border-top:1px solid #ededee;grid-template-columns:1fr 1fr;gap:22px;margin-top:14px;padding-top:16px;display:grid}.traffic>div,.io-grid>div{justify-content:space-between;align-items:baseline;display:flex}.traffic>div span{color:#4e82e5;font-size:12px}.traffic>div span.orange{color:#3e9c6f}.traffic>div b{white-space:nowrap;color:#46a56d;font-size:13px}.traffic>div b.orange{color:#d99420}.traffic>div b small{color:#747981;margin-left:2px;font-size:10px;font-weight:500}.io-grid{border-bottom:1px solid #ededee;grid-template-columns:1fr 1fr;gap:22px;padding:13px 0 14px;display:grid}.io-grid span{color:#4c9f72;font-size:12px}.io-grid b{white-space:nowrap;color:#6a7079;font-size:12px;font-weight:500}.latency-grid{grid-template-columns:1fr 1fr;gap:14px;padding:8px 0 7px;display:grid}.latency-panel{min-width:0}.latency-panel h3{color:#5d6874;margin:0 0 5px;font-size:10px;font-weight:600}.latency-row{color:#58636e;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:19px;font-size:10px;display:grid;position:relative}.latency-row b{color:#303943;font-size:10px;font-weight:700}.line-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;min-width:0;display:inline-flex;overflow:hidden}.line-name>i{border-radius:50%;width:7px;height:7px}.signal-bars{grid-column:1/-1;gap:0;height:10px;margin-top:2px;display:flex;overflow:visible}.latency-grid .signal-bars{gap:1px;display:flex}.signal-bars>i{cursor:pointer;background:#54c889;border-radius:2px;flex:1;min-width:0;height:10px;transition:transform .12s;position:relative}.signal-bars>i:after{content:attr(data-tooltip);z-index:10;color:#fff;white-space:pre;pointer-events:none;opacity:0;background:#1c252c;border-radius:3px;padding:4px 7px;font-size:10px;font-style:normal;font-weight:500;line-height:1.25;transition:opacity .12s,transform .12s;display:block;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%,3px)}.signal-bars>i:before{content:"";z-index:10;opacity:0;border:4px solid #0000;border-top-color:#1c252c;position:absolute;bottom:calc(100% + 3px);left:50%;transform:translate(-50%)}.signal-bars>i:hover:after,.signal-bars>i:hover:before{opacity:1}.signal-bars>i:hover{z-index:2;transform:scale(1.08,1.25)}.signal-bars>i:hover:after{transform:translate(-50%)}.monitor-app.is-dark .signal-bars>i:after{color:#1c252c;background:#eef3f5}.monitor-app.is-dark .signal-bars>i:before{border-top-color:#eef3f5}.signal-bars>i.deep-green{background:#00ad46}.signal-bars>i.green{background:#08d66a}.signal-bars>i.light-green{background:#8bea63}.signal-bars>i.yellow{background:#f1e84b}.signal-bars>i.orange{background:#ff9838}.signal-bars>i.red{background:#ed1232}.signal-bars>i.packet-ok{background:#08a875}.signal-bars>i.packet-light{background:#8bd45d}.signal-bars>i.packet-yellow{background:#f3c64d}.signal-bars>i.packet-orange{background:#f3a13f}.signal-bars>i.packet-loss{background:#f06462}.monitor-app.is-dark .latency-panel h3,.monitor-app.is-dark .latency-row{color:#aeb9c6}.monitor-app.is-dark .latency-row b{color:#e2e8ef}.price{color:#3d9d69;background:#edf8f1;border:1px solid #bde3ce;border-radius:8px;width:fit-content;padding:5px 10px;font-size:11px;font-weight:700}.details-loading{color:#7d8791;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:calc(100vh - 98px);font-size:13px;display:flex}.details-loading p{margin:0}.loading-spinner{border:2px solid #b9e2df;border-top-color:#09a99f;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite details-loading-spin;display:block}@keyframes details-loading-spin{to{transform:rotate(360deg)}}.monitor-app.is-dark .details-loading,.monitor-app.is-dark .chart-loading{color:#aab5c1}.monitor-app.is-dark .loading-spinner{border-color:#16c4b7 #174c4b #174c4b}.details-page{width:100%;min-height:calc(100vh - 49px);margin:0;padding:8px 0 32px}.details-back{color:#536274;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;width:29px;height:29px;font:500 18px/1 inherit;transition:color .16s,transform .16s,border-color .14s,background .14s}.details-back:hover,.details-back:focus-visible{color:#3657a1;background:#fff;border-color:#d7e0e7;transform:translate(-2px)}.details-hero,.info-panel,.details-panel{background:#f8fbfd;border:1px solid #e0e7ee;box-shadow:0 8px 20px #2b435d0b}.details-hero{border-radius:8px;align-items:center;min-height:58px;margin-bottom:10px;padding:6px 20px 6px 0;display:flex}.details-back .app-icon{vertical-align:middle}.details-hero{box-shadow:none;background:0 0;border:0;border-radius:0}.hero-copy{min-width:0;position:relative}.hero-copy>.hero-title-row{align-items:center;gap:9px;display:flex}.hero-title-row{position:relative}.hero-copy h1{letter-spacing:-.3px;overflow-wrap:anywhere;margin:0;font-size:21px}.host-menu-trigger{color:#536274;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;width:29px;height:29px;padding:0;line-height:1;transition:border-color .14s,background .14s;display:inline-grid}.host-menu-trigger:hover,.host-menu-trigger:focus-visible{background:#fff;border-color:#d7e0e7}.host-menu{z-index:5;background:#fff;border:1px solid #e0e7ee;border-radius:14px;width:220px;padding:6px;position:absolute;top:34px;left:calc(100% - 29px);box-shadow:0 8px 20px #24345d1c}.host-menu button{color:#596675;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;padding:9px 10px;font:500 12px inherit;display:flex}.host-menu .flag-icon,.host-menu .flag-fallback{flex:none;width:20px;height:14px}.host-menu button:hover,.host-menu button.active{color:#222d3b;background:#f0f4ff}.host-menu i{background:#14a875;border-radius:50%;width:8px;height:8px}.hero-copy b{color:#138b7d;background:#e7f8f3;border:1px solid #9bded1;border-radius:8px;padding:2px 8px;font-size:10px;font-weight:600}.hero-status{color:#159968;align-items:center;gap:16px;margin-left:auto;font-size:13px;display:flex}.hero-status.offline{color:#dc5656}.hero-status.warning,.hero-status.unknown{color:#d39424}.hero-status span{align-items:center;gap:6px;display:inline-flex}.hero-status i{background:#16a34a;border-radius:50%;width:8px;height:8px}.hero-status small{color:#7d8791;font-size:12px}.details-info-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.details-info-grid .info-panel:first-child{order:2}.details-info-grid .info-panel:last-child{order:1}.info-panel{background:#fff;border-radius:8px;padding:16px}.info-panel h2{color:#111c27;align-items:center;gap:7px;margin:0 0 12px;font-size:14px;display:flex}.info-items{grid-template-columns:1fr 1fr;column-gap:20px;display:grid;position:relative}.info-items:after{content:"";border-top:1px solid #d3dde5;position:absolute;top:50%;left:0;right:0}.info-items>div{min-width:0;padding:0 0 10px}.info-items>div:nth-child(n+3){padding-top:10px;position:relative;top:4px}.info-items span{color:#64717d;align-items:center;gap:5px;font-size:11px;display:inline-flex}.info-items span .app-icon,.info-items b .app-icon{width:13px;height:13px}.info-items b .system-brand-icon{vertical-align:-.16em;margin-right:4px;display:inline-block}.info-items .system-icon{font-style:normal}.info-items b{color:#26313c;overflow-wrap:anywhere;word-break:break-word;margin-top:5px;font-size:14px;font-weight:500;line-height:1.45;display:block}.details-panel{background:#fff;border-color:#e0e7ee;border-radius:16px;width:100%;margin:0;padding:34px 38px 40px;position:relative;box-shadow:0 12px 30px #24345d0d}.chart-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.uplot-chart-host{min-width:0;height:170px;margin-top:12px}.uplot-chart-host .uplot{width:100%;height:100%}.uplot-chart-host .uplot.chart-reveal-once{animation:.7s ease-out chart-reveal}.chart-loading{color:#7d8791;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:13px;min-height:220px;font-size:13px;display:flex}.chart-loading p{margin:0}.chart-toolbar{justify-content:space-between;margin-bottom:12px;display:flex}.chart-switch{background:#f8fbfd;border:1px solid #d7e0e7;border-radius:8px;padding:2px;display:inline-flex}.chart-switch button{color:#63717d;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 12px;font:500 11px inherit}.chart-switch button.active{color:#fff;background:#087f78;box-shadow:0 2px 5px #087f7833}.chart-card{background:#f8fbfd;border:1px solid #e0e7ee;border-radius:8px;min-height:220px;padding:17px 16px 12px;position:relative;overflow:hidden}.chart-card strong{color:#17222d;font-size:14px}.chart-card-title{align-items:center;gap:6px;display:inline-flex}.chart-card-title .app-icon{color:#5878d8}.chart-card:nth-child(2) .chart-card-title .app-icon{color:#aa49ed}.chart-card:nth-child(3) .chart-card-title .app-icon{color:#ef7628}.chart-card:nth-child(4) .chart-card-title .app-icon{color:#17a987}.chart-tooltip{z-index:3;color:#596979;pointer-events:none;background:#fff;border:1px solid #cdd8e5;border-radius:8px;min-width:130px;padding:8px 10px;font-size:10px;animation:.14s ease-out chart-tooltip-enter;position:absolute;box-shadow:0 5px 14px #24345d2b}.chart-tooltip strong{color:#687789;margin-bottom:5px;font-size:10px;font-weight:600;display:block}.chart-tooltip span{white-space:nowrap;align-items:center;gap:6px;display:flex}.chart-tooltip i{background:#c2546d;border-radius:50%;width:7px;height:7px}.chart-tooltip i.memory{background:#20a9b0}.chart-tooltip i.disk{background:#e28d36}.chart-tooltip i.network{background:#4b75ed}.chart-tooltip b{color:#26313c;margin-left:auto;font-weight:700}@keyframes chart-tooltip-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes chart-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){.chart-card,.chart-tooltip,.uplot-chart-host .uplot{animation:none}}.chart-card>b{float:right;color:#657482;font-size:11px;font-weight:500}.details-section{border-top:1px solid #eceef1;margin-top:28px;padding-top:20px}.details-section h3{margin:0 0 12px;font-size:12px}.latency-legend{color:#697581;border-bottom:1px solid #eceef1;flex-wrap:wrap;gap:14px 24px;padding-bottom:14px;font-size:11px;display:flex}.latency-empty{color:#8b96a2;text-align:center;padding:28px 0;font-size:12px}.latency-card{border-top:0;margin-top:0;padding-top:0}.latency-legend span,.latency-legend button{align-items:center;gap:5px;display:inline-flex}.latency-legend button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.latency-legend button.muted{opacity:.42}.latency-legend .ping-series-show-all{color:#087f78}.latency-legend i{background:#4775da;border-radius:50%;width:7px;height:7px}.latency-legend i.green{background:#18b28e}.latency-legend i.orange{background:#f3a12d}.latency-legend b{color:#303a45;font-weight:600}.ping-chart-wrap{min-width:0;margin-top:14px;position:relative}.ping-uplot-host{width:100%;min-width:0;height:230px}.ping-uplot-host .uplot{width:100%;height:100%;animation:.7s ease-out chart-reveal}.ping-chart-tooltip{top:50px}.ping-chart-tooltip span+span{margin-top:4px}.monitor-app.is-dark .details-panel{color:#d1d7e0;background:#262c36}.monitor-app.is-dark .details-hero{box-shadow:none;background:0 0;border-color:#0000}.monitor-app.is-dark .info-panel{background:#252d37;border-color:#3d444d}.monitor-app.is-dark .host-menu-trigger{color:#e3e8ef;background:0 0;border-color:#0000}.monitor-app.is-dark .host-menu-trigger:hover,.monitor-app.is-dark .host-menu-trigger:focus-visible{background:#252d37;border-color:#3d444d}.monitor-app.is-dark .host-menu{color:#e3e8ef;background:#252d37;border-color:#3d444d}.monitor-app.is-dark .host-menu button{color:#b7c9dc}.monitor-app.is-dark .host-menu button:hover,.monitor-app.is-dark .host-menu button.active{color:#e3e8ef;background:#303b58}.monitor-app.is-dark .chart-switch,.monitor-app.is-dark .chart-card{background:#252d37;border-color:#3d444d}.monitor-app.is-dark .chart-card strong,.monitor-app.is-dark .hero-copy h1,.monitor-app.is-dark .info-panel h2,.monitor-app.is-dark .info-items b{color:#e3e8ef}.monitor-app.is-dark .info-items>div{border-color:#3d444d}.monitor-app.is-dark .info-items:after,.monitor-app.is-dark .latency-legend{border-color:#304255}.monitor-app.is-dark .details-back{color:#9fb6f5;background:0 0;border-color:#0000}.monitor-app.is-dark .details-back:hover,.monitor-app.is-dark .details-back:focus-visible{background:#252d37;border-color:#3d444d}.monitor-app.is-dark .details-back:hover{color:#c0d0ff}.monitor-app.is-dark .details-section,.monitor-app.is-dark .latency-legend{border-color:#3d444d}.monitor-app.is-dark .latency-legend b{color:#d1d7e0}@media (width<=720px){.details-page{padding:12px 0 32px}.details-hero{padding:6px 12px}.hero-status{flex-direction:column;align-items:flex-end;gap:3px}.details-info-grid{grid-template-columns:1fr}.chart-toolbar{flex-direction:column;align-items:flex-start;gap:8px}.details-panel{border-radius:13px;padding:24px 20px 28px}.chart-grid{grid-template-columns:1fr}.info-items b{font-size:13px}}@media (width<=800px){.monitor-app{--page-gutter:16px;padding:0 16px 30px}.overview-grid{grid-template-columns:1fr 1fr}.toolbar{gap:4px}.toolbar button{width:31px;height:31px}.node-card{min-width:0}}@media (width<=1100px){.node-grid{grid-template-columns:repeat(3,minmax(260px,1fr))}.node-card{padding-left:15px;padding-right:15px}}@media (width<=580px){.node-grid{grid-template-columns:1fr}}@media (width<=860px) and (width>=581px){.node-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}}@media (width<=800px){.metric small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-label b,.traffic>div b,.io-grid b{white-space:nowrap}.node-meta{gap:5px}.node-meta span{min-width:0}.node-meta b{text-overflow:ellipsis;overflow:hidden}}.monitor-app.is-dark{--dark-bg:#0f1722;--dark-surface:#172231;--dark-surface-elevated:#1d2a3a;--dark-border:#2b3b4d;--dark-border-soft:#233244;--dark-text:#e7eef7;--dark-muted:#9aaabd;--dark-subtle:#73859a;--dark-cyan:#59d4c5;--dark-blue:#82aaff;--dark-purple:#c69cff;background:var(--dark-bg);color:var(--dark-text)}@scope(.monitor-app.mc-theme){.header{background:#171c1c;border-bottom:4px solid #111817;box-shadow:0 4px #0009,inset 0 -3px #303b32}.header:after{background:repeating-linear-gradient(90deg,#8dbb4e 0 16px,#5a913e 16px 25px,#31592f 25px 32px);height:4px}.header h1{color:#77b947;text-shadow:2px 2px #1d2b1c}.overview-grid,.group-bar,.node-card,.details-panel,.info-panel,.chart-card{background-color:#f2e2b9;background-image:none;border:4px solid #7d4d2c;border-radius:3px;box-shadow:4px 5px #0b100d99,inset 0 0 0 2px #c18a50}.overview-grid{overflow:visible}.overview-card{color:#3d2a1d;background:0 0;border-right:2px solid #d0b983}.overview-card:before{background:repeating-linear-gradient(90deg,#87b84f 0 14px,#5d963d 14px 22px,#3e6d32 22px 27px);height:8px;top:-4px;box-shadow:inset 0 -2px #35582d}.overview-card:nth-child(2):before{background:repeating-linear-gradient(90deg,#87b84f 0 14px,#5d963d 14px 22px,#3e6d32 22px 27px)}.overview-label,.metric-label,.overview-card p,.node-meta,.metric small,.io-grid span,.latency-panel h3,.latency-row,.details-section,.latency-legend{color:#6b5138}.overview-value,.node-title h2,.metric-label b,.io-grid b,.latency-row b,.info-panel h2,.info-items b,.chart-card strong{color:#302218;text-shadow:1px 1px #fff5d055}.overview-card .overview-icon{color:#3e7c3f;background:#d6e9a9;border:2px solid #6e9d45;border-radius:2px;box-shadow:inset 2px 2px #fff7,2px 2px #5b3a2588}.group-bar{background-color:#5d3924;background-image:linear-gradient(90deg,#ffffff0c 1px,#0000 1px),linear-gradient(#2a170e22 1px,#0000 1px);background-size:13px 100%,100% 7px;border-color:#714524;box-shadow:4px 5px #0b100d99,inset 0 2px #a96e3d,inset 0 -3px #382014}.group-bar:before{background:repeating-linear-gradient(0deg,#83b84c 0 8px,#5d963c 8px 14px,#355e31 14px 17px);width:7px;left:0}.group-bar button,.group-bar .group-code{color:#f2e4bd;text-shadow:1px 1px #2c170e}.group-bar button i{color:#fff4c9;background:#4e863c;border-radius:2px;box-shadow:inset 0 1px #b6dc76}.group-bar button.active{background:#8b6138;box-shadow:inset 0 -3px #b6d86b}.node-card{background-color:#f3e4bd;border-color:#85532f}.node-card:before{background:repeating-linear-gradient(90deg,#8cbd51 0 13px,#5f9b3c 13px 21px,#416f32 21px 27px);height:9px;box-shadow:inset 0 -2px #3b5d2e}.node-card:after{opacity:1;background:#865331}.node-head{background:linear-gradient(#9a6339,#704326);border:2px solid #704323;margin:-2px -3px 13px;padding:7px 8px;box-shadow:inset 0 2px #c48a52,inset 0 -2px #4b2b1c}.node-title h2{color:#fff0cb;text-shadow:1px 1px #382116}.metric>i,.traffic>i{background:#dfcc98;border:1px solid #b89b64}.traffic-grid,.io-grid,.details-section,.latency-legend{border-color:#d1bb8b}.price{color:#39743a;background:#dcedae;border-color:#5f8d3b}.chart-switch{background:#ead7a8;border-color:#a98451}.chart-switch button{color:#6f5237}.chart-switch button.active{color:#fff8d9;background:#6e9f45;box-shadow:inset 0 -2px #456d32}.chart-card{background:#f1e0b8}.details-back:hover,.details-back:focus-visible,.host-menu-trigger:hover,.host-menu-trigger:focus-visible{color:#3e7c3f;background:#d6e9a9;border-color:#6e9d45}.host-menu{background:#f3e4bd;border-color:#85532f;box-shadow:4px 4px #0b100d99}.host-menu button:hover,.host-menu button.active{color:#2e5d35;background:#dcedae}}.monitor-app.mc-theme{isolation:isolate;background:#304c3e;position:relative}.monitor-app.mc-theme:before{content:"";z-index:-1;pointer-events:none;background:#304c3e url(/assets/backgrounds/mc-meadow-dusk.png) bottom/cover no-repeat;position:fixed;inset:0}@media (width<=800px){.monitor-app.mc-theme:before{background-position:88% bottom}}.monitor-app.is-dark .header{border-color:var(--dark-border-soft);background:color-mix(in srgb, var(--dark-surface) 92%, transparent);box-shadow:0 8px 30px #07101d66}.monitor-app.is-dark .header h1{color:var(--dark-text)}.monitor-app.is-dark .toolbar button,.monitor-app.is-dark .toolbar a{color:var(--dark-muted);background:0 0;border-color:#0000}.monitor-app.is-dark .toolbar button:hover,.monitor-app.is-dark .toolbar a:hover{color:var(--dark-text);background:#26384a;border-color:#0000}.monitor-app.is-dark .overview-grid,.monitor-app.is-dark .group-bar,.monitor-app.is-dark .node-card{border-color:var(--dark-border);background:color-mix(in srgb, var(--dark-surface) 94%, transparent);box-shadow:0 12px 30px #07101d55}.monitor-app.is-dark .overview-label,.monitor-app.is-dark .overview-card p,.monitor-app.is-dark .metric-label,.monitor-app.is-dark .io-grid span,.monitor-app.is-dark .latency-grid div{color:var(--dark-muted)}.monitor-app.is-dark .overview-value,.monitor-app.is-dark .overview-card .overview-icon,.monitor-app.is-dark .node-title h2,.monitor-app.is-dark .metric-label b{color:var(--dark-text)}.monitor-app.is-dark .metric-label b.metric-value-traffic{color:var(--dark-blue)}.monitor-app.is-dark .overview-card .overview-icon{color:var(--dark-cyan);background:#1b4547;border-color:#397b78}.monitor-app.is-dark .overview-value small,.monitor-app.is-dark .metric small,.monitor-app.is-dark .io-grid b,.monitor-app.is-dark .latency-grid div b,.monitor-app.is-dark .latency-grid small{color:var(--dark-subtle)}.monitor-app.is-dark .group-bar button{color:#b7c9dc;border:1px solid #0000;border-radius:9px;transition:background .14s,color .14s}.monitor-app.is-dark .group-bar button:hover{color:#eef6ff;background:#26384a}.monitor-app.is-dark .group-bar button.active{color:#e3f1ff;background:#2a3c50;border-color:#49637e;box-shadow:0 3px 12px #0b132033}.monitor-app.is-dark .group-code{color:inherit}.monitor-app.is-dark .group-bar button i{color:#b8cce0;background:#2a3c50}.monitor-app.is-dark .group-bar button.active i{color:#e3f1ff;background:#294765}.monitor-app.is-dark .node-actions button{color:var(--dark-subtle)}.monitor-app.is-dark .traffic-grid,.monitor-app.is-dark .io-grid,.monitor-app.is-dark .latency-grid{border-color:var(--dark-border)}.monitor-app.is-dark .toolbar,.monitor-app.is-dark .group-bar,.monitor-app.is-dark .overview-card,.monitor-app.is-dark .node-card,.monitor-app.is-dark .details-panel,.monitor-app.is-dark .info-panel,.monitor-app.is-dark .chart-card{border-color:var(--dark-border);background:var(--dark-surface);color:var(--dark-text)}.monitor-app.is-dark .node-title h2,.monitor-app.is-dark .overview-value,.monitor-app.is-dark .chart-card strong,.monitor-app.is-dark .info-panel h2{color:var(--dark-text)}.monitor-app.is-dark .node-meta,.monitor-app.is-dark .metric-label,.monitor-app.is-dark .metric small,.monitor-app.is-dark .overview-label,.monitor-app.is-dark .overview-card p,.monitor-app.is-dark .info-items span,.monitor-app.is-dark .details-section,.monitor-app.is-dark .latency-legend{color:var(--dark-muted)}.monitor-app.is-dark .metric-label b,.monitor-app.is-dark .info-items b,.monitor-app.is-dark .latency-legend b{color:var(--dark-text)}.monitor-app.is-dark .chart-switch,.monitor-app.is-dark .time-switch{border-color:var(--dark-border);background:#14202d}.monitor-app.is-dark .chart-switch button{color:var(--dark-muted)}.monitor-app.is-dark .chart-switch button.active{color:#f2fffd;background:#237e7a;box-shadow:0 4px 14px #1aa99b44}.monitor-app.is-dark .metric>i,.monitor-app.is-dark .traffic>i{background:#2a3a4b}.monitor-app.is-dark .details-panel,.monitor-app.is-dark .info-panel{box-shadow:0 14px 36px #07101d55}.monitor-app.mc-theme{--mc-obsidian:#11171b;--mc-stone:#1b2428;--mc-stone-2:#222d31;--mc-stone-3:#2d393d;--mc-moss:#4d8b52;--mc-grass:#74b757;--mc-redstone:#e06a3b;--mc-gold:#e1b84c;--mc-diamond:#55c6c8;--mc-ink:#e7eee7;--mc-muted:#91a19a;color:var(--mc-ink)}.toolbar .theme-active{color:#18181b;background:#e8edf0}.monitor-app.is-dark .toolbar .theme-active{color:var(--dark-text);background:#26384a}@scope(.monitor-app.mc-theme){.header{background:var(--mc-stone);border-bottom:2px solid #0c1012;position:relative;box-shadow:0 4px #0008,inset 0 -3px #31423a}.header:after{content:"";background:repeating-linear-gradient(90deg,var(--mc-grass) 0 18px,var(--mc-moss) 18px 28px,#355f3b 28px 32px);height:3px;position:absolute;bottom:-5px;left:0;right:0}.header h1,.site-brand h1,.overview-value,.node-title h2,.hero-copy h1{letter-spacing:.2px;font-family:VT323,Noto Sans SC,monospace}.header h1{color:var(--mc-grass);text-shadow:2px 2px #172619;font-size:25px}.site-icon{image-rendering:pixelated}.toolbar button,.toolbar a{background:var(--mc-stone-2);color:var(--mc-muted);border:2px solid #3a494c;border-radius:3px;box-shadow:inset 0 2px #ffffff0b,2px 2px #0006}.toolbar button:hover,.toolbar a:hover{border-color:var(--mc-grass);color:#f3e6ae;background:#304333}.toolbar .mc-toggle-active{border-color:var(--mc-grass);color:#f3e6ae;box-shadow:inset 0 -2px 0 var(--mc-grass),2px 2px 0 #0006;background:#3d593f}.toolbar button:focus-visible,.toolbar a:focus-visible{outline-color:var(--mc-gold)}.overview-grid,.group-bar,.node-card,.details-panel,.info-panel,.chart-card{border:2px solid var(--mc-stone-3);background:var(--mc-stone);border-radius:5px;box-shadow:3px 3px #0009,inset 0 1px #ffffff0b}.overview-card{border-right:2px solid var(--mc-stone-3)}.overview-card:last-child{border-right:0}.overview-card .overview-label,.metric-label,.overview-card p,.node-meta,.metric small,.io-grid span,.latency-panel h3,.latency-row,.details-section,.latency-legend{color:var(--mc-muted)}.overview-value,.node-title h2,.metric-label b,.io-grid b,.latency-row b,.info-panel h2,.info-items b,.chart-card strong{color:var(--mc-ink)}.overview-value{font-size:29px}.overview-value small{color:#a4b4a8}.overview-card .overview-icon{color:var(--mc-grass);background:#29452f;border:2px solid #4d8053;border-radius:3px}.overview-status b{background:var(--mc-grass);box-shadow:0 0 0 3px #74b75733}.orange-text,.metric-label b.metric-value-traffic{color:var(--mc-redstone)}.traffic-upload{color:var(--mc-grass)}.traffic-download{color:var(--mc-diamond)}.bandwidth-upload{color:#91c9c2}.bandwidth-download{color:#73b4d2}.group-bar{background:var(--mc-stone)}.group-bar button{color:var(--mc-muted);border-radius:3px}.group-bar button.active{color:#fff3c0;box-shadow:inset 0 -2px 0 var(--mc-grass);background:#3d593f}.group-bar button i{color:#9aaa9c;background:#2a3538;border-radius:2px}.group-bar .group-code{color:#d8e2d0;text-shadow:1px 1px #101719}.group-bar button:not(.active) i{color:#b8c9b3;background:#34433a}.node-card{transition:border-color .16s,transform .16s,box-shadow .16s}.node-card:hover{border-color:var(--mc-grass);transform:translate(-1px,-2px);box-shadow:4px 5px #000b,inset 0 1px #ffffff12}.node-status-dot{background:var(--mc-grass);border-radius:2px;box-shadow:0 0 0 4px #74b7572e}.node-status-dot.offline{background:#d84d46;box-shadow:0 0 0 4px #d84d462e}.metric>i,.traffic>i{background:#101719;border-radius:1px}.metric>i b.blue{background:var(--mc-diamond)}.metric>i b.purple{background:#a879d6}.metric>i b.orange{background:var(--mc-redstone)}.metric>i b.green{background:var(--mc-grass)}.traffic-grid,.io-grid,.details-section,.latency-legend{border-color:#344144}.price{color:#f0ca60;background:#4a3c20;border:2px solid #7a6130;border-radius:3px}.chart-switch{background:#151d20;border:2px solid #3a494c;border-radius:3px}.chart-switch button{color:var(--mc-muted);border-radius:2px}.chart-switch button.active{background:var(--mc-moss);color:#f2f7df;box-shadow:inset 0 -2px 0 var(--mc-grass)}.chart-card{background:#182125}.chart-card-title .app-icon{color:var(--mc-diamond)}.chart-card:nth-child(2) .chart-card-title .app-icon{color:#b18ad8}.chart-card:nth-child(3) .chart-card-title .app-icon{color:var(--mc-redstone)}.chart-card:nth-child(4) .chart-card-title .app-icon{color:var(--mc-grass)}.details-back:hover,.details-back:focus-visible,.host-menu-trigger:hover,.host-menu-trigger:focus-visible{color:var(--mc-grass);background:#29452f;border-color:#4d8053}.host-menu{border:2px solid var(--mc-stone-3);background:var(--mc-stone-2);border-radius:4px;box-shadow:3px 3px #0009}.host-menu button:hover,.host-menu button.active{color:#f2f7df;background:#3d593f}@media (prefers-reduced-motion:reduce){.node-card{transition:none}}.overview-grid{background-image:none}.overview-card{overflow:hidden}.overview-card:before{content:"";background:var(--mc-moss);height:5px;position:absolute;top:0;left:0;right:0;box-shadow:inset 0 -2px #355f3b}.overview-card:nth-child(2):before{background:#8b8f82;box-shadow:inset 0 -2px #565b55}.overview-card:nth-child(3):before{background:var(--mc-diamond);box-shadow:inset 0 -2px #2c777d}.overview-card:nth-child(4):before{background:var(--mc-redstone);box-shadow:inset 0 -2px #913c2b}.group-bar{position:relative;overflow:hidden}.group-bar:before{content:"";background:repeating-linear-gradient(0deg,var(--mc-grass) 0 8px,var(--mc-moss) 8px 14px,#355f3b 14px 17px);width:7px;position:absolute;inset:0 auto 0 0}.group-bar{padding-left:32px}.node-card{position:relative;overflow:hidden}.node-card:before{content:"";background:linear-gradient(90deg,var(--mc-grass) 0 28%,var(--mc-moss) 28% 72%,#6b4a32 72%);height:4px;position:absolute;top:0;left:0;right:0}.node-card:after{content:"";background:var(--mc-redstone);clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.8;width:12px;height:12px;position:absolute;bottom:0;right:0}.node-status-dot{box-shadow:0 0 0 3px #74b7572e,inset 2px 2px #fff5}.metric>i b{box-shadow:inset 0 2px #ffffff40}.price:before{content:"◆";color:#f0ca60;margin-right:4px;font-size:9px}.overview-grid,.group-bar,.node-card,.details-panel,.info-panel,.chart-card{background-color:#1b272b;background-image:none;border-color:#53666a;box-shadow:4px 4px #05090bcc,inset 0 1px #afc4bd18}.overview-card{background-color:#0000}.group-bar{background-color:#382d26;background-image:linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:11px 100%;border-color:#5b4633;box-shadow:4px 4px #05090bcc,inset 0 2px #9b6a40}.group-bar:before{background:repeating-linear-gradient(0deg,#75a94e 0 8px,#4f7f42 8px 14px,#2d542f 14px 17px)}.node-head{background:linear-gradient(#745036,#4b3429);border:2px solid #6a4930;margin:-6px -7px 13px;padding:7px 8px;box-shadow:inset 0 2px #b27a4a,inset 0 -2px #2a1d1a}.node-title h2{color:#f0e7c7;text-shadow:1px 1px #1a1412}.node-card:before{background:linear-gradient(90deg,#79b753 0 28%,#4e863f 28% 72%,#725035 72%);height:5px}.overview-card .overview-icon{box-shadow:inset 2px 2px #b0d77b55,2px 2px #08100a99}.overview-card:nth-child(3) .overview-icon{box-shadow:inset 2px 2px #c6ffff55,2px 2px #08100a99}.overview-card:nth-child(4) .overview-icon{box-shadow:inset 2px 2px #ffb08a55,2px 2px #08100a99}.metric>i,.traffic>i{background:#0c1518;border:1px solid #334348}.signal-bars>i{box-shadow:inset 0 2px #ffffff38}}@scope(.monitor-app.mc-theme){.overview-grid,.group-bar,.node-card,.details-panel,.info-panel,.chart-card{background-color:#f2e2b9;background-image:none;border-color:#7d4d2c;box-shadow:4px 5px #0b100d99,inset 0 0 0 2px #c18a50}.overview-card,.node-card{color:#3d2a1d}.overview-label,.metric-label,.overview-card p,.node-meta,.metric small,.io-grid span,.latency-panel h3,.latency-row,.details-section,.latency-legend{color:#6b5138}.overview-value,.node-title h2,.metric-label b,.io-grid b,.latency-row b,.info-panel h2,.info-items b,.chart-card strong{color:#302218;text-shadow:1px 1px #fff5d055}.group-bar{background-color:#5d3924;background-image:linear-gradient(90deg,#ffffff0c 1px,#0000 1px),linear-gradient(#2a170e22 1px,#0000 1px);background-size:13px 100%,100% 7px;border-color:#714524;box-shadow:4px 5px #0b100d99,inset 0 2px #a96e3d,inset 0 -3px #382014}.group-bar button,.group-bar .group-code{color:#f2e4bd;text-shadow:1px 1px #2c170e}.group-bar button.active{background:#8b6138;box-shadow:inset 0 -3px #b6d86b}.node-card{background-color:#f3e4bd;border-color:#85532f}.node-card:before{background:repeating-linear-gradient(90deg,#8cbd51 0 13px,#5f9b3c 13px 21px,#416f32 21px 27px);height:9px;box-shadow:inset 0 -2px #3b5d2e}.node-head{background:linear-gradient(#9a6339,#704326);border-color:#704323;box-shadow:inset 0 2px #c48a52,inset 0 -2px #4b2b1c}.node-title h2{color:#fff0cb;text-shadow:1px 1px #382116}.metric>i,.traffic>i{background:#dfcc98;border-color:#b89b64}.traffic-grid,.io-grid,.details-section,.latency-legend{border-color:#d1bb8b}.chart-switch{background:#ead7a8;border-color:#a98451}.chart-switch button{color:#6f5237}.chart-switch button.active{color:#fff8d9;background:#6e9f45}.chart-card{background:#f1e0b8}.details-hero{background:#1b272b;box-shadow:inset 0 -1px #53666a}.hero-copy h1{color:#fff0cb}.details-back,.host-menu-trigger{color:#e0e7dc;box-shadow:none;background:0 0;border-color:#0000;border-radius:3px}.details-back:hover,.host-menu-trigger:hover,.details-back:focus-visible,.host-menu-trigger:focus-visible{color:#f0f4e8;background:#354b43;border-color:#78916e}.details-back:focus-visible,.host-menu-trigger:focus-visible{outline-offset:2px;outline:2px solid #b6dc76}.hero-status{color:#b6dc76}.hero-status.offline{color:#faa}.hero-status.warning,.hero-status.unknown{color:#f2ce7d}.hero-status small{color:#e0e7dc}}
