.index-bg { height: 100vh; background: linear-gradient(180deg, #eaf1fb 0%, #f7fafd 100%); } .index-content { width: 100%; max-width: 600px; display: flex; flex-direction: column; align-items: center; padding: 4vw 0 6vw 0; box-sizing: border-box; margin: 0 auto; } .btn-group { width: 90%; max-width: 500px; display: flex; flex-direction: column; margin: 0 auto 1.5rem auto; } .main-btn { height: 3.4375rem; font-size: 1.1875rem; font-weight: 800; border-radius: 0.875rem; background: linear-gradient(135deg, #409eff 0%, #3b7cff 100%); color: #fff; box-shadow: 0 8px 24px rgba(64,158,255,0.25); letter-spacing: 0.3125rem; margin: 0; border: none; outline: none; width: 100%; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; margin-bottom: 1.125rem; position: relative; overflow: hidden; } .main-btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent); transition: left 0.6s; } .main-btn:active::before { left: 100%; } .main-btn:last-child { margin-bottom: 0; } .main-btn:active { background: linear-gradient(135deg, #337ecc 0%, #2a5db0 100%); box-shadow: 0 4px 16px rgba(64,158,255,0.3); transform: scale(0.98); } .main-btn.outline { background: #fff; color: #409eff; border: 3px solid #409eff; box-shadow: 0 8px 24px rgba(64,158,255,0.15); } .main-btn.outline::before { background: linear-gradient(90deg, transparent, rgba(64,158,255,0.1), transparent); } .main-btn.outline:active { background: #f0f7ff; transform: scale(0.98); box-shadow: 0 4px 16px rgba(64,158,255,0.2); } .task-section { width: 92%; max-width: 520px; margin: 0 auto 1.5rem auto; background: #fff; border-radius: 0.6875rem; box-shadow: 0 4px 18px rgba(64,158,255,0.07); padding: 0.875rem 0.625rem 0.5625rem 0.625rem; } .task-title { font-size: 0.875rem; color: #222; font-weight: 700; margin-bottom: 0.5625rem; } .task-list { display: flex; flex-direction: column; gap: 0.4375rem; } .task-item { display: flex; justify-content: space-between; align-items: center; padding: 0.4375rem 0; border-bottom: 1px solid #f0f0f0; } .task-item:last-child { border-bottom: none; } .task-info { display: flex; flex-direction: column; } .task-name { font-size: 0.75rem; color: #333; font-weight: 600; } .task-time { font-size: 0.625rem; color: #999; margin-top: 0.0625rem; } .task-list { display: flex; flex-direction: column; gap: 0.4375rem; } .task-item { display: flex; justify-content: space-between; align-items: center; padding: 0.4375rem 0; border-bottom: 1px solid #f0f0f0; } .task-item:last-child { border-bottom: none; } .task-info { display: flex; flex-direction: column; } .task-name { font-size: 0.75rem; color: #333; font-weight: 600; } .task-time { font-size: 0.625rem; color: #999; margin-top: 0.0625rem; } .task-status { font-size: 0.625rem; padding: 0.125rem 0.4375rem; border-radius: 0.5rem; } .task-status.pending { background-color: #fff3e0; color: #ff9800; } .task-status.completed { background-color: #e8f5e9; color: #4caf50; } .task-status.in-progress { background-color: #e8f5e9; color: #4caf50; } .h5-scan-modal { position: fixed; left: 0; top: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.6); z-index: 9999; display: flex; flex-direction: column; align-items: center; justify-content: center; } .h5-scan-modal #reader { width: 300px !important; height: 300px !important; margin: 0 auto; background: #fff; border-radius: 8px; overflow: hidden; } .h5-scan-modal #reader uni-video { width: 100% !important; height: 100% !important; object-fit: cover; } .h5-scan-modal #reader__scan_region { width: 100% !important; height: 100% !important; } .h5-scan-modal #reader__scan_region uni-video { width: 100% !important; height: 100% !important; } .h5-scan-modal uni-button { margin-top: 20px; padding: 8px 20px; background: #409eff; color: #fff; border: none; border-radius: 4px; cursor: pointer; } .h5-scan-modal uni-button:hover { background: #66b1ff; } /* 标签盘点区域样式 */ .inventory-section { width: 92%; max-width: 520px; margin: 0 auto 1.5rem auto; background: #fff; border-radius: 0.6875rem; box-shadow: 0 4px 18px rgba(64,158,255,0.07); padding: 0.875rem 0.625rem 0.5625rem 0.625rem; } .inventory-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5625rem; } .inventory-title { font-size: 0.875rem; color: #222; font-weight: 700; } .tags-amount { font-size: 0.75rem; color: #409eff; font-weight: 600; } .tag-list { max-height: 6.25rem; background-color: #ebebeb; border-radius: 0.375rem; margin-bottom: 0.5625rem; } .list-item-head { display: flex; flex-direction: row; background-color: #f5f5f5; border-radius: 0.375rem 0.375rem 0 0; padding: 0.3125rem 0; } .list-item { display: flex; flex-direction: row; background-color: #fff; border-bottom: 1px solid #f0f0f0; } .list-item:last-child { border-bottom: none; } .list-item-text-id { width: 65px; padding: 0.25rem 0.3125rem; font-size: 0.75rem; text-align: center; flex-shrink: 0; } .list-item-text-epc { flex: 1; padding: 0.25rem 0.3125rem; font-size: 0.75rem; word-break: break-all; min-width: 0; } .list-item-text-count { width: 65px; padding: 0.25rem 0.3125rem; font-size: 0.75rem; text-align: center; flex-shrink: 0; } .list-item-text-rssi { width: 100px; padding: 0.25rem 0.3125rem; font-size: 0.75rem; text-align: center; flex-shrink: 0; } .inventory-options { display: flex; flex-direction: row; align-items: center; padding: 0.5625rem 0; flex-wrap: wrap; gap: 0.625rem; } .option-item { display: flex; align-items: center; } .checkbox-label { display: flex; flex-direction: row; align-items: center; } .option-text { margin-left: 0.25rem; font-size: 0.75rem; color: #333; } .inventory-btn-box { display: flex; flex-direction: row; align-items: center; gap: 0.3125rem; margin-top: 0.15625rem; } .inventory-btn { flex: 1; /* height: 80rpx; */ font-size: 0.875rem; border-radius: 0.375rem; margin: 0; } .inventory-btn.clear-btn { flex: 0 0 3.125rem; margin-top:0.3125rem; } /* 盘点计划区域样式 */ .inventory-plan-section { width: 92%; max-width: 520px; margin: 0 auto 1.5rem auto; background: #fff; border-radius: 0.6875rem; box-shadow: 0 4px 18px rgba(64,158,255,0.07); padding: 0.875rem 0.625rem 0.5625rem 0.625rem; } .inventory-plan-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5625rem; } .inventory-plan-title { font-size: 0.875rem; color: #222; font-weight: 700; } .plan-total { font-size: 0.75rem; color: #409eff; font-weight: 600; } .plan-list { display: flex; flex-direction: column; gap: 0.4375rem; } .plan-item { display: flex; justify-content: space-between; align-items: center; padding: 0.4375rem 0; border-bottom: 1px solid #f0f0f0; } .plan-item:last-child { border-bottom: none; } .plan-info { display: flex; flex-direction: column; } .plan-name-col { flex: 1; min-width: 0; } .plan-status-col { width: 3.75rem; align-items: center; } .plan-date-col { width: 4.375rem; align-items: center; } .plan-action-col { width: 3.75rem; display: flex; justify-content: flex-end; align-items: center; } .plan-name { font-size: 0.75rem; color: #333; font-weight: 600; } .plan-no { font-size: 0.625rem; color: #999; margin-top: 0.125rem; } .plan-time { font-size: 0.625rem; color: #999; margin-top: 0.0625rem; } .plan-status { font-size: 0.625rem; padding: 0.125rem 0.4375rem; border-radius: 0.5rem; white-space: nowrap; } .plan-status.status-0 { background-color: #fff3e0; color: #ff9800; } .plan-status.status-1 { background-color: #e3f2fd; color: #2196f3; } .plan-status.status-2 { background-color: #e8f5e9; color: #4caf50; } /* 加载更多样式优化 */ .load-more { display: flex; align-items: center; justify-content: center; gap: 0.375rem; padding: 0.9375rem 0.625rem; font-size: 0.75rem; color: #999; } .loading-spinner { width: 1rem; height: 1rem; border: 0.09375rem solid #f0f0f0; border-top: 0.09375rem solid #409eff; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loading-text { color: #409eff; font-weight: 500; } .no-more-text { color: #ccc; font-size: 0.6875rem; }