:root{--bg: #09110f;--panel: rgba(20, 42, 36, .78);--panel-strong: #102820;--line: rgba(161, 217, 191, .18);--text: #eefbf3;--muted: #91a99a;--mint: #2ff0a0;--amber: #ffbf47;--red: #ff5c5c;--cyan: #8ef6ff}*{box-sizing:border-box}body{margin:0;color:var(--text);background:radial-gradient(circle at 18% 15%,#174c39 0,transparent 32%),radial-gradient(circle at 85% 5%,#214a5c 0,transparent 34%),var(--bg);font-family:Source Han Sans SC,HarmonyOS Sans SC,LXGW WenKai,sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{padding:24px;border-right:1px solid var(--line);background:linear-gradient(180deg,#081612f5,#09110fe0)}.brand{display:flex;gap:12px;align-items:center;margin-bottom:36px}.brand-mark{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;color:#062017;background:var(--mint);font-weight:900}.brand strong{display:block;letter-spacing:.08em}.brand small{color:var(--muted)}nav{display:grid;gap:8px}nav a{padding:12px 14px;color:var(--muted);border:1px solid transparent;border-radius:14px;cursor:default}nav a.active,nav a:hover{color:var(--text);border-color:var(--line);background:#2ff0a014}.workspace{padding:28px}.topbar{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:24px}.topbar p{color:var(--mint);margin:0 0 8px;letter-spacing:.2em}h1{margin:0;font-size:clamp(32px,5vw,62px);line-height:.95}.guardrail{max-width:460px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;color:var(--cyan);background:#8ef6ff12}.hero-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric{min-height:130px;padding:20px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(150deg,#2ff0a01f,#ffffff08);box-shadow:0 24px 80px #0000002e}.metric span,.metric em{display:block;color:var(--muted);font-style:normal}.metric strong{display:block;font-size:38px;margin:8px 0;color:var(--text)}.metric.mini{min-height:96px;padding:12px}.metrics-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.panel{padding:20px;border:1px solid var(--line);border-radius:26px;background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel.hot{background:linear-gradient(145deg,#451c18d1,#152522c7)}.panel h2{display:flex;gap:10px;align-items:center;margin:0 0 16px;font-size:18px}.panel:hover{transition:box-shadow .22s ease,transform .22s ease;box-shadow:0 28px 60px #00000047}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module-card{min-height:120px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#ffffff0a;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.module-card svg{color:var(--mint)}.module-card h3{margin:10px 0 6px}.module-card p{margin:0;color:var(--muted)}.module-card small{display:inline-block;margin-top:10px;color:var(--amber);font-size:12px}.module-card:hover{transform:translateY(-4px);border-color:#8ef6ff73;box-shadow:0 18px 40px #0000003d;background:#ffffff0f}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left}th{color:var(--muted);font-weight:500}.level{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;color:#241408}.l2{background:var(--amber)}.l3{background:#f5df77}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.panel-head p{color:var(--muted);margin:0;font-size:13px}.filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:12px;margin-bottom:12px}.filters input,.filters select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#ffffff08;color:var(--text);outline:none}.tag-tabs{display:flex;gap:8px;margin:10px 0 12px}.tag-tabs .action-btn{background:transparent}.action-row,.operation-row{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px;align-items:center}.action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;border:1px solid var(--line);color:var(--text);background:#ffffff0d;cursor:default;transition:transform .12s ease,border-color .2s ease,opacity .2s ease}.action-btn svg{width:14px;height:14px}.action-btn:hover{border-color:#8ef6ff99}.action-btn.disabled,.action-btn:disabled{opacity:.55;cursor:not-allowed;color:#bac9c2}.action-btn.tiny{padding:6px 8px;font-size:12px}.action-btn:active{transform:translateY(1px)}.action-buttons{display:inline-flex;gap:6px}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:3px 8px;border-radius:999px;font-size:12px;color:#fff;line-height:1.2}.status-success{background:#4ec271e6}.status-failed{background:#ff5c5cf2}.status-uploading{background:#4fa1fff2}.status-queue{background:#ffb547f2;color:#472f05}.status-retry{background:#fc7c2ff2}.status-blocked{background:#94a3b8f2}.status-normal{background:#8ef6ff66;color:#0a1f25}.demo-strip{border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:12px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));background:#ffffff08}.demo-strip div{color:var(--muted);font-size:13px;display:flex;align-items:center;gap:6px}.demo-strip strong{color:var(--text);min-width:72px}.demo-strip .warn{color:#ffbf47}.demo-strip .ok{color:#6effd4}.mode-switch{display:flex;gap:8px;grid-column:1 / -1;margin-top:4px}.mode-switch button{border:1px solid var(--line);background:#ffffff0d;color:var(--text);border-radius:8px;padding:6px 10px}.mode-switch button.active{border-color:var(--mint);color:var(--mint)}.placeholder-box{padding:12px;border:1px dashed var(--line);border-radius:16px;background:#ffffff08}.placeholder-box h3{margin-top:0}.placeholder-box p{margin:8px 0;color:var(--muted)}.placeholder-box ul{margin:8px 0 4px 20px;color:var(--text)}.inline-note{color:var(--amber);margin:8px 0 0;font-size:12px}.audit-panel{margin-top:16px}.audit-panel ul{margin:8px 0 0;padding-left:18px;max-height:220px;overflow:auto}.audit-panel li{margin:8px 0;color:var(--muted);font-size:13px}.blink{animation:blink 1.4s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.52}}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#010504b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(1080px,100%);max-height:85vh;overflow:auto;background:var(--panel-strong);border:1px solid var(--line);border-radius:20px;padding:18px;position:relative}.modal h3{margin-top:0}.modal .close{position:sticky;top:6px;float:right;margin-bottom:8px;display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--text);padding:6px 10px}.modal p{margin:10px 0}.compact th,.compact td{font-size:13px;padding:10px 8px}.workbench{box-shadow:0 24px 48px #0003}@media (max-width: 980px){.shell{grid-template-columns:1fr}.sidebar{position:relative}.hero-grid,.content-grid,.module-grid{grid-template-columns:1fr}.topbar{display:block}}:root{--status-success: #4ec271;--status-failed: #ff5c5c;--status-warning: #ffb547;--status-uploading: #4fa1ff;--status-queue: #1f9cff;--status-retry: #fc7c2f;--status-blocked: #94a3b8;--glass-weak: rgba(10, 28, 24, .54);--glass-mid: rgba(20, 42, 36, .78);--glass-strong: rgba(6, 24, 20, .9);--transition-fast: .16s;--transition-normal: .24s}.panel-glass-weak{background:var(--glass-weak);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-glass-mid{background:var(--glass-mid);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.panel-glass-strong{background:var(--glass-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.module-card .drill-tip{display:inline-flex;gap:6px;color:var(--cyan);font-size:12px;margin-top:8px;opacity:.9}.module-card .drill-tip:before{content:"↗";font-weight:600}.table-wrap{width:100%;overflow-x:auto;border-radius:16px}.table-wrap::-webkit-scrollbar{height:8px}.table-wrap::-webkit-scrollbar-thumb{background:#8ef6ff59;border-radius:999px}.action-btn.disabled:after{content:"（演示受控）";font-size:11px;color:var(--amber);margin-left:4px;white-space:nowrap}.action-btn.refresh{position:relative}.action-btn.refresh:after{content:"";position:absolute;right:10px;width:10px;height:10px;border:2px solid transparent;border-top-color:currentColor;border-right-color:currentColor;border-radius:50%;animation:spin .9s linear infinite;opacity:0;transition:opacity .25s}.action-btn.refresh[data-loading=true]:after{opacity:1}.retry-tip{margin-top:6px;color:var(--amber);font-size:12px}.retry-tip:before{content:"⟲ "}.status-breath{animation:statusBreath 1.8s ease-in-out infinite}@keyframes statusBreath{0%,to{box-shadow:0 0 #fff0}50%{box-shadow:0 0 14px #ffbf476b}}.loading-overlay{display:inline-flex;gap:6px;align-items:center;color:var(--muted);min-height:24px;font-size:12px}.loading-overlay:before{content:"";width:10px;height:10px;border-radius:50%;border:2px solid rgba(47,240,160,.34);border-top-color:var(--mint);animation:spin 1s linear infinite}.skeleton{position:relative;overflow:hidden;background:#ffffff14;border-radius:8px;min-height:14px}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);animation:loading-shimmer 1.3s linear infinite}.chart-wrap{min-height:220px;border:1px dashed var(--line);border-radius:14px;display:grid;place-items:center;background:#ffffff05}.chart-wrap.empty:before{content:"暂无图表数据，使用 mock/近 24h 缓存值演示";color:var(--muted);font-size:13px}@keyframes loading-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (min-width: 1921px){.hero-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.panel-glass-mid{background:#102820d6}}@media (min-width: 1700px) and (max-width: 1920px){.hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 1680px){.hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 1536px){.content-grid{grid-template-columns:1.2fr .8fr}}@media (max-width: 1440px){.hero-grid,.metrics-mini{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1366px){.workspace{padding:18px 14px}.sidebar{padding:16px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media (min-width: 1024px) and (max-width: 1366px){.hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1024px){.shell{grid-template-columns:1fr}.sidebar{position:relative}.hero-grid,.content-grid,.module-grid{grid-template-columns:1fr}.topbar{display:block}}@media (max-width: 768px){.sidebar{border-right:none}.action-btn{padding:8px 10px}.action-row,.operation-row{gap:8px}}
