*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif;background:#f5f7fa;color:#000000e0}:root{--login-c1: #441304;--login-c2: #952604;--login-c3: #eb3700;--login-glow-1: rgba(255, 122, 69, .45);--login-glow-2: rgba(255, 99, 51, .35);--login-glow-3: rgba(255, 193, 173, .3);--login-primary: #eb3700;--login-primary-soft: rgba(235, 55, 0, .09);--login-panel-width: 460px;--brand-primary: #ff4c15;--brand-accent: #ff7a45}.login-page{height:100vh;width:100%;display:flex}.login-left{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:64px;color:#fff;background:radial-gradient(at 20% 20%,var(--login-glow-1) 0%,transparent 50%),radial-gradient(at 80% 70%,var(--login-glow-2) 0%,transparent 55%),radial-gradient(at 50% 100%,var(--login-glow-3) 0%,transparent 60%),linear-gradient(135deg,var(--login-c1),var(--login-c2) 40%,var(--login-c3))}.login-left.has-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,#0000009e,#00000052)}.brand-block{position:relative;z-index:1}.brand-logo{display:flex;align-items:center;gap:14px;margin-bottom:28px}.brand-logo img{height:56px;max-width:180px;object-fit:contain}.brand-name{font-size:30px;font-weight:800;letter-spacing:1px;line-height:1.3;margin-bottom:10px;color:#fff}.brand-slogan{font-size:38px;font-weight:700;line-height:1.3;margin-bottom:14px;background:linear-gradient(90deg,#fff,var(--login-glow-1));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand-sub{font-size:15px;line-height:1.8;color:#ffffff9e;max-width:460px}.feature-list{margin-top:40px;display:flex;flex-direction:column;gap:18px}.feature-item{display:flex;align-items:center;gap:14px;opacity:0;animation:fade-in-up .6s ease forwards}.feature-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-shrink:0;background:linear-gradient(135deg,#ffffff47,#ffffff1f);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 12px #0000002e}.feature-text{font-size:15px;color:#fffc;line-height:1.5}.deco-rings{position:absolute;bottom:80px;right:60px;width:200px;height:200px;pointer-events:none;z-index:0;opacity:.5;animation:float-glow 8s ease-in-out infinite alternate}.ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.3)}.ring-1{top:0;right:0;bottom:0;left:0;animation:pulse-ring 4s ease-in-out infinite}.ring-2{top:30px;right:30px;bottom:30px;left:30px;border-color:#fff3;animation:pulse-ring 4s ease-in-out infinite .6s}.ring-3{top:60px;right:60px;bottom:60px;left:60px;border-color:#ffffff26;animation:pulse-ring 4s ease-in-out infinite 1.2s}.deco-rings .core{position:absolute;top:84px;right:84px;bottom:84px;left:84px;border-radius:50%;background:radial-gradient(circle,var(--login-glow-1) 0%,transparent 70%);animation:pulse-core 3s ease-in-out infinite}.login-footer{position:absolute;bottom:32px;left:64px;right:64px;font-size:12px;color:#fff6;z-index:1}.icp-text{margin-left:4px}.icp-text:hover{color:#ffffffbf}.login-right{width:var(--login-panel-width);background:#fff;display:flex;flex-direction:column}.login-form-wrap{flex:1;display:flex;flex-direction:column;justify-content:center;padding:24px 48px;overflow-y:auto}.login-title{font-size:24px;font-weight:700;margin-bottom:6px;color:#000000e0}.login-subtitle{color:#00000073;margin-bottom:24px}.login-qrcode-wrap{display:flex;flex-direction:column;align-items:center;padding:12px 0 4px}.login-qrcode-box{position:relative;width:196px;height:196px;display:flex;align-items:center;justify-content:center;border:1px solid #f0f0f0;border-radius:8px;padding:8px}.login-qrcode-placeholder{width:180px;height:180px;background:#fafafa;border-radius:4px}.login-qrcode-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffeb;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:8px;cursor:pointer;color:#000000a6;font-size:13px;padding:0 12px}.login-qrcode-tip{margin-top:16px;color:#00000073;font-size:13px;text-align:center}.login-qrcode-ttl{color:#0000004d}.login-qrcode-brand{margin-top:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:12px;color:var(--login-primary, #ff4c15);background:var(--login-primary-soft, rgba(255, 76, 21, .08))}.login-qrcode-brand .anticon{font-size:14px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.12);opacity:.8}}@keyframes pulse-core{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes float-glow{0%{transform:translate(0) scale(1);opacity:.7}to{transform:translate(-40px,60px) scale(1.15);opacity:1}}@media (max-width: 1100px){.login-left{padding:48px}.brand-slogan{font-size:30px}}@media (max-width: 900px){.login-left{display:none}.login-right{width:100%}.login-form-wrap{padding:24px;max-width:460px;margin:0 auto;width:100%}}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#fff;border-bottom:1px solid #f0f0f0}.app-logo{height:56px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;letter-spacing:1px;overflow:hidden;white-space:nowrap}.page-container{background:#fff;border-radius:8px;padding:16px}.page-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}:root{--up-space: 16px;--up-radius: 12px;--up-border: #f0f0f0;--up-text-2: rgba(0, 0, 0, .45);--up-text-1: rgba(0, 0, 0, .88);--up-brand: #ff4c15;--up-brand-soft: rgba(255, 76, 21, .08);--up-shadow-card: 0 1px 2px -2px rgba(0, 0, 0, .04), 0 3px 12px -4px rgba(0, 0, 0, .06);--up-shadow-hover: 0 4px 16px -4px rgba(0, 0, 0, .1), 0 2px 6px -2px rgba(0, 0, 0, .06)}.ant-layout-content{background:radial-gradient(1200px 400px at 100% -10%,rgba(255,76,21,.03),transparent 60%);transition:padding .2s ease}.up-card{transition:box-shadow .2s ease,transform .2s ease}.up-card:hover{box-shadow:var(--up-shadow-hover)!important;transform:translateY(-1px)}.pc-header{display:flex;align-items:center;gap:12px;margin-bottom:4px}.pc-header__bar{width:4px;height:20px;border-radius:4px;background:linear-gradient(180deg,var(--up-brand),#ff7a45);flex:0 0 auto}.pc-header__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--up-brand);background:var(--up-brand-soft);font-size:18px;flex:0 0 auto}.pc-header__text{display:flex;flex-direction:column}.pc-header__title{font-size:18px;font-weight:600;line-height:1.3;color:var(--up-text-1)}.pc-header__desc{font-size:13px;color:var(--up-text-2);margin-top:2px}.stat-card{transition:box-shadow .2s ease,transform .2s ease;height:100%}.stat-card:hover{box-shadow:var(--up-shadow-hover)!important;transform:translateY(-2px)}.stat-card__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;font-size:22px;color:#fff;flex:0 0 auto}.stat-card__body{display:flex;align-items:center;gap:16px}.stat-card__meta{display:flex;flex-direction:column;min-width:0}.stat-card__title{font-size:13px;color:var(--up-text-2)}.stat-card__value{font-size:26px;font-weight:700;line-height:1.2;color:var(--up-text-1);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-card__footer{margin-top:10px;font-size:12px;color:var(--up-text-2)}.section-title{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.section-title__text{font-size:15px;font-weight:600;color:var(--up-text-1)}.ant-table-body::-webkit-scrollbar,.ant-table-content::-webkit-scrollbar{height:8px;width:8px}.ant-table-body::-webkit-scrollbar-thumb,.ant-table-content::-webkit-scrollbar-thumb{background:#0000002e;border-radius:8px}.ant-table-body::-webkit-scrollbar-thumb:hover,.ant-table-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.ant-table-body::-webkit-scrollbar-track,.ant-table-content::-webkit-scrollbar-track{background:transparent}.ant-table-thead>tr>th{position:sticky;top:0;z-index:2}.ant-table-sticky-holder{background:#fafbfc}.ant-empty{padding:32px 0}.ant-empty-normal .ant-empty-description{color:var(--up-text-2)}::selection{background:var(--up-brand-soft);color:var(--up-brand)}.ant-table-tbody>tr.ant-table-row{transition:background .15s ease}.ant-table-tbody>tr>td{border-bottom:1px solid #f5f5f5}.ant-descriptions-item-label{color:var(--up-text-2)}.dash-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(120deg,#ff4c15,#ff7a45 70%,#ffa26d);border-radius:14px;padding:24px 28px;margin-bottom:16px;color:#fff;box-shadow:0 10px 30px #ff4c1540;position:relative;overflow:hidden}.dash-hero:after{content:"";position:absolute;right:-40px;top:-60px;width:220px;height:220px;border-radius:50%;background:#ffffff1f}.dash-hero-left{position:relative;z-index:1}.dash-hero-title{font-size:20px;font-weight:700;letter-spacing:1px}.dash-hero-sub{font-size:13px;opacity:.92;margin-top:6px}.dash-hero-right{position:relative;z-index:1}.dash-hero-chip{background:#ffffff38;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:5px 16px;font-size:12px}.trend-chart{display:flex;align-items:flex-end;gap:12px;height:220px;padding:8px 4px 0}.trend-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.trend-bars{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.trend-bar{width:12px;border-radius:6px 6px 2px 2px;transition:height .4s ease}.trend-bar.amount{background:linear-gradient(180deg,#ff4c15,#ff7a45)}.trend-bar.orders{background:#ffd6c4}.trend-label{font-size:12px;color:#999;margin-top:8px;white-space:nowrap}.trend-legend{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:12px;color:#666}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:3px}.channel-wrap{display:flex;align-items:center;gap:24px}.channel-ring{flex-shrink:0}.channel-center{position:absolute;display:flex;flex-direction:column;align-items:center;pointer-events:none}.channel-legend{flex:1;display:flex;flex-direction:column;gap:10px}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px}.legend-name{width:72px;color:#333}.legend-val{color:#999;font-size:12px}.member-overview{display:flex;justify-content:space-around}.mo-item{text-align:center}.mo-num{font-size:28px;font-weight:700;color:#ff4c15}.mo-label{font-size:12px;color:#999;margin-top:4px}.todo-list{display:flex;flex-direction:column;gap:12px}.todo-item{display:flex;align-items:center;gap:10px;font-size:13px;color:#333}.cockpit-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(120deg,#1f1f1f,#3a3a3a 60%,#4a4a4a);border-radius:14px;padding:22px 28px;color:#fff;position:relative;overflow:hidden}.cockpit-hero:after{content:"";position:absolute;right:-30px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,76,21,.35),transparent 70%)}.cockpit-hero-left{position:relative;z-index:1}.cockpit-title{font-size:26px;font-weight:800;letter-spacing:2px}.cockpit-sub{font-size:13px;opacity:.8;margin-top:8px}.cockpit-hero-right{position:relative;z-index:1;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.cockpit-clock{font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:2px}.cockpit-date{font-size:13px;opacity:.85}.cockpit-live{font-size:12px;opacity:.75;display:flex;align-items:center;gap:6px}.live-dot{width:8px;height:8px;border-radius:50%;background:#52c41a;box-shadow:0 0 8px #52c41a;animation:liveBlink 1.4s ease-in-out infinite}@keyframes liveBlink{0%,to{opacity:1}50%{opacity:.35}}.cockpit-screen{min-height:100vh;background:radial-gradient(ellipse at top,#1a1f2e,#0a0e1a 60%);padding:24px 28px 40px;box-sizing:border-box;color:#e0e0e0}.cockpit-screen .ant-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cockpit-screen .stat-card{background:#ffffff0a!important;border:1px solid rgba(255,255,255,.08)}.cockpit-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding:0 4px}.ct-bar{font-size:13px;color:#ffffff8c}.ct-back{background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;padding:6px 16px;border-radius:999px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.ct-back:hover{background:#ff4c1533;border-color:#ff4c15}.cockpit-screen .trend-label,.cockpit-screen .chart-label,.cockpit-screen .legend-name,.cockpit-screen .mo-label{color:#fff9}.cockpit-screen .mo-num{color:#ff7a45}.cockpit-screen .legend-val{color:#ffffff73}.cockpit-screen .channel-ring text{fill:#e0e0e0}.ant-layout-sider .ant-menu-light{border-right:none!important}.ant-layout-sider .ant-menu-light .ant-menu-item-selected,.ant-layout-sider .ant-menu-light .ant-menu-submenu-selected>.ant-menu-submenu-title{background:#ff4c151a!important;color:#ff4c15!important;font-weight:600}.ant-layout-sider .ant-menu-light .ant-menu-item:hover,.ant-layout-sider .ant-menu-light .ant-menu-submenu-title:hover{color:#ff4c15!important;background:#ff4c150a!important}.cockpit-screen{background:radial-gradient(ellipse at top,#ff4c1524,#1a100a 45%,#0d0604)!important}.up-card:hover{border-color:#ff4c1559!important;box-shadow:0 6px 20px #ff4c151a!important}.ant-table-tbody>tr:hover>td{background:#ff4c150a!important}.ant-btn-primary{background:linear-gradient(135deg,#ff4c15,#ff7a45)!important;border:none!important;box-shadow:0 4px 12px #ff4c1540}.ant-btn-primary:hover{background:linear-gradient(135deg,#ff5e2e,#ff8a5a)!important;box-shadow:0 6px 16px #ff4c1559}.ant-btn-link,.ant-btn-text:hover{color:#ff4c15!important}.ant-tag-processing{background:#ff4c151a!important;color:#ff4c15!important;border-color:#ff4c154d!important}.ant-breadcrumb-link:last-child{color:#ff4c15}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ff4c154d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ff4c1580}::-webkit-scrollbar-track{background:transparent}
