.toast-fade-enter-active[data-v-115c8478],.toast-fade-leave-active[data-v-115c8478]{transition:opacity .25s,transform .25s}.toast-fade-enter-from[data-v-115c8478],.toast-fade-leave-to[data-v-115c8478]{opacity:0;transform:translate(-50%) translateY(-8px)}:root{--font-sans: "Plus Jakarta Sans", -apple-system, "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;--font-mono: "IBM Plex Mono", "PingFang SC", monospace;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--transition: .25s cubic-bezier(.4,0,.2,1)}[data-theme=light]{--mask-bg: rgba(0,0,0,.45);--bg-body: #F0F4F8;--bg-sidebar: #FFFFFF;--bg-card: #FFFFFF;--bg-card-alt: #F7F9FC;--bg-input: #F0F4F8;--bg-input-focus: #FFFFFF;--bg-hover: #EDF2F7;--bg-login-left: linear-gradient(160deg, #EBF2FC 0%, #F5F8FF 50%, #E8EEF8 100%);--bg-login-right: linear-gradient(160deg, #1A56DB 0%, #1E40AF 50%, #1E3A8A 100%);--border: #E2E8F0;--border-hover: #CBD5E1;--border-active: rgba(37,99,235,.5);--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-on-accent: #FFFFFF;--accent: #2563EB;--accent-soft: rgba(37,99,235,.08);--accent-glow: rgba(37,99,235,.12);--accent-hover: #1D4ED8;--gold: #D97706;--gold-soft: rgba(217,119,6,.08);--emerald: #059669;--emerald-soft: rgba(5,150,105,.08);--red: #DC2626;--red-soft: rgba(220,38,38,.08);--chart-bar: linear-gradient(180deg, rgba(37,99,235,.7), rgba(37,99,235,.2));--chart-bar-active: linear-gradient(180deg, #2563EB, rgba(37,99,235,.4));--sidebar-active-bg: rgba(37,99,235,.06);--sidebar-active-border: #2563EB;--stat-card-shadow: 0 1px 4px rgba(0,0,0,.04);--logo-gradient: linear-gradient(135deg, #2563EB, #1D4ED8)}[data-theme=dark]{--mask-bg: rgba(0,0,0,.6);--bg-body: #0B1120;--bg-sidebar: #111827;--bg-card: #1A2332;--bg-card-alt: #162033;--bg-input: #0F1A2A;--bg-input-focus: #162033;--bg-hover: rgba(255,255,255,.04);--bg-login-left: linear-gradient(160deg, #0B1120 0%, #111827 100%);--bg-login-right: linear-gradient(160deg, #0F1B2D 0%, #162033 50%, #1A2740 100%);--border: rgba(255,255,255,.06);--border-hover: rgba(255,255,255,.12);--border-active: rgba(96,165,250,.5);--text-primary: #F1F5F9;--text-secondary: #94A3B8;--text-muted: #64748B;--text-on-accent: #FFFFFF;--accent: #3B82F6;--accent-soft: rgba(59,130,246,.12);--accent-glow: rgba(59,130,246,.15);--accent-hover: #60A5FA;--gold: #F59E0B;--gold-soft: rgba(245,158,11,.12);--emerald: #10B981;--emerald-soft: rgba(16,185,129,.12);--red: #EF4444;--red-soft: rgba(239,68,68,.12);--chart-bar: linear-gradient(180deg, rgba(59,130,246,.5), rgba(59,130,246,.15));--chart-bar-active: linear-gradient(180deg, #3B82F6, rgba(59,130,246,.3));--sidebar-active-bg: rgba(59,130,246,.1);--sidebar-active-border: #3B82F6;--stat-card-shadow: none;--logo-gradient: linear-gradient(135deg, #3B82F6, #1D4ED8)}*{margin:0;padding:0;box-sizing:border-box}html{transition:background var(--transition)}body{font-family:var(--font-sans);background:var(--bg-body);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}a{color:inherit;text-decoration:none}button{font-family:var(--font-sans)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:8px}::-webkit-scrollbar-track{background:transparent}.login-page{display:flex;min-height:100vh}.login-left{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;position:relative;background:var(--bg-login-left)}.login-left:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 25% 40%,var(--accent-glow) 0%,transparent 60%),radial-gradient(ellipse at 75% 70%,var(--gold-soft) 0%,transparent 50%);pointer-events:none}.login-card{position:relative;width:100%;max-width:400px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:44px 36px;box-shadow:0 8px 40px #00000014}.login-logo{display:flex;align-items:center;gap:10px;margin-bottom:32px}.login-logo-icon{width:38px;height:38px;background:var(--logo-gradient);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:#fff;box-shadow:0 3px 12px #2563eb40}.login-logo-text{font-size:20px;font-weight:700;letter-spacing:-.5px}.login-logo-text span{color:var(--text-muted);font-weight:400;font-size:13px;margin-left:6px}.login-title{font-size:24px;font-weight:800;letter-spacing:-.5px;margin-bottom:4px}.login-subtitle{color:var(--text-secondary);font-size:14px;margin-bottom:28px}.login-tabs{display:flex;margin-bottom:24px;background:var(--bg-input);border-radius:var(--radius-sm);padding:3px}.login-tab{flex:1;padding:9px 0;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.login-tab.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.login-right{flex:1;background:var(--bg-login-right);display:flex;flex-direction:column;justify-content:center;padding:80px;position:relative;border-left:1px solid var(--border)}.login-right *{color:#fff!important}.login-right h2{font-size:34px;font-weight:800;letter-spacing:-1px;line-height:1.3;margin-bottom:16px}.login-right h2 .hl{opacity:.7}.login-right p{opacity:.75;font-size:15px;line-height:1.8;max-width:380px}.login-features{margin-top:36px;display:flex;flex-direction:column;gap:14px}.login-feature{display:flex;align-items:center;gap:12px;font-size:14px;opacity:.85}.login-feature-dot{width:7px;height:7px;background:#fffc;border-radius:50%;flex-shrink:0;box-shadow:0 0 8px #fff6}.form-group{margin-bottom:18px}.form-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px;letter-spacing:.3px}.form-input{width:100%;padding:11px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;transition:all .2s;outline:none}.form-input:focus{background:var(--bg-input-focus);border-color:var(--border-active);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::placeholder{color:var(--text-muted)}select.form-input{cursor:pointer}.btn-primary{background:var(--accent);border:none;border-radius:var(--radius-sm);color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 2px 10px var(--accent-glow);padding:12px}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-glow)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-sm{padding:8px 20px;font-size:12px}.btn-block{width:100%}.sidebar{position:fixed;left:0;top:0;bottom:0;width:230px;background:var(--bg-sidebar);border-right:1px solid var(--border);padding:20px 0;display:flex;flex-direction:column;overflow-y:auto;transition:background var(--transition),border var(--transition);z-index:100}.sidebar-logo{display:flex;align-items:center;gap:9px;padding:0 18px;margin-bottom:24px}.sidebar-logo-icon{width:30px;height:30px;background:var(--logo-gradient);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff}.sidebar-logo-text{font-size:15px;font-weight:700}.sidebar-logo-text .sub{font-size:10px;color:var(--text-muted);font-weight:500;margin-left:5px}.sidebar-section{padding:0 10px;margin-bottom:16px}.sidebar-section-title{font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:1.2px;padding:0 8px;margin-bottom:6px}.sidebar-item{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;position:relative}.sidebar-item:hover{color:var(--text-primary);background:var(--bg-hover)}.sidebar-item.active{color:var(--accent);background:var(--sidebar-active-bg);font-weight:600}.sidebar-item.active:before{content:"";position:absolute;left:-10px;width:3px;height:20px;background:var(--sidebar-active-border);border-radius:0 3px 3px 0}.sidebar-item svg{width:17px;height:17px;flex-shrink:0}.sidebar-item.dim{opacity:.45;cursor:not-allowed}.sidebar-item .soon{margin-left:auto;font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px;background:var(--bg-hover);color:var(--text-muted);letter-spacing:.5px}.sidebar-item .locked-tag{margin-left:auto;font-size:9px;font-weight:600;padding:0 6px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card-alt);color:var(--text-muted);letter-spacing:.5px;white-space:nowrap;line-height:16px}.sidebar-bottom{margin-top:auto;padding:14px 18px;border-top:1px solid var(--border)}.sidebar-user{display:flex;align-items:center;gap:9px}.sidebar-avatar{width:30px;height:30px;background:linear-gradient(135deg,var(--accent),var(--accent-hover));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.sidebar-user-name{font-size:12px;font-weight:600}.sidebar-user-code{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.sidebar-logout{margin-top:10px;width:100%;padding:7px;background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .15s}.sidebar-logout:hover{color:var(--red);border-color:var(--red)}.main{margin-left:230px;padding:24px 28px;min-height:100vh}.topbar{display:flex;justify-content:flex-end;margin-bottom:8px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.page-title{font-size:20px;font-weight:800;letter-spacing:-.3px}.page-meta{display:flex;align-items:center;gap:12px}.page-date{color:var(--text-muted);font-size:12px;font-family:var(--font-mono)}.section-note{font-size:12px;color:var(--text-muted);background:var(--accent-soft);border:1px dashed var(--border-active);padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:18px;line-height:1.6}.theme-toggle{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);cursor:pointer;font-size:16px;transition:all .15s}.theme-toggle:hover{border-color:var(--border-hover)}.stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:22px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px;transition:all .2s;box-shadow:var(--stat-card-shadow)}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-1px)}.stat-label{font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.3px;margin-bottom:8px}.stat-value{font-size:24px;font-weight:800;letter-spacing:-.5px;margin-bottom:6px;font-family:var(--font-mono);word-break:break-all}.stat-value.v-gold{color:var(--gold)}.stat-value.v-emerald{color:var(--emerald)}.stat-value.v-accent{color:var(--accent)}.stat-badge{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}.stat-badge.up{color:var(--emerald);background:var(--emerald-soft)}.stat-badge.down{color:var(--red);background:var(--red-soft)}.stat-sub{font-size:11px;color:var(--text-muted);margin-top:3px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.grid-1{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:22px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;transition:background var(--transition),border var(--transition);box-shadow:var(--stat-card-shadow)}.card-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border)}.card-head-title{font-size:13px;font-weight:700}.card-head-action{font-size:11px;color:var(--accent);cursor:pointer;font-weight:600}.card-head-sub{font-size:11px;color:var(--text-muted)}.chart-box{padding:18px 18px 36px;height:220px;display:flex;align-items:flex-end;gap:6px;position:relative}.chart-bar{flex:1;border-radius:4px 4px 0 0;cursor:pointer;transition:all .2s;position:relative;min-height:2px}.chart-bar:hover{opacity:.8}.chart-bar .tip{display:none;position:absolute;top:-30px;left:50%;transform:translate(-50%);background:var(--text-primary);color:var(--bg-card);padding:3px 8px;border-radius:4px;font-size:10px;font-family:var(--font-mono);white-space:nowrap;z-index:5}.chart-bar:hover .tip{display:block}.chart-labels{position:absolute;bottom:10px;left:18px;right:18px;display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:10px 16px;font-size:11px;font-weight:700;color:var(--text-muted);letter-spacing:.3px;border-bottom:1px solid var(--border);background:var(--bg-card-alt);white-space:nowrap}td{padding:10px 16px;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap}tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--bg-hover)}.cell-id{font-family:var(--font-mono);font-size:11px;color:var(--accent)}.cell-amount{font-family:var(--font-mono);font-weight:600;color:var(--text-primary)}.cell-mono{font-family:var(--font-mono);font-size:11px}.cell-time{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.cell-strong{font-weight:600;color:var(--text-primary)}.text-emerald{color:var(--emerald)}.text-red{color:var(--red)}.text-muted{color:var(--text-muted)}.empty-row td{text-align:center;padding:40px;color:var(--text-muted);font-size:13px}.badge{display:inline-flex;padding:2px 9px;border-radius:20px;font-size:10px;font-weight:700;white-space:nowrap}.badge.s{color:var(--emerald);background:var(--emerald-soft)}.badge.p{color:var(--gold);background:var(--gold-soft)}.badge.f{color:var(--red);background:var(--red-soft)}.badge.i{color:var(--accent);background:var(--accent-soft)}.badge.m{color:var(--text-muted);background:var(--bg-hover)}.wallet-row{display:flex;gap:36px;padding:22px;flex-wrap:wrap}.wallet-block .wallet-label{font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.3px;margin-bottom:6px}.wallet-block .wallet-value{font-size:28px;font-weight:800;letter-spacing:-.5px;font-family:var(--font-mono)}.prod-icon{width:28px;height:28px;border-radius:7px;background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;margin-right:8px;vertical-align:middle;overflow:hidden}.prod-icon img{width:100%;height:100%;object-fit:cover}.filter-bar{padding:14px 18px;display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.filter-bar .form-input{padding:8px 10px;font-size:12px}.filter-item{display:flex;flex-direction:column}.pagination{padding:12px 18px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);flex-wrap:wrap;gap:10px}.pagination .pginfo{font-size:11px;color:var(--text-muted)}.pagination .pgbtns{display:flex;gap:4px}.pagination .pgbtns button{padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg-card);color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.pagination .pgbtns button:hover:not(:disabled):not(.cur){border-color:var(--border-hover)}.pagination .pgbtns button.cur{border-color:var(--accent);background:var(--accent);color:#fff}.pagination .pgbtns button:disabled{opacity:.4;cursor:not-allowed}.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:80px 20px;text-align:center;background:var(--bg-card);border:1px dashed var(--border-hover);border-radius:var(--radius-md)}.placeholder .ph-icon{width:56px;height:56px;border-radius:14px;background:var(--bg-hover);display:flex;align-items:center;justify-content:center}.placeholder .ph-icon svg{width:28px;height:28px;color:var(--text-muted)}.placeholder h3{font-size:16px;font-weight:700}.placeholder p{font-size:13px;color:var(--text-muted);max-width:460px;line-height:1.7}.loading-mask{padding:40px;text-align:center;color:var(--text-muted);font-size:13px}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:99999;padding:10px 20px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;box-shadow:var(--shadow-md)}.toast.ok{background:var(--emerald);color:#fff}.toast.err{background:var(--red);color:#fff}@media (max-width: 1200px){.stats-row{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:1fr}.login-right{display:none}}@media (max-width: 768px){.stats-row{grid-template-columns:repeat(2,1fr)}.sidebar{display:none}.main{margin-left:0;padding:16px}}
