:root{--bg:#edf1f6;--bg-soft:#f5f7fb;--panel:#fffffffa;--panel-strong:#fff;--panel-muted:#f7f9fc;--text:#122033;--muted:#5f6d82;--line:#1b2c441f;--line-strong:#1b2c442e;--accent:#1761ee;--accent-soft:#1761ee1a;--danger:#c53f57;--danger-soft:#c53f571f;--warning:#9a6400;--warning-soft:#9a64001f;--success:#178459;--success-soft:#1784591f;--sidebar-bg:#182538;--sidebar-line:#ffffff1a;--overlay:#09122166;--shadow:0 12px 36px #13233b14;--shadow-overlay:0 24px 80px #0d1c312e;--radius-lg:18px;--radius-md:12px;--radius-sm:9px;--sidebar-width:236px;color:var(--text);background:var(--bg);font-family:Microsoft YaHei,微软雅黑,Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}body{min-width:320px;color:var(--text);background:radial-gradient(circle at 100% 0,#1761ee14,#0000 28%),radial-gradient(circle at 0 100%,#1c765e0f,#0000 32%),linear-gradient(#f4f7fb 0%,#edf1f6 100%);margin:0;overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--panel-strong);width:100%;min-height:34px;color:var(--text);padding:6px 9px}textarea{resize:vertical;min-height:108px}input:focus,select:focus,textarea:focus{border-color:#1761ee66;outline:2px solid #1761ee24}#root{height:100vh;min-height:100vh;overflow:hidden}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);height:100vh;min-height:100vh;display:grid;position:relative;overflow:hidden}.shell-sidebar{border-right:1px solid var(--sidebar-line);background:linear-gradient(180deg, #ffffff05, transparent 25%), var(--sidebar-bg);color:#f2f6fb;z-index:20;flex-direction:column;align-self:start;gap:16px;min-width:0;height:100vh;padding:16px 14px 18px;display:flex;position:sticky;top:0;overflow:hidden auto}.shell-sidebar-header,.topbar-main,.topbar-leading,.list-cell-primary,.timeline-head,.console-card-header,.module-title-row,.detail-drawer-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.brand-block{gap:3px;display:grid}.brand-badge{background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:inline-flex}.brand-block strong{font-size:1rem}.brand-block span,.sidebar-caption,.sidebar-footer{color:#e2ecf7b8;font-size:.8rem}.sidebar-nav{gap:6px;display:grid}.shell-nav-link{color:#eef4fcdb;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:.9rem;transition:background .12s,color .12s;display:flex}.shell-nav-link:hover,.shell-nav-link.active{color:#fff;background:#ffffff17}.shell-nav-link small{color:#e1ebf89e}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.realtime-pill{background:#ffffff14;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:6px 10px;display:inline-flex}.status-dot{background:#7dd3fc;border-radius:50%;width:8px;height:8px}.status-dot.failed{background:#fda4af}.status-dot.reconnecting{background:#fcd34d}.status-dot.idle,.status-dot.closed{background:#94a3b8}.shell-workspace{overscroll-behavior:contain;min-width:0;height:100vh;min-height:0;display:block;overflow:hidden auto}.shell-topbar{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f5f7fbf0;border-bottom:1px solid #1b2c4414;padding:14px 22px;position:sticky;top:0}.topbar-main,.topbar-leading{align-items:center}.topbar-title{gap:2px;display:grid}.topbar-title h1{margin:0;font-size:1.15rem}.topbar-title p{color:var(--muted);margin:0;font-size:.82rem}.shell-content-scroll{min-width:0;min-height:0}.shell-content{min-width:0;padding:18px 22px 28px}.module-page{gap:10px;min-width:0;display:grid}.module-hero,.console-card,.metric-card,.detail-item,.timeline-item{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);min-width:0}.module-hero{border-radius:var(--radius-lg);background:radial-gradient(circle at top right, #1761ee1a, transparent 25%), radial-gradient(circle at bottom left, #15803d0f, transparent 30%), var(--panel);padding:14px 16px}.module-hero-copy{gap:8px;min-width:0;display:grid}.module-title-row{align-items:flex-end;min-width:0}.module-title-row h1{margin:0;font-size:1.4rem;line-height:1.15}.module-hero p,.console-card-copy p,.empty-state p,.detail-drawer-copy p,.timeline-copy span,.field-hint,.detail-item-label,.list-cell-meta,.helper-text{color:var(--muted);margin:0}.module-eyebrow{background:var(--accent-soft);width:fit-content;color:var(--accent);border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.module-hero-actions,.console-card-actions,.detail-drawer-actions,.toolbar-row,.toolbar-actions,.inline-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.workspace-grid{gap:10px;min-width:0;display:grid}.workspace-grid.with-drawer{grid-template-columns:minmax(0,1fr)}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.metric-card{border-radius:14px;gap:6px;padding:12px 14px;display:grid}.metric-card.tone-accent{background:linear-gradient(#1761ee14,#fffffffa)}.metric-card.tone-danger{background:linear-gradient(#c53f5714,#fffffffa)}.metric-card.tone-success{background:linear-gradient(#17845914,#fffffffa)}.metric-label{color:var(--muted);font-size:.78rem}.metric-value{font-size:1.5rem;line-height:1.1}.metric-note{color:var(--muted);font-size:.78rem}.console-card{border-radius:16px;gap:10px;padding:12px;display:grid;overflow:hidden}.console-card-header{align-items:center;min-width:0}.console-card-copy{gap:3px;min-width:0;display:grid}.console-card-copy h2{margin:0;font-size:.98rem}.filter-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;min-width:0;display:grid}.filter-field{gap:4px;font-size:.76rem;display:grid}.field-label{color:var(--text);font-weight:600}.field-hint{font-size:.75rem}.console-button{cursor:pointer;border:1px solid #0000;border-radius:10px;min-height:34px;padding:0 12px;transition:transform .12s,background .12s,border-color .12s}.console-button:hover{transform:translateY(-1px)}.console-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.console-button.tone-primary{background:var(--accent);color:#fff}.console-button.tone-secondary{background:var(--panel-muted);border-color:var(--line);color:var(--text)}.console-button.tone-ghost{border-color:var(--line);color:var(--text);background:0 0}.console-button.tone-danger{background:var(--danger);color:#fff}.status-pill{min-height:26px;color:var(--text);white-space:nowrap;background:#5e6d821f;border-radius:999px;align-items:center;padding:3px 9px;font-size:.76rem;font-weight:600;display:inline-flex}.status-pill.tone-accent{background:var(--accent-soft);color:var(--accent)}.status-pill.tone-success{background:var(--success-soft);color:var(--success)}.status-pill.tone-warning{background:var(--warning-soft);color:var(--warning)}.status-pill.tone-danger{background:var(--danger-soft);color:var(--danger)}.data-table-shell{border:1px solid var(--line);background:var(--panel-strong);border-radius:14px;width:100%;max-width:100%;overflow:auto}.data-table{border-collapse:collapse;width:max-content;min-width:100%}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid #1b2c4414;padding:9px 10px;font-size:.84rem}.data-table th{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;z-index:1;background:#f8fafd;font-size:.73rem;position:sticky;top:0}.data-table tr.is-clickable{cursor:pointer}.data-table tr.is-clickable:hover{background:#1761ee0d}.data-table tr.is-selected{background:#1761ee14}.table-row-actions{white-space:nowrap}.table-actions-column{width:1%}.list-cell-primary{align-items:center;min-width:0}.list-cell-copy{gap:4px;min-width:0;display:grid}.list-cell-copy strong{font-size:.88rem}.list-cell-meta{font-size:.76rem}.list-cell-stack{gap:4px;display:grid}.empty-cell{padding:22px 14px}.empty-state{justify-items:start;gap:4px;display:grid}.inline-kv{align-items:center;gap:8px;font-size:.8rem;display:inline-flex}.inline-kv.is-muted{color:var(--muted)}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;min-width:0;display:grid}.detail-item{border-radius:12px;gap:6px;padding:11px 12px;display:grid}.detail-item.is-emphasis .detail-item-value{font-size:1.1rem;font-weight:700}.detail-item-label{font-size:.74rem}.detail-item-value{word-break:break-word;line-height:1.45}.stack-list{gap:8px;min-width:0;display:grid}.timeline-item{border-radius:13px;gap:8px;padding:11px 12px;display:grid}.timeline-copy{gap:3px;min-width:0;display:grid}.timeline-copy strong{font-size:.88rem}.timeline-copy span,.timeline-body,.muted,.helper-text{font-size:.8rem}.timeline-body{line-height:1.5}.shell-content>*,.module-page>*,.console-card>*,.stack-list>*,.split-panels>*{min-width:0}.module-hero p,.console-card-copy p,.detail-item-value,.timeline-copy strong,.timeline-copy span,.timeline-body,.helper-text,.list-cell-copy strong,.list-cell-meta{overflow-wrap:anywhere}.error-banner{color:var(--danger);background:#c53f5714;border:1px solid #c53f572e;border-radius:12px;padding:10px 12px}.drawer-backdrop{pointer-events:none;opacity:0;z-index:35;background:0 0;transition:opacity .16s;position:fixed;inset:0}.drawer-backdrop.is-open{background:var(--overlay);opacity:1;pointer-events:auto}.detail-drawer{width:min(880px,100vw - 36px);box-shadow:var(--shadow-overlay);z-index:40;background:linear-gradient(#fffffffc,#f7fafdfc);border:1px solid #1b2c4424;border-radius:24px;grid-template-rows:auto minmax(0,1fr);transition:transform .18s;display:grid;position:fixed;top:18px;bottom:18px;right:18px;transform:translate(calc(100% + 24px))}.detail-drawer.is-open{transform:translate(0)}.detail-drawer-header{border-bottom:1px solid #1b2c4414;align-items:center;padding:18px 18px 12px}.detail-drawer-copy{gap:4px;display:grid}.detail-drawer-copy h2{margin:0;font-size:1.15rem}.detail-drawer-body{gap:10px;padding:14px 18px 20px;display:grid;overflow:auto}.topbar-menu-button,.sidebar-close-button{display:none}.topbar-chip{border:1px solid var(--line);color:var(--muted);background:#ffffffbd;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;display:inline-flex}.dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;display:grid}.dashboard-grid>*{grid-column:span 12}.dashboard-grid .span-4{grid-column:span 4}.dashboard-grid .span-5{grid-column:span 5}.dashboard-grid .span-6{grid-column:span 6}.dashboard-grid .span-7{grid-column:span 7}.dashboard-grid .span-8{grid-column:span 8}.split-panels{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;min-width:0;display:grid}.link-inline{color:var(--accent);font-weight:600}.mono{font-family:Microsoft YaHei,微软雅黑,Consolas,monospace}@media (width<=1100px){.detail-drawer{width:min(720px,100vw - 24px);top:12px;bottom:12px;right:12px}}@media (width<=960px){body{overflow:auto}#root{height:auto;overflow:visible}.app-shell{grid-template-columns:minmax(0,1fr);height:auto;min-height:100vh;overflow:visible}.shell-sidebar{width:min(280px,86vw);box-shadow:var(--shadow-overlay);transition:transform .16s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.shell-sidebar.open{transform:translate(0)}.shell-workspace{height:auto;min-height:100vh;overflow:visible}.topbar-menu-button,.sidebar-close-button{display:inline-flex}.shell-topbar{padding:12px 14px}.shell-content{padding:14px}.detail-drawer{width:auto;left:12px}}
