:root{--font-sans: "Hanken Grotesk", "PingFang SC", sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", "Menlo", monospace;--bg: #f5f7fa;--bg-panel: #ffffff;--bg-elev: #ffffff;--bg-sunk: #f1f4f8;--bg-hover: #f1f5f9;--bg-soft: #f8fafc;--border: #e6ebf1;--border-soft: #eef1f5;--border-strong: #d6dde6;--text: #0f172a;--text-dim: #64748b;--text-faint: #94a3b8;--brand: #2563eb;--brand-bright: #3b82f6;--brand-deep: #1d4ed8;--brand-soft: rgba(37, 99, 235, .08);--brand-line: rgba(37, 99, 235, .18);--cyan: #0ea5e9;--green: #10b981;--green-soft: rgba(16, 185, 129, .1);--red: #ef4444;--red-soft: rgba(239, 68, 68, .1);--amber: #f59e0b;--amber-soft: rgba(245, 158, 11, .12);--r: 8px;--r-sm: 5px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow: 0 4px 20px -4px rgba(15, 23, 42, .08)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:13.5px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"tnum" 1,"ss01" 1}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(720px 280px at 88% -4%,rgba(37,99,235,.06),transparent 70%),radial-gradient(600px 240px at 4% 104%,rgba(14,165,233,.04),transparent 70%)}#root{position:relative;z-index:1}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.dim{color:var(--text-dim)}.faint{color:var(--text-faint)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d6dde6;border:2px solid var(--bg);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#bcc6d1}::selection{background:#2563eb2e;color:var(--brand-deep)}.ant-layout-sider{border-right:1px solid var(--border-soft)!important}.ant-layout-sider-children{display:flex;flex-direction:column}.ant-menu-light,.ant-menu-light .ant-menu-sub.ant-menu-inline{background:transparent!important}.ant-menu-light .ant-menu-item{margin:3px 10px;border-radius:6px;font-size:13.5px;font-weight:500}.ant-menu-light .ant-menu-item-selected:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;background:var(--brand);border-radius:2px}.ant-menu-light .ant-menu-item:hover{color:var(--text)!important}.ant-table{background:transparent!important}.ant-table-thead>tr>th{font-family:var(--font-mono)!important;font-size:10.5px!important;font-weight:500!important;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border)!important;padding-top:11px!important;padding-bottom:11px!important}.ant-table-tbody>tr>td{border-bottom:1px solid var(--border-soft)!important;transition:background .12s ease}.ant-table-tbody>tr:hover>td{background:var(--bg-hover)!important}.ant-table-cell{font-size:13.5px}.ant-btn{font-weight:500;border-radius:6px!important;height:32px}.ant-btn-primary{background:var(--brand)!important;border-color:var(--brand)!important}.ant-btn-primary:hover{background:var(--brand-bright)!important;border-color:var(--brand-bright)!important}.ant-btn-default{background:#fff!important;color:var(--text-dim)!important}.ant-btn-default:hover{color:var(--brand)!important;border-color:var(--brand-line)!important}a{color:var(--brand)}a:hover{color:var(--brand-bright)}.ant-card{border:1px solid var(--border-soft)!important;border-radius:var(--r)!important;box-shadow:var(--shadow-sm)}.ant-card-head{border-bottom:1px solid var(--border-soft)!important;min-height:44px!important;padding:0 16px!important}.ant-card-head-title{padding:12px 0!important;font-weight:600}.ant-card-body{padding:16px!important}.ant-tag{border-radius:4px!important;border:1px solid transparent!important;font-size:11px!important;padding:0 8px!important;line-height:20px!important;font-weight:500}.ant-input-affix-wrapper,.ant-input,.ant-input-number,.ant-select .ant-select-selector{border-radius:6px!important;border-color:var(--border)!important}.ant-input-affix-wrapper-focused,.ant-input:focus,.ant-input-number-focused,.ant-select-focused .ant-select-selector{border-color:var(--brand)!important;box-shadow:0 0 0 3px #2563eb1a!important}.ant-select-dropdown{border:1px solid var(--border)!important;border-radius:8px!important;box-shadow:var(--shadow)!important}.ant-select-item-option-selected{background:var(--brand-soft)!important;color:var(--brand)!important}.ant-modal-content,.ant-drawer-content{border-radius:10px!important;box-shadow:var(--shadow)!important}.ant-modal-header,.ant-drawer-header{border-bottom:1px solid var(--border-soft)!important}.ant-form-item-label>label{color:var(--text-dim)!important;font-size:12.5px;font-weight:500}.ant-form-item{margin-bottom:16px}.ant-descriptions-bordered .ant-descriptions-view{border-color:var(--border-soft)!important;border-radius:var(--r-sm);overflow:hidden}.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions-bordered .ant-descriptions-item-content{border-color:var(--border-soft)!important}.ant-descriptions-item-label{color:var(--text-dim)!important;font-size:12px}.ant-descriptions-item-content{color:var(--text)!important}.ant-pagination .ant-pagination-item{border-radius:6px!important}.ant-pagination .ant-pagination-item-active{border-color:var(--brand)!important;background:var(--brand)!important}.ant-pagination .ant-pagination-item-active a{color:#fff!important}.ant-tabs-tab{font-size:13.5px;font-weight:500;padding:10px 4px!important}.ant-tabs-ink-bar{background:var(--brand)!important}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--brand)!important}.app-shell{display:flex;min-height:100vh;position:relative}.brand{padding:18px 20px 16px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;gap:11px}.brand-logo{width:30px;height:30px;border-radius:7px;background:linear-gradient(135deg,var(--brand),var(--cyan));display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-mono);font-weight:600;font-size:13px;box-shadow:0 4px 12px -2px #2563eb66;flex:none}.brand-text{line-height:1.15}.brand-text .name{font-weight:700;font-size:15px;color:var(--text);letter-spacing:-.01em}.brand-text .sub{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin-top:2px}.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--border-soft);background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-left{display:flex;align-items:baseline;gap:12px}.topbar-title{font-weight:700;font-size:16px;letter-spacing:-.01em;color:var(--text)}.topbar-crumb{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.topbar-right{display:flex;align-items:center;gap:18px}.live-dot{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11px;color:var(--text-dim);letter-spacing:.08em}.live-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #10b9812e;animation:pulse 1.8s ease-in-out infinite}.clock{font-family:var(--font-mono);font-size:12px;color:var(--text-dim);letter-spacing:.02em}.user-chip{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--text-dim)}.user-chip .avatar{width:26px;height:26px;border-radius:7px;background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600}.user-chip .mno{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);margin-left:2px}.content-wrap{padding:24px 26px 40px;animation:fadeUp .35s ease both}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.page-head h1{margin:0;font-weight:700;font-size:22px;letter-spacing:-.018em;color:var(--text)}.page-head .page-desc{margin-top:4px;font-size:12.5px;color:var(--text-faint);font-family:var(--font-mono);letter-spacing:.01em}.page-head .page-actions{display:flex;gap:8px}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-cell{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--r);padding:15px 17px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stat-cell:after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--brand);opacity:.7}.stat-cell .lbl{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.stat-cell .val{margin-top:7px;font-family:var(--font-mono);font-size:22px;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:500}.stat-cell .val.brand{color:var(--brand)}.stat-cell .val.green{color:var(--green)}.stat-cell .val.red{color:var(--red)}.stat-cell .sub{margin-top:3px;font-size:11px;color:var(--text-faint)}.status-tag{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;color:var(--text-dim)}.status-tag .dot{width:6px;height:6px;border-radius:50%;flex:none}.status-tag.s-pending .dot{background:#94a3b8}.status-tag.s-processing .dot{background:var(--cyan);box-shadow:0 0 0 3px #0ea5e926;animation:pulse 1.4s infinite}.status-tag.s-success .dot{background:var(--green)}.status-tag.s-failed .dot{background:var(--red)}.status-tag.s-success{color:#059669}.status-tag.s-failed{color:#dc2626}.status-tag.s-processing{color:#0284c7}.money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text)}.money .unit{color:var(--text-faint);font-size:11px;margin-right:2px}.panel{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:4px}.panel .ant-table{background:transparent!important}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;position:relative}.login-art{position:relative;padding:60px 60px 44px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(640px 420px at 18% 14%,rgba(37,99,235,.12),transparent 60%),radial-gradient(520px 360px at 88% 92%,rgba(14,165,233,.1),transparent 65%),linear-gradient(160deg,#f8fbff,#eef4ff);border-right:1px solid var(--border-soft);overflow:hidden}.login-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(37,99,235,.07) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(150deg,#000,transparent 75%);mask-image:linear-gradient(150deg,#000,transparent 75%);pointer-events:none}.login-eyebrow{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--brand);margin-bottom:14px;position:relative;z-index:1}.login-brand{display:flex;align-items:center;gap:14px;position:relative;z-index:1}.login-brand .logo{width:46px;height:46px;border-radius:11px;background:linear-gradient(135deg,var(--brand),var(--cyan));display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-mono);font-weight:600;font-size:18px;box-shadow:0 10px 28px -6px #2563eb80}.login-brand .name{font-weight:700;font-size:34px;letter-spacing:-.02em;color:var(--text)}.login-brand .name em{font-style:normal;color:var(--brand)}.login-sub{margin-top:22px;max-width:400px;font-size:15px;color:var(--text-dim);line-height:1.7;position:relative;z-index:1}.login-features{position:relative;z-index:1;display:grid;gap:12px}.login-features .feat{display:flex;align-items:center;gap:11px;font-size:13px;color:var(--text-dim)}.login-features .feat .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);background:var(--brand-soft);padding:3px 7px;border-radius:4px;border:1px solid var(--brand-line)}.login-form-side{display:flex;align-items:center;justify-content:center;padding:40px;background:var(--bg)}.login-card{width:100%;max-width:360px}.login-title{font-weight:700;font-size:26px;letter-spacing:-.018em;margin-bottom:6px}.login-desc{font-size:13px;color:var(--text-faint);margin-bottom:28px}.login-field{margin-bottom:18px}.login-field label{display:block;font-size:12.5px;font-weight:500;color:var(--text-dim);margin-bottom:7px}.login-btn{width:100%;height:44px;margin-top:8px;font-weight:600;font-size:14px;letter-spacing:.02em}.login-foot{margin-top:26px;text-align:center;font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);letter-spacing:.06em}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
