@charset "UTF-8";:root{--bg:#080e0c;--side:#09120f;--panel:#101a16;--panel2:#13201b;--line:rgba(141,224,192,.17);--text:#edf4f0;--muted:#8fa39a;--accent:#42cf9a;--accent2:#c7a45b;--danger:#da6454;--shadow:0 14px 38px rgba(0,0,0,.22);--display:"Noto Serif SC","Songti SC",serif;--el-color-primary:var(--accent);--el-bg-color:var(--panel);--el-bg-color-overlay:var(--panel2);--el-text-color-primary:var(--text);--el-text-color-regular:var(--text);--el-text-color-secondary:var(--muted);--el-border-color:var(--line);--el-border-color-light:var(--line);--el-fill-color-light:rgba(66,207,154,.07);--el-mask-color:rgba(0,0,0,.7)}:root[data-theme=cyber]{--bg:#050a18;--side:#070d20;--panel:#0e172c;--panel2:#12203a;--line:#243454;--text:#eaf2ff;--muted:#8fa3c7;--accent:#22d3ee;--accent2:#8b5cf6;--display:Inter,"Noto Sans SC",sans-serif}:root[data-theme=scroll]{--bg:#f4ebd7;--side:#eee1c7;--panel:#fffdf7;--panel2:#faf3e6;--line:rgba(178,138,71,.28);--text:#29261f;--muted:#756d60;--accent:#b33a2e;--accent2:#b28a47;--shadow:0 7px 24px rgba(64,48,25,.08);--display:"Noto Serif SC","Songti SC",serif}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Noto Sans SC,PingFang SC,sans-serif}button{font:inherit}.app-shell{min-height:100vh;background:radial-gradient(circle at 85% 0,color-mix(in srgb,var(--accent),transparent 94%),transparent 35%),var(--bg)}aside{position:fixed;inset:0 auto 0 0;width:228px;background:var(--side);border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;z-index:5;transition:.2s}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 25px}.brand>i{width:42px;height:42px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--accent);font:700 20px var(--display)}.brand b,.brand span{display:block}.brand b{font:700 20px var(--display);letter-spacing:.12em}.brand span{font-size:10px;color:var(--muted);margin-top:3px;letter-spacing:.15em}nav{overflow:auto}nav small{display:block;color:var(--accent);font-size:10px;padding:15px 13px 7px}nav a{height:43px;padding:0 13px;display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--muted);border-radius:8px;margin:3px 0;font-size:13px}nav a i{width:22px;height:22px;border:1px solid var(--line);border-radius:6px;display:grid;place-items:center;font-style:normal;font-size:10px}nav a:hover,nav a.router-link-active{background:color-mix(in srgb,var(--accent),transparent 91%);color:var(--accent)}nav a.router-link-active{box-shadow:inset 3px 0 var(--accent)}.server{margin-top:auto;border-top:1px solid var(--line);padding:15px 8px 0;display:flex;align-items:center;gap:10px;font-size:11px}.server>i{width:8px;height:8px;background:#49c982;border-radius:50%;box-shadow:0 0 0 5px #49c9821a}.server span,.server small{display:block}.server small{color:var(--muted);margin-top:3px}.workspace{margin-left:228px;min-height:100vh}.workspace>header{height:68px;position:sticky;top:0;z-index:4;background:color-mix(in srgb,var(--bg),transparent 8%);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 22px;gap:14px}.workspace>header>div:nth-child(2){font:600 14px var(--display)}.workspace>header>div:nth-child(2) span{color:var(--muted)}.collapse{border:0;background:transparent;color:var(--text);font-size:18px;cursor:pointer}.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.theme-switch{display:flex;border:1px solid var(--line);background:var(--panel);padding:3px;border-radius:9px}.theme-switch button{border:0;background:transparent;color:var(--muted);font-size:10px;padding:5px 8px;border-radius:6px;cursor:pointer}.theme-switch button.active{background:var(--accent);color:var(--bg)}.user{display:flex;align-items:center;gap:8px}.user>i{width:34px;height:34px;border:1px solid var(--accent2);border-radius:50%;display:grid;place-items:center;font-style:normal}.user b,.user small{display:block;font-size:10px}.user small{color:var(--muted);margin-top:2px}.header-actions>button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:7px;padding:7px 10px;cursor:pointer}.workspace>main{padding:22px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.page-head h1{font:700 26px var(--display);margin:0}.page-head p{color:var(--muted);font-size:12px;margin:5px 0 0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:18px;margin-bottom:15px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.toolbar .el-input{max-width:280px}.table-actions{display:flex;gap:6px}.pager{display:flex;justify-content:flex-end;margin-top:16px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.metric{padding:20px;display:flex;gap:14px;align-items:center}.metric i{width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--accent),transparent 88%);display:grid;place-items:center;color:var(--accent);font-style:normal}.metric span,.metric b,.metric small{display:block}.metric span,.metric small{color:var(--muted);font-size:11px}.metric b{font:700 28px var(--display);margin:3px 0}.two-col{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .wide{grid-column:1/-1}.empty-page{text-align:center;padding:60px;color:var(--muted)}.status-ok{color:#49c982}.status-bad{color:var(--danger)}@media(max-width:1000px){.metric-grid{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}.user span{display:none}}@media(max-width:700px){aside{width:68px;padding:15px 9px}.brand>div,nav small,nav a span,.server span{display:none}.brand{padding:2px 4px 20px}.brand>i{width:40px}.workspace{margin-left:68px}.workspace>header{padding:0 10px}.theme-switch button span{display:none}.workspace>main{padding:13px}.metric-grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}.hero-head{padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(120deg,var(--panel),color-mix(in srgb,var(--accent2),transparent 93%));box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-head:after{content:"玄";position:absolute;right:8%;top:-42px;font:120px var(--display);color:color-mix(in srgb,var(--accent),transparent 94%);pointer-events:none}.hero-head small{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.18em}.panel{transition:border-color .2s,transform .2s}.panel:hover{border-color:color-mix(in srgb,var(--accent),transparent 62%)}.el-table{--el-table-header-bg-color:color-mix(in srgb,var(--accent),transparent 94%);--el-table-row-hover-bg-color:color-mix(in srgb,var(--accent),transparent 95%);border-radius:10px;overflow:hidden}.el-dialog{border:1px solid var(--line);border-radius:16px!important;box-shadow:0 28px 80px #00000059!important}.el-button,.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{border-radius:8px!important}.content-tabs{padding:12px 18px 20px}.content-tabs>.el-tabs__header{margin-bottom:18px}.workspace>main{animation:page-in .28s ease-out}@keyframes page-in{0%{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:700px){.hero-head{padding:17px}.hero-head:after{font-size:80px}.el-dialog{width:94%!important}}body{background:var(--bg)}.app-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 78% -10%,color-mix(in srgb,var(--accent),transparent 88%),transparent 34%),linear-gradient(135deg,transparent 55%,color-mix(in srgb,var(--accent2),transparent 97%));z-index:0}.app-shell aside{width:252px;padding:18px 14px 14px;background:color-mix(in srgb,var(--side),#000 7%);box-shadow:18px 0 60px #0000001f}.brand{min-height:65px;margin:0 2px 10px;padding:7px 9px 18px;border-bottom:1px solid var(--line)}.brand>i{width:46px;height:46px;background:radial-gradient(circle,color-mix(in srgb,var(--accent),transparent 86%),transparent);box-shadow:0 0 28px color-mix(in srgb,var(--accent),transparent 80%)}.brand b{font-size:18px}.brand span{font-size:9px}nav{padding-right:3px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}nav small{padding:17px 14px 6px;letter-spacing:.2em;color:color-mix(in srgb,var(--accent),var(--muted) 35%)}nav a{height:44px;margin:4px 0;border:1px solid transparent;border-radius:11px;transition:background .18s,border-color .18s,transform .18s}nav a:hover{transform:translate(2px);border-color:var(--line)}nav a.router-link-active{background:linear-gradient(90deg,color-mix(in srgb,var(--accent),transparent 86%),color-mix(in srgb,var(--accent),transparent 96%));border-color:color-mix(in srgb,var(--accent),transparent 70%);box-shadow:none}nav a.router-link-active i{background:var(--accent);border-color:var(--accent);color:var(--bg)}.server{margin:12px 5px 0;padding:14px 10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel),transparent 24%)}.workspace{position:relative;z-index:1;margin-left:252px;transition:margin-left .22s}.workspace>header{height:74px;padding:0 26px;background:color-mix(in srgb,var(--bg),transparent 12%);box-shadow:0 8px 28px #00000012}.collapse{width:38px;height:38px;border:1px solid var(--line);border-radius:10px!important;background:var(--panel);display:grid;place-items:center}.breadcrumb{display:flex!important;flex-direction:column;gap:3px}.breadcrumb small{color:var(--muted);font-size:9px;letter-spacing:.14em}.breadcrumb b{font:700 15px var(--display)}.theme-switch{border-radius:12px;padding:4px}.theme-switch button{min-width:30px;height:27px;border-radius:8px}.user{padding:4px 9px 4px 5px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel),transparent 18%)}.user>i{background:color-mix(in srgb,var(--accent2),transparent 88%)}.logout{padding:8px 12px!important;border-radius:10px!important}.logout:hover{border-color:var(--danger);color:var(--danger)}.workspace>main{padding:26px 28px 40px;max-width:1600px}.panel,.el-card{border-radius:16px!important;background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel2),transparent 28%))!important;box-shadow:var(--shadow)}.panel:hover{transform:translateY(-1px)}.el-table{border:1px solid var(--line);border-radius:14px}.el-table th.el-table__cell{height:48px;font-size:12px;letter-spacing:.04em}.el-table td.el-table__cell{padding:11px 0}.el-dialog{background:var(--panel)!important;overflow:hidden}.el-dialog__header{padding:20px 22px 14px;border-bottom:1px solid var(--line)}.el-dialog__body{padding:22px}.el-dialog__footer{padding:14px 22px 20px;border-top:1px solid var(--line)}.el-button{min-height:34px}.el-button--primary{box-shadow:0 7px 20px color-mix(in srgb,var(--accent),transparent 78%)}.el-button,.el-button>span,.el-tag,.el-tag .el-tag__content{display:inline-flex;align-items:center;justify-content:center}.el-button>span,.el-tag .el-tag__content{min-height:1em;line-height:1.2}.is-collapsed aside{width:76px;padding-left:10px;padding-right:10px}.is-collapsed .workspace{margin-left:76px}.is-collapsed .brand>div,.is-collapsed nav small,.is-collapsed nav a span,.is-collapsed .server span{display:none}.is-collapsed .brand{padding-left:5px}.is-collapsed nav a{justify-content:center;padding:0}.is-collapsed nav a i{width:28px;height:28px}.is-collapsed .server{justify-content:center;padding:14px 0}@media(max-width:900px){.app-shell aside{width:76px;padding-left:10px;padding-right:10px}.workspace,.is-collapsed .workspace{margin-left:76px}.brand>div,nav small,nav a span,.server span{display:none}.brand{padding-left:5px}nav a{justify-content:center;padding:0}.server{justify-content:center}.workspace>header{padding:0 14px}.workspace>main{padding:18px}.header-actions{gap:7px}.logout{font-size:0}.logout:after{content:"退";font-size:12px}}@media(max-width:560px){.app-shell aside{width:62px}.workspace,.is-collapsed .workspace{margin-left:62px}.brand>i{width:38px;height:38px}.theme-switch,.breadcrumb small{display:none}.workspace>main{padding:12px}.workspace>header{height:62px}.user{border:0;background:transparent;padding:0}.metric-grid{gap:10px}}@media(prefers-reduced-motion:reduce){.workspace>main,.panel,nav a{animation:none!important;transition:none!important}}.app-shell{background:var(--bg)}.app-shell:before{content:none;display:none;background:none}.panel:hover{transform:none}html,body,#app{height:100%;min-height:0;overflow:hidden}.app-shell{height:100vh;min-height:0;overflow:hidden}.app-shell aside{height:100vh;overflow:hidden}.side-scroll{flex:1;min-height:0;margin-right:-8px;padding-right:8px}.side-scroll nav{overflow:visible}.workspace{height:100vh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.workspace>header{position:relative;top:auto;flex:0 0 auto}.workspace-scroll{flex:1;min-height:0}.workspace-scroll main{padding:26px 28px 40px;max-width:1600px;margin:auto;animation:page-in .28s ease-out}:root[data-theme=ink],:root:not([data-theme]){--bg: #0b1512;--side: #0d1915;--panel: #14231d;--panel2: #182a23;--line: rgba(149, 225, 195, .24);--text: #f2f7f4;--muted: #a9bbb3;--accent: #4bd9a4;--accent2: #d2b66e;--danger: #e27163;--el-fill-color-blank: var(--panel);--el-fill-color: var(--panel2);--el-fill-color-light: rgba(75, 217, 164, .09);--el-fill-color-lighter: rgba(75, 217, 164, .06);--el-fill-color-extra-light: rgba(75, 217, 164, .035);--el-disabled-bg-color: color-mix(in srgb, var(--panel2), #000 8%);--el-disabled-text-color: color-mix(in srgb, var(--muted), transparent 18%)}:root[data-theme=cyber]{--el-fill-color-blank: var(--panel);--el-fill-color: var(--panel2);--el-fill-color-light: rgba(34, 211, 238, .08);--el-disabled-bg-color: color-mix(in srgb, var(--panel2), #000 8%)}:root[data-theme=scroll]{--el-fill-color-blank: var(--panel);--el-fill-color: var(--panel2);--el-fill-color-light: rgba(179, 58, 46, .055);--el-disabled-bg-color: #f0e6d4}.el-button:not(.el-button--primary):not(.is-link){background:color-mix(in srgb,var(--panel2),transparent 4%);border-color:var(--line);color:var(--text)}.el-button:not(.el-button--primary):not(.is-link):hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent),transparent 45%);background:color-mix(in srgb,var(--accent),transparent 90%)}.el-button.is-disabled,.el-button.is-disabled:hover{opacity:.58;color:var(--el-disabled-text-color);background:var(--el-disabled-bg-color);border-color:var(--line)}@media(max-width:900px){.workspace-scroll main{padding:18px}}@media(max-width:560px){.workspace-scroll main{padding:12px}}
