page{background:#f5f5f5;color:#333;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;font-size:.7rem}.form-card{background:#fff;border-radius:.4rem;box-shadow:0 .05rem .3rem rgba(0,0,0,.05);margin:.75rem;padding:.75rem}.form-item{margin-bottom:.75rem}.form-label{color:#333;display:block;font-size:.7rem;font-weight:500;margin-bottom:.3rem}.form-input{border:.025rem solid #ddd;border-radius:.2rem;box-sizing:border-box;font-size:.7rem;height:2rem;padding:0 .5rem;width:100%}.picker-val{align-items:center;border:.025rem solid #ddd;border-radius:.2rem;display:flex;font-size:.7rem;height:2rem;justify-content:space-between;padding:0 .5rem}.picker-val .arrow{color:#999;font-size:.6rem}.no-device{color:#999;font-size:.65rem}.submit-btn{background:#1890ff;border:none;border-radius:.2rem;color:#fff;font-size:.8rem;height:2.2rem;line-height:2.2rem;margin-top:.5rem;width:100%}.submit-btn[disabled]{background:#ccc}.page-header{padding:.75rem;text-align:center}.page-title{color:#333;display:block;font-size:.9rem;font-weight:700}.page-sub,.page-subtitle{color:#999;display:block;font-size:.6rem;margin-top:.2rem}.list-header{align-items:center;display:flex;justify-content:space-between;padding:.75rem}.header-title{font-size:.85rem;font-weight:700}.add-btn,.scan-btn{background:#1890ff;border:none;border-radius:.2rem;color:#fff;font-size:.65rem;height:1.6rem;line-height:1.6rem;padding:0 .5rem}.empty-state{align-items:center;display:flex;flex-direction:column;padding:2.5rem 1rem}.empty-state .empty-icon{font-size:2rem;margin-bottom:.5rem}.empty-state .empty-title{color:#333;font-size:.8rem;margin-bottom:.25rem}.empty-state .empty-desc{color:#999;font-size:.65rem;margin-bottom:.75rem}.empty-state .empty-btn{background:#1890ff;border:none;border-radius:.2rem;color:#fff;font-size:.7rem;height:1.9rem;line-height:1.9rem;padding:0 1rem}.loading-state{color:#999;display:flex;justify-content:center;padding:1.5rem}.success-state{align-items:center;display:flex;flex-direction:column;padding:3rem 1rem}.success-state .success-icon{font-size:2.5rem;margin-bottom:.5rem}.success-state .success-title{color:#333;font-size:.9rem;font-weight:700;margin-bottom:.25rem}.success-state .success-text{color:#999;font-size:.7rem;margin-bottom:1rem}.back-btn,.success-state .done-btn{background:#1890ff;border:none;border-radius:.2rem;color:#fff;font-size:.75rem;height:2rem;line-height:2rem;padding:0 1.5rem}.tips{background:#fffbe6;border-radius:.2rem;margin:.75rem;padding:.6rem}.tips-item{color:#666;display:block;font-size:.6rem;margin-bottom:.2rem}.device-cards,.order-cards,.repair-cards{padding:0 .75rem .75rem}.device-card,.order-card,.repair-card{background:#fff;border-radius:.3rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-bottom:.5rem;padding:.6rem}.card-header,.device-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.3rem}.card-title,.device-name{color:#333;font-size:.75rem;font-weight:500}.card-status,.device-status{border-radius:.5rem;font-size:.6rem;padding:.1rem .4rem}.card-status.pending,.device-status.offline{background:#fff7e6;color:#fa8c16}.card-status.processing,.device-status.warning{background:#e6f7ff;color:#1890ff}.card-status.done,.device-status.online{background:#f6ffed;color:#52c41a}.card-status.cancelled,.card-status.closed,.card-status.refunded{background:#f5f5f5;color:#999}.card-body,.card-device,.card-time,.device-location{color:#999;display:block;font-size:.65rem;margin-top:.15rem}.card-amount{color:#f5222d;font-size:.8rem;font-weight:700}.detail-section{background:#fff;border-radius:.3rem;margin:.5rem .75rem;padding:.6rem}.detail-section .section-title{display:block;font-size:.75rem;font-weight:700;margin-bottom:.5rem}.detail-header{background:#1890ff;color:#fff;padding:1rem .75rem;text-align:center}.detail-header .device-name{display:block;font-size:.9rem;font-weight:700}.detail-header .device-no{display:block;font-size:.65rem;margin-top:.2rem;opacity:.8}.status-grid{display:flex;flex-wrap:wrap}.status-item{padding:.4rem 0;text-align:center;width:50%}.status-item .status-label{color:#999;display:block;font-size:.6rem}.status-item .status-value{color:#333;display:block;font-size:.85rem;font-weight:700;margin-top:.2rem}.info-list{border-top:.025rem solid #f0f0f0}.info-row{border-bottom:.025rem solid #f0f0f0;display:flex;justify-content:space-between;padding:.4rem 0}.info-label{color:#999;font-size:.7rem}.info-value{color:#333;font-size:.7rem}.section-title{color:#333;font-size:.75rem;font-weight:700;padding:.5rem .75rem .25rem}.action-grid{display:flex;flex-wrap:wrap;gap:.5rem;padding:.25rem .75rem}.action-card{background:#fff;border-radius:.3rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);padding:.6rem;width:calc(50% - .25rem)}.action-card .action-icon{display:block;font-size:1.2rem;margin-bottom:.2rem}.action-card .action-name{color:#333;display:block;font-size:.75rem;font-weight:500}.action-card .action-desc{color:#999;display:block;font-size:.55rem;margin-top:.15rem}.profile-page{background:#f5f5f5;min-height:100vh}.profile-header{align-items:center;background:linear-gradient(135deg,#1890ff,#096dd9);color:#fff;display:flex;padding:1rem .75rem}.profile-header .avatar{border:.075rem solid hsla(0,0%,100%,.3);border-radius:1.5rem;height:3rem;margin-right:.6rem;width:3rem}.profile-header .user-info{flex:1}.profile-header .user-name{display:block;font-size:.85rem;font-weight:700}.profile-header .user-phone{display:block;font-size:.65rem;margin-top:.15rem;opacity:.8}.menu-section{background:#fff;border-radius:.3rem;margin:.5rem .75rem;overflow:hidden}.menu-item{align-items:center;border-bottom:.025rem solid #f0f0f0;display:flex;padding:.75rem .6rem}.menu-item:last-child{border-bottom:none}.menu-item .menu-icon{font-size:.9rem;margin-right:.4rem}.menu-item .menu-label{flex:1;font-size:.75rem}.menu-item .menu-arrow{color:#ccc;font-size:.8rem}.logout-btn{background:#fff;border:.025rem solid #f5222d;border-radius:.2rem;color:#f5222d;font-size:.75rem;height:2.2rem;line-height:2.2rem;margin:1rem .75rem}.app-version{color:#ccc;font-size:.6rem;padding:.75rem;text-align:center}.package-list{padding:0 .75rem 3rem}.package-card{background:#fff;border:.05rem solid transparent;border-radius:.3rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-bottom:.5rem;padding:.6rem}.package-card.selected{border-color:#1890ff}.pkg-header{align-items:center;display:flex;justify-content:space-between}.pkg-name{font-size:.8rem;font-weight:700}.pkg-price{color:#f5222d;font-size:.9rem;font-weight:700}.pkg-info{margin-top:.3rem}.pkg-duration,.pkg-water{color:#666;display:block;font-size:.65rem;margin-top:.1rem}.pkg-desc{color:#999;display:block;font-size:.6rem;margin-top:.2rem}.pkg-select{align-items:center;display:flex;justify-content:flex-end;margin-top:.4rem}.radio{align-items:center;border:.05rem solid #ddd;border-radius:50%;display:flex;height:1rem;justify-content:center;margin-right:.25rem;width:1rem}.radio.checked{background:#1890ff;border-color:#1890ff}.check-icon{color:#fff;font-size:.6rem}.buy-bar{align-items:center;background:#fff;bottom:0;box-shadow:0 -.05rem .2rem rgba(0,0,0,.08);display:flex;left:0;padding:.4rem .75rem;position:fixed;right:0}.buy-bar .selected-info{flex:1}.buy-bar .selected-name{color:#333;font-size:.7rem}.buy-bar .no-select{color:#999;font-size:.7rem}.buy-btn{background:#f5222d;border:none;border-radius:.2rem;color:#fff;font-size:.75rem;height:2rem;line-height:2rem;padding:0 1rem}.buy-btn[disabled]{background:#ccc}.device-detail-page,.device-list-page,.order-list-page,.package-page,.repair-list-page,.repair-page,.scan-page{background:#f5f5f5;min-height:100vh}