.gate[data-v-262b9c15]{position:fixed;top:0;right:0;bottom:0;left:0;background:#2c302d73;display:flex;align-items:center;justify-content:center;z-index:999}.gate-card[data-v-262b9c15]{width:460px;max-width:calc(100vw - 40px);background:#fcfbf8;border:1px solid #e6e2d9;border-radius:12px;padding:26px 26px 20px;box-shadow:0 18px 48px #2c302d40}.gate-card h3[data-v-262b9c15]{margin:0 0 10px;font-size:17px;color:#2c302d}.gate-msg[data-v-262b9c15]{margin:0 0 14px;font-size:13px;line-height:1.7;color:#61675f}.gate-form[data-v-262b9c15]{display:flex;flex-direction:column;gap:10px}.gate-input[data-v-262b9c15]{width:100%;box-sizing:border-box;height:38px;padding:0 12px;border:1px solid #d8d3c6;border-radius:8px;font-size:13px;outline:none;background:#fff;color:#2c302d}.gate-input[data-v-262b9c15]:focus{border-color:#5a7266}.gate-err[data-v-262b9c15]{font-size:12px;color:#b0594e}.gate-tip[data-v-262b9c15]{font-size:11.5px;color:#9aa096;margin-top:2px}.gate-actions[data-v-262b9c15]{margin-top:6px;display:flex;align-items:center;gap:16px}.gate-btn[data-v-262b9c15]{height:36px;padding:0 22px;border:none;border-radius:8px;background:#5a7266;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.gate-btn[data-v-262b9c15]:disabled{opacity:.6;cursor:default}.portal[data-v-f470df39]{min-height:100vh;background:#f5f3ec;display:flex;flex-direction:column}.p-head[data-v-f470df39]{padding:40px 48px 8px}.p-brand h1[data-v-f470df39]{margin:0;font-size:26px;color:#2c302d;letter-spacing:.5px}.p-ver[data-v-f470df39]{display:inline-block;margin-top:6px;font-size:12px;color:#8a9184;letter-spacing:1px}.p-sub[data-v-f470df39]{margin:14px 0 0;font-size:13px;color:#61675f}.p-loading[data-v-f470df39]{flex:1;display:flex;align-items:center;justify-content:center;color:#8a9184;font-size:14px}.p-grid[data-v-f470df39]{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;padding:28px 48px 20px;align-content:start}.p-card[data-v-f470df39]{background:#fcfbf8;border:1px solid #e6e2d9;border-radius:14px;padding:22px 22px 16px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;display:flex;flex-direction:column;gap:12px;min-height:168px}.p-card[data-v-f470df39]:hover{transform:translateY(-3px);box-shadow:0 12px 28px #2c302d1a;border-color:#c9d2c9}.p-card.off[data-v-f470df39]{cursor:not-allowed;opacity:.55;filter:grayscale(.7)}.p-card.off[data-v-f470df39]:hover{transform:none;box-shadow:none;border-color:#e6e2d9}.p-icon[data-v-f470df39]{width:46px;height:46px;border-radius:12px;background:#eef1ec;display:flex;align-items:center;justify-content:center;font-size:24px}.p-body h3[data-v-f470df39]{margin:0 0 6px;font-size:16px;color:#2c302d}.p-body p[data-v-f470df39]{margin:0;font-size:12px;line-height:1.65;color:#7a8074}.p-foot[data-v-f470df39]{margin-top:auto}.p-tag[data-v-f470df39]{display:inline-block;font-size:11px;padding:3px 10px;border-radius:99px;letter-spacing:.5px}.p-tag.on[data-v-f470df39]{color:#3f6b57;background:#e4efe8;border:1px solid #c4dccd}.p-tag.off[data-v-f470df39]{color:#9a8f7a;background:#f0ede4;border:1px solid #e0dac9}.p-note[data-v-f470df39]{padding:0 48px 28px;font-size:11.5px;color:#9aa096}.app-root[data-v-611ce8ae]{min-height:100vh}.topbar-right[data-v-611ce8ae]{display:flex;align-items:center;gap:16px}.tb-link[data-v-611ce8ae]{color:#61675f;text-decoration:none;font-size:13px}.frame-wrap[data-v-611ce8ae]{min-height:100vh;display:flex;flex-direction:column;background:#f5f3ec}.board-frame[data-v-611ce8ae]{flex:1;width:100%;border:none;background:#fff}:root{--bg: #f5f4f0;--panel: #fcfbf8;--border: #e6e2d9;--text: #2c302d;--text-2: #61675f;--text-3: #9aa096;--brand: #5a7266;--brand-soft: #eaede9;--up: #b0594e;--down: #5f8a6e;--warn: #a38b6c;--radius: 10px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}.layout{display:flex;height:100%}.sidebar{width:208px;flex:0 0 208px;background:#262926;color:#c4c8bf;display:flex;flex-direction:column;padding:18px 0}.brand{padding:0 18px 18px;border-bottom:1px solid #3a3e3a}.brand h1{font-size:15px;margin:0 0 4px;color:#fff;letter-spacing:.3px}.brand span{font-size:11px;color:#828a7e}.nav{padding:12px 10px;flex:1}.nav a{display:flex;align-items:center;gap:9px;padding:9px 12px;margin-bottom:3px;border-radius:8px;color:#c4c8bf;text-decoration:none;font-size:13.5px;cursor:pointer;transition:.15s}.nav a:hover{background:#1e293b;color:#fff}.nav a.on{background:var(--brand);color:#fff;font-weight:600}.nav .dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6}.sidebar-foot{padding:12px 18px 0;border-top:1px solid #3a3e3a;font-size:11px;color:#828a7e;line-height:1.6}.main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.topbar{height:58px;flex:0 0 58px;background:var(--panel);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 22px}.topbar h2{font-size:16px;margin:0;font-weight:600}.topbar .sub{font-size:12px;color:var(--text-3);margin-top:2px}.topbar-right{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--text-2)}.content{flex:1;overflow-y:auto;padding:18px 22px 40px}.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1180px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3,.g2{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.card-head h3{font-size:13.5px;margin:0;font-weight:600}.card-head .hint{font-size:11.5px;color:var(--text-3)}.kpi-label{font-size:12px;color:var(--text-2);margin-bottom:6px}.kpi-value{font-size:25px;font-weight:650;letter-spacing:-.4px;line-height:1.15}.kpi-unit{font-size:12px;color:var(--text-3);margin-left:4px;font-weight:400}.kpi-foot{margin-top:8px;font-size:11.5px;color:var(--text-3);display:flex;gap:8px;align-items:center}.tag{display:inline-block;padding:1px 7px;border-radius:20px;font-size:11px;line-height:17px;font-weight:500}.tag-up{background:#f6ece9;color:var(--up)}.tag-down{background:#edf2ee;color:var(--down)}.tag-warn{background:#f4eee5;color:var(--warn)}.tag-mute{background:#f1efe9;color:var(--text-2)}.tag-brand{background:var(--brand-soft);color:var(--brand)}table.t{width:100%;border-collapse:collapse;font-size:13px}table.t th{text-align:right;font-weight:500;color:var(--text-2);font-size:12px;padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap}table.t th:first-child,table.t td:first-child{text-align:left}table.t td{text-align:right;padding:8px 10px;border-bottom:1px solid #eeeae2;white-space:nowrap;font-variant-numeric:tabular-nums}table.t td.name{color:var(--text)}.empty{padding:40px 0;text-align:center;color:var(--text-3);font-size:13px}.err{padding:18px;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:13px}.loading{padding:40px 0;text-align:center;color:var(--text-3);font-size:13px}.note{margin-top:12px;padding:10px 12px;border-radius:8px;background:#f5f3ee;border-left:3px solid var(--brand);font-size:12px;color:var(--text-2);line-height:1.65}.chart{width:100%;height:280px}.chart-sm{height:220px}:root{--dur-fast: .14s;--dur: .22s;--dur-slow: .42s;--dur-count: .9s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-inout: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--rise: 10px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes mz-fade-up{0%{opacity:0;transform:translate3d(0,var(--rise),0)}to{opacity:1;transform:translateZ(0)}}@keyframes mz-fade-in{0%{opacity:0}to{opacity:1}}@keyframes mz-scale-in{0%{opacity:0;transform:scale(.965)}to{opacity:1;transform:scale(1)}}@keyframes mz-slide-right{0%{opacity:0;transform:translate3d(-8px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes mz-shimmer{0%{background-position:-420px 0}to{background-position:420px 0}}@keyframes mz-bar-grow{0%{transform:translateY(-50%) scaleX(0)}to{transform:translateY(-50%) scaleX(1)}}@keyframes mz-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}@keyframes mz-flash{0%{background-color:#1d4ed824}to{background-color:transparent}}.anim-up{animation:mz-fade-up var(--dur-slow) var(--ease-out) backwards}.anim-in{animation:mz-fade-in var(--dur) var(--ease-out) backwards}.anim-scale{animation:mz-scale-in var(--dur) var(--ease-out) backwards}.stagger>*{animation:mz-fade-up var(--dur-slow) var(--ease-out) backwards}.stagger>*:nth-child(1){animation-delay:0ms}.stagger>*:nth-child(2){animation-delay:45ms}.stagger>*:nth-child(3){animation-delay:90ms}.stagger>*:nth-child(4){animation-delay:135ms}.stagger>*:nth-child(5){animation-delay:.18s}.stagger>*:nth-child(6){animation-delay:225ms}.stagger>*:nth-child(7){animation-delay:.27s}.stagger>*:nth-child(8){animation-delay:315ms}.stagger>*:nth-child(9){animation-delay:.36s}.stagger>*:nth-child(10){animation-delay:405ms}.stagger>*:nth-child(11){animation-delay:.45s}.stagger>*:nth-child(12){animation-delay:495ms}.card{transition:box-shadow var(--dur) var(--ease-out),transform var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out)}.card:hover{box-shadow:0 6px 22px -8px #2c302d29;border-color:#d6d2c8;transform:translateY(-1px)}@media(hover:none){.card:hover{transform:none;box-shadow:none}}.kpi-value,.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.kpi-value.is-bump{animation:mz-flash .62s var(--ease-out) 1;border-radius:4px}.view-body{animation:mz-fade-up .32s var(--ease-out) backwards}.nav{position:relative}.nav-pill{position:absolute;left:10px;right:10px;top:0;height:38px;border-radius:8px;background:var(--brand);box-shadow:0 6px 16px -6px #5a7266b3;transition:transform .32s var(--ease-out),height .24s var(--ease-out);pointer-events:none;z-index:0}.nav a{position:relative;z-index:1;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.nav a:hover{background:#33372f}.nav a.on,.nav a.on:hover{background:transparent}.sk{background:linear-gradient(90deg,#eef1f6 25%,#f7f9fc 37%,#eef1f6 63%);background-size:840px 100%;animation:mz-shimmer 1.35s linear infinite;border-radius:6px}.sk-line{height:12px}.sk-kpi{height:26px;width:62%}.sk-chart{height:100%;min-height:160px;border-radius:8px}.sk-row{height:12px}table.t tbody tr{transition:background var(--dur-fast) var(--ease-out)}table.t tbody tr:hover{background:#f6f4ef}.databar-cell{position:relative}.databar{position:absolute;left:0;top:50%;height:62%;transform:translateY(-50%) scaleX(0);transform-origin:left center;border-radius:0 3px 3px 0;background:linear-gradient(90deg,#5a726629,#5a726612);animation:mz-bar-grow .56s var(--ease-out) both;pointer-events:none}.databar>span{position:relative}.pulse-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:5px;animation:mz-pulse 1.8s var(--ease-inout) infinite}.content::-webkit-scrollbar{width:9px}.content::-webkit-scrollbar-track{background:transparent}.content::-webkit-scrollbar-thumb{background:#d8d3c9;border-radius:6px;border:2px solid var(--bg)}.content::-webkit-scrollbar-thumb:hover{background:#c3bdb1}.chart-wrap{animation:mz-fade-in .38s var(--ease-out) backwards}
