.login-bg{background:#07162d url(/images/login-warehouse-3d.png) 50%/cover no-repeat;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.login-bg:before{content:"";pointer-events:none;background:linear-gradient(90deg,#04102257 0%,#04102230 42%,#041022b3 100%);position:absolute;inset:0}.login-bg:after{content:"";opacity:.22;pointer-events:none;background:radial-gradient(circle at 60% 52%,#30a0ff3b,#0000 35%);position:absolute;inset:0}.login-shell{z-index:1;grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:clamp(32px,7vw,110px);width:min(1360px,100% - 96px);margin:0 auto;display:grid;position:relative}.login-hero{color:#fff;text-shadow:0 2px 24px #00091966;max-width:650px;padding:40px 0}.login-hero-kicker{color:#d8f1ff;letter-spacing:.12em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#04172e7a;border:1px solid #92dbff59;border-radius:999px;align-items:center;gap:10px;padding:9px 14px;font-size:13px;display:inline-flex}.login-hero-dot{background:#54e8bb;border-radius:50%;flex:none;width:7px;height:7px;display:inline-block;box-shadow:0 0 12px #54e8bbe6}.login-hero h1{color:#fff;letter-spacing:-.04em;max-width:600px;margin:23px 0 14px;font-size:clamp(36px,3.5vw,58px);font-weight:760;line-height:1.18}.login-hero p{color:#d3e4f6;max-width:590px;margin:0;font-size:clamp(15px,1.15vw,18px);line-height:1.75}.login-feature-row{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.login-feature-row span{color:#eef7ff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#091e398f;border:1px solid #b8dcff40;border-radius:12px;align-items:center;gap:9px;padding:10px 13px;font-size:13px;display:inline-flex;box-shadow:0 10px 25px #00091a26}.login-feature-row .anticon{color:#8cddff;font-size:17px}.login-card{-webkit-backdrop-filter:blur(22px);width:100%;background:#fbfdfff0!important;border:1px solid #ffffffbd!important;border-radius:24px!important;box-shadow:0 32px 90px #000a1e52,0 8px 28px #000a1e1f!important}.login-card .ant-card-body{padding:42px 42px 30px}.login-logo{color:#fff;background:linear-gradient(135deg,#2563eb,#5940ce);border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:23px;font-size:25px;font-weight:750;display:flex;box-shadow:0 12px 22px #334fbe47,inset 0 1px #ffffff59}.login-title{color:#14213b!important;margin:0 0 5px!important;font-size:27px!important;font-weight:720!important}.login-subtitle{color:#66758c;margin:0 0 30px;font-size:14px}.login-card .ant-input-affix-wrapper{height:48px;box-shadow:none;background:#f8fafd;border-color:#dce4ef;border-radius:11px}.login-card .ant-input-affix-wrapper:hover{border-color:#93b7f8}.login-card .ant-input-affix-wrapper-focused{background:#fff;border-color:#4f74e6;box-shadow:0 0 0 3px #4f74e61f}.login-card .ant-input-prefix{color:#8b9ab0;margin-right:9px}.login-card .ant-input{background:0 0}.login-card .ant-input::placeholder{color:#9ba8b9}.login-remember{margin-bottom:22px}.login-remember .ant-checkbox-wrapper{color:#62718a;font-size:13px}.login-submit{margin-bottom:0}.login-submit .ant-btn-primary{background:linear-gradient(100deg,#3d6cf0,#514fe3);border:0;border-radius:11px;height:48px;font-size:16px;font-weight:650;box-shadow:0 10px 22px #3c59dd3d}.login-submit .ant-btn-primary:hover{background:linear-gradient(100deg,#315ee0,#4442d5)!important}@media (width<=900px){.login-shell{flex-direction:column;gap:18px;width:min(540px,100% - 40px);padding:36px 0;display:flex}.login-hero{width:100%;padding:0}.login-hero h1{margin:15px 0 7px;font-size:31px}.login-hero p{font-size:14px}.login-feature-row{display:none}}@media (width<=520px){.login-bg{background-position:39%}.login-bg:before{background:#051328a8}.login-shell{width:calc(100% - 28px);padding:26px 0}.login-hero-kicker{font-size:11px}.login-hero h1{font-size:27px}.login-card .ant-card-body{padding:29px 24px 23px}.login-title{font-size:24px!important}}.users-table .ant-table{color:#334155}.users-table .ant-table-thead>tr>th{color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding-top:12px;padding-bottom:12px;font-size:13px;font-weight:650}.users-table .ant-table-tbody>tr>td{border-bottom-color:#f1f5f9;padding-top:13px;padding-bottom:13px;transition:background .18s}.users-table .ant-table-tbody>tr:hover>td{background:#f8faff!important}.users-table .user-row-disabled>td{background:snow}.users-table .ant-table-cell:first-child{padding-left:18px}.users-table .ant-table-cell:last-child{padding-right:18px}.user-status-dot{vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.user-status-dot.enabled{background:#22c55e}.user-status-dot.disabled{background:#ef4444}.user-action-edit{color:#2563eb;background:#eff6ff}.user-action-edit:hover{color:#1d4ed8!important;background:#dbeafe!important}.user-action-enable{color:#16a34a}.users-table .ant-pagination{margin-right:16px}.customer-numbers-table .ant-table{color:#334155;border:1px solid #e8edf4;border-radius:10px;overflow:hidden}.customer-numbers-table .ant-table-thead>tr>th{color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding-top:12px;padding-bottom:12px;font-size:13px;font-weight:650}.customer-numbers-table .ant-table-tbody>tr>td{border-bottom-color:#f1f5f9;padding-top:13px;padding-bottom:13px;transition:background .18s}.customer-numbers-table .ant-table-tbody>tr:hover>td{background:#f8faff!important}.customer-numbers-table .customer-member-row>td{background:#fffdf7}.customer-numbers-table .customer-member-row:hover>td{background:#fffbeb!important}.customer-numbers-table .ant-table-cell:first-child{padding-left:18px}.customer-numbers-table .ant-table-cell:last-child{padding-right:18px}.customer-member-label{color:#b45309;background:#fef3c7;border-radius:8px;margin-top:2px;padding:0 6px;font-size:10px;font-weight:700;line-height:16px;display:inline-block}.customer-number-badge{color:#4338ca;background:#eef2ff;border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-weight:650;display:inline-flex}.customer-action-recharge{color:#d97706;background:#fffbeb}.customer-action-member{color:#7c3aed;background:#f5f3ff}.customer-action-edit{color:#2563eb;background:#eff6ff}.customer-action-recharge:hover,.customer-action-member:hover,.customer-action-edit:hover{filter:brightness(.97)}.compare-panel,.compare-scan-card,.compare-table-card,.compare-stat{border-radius:10px}.compare-field-label{color:#475569;margin-bottom:6px;font-size:12px;font-weight:600}.compare-scan-card{background:linear-gradient(135deg,#f8faff 0%,#fff 72%);border-color:#c7d2fe}.compare-stat .ant-card-body{align-items:center;gap:14px;padding:18px;display:flex}.compare-stat-icon{border-radius:13px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.compare-stat-icon.blue{color:#2563eb;background:#eff6ff}.compare-stat-icon.green{color:#16a34a;background:#f0fdf4}.compare-stat-icon.orange{color:#ea580c;background:#fff7ed}.compare-stat-icon.red{color:#dc2626;background:#fef2f2}.compare-stat .ant-statistic-content{color:#1e293b;font-size:23px;font-weight:650}.compare-table-card .ant-card-body{padding:0}.compare-progress{background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px;width:320px;padding:7px 12px 5px;box-shadow:0 2px 8px #2563eb14}.compare-progress-text{color:#1d4ed8;justify-content:space-between;margin-bottom:2px;font-size:13px;display:flex}.compare-progress .ant-progress{line-height:1}.compare-progress-in-scan{width:100%;max-width:340px;margin:0 auto}@media (width<=768px){.compare-progress{width:min(320px,70vw)}.compare-progress-in-scan{width:100%;max-width:none}}.compare-table .ant-table-thead>tr>th{color:#475569;background:#f8fafc;border-bottom-color:#e2e8f0;font-size:13px;font-weight:650}.compare-table .ant-table-tbody>tr>td{border-bottom-color:#f1f5f9}.compare-table .ant-table-tbody>tr:hover>td{background:#f8faff!important}.compare-table .compare-scanned-row>td{background:#f0fdf4!important}.compare-table .compare-scanned-row:hover>td{background:#dcfce7!important}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#root{height:100vh}.compare-scanned-row>td{background-color:#f6ffed!important}
