:root{color-scheme:dark;--bg: #0a0d12;--bg-header: #0b0f15;--surface: #0f141b;--surface-alt: #121923;--surface-deep: #0b1017;--border: #1e2836;--border-strong: #2a3646;--text-1: #e6edf7;--text-2: #b3c0d1;--text-3: #7d8da3;--text-dim: #556274;--accent: #4fd1c5;--accent-dim: rgba(79, 209, 197, .12);--ok: #3fb950;--warn: #d29922;--error: #f85149;--info: #58a6ff;--font-sans: "Segoe UI", "Microsoft YaHei", "PingFang SC", system-ui, -apple-system, sans-serif;--font-mono: "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;--radius: 2px;--panel-pad: 14px}:root{--state-live: #3fb950;--state-live-bg: rgba(63, 185, 80, .08);--state-live-border: rgba(63, 185, 80, .4);--state-stale: #d29922;--state-stale-bg: rgba(210, 153, 34, .08);--state-stale-border: rgba(210, 153, 34, .4);--state-unsafe: #f85149;--state-unsafe-bg: rgba(248, 81, 73, .08);--state-unsafe-border: rgba(248, 81, 73, .42);--state-fallback: #e08c3c;--state-fallback-bg: rgba(224, 140, 60, .08);--state-fallback-border: rgba(224, 140, 60, .42);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-page: 24px;--fs-2xs: 10.5px;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 12.5px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 22px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--ease-out: cubic-bezier(.2, .6, .2, 1);--dur-fast: .12s;--focus-ring: 0 0 0 2px rgba(79, 209, 197, .45);--text-primary: var(--text-1);--text-secondary: var(--text-2);--text-muted: var(--text-3);--border-soft: var(--border);--bg-panel: var(--surface)}*,*:before,*:after{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:radial-gradient(1200px 380px at 50% -160px,rgba(79,209,197,.05),transparent 70%),var(--bg);color:var(--text-1);font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--text-muted);font-size:var(--fs-sm)}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:10px var(--space-page);background:#0b0f15eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--border);box-shadow:0 1px #ffffff05}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand__mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;border:1px solid var(--state-live-border);border-radius:var(--radius-md);background:var(--state-live-bg);color:var(--accent);font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:700;letter-spacing:.05em}.brand__name{font-size:15px;font-weight:700;letter-spacing:.06em}.brand__sub{margin-top:1px;color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.topbar__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.topbar__nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.topbar__nav .chip{text-transform:none;letter-spacing:.04em;padding:4px 10px}.topbar__nav .router-link-active{color:var(--accent);border-color:#4fd1c573;background:var(--accent-dim);box-shadow:inset 0 -1px #4fd1c599}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.chip:hover{color:var(--text-2);border-color:var(--border-strong);background:var(--surface-alt)}.chip b{color:var(--text-1);font-weight:600;letter-spacing:0;text-transform:none}.page{width:100%;max-width:1480px;margin:0 auto;padding:var(--space-5) var(--space-page) 44px;flex:1}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}.page-title{margin:0;font-size:22px;font-weight:700;letter-spacing:.02em}.page-desc{margin:5px 0 0;color:var(--text-3);font-size:12px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.toolbar__hint{color:var(--text-3);font-family:var(--font-mono);font-size:11.5px}.section{margin-top:var(--space-6)}.section__head{display:flex;align-items:center;gap:10px;margin-bottom:9px}.section__title{margin:0;color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}.section__en{color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;white-space:nowrap}.section__rule{flex:1;height:1px;background:var(--border)}.grid{display:grid;gap:12px}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{display:flex;flex-direction:column;min-width:0;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent 60px),var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease-out)}.panel:hover{border-color:var(--border-strong)}.panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:9px 14px;background:var(--surface-alt);border-bottom:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0}.panel__title{margin:0;color:var(--text-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase}.panel__subtitle{margin:2px 0 0;color:var(--text-dim);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.02em;overflow-wrap:anywhere}.panel__meta{display:flex;align-items:center;gap:8px;flex:none;padding-top:1px}.panel__body{flex:1;min-width:0;padding:12px 14px}.panel__body--flush{padding:0}.data-list{display:flex;flex-direction:column;gap:7px}.data-list--spaced{margin-bottom:10px}.data-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:20px}.data-row__label{flex:none;color:var(--text-3);font-size:var(--fs-sm)}.data-row__value{display:inline-flex;align-items:center;gap:6px;color:var(--text-1);font-family:var(--font-mono);font-size:var(--fs-md);text-align:right;overflow-wrap:anywhere}.data-row__hint{color:var(--text-dim);font-size:11px}.metric{display:flex;align-items:baseline;gap:8px}.metric__value{color:var(--text-1);font-family:var(--font-mono);font-size:26px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.metric__unit{color:var(--text-3);font-size:11.5px}.metric-list{display:flex;flex-wrap:wrap;gap:8px 26px}.metric-block{min-width:92px}.metric-block__label{color:var(--text-3);font-size:11px;letter-spacing:.04em}.metric-block__value{margin-top:2px;color:var(--text-1);font-family:var(--font-mono);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.metric-block__value--muted{color:var(--text-3);font-size:14px;font-weight:400}.pill{display:inline-flex;align-items:center;gap:6px;padding:1px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.6;letter-spacing:.02em;white-space:nowrap}.pill__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.pill--ok{color:var(--state-live);border-color:var(--state-live-border);background:var(--state-live-bg)}.pill--warn{color:var(--state-stale);border-color:var(--state-stale-border);background:var(--state-stale-bg)}.pill--error{color:var(--state-unsafe);border-color:var(--state-unsafe-border);background:var(--state-unsafe-bg)}.pill--fallback{color:var(--state-fallback);border-color:var(--state-fallback-border);background:var(--state-fallback-bg)}.pill--info{color:var(--info);border-color:#58a6ff66;background:#58a6ff14}.pill--muted{color:var(--text-3);border-color:var(--border);background:transparent}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:18px 8px;text-align:center}.empty__hint{margin:0;color:var(--text-dim);font-size:11px;font-family:var(--font-mono)}.alert{display:flex;gap:8px;margin-bottom:10px;padding:7px 10px;border:1px solid var(--state-unsafe-border);border-left:2px solid var(--state-unsafe);border-radius:var(--radius-sm);background:var(--state-unsafe-bg);color:#ffb3ad;font-size:var(--fs-sm);overflow-wrap:anywhere}.loading-text{color:var(--warn);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em}.table-wrap{overflow-x:auto}table.data-table{width:100%;min-width:620px;border-collapse:collapse;font-size:var(--fs-sm)}.data-table th{position:sticky;top:0;padding:8px var(--space-3);background:var(--surface-deep);border-bottom:1px solid var(--border-strong);color:var(--text-3);font-size:var(--fs-2xs);font-weight:600;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:7px var(--space-3);border-bottom:1px solid rgba(30,40,54,.6);color:var(--text-2);vertical-align:top}.data-table tbody tr{transition:background var(--dur-fast) var(--ease-out)}.data-table tbody tr:hover td{background:var(--accent-dim)}.data-table tbody tr:last-child td{border-bottom:none}.data-table__num{color:var(--text-3)}.data-table__err{max-width:260px;color:#ff9b95;overflow-wrap:anywhere}.data-table__strong{color:var(--text-1)}.job-list{display:flex;flex-direction:column;gap:6px;max-height:168px;overflow-y:auto}.job-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed rgba(30,40,54,.75)}.job-item:last-child{border-bottom:none}.job-item__name{min-width:0;color:var(--text-2);font-family:var(--font-mono);font-size:12px;overflow-wrap:anywhere}.job-item__meta{display:flex;align-items:center;gap:8px;flex:none}.job-item__interval{color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px}.ws-stats{display:flex;flex-wrap:wrap;gap:10px 28px;padding:0 0 10px;margin-bottom:6px;border-bottom:1px solid var(--border)}.ws-feed{max-height:320px;overflow-y:auto}.ws-feed__head{display:grid;grid-template-columns:74px 128px minmax(0,1fr);gap:10px;padding:6px 12px;background:var(--surface-deep);border-bottom:1px solid var(--border-strong);color:var(--text-3);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase}.ws-feed__row{display:grid;grid-template-columns:74px 128px minmax(0,1fr);gap:10px;padding:5px 12px;border-bottom:1px solid rgba(30,40,54,.6);font-family:var(--font-mono);font-size:11.5px}.ws-feed__row:hover{background:var(--accent-dim)}.ws-feed__time{color:var(--text-3)}.ws-feed__type{color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-feed__text{color:var(--text-2);overflow-wrap:anywhere}.ws-feed__row--invalid .ws-feed__type{color:var(--warn)}.footer{display:flex;flex-wrap:wrap;gap:5px 20px;margin-top:26px;padding-top:12px;border-top:1px solid var(--border);color:var(--text-dim);font-family:var(--font-mono);font-size:10.5px}.footer__key{color:var(--text-3)}@media(max-width:1200px){.grid--4,.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.topbar{flex-wrap:wrap;padding:10px 14px}.page{padding:16px 14px 32px}.grid--4,.grid--3,.grid--2{grid-template-columns:minmax(0,1fr)}.ws-feed__row,.ws-feed__head{grid-template-columns:58px 104px minmax(0,1fr)}}
