:root{--bg: #0b0f19;--bg2: #0e1422;--panel: #131a2c;--panel2: #182136;--border: #1f2a42;--text: #dbe4f5;--text2: #7d8aa5;--accent: #3ddc84;--accent2: #4f8cff;--warn: #d9822b;--danger: #e5484d}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;width:100%;height:100%;min-height:100vh;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px}#app>.n-config-provider{height:100%}.app-layout{display:flex;width:100%;min-height:100vh;height:100vh}.full-login{width:100%;height:100vh}.sidebar{width:220px;flex-shrink:0;background:linear-gradient(180deg,#101830,#0c1322);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:18px 12px}.brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;font-size:17px;font-weight:800;letter-spacing:.5px;background:linear-gradient(90deg,#3ddc84,#4f8cff);-webkit-background-clip:text;background-clip:text;color:transparent}.brand .dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.side-nav{flex:1;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--text2);cursor:pointer;font-size:14px;transition:all .15s;border:1px solid transparent}.nav-item:hover{color:var(--text);background:#3ddc840f}.nav-item.active{color:var(--accent);background:#3ddc841a;border-color:#3ddc8440;box-shadow:0 0 14px #3ddc8414}.side-foot{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:8px}.side-foot .who{color:var(--text);font-size:13px;padding:0 10px}.side-foot .foot-row{display:flex;gap:8px;padding:0 6px}.main{flex:1;overflow-y:auto;padding:22px 26px}.page-title{font-size:20px;font-weight:700;margin:0 0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-title:before{content:"";width:4px;height:20px;border-radius:2px;background:linear-gradient(180deg,var(--accent),var(--accent2));margin-right:10px}.glow-card{background:linear-gradient(160deg,var(--panel) 0%,#10172a 100%);border:1px solid var(--border);border-radius:12px;padding:18px 20px;box-shadow:0 4px 24px #00000040}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.toolbar .hint{color:var(--text2);font-size:12.5px;flex:1;min-width:200px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px}.stat-card{background:linear-gradient(160deg,var(--panel) 0%,#10172a 100%);border:1px solid var(--border);border-radius:12px;padding:16px 18px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent)}.stat-card .lbl{color:var(--text2);font-size:12px;margin-bottom:6px}.stat-card .num{font-size:24px;font-weight:800;letter-spacing:.5px}.stat-card .sub{color:var(--text2);font-size:11.5px;margin-top:4px}.status-on{color:var(--accent);font-weight:600}.status-off{color:var(--danger);font-weight:600}.status-mid{color:var(--accent2);font-weight:600}.muted{color:var(--text2)}.chart-box{width:100%;height:320px}.n-data-table{border-radius:10px;overflow:hidden}.zone-select{min-width:170px}.gap{gap:10px}
