.search { margin-bottom: 20rpx; } .add-btn { margin-top: 16rpx; } .role-row { display: flex; flex-wrap: wrap; gap: 12rpx; margin-top: 18rpx; } .role-chip { min-width: 128rpx; height: 56rpx; line-height: 56rpx; padding: 0 18rpx; border-radius: 999rpx; background: linear-gradient(180deg, #f6faff 0%, #e4efff 100%); color: #1456c2; font-size: 24rpx; font-weight: 600; box-shadow: 0 6rpx 0 rgba(144, 178, 235, 0.62), 0 10rpx 16rpx rgba(20, 86, 194, 0.09), inset 0 2rpx 0 rgba(255, 255, 255, 0.84); } .role-chip::after { border: 0; } .person-expired { background: linear-gradient(180deg, #f2f4f7 0%, #e4e7ec 100%); border-color: #98a2b3; filter: grayscale(0.8); opacity: 0.78; } .person-expired .value, .person-expired .subtitle { color: #667085; } .person-card .button-row .btn { width: auto; min-width: 0; flex: 1 1 0; padding: 0 10rpx; font-size: 25rpx; } .temporary-status { display: inline-flex; margin-top: 10rpx; padding: 6rpx 14rpx; border-radius: 999rpx; background: #e7f7ef; color: #087443; font-size: 22rpx; font-weight: 700; } .temporary-status.expired { background: #eef0f3; color: #667085; } .readonly-chip { display: flex; align-items: center; justify-content: center; line-height: 1; box-sizing: border-box; } .modal-mask { position: fixed; left: 0; right: 0; top: 0; bottom: 0; z-index: 50; display: flex; align-items: center; justify-content: center; padding: 32rpx; background: rgba(15, 23, 42, 0.48); box-sizing: border-box; } .modal-panel { width: 100%; max-height: 82vh; overflow-y: auto; padding: 30rpx; border: 1rpx solid #e4e9f1; border-radius: 18rpx; background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%); box-shadow: 0 16rpx 0 rgba(170, 184, 204, 0.62), 0 30rpx 64rpx rgba(15, 23, 42, 0.24), inset 0 2rpx 0 rgba(255, 255, 255, 0.96); box-sizing: border-box; } .modal-head { display: flex; align-items: center; justify-content: space-between; gap: 18rpx; margin-bottom: 24rpx; } .modal-title { color: #162232; font-size: 34rpx; font-weight: 700; } .modal-close { flex: 0 0 auto; margin: 0; } .checkbox-grid { display: flex; flex-direction: column; gap: 14rpx; } .checkbox-chip { display: flex; align-items: center; gap: 12rpx; min-height: 72rpx; padding: 0 18rpx; border: 2rpx solid #cbd6e6; border-radius: 14rpx; background: linear-gradient(180deg, #ffffff 0%, #f5f8fc 100%); color: #162232; font-size: 25rpx; font-weight: 700; box-shadow: 0 6rpx 0 rgba(166, 181, 203, 0.42), inset 0 2rpx 0 rgba(255, 255, 255, 0.92); box-sizing: border-box; } .checkbox-chip.checked { border-color: #7aa7f5; background: linear-gradient(180deg, #eef5ff 0%, #ddeaff 100%); color: #1456c2; }